text:
Use base32-encoded hashes to normalize names of signal APIs.

This encodes names using base32-encoded hashes to normalize their lengths.
The hashes are 32 characters long, leaving 31 characters for a source-specific prefix. Currently we use generate-animals-apis- for that.
Base 32 is preferred over base 64 because we need lower-case ids.
SHA1 is used instead of SHA256 because the results are shorter (160/5 == 32 chars instead of 256/5 == 52 chars).

Is base32 necessary or could we just leave at just SHA-1? That's only 40 characters anyway... and a base32 command isn't available on all platforms (eg. MacOS).

Base 64 encodings produce mixed-case strings.
From AIP 122:
Additionally, user-specified resource IDs should restrict letters to lower-case (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$).

Base32 support is in the Go standard library, I don't think it's that inaccessible.

@theganyo agreed, it's up to the source.
Regarding people working with the YAML, I think signals will almost always be generated by tools.
Thanks

authors: theganyo timburks

repo: apigee-apihub-demo/animals


text:
🛑 Hedgedoc is down

In 5da0bfb, Hedgedoc (https://hedgedoc.openstorage.xyz) was down:

HTTP code: 502
Response time: 353 ms

Resolved: Hedgedoc is back up in 93269d3.

source: gharchive/issue

repo: apinter/OSC-mon

license: MIT

license_type: permissive

license_source: github-api


text:
Release表清理策略

apollo数据库里Release表非常大，咨询下是否有清理数据的策略。之前删除某个时间点前的数据，好像需要应用重新发布。

release表存放的是应用配置的历史版本，涉及到回滚、审计等因素，所以目前还无法做自动清理，可以根据自己公司的需求（比如对某个应用保留多久的配置版本）实现一下清理策略？

3Q

不回滚的话，Release 表可以清空吗？

@jadedrip 如果不回滚的话，可以针对每个app+cluster+namespace的组合保留最近一条记录

assigned to student 吴铭侃, see https://summer-ospp.ac.cn/#/org/orgdetail/c4cc2271-6627-4965-a5ec-37d5ac3c0ad8/

assigned to student 吴铭侃, see https://summer-ospp.ac.cn/#/org/orgdetail/c4cc2271-6627-4965-a5ec-37d5ac3c0ad8/

麻烦问下，目前这个清理有方案吗 或者 具体计划吗？目前是一个什么状况？

Unfortunately, the student didn't complete this task so this feature is still open.

我们自己实现的方案是使用mysql的表分区，做2个分区，然后做一个页面手动腾数据和清理数据，用分区表是为了truncate，分区之间腾数据的时候不用停机，把最新的一条release腾到新分区，结束之后把老的分区truncat掉，下次需要清的时候，再往回倒腾就行，就像2个servivor一样

authors: MilkSDF chunlaiqingke jadedrip nobodyiam youngzil

repo: apolloconfig/apollo


text:
change scrollbar css

What's the purpose of this PR
Make scrollbar visible and beautiful. For the scene of hundreds config items, it seems like that a scrollbar takes me more convenience because of its high scrollview
Which issue(s) this PR fixes:
Fixes #
Brief changelog
change scrollbar css
Follow this checklist to help us incorporate your contribution quickly and easily:

[X] Read the Contributing Guide before making this pull request.
[X] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[X] Write necessary unit tests to verify the code.
[X] Run mvn clean test to make sure this pull request doesn't break anything.
[X] Update the CHANGES log.

Codecov Report

Merging #3925 (bdaf64e) into master (64a6eaf) will decrease coverage by 0.03%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master    #3925      +/-   ##
============================================
- Coverage     50.10%   50.07%   -0.04%
  Complexity     2479     2479
============================================
  Files           485      485
  Lines         14996    14996
  Branches       1533     1533
============================================
- Hits           7514     7509       -5
- Misses         6950     6954       +4
- Partials        532      533       +1

Impacted Files
Coverage Δ

...amework/apollo/internals/ConfigServiceLocator.java
87.27% <100.00%> (ø)

...mework/apollo/portal/component/PortalSettings.java
57.81% <0.00%> (-7.82%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fea6325...bdaf64e. Read the comment docs.

source: gharchive/pull-request

authors: codecov-commenter zeemood


text:
chore(deps): update dependency eslint to v8.56.0

This PR contains the following updates:

Package
Change
Age
Adoption
Passing
Confidence

eslint (source)
8.54.0 -> 8.56.0

Release Notes

eslint/eslint (eslint)
v8.56.0
Compare Source
Features

0dd9704 feat: Support custom severity when reporting unused disable directives (#17212) (Bryan Mishkin)
31a7e3f feat: fix no-restricted-properties false negatives with unknown objects (#17818) (Arka Pratim Chaudhuri)

Bug Fixes

7d5e5f6 fix: TypeError: fs.exists is not a function on read-only file system (#17846) (Francesco Trotta)
74739c8 fix: suggestion with invalid syntax in no-promise-executor-return rule (#17812) (Bryan Mishkin)

Documentation

9007719 docs: update link in ways-to-extend.md (#17839) (Amel SELMANE)
3a22236 docs: Update README (GitHub Actions Bot)
54c3ca6 docs: fix migration-guide example (#17829) (Tanuj Kanti)
4391b71 docs: check config comments in rule examples (#17815) (Francesco Trotta)
fd28363 docs: remove mention about ESLint stylistic rules in readme (#17810) (Zwyx)
48ed5a6 docs: Update README (GitHub Actions Bot)

Chores

ba6af85 chore: upgrade @eslint/js@8.56.0 (#17864) (Milos Djermanovic)
60a531a chore: package.json update for @eslint/js release (Jenkins)
ba87a06 chore: update dependency markdownlint to ^0.32.0 (#17783) (renovate[bot])
9271d10 chore: add GitHub issue template for docs issues (#17845) (Josh Goldberg ✨)
70a686b chore: Convert rule tests to FlatRuleTester (#17819) (Nicholas C. Zakas)
f3a599d chore: upgrade eslint-plugin-unicorn to v49.0.0 (#17837) (唯然)
905d4b7 chore: upgrade eslint-plugin-eslint-plugin v5.2.1 (#17838) (唯然)
4d7c3ce chore: update eslint-plugin-n v16.4.0 (#17836) (唯然)
fd0c60c ci: unpin Node.js 21.2.0 (#17821) (Francesco Trotta)

v8.55.0
Compare Source
Features

8c9e6c1 feat: importNamePattern option in no-restricted-imports (#17721) (Tanuj Kanti)

Documentation

83ece2a docs: fix typo --rules -> --rule (#17806) (OKURA Masafumi)
fffca5c docs: remove "Open in Playground" buttons for removed rules (#17791) (Francesco Trotta)
a6d9442 docs: fix correct/incorrect examples of rules (#17789) (Tanuj Kanti)
383e999 docs: update and fix examples for no-unused-vars (#17788) (Tanuj Kanti)
5a8efd5 docs: add specific stylistic rule for each deprecated rule (#17778) (Etienne)

Chores

eb8950c chore: upgrade @eslint/js@8.55.0 (#17811) (Milos Djermanovic)
93df384 chore: package.json update for @eslint/js release (Jenkins)
fe4b954 chore: upgrade @eslint/eslintrc@2.1.4 (#17799) (Milos Djermanovic)
bd8911d ci: pin Node.js 21.2.0 (#17809) (Milos Djermanovic)
b29a16b chore: fix several cli tests to run in the intended flat config mode (#17797) (Milos Djermanovic)
de165c1 chore: remove unused config-extends fixtures (#17781) (Milos Djermanovic)
d4304b8 chore: remove formatting/stylistic rules from new rule templates (#17780) (Francesco Trotta)
21024fe chore: check rule examples for syntax errors (#17718) (Francesco Trotta)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - "after 8am and before 4pm on tuesday" in timezone Etc/UTC.
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

This PR has been generated by Renovate Bot.

Closing this as we will instead update the swift-docc-renderer package dependency itself.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update (8.56.0). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

authors: calvincestari svc-secops

repo: apollographql/apollo-ios-dev


text:
feature(defer): Partial and Incremental Parsing

Closes https://github.com/apollographql/apollo-ios/issues/3277
Closes https://github.com/apollographql/apollo-ios/issues/3145
Closes https://github.com/apollographql/apollo-ios/issues/3147
To recap the progress so far:

main has some defer changes merged for codegen but they are disabled
feature/defer-execution-networking is where I'm collecting the rest of the changes that will enable preview releases.

This PR brings parsing of the initial response (partial) and subsequent responses (incremental) to the defer implementation. The changeset includes changes to the templates and rendering but mostly are focused on the execution and networking layers. Details below:

Removed hasDeferredFragments from the Operation definition. This was only used for the request HTTP headers but that behaviour has changed too and operations now get a deferredFragments property to help with incremental execution.
Deferrable conformance was moved to the InlineFragment declaration to match the definition of Fragment. This allows us to clean up some of the inline fragment code generation.
IncrementalJSONResponseParsingInterceptor is a new interceptor built to handle incremental payloads and combining them with previously parsed results.
There is no collection of deferred fields when a .deferred selection set is encountered because those fields will not be present in the response data, but the deferred fragment is marked for future collection. Incremental execution will then pick up the deferred fragments fields for collection when the relevant response is received.
GraphQLExecutor now has two entry points for execution; one used for the initial partial response and the other used during incremental execution parsing. They both converge in subsequent execution calls but the difference is in the generic constraints of the function and which selection set they operate on - RootSelectionSet or SelectionSet.
GraphQLResponse has been broken up into a base struct named AnyGraphQLResponse which provides common logic between GraphQLResponse, used for partial responses, and IncrementalGraphQLResponse which is used for incremental response parsing.
DataDictMapper was broken out of GraphQLSelectionSetMapper and handles the conversion of JSON data into the DataDict format.
GraphQLResult now has the ability to merge in data from an IncrementalGraphQLResult. This is used during incremental response parsing and is required because of the way the interceptors require a single 'complete' result to be passed into the call to proceedAsync. The partial and incremental results are built upon each other during each incremental response storing the 'completed' response in the incremental interceptor which is unique to each operation request.
PathEntry from GraphQLError was broken out into it's own type for reuse in the incremental execution.
Caching is disabled for now so the cache write interceptor simply ignores caching behaviour for any operation using @defer. This will come in a later PR.

~There are no tests included with this PR yet, they're still coming.~ Last of the tests outstanding is for incremental execution.

@AnthonyMDev I think this PR is finally ready for review.


text:
chore(deps): update dependency typescript to v5.7.2

This PR contains the following updates:

Package
Change
Age
Adoption
Passing
Confidence

typescript (source)
5.6.3 -> 5.7.2

Release Notes

microsoft/TypeScript (typescript)
v5.7.2: TypeScript 5.7
Compare Source
For release notes, check out the release announcement.

fixed issues query for Typescript 5.7.0 (Beta).
fixed issues query for Typescript 5.7.1 (RC).
fixed issues query for Typescript 5.7.2 (Stable).

Downloads are available on:

npm

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - "after 8am and before 4pm on tuesday" in timezone Etc/UTC.
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

This PR has been generated by Renovate Bot.

🛠 Docs Preview Building...

Configuration
{
  "repoOverrides": {
    "apollographql/apollo-ios-dev@main": {
      "remote": {
        "owner": "apollographql",
        "repo": "apollo-ios-dev",
        "branch": "renovate/typescript-5.x"
      }
    }
  }
}

3ff60cca06db678e6d7bf8406d77803cde6113b5

https://github.com/apollographql/apollo-ios-dev/pull/553


text:
Character array is missing "e" notation exponential mark

When updating to 0.0.4 we get this exception thrown in tests using data builders for queries with BigDecimal fields:
Character array is missing "e" notation exponential mark.
java.lang.NumberFormatException: Character array is missing "e" notation exponential mark.
	at java.base/java.math.BigDecimal.<init>(Unknown Source)
	at java.base/java.math.BigDecimal.<init>(Unknown Source)
	at java.base/java.math.BigDecimal.<init>(Unknown Source)
	at com.apollographql.adapter.core.BigDecimalAdapter.fromJson(BigDecimal.kt:14)

Thanks for reporting this. I believe https://github.com/apollographql/apollo-kotlin-adapters/commit/d2ccdecd37bd2b25dfa74f1c472278b6757f6e7e might be the issue although it mostly changes writing BigDecimal, not reading them.
Can you share your data builder and fake resolver?

Data builder:
UserReferralQuery.Data(resolver = FakeApolloResolver()) {
    userReferralTotal = buildReferralTotalType {
        value = BigDecimal.valueOf(20)
        currency = "GBP"
    }
},

Fake resolver:
class FakeApolloResolver : FakeResolver {
    private val delegate = DefaultFakeResolver(__Schema.all)

    override fun resolveLeaf(context: FakeResolverContext): Any {
        val fieldName = context.mergedField.type.rawType().name
        return when (fieldName) {
            "Decimal" -> BigDecimal.TEN
            else -> delegate.resolveLeaf(context)
        }
    }

    override fun resolveListSize(context: FakeResolverContext): Int {
        return delegate.resolveListSize(context)
    }

    override fun resolveMaybeNull(context: FakeResolverContext): Boolean {
        return delegate.resolveMaybeNull(context)
    }

    override fun resolveTypename(context: FakeResolverContext): String {
        return delegate.resolveTypename(context)
    }

    override fun stableIdForObject(
        obj: Map<String, Any?>,
        mergedField: CompiledField,
    ): String? {
        return delegate.stableIdForObject(obj, mergedField)
    }
}

Thanks for this, I can reproduce. Will look into this

Fix is here, it'll require a new version of Apollo Kotlin. In the meantime, feel free to stay on 0.0.3. Apologies foor the inconvenience and thanks for catching this 🙏

authors: jvanderwee martinbonnin

repo: apollographql/apollo-kotlin-adapters


text:
apollo-kotlin client throws IllegalStateException for large numbers

Version
3.8.1
Summary
The apollo-kotlin client handles large numbers differently than the nodeJs Apollo Federation Server and the Kotlin GraphQL Server. This can cause the apollo-kotlin client to throw an exception when parsing the JSON response with large numbers, even though the number is a valid number for the federation and the GraphQL server.
I think that this is a bug in the apollo-kotlin client, as there should be no check if the long value can be converted to a double value, as in the JavaScript federation service the value is represented differently than in Kotlin. The apollo-kotlin client throws an exception in this case, although it is a valid GraphQL response.
Steps to reproduce the behavior

The Kotlin GraphQL Server sends a JSON response to the federation service with the number 8.9894366197183136e+16
The federation parses the JSON and responses to the apollo-kotlin client with a different representation of the number: 89894366197183140
The apollo-kotlin client interprets this number as Long even if it is a GraphQL Float scalar. The function MapJsonReader.nextDouble()    ...      when (val value = peekedData) {          ...          is Long -> value.toDoubleExact()         ...     }  ...
throws an exception because 89894366197183140 != 8.9894366197183136e+16.
If the federation service would send the number as  89894366197183140.0 the apollo-kotlin client would not throw an exception.

Hi! Thank you for reporting this.
The issue is that the value 89894366197183140 cannot be represented as a Kotlin Double (double-precision 64-bit IEEE 754 floating point number), and that is why toDoubleExact is failing. I think we want to keep this behavior because it ensures correctness - i.e. returning an incorrect value could lead to subtle bugs at a higher level of your application, that would be hard to pinpoint.
I am wondering why Federation transforms the float representation into an integer, and we probably would want to avoid that - unless there is a good reason to do so that I'm not aware of. Can I ask what version of Gateway or Router (or something else) you are using for Federation?

Hi @itd-sk. Do add on @BoD comment above, the GraphQL draft is explicit about not coercing Float values that could lose information:
From https://spec.graphql.org/draft/#sec-Float.Result-Coercion:

GraphQL services may coerce non-floating-point internal values to Float when reasonable without losing information, otherwise they must raise a field error.

Closing this issue. If you give us your Gateway/Router version, we'll chase down internally what could cause the issue.

authors: BoD itd-sk martinbonnin

repo: apollographql/apollo-kotlin


text:
graceful handling of syntax and semantic errors: apollo-compiler panics on syntax errors

if you place characters after a [Type], like [Type]oops, apollo-compiler will panic.
example valid schema:
type Person {
  id: ID!
  name: String
  appearedIn: [Film]
  directed: [Film]
}

type Film {
  id: ID!
  title: String
  actors: [Person]
  director: Person
}

type Query {
  person(id: ID!): Person
  people: [Person]
  film(id: ID!): Film!
  films: [Film]
}

example panic schema:
type Person {
  id: ID!
  name: String
  appearedIn: [Film]s
  directed: [Film]
}

type Film {
  id: ID!
  title: String
  actors: [Person]
  director: Person
}

type Query {
  person(id: ID!): Person
  people: [Person]
  film(id: ID!): Film!
  films: [Film]
}

abbreviated panic
$ rover schema lint --schema ./schema.out
Validating that --schema ./schema.out conforms to the GraphQL specification.
thread 'main' panicked at 'Field must have a type', /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:963:28
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

panic with full backtrace
$ rover schema lint --schema ./schema.out
Validating that --schema ./schema.out conforms to the GraphQL specification.
thread 'main' panicked at 'Field must have a type', /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:963:28
stack backtrace:
   0: rust_begin_unwind
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14
   2: core::panicking::panic_display
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:73:5
   3: core::panicking::panic_str
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:56:5
   4: core::option::expect_failed
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/option.rs:1852:5
   5: core::option::Option<T>::expect
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/option.rs:715:21
   6: apollo_compiler::queries::database::field_definition
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:963:17
   7: core::ops::function::FnMut::call_mut
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:150:5
   8: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &mut F>::call_once
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:280:13
   9: core::option::Option<T>::map
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/option.rs:906:29
  10: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::next
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/iter/adapters/map.rs:103:9
  11: alloc::vec::Vec<T,A>::extend_desugared
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/mod.rs:2649:35
  12: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/spec_extend.rs:18:9
  13: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/spec_from_iter_nested.rs:43:9
  14: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/spec_from_iter.rs:33:9
  15: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/mod.rs:2552:9
  16: core::iter::traits::iterator::Iterator::collect
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/iter/traits/iterator.rs:1778:9
  17: apollo_compiler::queries::database::fields_definition
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:949:48
  18: apollo_compiler::queries::database::object_type_definition
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:709:29
  19: apollo_compiler::queries::database::object_types::{{closure}}
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:442:22
  20: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:269:13
  21: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::find_map
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/slice/iter/macros.rs:276:38
  22: <core::iter::adapters::filter_map::FilterMap<I,F> as core::iter::traits::iterator::Iterator>::next
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/iter/adapters/filter_map.rs:61:9
  23: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/spec_from_iter_nested.rs:26:32
  24: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/spec_from_iter.rs:33:9
  25: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/vec/mod.rs:2552:9
  26: core::iter::traits::iterator::Iterator::collect
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/iter/traits/iterator.rs:1778:9
  27: apollo_compiler::queries::database::object_types
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:437:19
  28: <apollo_compiler::queries::database::ObjectTypesQuery as salsa::plumbing::QueryFunction>::execute
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:50:8
  29: salsa::derived::slot::Slot<Q,MP>::read_upgrade::{{closure}}
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:218:13
  30: salsa::runtime::Runtime::execute_query_implementation
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/runtime.rs:330:21
  31: salsa::derived::slot::Slot<Q,MP>::read_upgrade
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:215:26
  32: salsa::derived::slot::Slot<Q,MP>::read
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:148:9
  33: <salsa::derived::DerivedStorage<Q,MP> as salsa::plumbing::QueryStorageOps<Q>>::try_fetch
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived.rs:170:13
  34: salsa::QueryTable<Q>::try_get
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/lib.rs:494:9
  35: salsa::QueryTable<Q>::get
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/lib.rs:490:9
  36: <DB as apollo_compiler::queries::database::SourceDatabase>::object_types::__shim
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:27:1
  37: <DB as apollo_compiler::queries::database::SourceDatabase>::object_types
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:27:1
  38: apollo_compiler::queries::database::add_object_type_id_to_schema
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:899:55
  39: apollo_compiler::queries::database::schema
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:428:21
  40: <apollo_compiler::queries::database::SchemaQuery as salsa::plumbing::QueryFunction>::execute
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:48:8
  41: salsa::derived::slot::Slot<Q,MP>::read_upgrade::{{closure}}
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:218:13
  42: salsa::runtime::Runtime::execute_query_implementation
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/runtime.rs:330:21
  43: salsa::derived::slot::Slot<Q,MP>::read_upgrade
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:215:26
  44: salsa::derived::slot::Slot<Q,MP>::read
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived/slot.rs:148:9
  45: <salsa::derived::DerivedStorage<Q,MP> as salsa::plumbing::QueryStorageOps<Q>>::try_fetch
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/derived.rs:170:13
  46: salsa::QueryTable<Q>::try_get
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/lib.rs:494:9
  47: salsa::QueryTable<Q>::get
             at /home/a/.cargo/registry/src/github.com-1ecc6299db9ec823/salsa-0.16.1/src/lib.rs:490:9
  48: <DB as apollo_compiler::queries::database::SourceDatabase>::schema::__shim
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:27:1
  49: <DB as apollo_compiler::queries::database::SourceDatabase>::schema
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/queries/database.rs:27:1
  50: apollo_compiler::validation::schema::check
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/validation/schema.rs:13:8
  51: apollo_compiler::validation::Validator::validate
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/validation/mod.rs:40:33
  52: apollo_compiler::ApolloCompiler::validate
             at /home/a/.cargo/git/checkouts/apollo-rs-c2f4fdeb51021351/2008021/crates/apollo-compiler/src/lib.rs:37:9
  53: rover::command::schema::lint::Lint::run
             at ./src/command/schema/lint.rs:28:22
  54: rover::command::schema::Schema::run
             at ./src/command/schema/mod.rs:24:39
  55: rover::cli::Rover::execute_command
             at ./src/cli.rs:189:41
  56: rover::cli::Rover::run
             at ./src/cli.rs:127:34
  57: rover::main::{{closure}}
             at ./src/bin/rover.rs:15:5
  58: rover::main
             at ./src/bin/rover.rs:5:1
  59: core::ops::function::FnOnce::call_once
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/ops/function.rs:227:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace

I was gonna open an issue but it looks the same is this.
Test case: add crates/apollo-compiler/test_data/diagnostics/0050_unnamed_object_type.graphql
type {
  cat: String
}

cargo test:
thread 'tests::compiler_tests' panicked at 'Field must have a name', crates/apollo-compiler/src/database/hir_db.rs:1092:24

In general, any use of Option::expect or similar should probably be replaced by something that emits a diagnostic and continues with some kind of fallback (such as skipping ill-formed definitions in the HIR)

Yes! I think I'll be working on this next as I'm already having to write more .expect()s changing some of our From impls to TryFrom, and it feels bad (and it is bad too).
I think our first step will be to outright skip things in the HIR. If the HIR can't be generated fully, it should be because there was a parser error, which is already reported.

ugh yea this is handled really rather terribly atm (i only say this because i am responsible >.<). would be so very good to fix this!!
there are a few overarching considerations when uniting the two types of errors here:

syntax errors are stored separately from tokens in the ast, when creating the HIR node, we should try to correlate the fact the ast node is missing because of a specific syntax error, or just output the syntax error as part of diagnostics
how do we provide as much as diagnostics as possible? let's say a name for a fragment definition is missing, and there are also some semantic errors in that fragment definition (e.g. field doesn't exist on the interface it's referring to). do we want to scrap the existence of the whole fragment definition node and therefore not do any validation on it until the syntax error is fixed? or do we try to continue with semantic validation of the parts that exist?

authors: EverlastingBugstopper SimonSapin goto-bus-stop lrlna

repo: apollographql/apollo-rs


text:
Fix/pagination for cancellations

Motivation
Every so often we are seeing an instance where a handful of Pipelines/Workflows are not being cancelled/tidied up. Instead of paginating back a specified amount, we can instead find all Pipelines which fall in between some window where we wish to tidy things up. Presently, this is set to 10 hours ago, to 1 hour ago.
Notes
Best to review commit by commit. Not every one is atomic, but should make that linting noise simpler to deal with.
Suggested Musical Pairing
https://soundcloud.com/sminoworld/no-ls

also please merge main into this and then add a changelog entry ;)

authors: AlexanderMann rwilcox

repo: apollographql/internal-platform-orb


text:
Apply nonce to dynamic style tags if available

Emotion injects style tags into the DOM. This is problematic for pages loading this bundle that enforce CSP (the styles will be blocked). To work around this, we can look for an existing nonce in the document and apply that to the style tags via Emotion's CacheProvider.

I think our keys need to be rotated 👀

authors: mayakoneval trevor-scheer

repo: apollographql/studio-landing-page


text:
Laravel 9 Support

Laravel 9 is now released - when can we expect to see Laravel 9 support here?

@bradley-varol Thank you for bringing this to my attention.
I will scope the effort today and reply back here with an ETA.
Barring any craziness found in testing I don't see why this can't make it into the next release v1.6 🚀

Thank you @apolopena . In hindsight my PR description was a little demanding 😁
Looking forward to an ETA and getting started with this repo!

@bradley-varol No worries. Welcome to  the repo!

TODO: fallback to laravel 8.* if PHP version is < 8.0

Looking good so far

And the workspace builds 😄  🚀

All presets work except The Vue preset that uses Material Dashboard.
I raised an issue with them.
I have the output of material dashboard install stifled so I don't know what the exact error is ATM. I assume it is an issue in material-dashboard since their latest release was in September 2021 and is labeled "Update to Laravel 8.x"
TODOS:

Bypass this preset for now when laravel is >= 9.*
Make note of this bypass in the readme.

Everything looks good. This will be released in v1.6 which is ahead of schedule.
Meanwhile you can test it or use it from the development-206 branch which is stable at the moment:
https://github.com/apolopena/gitpod-laravel-starter/tree/development-206
Note:
If you actually build a project from this branch you should update it with the latest release when it comes out.
Currently, updating gitpod-laravel-starter is a manual effort until https://github.com/apolopena/gitpod-laravel-starter/issues/187 is completed.

authors: apolopena bradley-varol

repo: apolopena/gitpod-laravel-starter


text:
BlockSpecialChar function not working on Android Chrome browser and does not handle random button presses

Description
The blockSpecialChar function in the newLink.php file is responsible for controlling the visibility of the preview button and allowing only specific characters to be entered in the shortenLink field. However, there are two issues with this function.

Issue: Preview button not showing if a random button is pressed.

When a random button is pressed, the preview button is not visible since its handle into blockSpecialChar function so it will make preview button never visible until anything is typed
This issue was present in the previous code as well, but it has carried over to the merged code.

function blockSpecialChar(e) {
      let value = document.querySelector('#shortenLink').value;
      let previewBtn = document.querySelector('#previewBtn');

      if (value.length != 0) {

          previewBtn.removeAttribute("hidden");
      }
      var k;
      document.all ? k = e.keyCode : k = e.which;
      return ((k > 64 && k < 91) || (k > 96 && k < 123) || k == 8 || k == 32 || (k >= 48 && k <= 57));
  }

Issue: onkeypress function is deprecated on Android Chrome browser.

The onkeypress event handler is deprecated in the Android Chrome browser, etc. Means it doesn't works in android means android doesn't supports it and it has alternative like onkeydown or onkeyup but the  blockSpecialChar doesnt work on android means user can still enter special characters

Screenshots
Issue
https://github.com/apoorvaron/Shorty/assets/85815172/ad46f035-b9f8-4c0f-bc7e-8ce8b683316f
Solution
https://github.com/apoorvaron/Shorty/assets/85815172/ad0a2bae-e664-4bb8-a4b9-1059078ea591
Additional information
I have implemented Solution to it

@apoorvaron Please Review my issue

@Nishitbaria Assigned

authors: Nishitbaria apoorvaron

repo: apoorvaron/Shorty


text:
Reform 2.0 breaks ActiveRecord uniqueness validation

The follwing code works with Reform 1.2.6 but fails in Reform 2.0.1 with the message: ArgumentError (Unknown validator: 'UniquenessValidator')
validates :email, presence: true, uniqueness: { case_sensitive: false }

In Reform 2.0.1 I have to write the following:
validates :email, presence: true
validates_uniqueness_of :email, case_sensitive: false

http://trailblazerb.org/gems/reform/validation.html#uniqueness-validation
I will drop ActiveModel support soon, so please keep that in mind when opening tickets.

Damn I'm sorry to hear that, Reform is the best Form object gem out there but I prefer working with the validations I've used for years.
Are you dropping it totally or allowing people to choose which validations they want to use?

Sorry!! But I have to make decisions in order to keep moving, otherwise I will waste another 10 years of my life with fixing shit that should be fixed in Rails itself.
I am not sure if I will keep providing both as people will assume that I support ActiveModel, which I don't. Also, the new features like removing validations in subclasses, cascaded validations, etc. are impossible to implement with ActiveModel, so it's probably best to say "Good-bye!".

BTW, you already put the most sensitive part of an app - validation - in the hands of Reform. Replacing rather primitive validations with another implementation is the part you should be the least worrying part! :stuck_out_tongue_winking_eye: :

Yeah that's totally fair of course. I'll continue using 1.2.6 for now as there are too many breaking changes for now (which is also fair when you bump to a major new version) and reevaluate when I start the next project.

authors: apotonick gertfj

repo: apotonick/reform

license: mit

license_source: bigquery


text:
Enhancement Request: list installed apps

I really like AppOutlet a lot. However, one thing that seems to be missing is the ability to see which apps you have actually installed. Currently you would need to go find the individual app and open it's info page where the user can see if it's installed or not.
It would be more beneficial if there were a category called "installed" which would list all apps installed with AppOutlet,

please make Pacman support also ...

this would be great

Another vote for this. Great work by the way. I use this quite a bit. Thanks!

authors: aproposnix esa1975 pranavvv theworldisnotflat

repo: app-outlet/app-outlet


text:
:zap: use in-cluster builds

$TITLE

/retest

repo: app-sre/er-aws-msk


text:
🛑 Panel Appio is down

In 4a317df, Panel Appio (https://panel.appio.com.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Panel Appio is back up in de68341.

repo: appio-smart-kitchen/upptime


text:
removed open for review bucket #1170

Issue 1170

can you modify this so the page doesn't navigate to a blank state before redirecting?

Now it doesn't apply the filter before redirecting. I'm not quite sure of what you mean with blank state, at least in chrome it directly starts redirecting

@chq-matteo this is what I mean by blank state: http://imgur.com/a/JiIX7
Actually, it doesn't even redirect for me now -- it just goes to this state.

Yeah sorry I should have checked better, It was missing a .mode

authors: chq-matteo tladendo

repo: appirio-tech/react-components


text:
TouchAction Perform acts differently in Java and C#

Hi,
The Perform method for TouchAction in Java binding performs a ClearParameters action. However, in the C# binding, the Clear is not performed!
As a result, if I reuse the same TouchAction variable for a second series of actions, it transmits a double action to the Appium server! Could you please fix the inconsistency?
Thanx,
yaacov weingarten
Perfecto Mobile

That wasn't under my use case but is good to know.
This is a super simple fix and will be done before next release.
Ciao,
Astro
Sent from my phone
On Jan 19, 2016, at 01:47, Yaacov Weingarten notifications@github.com wrote:
Hi,
The Perform method for TouchAction in Java binding performs a ClearParameters action However, in the C# binding, the Clear is not performed!
As a result, if I reuse the same TouchAction variable for a second series of actions, it transmits a double action to the Appium server! Could you please fix the inconsistency?
Thanx,
yaacov weingarten
Perfecto Mobile
—
Reply to this email directly or view it on GitHub.

Yeah. I've toticed it. It is easy to get it fixed.

Any news on this "easy" issue?

@yaacovw
Sorry for the late response. There is a lot of work on migration to node server 1.5.
I was trying to investigate and now I think that it is not the bug.
I "corrupted" one test a little bit.
        [Test()]
        public void SimpleTouchActionTestCase()
        {
            IList<AppiumWebElement> els = driver.
               FindElementsByClassName("android.widget.TextView");

            int number1 = els.Count;

            TouchAction tap = new TouchAction(driver);
            tap.Tap(els[1], 10, 5, 2);
            tap.Perform();
            tap.Perform();

            els = driver.FindElementsByClassName("android.widget.TextView");

            Assert.AreNotEqual(number1, els.Count);
}

and it passed.

There is a fragment of a server output.
https://gist.github.com/TikhomirovSergey/74493102f86fb1373ba7
As you can see it was performed twice, not three times.
1
2
Is it expected behavior?
What about Java Client. I think the bug is on the Java Client side.
Here is a sample:
@Test
  public void MultiGestureSingleActionTest() throws InterruptedException {
    TouchAction action0 = new TouchAction(driver).tap(100,300);
    action0.perform();
    action0.perform();
  }

It passes too but the tapping is performed once.
Server output
only single tapping
If you take a look at sources (AppiumDriver, TouchAction) then you can find that TouchAction can't be reused now and it is needed to be built again (!!!)
So it is most likely I'll fix java client.
@yaacovw I'm waiting for your answer. If I have described your concerns correctly then please close this issue. Please provide a use case otherwise.

Now Java client is fixed

authors: Astro03 TikhomirovSergey yaacovw

repo: appium/appium-dotnet-driver


text:
show.blade.php

비로그인 상태로
http://forum.dev/articles/21 이런식으로 show.blade.php를 열게되면
Call to a member function isAdmin() on null 오류가 있습니다.
auth()->user()->isAdmin()에서 사용자가 없기 때문일까요?
완성코드로는
https://github.com/appkr/l5essential/blob/master/resources/views/articles/show.blade.php#L39

기억이 가물합니다. 몇 장인지 모르겠는데, 뒤로 진행하면서 하나씩 잡아 나갈겁니다.

authors: appkr corean


text:
Generating an Accessory

Greetings, I am looking for a way to generate a custom HomeKit accessory based on the example provided in the Applications folder -- Lightbulb and Lock. Was HomeKit Accessory manager used to generate these files or were they coded up by hand? Can I use .hasaccessory file to generate those 5 files from examples? Thank you

@kistanod these are coded by hand.

authors: aajain-com kistanod

repo: apple/HomeKitADK


text:
Mention Apple Clang explicitly in README

The README says Clang, which can give the incorrect impression
that -index-store-path is an option in upstream Clang. However,
the index store functionality hasn't been upstreamed yet,
so specifying 'Apple Clang' instead of just 'Clang' makes things
clearer to anyone looking at the README.

@swift-ci please smoke test

Thanks for the clarification!

authors: akyrtzi bnbarham varungandhi-src

repo: apple/indexstore-db


text:
Add support for file watching in the build server protocol

This PR adds requests for registering and unregistering file watching via the build server protocol. This will trigger a notification on changes that includes the updated build settings for a registered file. The same mechanism will be used for dependency changes via a separate notification.

@swift-ci please test

@swift-ci please test

authors: benlangmuir rmaz

repo: apple/sourcekit-lsp


text:
[SR-4964] Subscripting a subscripted Data offsets incorrectly

Previous ID
SR-4964

Radar
None

Original Reporter
@phausler

Type
Bug

Additional Detail from JIRA

Votes
0

Component/s
Foundation

Labels
Bug

Assignee
None

Priority
Medium

md5: 18a067db1c19adbef1965bcb6c9a59e2

relates to:

SR-5105 inconsistent index of Data

Issue Description:
import Foundation

let d1 = Data(bytes: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
let slice1 = d1[5..<10]
assert(d1[5] == slice1[5])

Seems to work ok now.

authors: parkera phausler

repo: apple/swift-corelibs-foundation


text:
Process: Implement signal sending functions.

Implements suspend(), resume(), interrupt() and terminate().

Add --signal-test to xdgTestHelper for testing signals.

@swift-ci please test

@swift-ci  please test

@swift-ci please test

@spevans I did some mangling around arguments in xdgTestHelper; can you rebase the patch on master once my FileManager patch finishes merging?

@swift-ci please test

@swift-ci please test

@swift-ci please test

@swift-ci please test

@parkera This should match the behaviour of Darwin more closely now.

@swift-ci please test

@swift-ci please test and merge

authors: millenomi spevans


text:
Bring pretty printer up to date

The pretty printer converts a Regex defined in syntax into a RegexBuilder-style one, but it isn't up to date with the latest changes. This needs to be brought up to date, ideally with a validator that can take a regex and some input/output data, convert the regex to builder style, and then validate that both regexes have the same behavior.
For example, #"(?P)\w+ \d{2,} -"# converts to
Group(/* TODO: changeMatchingOptions */) {
  Concatenation {
    /* TODO: assertions */
    OneOrMore(.eager) {
      .wordCharacter
    }
    "-"
  }
}

instead of
Regex {
  Anchor.startOfInput
  OneOrMore(.eager) {
    CharacterClass.wordCharacter
  }
  "-"
}.asciiOnlyCharacterClasses()

@Azoy what's the status of this?

The updates I had for PrettyPrinter were merged into main a little bit ago. For Nate's example specifically, we print
Regex {
  OneOrMore {
    .word
  }
  " "
  Repeat(2...) {
    .digit
  }
  " -"
}

which isn't quite right. IIRC it still needs to support changing matching options.

authors: Azoy milseman natecook1000


text:
[5.7] Make variadic builder overloads AEIC

This is a cherry pick of https://github.com/apple/swift-experimental-string-processing/pull/520
Resolves: rdar://94358614

@swift-ci please test


text:
update RPM specs dependencies

motivation: static linking required the development version of libxml2 and libcurl
changes: include libxml2-devel and libcurl-devel which are needed for static linking

@shahmishal @drexin

repo: apple/swift-installer-scripts


text:
[lldb-dotest] Don't swallow error exit codes.

rdar://problem/39014459
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@328894 91177308-0d34-0410-b5e6-96231b3b80d8

rdar://problem/39014459

@swift-ci test and merge

Hey @Keith, thanks. You can tell from my code I'm definitely not a pythonista :)
This is backported from llvm.org so I might consider making the change there and back port the new version. Thanks for your comment.
[FWIW, I'm rushing this in because the CMake bot on ci.swift.org don't report a failure if some of the tests are passing, but your cleanup looks really good so I'm going to do it as a follow-up]

No big deal either way! Just thought I'd mention it 😄

Thanks @dcci!
Committed @keith's suggestion upstream in r328966, I'll include it in my next cherry-pick. Thanks!

Thank you Jonas.

authors: JDevlieghere dcci keith

repo: apple/swift-lldb


text:
Fix non-modular header compile error

I am using vapor and there is error when compiling swift-nio-ssl
Include of non-modular header inside framework module 'CNIOBoringSSL.CNIOBoringSSL_bn': '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/clang/include/inttypes.h'

same issue
https://github.com/AFNetworking/AFNetworking/issues/2205

Thanks for reply! I'll try to add patch in my project.

Ah, sorry I meant that the patch needs to be updated and applied by running the script to update the version of BoringSSL used by NIOSSL, we'll then tag a new release of NIOSSL. You don't need to apply the patch to your project.

@makleso6 how are you building this? I don't get an error when compiling so I want to make sure we actually fix this.

@glbrntt https://github.com/tuist/tuist/issues/4582

@glbrntt You can reproduce by swift package generate-xcodeproj and build project

Thanks @makleso6 -- this should be fixed by https://github.com/apple/swift-nio-ssl/pull/378 and we'll get a release tagged soon after.

Thanks @ glbrntt. Great!

repo: apple/swift-nio-ssl


text:
[NIO 3.0] Improve our protocol types

With Swift 5.7's improved generic and protocol types (specifically with implicit existential unwrapping, primary associated types, and more) we can now begin to unwind some of the awkward decisions that were made in NIO's early stages.
Right now we have a number of types that we explicitly encourage users to hold as existentials. Among these are some of our most important types, Channel and EventLoop. As these types are pervasively used as existentials, we've not been able to add associated types to them in order to reflect their interdependency.
With Swift 5.7 we should be able to lift some of these limitations. In particular, it should now be possible to express that a Channel has a specific associated EventLoop type that matches it. This will allow us to begin to enable generic programming against arbitrary event loops that can create appropriate bootstrap objects as needed.
We can't do this for at least 18 months (we have to drop all the way though 5.6), but we should investigate its feasibility and work out what our APIs would look like if we did this.

Finally! (almost)

Out of interest - if you're doing a major version bump for this for NIO 3 couldn't you drop any previous Swift versions? E.g. if NIO 3 was released when some hypothetical Swift 5.8 exists, couldn't you support 5.8 only (and then future versions)?

Yes, but we don't necessarily want to rush to that.

authors: 0xTim Lukasa weissi

repo: apple/swift-nio


text:
onboard to CodeQL

From https://forums.swift.org/t/codeql-updates/66540 I understand that SwiftNIO needs to be onboarded, this is probably a good idea :)

this may be worth it well after we fix of the problems and issues with swift-nio we'll consider it

CodeQL relies on Github actions, which we do not use.

CodeQL relies on Github actions, which we do not use.

oh yea almost forgot we didn't have that sorry for the confusion

authors: 1proprogrammerchant Lukasa weissi


text:
PackageCollectionsSigning: correct BoringSSLCertificate.keyType(of:)

This function takes a named argument which is the EVP_PKEY and checks
the underlying public key type (expected to be one of RSA or EC).
However, instead of checking the key type of the given public key, it
was always returning the key type of the underlying certificate.  This
happened to give the correct result as the current usage always used the
same object to get the key.  This corrects that and uses the proper
accessors for the value.
[One line description of your change]
Motivation:
[Explain here the context, and why you're making that change. What is the problem you're trying to solve.]
Modifications:
[Describe the modifications you've done.]
Result:
[After your change, what will change.]

@swift-ci please test

@swift-ci please smoke test

@yim-lee @Lukasa for review

@yim-lee a build error pointed me to the area of the code, the actual issue was found by inspection.

authors: compnerd tomerd

repo: apple/swift-package-manager


text:
Tests: add some test coverage for DispatchTime

SPM adds an extension for DispatchTime (the fact that it is public is
a separate issue) for adding distance(to:).  This was previously found
to have an oversight in the implementation (#5539).  Add some test
coverage to prevent future regressions.

@swift-ci please smoke test

@swift-ci please smoke test


text:
Display titles of option groups in swift build --help

Recent versions of ArgumentParser support visual grouping of options specified with @OptionGroup property wrapper when title argument is provided. Let's do it for swift build to make its --help output cleaner.
Help output before:
OVERVIEW: Build sources into binary products

SEE ALSO: swift run, swift package, swift test

USAGE: swift build <options>

OPTIONS:
  --package-path <package-path>
                          Specify the package path to operate on (default current directory). This changes the
                          working directory before any other operation
<multiple ungrouped options skipped>

Help output after:
OVERVIEW: Build sources into binary products

SEE ALSO: swift run, swift package, swift test

USAGE: swift build <options>

GLOBAL OPTIONS:
  --package-path <package-path>
                          Specify the package path to operate on (default current directory). This changes the
                          working directory before any other operation
<multiple global options skipped>

BUILD OPTIONS:
  --build-tests           Build both source and test targets
  --show-bin-path         Print the binary output path
  --print-manifest-job-graph
                          Write the command graph for the build manifest as a graphviz file
  --target <target>       Build the specified target
  --product <product>     Build the specified product

OPTIONS:
  --version               Show the version.
  -h, -help, --help       Show help information.

@swift-ci smoke test

I've tried breaking up GlobalOptions into logical subgroups as you describe, but that's blocked by https://github.com/apple/swift-argument-parser/issues/558

cc @bitjammer for input on desired UX

Some specific comments on what I can see based on the description:

The idea of cascading, global options should be reconsidered in the future. Not something to solve here, however:
Instead of calling the group "GLOBAL", I'd recommend something like "GENERAL". Although subcommands are good, users shouldn't have to contend with the idea of command "hierarchy" in swiftpm tools with respect to the options.
I probably wouldn't consider --show-bin-path a build option. It's really almost a kind of subcommand or mode change, and a general one. Same with --print-manifest-job-graph.

Personally, I'd like to sit down and make more fundamental changes to the usage of the swiftpm tools. That includes cleaning up how these "global" options cascade down to other commands, or what is or isn't a subcommand, such as swift-package-registry and swift-package-collection. I don't have very strong feelings about this change one way or the other in light of that, but I think I agree with Boris here overall.
One thought here from my work on the command line interfaces so far is that some options are much more common than others. Consider sorting options by their apparent frequency within groups as possible. Another thought: if we really must draw boxes around options, they should be task-oriented as much as possible. If there is only one task achievable by the tool, the groupings become somewhat arbitrary as Boris said. I don't have a better answer for this at this time as I haven't had the time to review all of the options again in detail. I hope that helps!

authors: MaxDesiatov bitjammer tomerd


text:
cleanup mirror config command

motivation: the mirrors config command no takes both URLs and registry identities
changes:

nupdate flags to use "original" and "mirror" so it is not URL specific
update API to not use URL suffix
update call sites and tests

@swift-ci smoke test

@swift-ci smoke test windows


text:
Fix "escaped newline symbol" bug in CodeGeneration module

I stumbled upon a small bug by accident, and upon investigation, it appeared to have deep roots. Eventually, it warranted its own PR. The bug involved duplicating empty lines in the generated SyntaxTraits file after every // MARK: - without documentation text.
The file is generated based on SyntaxTraitsFile file of CodeGeneration module:
      // MARK: - \(trait.protocolName)

      \(trait.documentation)
      public protocol \(trait.protocolName): SyntaxProtocol\(raw:

In other parts of the module, similar situations are addressed using the "escaped newline" symbol: "". For instance, in the ResultBuilderFile file:
      // MARK: - \(type.resultBuilderType)

      @resultBuilder
      \(node.node.apiAttributes())\
      public struct \(type.resultBuilderType): ListBuilder

So in this PR, I resolve the bug by employing the same approach. This not only enhances the consistency of the codebase but also serves as an elegant solution to the problem itself.
All the changes are confined to the CodeGeneration module and have no impact on the rest of the SwiftSyntax library, making them safe to merge.

@swift-ci Please test

authors: RoBo-Inc ahoppen

repo: apple/swift-syntax


text:
[TSCUtility] Add Armv5 support

Resolves SR-15944.

@swift-ci test

@swift-ci test

authors: colemancda tomerd

repo: apple/swift-tools-support-core


text:
stdlib gets rebuild multiple times in build-script -r -T configuration

I see stdlib related warnings while building:

The compiler itself
Under --- Building tests for swift ---
Under --- Running tests for swift --- --- check-swift-only_early_swiftdriver-macosx-arm64 ---
Under --- check-swift-validation-macosx-arm64 ---

Happens with recent main branch.

cc @shahmishal

@edymtt Would you be able to look into this issue?

Couldn't reproduce, agreed with @xedin  to close this, feel free to reopoen if seen again

authors: justice-adams-apple shahmishal xedin

repo: apple/swift


text:
SILGen: Do a read-only projection of a writable KeyPath when the lvalue is only read.

If we project an lvalue using a KeyPath, but the lvalue is only read from, we don't want to trigger writebacks, observers, or other side effects that a mutable projection would normally need to induce. Fixes SR-5338 | rdar://problem/33135489.

@swift-ci Please test


text:
Disable ArraySlice.append index test

This test is failing for debug builds. Disable it for now.

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - f42bd011cbfa3563f15f289124180853bb2d672a

@swift-ci Please smoke test and merge

authors: lancep swift-ci


text:
[4.1] [GSB] Canonicalize conformance access paths on-the-fly.

Explanation: Eliminates a crash during IRGen when dealing with redundant associated type conformances in certain multi-file scenarios and with some declaration ordering.
Scope of Issue: Only affects cases where associated types are given redundant conformance requirements in a protocol, and only under certain perturbations of the source. Affected some versions of the Vapor project.
Risk: Low; it's a proper fix for a previously-broken code path.
Reviewed By: @slavapestov
Testing: Existing automated test suite, new tests, source compatibility suite
Directions for QA: N/A
SR / Radar: SR-6200 / rdar://problem/35113583

@swift-ci please test

Ugh, gotta rebase

@swift-ci please test

@swift-ci please test

@swift-ci please test

@swift-ci please nominate


text:
[stdlib]Array iterator

Testing a more efficient iterator for Array.

@swift-ci please benchmark

Build comment file:
Optimized (O)

Regression (40)

TEST
OLD
NEW
DELTA
SPEEDUP

ArrayValueProp2
8
1396
+17347.8%
0.01x

MapReduceLazyCollectionShort
38
710
+1768.4%
0.05x

LazilyFilteredArrays
64254
264102
+311.0%
0.24x

DictionaryLiteral
1493
3352
+124.5%
0.45x

StringBuilder
995
2113
+112.4%
0.47x

StringUTF16Builder
1847
2936
+59.0%
0.63x

Sim2DArray
409
611
+49.4%
0.67x

MapReduceLazyCollection
13
19
+46.2%
0.68x

ErrorHandling
1989
2895
+45.6%
0.69x

ObjectAllocation
173
243
+40.5%
0.71x

SumUsingReduce
101
141
+39.6%
0.72x

SumUsingReduceInto
101
140
+38.6%
0.72x

MapReduceShort
1975
2648
+34.1%
0.75x

MapReduceAnyCollectionShort
2004
2474
+23.5%
0.81x

MapReduceShortString
22
26
+18.2%
0.85x

ArrayAppendLazyMap
1284
1512
+17.8%
0.85x

StringInterpolation
10796
12177
+12.8%
0.89x

CharIndexing_punctuatedJapanese_unicodeScalars
3561
3992
+12.1%
0.89x

CharIteration_punctuatedJapanese_unicodeScalars_Backwards
3947
4408
+11.7%
0.90x

MapReduceClassShort
4453
4970
+11.6%
0.90x

CharIteration_punctuated_unicodeScalars_Backwards
4960
5490
+10.7%
0.90x

CharIndexing_punctuated_unicodeScalars
4470
4944
+10.6%
0.90x

Chars
1085
1198
+10.4%
0.91x

SuffixCountableRangeLazy
11
12
+9.1%
0.92x

DropFirstAnySequence
4727
5151
+9.0%
0.92x

DropFirstAnySequenceLazy
4725
5147
+8.9%
0.92x

CharIteration_russian_unicodeScalars_Backwards
18474
19962
+8.1%
0.93x

CharIteration_korean_unicodeScalars_Backwards
21513
23202
+7.9%
0.93x

CharIteration_japanese_unicodeScalars_Backwards
26576
28623
+7.7%
0.93x

CharIteration_chinese_unicodeScalars_Backwards
16783
18058
+7.6%
0.93x

CharIteration_tweet_unicodeScalars_Backwards
43856
47067
+7.3%
0.93x

CharIteration_ascii_unicodeScalars_Backwards
22187
23722
+6.9%
0.94x

CharIndexing_punctuatedJapanese_unicodeScalars_Backwards
3414
3644
+6.7%
0.94x

CharIndexing_chinese_unicodeScalars
15041
15964
+6.1%
0.94x

CharIndexing_russian_unicodeScalars
16533
17539
+6.1%
0.94x

CharIndexing_ascii_unicodeScalars
19868
21006
+5.7%
0.95x

MapReduceString
106
112
+5.7%
0.95x

CharIndexing_korean_unicodeScalars
19282
20360
+5.6%
0.95x

Hanoi
3765
3972
+5.5%
0.95x

CharIndexing_japanese_unicodeScalars
23814
25088
+5.3%
0.95x

Improvement (30)

TEST
OLD
NEW
DELTA
SPEEDUP

PrefixWhileAnySeqCRangeIter
11742
2535
-78.4%
4.63x

PrefixWhileAnySequence
12826
3648
-71.6%
3.52x

DropLastAnySeqCRangeIterLazy
4333
1238
-71.4%
3.50x

DropLastAnySeqCRangeIter
4325
1240
-71.3%
3.49x

SuffixAnySeqCRangeIterLazy
4721
1524
-67.7%
3.10x

SuffixAnySeqCRangeIter
4604
1523
-66.9%
3.02x

SuffixSequenceLazy
4668
1622
-65.3%
2.88x

SuffixSequence
4566
1617
-64.6%
2.82x

SuffixAnySequence
5973
2798
-53.2%
2.13x

DropLastAnySequence
5941
2813
-52.7%
2.11x

SuffixAnySequenceLazy
6057
2885
-52.4%
2.10x

DropLastAnySequenceLazy
6013
2882
-52.1%
2.09x

DropFirstAnySeqCRangeIter
25858
20819
-19.5%
1.24x

DropFirstAnySeqCRangeIterLazy
25842
20811
-19.5%
1.24x

DropWhileArrayLazy
129
106
-17.8%
1.22x

PrefixWhileCountableRange
53
46
-13.2%
1.15x

StringEqualPointerComparison
457
415
-9.2%
1.10x

CharIteration_japanese_unicodeScalars
28945
26309
-9.1%
1.10x

CharIteration_korean_unicodeScalars
23379
21284
-9.0%
1.10x

CharIteration_ascii_unicodeScalars
24129
22047
-8.6%
1.09x

CharIteration_chinese_unicodeScalars
18244
16692
-8.5%
1.09x

CharIteration_russian_unicodeScalars
20038
18367
-8.3%
1.09x

CharIteration_tweet_unicodeScalars
47632
43737
-8.2%
1.09x

NopDeinit
23415
21552
-8.0%
1.09x

ClassArrayGetter
15
14
-6.7%
1.07x

Integrate
232
217
-6.5%
1.07x

NSError
312
292
-6.4%
1.07x (?)

Histogram
349
328
-6.0%
1.06x

UTF8Decode
324
306
-5.6%
1.06x

MapReduceAnyCollection
455
433
-4.8%
1.05x

No Changes (260)

TEST
OLD
NEW
DELTA
SPEEDUP

AngryPhonebook
2880
2871
-0.3%
1.00x (?)

AnyHashableWithAClass
71422
70564
-1.2%
1.01x (?)

Array2D
2516
2527
+0.4%
1.00x (?)

ArrayAppend
975
974
-0.1%
1.00x (?)

ArrayAppendArrayOfInt
739
729
-1.4%
1.01x (?)

ArrayAppendAscii
22958
22204
-3.3%
1.03x

ArrayAppendFromGeneric
738
728
-1.4%
1.01x (?)

ArrayAppendGenericStructs
1357
1339
-1.3%
1.01x (?)

ArrayAppendLatin1
42621
43567
+2.2%
0.98x

ArrayAppendOptionals
1357
1356
-0.1%
1.00x (?)

ArrayAppendRepeatCol
1285
1284
-0.1%
1.00x (?)

ArrayAppendReserved
723
720
-0.4%
1.00x (?)

ArrayAppendSequence
1072
1078
+0.6%
0.99x (?)

ArrayAppendStrings
14980
15044
+0.4%
1.00x (?)

ArrayAppendToFromGeneric
728
727
-0.1%
1.00x (?)

ArrayAppendToGeneric
732
738
+0.8%
0.99x (?)

ArrayAppendUTF16
43662
45189
+3.5%
0.97x

ArrayInClass
85
85
+0.0%
1.00x

ArrayLiteral
0
0
+0.0%
1.00x

ArrayOfGenericPOD
220
221
+0.5%
1.00x (?)

ArrayOfGenericRef
4227
4232
+0.1%
1.00x (?)

ArrayOfPOD
174
177
+1.7%
0.98x (?)

ArrayOfRef
4212
4203
-0.2%
1.00x (?)

ArrayPlusEqualArrayOfInt
738
728
-1.4%
1.01x (?)

ArrayPlusEqualFiveElementCollection
5446
5522
+1.4%
0.99x

ArrayPlusEqualSingleElementCollection
969
970
+0.1%
1.00x (?)

ArrayPlusEqualThreeElements
1584
1575
-0.6%
1.01x (?)

ArraySubscript
1489
1481
-0.5%
1.01x (?)

ArrayValueProp
8
8
+0.0%
1.00x

ArrayValueProp3
8
8
+0.0%
1.00x

ArrayValueProp4
8
8
+0.0%
1.00x

BitCount
211
202
-4.3%
1.04x

ByteSwap
101
100
-1.0%
1.01x (?)

CStringLongAscii
5731
5916
+3.2%
0.97x

CStringLongNonAscii
2431
2497
+2.7%
0.97x (?)

CStringShortAscii
4757
4793
+0.8%
0.99x (?)

Calculator
41
42
+2.4%
0.98x

CaptureProp
7728
7727
-0.0%
1.00x (?)

CharIndexing_ascii_unicodeScalars_Backwards
19112
19182
+0.4%
1.00x

CharIndexing_chinese_unicodeScalars_Backwards
14461
14584
+0.9%
0.99x

CharIndexing_japanese_unicodeScalars_Backwards
22891
22922
+0.1%
1.00x (?)

CharIndexing_korean_unicodeScalars_Backwards
18468
18606
+0.7%
0.99x

CharIndexing_punctuated_unicodeScalars_Backwards
4288
4509
+5.2%
0.95x

CharIndexing_russian_unicodeScalars_Backwards
15922
16017
+0.6%
0.99x

CharIndexing_tweet_unicodeScalars
39171
41145
+5.0%
0.95x

CharIndexing_tweet_unicodeScalars_Backwards
37698
37266
-1.1%
1.01x

CharIndexing_utf16_unicodeScalars
68900
69201
+0.4%
1.00x

CharIndexing_utf16_unicodeScalars_Backwards
66108
66326
+0.3%
1.00x

CharIteration_punctuatedJapanese_unicodeScalars
4269
4126
-3.3%
1.03x

CharIteration_punctuated_unicodeScalars
5379
5130
-4.6%
1.05x

CharIteration_utf16_unicodeScalars
97452
96934
-0.5%
1.01x

CharIteration_utf16_unicodeScalars_Backwards
95739
96210
+0.5%
1.00x

CharacterLiteralsLarge
5802
5771
-0.5%
1.01x (?)

CharacterLiteralsSmall
508
511
+0.6%
0.99x (?)

Dictionary
656
654
-0.3%
1.00x (?)

Dictionary2
1851
1853
+0.1%
1.00x (?)

Dictionary2OfObjects
3216
3172
-1.4%
1.01x (?)

Dictionary3
550
548
-0.4%
1.00x (?)

Dictionary3OfObjects
877
875
-0.2%
1.00x (?)

DictionaryBridge
3643
3685
+1.2%
0.99x (?)

DictionaryGroup
270
268
-0.7%
1.01x (?)

DictionaryGroupOfObjects
1954
1932
-1.1%
1.01x (?)

DictionaryOfObjects
2279
2271
-0.4%
1.00x (?)

DictionaryRemove
2808
2755
-1.9%
1.02x (?)

DictionaryRemoveOfObjects
22597
22371
-1.0%
1.01x (?)

DictionarySubscriptDefaultMutation
151
151
+0.0%
1.00x

DictionarySubscriptDefaultMutationArray
487
488
+0.2%
1.00x (?)

DictionarySubscriptDefaultMutationArrayOfObjects
3643
3623
-0.5%
1.01x (?)

DictionarySubscriptDefaultMutationOfObjects
1294
1283
-0.9%
1.01x (?)

DictionarySwap
484
486
+0.4%
1.00x

DictionarySwapOfObjects
7116
7253
+1.9%
0.98x (?)

DropFirstAnyCollection
34
34
+0.0%
1.00x

DropFirstAnyCollectionLazy
66467
67663
+1.8%
0.98x (?)

DropFirstAnySeqCntRange
71
71
+0.0%
1.00x

DropFirstAnySeqCntRangeLazy
71
71
+0.0%
1.00x

DropFirstArray
35
36
+2.9%
0.97x

DropFirstArrayLazy
35
35
+0.0%
1.00x

DropFirstCountableRange
35
35
+0.0%
1.00x

DropFirstCountableRangeLazy
35
35
+0.0%
1.00x

DropFirstSequence
2621
2626
+0.2%
1.00x (?)

DropFirstSequenceLazy
2726
2719
-0.3%
1.00x (?)

DropLastAnyCollection
19
19
+0.0%
1.00x

DropLastAnyCollectionLazy
22195
22254
+0.3%
1.00x (?)

DropLastAnySeqCntRange
23
23
+0.0%
1.00x

DropLastAnySeqCntRangeLazy
23
23
+0.0%
1.00x

DropLastCountableRange
11
11
+0.0%
1.00x

DropLastCountableRangeLazy
11
11
+0.0%
1.00x

DropLastSequence
692
673
-2.7%
1.03x

DropLastSequenceLazy
692
673
-2.7%
1.03x (?)

DropWhileAnyCollection
99
99
+0.0%
1.00x

DropWhileAnyCollectionLazy
147
147
+0.0%
1.00x

DropWhileAnySeqCRangeIter
16950
17009
+0.3%
1.00x (?)

DropWhileAnySeqCRangeIterLazy
147
147
+0.0%
1.00x

DropWhileAnySeqCntRange
95
95
+0.0%
1.00x

DropWhileAnySeqCntRangeLazy
147
147
+0.0%
1.00x

DropWhileAnySequence
5284
5322
+0.7%
0.99x

DropWhileAnySequenceLazy
1830
1830
+0.0%
1.00x

DropWhileCountableRange
36
36
+0.0%
1.00x

DropWhileCountableRangeLazy
111
111
+0.0%
1.00x

DropWhileSequence
1322
1322
+0.0%
1.00x

DropWhileSequenceLazy
88
88
+0.0%
1.00x

EqualStringSubstring
395
398
+0.8%
0.99x

EqualSubstringString
398
401
+0.8%
0.99x (?)

EqualSubstringSubstring
397
401
+1.0%
0.99x

EqualSubstringSubstringGenericEquatable
398
401
+0.8%
0.99x

ExclusivityGlobal
5
5
+0.0%
1.00x

ExclusivityIndependent
2
2
+0.0%
1.00x

FilterEvenUsingReduce
1284
1292
+0.6%
0.99x (?)

FilterEvenUsingReduceInto
146
148
+1.4%
0.99x (?)

FrequenciesUsingReduce
6491
6414
-1.2%
1.01x (?)

FrequenciesUsingReduceInto
2893
2875
-0.6%
1.01x (?)

HashTest
1717
1734
+1.0%
0.99x (?)

IterateData
1321
1336
+1.1%
0.99x (?)

Join
376
379
+0.8%
0.99x

LazilyFilteredArrayContains
31475
31531
+0.2%
1.00x (?)

LazilyFilteredRange
3903
3922
+0.5%
1.00x (?)

LessSubstringSubstring
398
402
+1.0%
0.99x

LessSubstringSubstringGenericComparable
398
402
+1.0%
0.99x

LinkedList
7159
7158
-0.0%
1.00x (?)

MapReduce
456
465
+2.0%
0.98x

MapReduceClass
2986
3016
+1.0%
0.99x

MapReduceLazySequence
86
86
+0.0%
1.00x

MapReduceSequence
441
455
+3.2%
0.97x (?)

Memset
213
213
+0.0%
1.00x

MonteCarloE
10272
10040
-2.3%
1.02x

MonteCarloPi
42898
43060
+0.4%
1.00x

NSDictionaryCastToSwift
5203
5088
-2.2%
1.02x (?)

NSStringConversion
406
406
+0.0%
1.00x

ObjectiveCBridgeFromNSArrayAnyObject
20899
20250
-3.1%
1.03x (?)

ObjectiveCBridgeFromNSArrayAnyObjectForced
3717
3721
+0.1%
1.00x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToString
37470
36654
-2.2%
1.02x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToStringForced
32291
32271
-0.1%
1.00x (?)

ObjectiveCBridgeFromNSDictionaryAnyObject
127765
128363
+0.5%
1.00x (?)

ObjectiveCBridgeFromNSSetAnyObject
62636
61453
-1.9%
1.02x (?)

ObjectiveCBridgeFromNSSetAnyObjectForced
4611
4686
+1.6%
0.98x (?)

ObjectiveCBridgeFromNSSetAnyObjectToString
63120
66420
+5.2%
0.95x (?)

ObjectiveCBridgeFromNSString
968
1004
+3.7%
0.96x (?)

ObjectiveCBridgeFromNSStringForced
2146
2134
-0.6%
1.01x (?)

ObjectiveCBridgeStubDataAppend
3907
3881
-0.7%
1.01x (?)

ObjectiveCBridgeStubDateMutation
256
256
+0.0%
1.00x

ObjectiveCBridgeStubFromArrayOfNSString
26059
25147
-3.5%
1.04x (?)

ObjectiveCBridgeStubFromNSDate
4101
4100
-0.0%
1.00x (?)

ObjectiveCBridgeStubFromNSString
612
615
+0.5%
1.00x (?)

ObjectiveCBridgeStubFromNSStringRef
172
172
+0.0%
1.00x

ObjectiveCBridgeStubNSDataAppend
2666
2645
-0.8%
1.01x (?)

ObjectiveCBridgeStubNSDateMutationRef
12696
12605
-0.7%
1.01x (?)

ObjectiveCBridgeStubToArrayOfNSString
27887
27490
-1.4%
1.01x (?)

ObjectiveCBridgeStubToNSDate
14182
14744
+4.0%
0.96x (?)

ObjectiveCBridgeStubToNSDateRef
3332
3319
-0.4%
1.00x (?)

ObjectiveCBridgeStubToNSString
1419
1423
+0.3%
1.00x (?)

ObjectiveCBridgeStubToNSStringRef
126
124
-1.6%
1.02x (?)

ObjectiveCBridgeStubURLAppendPath
326200
331984
+1.8%
0.98x (?)

ObjectiveCBridgeStubURLAppendPathRef
334003
340512
+1.9%
0.98x (?)

ObjectiveCBridgeToNSArray
28758
28699
-0.2%
1.00x (?)

ObjectiveCBridgeToNSDictionary
57365
56498
-1.5%
1.02x (?)

ObjectiveCBridgeToNSSet
47310
46420
-1.9%
1.02x (?)

ObjectiveCBridgeToNSString
1194
1189
-0.4%
1.00x

ObserverClosure
2009
1991
-0.9%
1.01x (?)

ObserverForwarderStruct
864
861
-0.3%
1.00x (?)

ObserverPartiallyAppliedMethod
3451
3445
-0.2%
1.00x (?)

ObserverUnappliedMethod
2146
2135
-0.5%
1.01x (?)

OpenClose
5
5
+0.0%
1.00x

Phonebook
6507
6591
+1.3%
0.99x

PolymorphicCalls
25
25
+0.0%
1.00x

PopFrontArray
1889
1869
-1.1%
1.01x (?)

PopFrontArrayGeneric
1869
1863
-0.3%
1.00x (?)

PopFrontUnsafePointer
8868
8857
-0.1%
1.00x (?)

PrefixAnyCollection
34
34
+0.0%
1.00x

PrefixAnyCollectionLazy
67116
67169
+0.1%
1.00x (?)

PrefixAnySeqCRangeIter
16428
16103
-2.0%
1.02x (?)

PrefixAnySeqCRangeIterLazy
16427
16133
-1.8%
1.02x (?)

PrefixAnySeqCntRange
71
71
+0.0%
1.00x

PrefixAnySeqCntRangeLazy
71
71
+0.0%
1.00x

PrefixAnySequence
4298
4297
-0.0%
1.00x (?)

PrefixAnySequenceLazy
4291
4292
+0.0%
1.00x (?)

PrefixArray
35
36
+2.9%
0.97x

PrefixArrayLazy
35
35
+0.0%
1.00x

PrefixCountableRange
35
35
+0.0%
1.00x

PrefixCountableRangeLazy
35
35
+0.0%
1.00x

PrefixSequence
1306
1306
+0.0%
1.00x

PrefixSequenceLazy
1377
1394
+1.2%
0.99x

PrefixWhileAnyCollection
146
146
+0.0%
1.00x

PrefixWhileAnyCollectionLazy
106
106
+0.0%
1.00x

PrefixWhileAnySeqCRangeIterLazy
106
106
+0.0%
1.00x

PrefixWhileAnySeqCntRange
141
141
+0.0%
1.00x

PrefixWhileAnySeqCntRangeLazy
106
106
+0.0%
1.00x

PrefixWhileAnySequenceLazy
1373
1373
+0.0%
1.00x

PrefixWhileArray
88
88
+0.0%
1.00x

PrefixWhileArrayLazy
70
71
+1.4%
0.99x

PrefixWhileCountableRangeLazy
35
35
+0.0%
1.00x

PrefixWhileSequence
389
390
+0.3%
1.00x (?)

PrefixWhileSequenceLazy
52
52
+0.0%
1.00x

Prims
768
778
+1.3%
0.99x (?)

PrimsSplit
766
782
+2.1%
0.98x (?)

RC4
165
164
-0.6%
1.01x

RGBHistogram
2820
2829
+0.3%
1.00x (?)

RGBHistogramOfObjects
22882
22796
-0.4%
1.00x (?)

RangeAssignment
377
378
+0.3%
1.00x (?)

RangeIterationSigned
171
171
+0.0%
1.00x

RangeIterationSigned64
200
200
+0.0%
1.00x

RangeIterationUnsigned
200
200
+0.0%
1.00x

RecursiveOwnedParameter
2294
2293
-0.0%
1.00x (?)

ReversedArray
57
57
+0.0%
1.00x

ReversedBidirectional
27694
27739
+0.2%
1.00x (?)

ReversedDictionary
112
113
+0.9%
0.99x (?)

SetExclusiveOr
3286
3296
+0.3%
1.00x (?)

SetExclusiveOr_OfObjects
8481
8419
-0.7%
1.01x (?)

SetIntersect
318
319
+0.3%
1.00x (?)

SetIntersect_OfObjects
1758
1717
-2.3%
1.02x

SetIsSubsetOf
291
294
+1.0%
0.99x

SetIsSubsetOf_OfObjects
349
349
+0.0%
1.00x

SetUnion
2964
2952
-0.4%
1.00x (?)

SetUnion_OfObjects
7092
6990
-1.4%
1.01x

SevenBoom
1481
1558
+5.2%
0.95x (?)

SortLargeExistentials
7737
7908
+2.2%
0.98x

SortLettersInPlace
1105
1093
-1.1%
1.01x (?)

SortSortedStrings
1078
1087
+0.8%
0.99x

SortStrings
1919
1942
+1.2%
0.99x

SortStringsUnicode
8909
9081
+1.9%
0.98x (?)

StackPromo
21923
21949
+0.1%
1.00x (?)

StaticArray
5
5
+0.0%
1.00x

StrComplexWalk
1986
1986
+0.0%
1.00x

StrToInt
2121
2080
-1.9%
1.02x

StringAdder
3391
3368
-0.7%
1.01x (?)

StringBuilderLong
923
934
+1.2%
0.99x (?)

StringComparison_abnormal
695
716
+3.0%
0.97x

StringComparison_ascii
1395
1426
+2.2%
0.98x

StringComparison_emoji
2057
2086
+1.4%
0.99x (?)

StringComparison_fastPrenormal
6957
7041
+1.2%
0.99x (?)

StringComparison_latin1
4772
4808
+0.8%
0.99x (?)

StringComparison_longSharedPrefix
5531
5559
+0.5%
0.99x (?)

StringComparison_nonBMPSlowestPrenormal
3708
3747
+1.1%
0.99x

StringComparison_slowerPrenormal
3175
3217
+1.3%
0.99x

StringComparison_zalgo
1304
1324
+1.5%
0.98x (?)

StringEdits
169984
176507
+3.8%
0.96x (?)

StringEnumRawValueInitialization
1111
1118
+0.6%
0.99x (?)

StringFromLongWholeSubstring
178
176
-1.1%
1.01x

StringFromLongWholeSubstringGeneric
71
72
+1.4%
0.99x (?)

StringHasPrefixAscii
1287
1287
+0.0%
1.00x

StringHasPrefixUnicode
18723
18694
-0.2%
1.00x (?)

StringHasSuffixAscii
1402
1431
+2.1%
0.98x

StringHasSuffixUnicode
78793
77603
-1.5%
1.02x

StringMatch
9065
9101
+0.4%
1.00x (?)

StringWalk
1539
1546
+0.5%
1.00x

StringWithCString
72273
74756
+3.4%
0.97x

SubstringComparable
1666
1709
+2.6%
0.97x

SubstringEqualString
1477
1484
+0.5%
1.00x (?)

SubstringEquatable
3603
3718
+3.2%
0.97x (?)

SubstringFromLongString
10
10
+0.0%
1.00x

SubstringFromLongStringGeneric
71
71
+0.0%
1.00x

SuffixAnyCollection
27
27
+0.0%
1.00x

SuffixAnyCollectionLazy
22416
22626
+0.9%
0.99x (?)

SuffixAnySeqCntRange
23
23
+0.0%
1.00x

SuffixAnySeqCntRangeLazy
23
23
+0.0%
1.00x

SuffixCountableRange
11
11
+0.0%
1.00x

SuperChars
85222
85847
+0.7%
0.99x (?)

TwoSum
995
1000
+0.5%
1.00x (?)

TypeFlood
0
0
+0.0%
1.00x

Walsh
427
434
+1.6%
0.98x

XorLoop
384
377
-1.8%
1.02x (?)

Unoptimized (Onone)

Regression (6)

TEST
OLD
NEW
DELTA
SPEEDUP

LessSubstringSubstring
771
829
+7.5%
0.93x

EqualStringSubstring
687
734
+6.8%
0.94x (?)

DropFirstSequenceLazy
11793
12550
+6.4%
0.94x

ObjectiveCBridgeStubDateMutation
601
635
+5.7%
0.95x

DropFirstAnySequenceLazy
12179
12833
+5.4%
0.95x

ObjectiveCBridgeStubToArrayOfNSString
27728
29215
+5.4%
0.95x (?)

Improvement (123)

TEST
OLD
NEW
DELTA
SPEEDUP

PrefixArray
7588
1461
-80.7%
5.19x

DropFirstArray
7588
1474
-80.6%
5.15x

UTF8Decode
37064
9751
-73.7%
3.80x

Chars
49241
13455
-72.7%
3.66x

SumUsingReduceInto
218244
62639
-71.3%
3.48x

DropWhileArrayLazy
16928
4992
-70.5%
3.39x

SumUsingReduce
219862
65856
-70.0%
3.34x

LazilyFilteredArrayContains
929630
309278
-66.7%
3.01x

FilterEvenUsingReduceInto
2408
854
-64.5%
2.82x

PrefixWhileArrayLazy
14754
5474
-62.9%
2.70x

StringComparison_ascii
13831
5476
-60.4%
2.53x

ArrayValueProp2
18581
7665
-58.7%
2.42x

ArrayAppendLazyMap
210557
92321
-56.2%
2.28x

ReversedDictionary
27456
12083
-56.0%
2.27x

MapReduceLazyCollection
28327
13260
-53.2%
2.14x

CharIteration_tweet_unicodeScalars
366980
182820
-50.2%
2.01x

CharIteration_chinese_unicodeScalars
140805
70373
-50.0%
2.00x

CharIteration_japanese_unicodeScalars
221972
111041
-50.0%
2.00x

CharIteration_punctuated_unicodeScalars
41590
20832
-49.9%
2.00x

CharIteration_punctuatedJapanese_unicodeScalars
33101
16622
-49.8%
1.99x

CharIteration_russian_unicodeScalars
155012
77939
-49.7%
1.99x

CharIteration_korean_unicodeScalars
179875
90550
-49.7%
1.99x

CharIteration_ascii_unicodeScalars
185700
93533
-49.6%
1.99x

StringBuilder
7350
3775
-48.6%
1.95x

MapReduceString
2323
1215
-47.7%
1.91x

LazilyFilteredArrays
1665337
896422
-46.2%
1.86x

MapReduceAnyCollection
33830
18960
-44.0%
1.78x

StringUTF16Builder
8043
4520
-43.8%
1.78x

MapReduceLazyCollectionShort
39206
22121
-43.6%
1.77x

MapReduce
33881
19356
-42.9%
1.75x

SuperChars
192513
112640
-41.5%
1.71x

MapReduceSequence
36872
22165
-39.9%
1.66x

StringComparison_slowerPrenormal
6666
4040
-39.4%
1.65x

Join
1477
896
-39.3%
1.65x

StringComparison_zalgo
2730
1662
-39.1%
1.64x

ErrorHandling
7187
4377
-39.1%
1.64x

MapReduceClass
38410
23665
-38.4%
1.62x

Dictionary
2748
1695
-38.3%
1.62x

FilterEvenUsingReduce
4166
2599
-37.6%
1.60x

MapReduceAnyCollectionShort
45801
28900
-36.9%
1.58x

ObjectAllocation
1439
912
-36.6%
1.58x

StringComparison_abnormal
1393
888
-36.3%
1.57x

MapReduceShort
45861
29236
-36.3%
1.57x

StringComparison_latin1
9227
5943
-35.6%
1.55x

MapReduceClassShort
50115
33167
-33.8%
1.51x

SubstringEquatable
9055
6000
-33.7%
1.51x

StringComparison_fastPrenormal
12700
8459
-33.4%
1.50x

SubstringComparable
4418
2994
-32.2%
1.48x

StringComparison_emoji
3627
2466
-32.0%
1.47x

StringComparison_nonBMPSlowestPrenormal
6526
4444
-31.9%
1.47x

MapReduceShortString
266
182
-31.6%
1.46x

Histogram
7107
4866
-31.5%
1.46x

PrefixWhileSequence
29979
20728
-30.9%
1.45x

CharIteration_punctuatedJapanese_unicodeScalars_Backwards
59104
41017
-30.6%
1.44x

AngryPhonebook
4733
3297
-30.3%
1.44x

CharIteration_utf16_unicodeScalars
224567
157144
-30.0%
1.43x

ObserverForwarderStruct
4754
3332
-29.9%
1.43x

CharIteration_korean_unicodeScalars_Backwards
327349
229986
-29.7%
1.42x

PrefixWhileAnySequence
30114
21190
-29.6%
1.42x

PrefixWhileArray
16126
11432
-29.1%
1.41x

CharIteration_ascii_unicodeScalars_Backwards
337775
240935
-28.7%
1.40x

CharIndexing_punctuatedJapanese_unicodeScalars
78757
56206
-28.6%
1.40x

CharIndexing_ascii_unicodeScalars
457903
327240
-28.5%
1.40x

CharIteration_chinese_unicodeScalars_Backwards
253039
181086
-28.4%
1.40x

CharIteration_japanese_unicodeScalars_Backwards
404880
290021
-28.4%
1.40x

CharIndexing_punctuated_unicodeScalars
100134
71800
-28.3%
1.39x

CharIteration_tweet_unicodeScalars_Backwards
663582
475947
-28.3%
1.39x

CharIteration_russian_unicodeScalars_Backwards
278575
200624
-28.0%
1.39x (?)

CharIteration_punctuated_unicodeScalars_Backwards
73740
53240
-27.8%
1.39x

CharIndexing_korean_unicodeScalars
443461
322147
-27.4%
1.38x

PrefixWhileAnySeqCRangeIter
38830
28235
-27.3%
1.38x

CharIndexing_chinese_unicodeScalars
339141
247804
-26.9%
1.37x

CharIndexing_tweet_unicodeScalars
891671
669020
-25.0%
1.33x

CharIndexing_russian_unicodeScalars
379894
290889
-23.4%
1.31x (?)

CharIndexing_japanese_unicodeScalars
541182
416135
-23.1%
1.30x

StringEdits
424514
327962
-22.7%
1.29x

ObserverClosure
6409
4964
-22.5%
1.29x

DictionaryGroupOfObjects
8069
6363
-21.1%
1.27x

ObserverPartiallyAppliedMethod
7895
6381
-19.2%
1.24x

SuffixSequence
30205
24442
-19.1%
1.24x

StringComparison_longSharedPrefix
7620
6198
-18.7%
1.23x

ObserverUnappliedMethod
7954
6571
-17.4%
1.21x

DictionaryOfObjects
6288
5225
-16.9%
1.20x

RGBHistogram
29002
24147
-16.7%
1.20x

CharIndexing_korean_unicodeScalars_Backwards
478243
398935
-16.6%
1.20x (?)

CharIndexing_ascii_unicodeScalars_Backwards
491461
412588
-16.0%
1.19x (?)

CharIndexing_russian_unicodeScalars_Backwards
407955
343381
-15.8%
1.19x

CharIndexing_tweet_unicodeScalars_Backwards
972216
820582
-15.6%
1.18x (?)

DropFirstAnySeqCRangeIter
27210
23037
-15.3%
1.18x (?)

DropFirstAnySeqCRangeIterLazy
27018
22922
-15.2%
1.18x (?)

CharIndexing_japanese_unicodeScalars_Backwards
578902
494688
-14.5%
1.17x

CharIndexing_punctuated_unicodeScalars_Backwards
106689
91688
-14.1%
1.16x

DictionaryLiteral
8406
7235
-13.9%
1.16x

CharIteration_utf16_unicodeScalars_Backwards
372240
321082
-13.7%
1.16x

CharIndexing_punctuatedJapanese_unicodeScalars_Backwards
81797
70875
-13.4%
1.15x (?)

StrToInt
70769
61657
-12.9%
1.15x

SubstringEqualString
6549
5714
-12.8%
1.15x

CharIndexing_utf16_unicodeScalars
459351
401567
-12.6%
1.14x

CharIndexing_chinese_unicodeScalars_Backwards
362635
320327
-11.7%
1.13x

DropLastSequence
32218
28614
-11.2%
1.13x

CStringShortAscii
8397
7475
-11.0%
1.12x (?)

DropLastAnySeqCRangeIterLazy
42517
38108
-10.4%
1.12x

SuffixAnySequenceLazy
27571
24753
-10.2%
1.11x

SuffixSequenceLazy
27544
24780
-10.0%
1.11x

SuffixAnySeqCRangeIter
38161
34437
-9.8%
1.11x

SuffixAnySeqCRangeIterLazy
37870
34274
-9.5%
1.10x

ArrayOfPOD
854
774
-9.4%
1.10x

SuffixAnySequence
27544
25043
-9.1%
1.10x

PrimsSplit
10267
9353
-8.9%
1.10x

RangeIterationUnsigned
42704
39010
-8.7%
1.09x (?)

RangeIterationSigned64
47140
43092
-8.6%
1.09x (?)

ClassArrayGetter
1070
979
-8.5%
1.09x

DropLastSequenceLazy
31195
28558
-8.5%
1.09x

StringMatch
38086
34963
-8.2%
1.09x

Prims
10155
9325
-8.2%
1.09x

DropLastAnySequenceLazy
31190
28714
-7.9%
1.09x

DropLastAnySequence
31334
28875
-7.8%
1.09x

DropLastAnySeqCRangeIter
41366
38344
-7.3%
1.08x

CharIndexing_utf16_unicodeScalars_Backwards
467864
434708
-7.1%
1.08x (?)

FrequenciesUsingReduce
10988
10398
-5.4%
1.06x (?)

ArrayOfGenericPOD
1644
1558
-5.2%
1.06x

ExclusivityIndependent
77
73
-5.2%
1.05x (?)

RGBHistogramOfObjects
97328
92293
-5.2%
1.05x

No Changes (201)

TEST
OLD
NEW
DELTA
SPEEDUP

AnyHashableWithAClass
87592
87872
+0.3%
1.00x

Array2D
630420
631383
+0.2%
1.00x (?)

ArrayAppend
4745
4749
+0.1%
1.00x (?)

ArrayAppendArrayOfInt
792
791
-0.1%
1.00x (?)

ArrayAppendAscii
44386
44463
+0.2%
1.00x (?)

ArrayAppendFromGeneric
797
794
-0.4%
1.00x (?)

ArrayAppendGenericStructs
1410
1406
-0.3%
1.00x

ArrayAppendLatin1
67041
66898
-0.2%
1.00x (?)

ArrayAppendOptionals
1405
1406
+0.1%
1.00x (?)

ArrayAppendRepeatCol
186812
187002
+0.1%
1.00x (?)

ArrayAppendReserved
4370
4373
+0.1%
1.00x (?)

ArrayAppendSequence
144585
140896
-2.6%
1.03x

ArrayAppendStrings
15726
15749
+0.1%
1.00x (?)

ArrayAppendToFromGeneric
799
792
-0.9%
1.01x (?)

ArrayAppendToGeneric
795
791
-0.5%
1.01x (?)

ArrayAppendUTF16
68097
68266
+0.2%
1.00x (?)

ArrayInClass
6234
6225
-0.1%
1.00x (?)

ArrayLiteral
1685
1677
-0.5%
1.00x

ArrayOfGenericRef
9960
9955
-0.1%
1.00x (?)

ArrayOfRef
9199
9164
-0.4%
1.00x (?)

ArrayPlusEqualArrayOfInt
797
791
-0.8%
1.01x

ArrayPlusEqualFiveElementCollection
243976
254122
+4.2%
0.96x (?)

ArrayPlusEqualSingleElementCollection
242076
247987
+2.4%
0.98x (?)

ArrayPlusEqualThreeElements
9385
9289
-1.0%
1.01x (?)

ArraySubscript
84587
82078
-3.0%
1.03x

ArrayValueProp
3435
3430
-0.1%
1.00x (?)

ArrayValueProp3
3956
3882
-1.9%
1.02x (?)

ArrayValueProp4
3893
3827
-1.7%
1.02x

BitCount
2099
2099
+0.0%
1.00x

ByteSwap
3936
3949
+0.3%
1.00x

CStringLongAscii
5657
5736
+1.4%
0.99x

CStringLongNonAscii
2435
2488
+2.2%
0.98x

Calculator
1210
1232
+1.8%
0.98x

CaptureProp
394208
387729
-1.6%
1.02x

CharacterLiteralsLarge
6259
5982
-4.4%
1.05x

CharacterLiteralsSmall
862
861
-0.1%
1.00x

Dictionary2
2959
2939
-0.7%
1.01x (?)

Dictionary2OfObjects
5656
5683
+0.5%
1.00x (?)

Dictionary3
1334
1337
+0.2%
1.00x (?)

Dictionary3OfObjects
2272
2249
-1.0%
1.01x (?)

DictionaryBridge
3889
3992
+2.6%
0.97x (?)

DictionaryGroup
4683
4705
+0.5%
1.00x (?)

DictionaryRemove
18272
18469
+1.1%
0.99x

DictionaryRemoveOfObjects
51006
48680
-4.6%
1.05x (?)

DictionarySubscriptDefaultMutation
1995
2060
+3.3%
0.97x

DictionarySubscriptDefaultMutationArray
2252
2291
+1.7%
0.98x (?)

DictionarySubscriptDefaultMutationArrayOfObjects
8943
9243
+3.4%
0.97x

DictionarySubscriptDefaultMutationOfObjects
5562
5543
-0.3%
1.00x (?)

DictionarySwap
5267
5260
-0.1%
1.00x (?)

DictionarySwapOfObjects
22179
22115
-0.3%
1.00x (?)

DropFirstAnyCollection
15728
15568
-1.0%
1.01x (?)

DropFirstAnyCollectionLazy
121826
117046
-3.9%
1.04x (?)

DropFirstAnySeqCntRange
15558
15615
+0.4%
1.00x (?)

DropFirstAnySeqCntRangeLazy
15699
15531
-1.1%
1.01x

DropFirstAnySequence
12311
12662
+2.9%
0.97x

DropFirstArrayLazy
32889
32695
-0.6%
1.01x

DropFirstCountableRange
327
327
+0.0%
1.00x

DropFirstCountableRangeLazy
29392
29850
+1.6%
0.98x (?)

DropFirstSequence
11821
12183
+3.1%
0.97x (?)

DropLastAnyCollection
5234
5191
-0.8%
1.01x (?)

DropLastAnyCollectionLazy
39255
39386
+0.3%
1.00x (?)

DropLastAnySeqCntRange
5195
5242
+0.9%
0.99x (?)

DropLastAnySeqCntRangeLazy
5240
5198
-0.8%
1.01x

DropLastCountableRange
114
114
+0.0%
1.00x

DropLastCountableRangeLazy
9808
9994
+1.9%
0.98x (?)

DropWhileAnyCollection
19801
20032
+1.2%
0.99x

DropWhileAnyCollectionLazy
21135
21766
+3.0%
0.97x

DropWhileAnySeqCRangeIter
24247
24684
+1.8%
0.98x

DropWhileAnySeqCRangeIterLazy
21099
21776
+3.2%
0.97x (?)

DropWhileAnySeqCntRange
19811
20029
+1.1%
0.99x (?)

DropWhileAnySeqCntRangeLazy
21159
21750
+2.8%
0.97x

DropWhileAnySequence
14219
14493
+1.9%
0.98x

DropWhileAnySequenceLazy
11132
11624
+4.4%
0.96x

DropWhileCountableRange
4749
4832
+1.7%
0.98x (?)

DropWhileCountableRangeLazy
20669
21434
+3.7%
0.96x

DropWhileSequence
13813
14090
+2.0%
0.98x

DropWhileSequenceLazy
10903
11427
+4.8%
0.95x

EqualSubstringString
734
732
-0.3%
1.00x (?)

EqualSubstringSubstring
835
824
-1.3%
1.01x (?)

EqualSubstringSubstringGenericEquatable
460
464
+0.9%
0.99x

ExclusivityGlobal
194
200
+3.1%
0.97x

FrequenciesUsingReduceInto
5241
5330
+1.7%
0.98x (?)

Hanoi
21181
21449
+1.3%
0.99x

HashTest
17515
16945
-3.3%
1.03x (?)

Integrate
818
812
-0.7%
1.01x

IterateData
7601
7611
+0.1%
1.00x (?)

LazilyFilteredRange
525899
527222
+0.3%
1.00x

LessSubstringSubstringGenericComparable
459
467
+1.7%
0.98x

LinkedList
39255
39579
+0.8%
0.99x

MapReduceLazySequence
20687
21198
+2.5%
0.98x

Memset
44958
44959
+0.0%
1.00x (?)

MonteCarloE
921532
888885
-3.5%
1.04x

MonteCarloPi
4011548
3915891
-2.4%
1.02x

NSDictionaryCastToSwift
6443
6371
-1.1%
1.01x (?)

NSError
718
697
-2.9%
1.03x (?)

NSStringConversion
449
443
-1.3%
1.01x

NopDeinit
179071
180574
+0.8%
0.99x

ObjectiveCBridgeFromNSArrayAnyObject
24062
25055
+4.1%
0.96x (?)

ObjectiveCBridgeFromNSArrayAnyObjectForced
8095
7912
-2.3%
1.02x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToString
41061
40170
-2.2%
1.02x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToStringForced
34351
34127
-0.7%
1.01x (?)

ObjectiveCBridgeFromNSDictionaryAnyObject
132678
137722
+3.8%
0.96x (?)

ObjectiveCBridgeFromNSSetAnyObject
68281
66871
-2.1%
1.02x (?)

ObjectiveCBridgeFromNSSetAnyObjectForced
6979
7051
+1.0%
0.99x (?)

ObjectiveCBridgeFromNSSetAnyObjectToString
73645
74064
+0.6%
0.99x (?)

ObjectiveCBridgeFromNSString
3011
3030
+0.6%
0.99x (?)

ObjectiveCBridgeFromNSStringForced
2485
2523
+1.5%
0.98x (?)

ObjectiveCBridgeStubDataAppend
4525
4389
-3.0%
1.03x (?)

ObjectiveCBridgeStubFromArrayOfNSString
26024
26715
+2.7%
0.97x (?)

ObjectiveCBridgeStubFromNSDate
4274
4391
+2.7%
0.97x

ObjectiveCBridgeStubFromNSString
650
650
+0.0%
1.00x

ObjectiveCBridgeStubFromNSStringRef
207
202
-2.4%
1.02x

ObjectiveCBridgeStubNSDataAppend
3091
3004
-2.8%
1.03x (?)

ObjectiveCBridgeStubNSDateMutationRef
15584
15237
-2.2%
1.02x (?)

ObjectiveCBridgeStubToNSDate
15298
15717
+2.7%
0.97x (?)

ObjectiveCBridgeStubToNSDateRef
3416
3405
-0.3%
1.00x (?)

ObjectiveCBridgeStubToNSString
1482
1485
+0.2%
1.00x (?)

ObjectiveCBridgeStubToNSStringRef
158
162
+2.5%
0.98x

ObjectiveCBridgeStubURLAppendPath
338147
349796
+3.4%
0.97x (?)

ObjectiveCBridgeStubURLAppendPathRef
335286
342954
+2.3%
0.98x (?)

ObjectiveCBridgeToNSArray
29740
29928
+0.6%
0.99x (?)

ObjectiveCBridgeToNSDictionary
59037
59505
+0.8%
0.99x (?)

ObjectiveCBridgeToNSSet
50415
48623
-3.6%
1.04x (?)

ObjectiveCBridgeToNSString
1249
1243
-0.5%
1.00x

OpenClose
429
423
-1.4%
1.01x

Phonebook
22802
22569
-1.0%
1.01x

PolymorphicCalls
6740
7000
+3.9%
0.96x (?)

PopFrontArray
7584
7614
+0.4%
1.00x (?)

PopFrontArrayGeneric
6534
6498
-0.6%
1.01x (?)

PopFrontUnsafePointer
10454
10472
+0.2%
1.00x (?)

PrefixAnyCollection
15532
15470
-0.4%
1.00x

PrefixAnyCollectionLazy
113646
119144
+4.8%
0.95x (?)

PrefixAnySeqCRangeIter
17832
18291
+2.6%
0.97x

PrefixAnySeqCRangeIterLazy
17662
18373
+4.0%
0.96x

PrefixAnySeqCntRange
15545
15641
+0.6%
0.99x

PrefixAnySeqCntRangeLazy
15714
15554
-1.0%
1.01x

PrefixAnySequence
10116
10417
+3.0%
0.97x

PrefixAnySequenceLazy
10022
10511
+4.9%
0.95x

PrefixArrayLazy
33000
32786
-0.6%
1.01x

PrefixCountableRange
327
326
-0.3%
1.00x

PrefixCountableRangeLazy
29424
29929
+1.7%
0.98x (?)

PrefixSequence
9849
9723
-1.3%
1.01x

PrefixSequenceLazy
9831
10201
+3.8%
0.96x

PrefixWhileAnyCollection
28507
29099
+2.1%
0.98x (?)

PrefixWhileAnyCollectionLazy
17471
18031
+3.2%
0.97x (?)

PrefixWhileAnySeqCRangeIterLazy
17468
17853
+2.2%
0.98x (?)

PrefixWhileAnySeqCntRange
28490
29008
+1.8%
0.98x

PrefixWhileAnySeqCntRangeLazy
17620
17975
+2.0%
0.98x

PrefixWhileAnySequenceLazy
10203
10463
+2.5%
0.98x

PrefixWhileCountableRange
13492
14042
+4.1%
0.96x

PrefixWhileCountableRangeLazy
17153
17779
+3.6%
0.96x

PrefixWhileSequenceLazy
10162
10284
+1.2%
0.99x

RC4
18006
18634
+3.5%
0.97x

RangeAssignment
4362
4398
+0.8%
0.99x (?)

RangeIterationSigned
17222
17503
+1.6%
0.98x

RecursiveOwnedParameter
8020
7764
-3.2%
1.03x (?)

ReversedArray
17101
17173
+0.4%
1.00x (?)

ReversedBidirectional
63499
62748
-1.2%
1.01x (?)

SetExclusiveOr
17773
17949
+1.0%
0.99x

SetExclusiveOr_OfObjects
41504
41654
+0.4%
1.00x (?)

SetIntersect
9159
9136
-0.3%
1.00x

SetIntersect_OfObjects
12169
12212
+0.4%
1.00x (?)

SetIsSubsetOf
1490
1501
+0.7%
0.99x

SetIsSubsetOf_OfObjects
1539
1535
-0.3%
1.00x (?)

SetUnion
11978
11939
-0.3%
1.00x

SetUnion_OfObjects
29138
29206
+0.2%
1.00x

SevenBoom
1706
1708
+0.1%
1.00x (?)

Sim2DArray
43778
43776
-0.0%
1.00x (?)

SortLargeExistentials
16152
15976
-1.1%
1.01x (?)

SortLettersInPlace
2897
2873
-0.8%
1.01x (?)

SortSortedStrings
1384
1373
-0.8%
1.01x (?)

SortStrings
2633
2572
-2.3%
1.02x

SortStringsUnicode
9383
9370
-0.1%
1.00x (?)

StackPromo
93596
90236
-3.6%
1.04x (?)

StaticArray
2629
2678
+1.9%
0.98x

StrComplexWalk
7259
7106
-2.1%
1.02x

StringAdder
3648
3665
+0.5%
1.00x

StringBuilderLong
1096
1091
-0.5%
1.00x (?)

StringEnumRawValueInitialization
13743
13522
-1.6%
1.02x (?)

StringEqualPointerComparison
3354
3383
+0.9%
0.99x

StringFromLongWholeSubstring
206
204
-1.0%
1.01x

StringFromLongWholeSubstringGeneric
199
207
+4.0%
0.96x (?)

StringHasPrefixAscii
2894
2889
-0.2%
1.00x (?)

StringHasPrefixUnicode
20361
20305
-0.3%
1.00x (?)

StringHasSuffixAscii
3052
3018
-1.1%
1.01x

StringHasSuffixUnicode
80397
79001
-1.7%
1.02x (?)

StringInterpolation
13916
13991
+0.5%
0.99x (?)

StringWalk
13501
13314
-1.4%
1.01x

StringWithCString
69904
69662
-0.3%
1.00x

SubstringFromLongString
15
15
+0.0%
1.00x

SubstringFromLongStringGeneric
101
101
+0.0%
1.00x

SuffixAnyCollection
5196
5172
-0.5%
1.00x

SuffixAnyCollectionLazy
39515
40143
+1.6%
0.98x (?)

SuffixAnySeqCntRange
5197
5243
+0.9%
0.99x

SuffixAnySeqCntRangeLazy
5249
5206
-0.8%
1.01x (?)

SuffixCountableRange
113
114
+0.9%
0.99x

SuffixCountableRangeLazy
9809
10025
+2.2%
0.98x (?)

TwoSum
4120
4040
-1.9%
1.02x

TypeFlood
157
159
+1.3%
0.99x (?)

Walsh
12107
12116
+0.1%
1.00x (?)

XorLoop
23641
23635
-0.0%
1.00x (?)

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 6366f5b39c663be6eaeceba39a8366b00fdd5865

Please test with the following pull request
https://github.com/apple/swift-package-manager/pull/1505
@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 6366f5b39c663be6eaeceba39a8366b00fdd5865

Please test with the following pull request
apple/swift-package-manager#1505
@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 6366f5b39c663be6eaeceba39a8366b00fdd5865

Build failed
Swift Test OS X Platform
Git Sha - 6366f5b39c663be6eaeceba39a8366b00fdd5865


text:
[closure-lifetime-fixup] Use GetValueAtEndOfBlock instead of GetValue…

…InMiddleOfBlock for getting values in exits.
Otherwise we will leak values if the copy block is in the same block as the
terminator and we fail to identify a single destroy for the copy block. We are
generally pretty good at identifying those single destroy cases, so I am not
sure how often this actually happens.
Found by the ownership verifier.

@swift-ci smoke test


text:
[stdlib] Document Windows implementation of SystemRandomNumberGenerator

Salvaged from #26294.

@swift-ci Please smoke test


text:
[IDE] Enable 'IgnoreSwiftSourceInfo' in code completion

Getting source locations from .swiftsourceinfo is currently expensive. Since they are not necessary for code completion, set IgnoreSwiftSourceInfo to true.
rdar://problem/57194358
https://bugs.swift.org/browse/SR-11767

@swift-ci Please smoke test

There seems to be a lot of places that needed update, how about adding some processCompilerInvocationForCodeCompletion function that all these places can call into and if we need more adjustments for code-completion we can modify a single place, instead of searching for all the different places?

I agree we should have some unified place for adjusting invocation/instance for completion operations. We already have some duplicated code between completion/typecontextinfo/conformingmethodlist. I will see how we could consolidate them.

@akyrtzi Since it's not trivial change, can I do that in separate pull request (#28322)?

Sure!

authors: akyrtzi rintaro


text:
Cross-module-optimization: no need to add AST-attributes to make functions always-emit-into-client.

This is less hacky. It works because we de-serialize the linkage from SIL (and not just derive it from the AST attributes).

@swift-ci test


text:
build: switch gyb to Python3

Change the build system to invoke gyb with python3 instead of python2.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

CC: @stephentyrone @drodriguez @tachoknight @edymtt @shahmishal @JDevlieghere @gwynne

@swift-ci please clean test

CC: @nathawes - you may also be interested in this since SwiftSyntax depends on gyb'ed output

Build failed
Swift Test Linux Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

Build failed
Swift Test OS X Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please test macOS platform

@swift-ci please test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

Build failed
Swift Test OS X Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please test Linux platform

@nathawes I can't seem to figure out why the tests on macOS are failing with this change.  Happen to have any hints on why the tests are hitting this error:
The loaded '_InternalSwiftSyntaxParser' library is from a toolchain that is not compatible with this version of SwiftSyntax
Run lit-test-helper -help for more help.

swift-syntax repo also invokes gyb via its build-script to generate its swift code. def calculate_node_hash() is used to ensure swift-side parser and swift-syntax library are compatible.
If swift-side uses python3 and that function generates different hash than python2 from swift-syntax, there will be a mismatch.

@akyrtzi ah, thanks for that explanation.  I'll try to get swift-syntax synced up then

@swift-ci please test macOS platform

Build failed
Swift Test OS X Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please test macOS platform

Build failed
Swift Test OS X Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please clean test

Build failed
Swift Test Linux Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

Build failed
Swift Test OS X Platform
Git Sha - 05330c474d5a4cc79c1ce92783cb58e1f6401e76

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - 102621acb9160017be31d16c2b05c6c0e54c5a62

@swift-ci Please Python lint

@swift-ci Please Python lint

@swift-ci please test

@swift-ci please test

@swift-ci please test Windows platform

/cc @shahmishal

Thanks @compnerd!

authors: akyrtzi compnerd drexin shahmishal swift-ci


text:
[Refactoring] Support refactoring calls to async if a variable or function is used as completion handler

Previously, we only supported  refactoring a function to call the async alternative if a closure was used for the callback parameter. With this change, we also support calling a arbitrary function (or variable with function type) that is passed to the completion handler argument.
The implementation basically re-uses the code we already have to create the legacy function’s body (which calls the newly created async version and then forwards the arguments to the legacy completion handler).
To describe the completion handler that the result is being forwarded to, I’m also using AsyncHandlerDesc, but since the completion handler may be a variable, it doesn’t necessarily have an Index within a function decl that declares it. Because of this, I split the AsyncHandlerDesc up into a context-free AsyncHandlerDesc (without an Index) and AsyncHandlerParamDesc (which includes the Index). It turns out that AsyncHandlerDesc is sufficient in most places.
Resolves rdar://77460524

This PR consists of three commits, which might be easiest to review on their own. After each commit, the source should be in a buildable state that passes all tests
1. Merge LegacyAlternativeBodyCreator into AsyncConverter
This will later allow us to reuse parts of LegacyAlternativeBodyCreator from AsyncConverter when refactoring calls to an async alternative if they pass a variable as the completion handler.
2. Replace usage of constant strings with tok:: wherever possible
The code moved from LegacyAlternativeBodyCreator was using constant strings a lot. Use tok:: instead to match the style of AsyncConverter.
3. Support refactoring calls to async if a variable or function is used as completion handler
The main change described above.

@swift-ci Please test


text:
[Concurrency] AsyncStream and AsyncThrowingStream

This contains the work associated with AsyncStream and AsyncThrowingStream; the concrete producing types for AsyncSequence. This implements the SE-0314 proposal.

@swift-ci please test

@swift-ci please smoke test

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 52cdddf2df2f0341c6d5ab67a6b01b7ebc9a2af4

@swift-ci please test linux

@swift-ci please smoke test macOS

@swift-ci please nominate

@swift-ci please nominate

This PR is subsumed by https://github.com/apple/swift/pull/37974

#37974 is merged, so we'll close this out

authors: DougGregor phausler swift-ci