Swiftpack.co - Swift Packages by apple

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

Packages published by apple

apple/ml-stable-diffusion 1.1.0
Stable Diffusion with Core ML on Apple Silicon
โญ๏ธ 15,876
๐Ÿ•“ 22 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.1.0
22 weeks ago
- SDXL iOS and iPadOS Benchmarks - SDXL refiner Swift inference by @zachnagengast - SDXL base Python inference by @lopez-hector - CUDA RNG in Swift by @liuliu - Karras schedule for DPMSolver by @pcuenq - Other improvements
1.0.0
37 weeks ago
- 6-bit weight compression using coremltools - Improved attention implementation (`SPLIT_EINSUM_V2`) which yields up to 30% improved Neural Engine performance - Multilingual text encoder support - New benchmarks for iPhone, iPad and Mac
0.4.0
44 weeks ago
- ControlNet - Speed improvements to Swift.package scheduler and tokenizer code
0.3.0
49 weeks ago
0.2.0
1 year ago
0.1.0
1 year ago
Initial release
iOS macOS
apple/swift-package-manager swift-DEVELOPMENT-SNAPSHOT-2024-03-04-a
The Package Manager for the Swift Programming Language
โญ๏ธ 9,546
๐Ÿ•“ 1 hour ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2 weeks ago
0.6.0
3 years ago
3 years ago
Swift 5.2 Release
3 years ago
4 years ago
4 years ago
5 years ago
5 years ago
Swift 4.2.1 Release
5 years ago
Swift 4.2 Release
5 years ago
iOS macOS
apple/swift-nio 2.63.0
Event-driven network application framework for high performance protocol servers & clients, non-blocking.
โญ๏ธ 7,695
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO 2.63.0
6 weeks ago
This release includes a new module, `NIOFileSystem`, for asynchronously interacting with the filesystem. The module isn't yet considered public API and is therefore available via the `_NIOFileSystem` product. We plan to stabilise the API soon and welcome feedback in the meantime. You can learn more about `NIOFileSystem` by reading the [documentation](https://swiftpackageindex.com/apple/swift-nio/main/documentation/NIOFileSystem). ### SemVer Minor - Add `async` API for `NonBlockingFileIO` (#2576, patch credit to @adam-fowler) - Allow setting `MTELG.singleton` as Swift Concurrency executor (#2564) ### SemVer Patch - Changes to support building with Musl (#2595 and #2628, patch credit to @al45tair) - Build for Android with NDK 26, by accounting for the new nullability annotations (#2600, patch credit to @finagolfin) - Fix warnings caused by not defining the feature macros. (#2606, patch credit to @al45tair) - [arch] Add arm64_32 to the 32-bit platform check (#2625, patch credit to @hyerra) - Remove precondition on result of `IOCTL_VM_SOCKETS_GET_LOCAL_CID` (#2588) - Add missing availability guards in tests (#2596) - Add `NIOAsyncWriterSinkDelegate._didSuspend` hook for testing (#2597) - Suppress the performance checker warning by being sneaky (#2620) - Avoid `confstr` on Android (#2627) ### Other Changes - Update APNSwift Repository Link in README.md (#2602, patch credit to @Ryu0118) - Add tests to validate the behaviour when requests/response content-length headers are wrong in HTTP1 (#2601) - Fix test availability annotations (#2607) - Fix warnings when building tests on Swift 5.9.2 Linux (#2610) - Set `SWIFT_VERSION` environment variable to resolve to the correct benchmarks thresholds path (#2613) - Add cxx interop build pipeline (#2614) - Fix the broken performance test binary (#2619) - Fix broken tests (#2621) - Fix `NIOAsyncChannel` allocation benchmarks (#2622) - Add additional guards in tests for mocking (#2624) - Avoid overflow in tests where Int is 32-bit (#2626)
SwiftNIO 2.62.0
15 weeks ago
### SemVer Minor - Add `executeThenClose` to `NIOAsyncChannel` and deprecate deinit based closing methods & inits (#2589, #2592) - Revert "Back out new typed HTTP protocol upgrader (#2579)" and add compiler guards (#2593, #2594) ### SemVer Patch - Fixing an issue with `CNIOSHA1` missing an `#include` for the `BYTE_ORDER` define. (#2584) - Fix spelling of retroactive guard (#2586) - Fix reordering/reentrancy bug in `NIOAsyncWriter` + `NIOAsyncChannel` (#2587)
SwiftNIO 2.61.1
17 weeks ago
### SemVer Patch - use feature-specific guard for `@retroactive` (#2581)
SwiftNIO 2.61.0
18 weeks ago
### SemVer Minor - Add async version of NIOThreadPool.runIfActive (#2566, patch credit to @adam-fowler) - ๐ŸšจBreaking change ๐Ÿšจ Back out new typed HTTP protocol upgrader (#2579) - We had to back out the typed HTTP protocol upgrade APIs since they were causing a runtime crash for our users. This is allowed under SemVer rules even if it is a breaking change. Once the compiler bug has been fixed we will try to land the new APIs again. ### SemVer Patch - Fix exclusive access violation in `NIOAsyncChannelOutboundWriterHandler` (#2580) ### Other Changes - Fix concurrency doc APIs (#2575)
SwiftNIO 2.60.0
18 weeks ago
### New async APIs (former AsyncChannel SPI) With this release we are stabilizing the `AsyncChannel` SPI and promote it to API. The following changes have been made to finalize the new APIs. #### General and performance changes - Improve performance of `NIOAsyncChannel` (#2539) - Remove SPI from `NIOAsyncChannel` and new bootstrap methods (#2548) - Add docs for the async NIO APIs (#2549) - Update the concurrency documentation (#2529) - Add `NIOAsyncChannel` benchmark (#2536) - Add support for async VSock bootstrap methods (#2561) #### Typed HTTP upgrading - Introduce new typed `HTTPServerUpgrader` and `WebSocketServerUpgrader` (#2517) - Introduce new typed `HTTPClientUpgrader` and `WebSocketClientUpgrader` (#2526) #### Breaking The following were breaking changes to the SPI. - ๐ŸšจRemove `ProtocolNegotiationHandler` protocol (#2519) - ๐ŸšจAlign back pressure naming (#2527) - ๐ŸšจMake `NIOAsyncChannel` a struct (#2528) - ๐ŸšจRemove `NIOProtocolNegotiationResult` (#2554) ### SemVer Minor - Add jitter support to recurring tasks (#2542, patch credit to @LorenzoFritzsch) - Bump minimum Swift version to 5.7 (#2524) - Add customization point for scheduling `ExecutorJob`s on `EventLoop`s (#2538) - Support disabling body aggregation in `NIOHTTP1TestServer` (#2563) - Add support for unidirectional `NIOPipeBootstrap` (#2560) ### SemVer Patch - Fix failed c++ compile of CNIOAtomics.h (#2518, patch credit to @saintstack) - Fix `CNIOSHA1.h` to support C++ interoperability (#2523, patch credit to @yaglo) - Fix overflow in `TimeAmount` (#2543, patch credit to @LorenzoFritzsch) - Avoid terminating when a precondition is not met in `HTTPServerPipelineHandler` (#2550) - Fix Sendable warning in `NIOPipeBoostrap` (#2530) - Tolerate empty HTTP response body parts (#2531) - Call `NIOAsyncWriterSinkDelegate` outside of the lock (#2547) - Fix test availability for tests (#2533) - Fix `Sendable` conformance for `Lock` (#2556) - Remove continuation resumption inside locks (#2558) - NonBlockingFileIO: tolerate chunk handlers from other `EventLoop`s (#2562) - Mark retroactive conformances appropriately. (#2569) ### Other Changes - Fix missing whitespace in `README.md` (#2535) - Fix flakiness in testDelayedUpgradeBehaviour (#2557) - Add autogenerated files from VSCode to .gitignore (#2567, patch credit to @adam-fowler) - Mention file length in bytes in `readFileSize` explicitly (#2572) - Adopt `package-benchmark` (#2534) - Fix thread-safety issues in `TCPThroughputBenchmark` (#2537) - perf tests: reset ByteBuffer indices after every iteration (#2544) - `measureRunTime` use `DispatchTime` (#2545) - Fix flaky `testRemovesAllHTTPRelatedHandlersAfterUpgrade` test (#2552) - `waitForUpgraderToBeRemoved` availability guard (#2559)
SwiftNIO 2.59.0
23 weeks ago
### SemVer Minor - Added `ByteBuffer.hexDump(format:)` (#2475, patch credit to @natikgadzhi) - Make the initializers of `NIOThreadPoolError` public (#2503, patch credit to @omochi) - Make `ByteBuffer` Codable (#2509, patch credit to @natikgadzhi) - `EventLoopFuture/Promise`: only `Sendable` if `Value` is `Sendable` (#2496) - HTTP1: Support users opting-out of us setting framing headers. (#2508) - Support for custom protocols in `DatagramBootstrap` (#2516) ### SemVer Patch - HTTP1: Simplify header separator and crlf (#2513, patch credit to @alex-taffe) - Update `CNIOLLHTTP` to latest `nodejs/llhttp` (#2512) ### Other Changes - Docs: explain the basic safe usage of `ByteBuffer` (#2499, patch credit to @natikgadzhi) - Match casing of reference links to the casing of the actual referenced declaration/module (#2500, patch credit to @tayloraswift) - Update nightly allocation limits (#2502)
SwiftNIO 2.58.0
30 weeks ago
### SemVer Minor - Add support for using `EventLoop`s as custom actor executor (#2388) - Add new `EventLoop` singletons (#2471) - Add bootstrap APIs for VSOCK sockets (#2479) ### SemVer Patch - Fix huge compile time of setUUIDBytes (#2482, patch credit to @sidepelican) - Get Android building again after #2479 (#2490, patch credit to @finagolfin) - Make `System.coreCount` aware of cgroup2 (#2394) - Don't lose or delay writes before `channelActive` (#2486) ### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - Rename the `waitForFinalResult()` methods and provide an `ELF` convenience (#2483) - Add testing interfaces for the stream and writer of the `NIOAsyncChannel` (#2488) - Provide throwing `finish` method on test stream (#2493) - Fix leaked promise in `NIOTypedApplicationProtocolNegotiationHandler` (#2489) - Add async TCP echo example (#2463) - Avoid using deinit to fulfil the protocol negotiation promise (#2497) ### Other Changes - Correct malformed codelink (#2484, patch credit to @tayloraswift) - Update contributor email address (#2481) - Fix 5.9 and nightly allocation limits (#2485) (#2487)
SwiftNIO 2.57.0
32 weeks ago
### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - ๐ŸšจBreaking change: Reduce the amount of bootstrap async methods (#2474) - Make `NIOAsyncChannel.Configuration` conform to `Sendable` (#2466) ### SemVer Patch - Skip TCP_NODELAY on sockets that NIO doesn't explicitly support (#2476) - Throw `SocketAddressError` (cf. fatalError) in SocketAddress.convert for unknown address family (#2477)
SwiftNIO 2.56.0
33 weeks ago
### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - ๐ŸšจBreaking change: Add configuration for `NIOAsyncChannel` (#2464) - Async support for `NIOPipeBootstrap` (#2458) - Async support for `NIORawSocketBootstrap` (#2460) ### Other Changes - Remove `XCTAsyncTest` usage (#2461) - Restructure `Package.swift` (#2462)
SwiftNIO 2.55.0
34 weeks ago
### SemVer Minor - Make `NIO[Throwing]AsyncSequenceProducer.Source` `Sendable` (#2459) ### SemVer Patch - Add support for Musl libc (#2449) - Close Channel when input & output are closed (#2450) - Correct a few Musl additions from #2449 for Android, plus error if libc not found (#2451, patch credit to @finagolfin) - Use #if canImport(Darwin) where possible (#2446) ### Other Changes - Update RediStack URL in README.md (#2445) - Allow opt-out of PII in CONTRIBUTORS.txt (#2453, patch credit to @therealbnut) - Update mailmap to unify Gwynne's email addresses (#2454, patch credit to @gwynne) - Fix several minor typos in comments found in various files (#2455, patch credit to @gwynne) - Fix last remaining test on Android (#2457, patch credit to @finagolfin) - Adopt the Swift CoC (#2440) - Updated allocation counters in 5.9 (#2456) ### SPI(AsyncChannel) changes - Add `NIOAsyncChannel` based connect methods to `ClientBootstrap` (#2437) - Add `NIOAsyncChannel` based connect and bind methods to `DatagramBootstrap` (#2439) - ๐ŸšจBreaking change: Align `ServerBootstrap` bind methods with the initializer style (#2443)
linux android macOS iOS
apple/swift-algorithms 1.2.0
Commonly used sequence and collection algorithms for Swift
โญ๏ธ 5,624
๐Ÿ•“ 15 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift Algorithms 1.2.0
15 weeks ago
### Additions - Sequences have new `grouped(by:)` and `keyed(by:)` methods, which simplify building dictionaries based on sequence elements: (#197) ```swift let evensOdds = (1...10).grouped(by: { $0.isMultiple(of: 2) ? "even" : "odd" }) // ["even": [2, 4, 6, 8, 10], "odd": [1, 3, 5, 7, 9]] let animals = ["Aardvark", "Alpaca", "Armadillo", "Barracuda", "Buffalo", ...] let alphaAnimals = animals.keyed(by: \.first!, resolvingConflictsWith: { _, first, _ in first }) // ["A": "Aardvark", "B": "Barracuda", ...] ``` - The `endOfPrefix(while:)` and `startOfSuffix(while)` methods are now public. These methods were previously implementation details of the `trimming` group of methods. (#211) ### Fixes - Documentation and performance improvements. (#202, #210) The 1.2.0 release includes contributions from @amomchilov, @mattyoung, @natecook1000, @stephentyrone, and @ttsugriy. Thank you!
Swift Algorithms 1.1.0
21 weeks ago
### Additions - New nonmutating `partitioned(by:)` methods that return both the failing and passing elements of a sequence or collection in separate arrays. (#152) ```swift let cast = ["Vivien", "Marlon", "Kim", "Karl"] let (longNames, shortNames) = cast.partitioned(by: { $0.count < 5 }) print(longNames) // Prints "["Vivien", "Marlon"]" print(shortNames) // Prints "["Kim", "Karl"]" ``` - A new `evenlyChunked(in:)` method that chunks a sequence or collection into the specified number of evenly-sized subsequences. (#96) ```swift let numbers = Array(0..<10) for chunk in numbers.evenlyChunked(in: 4) { print(chunk) } // Prints: // [0, 1, 2] // [3, 4, 5] // [6, 7] // [8, 9] ``` ### Changes - The package now has a minimum Swift version of Swift 5.4. ### Fixes - Improvements to documentation, including a new DocC-based documentation structure. The 1.1.0 release includes contributions from @dickoff, @gwynne, @mdznr, @natecook1000, @ole, @stephentyrone, and @timvermeulen. Thank you!
Swift Algorithms 1.0.0
2 years ago
Swift Algorithms is now source stable! ### Changes - Most sequence and collection types have been renamed, following a more consistent naming structure: - The `Lazy` prefix was dropped. - Either a `Sequence` or `Collection` suffix was added depending on whether or not the type is unconditionally a collection. - The base name was derived from the name of the method that produces it, including an argument label to disambiguate if necessary. - Types that can only be produced from a lazy sequence chain now unconditionally conform to `LazySequenceProtocol` and wrap the base sequence instead of the lazy wrapper, making some return types slightly simpler. - e.g. `[1, 2, 3].lazy.reductions(+)` now returns `ExclusiveReductionsSequence<[Int]>`, not `ExclusiveReductionsSequence<LazySequence<[Int]>>`. - The generic parameters of the `ExclusiveReductions` type have been swapped, putting the base collection first and the result type second. - The `Indices` associated type of `IndexedCollection` now matches `Base.Indices`. ### Removals - Previously deprecated type and method names have been removed: - The `Chain` type alias for `Chain2Sequence` - The `chained(with:)` method which was replaced with the `chain(_:_:)` free function - The `LazyChunked` and `Chunked` type aliases for `ChunkedByCollection` - The `rotate(subrange:at:)` and `rotate(at:)` methods which were renamed to `rotate(subrange:toStartAt:)` and `rotate(toStartAt:)` respectively ### Fixes - The `StridingSequence` and `StridingCollection` types now conditionally conform to `LazySequenceProtocol`, allowing the `striding(by:)` method to properly propagate laziness in a lazy sequence chain. - Fixed `chunked(by:)` to always compare two consecutive elements rather than each element with the first element of the current chunk. (#162)
Swift Algorithms 0.2.1
2 years ago
### Additions Expanded versatility for two existing operations: - A series of `joined(by:)` overloads concatenate a sequence of sequences using an element or a collection, either passed in or generated from consecutive elements via a closure. (#138) - Additional `trimming(while:)` methods for trimming only the start or end of a collection, as well as mutating versions of all three variants. (#104)
Swift Algorithms 0.2.0
2 years ago
### Additions Two new additions to the list of algorithms: - `adjacentPairs()` lazily iterates over tuples of adjacent elements of a sequence. (#119) - `minAndMax()` finds both the smallest and largest elements of a sequence in a single pass. (#90) ### Changes - When calling `chunked(on:)`, the resulting collection has an element type of `(Subject, SubSequence)` instead of just `SubSequence`, making the subject value available when iterating. ```swift let numbers = [5, 6, -3, -9, -11, 2, 7, 6] for (signum, values) in numbers.chunked(on: { $0.signum() }) { print(signum, values) } // 1 [5, 6] // -1 [-3, -9, -11] // 1 [2, 7, 6] ``` ### Fixes - Improvements to the documentation and PR templates.
Swift Algorithms 0.1.1
2 years ago
### Fixes - `Product2` associated type inference error in release build (#130)
Swift Algorithms 0.1.0
2 years ago
### Additions - The `compacted()` method lazily finds the non-`nil` elements of a sequence or collection (#112). ### Changes - The `uniqued()` method now lazily computes the unique elements of a sequence or a collection (#71). Pass this resulting sequence to an `Array` initializer to recover the behavior of the previous release. - Calling `cycled(times:)` now returns a new `FiniteCycle` type, which has the same conformances as its underlying collection (#106). - The base collections of the sequence and collection wrapper types are no longer public (#85, #125), and the wrapper types no longer conform to the `Equatable` or `Hashable` protocols (#124). If you need those conformances, convert the wrapper type to an `Array` or other collection currrency type before storing. Please file an issue if these changes pose a problem for your use case.
Swift Algorithms 0.0.4
2 years ago
### Additions More new algorithms to join the party: - A lazy version of the standard library's two `split` methods. (#78) - `firstNonNil(_:)` returns the first non-`nil` element from an optional-generating transform. (#31) - `uniquePermutations()` skips duplicates when generating permutations of a collection. (#91) - The `reductions` methods return all the in-between states of reducing a sequence or collection. (#46) ### Fixes - Methods and computed properties are more consistently marked as inlinable, resolving a performance regression. - The `Stride` type now efficiently calculates distances between positions, supported by the underlying collection. - Better test coverage and improved diagnostics for comparing sequences. - Fixed links and improved documentation.
Swift Algorithms 0.0.3
3 years ago
### Additions An exciting group of new algorithms, contributed by the community: - `trimming(while:)` returns a subsequence of a bidirectional collection with the matching elements removed from the start and end. (#4) - `min(ofCount:)` and `max(ofCount:)` find the smallest or largest elements in a collection. (#9, #77) - `windows(ofCount:)` lets you iterate over all the overlapping subsequences of a particular length. (#20) - `striding(by:)` iterates over every *n*th element of a sequence or collection. (#24) - `interspersed(with:)` places a new element between every pair of elements in a sequence or collection. (#35) - `chunks(ofCount:)` breaks a collection into subsequences of the given number of elements. (#54) - `suffix(while:)` matches the standard library's `prefix(while:)`, by returning the suffix of all matching elements from a bidirectional collection. (#65) - Variations of `combinations(ofCount:)` and `permutations(ofCount:)` that take a range expression as a parameter, returning combinations and permutations of multiple lengths. (#51, #56) ### Changes - The `LazyChunked` type now precomputes its `startIndex`, making performance more predictable when using the collection. ### Fixes - `randomSample(count:)` no longer traps in rare circumstances. - Index calculations have been improved in a variety of collection wrappers. - A variety of documentation improvements and corrections.
Swift Algorithms 0.0.2
3 years ago
### Changes - The `rotate(at:)` method has been updated to `rotate(toStartAt:)`, with the old name deprecated. - The `chained(with:)` method has been changed to the free function `chain(_:_:)`, with the old version deprecated. - `Algorithms` now uses `RealModule` from the `swift-numerics` package for its cross-platform elementary functions. - Sequence/collection wrapper types, like `Permutations` and `Indexed`, now have conformance to the lazy protocols, so that any following operations maintain their laziness. ### Fixes - Swift Algorithms now builds under SwiftPM on Windows. - A wide variety of errors, misspellings, and ommissions in the documentation and guides have been fixed. - Index/distance calculations for the `Product2` and `Chain` types have been corrected. - Calling `stablePartition(subrange:by:)` now correctly uses the subrange's length instead of the whole collection.
apple/swift-protobuf 1.25.2
Plugin and runtime library for using protobuf with Swift
โญ๏ธ 4,411
๐Ÿ•“ 13 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.25.2 Release
13 weeks ago
## What's Changed * Fix ordering bug in MessageSet parsing (1.x branch) by @thomasvl in https://github.com/apple/swift-protobuf/pull/1513 * Version bump to do a release with the messageset fix. (1.x branch) by @thomasvl in https://github.com/apple/swift-protobuf/pull/1515 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.25.1...1.25.2
1.25.1 Release
17 weeks ago
No function changes, just fixes the checked in Xcode project file. ## What's Changed * Add the new files for the Xcode project on the 1.x branch. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1494 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.25.0...1.25.1
1.25.0 Release
18 weeks ago
## What's Changed * 1.x branch Better Plugin Support by @thomasvl in https://github.com/apple/swift-protobuf/pull/1485 * Add `useDeterministicOrdering` opt-in option to JSON + Binary encoding by @rebello95 in https://github.com/apple/swift-protobuf/pull/1487 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.24.0...1.25.0
1.24.0 Release
22 weeks ago
## What's Changed * 5.9 sendable issues for the 1.x branch by @thomasvl in https://github.com/apple/swift-protobuf/pull/1463 * Block more things, #1469 but for the 1.x branch by @thomasvl in https://github.com/apple/swift-protobuf/pull/1470 * Add support for `package` visibility modifier by @thomasvl in https://github.com/apple/swift-protobuf/pull/1473 * Version bump to ready a release. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1474 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.23.0...1.24.0
1.23.0 Release
26 weeks ago
## What's Changed * Bring most of the protos shuffle/update over to the 1.x branch by @thomasvl in https://github.com/apple/swift-protobuf/pull/1432 * Fix docs errors (1.x branch) by @thomasvl in https://github.com/apple/swift-protobuf/pull/1443 * Fix allCases to generate a let by @gjcairo in https://github.com/apple/swift-protobuf/pull/1451 * 1.x version bump for a release. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1452 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.22.1...1.23.0
1.22.1 Release
31 weeks ago
## What's Changed * Cherry pick XcodeProjectPlugin changes by @denil-ct in https://github.com/apple/swift-protobuf/pull/1413 * Add a 5.8 Package.swift file for the 1.x branch by @thomasvl in https://github.com/apple/swift-protobuf/pull/1429 * Provide better errors for the SPM plugin (1.x branch) by @thomasvl in https://github.com/apple/swift-protobuf/pull/1428 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.22.0...1.22.1
1.22.0 Release
39 weeks ago
## What's Changed * Pull a few updates to the 1.x branch by @thomasvl in https://github.com/apple/swift-protobuf/pull/1384 * 2GB limits on delimited decode * Reading of delimited data in chunks for better performance/error handing * Update 1.x podspec to work with Xcode 14.3 by @bnickel in https://github.com/apple/swift-protobuf/pull/1403 * Bump version for a 1.22.0 release. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1404 * Expose implementationOnlyImports option in SPM plugin by @gjcairo in https://github.com/apple/swift-protobuf/pull/1406 ## New Contributors * @bnickel made their first contribution in https://github.com/apple/swift-protobuf/pull/1403 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.21.0...1.22.0
1.21.0 Release
1 year ago
## What's Changed * 1.x branch unknown enums decoding option support by @thomasvl in https://github.com/apple/swift-protobuf/pull/1347 * 1.x branch: Bump the Swift 5.7.0 testing to 5.7.2. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1354 * 1.x branch: Fail to encode google.protobuf.Value number if not finite. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1353 * 1.x branch: Add import paths to SPM Plugin (#1373) by @thomasvl in https://github.com/apple/swift-protobuf/pull/1374 * 1.x branch: Validate length before turning into an Int. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1376 * 1.x branch: bump to 1.21.0 to make a release. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1383 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.20.3...1.21.0
1.20.3 Release
1 year ago
* Minor Updates * Be more accepting for generation options. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1318 * Add the file naming option by @thomasvl in https://github.com/apple/swift-protobuf/pull/1338 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.20.2...1.20.3
1.20.2 Release
1 year ago
* Minor Updates * For protoc generator authors (swift-grpc), bring over some descriptor improvements to aid migration. by @thomasvl in https://github.com/apple/swift-protobuf/pull/1291 **Full Changelog**: https://github.com/apple/swift-protobuf/compare/1.20.1...1.20.2
apple/swift-collections 1.1.0
Commonly used data structures for Swift
โญ๏ธ 3,439
๐Ÿ•“ 3 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift Collections 1.1.0
3 weeks ago
This feature release adds a number of new data structure implementations, along with minor changes to existing constructs. ## New Data Structures - `Heap` implements a min-max heap, backed by a native array. (Contributed by @AquaGeek) - `BitSet` and `BitArray` are two alternate representations of a bitmap type, backed by dynamically allocated storage. (Contributed by @MahanazAtiqullah) - `TreeSet` and `TreeDictionary` are hashed collections implementing Compressed Hash-Array Mapped Prefix Trees (CHAMP). They provide similar API as `Set`/`Dictionary` in the Standard Library, but as persistent data structures, supporting incremental mutations of shared instances and efficient structural diffing. (Contributed by @msteindorfer) ## Other Changes - This version of the package can only be built using Swift 5.7.2 or later. - New methods: the `OrderedSet.isEqualSet` family of functions provide a way to test that two containers contain the same members, ignoring the order of elements. (https://github.com/apple/swift-collections/issues/183, https://github.com/apple/swift-collections/pull/234) - New method: `OrderedSet.filter` implements a version of the standard filter operation that returns an `OrderedSet` instead of an `Array`. (https://github.com/apple/swift-collections/pull/159) - `debugDescription` implementations have been updated to follow Swift best practice. (These are called by container types like `Array` to print their elements, so they work best when they're succinct variants of `description` that are suitable for embedding in structured output: specifically, they must not produce unpaired delimiter characters (`[`/`]`, `(`/`)`, `{`/`}`, `<`/`>` etc), raw top level commas, semicolons, colons, unquoted strings etc. `debugDescription` should not needlessly print type names etc.) ## New Contributors * @AquaGeek made their first contribution in https://github.com/apple/swift-collections/pull/61 * @ejmarchant made their first contribution in https://github.com/apple/swift-collections/pull/82 * @just-gull made their first contribution in https://github.com/apple/swift-collections/pull/115 * @jPaolantonio made their first contribution in https://github.com/apple/swift-collections/pull/121 * @MahanazAtiqullah made their first contribution in https://github.com/apple/swift-collections/pull/83 * @hectormatos2011 made their first contribution in https://github.com/apple/swift-collections/pull/155 * @ktoso made their first contribution in https://github.com/apple/swift-collections/pull/159 * @CTMacUser made their first contribution in https://github.com/apple/swift-collections/pull/116 * @hassila made their first contribution in https://github.com/apple/swift-collections/pull/297 Many thanks to our contributors for their great work (and patience)! ## List of Pull Requests **Full Changelog**: https://github.com/apple/swift-collections/compare/1.0.6...1.1.0 * Add a min-max heap implementation that can be used to back a priority queue by @AquaGeek in https://github.com/apple/swift-collections/pull/61 * [benchmark] Review and extend Heap benchmarks by @lorentey in https://github.com/apple/swift-collections/pull/76 * Add reference benchmarks for bit vector implementations by @lorentey in https://github.com/apple/swift-collections/pull/79 * Fix Markdown link in README by @AquaGeek in https://github.com/apple/swift-collections/pull/77 * Fix documentation for types conforming to ExpressibleByArrayLiteral oโ€ฆ by @ejmarchant in https://github.com/apple/swift-collections/pull/82 * [Heap] Performance tweaks by @lorentey in https://github.com/apple/swift-collections/pull/78 * Fix typos: missing subscript parameters by @ejmarchant in https://github.com/apple/swift-collections/pull/81 * [Heap] Update implementation details section in docs by @lorentey in https://github.com/apple/swift-collections/pull/84 * Update CMakeLists.txt by @compnerd in https://github.com/apple/swift-collections/pull/85 * Stop depending on swift-collections-benchmark by @lorentey in https://github.com/apple/swift-collections/pull/86 * [OrderedDictionary] modifyValue โ†’ updateValue by @lorentey in https://github.com/apple/swift-collections/pull/91 * Add Benchmarks package to workspace by @lorentey in https://github.com/apple/swift-collections/pull/93 * [OrderedDictionary] Deprecate `subscript(offset:)` for now by @lorentey in https://github.com/apple/swift-collections/pull/92 * Documentation: Remove in-place mutation comments by @ejmarchant in https://github.com/apple/swift-collections/pull/96 * [main] Freeze some types for consistency with their inlinable initializers by @lorentey in https://github.com/apple/swift-collections/pull/98 * Follow stdlib's leading underscore rule by @ejmarchant in https://github.com/apple/swift-collections/pull/95 * [Heap] Disable heap tests in release builds by @lorentey in https://github.com/apple/swift-collections/pull/100 * [NFC] Merge release/1.0 to main by @lorentey in https://github.com/apple/swift-collections/pull/105 * Merge `release/1.0` into `main` by @lorentey in https://github.com/apple/swift-collections/pull/108 * [README] Note that `Heap` hasn't been tagged yet & list other enhancements in progress by @lorentey in https://github.com/apple/swift-collections/pull/109 * PriorityQueueModule: remove `import Foundation` by @compnerd in https://github.com/apple/swift-collections/pull/118 * [Heap] Remove Heap's `ascending` and `descending` views by @lorentey in https://github.com/apple/swift-collections/pull/119 * [Heap] Enable heap tests in optimized builds (#101) by @just-gull in https://github.com/apple/swift-collections/pull/115 * Update CMakeLists.txt by @compnerd in https://github.com/apple/swift-collections/pull/122 * Fix link to package internal documentation by @jPaolantonio in https://github.com/apple/swift-collections/pull/121 * Merge release/1.0 to main by @lorentey in https://github.com/apple/swift-collections/pull/130 * BitArray and BitSet data structures by @MahanazAtiqullah in https://github.com/apple/swift-collections/pull/83 * Sorted collections by @vihanb in https://github.com/apple/swift-collections/pull/65 * Merge `release/1.0` to `main` by @lorentey in https://github.com/apple/swift-collections/pull/141 * Remove Swift PM Artifacts to avoid Generated Schemes in Xcode by @hectormatos2011 in https://github.com/apple/swift-collections/pull/155 * Reinstate custom schemes under Utils/swift-collections.xcworkspace by @lorentey in https://github.com/apple/swift-collections/pull/156 * +OrderedSet add filter #158 by @ktoso in https://github.com/apple/swift-collections/pull/159 * [Xcode] Update schemes & file template by @lorentey in https://github.com/apple/swift-collections/pull/161 * [OrderedCollection] Use standard temp allocation facility, if available by @lorentey in https://github.com/apple/swift-collections/pull/160 * [OrderedSet] Work around weird name lookup issue in compiler by @lorentey in https://github.com/apple/swift-collections/pull/162 * =OrderedSet.filter Attempt to optimize filter impl by @ktoso in https://github.com/apple/swift-collections/pull/163 * Force-inline _modify accessors to work around a performance issue by @lorentey in https://github.com/apple/swift-collections/pull/165 * Merge release/1.0 branch to main by @lorentey in https://github.com/apple/swift-collections/pull/172 * Incubate persistent data structures by @msteindorfer in https://github.com/apple/swift-collections/pull/31 * Persistent collections updates by @lorentey in https://github.com/apple/swift-collections/pull/174 * Persistent collections updates by @lorentey in https://github.com/apple/swift-collections/pull/175 * Persistent collections updates (part 3) by @lorentey in https://github.com/apple/swift-collections/pull/176 * Persistent collections updates (part 4) by @lorentey in https://github.com/apple/swift-collections/pull/177 * [OrderedDictionary] Tiny documentation fix by @lorentey in https://github.com/apple/swift-collections/pull/178 * Persistent collections updates (part 5) by @lorentey in https://github.com/apple/swift-collections/pull/179 * Integrate PriorityQueueModule, BitCollections, PersistentCollections, SortedCollections into release/1.1 by @lorentey in https://github.com/apple/swift-collections/pull/181 * Persistent collections updates (part 6) by @lorentey in https://github.com/apple/swift-collections/pull/180 * Persistent collections updates (part 7) by @lorentey in https://github.com/apple/swift-collections/pull/182 * [BitSet] Fix decoding format on 32 bit architectures by @lorentey in https://github.com/apple/swift-collections/pull/185 * Persistent collections updates (part 8) by @lorentey in https://github.com/apple/swift-collections/pull/184 * Persistent collections updates (part 9) by @lorentey in https://github.com/apple/swift-collections/pull/188 * Add Sendable conformances to all public types by @lorentey in https://github.com/apple/swift-collections/pull/191 * [test] Check baseline API expectations for set-like types by @lorentey in https://github.com/apple/swift-collections/pull/192 * Fleshing out `PersistentSet` by @lorentey in https://github.com/apple/swift-collections/pull/193 * Rename `PriorityQueueModule` to `HeapModule` by @lorentey in https://github.com/apple/swift-collections/pull/194 * [BitSet] Fix invariant violation in member subscript by @lorentey in https://github.com/apple/swift-collections/pull/195 * [1.1.0] Bump minimum required Swift toolchain to 5.5 by @lorentey in https://github.com/apple/swift-collections/pull/196 * Restore support for building with Swift 5.5 by @lorentey in https://github.com/apple/swift-collections/pull/198 * Merge release/1.0 to release/1.1 by @lorentey in https://github.com/apple/swift-collections/pull/199 * Update CMake configuration in preparation for 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/200 * Update CMakeLists.txt by @compnerd in https://github.com/apple/swift-collections/pull/202 * [1.1][SortedCollections] Remove for now by @lorentey in https://github.com/apple/swift-collections/pull/205 * [Heap] Change value of minimum or maximum element by @CTMacUser in https://github.com/apple/swift-collections/pull/116 * [Heap] Prerelease preparations by @lorentey in https://github.com/apple/swift-collections/pull/210 * Update README files by @lorentey in https://github.com/apple/swift-collections/pull/212 * [manifest] Exclude CMakeLists.txt; remove unnecessary path settings; reindent file by @lorentey in https://github.com/apple/swift-collections/pull/213 * Review and finalize (?) set relation predicates for 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/216 * Merge.1.0โ†’1.1 by @lorentey in https://github.com/apple/swift-collections/pull/217 * Update CMake configuration by @lorentey in https://github.com/apple/swift-collections/pull/218 * Cherry pick changes from main to release/1.1 by @lorentey in https://github.com/apple/swift-collections/pull/219 * Fix unusual build problems by @lorentey in https://github.com/apple/swift-collections/pull/221 * Review & update descriptions throughout the package by @lorentey in https://github.com/apple/swift-collections/pull/222 * Review and finalize (?) binary set operations for 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/223 * [Xcode] Disable implicit dependencies by @lorentey in https://github.com/apple/swift-collections/pull/227 * [OrderedSet] Improve sequence-taking initializer by @lorentey in https://github.com/apple/swift-collections/pull/226 * [OrderedSet, BitSet] Fix custom mirror display style by @lorentey in https://github.com/apple/swift-collections/pull/225 * Finalize persistent collections API by @lorentey in https://github.com/apple/swift-collections/pull/224 * Start working on DocC support by @lorentey in https://github.com/apple/swift-collections/pull/228 * Update CMake build configuration by @lorentey in https://github.com/apple/swift-collections/pull/230 * [PersistentSet] Iterator.next(): Make inlinable by @lorentey in https://github.com/apple/swift-collections/pull/233 * [SetAlgebra types] isEqual(to:) โ†’ isEqualSet(to:) by @lorentey in https://github.com/apple/swift-collections/pull/234 * [PersistentCollections] Doc & benchmark updates in preparation of API review by @lorentey in https://github.com/apple/swift-collections/pull/235 * Apply changes from in-progress review thread by @lorentey in https://github.com/apple/swift-collections/pull/237 * [ShareableHashedCollections] API Review: add missing `mutating` keywords by @lorentey in https://github.com/apple/swift-collections/pull/238 * [Benchmarks] Split default huge library up into individual files, one per type by @lorentey in https://github.com/apple/swift-collections/pull/240 * [ShareableHashedCollections] Add missing import by @lorentey in https://github.com/apple/swift-collections/pull/243 * Unify unsafe bit set implementations by @lorentey in https://github.com/apple/swift-collections/pull/244 * Fix warnings in development versions of Swift by @lorentey in https://github.com/apple/swift-collections/pull/245 * [HashTreeCollections] Change prefix `Shareable` to `Tree` by @lorentey in https://github.com/apple/swift-collections/pull/242 * [TreeDictionary] Fix in-place merge operation to properly update the count by @lorentey in https://github.com/apple/swift-collections/pull/247 * [cmake] Update CMake configuration by @lorentey in https://github.com/apple/swift-collections/pull/249 * Add not so experimental rope implementation by @lorentey in https://github.com/apple/swift-collections/pull/264 * Fix off by one error in BitSet by @lorentey in https://github.com/apple/swift-collections/pull/267 * Monomodule support by @lorentey in https://github.com/apple/swift-collections/pull/266 * Expose a handful of BigString.Index methods by @lorentey in https://github.com/apple/swift-collections/pull/269 * BitArray API refinements & additions by @lorentey in https://github.com/apple/swift-collections/pull/263 * Make most of Rope inlinable by @lorentey in https://github.com/apple/swift-collections/pull/270 * BigString: Fix String.Index._knownScalarAligned by @lorentey in https://github.com/apple/swift-collections/pull/272 * Rope: Fix `Sendable` conformance by @lorentey in https://github.com/apple/swift-collections/pull/271 * Require Swift 5.6 by @lorentey in https://github.com/apple/swift-collections/pull/273 * [OrderedDictionary] Explicitly mention in documentation that keys/values are ordered by @lorentey in https://github.com/apple/swift-collections/pull/275 * [HashCollections] Ensure `self` doesnโ€™t get destroyed before weโ€™re done working with it by @lorentey in https://github.com/apple/swift-collections/pull/276 * Remove obsolete swift(>=5.5)/swift(>=5.6) checks by @lorentey in https://github.com/apple/swift-collections/pull/277 * [Xcode] Update Xcode project by @lorentey in https://github.com/apple/swift-collections/pull/278 * Minor rope updates by @lorentey in https://github.com/apple/swift-collections/pull/279 * [Rope] remove(at:): Fix assertion when removing the last item creates a deficiency by @lorentey in https://github.com/apple/swift-collections/pull/280 * Merge changes from release 1.0 to release 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/283 * [CollectionUtilities] Silence a warning on 32 bit platforms by @lorentey in https://github.com/apple/swift-collections/pull/286 * [BitSet] Fix a thinko in BitSet.isEqualSet by @lorentey in https://github.com/apple/swift-collections/pull/287 * Grab bag of fixes for small test issues by @lorentey in https://github.com/apple/swift-collections/pull/288 * [Xcode] Set a code sign identity in the Xcode project by @lorentey in https://github.com/apple/swift-collections/pull/285 * Rope: Fix trap when replaceSubrange is called on an empty rope by @lorentey in https://github.com/apple/swift-collections/pull/290 * `Rope.find` returns a bogus remainder for the end position by @lorentey in https://github.com/apple/swift-collections/pull/291 * Update TreeSet.md by @hassila in https://github.com/apple/swift-collections/pull/297 * Fix CustomStringConvertible/CustomDebugStringConvertible conformances by @lorentey in https://github.com/apple/swift-collections/pull/302 * [RopeModule] Fix issues in Swift's ABI stable dialect by @lorentey in https://github.com/apple/swift-collections/pull/318 * [CMake, Xcode] Update configurations for alternate build systems by @lorentey in https://github.com/apple/swift-collections/pull/319 * [RopeModule] Remove unnecessary typealiases by @lorentey in https://github.com/apple/swift-collections/pull/320 * [Heap] Improve type-level doc comment by @lorentey in https://github.com/apple/swift-collections/pull/326 * [Heap] insert(contentsOf:) Switch to Floydโ€™s if weโ€™re inserting too many items by @lorentey in https://github.com/apple/swift-collections/pull/327 * [1.1] build: support building in Debug mode on Windows by @compnerd in https://github.com/apple/swift-collections/pull/336 * Merge release/1.0 to release/1.1 by @lorentey in https://github.com/apple/swift-collections/pull/348 * [Heap] Convert min() and max() to properties by @lorentey in https://github.com/apple/swift-collections/pull/328 * [BitArray] Disable bitwise operators for now by @lorentey in https://github.com/apple/swift-collections/pull/353 * [Heap] Final(?) Heap API adjustments for 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/354 * [Benchmarks] Add Collection Equality Benchmarks by @vanvoorden in https://github.com/apple/swift-collections/pull/351 * Release preparations for 1.1 by @lorentey in https://github.com/apple/swift-collections/pull/355 * [1.1] Fix typos by @lorentey in https://github.com/apple/swift-collections/pull/357 * [TreeDictionary][Keys] Add Equatable and Hashable Conformance to TreeDictionary.Keys by @vanvoorden in https://github.com/apple/swift-collections/pull/352
Swift Collections 1.0.6
10 weeks ago
This bugfix release adds `Sendable` conformances to all public types (fixing compatibility with Swift's strict concurrency checking), and speeds up equality checks (`==`) of identical collection values. ## What's Changed * Fix typos: OrderedSet Documentation by @kati-kms in https://github.com/apple/swift-collections/pull/322 * [1.0] build: support building in Debug mode on Windows by @compnerd in https://github.com/apple/swift-collections/pull/337 * build: tweak search path for embedding by @compnerd in https://github.com/apple/swift-collections/pull/338 * [OrderedDictionary] forward ordered dictionary values equality to values property by @vanvoorden in https://github.com/apple/swift-collections/pull/335 * [OrderedSet] forward ordered set equality to elements property by @vanvoorden in https://github.com/apple/swift-collections/pull/340 * [Deque] check deque equality with buffer identity by @vanvoorden in https://github.com/apple/swift-collections/pull/341 * [OrderedDictionary] Fix usage of deprecated API in index(forKey:) docs by @lorentey in https://github.com/apple/swift-collections/pull/342 * [1.0] Backport Sendable conformances on all public types by @lorentey in https://github.com/apple/swift-collections/pull/343 * OrderedSet: Fix sendable conformance on old swifts by @lorentey in https://github.com/apple/swift-collections/pull/346 * Update CMake configuration by @lorentey in https://github.com/apple/swift-collections/pull/347 ## New Contributors * @kati-kms made their first contribution in https://github.com/apple/swift-collections/pull/322 * @vanvoorden made their first contribution in https://github.com/apple/swift-collections/pull/335 **Full Changelog**: https://github.com/apple/swift-collections/compare/1.0.5...1.0.6 Thank you to everyone who contributed to this release!
Swift Collections 1.0.5
22 weeks ago
This bugfix release improves compatibility with recent Swift versions, eliminating several compiler warnings on Swift 5.8 and 5.9. It contains no API-level changes. ## What's Changed * build: add ARM64 to the architecture mappings for Windows by @compnerd in https://github.com/apple/swift-collections/pull/265 * Fix deprecated UnsafeMutablePointer.assign(repeating:count) method by @FelixHerrmann in https://github.com/apple/swift-collections/pull/268 * [1.0][test] Fix typename shadowing warning in Swift 5.9 by @lorentey in https://github.com/apple/swift-collections/pull/315 * [1.0][benchmark] Update std::function syntax for current C++ by @lorentey in https://github.com/apple/swift-collections/pull/314 ## New Contributors * @FelixHerrmann made their first contribution in https://github.com/apple/swift-collections/pull/268 **Full Changelog**: https://github.com/apple/swift-collections/compare/1.0.4...1.0.5 Thank you to everyone who contributed to this release!
Swift Collections 1.0.4
1 year ago
This is a documentation update, including the addition of basic DocC documentation bundles. This release has no functional changes. ### Changes - The package now contains documentation bundles, enabling nicer presentation of API documentation in DocC. ### Fixes - #186 [OrderedCollections] Document Sorting as Stable (by @benrimmington) ### Pull requests - #178 [OrderedDictionary] Tiny documentation fix (by @lorentey) - #187 Fix `rethrows` position (by @ensan-hcl) - #189 [OrderedSet] Tiny doc fixes for isSuperset (by @lorentey) - #201 [OrderedCollections] Update docs to state that the sort algorithm is stable (by @lorentey) - #214 [OrderedSet] Small doc updates/fixes (by @lorentey) - #252 [1.0] Add DocC documentation bundles (by @lorentey) **Full Changelog**: https://github.com/apple/swift-collections/compare/1.0.3...1.0.4 Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 1.0.3
1 year ago
This release resolves issues uncovered since 1.0.2 was tagged. The fixes improve performance of some operations, resolve compile-time issues and update documentation. This release contains no observable behavioral changes. ### Changes - [Clutter] When opened in Xcode, the package no longer adds spurious schemes to dependent projects. (#155) ### Fixes - [Build-time issue] Code that is calling `OrderedDictionary`'s uniquing/unique/grouping initializers and merge operations no longer gets flagged as ambiguous in certain cases involving type inference. (#125, #139) - [Build-time issue] The package no longer fails to build when library evolution is enabled. (#157) (Note: this configuration remains unsupported. This package does not provide any guarantees about ABI stability.) - [Performance] In-place mutations of collection contents no longer result in unnecessary heap allocations. (#164) - [Performance] On Swift 5.6 and better, some operations in the `OrderedCollections` module now make use of the stdlib's [temporary allocation facility](https://github.com/apple/swift-evolution/blob/main/proposals/0322-temporary-buffers.md). (#160) - [Docs] Documentation was updated to clarify behavior of the `filter` and `merge` methods of `OrderedDictionary`. (#145) ### Pull requests - #140 [OrderedDictionary] Fix type inference issue with OrderedDictionary.init(grouping:by:) (by @lorentey) - #153 [OrderedDictionary][doc] Update docs for merge/filter operations (by @lorentey) - #155 Remove Swift PM Artifacts to avoid Generated Schemes in Xcode (by @hectormatos2011) - #156 Reinstate custom schemes under Utils/swift-collections.xcworkspace (by @lorentey) - #160 [OrderedCollection] Use standard temp allocation facility, if available (by @lorentey) - #161 [Xcode] Update schemes & file template (by @lorentey) - #162 [OrderedSet] Work around weird name lookup issue in compiler (by @lorentey) - #165 Force-inline _modify accessors to work around a performance issue (by @lorentey) - #169 [OrderedDictionary] Resolve call-site ambiguities (by @lorentey) - #170 Update README for 1.0.3 (by @lorentey) **Full Changelog**: https://github.com/apple/swift-collections/compare/1.0.2...1.0.3 Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 1.0.2
2 years ago
This release resolves issues uncovered since 1.0.1 was tagged, including a high severity crash in `OrderedSet` and `OrderedDictionary`. Upgrading is recommended for all clients. ### Fixes - Fixed a value semantic violation in `OrderedSet` and `OrderedDictionary` that could result in some mutation methods corrupting shared copies of the same value, leading to subsequent crashes. (Issue #104) - `Deque.append(contentsOf:)` now uses an exponential storage resizing strategy, as expected. Calling it in a loop no longer results in O(n) reallocations. (Issue #113) ### Pull requests - #113 [Deque] append(contentsOf:): Use exponential capacity reservation (by @lorentey) - #123 [OrderedSet] Add missing uniqueness check (by @lorentey) - #126 [Utils] run-full-tests.sh: Keep going after a failure (by @lorentey) - #128 [Utils] run-full-tests.sh: Add support for testing on Swift 5.3 without manual editing (by @lorentey) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 1.0.1
2 years ago
### Changes - The CMake configuration now supports building the package for AArch64 Linux distributions, unblocking adoption in SPM. (Note that the CMake configuration is intended only to support the use of this package from within Swift toolchain builds. It is provided as is, with no source compatibility guarantees.) - Minor documentation updates. ### Pull requests - #111 [CMake] Match lowercase "aarch64" (by @neonichu) - #112 [OrderedSet][doc] Fix thinko (by @lorentey) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 1.0.0
2 years ago
This release marks an important milestone for this package -- the advent of source stability! ### Changes - The public API of Swift Collections is now considered source stable. The README defines what we consider public API. - The three `OrderedDictionary` methods that were deprecated in 0.0.7 are now marked unavailable. - `OrderedDictionary.init(uncheckedUniqueElements:)` no longer creates large dictionary instances without an associated hash table. ### Pull requests - #95 Follow stdlib's leading underscore rule (by @ejmarchant) - #96 Documentation: Remove in-place mutation comments (by @ejmarchant) - #97 Freeze some types for consistency with their inlinable initializers (by @lorentey) - #102 1.0 release preparations (by @lorentey) - #106 [OrderedSet] Make _checkInvariants public and call it in more operations (by @lorentey) - #107 [OrderedSet] Don't let the unchecked init create large sets with no hash table (by @lorentey) - #110 [run-full-tests.sh] Fix bashism: == vs = (by @lorentey) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 0.0.7
2 years ago
This release prepares for source stability by deprecating some OrderedDictionary APIs that we'd like to remove in version 1.0 of the package. (All deprecated names have reasonable replacements.) ### Changes - The two `OrderedDictionary.modifyValue` methods were renamed `updateValue`, to better align with the standard `updateValue` function (#90) ```swift /* Old: */ d.modifyValue(forKey: key, default: []) { $0.append(newValue) } /* New: */ d.updateValue(forKey: key, default: []) { $0.append(newValue) } /* Old: */ d.modifyValue(forKey: key, insertingDefault: [], at: 0) { $0.append(newValue) } /* New: */ d.updateValue(forKey: key, insertingDefault: [], at: 0) { $0.append(newValue) } ``` - `OrderedDictionary.subscript(offset:)` was removed; it used inconsistent terminology. To access a key-value pair at a given position, you can continue using the unlabeled subscript on the `elements` view. ```swift /* Deprecated: */ d[offset: 42] /* Replacement: */ d.element[42] ``` - The collections benchmarks were moved to a standalone nested package in a subdirectory of the repository, allowing the top-level package manifest to stop declaring a dependency on [swift-collections-benchmark](https://github.com/apple/swift-collections-benchmark). This will make it easier to add Swift Collections as a dependency, especially in projects such as the Package Manager (or the benchmarking tool itself). The old names for removed/renamed APIs are still available as deprecated members -- these will be removed in the 1.0 release. ### Pull requests - #81 Fix typos: missing subscript parameters (by @ejmarchant) - #82 Fix documentation for types conforming to ExpressibleByArrayLiteral or ExpressibleByDictionaryLiteral (by @ejmarchant) - #86 Stop depending on swift-collections-benchmark (by @lorentey) - #91 [OrderedDictionary] modifyValue โ†’ updateValue (by @lorentey) - #93 Add Benchmarks package to workspace (by @lorentey) - #92 [OrderedDictionary] Deprecate `subscript(offset:)` for now (by @lorentey) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
Swift Collections 0.0.5
2 years ago
This release consists of an update to the CMake config that is used during non-bootstrapped builds of the Swift toolchain. It contains no changes for package-based projects. ### Pull requests - #64: Add arm64 support to CMake build (by @neonichu) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
apple/swift-log 1.5.4
A Logging API for Swift
โญ๏ธ 3,238
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.5.4
6 weeks ago
## What's Changed ### Cleanups & minor compatibility improvements * Don't assume localtime() result is non-nil by @gwynne in https://github.com/apple/swift-log/pull/280 * Changes to build with Musl. by @al45tair in https://github.com/apple/swift-log/pull/283 ### Non code changes * Add CocoaLumberjack to list of logging backends by @ffried in https://github.com/apple/swift-log/pull/276 * update CI script by @tomerd in https://github.com/apple/swift-log/pull/281 * Update README.md by @0xTim in https://github.com/apple/swift-log/pull/279 ## New Contributors * @ffried made their first contribution in https://github.com/apple/swift-log/pull/276 * @0xTim made their first contribution in https://github.com/apple/swift-log/pull/279 * @al45tair made their first contribution in https://github.com/apple/swift-log/pull/283 **Full Changelog**: https://github.com/apple/swift-log/compare/1.5.3...1.5.4
1.5.3
29 weeks ago
## What's Changed ### Cleanups & minor compatibility improvements * Remove leftover 5.0 Package.swift; not supported since 1.5.0 by @ktoso in https://github.com/apple/swift-log/pull/259 * Use #if canImport(Darwin) where possible by @FranzBusch in https://github.com/apple/swift-log/pull/269 * docs: fix typos by @FannyGautierr in https://github.com/apple/swift-log/pull/272 ### Non code changes * Add DiscordBM/DiscordLogger to loggers list by @MahdiBM in https://github.com/apple/swift-log/pull/257 * Update CI by @yim-lee in https://github.com/apple/swift-log/pull/264 * update code of conduct by @tomerd in https://github.com/apple/swift-log/pull/268 * Fix DiscordLogger link by @MahdiBM in https://github.com/apple/swift-log/pull/266 * add kiliankoe/swift-log-matrix to list of backends by @kiliankoe in https://github.com/apple/swift-log/pull/263 ## New Contributors * @MahdiBM made their first contribution in https://github.com/apple/swift-log/pull/257 * @kiliankoe made their first contribution in https://github.com/apple/swift-log/pull/263 * @FannyGautierr made their first contribution in https://github.com/apple/swift-log/pull/272 **Full Changelog**: https://github.com/apple/swift-log/compare/1.5.2...1.5.3
1.5.2
1 year ago
## Primary change Address too aggressive warning logging on LogHandlers that do not support `MetadataProvider`. The warning would be emitted too frequently, resulting in flooding logs with warnings. Instead, the warning is now emitted once per log handler type. ## What's Changed * Avoid logging warnings when handler does not support metadataproviders by @ktoso in https://github.com/apple/swift-log/pull/252 * Handle providers properly in multiplex log handler by @ktoso in https://github.com/apple/swift-log/pull/254 * Add CI for Swift 5.8 and update nightly to Ubuntu 22.04 by @yim-lee in https://github.com/apple/swift-log/pull/255 **Full Changelog**: https://github.com/apple/swift-log/compare/1.5.1...1.5.2
1.5.1
1 year ago
## Summary This patch release focuses on minor cleanups to ergonomics of setting metadata providers with the default stream log handlers, and fixes a bug in the default handler not printing the provided extra metadata by default (it does now). Thank you to @slashmo for quickly noticing and providing a patch for the latter! ## What's Changed * Allow passing explicit provider into the stream handlers by @ktoso in https://github.com/apple/swift-log/pull/250 * Emit correct metadata from StreamLogHandler by @slashmo in https://github.com/apple/swift-log/pull/251 **Full Changelog**: https://github.com/apple/swift-log/compare/1.5.0...1.5.1
1.5.0
1 year ago
# Changes ## Swift version support This release drops support for Swift 5.0. Swift 5.1+ remain supported for the time being. ## Logger.MetadataProvider This release introduces metadata providers! They are an additional way to add metadata to your log statements automatically whenever a log statement is about to be made. This works extremely well with systems like distributed tracing, that may pick up trace identifiers and other information from the task-local context from where the log statement is being made. The feature came with a [swift evolution style proposal](https://github.com/apple/swift-log/blob/main/proposals/0001-metadata-providers.md) introduction to the "why?" and "how?" of this feature you may find interesting. Metadata providers are used like this: ```swift import Logging enum Namespace { @TaskLocal static var simpleTraceID: String? } let simpleTraceIDMetadataProvider = Logger.MetadataProvider { guard let traceID = Namespace.simpleTraceID else { return [:] } return ["simple-trace-id": .string(traceID)] } LoggingSystem.bootstrap({ label, metadataProvider in myCoolLogHandler(label: label, metadataProvider: metadataProvider) }, metadataProvider: simpleTraceIDMetadataProvider) ``` which in turn makes every `Logger` on this `LoggingSystem` add this contextual metadata to log statements automatically: ```swift let log = Logger(label: "hello") Namespace.$simpleTraceID.withValue("1234-5678") { test() } func test() { log.info("test log statement") } // [info] [simple-trace-id: 1234-5678] test log statement ``` ### Adoption in `LogHandler`s In order to support this new feature in your log handlers, please make it accept a `MetadataProvider?` at creation, and store it as: ```swift struct MyHandler: LogHandler { // ... public var metadataProvider: Logger.MetadataProvider? // ... } ``` ## What's Changed ### Highlight * Metadata Providers (e.g. for Distributed Tracing) in LogHandlers by @ktoso in https://github.com/apple/swift-log/pull/238 ### Other changes * [docs] Minimal docc setup and landing page by @ktoso in https://github.com/apple/swift-log/pull/226 * =docc Make docs use symbol references by @ktoso in https://github.com/apple/swift-log/pull/230 * =docc Move to multiple Package.swift files by @ktoso in https://github.com/apple/swift-log/pull/231 * Undo 5.7 package files, not needed yet by @ktoso in https://github.com/apple/swift-log/pull/232 * Update README: Add missing Source param by @Rusik in https://github.com/apple/swift-log/pull/233 * Fix build for wasm by @ahti in https://github.com/apple/swift-log/pull/236 * Add .spi.yml for Swift Package Index DocC support by @yim-lee in https://github.com/apple/swift-log/pull/240 * Fixes link to Supabase repository in README.md by @timobollwerk in https://github.com/apple/swift-log/pull/245 ## New Contributors * @Rusik made their first contribution in https://github.com/apple/swift-log/pull/233 * @ahti made their first contribution in https://github.com/apple/swift-log/pull/236 * @timobollwerk made their first contribution in https://github.com/apple/swift-log/pull/245 **Full Changelog**: https://github.com/apple/swift-log/compare/1.4.4...1.5.0
1.4.4
1 year ago
## Sendable fixup for 1.4.3 The 1.4.3 release carefully introduced `Sendable` across the library; sadly we missed that `5.6.x` Swift series treat a "missing marker protocol conformance for Sendable" as an _error_ while it is intended to be a _warning_ as which it is correctly reported in Swift 5.7. This release fixes this by _not requiring_ that values stored in `Logger.MetadataValue.stringConvertible` must be Sendable, however practically speaking they should be thread-safe in any case, as it is not guaranteed in any way when/where this string convertible value will be invoked from. This release contains no other changes from 1.4.3. ## What's Changed * [sendable] Sendable conformance checks cause errors on 5.6 but warnings on 5.7 by @ktoso in https://github.com/apple/swift-log/pull/229 **Full Changelog**: https://github.com/apple/swift-log/compare/1.4.3...1.4.4
1.4.3
1 year ago
## Highlights Loggers and all related types are now `Sendable`, including metadata values which have to be Sendable as well. When using from Swift that is concurrency aware, you may be getting warnings where you didn't before, these are all correct though - you need to be ready for e.g. logger metadata to be accessed from another thread. Thankfully values logged this way should usually be sendable to begin with, preferably value types. For more details see: https://github.com/apple/swift-log/pull/218 ## What's Changed * Remove references to Swift 4 by @steipete in https://github.com/apple/swift-log/pull/186 * Include source in StreamLogHandler output by @slashmo in https://github.com/apple/swift-log/pull/189 * Improve StdioOutputStream with fwrite (#180) by @felipejinli in https://github.com/apple/swift-log/pull/188 * use #fileID for Swift 5.3+ by @weissi in https://github.com/apple/swift-log/pull/187 * Add `SwiftLogNoOpLogHandler.init(_: String)` by @glbrntt in https://github.com/apple/swift-log/pull/194 * update 5.4 to release docker image by @tomerd in https://github.com/apple/swift-log/pull/196 * adopt security guidelines by @weissi in https://github.com/apple/swift-log/pull/197 * Logging: avoid a deprecation warning on Windows by @compnerd in https://github.com/apple/swift-log/pull/199 * Tests: enable tests on Windows by @compnerd in https://github.com/apple/swift-log/pull/198 * Add swift-log-elk as a new logging backend to the Readme by @philippzagar in https://github.com/apple/swift-log/pull/201 * Add swift-log-SwiftyBeaver as a new logging backend to README.md by @ShivaHuang in https://github.com/apple/swift-log/pull/203 * fix jazzy issues on older versions of ubuntu by @tomerd in https://github.com/apple/swift-log/pull/210 * add docker setup for 5.5 by @tomerd in https://github.com/apple/swift-log/pull/211 * Android support by @andriydruk in https://github.com/apple/swift-log/pull/209 * update doc generation script by @tomerd in https://github.com/apple/swift-log/pull/213 * Add 5.6 nightly CI by @Lukasa in https://github.com/apple/swift-log/pull/214 * ci update by @tomerd in https://github.com/apple/swift-log/pull/219 * Add binaryscraping/swift-log-supabase to README by @grsouza in https://github.com/apple/swift-log/pull/221 * better abstration for LoggingSystem state by @tomerd in https://github.com/apple/swift-log/pull/222 * adopt sendable by @tomerd in https://github.com/apple/swift-log/pull/218 * minimal DocC markdown to order Logger.Levels by @heckj in https://github.com/apple/swift-log/pull/225 ## New Contributors * @steipete made their first contribution in https://github.com/apple/swift-log/pull/186 * @slashmo made their first contribution in https://github.com/apple/swift-log/pull/189 * @felipejinli made their first contribution in https://github.com/apple/swift-log/pull/188 * @philippzagar made their first contribution in https://github.com/apple/swift-log/pull/201 * @andriydruk made their first contribution in https://github.com/apple/swift-log/pull/209 * @Lukasa made their first contribution in https://github.com/apple/swift-log/pull/214 * @grsouza made their first contribution in https://github.com/apple/swift-log/pull/221 * @heckj made their first contribution in https://github.com/apple/swift-log/pull/225 **Full Changelog**: https://github.com/apple/swift-log/compare/1.4.2...1.4.3
1.4.2
3 years ago
This release fixes a single bug in the propagation of the `function` parameter in the source-less `Logger.trace` function. For more details refer to https://github.com/apple/swift-log/pull/185 - thank you noticing and fixing the issue @saulbaro! You can find additional details on all changes in this release in the [1.4.2 milestone](https://github.com/apple/swift-log/milestone/8?closed=1).
1.4.1
3 years ago
This patch release fixes some compatibility issues, including a Windows compatibility issue as well as wrongly removed APIs in the 1.3.0->1.4.0 transition. No new features were added in this release. You can refer to the detailed changes by inspecting the issues linked form the [1.4.1 milestone](https://github.com/apple/swift-log/milestone/7?closed=1).
SwiftLog 1.4.0
3 years ago
### Highlights This release addresses a missing `public init` in the newly introduced `NoOpLogHandler`. Please use 1.4.0 rather than 1.3.0 to be able to actually instantiate the that handler. ### SemVer Minor - Add `public init` to `NoOpLogHandler` introduced in 1.3.0 https://github.com/apple/swift-log/pull/142 ### Credits This release contains a single PR: https://github.com/apple/swift-log/pull/146 The complete change-list is available on the [1.4.0 milestone](https://github.com/apple/swift-log/milestone/6?closed=1). Thank you @adam-fowler for spotting and fixing the mistake!
linux macOS iOS
apple/swift-argument-parser 1.3.0
Straightforward, type-safe argument parsing for Swift
โญ๏ธ 3,162
๐Ÿ•“ 12 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
ArgumentParser 1.3.0
12 weeks ago
### Changes - The `@Option`, `@Argument`, `@Flag`, and `@OptionGroup` property wrappers now conditionally conform to `Sendable` when the wrapper's `Value` type conforms. With this change, you can mark `ParsableCommand` types as `Sendable` when you want to be able to pass a parsed command across concurrent contexts. (#582) *Migration:* Users that aren't ready to resolve sendability warnings can add the `@preconcurrency` attribute to `import ArgumentParser` statements. - To support migration to `Sendable` annotation, the minimum Swift version for `swift-argument-parser` has been increased to Swift 5.7. Users of older Swift versions will be able to continue using version 1.2.3 of the library. (#582) ### Additions - Help screens now include possible options for `ExpressibleByArgument` types with non empty `allValueStrings`. Types also conforming to `CaseIterable` do not need to manually implement `allValueStrings`, instead it is derived from `allCases`. (#594) ### Fixes - The titles for nested option groups are preserved when embedded into commands without specifying a new title. (#592) - When wrapping help and error messages, the library now uses the `COLUMNS` environment variable when set, instead of immediately falling back to 80 columns. (#596) - Bash completion scripts now respect the extensions given in a `.file(...)` completion kind. (#590) - Bash completion scripts now properly escape command names that include hyphens. (#573) - Documentation improvements. (#572, #565, #602) The 1.2.3 release includes contributions from @Alkenso, @compnerd, @gwynne, @kennyyork, @natecook1000, @rauhul, @robertmryan, and @vlm. Thank you!
ArgumentParser 1.2.3
28 weeks ago
### Additions - You can now use ArgumentParser with Musl libc. (#574) ### Fixes - Fixes a bug where single-page manuals did not include command abstracts for subcommands. (#552) - Fixes a bug where non-optional properties in ParsableCommands could cause ArgumentParser to crash. You can now include properties like dictionaries in ParsableCommands without issue. (#554) - Fixes a configuration issue which would cause `ArgumentParserTestHelpers` to fail to link when building for Windows. (#579) The 1.2.3 release includes contributions from @compnerd, @gwynne, @MaxDesiatov, @natecook1000, and @rauhul. Thank you!
ArgumentParser 1.2.2
1 year ago
### Fixes - Arguments with the `.allUnrecognized` parsing strategy no longer consume built-in flags like `--help` and `--version`. (#550) - Fixes an issue introduced in version 1.2.0 where properties with underscored names couldn't be parsed. (#548) - Improves the error message for cases where platform availability causes the synchronous `ParsableCommand.main()` static method to be run on an `AsyncParsableCommand` type. (#547)
ArgumentParser 1.2.1
1 year ago
### Changes - Documentation is now primarily hosted at the [Swift Package Index](https://swiftpackageindex.com/apple/swift-argument-parser). ### Fixes - `exit(_:)` no longer causes infinite recursion on the WASI platform. (#520) - Completion scripts for `fish` now provide completions after a non-hyphen-prefixed argument has been provided. (#535) - Overload selection for custom `ExpressibleByArgument` types has been improved. (#522) - The usage string for `.postTerminator` arguments now includes the required terminator (`--`). (#542) - Documentation and testing fixes and improvements. The 1.2.1 release includes contributions from @Chamepp, @kkk669, @mtj0928, @natecook1000, @rauhul, @rickrizzo, @TiagoMaiaL, and @yim-lee. Thank you!
ArgumentParser 1.2.0
1 year ago
### Additions - You can now provide a title in an `@OptionGroup` declaration. Titled option groups are listed separately in the help screen under that title as a heading. (#492) - Two new parsing strategies have been added for `@Argument` array properties: - `.allUnrecognized` captures all unrecognized inputs after parsing known flags, options, and arguments. - `.postTerminator` collects any inputs that follow the `--` terminator. See the [`ArgumentArrayParsingStrategy` documentation][arrayparse-docs] for more. (#496) - Default values are now supported for `@Argument` or `@Option` properties with optional type, allowing you to initialize those properties with `nil`. Providing a non-`nil` default value results in a warning, since optional properties with non-`nil` defaults don't need to be declared as optionals. (#477, #480) ### Changes - The `.unconditionalRemaining` array parsing strategy has been deprecated and renamed to `.captureForPassthrough`, to better fit its semantic behavior and intended usage. See the [`ArgumentArrayParsingStrategy` documentation][arrayparse-docs] for more. (#496) ### Fixes - Invalid `init(from:)` decoding initializers are now correctly diagnosed by ArgumentParser's validators. (#487) - Default values are now correctly displayed as flags for `@Flag` properties with inversions or `EnumerableFlag` types. (#486) - The help display for non-string-backed raw representable types has been corrected to not show raw Swift values. Instead, the help display uses the type's customized `defaultValueDescription` and `allValues` implementations. (#494) - Properties at different levels of a command hierarchy with the same Swift name but different argument names no longer collide. (#495) - The **`generate-manual`** plugin name is improved when used from within Xcode. (#505) - Documentation fixes and improvements. The 1.2.0 release includes contributions from @allevato, @clayellis, @compnerd, @d-ronnqvist, @natecook1000, @randomeizer, and @rauhul. Thank you! [arrayparse-docs]: https://apple.github.io/swift-argument-parser/documentation/argumentparser/argumentarrayparsingstrategy
ArgumentParser 1.1.4
1 year ago
### Changes - The **`generate-manual`** plugin now defaults to creating single page manuals. The `--single-page` flag has been replaced with `--multi-page` to restore the previous default functionality. (#472) *Migration:* Update scripts that invoked **`generate-manual`** without `--single-page` to include `--multi-page` and update scripts that invoked **`generate-manual`** with `--single-page` to omit the flag. - The "experimental" prefix from the **`generate-manual`** plugin has been removed. (#475) *Migration:* Update scripts to invoke the **`generate-manual`** plugin via `swift package generate-manual` instead of `swift package plugin experimental-generate-manual`. ### Fixes - The **`generate-manual`** plugin is correctly declared as a product, making the plugin visible to clients. (#456) - The **`generate-manual`** plugin's `--authors` arguments are now correctly passed to the underlying generation tool. (#471) - Manuals generated by the **`generate-manual`** plugin now include the option's value names and do not include value names for flags. (#473) - Built-in flags such as `--help` and `--version` are now correctly marked as optional fixing some generated content which indicated the flags are always required. (#474) - Value descriptions are now correctly derived for types which are `ExpressibleByArgument` and `RawRepresentable` by `String`. Help menus will now display valid default values for such types. (#476) The 1.1.4 release includes contributions from @ian-twilightcoder, @MarcoEidinger, and @rauhul. Thank you!
ArgumentParser 1.1.3
1 year ago
### Additions - `ArgumentParser` now includes a SwiftPM plugin for generating `man` pages. Explore the functionality and configuration by running `swift package plugin experimental-generate-manual --help` from your package root. (#332) ### Fixes - Hidden subcommands are now excluded from completion scripts. (#443) - When an invalid value is provided for a `CaseIterable` type, the error message now includes a list of valid inputs. (#445) - There's now a diagnostic when an `AsyncParsableCommand` is incorrectly placed under a non-`async` root command. (#436) The 1.1.3 release includes contributions from @keith, @KeithBird, @konomae, @LucianoPAlmeida, and @rauhul. Thank you!
ArgumentParser 1.1.2
1 year ago
### Changes - CMake builds now always statically link `ArgumentParserToolInfo`. (#424) ### Fixes - When a user provides an array-based option's key (e.g. `--key`) without any values, the error message now correctly describes the problem. (#435) The 1.1.2 release includes contributions from @compnerd and @KeithBird. Thank you!
ArgumentParser 1.1.1
1 year ago
### Fixes - Moves the platform requirement from the package level down to the new types and protocols with `async` members. This was a source-breaking change in 1.1.0. (#427) - Fixed issues in the CMake build configuration.
ArgumentParser 1.1.0
1 year ago
### Additions - A command's `run()` method now supports `async`/`await` when the command conforms to `AsyncParsableCommand`. (#404) - New API for distinguishing between public, hidden, and private arguments and option groups, and a new extended help screen accessible via `--help-hidden`. (#366, #390, and [#405 through #413][group]) - You can now override the autogenerated usage string when configuring a command. (#400) ### Changes - `ArgumentParser` now requires Swift 5.5. ### Fixes - The auto-generated usage string now correctly hides all optional parameters when over the length limit. (#416) - One `@Option` initializer now has its parameters in the correct order; the incorrect initializer is deprecated. (#391) - Help flags are now correctly captured in `.unconditionalRemaining` argument arrays. - Documentation fixes and improvements. The 1.1.0 release includes contributions from @keith, @MartinP7r, @McNight, @natecook1000, @rauhul, and @zkiraly. Thank you! [group]: https://github.com/apple/swift-argument-parser/compare/1.0.3...HEAD
apple/sourcekit-lsp swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
Language Server Protocol implementation for Swift and C-based languages
โญ๏ธ 3,060
๐Ÿ•“ Yesterday
macOS linux android
apple/swift-syntax xcode11-beta1
A set of Swift libraries for parsing, inspecting, generating, and transforming Swift source code.
โญ๏ธ 2,867
๐Ÿ•“ 9 hours ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
510.0.0
3 days ago
## New APIs - `SyntaxStringInterpolation.appendInterpolation(_: (some SyntaxProtocol)?)` - Description: Allows optional syntax nodes to be used inside string interpolation of syntax nodes. If the node is `nil`, nothing will get added to the string interpolation. - Pull Request: https://github.com/apple/swift-syntax/pull/2085 - `SyntaxCollection.index(at:)` - Description: Returns the index of the n-th element in a `SyntaxCollection`. This computation is in O(n) and `SyntaxCollection` is not subscriptable by an integer. - Pull Request: https://github.com/apple/swift-syntax/pull/2014 - Convenience initializer `ClosureCaptureSyntax.init()` - Description: Provides a convenience initializer for `ClosureCaptureSyntax` that takes a concrete `name` argument and automatically adds `equal = TokenSyntax.equalToken()` to it. - Issue: https://github.com/apple/swift-syntax/issues/1984 - Pull Request: https://github.com/apple/swift-syntax/pull/2127 - Convenience initializer `EnumCaseParameterSyntax.init()` - Description: Provides a convenience initializer for `EnumCaseParameterSyntax` that takes a concrete `firstName` value and adds `colon = TokenSyntax.colonToken()` automatically to it. - Issue: https://github.com/apple/swift-syntax/issues/1984 - Pull Request: https://github.com/apple/swift-syntax/pull/2112 - `DiagnosticSeverity` and `PluginMessage.Diagnostic.Severity` now have new case named `remark` - Description: Remarks are used by the Swift compiler and other tools to describe some aspect of translation that doesn't reflect correctness, but may be useful for the user. Remarks have been added to the diagnostic severity enums to align with the Swift compiler. - Pull Request: https://github.com/apple/swift-syntax/pull/2143 ## Deprecations - Leaf Node Casts - Description: Syntax nodes that do not act as base nodes for other syntax types have the casting methods marked as deprecated. This prevents unsafe type-casting by issuing deprecation warnings for methods that will always result in failed casts. - Issue: https://github.com/apple/swift-syntax/issues/2092 - Pull Request: https://github.com/apple/swift-syntax/pull/2108 - Same-Type Casts - Description: `is`, `as`, and `cast` overloads on `SyntaxProtocol` with same-type conversions are marked as deprecated. The deprecated methods emit a warning indicating the cast will always succeed. - Issue: https://github.com/apple/swift-syntax/issues/2092 - Pull Request: https://github.com/apple/swift-syntax/pull/2108 - Base Node Casts - Description: `is`, `as`, and `cast` methods on base node protocols with base-type conversions are marked as deprecated. The deprecated methods emit a warning that informs the developer that the cast will always succeed and should be done using the base node's initializer. - Issue: https://github.com/apple/swift-syntax/issues/2092 - Pull Request: https://github.com/apple/swift-syntax/pull/2108 - `WildcardPatternSyntax.typeAnnotation` - Description: `typeAnnotation` on `WildcardPatternSyntax` was a mistake. Use `typeAnnotation` properties on the outer constructs instead. E.g. `PatternBindingListSyntax.typeAnnotation` - Pull Request: https://github.com/apple/swift-syntax/pull/2393 ## API-Incompatible Changes - `NoteMessage.fixItID` renamed to `noteID` - Description: This was an error that it was named `fixItID` and should have been named `noteID` instead. Accesses to `fixItID` are deprecated and forward to `noteID`. Any types that conform `NoteMessage` it will need to be updated to provide a `noteID` instead of a `fixItID`. - Issue: https://github.com/apple/swift-syntax/issues/2261 - Pull Request: https://github.com/apple/swift-syntax/pull/2264 - `DiagnosticSpec.highlight` replaced by `highlights` - Description: The use of a single string `highlight` prevented users from asserting that a macro highlighted exactly the expected set of syntax nodes. Use of `DiagnosticSpec.init(...highlight:...)` is deprecated and forwards to `DiagnosticSpec.init(...highlights:...)`. Migrating from `highlight` to `highlights` is straightforward; any uses of `DiagnosticSpec.init` which do not specify a `highlight` do not need to change, otherwise: - If the diagnostic highlights a single node, the `highlight` string should be replaced with a single element array containing the same string without any trailing trivia, e.g., `highlight: "let "` -> `highlights: ["let"]`. - If the diagnostic highlights multiple nodes, the `highlight` string should be replaced with an array containing an element for each highlighted node, e.g., `highlight: "struct {}"` -> `highlights: ["struct", "{}"]`. - Pull Request: https://github.com/apple/swift-syntax/pull/2213
509.1.1
6 weeks ago
Fixes an issue that caused the `swift-parser-cli` target to not build on visionOS.
509.1.0
8 weeks ago
- Supports [SE-0407 Member Macro Conformances](https://github.com/apple/swift-evolution/blob/main/proposals/0407-member-macro-conformances.md) by adding a new defaulted version of the `expansion` function in `MemberMacro` that receives the `conformingTo` parameter - Fixes a formatting bug not adding a space between a string/regex literal and a period (https://github.com/apple/swift-syntax/issues/2344)
509.0.2
17 weeks ago
Fixes a possible misaligned memory access
509.0.1
19 weeks ago
Fixes the following issues: - `Foo<T>.bar` should not have whitespace added between `>` and `.` (https://github.com/apple/swift-syntax/pull/2224) - Missing dependency declaration between `SwiftSyntaxMacroExpansion` and `SwiftOperators` (https://github.com/apple/swift-syntax/pull/2224)
509.0.0
24 weeks ago
This is the 509.0.0 release of SwiftSyntax, aligned with Swift 5.9. To use this snapshot add the following dependency to your Package.swift: ```swift .package(url: "https://github.com/apple/swift-syntax", from: "509.0.0") ```
508.0.1
42 weeks ago
This release of SwiftSyntax is aligned with the release of Swift 5.8. Compared to 508.0.0, this release relaxes the version requirement for `swift-argument-parser`, resulting in fewer version conflicts for users of SwiftSyntax.
508.0.0
48 weeks ago
This is the 508.0.0 release of SwiftSyntax, aligned with the release of Swift 5.8. To use this snapshot add the following dependency to your Package.swift: ```swift .package(url: "https://github.com/apple/swift-syntax", from: "508.0.0") ```
0.50700.1
1 year ago
This is the 0.50700.1 release of SwiftSyntax that vends the parser library (`_InternalSwiftSyntaxParser.dylib`) as a binary framework dependency on macOS. To use this snapshot add the following dependency to your Package.swift: ```swift .package(url: "https://github.com/apple/swift-syntax", branch: "0.50700.1") ``` Or, if using a swift-tools-version โ‰ค 5.4: ```swift .package(url: "https://github.com/apple/swift-syntax", .branch("0.50700.1")) ``` โš ๏ธ Important: This release of SwiftSyntax is incompatible with the parser library included in the swift-5.7-RELEASE toolchain. On Linux, download a recent [swift-5.7-DEVELOPMENT-SNAPSHOT](https://www.swift.org/download/#swift-57-development) toolchain to use this SwiftSyntax version. On macOS, this version of SwiftSyntax is compatible with any recent Swift or Xcode toolchain because it includes the parser library as a binary dependency.
0.50700.0
1 year ago
This is the 0.50700.0 release of SwiftSyntax that vends the parser library (`_InternalSwiftSyntaxParser.dylib`) as a binary framework dependency on macOS. To use this snapshot add the following dependency to your Package.swift: ```swift .package(url: "https://github.com/apple/swift-syntax", branch: "0.50700.0") ``` Or, if using a swift-tools-version โ‰ค 5.4: ```swift .package(url: "https://github.com/apple/swift-syntax", .branch("0.50700.0")) ```
iOS macOS watchOS tvOS macCatalyst
apple/swift-async-algorithms 1.0.0
Async Algorithms for Swift
โญ๏ธ 2,697
๐Ÿ•“ 13 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
AsyncAlgorithms 1.0
13 weeks ago
The 1.0 release marks an important milestone: `AsyncAlgorithms` is now source stable! ๐ŸŽ‰ This release contains a vast amount of work from the community and has been pivotal in the production of apps and other tools using Swift and particularly Swift concurrency. ## What's Changed * Add a "new" proposal for AsyncBufferSequence by @twittemb in https://github.com/apple/swift-async-algorithms/pull/252 * Switch from `group.waitForAll()` to `group.next()` by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/254 * Package.swift: make package name consistent with repo name by @MaxDesiatov in https://github.com/apple/swift-async-algorithms/pull/255 * [Channel] Fix Source links in documentation by @elmetal in https://github.com/apple/swift-async-algorithms/pull/264 * Clean up old evolution proposals by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/258 * Add Interspersed proposal by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/259 * Rename `downStream` to `downstream` by @s2mr in https://github.com/apple/swift-async-algorithms/pull/263 * Audit pass on inline and initialization by @phausler in https://github.com/apple/swift-async-algorithms/pull/271 * [AsyncInterspersedSequence] Integrate review feedback by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/267 * Reduce the overall warnings from tests by @phausler in https://github.com/apple/swift-async-algorithms/pull/274 * Audit pass on Sendable conformances and requirements by @phausler in https://github.com/apple/swift-async-algorithms/pull/272 * Add docker files for CI by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/270 * Add WebAssembly support by @0xpablo in https://github.com/apple/swift-async-algorithms/pull/273 * Reduce copy and paste within MergeStorage by @fabianfett in https://github.com/apple/swift-async-algorithms/pull/275 * Fix typo in Guides/Chunked.md by @freysie in https://github.com/apple/swift-async-algorithms/pull/277 * Mark all iterators as non-`Sendable` by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/280 * Fix more `Sendable` warnings and flaky test by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/281 * Ensure tests work in deployments that host as swift 5.7 by @phausler in https://github.com/apple/swift-async-algorithms/pull/285 * Remove the validation packages from public products by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/287 * Rework availability for executor to avoid warnings by @phausler in https://github.com/apple/swift-async-algorithms/pull/288 * Fix `chunks(countOf: 1)` by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/293 * Remove background correction in `AsyncTimerSequence` by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/289 * Add a proposal for AsyncChannel by @phausler in https://github.com/apple/swift-async-algorithms/pull/216 * Ensure the last element of reduction in the throttle is emitted and use appropriate delay by @phausler in https://github.com/apple/swift-async-algorithms/pull/292 * Remove majority of `@unchecked Sendable` usages by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/295 * Add support for the Swift package index by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/297 * Remove `@_implementationOnly` usage by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/294 * Fix 5.7/5.8 build errors by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/298 * Make throttle underscored by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/296 * Fix typo in `BoundedBufferStateMachine.swift` by @GavrilikArt in https://github.com/apple/swift-async-algorithms/pull/301 * Fix potential deadlocks when resuming a continuation while holding a lock by @FranzBusch in https://github.com/apple/swift-async-algorithms/pull/303 ## New Contributors * @elmetal made their first contribution in https://github.com/apple/swift-async-algorithms/pull/264 * @s2mr made their first contribution in https://github.com/apple/swift-async-algorithms/pull/263 * @0xpablo made their first contribution in https://github.com/apple/swift-async-algorithms/pull/273 * @fabianfett made their first contribution in https://github.com/apple/swift-async-algorithms/pull/275 * @freysie made their first contribution in https://github.com/apple/swift-async-algorithms/pull/277 * @GavrilikArt made their first contribution in https://github.com/apple/swift-async-algorithms/pull/301 **Full Changelog**: https://github.com/apple/swift-async-algorithms/compare/0.1.0...1.0.0
v1.0.0-beta.1
22 weeks ago
https://forums.swift.org/t/swift-async-algorithms-1-0-0-beta-1/67555
iOS macOS watchOS tvOS
apple/swift-markdown swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
A Swift package for parsing, building, editing, and analyzing Markdown documents.
โญ๏ธ 2,542
๐Ÿ•“ 13 hours ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift-Markdown 0.3.0
18 weeks ago
This release is based on the Swift 5.9 release.
Swift-Markdown 0.2.0
42 weeks ago
This release is based on the Swift 5.8 release.
apple/swift-format swift-5.9.2-RELEASE
Formatting technology for Swift source code
โญ๏ธ 2,265
๐Ÿ•“ 12 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
509.0.0
24 weeks ago
This release is compatible with Swift 5.9. Significant changes since the last release: ### New rules - `AlwaysUseLiteralForEmptyCollectionInit`: transforms no-argument initializer calls on collection types to use the empty collection literal instead. For example, `let x = [Int]()` will be transformed into `let x: [Int] = []`. This rule is **opt-in** (disabled by default). - `NoPlaygroundLiterals`: emits lint findings when the playground literals (`#colorLiteral`, `#fileLiteral`, `#imageLiteral`) are used in code. Enabled by default. - `OmitExplicitReturns`: removes unnecessary `return` keywords from single-expression function/closure/subscript/accessor bodies. This rule is **opt-in** (disabled by default). - `ReplaceForEachWithForLoop`: emits lint findings when the `forEach` method is called with a closure literal at the end of a member access chain, indicating that it should be replaced by a `for` loop instead. Enabled by default. - `TypeNamesShouldBeCapitalized`: emits lint findings when a type is declared with a name that is not `UpperCamelCase`. Enabled by default. ### New configuration settings - `multiElementCollectionTrailingCommas` (boolean): When set to `false`, the last element of a multi-element array or dictionary literal will not have a trailing comma, even when the literal wraps across multiple lines. Defaults to `true` (preserving the behavior of previous releases). ### Bug fixes and behavior changes - swift-format no longer crashes when formatting a `case` block that contains no statements. - In multi-statement closures, there is now always a line break between the `in` keyword and the first statement. - Attributes before `import` statements are no longer wrapped. - The `NoParensAroundConditions` rule no longer removes parentheses around an immediately called closure. - The `NoAssignmentInExpressions` rule can be configured to ignore assignments that occur inside certain function calls. The default configuration ignores assignments inside `XCTAssertNoThrow`. - When an editor placeholder is found in the source, this is now treated as a warning instead of an error. This allows formatting to continue, treating the placeholder as a regular identifier. - Keypath literals are properly wrapped and indented. - Postfix-`#if` expressions are no longer indented too far when they follow a closing parenthesis. - Indentation of multiline strings has been fixed in a number of locations. - Documentation comment parsing has improved for rules like `BeginDocumentationCommentWithOneLineSummary`, `UseTripleSlashForDocumentationComments`, and `ValidateDocumentationComments`. - Diagnostic messages throughout swift-format have been cleaned up and improved. - The `UseShorthandTypeNames` rule properly parenthesizes optional `some/any` types; for example, `Optional<any P>` becomes `(any P)?`, not `any P?` (which is invalid). - The `UseSynthesizedInitializer` rule no longer warns that an initializer is redundant if it is declared with any attributes. - The lint/format plugins for SPM now default to processing all targets if the `--target` argument is not specified. - swift-format now emits a warning if you configure a rule that does not exist. This is meant to help catch typos in the configuration file. - swift-format now does nothing if its input is empty (i.e., a zero-byte file). This suppresses a single trailing newline that would have otherwise been added in this case. ### API changes For developers using swift-format as a library, the types in the `SwiftFormatConfiguration` module have been folded into the `SwiftFormat` module. The `SwiftFormat` module is now the sole module you should import to use the linter/formatter APIs. The `SwiftFormatConfiguration` module still exists to re-export the types for backwards compatibility, but this will be removed in the 510.0.0 release.
508.0.1
41 weeks ago
This release is compatible with Swift 5.8. Compared to 508.0.0, this release relaxes the version requirement for `swift-argument-parser`, resulting in fewer version conflicts for users of swift-format and SwiftSyntax.
508.0.0
47 weeks ago
This release is compatible with Swift 5.8. Significant changes since the last release: * The `spacesAroundRangeFormationOperators` configuration option has been added to force a space around range formation operators like `...` and `..<`. * A new rule, `NoAssignmentInExpressions`, has been added that emits a linter finding if an assignment expression is found in another expression context (for example, `return x = y`). * Format and Lint plug-ins have been added that can be used from Swift Package Manager and Xcode. * Detection of "files that contain `XCTest`s" has been improved to include cases where `XCTest` is imported conditionally in a `#if` block. * Primary associated type clauses in `protocol` declarations are formatted correctly. * When a closure literal contains both a leading attribute and a capture list (e.g., `{ @MainActor [weak self] in ...`), a space is guaranteed between the attribute and capture list. * `Optional<T>` will not be automatically converted to the shorthand `T?` in positions where it would cause a performance issue due to subtle Swift initialization characteristics, like in member variable declarations.
0.50800.0-SNAPSHOT-2022-12-29-a
1 year ago
This is a development snapshot of the 0.50800.0 release of swift-format.
0.50700.1
1 year ago
This release is compatible with Swift 5.7. This update pins the swift-syntax dependency to at least 0.50700.1, which fixes an issue where new `if let` shorthand syntax was not recognized.
0.50700.0
1 year ago
This release is compatible with Swift 5.7. Significant changes since the last release: * The `AlwaysUseLowerCamelCase` rule no longer emits a warning for `override` declarations. (0e705f43b1b265c510b39b22d6eadcc1463f85a2) * The `UseWhereClausesInForLoops` rule won't hoist an `if` condition into a `where` clause if it also has an `else` block. (793d764d628bd16222f18e0678edbc28a93057b9) * `#if` postfix expressions now have improved formatting. (7216a18c7967fad06bae9211e0ee710fa9b788f7) * Files will not be overwritten if they are not changed during formatting, preserving their modification time and other metadata. (3b2b9b4349247927e2ae2d09169f6ad267977299)
0.50600.1
1 year ago
This release is compatible with Swift 5.6. This update fixes a build error caused by a conflicting Windows-only conformance from `swift-tools-support-core` and one that we added in our code base. (22f1843880ff57a3c288b7d76a204dec34397032)
0.50600.0
1 year ago
This release is compatible with Swift 5.6. Significant changes since the last release: * Diagnostics have been refactored as "findings". Users of swift-format as an API (via the `SwiftFormatter` and `SwiftLinter` classes) now receive warnings and errors via a new `Finding` type that is independent of `SwiftSyntax` diagnostic types, for greater flexibility. (7aa5df515fb910b95fbae67277dd782e1a641efc) * Diagnostics are now printed in color if standard error is connected to a terminal. This can be controlled with the `--color-diagnostics/--no-color-diagnostics` command line flags (to force color output when redirected to something other than a terminal, or to disable color output to a terminal). (4f90887ba823784e1d3b76cdd9779310843c5a57) * Formatting of `throws` and `async` property effects has been fixed. (f646a1f6803b7bd131553d1a348f3552d8c4f62e, 55fc4e23e16f463d650c45dc53c7abc731ca6de1) * The legacy `-m/--mode` flag has been removed. (defb00db9aa9b0564d487eba52a222c5267ba81a)
0.50500.0
2 years ago
This release is compatible with Swift 5.5. Significant changes since the last release: * New concurrency syntax added in Swift 5.5 is supported. (https://github.com/apple/swift-format/pull/258/commits/427d31451c36c2f7fb45dbd832c3b6f269bc1414) * Closures with attributes in their function signature are supported. (https://github.com/apple/swift-format/pull/258/commits/35e8687aff623042d188f6aaa24a1ecd27d55854) * Significant stability and performance improvements have been made to `--parallel` format mode. (https://github.com/apple/swift-format/pull/261/commits/6d500ea71337bc0581cc407b71fe09c106753fe8) * `generate-pipeline` no longer uses a hardcoded list of suppressed rules, instead marking those rules as opt-in. This makes two "new" rules available (they have always had implementations but have been suppressed): `UseEarlyExits` and `UseWhereClausesInForLoops`. These rules are not currently stable or well-tested so they are disabled by default. (https://github.com/apple/swift-format/pull/263/commits/6bd3a5512e3f686592c52f87ad6970f5a60e42b4)
0.50400.0
2 years ago
This release is compatible with Swift 5.4. Significant changes since the last release: * The `--parallel` flag supports formatting multiple files in parallel. This should be much faster when formatting large numbers of files. (a062ec84d3230f9b9055123c7bb2903780c84608) * The `--ignore-unparsable-files` flag is now honored in `lint` mode; unparsable files are silently ignored and no diagnostic is emitted. (fc3fab6bf6541e611830b122711af0bd750dec6f) * `#if` declarations surrounding `case` clauses inside a `switch` statement are formatted correctly. (8df2cb04f2aa41089cd14379552cb97bcc89133a) * `UseLetInEveryBoundCaseVariable` no longer produces incorrect diagnostics for certain patterns. (c3c17adbd93d9117f1d23fb05ffb7c435c23b581) * `BeginDocumentationCommentWithOneLineSummary` has been made opt-in by default. (22118db1668bb22af878d1ce31184533e419411b) * `UseSynthesizedInitializer` now produces more accurate diagnostics by considering the visibility of the stored properties in the type. (dd87cc2c9696ce8460265533471c75c225cde4fe)
iOS macOS linux android
apple/swift-numerics 1.0.2
Advanced mathematical types and functions for Swift
โญ๏ธ 1,604
๐Ÿ•“ 2 years ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
CMake build support for arm64/macOS
2 years ago
This release adds support for the CMake build in macOS on arm64. Thanks to @DanboDuan for the patch.
Differentiable cannot be stable
2 years ago
This tag contains no code changes, but clarifies in the readme that API defined in a conformance to Differentiable cannot be source-stable, because Differentiable itself is not stable. Thanks @rxwei for reminding me to clarify this.
Stable at last!
2 years ago
Welcome to the first stable release of Swift Numerics! Not much has changed from 0.1.0, except that I'm declaring the API of RealModule and ComplexModule to be stable. There is some [expanded documentation](https://github.com/apple/swift-numerics/pull/193/files) for the `reciprocal` property on `AlgebraicField`, including discussion of error bounds for `Real` and `Complex` types. The only breaking change from 0.1.0 is that `Augmented.fastTwoSum` and `Augmented.twoProdFMA` have been [deprecated](https://github.com/apple/swift-numerics/pull/183/files) and [renamed](https://github.com/apple/swift-numerics/pull/181/files) `Augmented.sum(large:small:)` and `Augmented.product`. This change is not expected to effect many users, and the deprecation should make clear how to update your code if necessary. As always, raise a [GitHub issue](https://github.com/apple/swift-numerics/issues) or post on [the forums](https://forums.swift.org/c/related-projects/swift-numerics/56) if you have questions.
Complex ... and yet Elementary
3 years ago
Howdy buckaroos! It's been a while since the last release, as I've been busy with some real-life stuff. But now I'm back to the grindstone, and I've got a fun release for you. There's a bunch of cleanups and improvements from various contributors (@NevinBR and @markuswntr come to mind), but the big news is that [Complex types now conform to the ElementaryFunctions protocol](https://github.com/apple/swift-numerics/pull/162), which means that all your favorite math functions are available for complex types. The branch cuts of these complex functions should generally match C and C++'s (because all implementations follow Kahan's standard paper on the subject), though the exact numerical results will be slightly different in general. Unlike the real functions, the complex elementary functions are all implemented in Swift--we don't delegate to the host system math library. This is because the general quality of <complex.h> implementations is significantly lower than <math.h> implementations, and some platforms (Windows) don't provide those operations at all. In general, I believe that the basic algorithms used by Swift Numerics for these operations are as good as (and often better) than what C libraries provide, but there is always a possibility of bugs, especially with new code. Don't hesitate to raise an issue if you see anything you suspect. Special thanks to @compnerd for going above and beyond tracking down a [Swift bug](https://bugs.swift.org/browse/SR-13985) that held up this tag (and @eeckstein for fixing it!)
Xcode 12 support
3 years ago
This is a quick-fix release to address [a bug](https://github.com/apple/swift-numerics/issues/156) reported with Float16 availability in Xcode 12 on Catalina. No puns, sorry ๐Ÿ˜‚
This time will be different...iable?
3 years ago
Hey all, lots of updates in this release: First, the big features: - Differentiable and Float16 support is live in Swift Numerics. These are protected behind swift version checks, so you'll only see them when you're building with a Swift 5.3 or later toolchain (because earlier toolchains don't have the necessary support). For Float16, you need to also be targeting a platform with support in the standard library (i.e. not macOS). For Differentiable, you need to be using a toolchain that was built with differentiable programming support enabled. - Approximate equality comparisons have been added for types conforming to Numeric when the associatedtype Magnitude conforms to FloatingPoint. This includes all of the Real types, but also includes Complex, and can be extended to lots of other useful types as well. The most basic use is: ``` a.isApproximatelyEqual(to: b) ``` which performs a comparison with default _relative_ tolerance. You can manually specify an absolute or relative tolerance (or both), as well as a norm to use via overloads and optional arguments. Consult the doc comments for more information now, but I plan to write a more in-depth README for the feature in the coming weeks. Two implementation details have also been added on `Real`, which are useful for building out other parts of the library: - `cosMinusOne(_ x: Self) -> Self` This is "just `expMinusOne(_:Self)`, but for cosine". It's a somewhat niche feature (and trivially implementable via the half-angle formula), but it turns out to be useful when building out ElementaryFunctions support for Complex types, so it seems to make good sense to make more broadly available. - `_mulAdd(_ a: Self, _ b: Self, _ c: Self) -> Self` This is intended to use _either_ an FMA or separate multiply and add to evaluate `a*b + c` as efficiently as possible. This is a much more niche implementation detail, and the name is subject to change (hence the underscore), but it's useful enough to expose for anyone who wants to use it. Speaking of ElementaryFunctions support for Complex types, that's something that's in progress now (https://github.com/apple/swift-numerics/pull/146). I'll be working through it over the next few weeks, and would love to have contributions. If you'd like to contribute, be sure to read the [_implementation goals_](https://github.com/apple/swift-numerics/pull/146/files#diff-09d59967445bcdd89e02e0534c77f51b). Simply borrowing from C or C++ implementations will probably not be sufficient for the goals we have and semantics defined for Complex, but you can use them as a starting point if you're willing to iterate with me a bit. Thanks everyone! Forums discussion here: https://forums.swift.org/t/0-0-7-release-notes/39680
Fenestration
3 years ago
There are a bunch of small changes in this release: - Added Windows support via CMake build system, contributed by @compnerd (special thanks for your patience!) - I removed the Complex benchmarks from the test targets. Semantically, benchmarks are not the same as tests, and we don't need these to run in the same conditions. Further, the Xcode benchmark infrastructure isn't quite what we want for these, and they don't work on Windows anyway, because clang does not support C complex multiplication or division on Windows. These benchmarks will return in the next release in the form of an executable target. - Complex&lt;T&gt; now conforms to Differentiable if you are using a toolchain that supports Differentiable programming and T is Differentiable. Thanks to @rxwei and @dan-zheng for their work on this. - Some documentation fixes for Complex fell out from work that @markuswntr has been doing on Quaternions (check out the Quaternions branch to play with it, and help review his PRs) - I fixed a bug in pow(Float/Double, Int) for exceptionally large exponents. It's unlikely that this ever caused any real problems, because it only occurs when the exponent is so large that the result should always be 0, 1, or infinity, but now we get the right answer for these cases. A reminder that Float16 support is available on the swift-5.3 branch, which will be merged to master when swift-5.3 is released. When that happens, I will also create a LTS swift-5.2 branch to support older toolchains that do not have Float16 support. Any questions or problems can be discussed on the GitHub repo or on the Swift Forums: https://forums.swift.org/t/0-0-6-release-notes/38146
I saw the Sign, and it opened up my mind
4 years ago
There are two changes in this release: - [`AlgebraicField` now refines `SignedNumeric` instead of `Numeric`](https://github.com/apple/swift-numerics/pull/99). This should have no visible change for most users, because all conforming types (`Float`, `Double`, `Float80`, and `Complex`) already conform to `SignedNumeric`. However, users who have code that is generic over the `AlgebraicField` protocol can now use unary negation (or remove existing explicit `SignedNumeric` constraints from that code). - [The `Real` and `Complex` modules have been renamed `RealModule` and `ComplexModule`](https://github.com/apple/swift-numerics/pull/97). If you import `Numerics`, then this change does not affect you. However, if you currently import either `Real` or `Complex` directly, you will need to update your import statements. (sorry!) This is not a change that I make lightly; I would very much prefer to avoid this sort of churn, even though Swift Numerics hasn't yet declared 1.0. However, there are real limitations of the current name lookup system, which prevents use of some nice patterns when a module name shadows a type. E.g. with this change, a user who mostly only wants to work with complex doubles can do the following: ```swift import ComplexModule typealias Complex = ComplexModule.Complex<Double> // Can now use the simpler name Complex for Complex<Double>: func foo(_ z: Complex) -> Complex { ... } // But can still get at the generic type when necessary: let a = ComplexModule.Complex<Float> ``` Any Swift Numerics module that might have this ambiguity will be suffixed with `Module` in the future (just like the pattern of protocols being suffixed with `Protocol` when necessary to break ambiguity). As always, if you have any questions or comments, there is a [forums thread for discussing this release](https://forums.swift.org/t/0-0-5-release-notes/33991).
We will not be Fielding further questions at this time
4 years ago
There are two changes in this release to call out specifically: - Complex's conformance to Codable now uses an *unkeyed* container, so e.g. `.zero` gets encoded as `[0,0]` in JSON instead of the old `{"x":0, "y":0}`. - There's a new protocol, `AlgebraicField` refining `Numeric` by adding the `/`, `/=` operators, and a `.reciprocal: Self?` property. The `Real` protocol refines it and `Complex<T>` conforms to it, allowing you to write code that is generic over them. There are some additional operations that it probably makes sense to add to this protocol (e.g. square root); I expect to add them gradually as needed. I also want to draw special attention to [a change](https://github.com/apple/swift-numerics/issues/94) that I expect to make in the *next* tag. In order to make certain use patterns simpler, I intend to give the `Complex` module a name that doesn't conflict with the `Complex` type. If you have opinions about this change, or suggestions for a naming pattern to adopt for modules in Swift Numerics, please weigh in on that thread. If you have any questions, use this [discussion thread](https://forums.swift.org/t/0-0-4-release-notes/32860) on the Swift forums.
We have the power
4 years ago
In earlier releases, `Real.pow(Self, Int)` simply called through to `libm_pow`. This is generally acceptable on platforms with a decent math library, but gets some cases wrong for `Float` and `Double` when the exponent is so large that it would be rounded in conversion to `Self`. For example, consider `Float.pow(-1, 0x1000001)`. Since the exponent is odd, the result should be `-1`, but when we simply called `libm_pow(-1, Float(0x1000001))`, the exponent was rounded to an even number, and the result was `1`. This behavior is fixed in this release; in particular the parity of integer exponents is always preserved, so that we will not have sign errors like above. There is still additional work to be done on the `Real.pow` implementations--especially to provide better support for platforms with suspect math libraries--but this is a significant improvement to these operations.
linux android
apple/swift-crypto 3.2.0
Open-source implementation of a substantial portion of the API of Apple CryptoKit suitable for use on Linux platforms.
โญ๏ธ 1,389
๐Ÿ•“ 8 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift Crypto 3.2.0
8 weeks ago
### SemVer Minor - Add `pkcs8PEMRepresenation` for RSA private keys (#203, patch credit to @bjhomer) - Add support for CBC without padding (#210, patch credit to @lovetodream) - Add support for RSA OAEP with SHA256 (#206) - Add Sendable annotations to Crypto Extras (#211, #214) ### SemVer Patch - Add extern C markers (#204, patch credit to @brianmichel) - Update `BoringSSLRSAPublicKey` to use `EVP_PKEY` API (#205) - Update BoringSSL to 7a813621dac6878ab53b6ed7392939a8982226e8 (#207, #215) ### Other Changes - Add cxx interop build pipeline (#212) - Update availability annotations in tests (#213)
Swift Crypto 3.1.0
21 weeks ago
### SemVer Minor - Add support for AES-CBC in `_CryptoExtras` (#200) - Bump minimum Swift version to 5.7 (#201)
Swift Crypto 3.0.0
23 weeks ago
The only meaningful breaking change in this release is the addition of new cases in the `CryptoKitError` enum. The overwhelming majority of users can and should express a wider version range than usual: "1.0.0" ..< "4.0.0" is the recommended version range. ### SemVer Major - Update to CryptoKit 2023 final API (#199) ### SemVer Patch - Set missing Windows defines (#197) (patch credit to @compnerd) - Use `SecKeyGetBlockSize` instead of `kSecAttrKeySizeInBits` (#198)
Swift Crypto 2.6.0
30 weeks ago
### Semver Minor - Add API providing basic RSA pubkey encrypt and privkey decrypt (#125, #191, patch credit to @gwynne) ### Semver Patch - Switch to canImport instead of os conditions (#184, #192) - Update BoringSSL to 7ae2b910c13017b63f1a8bd6c8decfce692869b0 (#190, #193) ### Other changes - Typo fixes (#179, patch credit to @joey-gm) - Update code of conduct (#182)
Swift Crypto 3.0.0-beta.1
37 weeks ago
While this adds a Semver Major, the only breaking changes are in error enumerations. Users are encouraged to support 3.x alongside 2.x and 1.x. ### Semver Major - Update to the 2023 CryptoKit API (#181) ### Other changes - Update code of conduct (#182) - Clean up documentation typos (#179) (patch credit to @joey-gm)
Swift Crypto 2.5.0
45 weeks ago
### SemVer Minor - ChaCha20 CTR Encryption (#169, patch credit to @btoms20) ### SemVer Patch - Drop support for Swift 5.5 (#172) ### Other Changes - Set CRYPTO_IN_SWIFTPM (#177, patch credit to @etcwilde)
Swift Crypto 2.4.1
46 weeks ago
### SemVer Patch - Update BoringSSL to abfd5ebc87ddca0fab9fca067c9d7edbc355eae8 (#171) ### Other Changes - Fix broken link (#153, patch credit to @Sajjon) - Update Wycheproof 'x25519_test.json' to v1 (#155, patch credit to @Sajjon) - Update Wycheproof aes_gcm.json to v1 (#156, patch credit to @Sajjon) - Update Wycheproof chacha20_poly1305 to v1 (#157, patch credit to @Sajjon) - Update Wycheproof ecdh_secp256r1_ecpoint_test.json to v1 (#158, patch credit to @Sajjon) - Update Wycheproof eddsa_test to v1 (renamed to ed25519_test) (#159, patch credit to @Sajjon) - Update Wycheproof ecdh_secp256r1_test.json to v1 (#160, patch credit to @Sajjon) - Update Wycheproof ecdh_secp384r1_ecpoint_test.json to v1 (#161, patch credit to @Sajjon) - Update Wycheproof ecdh_secp384r1_test.json to v1 (#162, patch credit to @Sajjon) - Update Wycheproof ecdh_secp521r1_test.json to v1 (#163, patch credit to @Sajjon) - Update Wycheproof ecdh_secp521r1_ecpoint_test.json to v1 (#164, patch credit to @Sajjon) - Update Wycheproof multiple ECDSA test vectors to v1 (#166, patch credit to @Sajjon) - Add five new Wycheproof ECDSA test vectors using IEEE P1363 format (#167, patch credit to @Sajjon) - Exclude AES from CMake (#152) - Add docker-compose file for Swift 5.8 and 5.9 (#170)
Swift Crypto 2.4.0
51 weeks ago
### SemVer Minor - Make RSA public key formats consistent on all platforms (#151)
Swift Crypto 2.3.0
1 year ago
### SemVer Minor - Support SwiftWasm (#145, patch credit to @AndrewBarba) ### Other Changes - build: add `ARM64` spelling for Windows (#148, patch credit to @compnerd) - Set up CMake build for _CryptoExtras (#144)
Swift Crypto 2.2.4
1 year ago
### SemVer Patch - Add AES block function to CryptoExtras (#142) - Update BoringSSL to 45b8d7bbd771cbf7e116db2ba1f1cc7af959497e (#143)
iOS macOS watchOS tvOS linux windows android wasi
apple/swift-system v0.0.2
Low-level system calls and types for Swift
โญ๏ธ 1,136
๐Ÿ•“ 2 years ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
System 1.2.1
1 year ago
This is a bug fix release restoring the ability to build this package on Windows. ## What's Changed * Revert "FileOperations: Add Windows implementation for FileDescriptor.resize(to:)" in https://github.com/apple/swift-system/pull/93 **Full Changelog**: https://github.com/apple/swift-system/compare/1.2.0...1.2.1
System 1.2.0
1 year ago
## What's New * FileDescriptor: Add resize(to newSize:) by @simonjbeaumont in https://github.com/apple/swift-system/pull/82 ## What's Changed * Unify availability annotations & introduce a script to manage them by @lorentey in https://github.com/apple/swift-system/pull/75 * Update Linux tests manifest by @dduan in https://github.com/apple/swift-system/pull/81 * docs: Removed duplicate paragraph from FileDescriptor.writeAll(_:) docs by @simonjbeaumont in https://github.com/apple/swift-system/pull/85 * Unbreak the Windows port by @lorentey in https://github.com/apple/swift-system/pull/88 * Rebind byte types safely by @glessard in https://github.com/apple/swift-system/pull/79 * Fix broken links. by @amartini51 in https://github.com/apple/swift-system/pull/77 * Mitigate misuse of Swift's pointer conversion feature by @glessard in https://github.com/apple/swift-system/pull/80 * Import C module as `@_implementationOnly` by @colemancda in https://github.com/apple/swift-system/pull/83 * FileOperations: Add Windows implementation for FileDescriptor.resize(to:) by @simonjbeaumont in https://github.com/apple/swift-system/pull/89 ## New Contributors * @dduan made their first contribution in https://github.com/apple/swift-system/pull/81 * @simonjbeaumont made their first contribution in https://github.com/apple/swift-system/pull/85 * @glessard made their first contribution in https://github.com/apple/swift-system/pull/79 * @colemancda made their first contribution in https://github.com/apple/swift-system/pull/83 **Full Changelog**: https://github.com/apple/swift-system/compare/1.1.1...1.2.0
System 1.1.1
2 years ago
## What's Changed * build: install CSystem into the system by @compnerd in https://github.com/apple/swift-system/pull/74 **Full Changelog**: https://github.com/apple/swift-system/compare/1.1.0...1.1.1
System 1.1.0
2 years ago
Picks up pipe API and cmake changes. ## What's Changed * Implement `FileDescriptor.Pipe()` by @GeorgeLyon in https://github.com/apple/swift-system/pull/58 * Minor fixes in documentation comments by @amartini51 in https://github.com/apple/swift-system/pull/69 * update cmake setup so that the library can be used by SwiftPM cmake build by @tomerd in https://github.com/apple/swift-system/pull/73 ## New Contributors * @GeorgeLyon made their first contribution in https://github.com/apple/swift-system/pull/58 * @tomerd made their first contribution in https://github.com/apple/swift-system/pull/73 **Full Changelog**: https://github.com/apple/swift-system/compare/1.0.0...1.0.1
System 1.0
2 years ago
Official 1.0 release! System is already source and binary stable (at least on Darwin), so in practice this doesn't change much about System's development or guarantees (`1.0.0` is effectively the same as `0.0.3`). But, it does formalize the source stability guarantee for clients of the package.
0.0.3 Bug fixes for Windows
2 years ago
Contains bug fixes for Windows, and minor fixes for SystemChar.
System 0.0.2
2 years ago
* [FilePath Syntactic Operations](https://github.com/apple/swift-system/pull/14) * decompose a path, analyze a path, components view, mutate a path, etc * [Standard file descriptors](https://github.com/apple/swift-system/pull/21) * static `FileDescriptor.standardInput`, `FileDescriptor.standardOutput`, `FileDescriptor.standardError` * [dup/dup2](https://github.com/apple/swift-system/pull/28) * `FileDescriptor.duplicate`, with optional `as` target.
System 0.0.1
3 years ago
Initial release
apple/swift-openapi-generator 1.2.1
Generate Swift client and server code from an OpenAPI document.
โญ๏ธ 1,121
๐Ÿ•“ 2 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.2.1
3 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Add macCatalyst to the PlatformChecks by @lennartkerkvliet in https://github.com/apple/swift-openapi-generator/pull/524 ### Other Changes * Fix tests to include content-length header, now included by runtime library by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/510 * Update Project-scope-and-goals.md by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/509 * Fix compiler warnings in example projects by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/506 ## New Contributors * @lennartkerkvliet made their first contribution in https://github.com/apple/swift-openapi-generator/pull/524 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/1.2.0...1.2.1
1.2.0
8 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Minor * Add examples for event streams by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/494 * [SOAR-0010] Support for JSON Lines, JSON Sequence, and Server-sent Events by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/495 ### SemVer Patch * Validate content type strings in validateDoc by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/471 * Validate references in validateDoc by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/500 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/1.1.0...1.2.0
1.1.0
11 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * [Bug] Fix mixed path components by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/491 * [Generator] Add headerFields and body to UndocumentedPayload by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/488 * Generate arrays with an optional element type for arrays with nullable items by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/492 ### Other Changes * [README] Add a version badge by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/486 * Update compat suite OpenAPI documents to their latest versions by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/418 * [Examples] Stop linking transitive dependencies in tests by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/487 * examples: Flesh out Makefile-based example by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/489 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/1.0.0...1.1.0
1.0.0 ๐Ÿš€
11 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ### ๐ŸŽ‰ Check out the [full 1.0.0 announcement](https://forums.swift.org/t/swift-openapi-generator-1-0-0-released/68964) on the Swift Forums. ๐Ÿ‘ Special thanks to all the [contributors](https://github.com/apple/swift-openapi-generator/graphs/contributors) of Swift OpenAPI Generator! ## What's Changed since 1.0.0-alpha.1 ### Other Changes * Many changes to documentation, tutorials, and examples. * Explicit dependency on HTTPTypes by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/413 * Log the access modifier for clarity by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/421 * Update minimum version of OpenAPIKit to 3.1.2 by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/439 * Default the access modifier to internal by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/441 * Update dependencies and use consistent package URL style by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/457 * Update NOTICE.txt with projects used in examples by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/463 * Proposal documentation cleanup and consistency by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/469 * Add Github issue template forms by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/477 * [Examples] Delete the original deprecated GreetingService examples by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/483 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/1.0.0-alpha.1...1.0.0
Swift OpenAPI Generator 1.0.0-alpha.1
13 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> Announcement: https://forums.swift.org/t/swift-openapi-generator-1-0-0-alpha-1-release-candidate-released-multipart-base64-filtering-recursive-types-and-more/68703 ## What's Changed ### SemVer Major โš ๏ธ API-breaking changes * [Generator] Multipart support by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/366 * [Bug] Fix multipart schema inference for allOf/anyOf/oneOf of primitive types and non-binary arrays by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/391 * Move to Swift 5.9 as the minimum version by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/394 * Use the package access modifier for generated code by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/393 ### SemVer Minor * Add visionOS to Package.swift to emit useful compilation errors by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/398 * Bump to 1.0.0-alpha.1 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/400 ### SemVer Patch * Remove the base64 feature flag by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/401 ### Other Changes * SOAR-0009 - Typesafe multipart with streaming by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/369 * Undeprecate tests that used to test deprecated code by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/395 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.5...1.0.0-alpha.1
Swift OpenAPI Generator 0.3.5
14 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Fix a bug in path parameter ordering by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/380 * Skip inferred properties by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/381 * Add deprecated annotations on shorthand functions for deprecated operations by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/384 * Fix compilation of tests on older macOS by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/385 ### Other Changes * Add README badges by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/370 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.4...0.3.5
Swift OpenAPI Generator 0.3.4
17 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Fix inline response headers by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/355 * Bump OpenAPIKit to 3.0.0-rc.3 and recognize more base64/binary encoding locations by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/357 * Use granular RetroactiveAttribute feature guard by @rnro in https://github.com/apple/swift-openapi-generator/pull/359 * Bump to OpenAPIKit 3.0.0 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/362 * Fix spelling of retroactive guard by @rnro in https://github.com/apple/swift-openapi-generator/pull/363 * Bump OpenAPIKit to 3.0.1 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/365 ### Other Changes * Add some new swift-format 5.9 rules by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/356 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.3...0.3.4
Swift OpenAPI Generator 0.3.3
18 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Safe server variable names when used in Swift identifiers by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/351 * [Generator] Include partial errors in oneOf/anyOf decoding errors by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/350 ### Other Changes * Disable warnings-as-errors for nightlies by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/353 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.2...0.3.3
Swift OpenAPI Generator 0.3.2
18 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * [Bugfix] Detect more schema type reference cycles. by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/335 * Respect the input order when filtering by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/337 * Handle malformed content types by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/339 * Remove swift-syntax/swift-format as generator dependencies by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/343 * [Generator] Generate server variables by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/348 ### Other Changes * Bump swift-format to 5.9 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/340 * Update server tutorial codebase, fixes #333 by @tib in https://github.com/apple/swift-openapi-generator/pull/338 * Add a soundness --fix flag by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/345 * Disable "respectsExistingLineBreaks" in .swift-format for more consistent styling by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/346 * Enable more CI warnings by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/347 ## New Contributors * @tib made their first contribution in https://github.com/apple/swift-openapi-generator/pull/338 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.1...0.3.2
Swift OpenAPI Generator 0.3.1
19 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Support base64-encoded data by @rnro in https://github.com/apple/swift-openapi-generator/pull/326 * Add support for filtering OpenAPI document by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/319 * Relax dependency on SwiftSyntax and SwiftFormat to 508..<510 by @mbrandonw in https://github.com/apple/swift-openapi-generator/pull/331 * Support recursive types by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/330 ### Other Changes * Fixes #165 - Enable documentation comment validation in swift-format by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/188 * Improve structured Swift representation for recursive type support by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/334 * Add proposal SOAR-0008: OpenAPI document filtering by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/303 ## New Contributors * @rnro made their first contribution in https://github.com/apple/swift-openapi-generator/pull/326 * @mbrandonw made their first contribution in https://github.com/apple/swift-openapi-generator/pull/331 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.3.0...0.3.1
iOS macOS watchOS tvOS linux macOS iOS
apple/swift-corelibs-xctest swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
The XCTest Project, A Swift core library for providing unit test support
โญ๏ธ 1,114
๐Ÿ•“ Yesterday
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5 years ago
Swift 4.2.1 Release
5 years ago
Swift 4.2 Release
5 years ago
apple/swift-docc swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
Documentation compiler that produces rich API reference documentation and interactive tutorials for your Swift framework or package.
โญ๏ธ 1,075
๐Ÿ•“ 15 hours ago
iOS macOS linux android
apple/swift-llbuild swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
A low-level build system, used by Xcode and the Swift Package Manager
โญ๏ธ 1,062
๐Ÿ•“ 21 hours ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2 years ago
3 years ago
4 years ago
Matches the Swift 5.1 release.
4 years ago
4 years ago
5 years ago
Swift 4.2.1 Release
5 years ago
Swift 4.2 Release
5 years ago
iOS macOS linux windows android
apple/swift-atomics 1.2.0
Low-level atomic operations for Swift
โญ๏ธ 1,003
๐Ÿ•“ 22 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift Atomics 1.2.0
22 weeks ago
This minor release adds support for Swift 5.9. This release contains no API-level additions nor any other visible changes to stable interfaces; the version number bump is simply acknowledging that this release ships a full rewrite of package internals -- it isn't just a regular bug fix release. ### Changes - This release requires Swift 5.7 or later. (Clients on older toolchains will automatically remain on the 1.0 or 1.1 releases.) - The package now supports being used as a dependency in projects that have C++ interoperability enabled in Swift 5.9. - On Swift 5.9+, atomic operations are now implemented using native Swift compiler builtins. The package no longer forwards to C atomics when built on newer toolchains. ### Fixes - Minor documentation fixes. ### Pull Requests * [Xcode] Set a code sign identity by @lorentey in https://github.com/apple/swift-atomics/pull/85 * [Xcode] Donโ€™t use a bridging header in a framework target by @lorentey in https://github.com/apple/swift-atomics/pull/87 * Fix reference doc variable references by @rolson in https://github.com/apple/swift-atomics/pull/89 * Avoid C atomic operations in Swift 5.9+ by @lorentey in https://github.com/apple/swift-atomics/pull/90 * Regenerate sources by @lorentey in https://github.com/apple/swift-atomics/pull/91 * Fix version-specific manifest for 5.6..<5.9 by @lorentey in https://github.com/apple/swift-atomics/pull/93 * [_AtomicShims] On Darwin, ensure we link against libswiftCore using assembly shenanigans by @lorentey in https://github.com/apple/swift-atomics/pull/97 * Avoid using symlinks for package files by @ktoso in https://github.com/apple/swift-atomics/pull/100 * Reorganize sources for future work by @lorentey in https://github.com/apple/swift-atomics/pull/101 * Fix alignment issues with double-wide atomics on i386 by @lorentey in https://github.com/apple/swift-atomics/pull/102 * [CMake] Do not list .gyb files as sources by @lorentey in https://github.com/apple/swift-atomics/pull/105 * Drop support for Swift 5.6 by @lorentey in https://github.com/apple/swift-atomics/pull/103 * Not so minor prerelease fixups/changes by @lorentey in https://github.com/apple/swift-atomics/pull/106 ## New Contributors * @rolson made their first contribution in https://github.com/apple/swift-atomics/pull/89 * @ktoso made their first contribution in https://github.com/apple/swift-atomics/pull/100 **Full Changelog**: https://github.com/apple/swift-atomics/compare/1.1.0...1.2.0 Thank you very much to everyone who contributed to this release!
Swift Atomics 1.1.0
48 weeks ago
This minor release improves support for recent Swift releases, adds new functionality and resolves some known issues. ### Changes - This release requires Swift 5.6 or better. (Clients on older toolchains will automatically remain on the 1.0 releases.) (#67) - `AtomicReference` is now unconditionally available on all supported platforms. (#65 by @kelvin13) - `ManagedAtomic` now conforms to `Sendable` when its `Value` is `Sendable`. (#45) - `RawRepresentable` types can now opt into support for atomic operations on their optional values as long as their underlying `RawValue` also supports it. (#42 by @glessard) ```swift struct SomeValue: RawRepresentable, AtomicOptionalWrappable { var rawValue: UnsafeRawPointer init(rawValue: UnsafeRawPointer) { self.rawValue = rawValue } } let atomic: ManagedAtomic<SomeValue> // OK let atomic2: ManagedAtomic<SomeValue?> // Also OK! ``` - The `weakCompareExchange` operation now comes with a variant that takes a single ordering (#75). This makes it less verbose to use it in the common case where the same ordering is needed on both the success and the failure paths. ```swift let atomic = ManagedAtomic<Int>(42) var original = 0 var exchanged = false repeat { (exchanged, original) = atomic.weakCompareExchange( expected: original, desired: 23, ordering: .relaxed) // no need to specify a separate failureOrdering! } while !exchanged ``` - `DoubleWord.low` and `DoubleWord.high` are now deprecated (#70). Use `first` and `second` instead. - This release lays the groundwork for replacing the use of C atomics with native Swift compiler intrinsics (#74). When it eventually becomes stable, this change will allow swift-atomics to support Windows (#56), and it will resolve a multitude of build problems on other platforms (e.g., #54, #55, #62, #8). Version 1.1 ships with experimental support for building the package in this mode; however, this mode is not enabled by default, and it is subject to arbitrarily change in any future release. ### Fixes - `ManagedAtomicLazyReference` no longer leaks its value when it is deinitialized (#66). - `AtomicReference` conformances on non-final classes no longer emit a compiler warning in Swift 5.7 and later (#53). Atomic references now fully support class hierarchies, but only the superclass that introduced the `AtomicReference` conformance can be used as the type argument to `ManagedAtomic` or `UnsafeAtomic`. This turns a previously undiagnosed type safety violation into an unconditional compile-time error: ```swift class Base: AtomicReference {} // 1.0: warning: Non-final class 'Base' cannot safely conform to protocol // 'AtomicValue', which requires that 'Self.AtomicRepresentation.Value' // is exactly equal to 'Self'; this is an error in Swift 6 // 1.1: OK class Derived: Base {} let ref1: ManagedAtomic<Base> = .init(Derived()) // OK let ref2: ManagedAtomic<Derived> = .init(Derived()) // 1.0: // no error, silent type safety violation // 1.1+: // error: 'ManagedAtomic' requires the types 'Derived' // and 'Base' be equivalent ``` - All atomic operations are now implemented in terms of `Int8`, `Int16`, `Int32`, `Int64`, `Int`, or `DoubleWord`. The package no longer uses non-standard C to implement atomic operations on `Bool` (#37). - Building the package tests is now far less resource-intensive, considerably speeding up builds on some memory-constrained systems (#71). ### Pull Requests - #42 Implement AtomicStorage for Optionals of RawRepresentable types (by @glessard) - #58 Fix support for non-final classes in AtomicReference (by @lorentey) - #65 enable AtomicReference everywhere (by @kelvin13) - #67 Bump minimum required toolchain to Swift 5.6 (by @lorentey) - #68 Remove obsolete workarounds for older toolchains (by @lorentey) - #69 ManagedAtomicLazyReference: Properly dispose object on deinit (by @lorentey) - #70 Simplify shims (by @lorentey) - #71 Resolve some test issues (by @lorentey) - #72 [test] Fix basic tests to to actually cover weakCompareExchange (by @lorentey) - #73 Update AtomicOptionalWrappable support for RawRepresentable types (by @lorentey) - #74 Add support for using LLVM intrinsics instead of C atomics (by @lorentey) - #76 Add a weakCompareExchange variant that only takes a single ordering (by @lorentey) - #77 Add an Xcode project exercising native builtins in a monomodule configuration (by @lorentey) - #78 Fix compatibility with Swift 5.6 (by @lorentey) - #80 Update file headers (by @lorentey) - #81 Fix some edge cases under 5.6 (by @lorentey) - #82 1.1 release preparations (by @lorentey) - #83 Utilities/run-full-tests.sh: Use a different derived data path when building the Xcode project (by @lorentey) **Full diffs**: https://github.com/apple/swift-atomics/compare/1.0.3...1.1.0 Thank you very much to everyone who contributed to this release!
Swift Atomics 1.0.3
1 year ago
This is a documentation update, including the addition of basic DocC documentation bundles. The only other change is a fix to the CMake build configuration. ## Changes The package now contains documentation bundles, enabling nicer presentation of API documentation in DocC. ## Pull Requests * Update README for autogenerated subdirectories by @chornge in https://github.com/apple/swift-atomics/pull/49 * [Documentation] Add a note that TSan does not support fences. by @karwa in https://github.com/apple/swift-atomics/pull/50 * fix cmake build when Atomics is built as dependency by @michaelknoch in https://github.com/apple/swift-atomics/pull/52 ## New Contributors * @chornge made their first contribution in https://github.com/apple/swift-atomics/pull/49 * @karwa made their first contribution in https://github.com/apple/swift-atomics/pull/50 * @michaelknoch made their first contribution in https://github.com/apple/swift-atomics/pull/52 **Full Changelog**: https://github.com/apple/swift-atomics/compare/1.0.2...1.0.3
Atomics 1.0.2
2 years ago
This is a patch release that introduces initial support for building this package with the Swift 5.5 compiler. (More fully-featured support with additional `Sendable` conformances will come in a future minor release.) #### Fixes - The package now has a workaround for an arm64 code generation issue for double wide atomics in the version of LLVM that ships in Swift 5.5. (#41) - When building with Swift 5.5, `UnsafeAtomic` and `UnsafeAtomicLazyReference` now only conform to `Sendable` when their value is. Swift 5.5 implicitly adds unconditional conformances to these types in 1.0.1, which isn't right. (#47) - The package now has better support for building with CMake. (#39) (Note that the CMake build configuration is intended only to enable the use of this package within Swift toolchain builds. It isn't part of the package's public API, so it is subject to change in any release.) ### Pull Requests - #38 [shims] Only define atomic shims in Swift's Clang Importer (by @lorentey) - #39 [cmake] Fix building with CMake (by @lorentey) - #40 Add support test script (by @lorentey) - #43 Implement double-wide loads with compare-exchange on arm64 in debug builds with the Swift 5.5 compiler (by @lorentey) - #44 Update utility scripts (by @lorentey) - #48 Fix `UnsafeAtomic`'s `Sendable` conformance (by @lorentey) Thank you to everyone who contributed to this release!
Atomics 1.0.1
2 years ago
This is a patch release containing several bug fixes. #### Fixes - The package now builds successfully on 32-bit architectures (i386, armv7) (#33) - The package manifest was adjusted to prevent SwiftPM warnings about unknown files in source directories. - Several types are now `@frozen` to match their `@inlinable` initializers. (This package isn't ABI stable, so this change is a no-op in all supported configurations.) ### Pull Requests - #34 [shims] Fix i386/armv7 regression introduced in #26 (by @lorentey) - #35 [manifest] Fix warnings in 5.3 toolchains (by @lorentey) - #36 Fix build errors with library evolution enabled (by @lorentey) Thank you to everyone who contributed to this release!
Atomics 1.0.0
2 years ago
This release marks an important milestone for this package -- the advent of source stability! #### Changes - The public API of Swift Atomics is now considered source stable. The README defines what we consider public API. - Swift Atomics now requires a Swift 5.3 or later toolchain. - The low-level (pointer-based) atomic boolean operations are now public. (They were accidentally omitted from previous releases.) - The package now includes a CMake-based build method for bootstrapping purposes. This isn't considered stable; it may be removed or arbitrarily changed in any new release, including patch releases. #### Pull requests - #20 DoubleWord._readersBitWidth: Switch to using Int.bitWidth (by @lorentey) - #24 Mark the additional Bool methods as public (by @dfunckt) - #25 build: add a CMake based build for Atomics (by @compnerd) - #26 _AtomicShims: simplify double word setup (by @compnerd) - #28 gitignore: ignore vim swap files (by @compnerd) - #29 Tests: add XCTest manifest for non-SPM based builds (by @compnerd) - #30 Bump required toolchain version to 5.3 (by @lorentey) - #31 Declare Atomics source stable and describe what we consider public API (by @lorentey) - #32 [NFC] Update copyright notices (by @lorentey) Thank you to everyone who contributed to this release!
Atomics 0.0.3
2 years ago
### Fixes - Adds basic support for building with the Swift 5.2 toolchains. - Resolves a warning about the `arm64_32` architecture emitted by swift.org compiler builds.
Atomics 0.0.2
3 years ago
## Changes - On Linux only, support for double-wide atomics is unavailable by default on x86_64 CPUs. To enable double-wide atomic functionality, you have to manually switch on support for the `cmpxchg16b` instruction: ``` $ swift build -Xcc -mcx16 -Xswiftc -DENABLE_DOUBLEWIDE_ATOMICS -c release ``` Code containing `cmpxchg16b` will run on all but the earliest AMD x86_64 CPUs. (You can verify your target CPU supports it by checking that the `cx16` flag is present in /proc/cpuinfo.) - The Swift Atomics test suite now requires `--enable-test-discovery` on non-Apple platforms.
Atomics 0.0.1
3 years ago
Initial release.
apple/swift-http-types 1.0.3
Version-independent HTTP currency types for Swift
โญ๏ธ 812
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift HTTPTypes 1.0.3
6 weeks ago
## Summary Supporting WASI platform. ## What's Changed * Fix package not building for WASI by @MaxDesiatov in https://github.com/apple/swift-http-types/pull/41 * Add Connect-UDP-Listen by @guoye-zhang in https://github.com/apple/swift-http-types/pull/43 **Full Changelog**: https://github.com/apple/swift-http-types/compare/1.0.2...1.0.3
Swift HTTPTypes 1.0.2
13 weeks ago
## Summary Fixing build errors when back deploying to Apple platforms earlier than macOS 10.15, iOS 13, watchOS 6, tvOS 13. ## What's Changed * Stop using opaque return types to resolve build error by @gwynne in #38 **Full Changelog**: https://github.com/apple/swift-http-types/compare/1.0.1...1.0.2
Swift HTTPTypes 1.0.1
13 weeks ago
## Summary Several minor performance improvements. ## What's Changed * Remove @_implementationOnly #34 * Eliminate the allocation of single element arrays #33 * Improve the performance of setting and parsing status code #37 **Full Changelog**: https://github.com/apple/swift-http-types/compare/1.0.0...1.0.1
Swift HTTPTypes 1.0.0
23 weeks ago
Initial stable release
apple/swift-driver swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
Swift compiler driver reimplementation in Swift
โญ๏ธ 764
๐Ÿ•“ 22 hours ago
iOS macOS
apple/swift-metrics 2.4.1
Metrics API for Swift
โญ๏ธ 607
๐Ÿ•“ 36 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2.4.1
36 weeks ago
## What's Changed * add increment and decrement public API to Meter by @tomerd in https://github.com/apple/swift-metrics/pull/132 **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.4.0...2.4.1
2.4.0
40 weeks ago
## What's Changed * Update CI by @yim-lee in https://github.com/apple/swift-metrics/pull/124 * Use UUID instead of NSUUID in MetricsTests by @fabianfett in https://github.com/apple/swift-metrics/pull/126 * Add Package.resolved to .gitignore by @fabianfett in https://github.com/apple/swift-metrics/pull/125 * add "meter" - a new type of metric and metric handler by @tomerd in https://github.com/apple/swift-metrics/pull/123 * Use the MetricsTestKit in the MetricsTests rather than using a copy of the TestMetrics utilities by @hamzahrmalik in https://github.com/apple/swift-metrics/pull/128 * MetricsTestKit: expose all metrics publicly. This allows users to run checks on counters when they might not know the exact label by @hamzahrmalik in https://github.com/apple/swift-metrics/pull/127 * Make 'values' on TestCounter, TestRecorder and TestMeter public by @hamzahrmalik in https://github.com/apple/swift-metrics/pull/129 ## New Contributors * @hamzahrmalik made their first contribution in https://github.com/apple/swift-metrics/pull/128 **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.3.4...2.4.0
2.3.4
1 year ago
## What's Changed * Propagate displayUnit when using MultiplexMetricsHandler by @gjcairo in https://github.com/apple/swift-metrics/pull/122 ### CI updates * Add CI for Swift 5.8 and update nightly to Ubuntu 22.04 by @yim-lee in https://github.com/apple/swift-metrics/pull/121 ## New Contributors * @gjcairo made their first contribution in https://github.com/apple/swift-metrics/pull/122 - thank you! **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.3.3...2.3.4
2.3.3
1 year ago
## What's Changed * Make `MetricsFactory` Sendable by @fabianfett in https://github.com/apple/swift-metrics/pull/116 * +docc prepare for docc publishing by @ktoso in https://github.com/apple/swift-metrics/pull/118 * Add .spi.yml for Swift Package Index DocC support by @yim-lee in https://github.com/apple/swift-metrics/pull/119 **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.3.2...2.3.3
2.3.2
1 year ago
## What's Changed * better abstration for MetricsSystem state by @tomerd in https://github.com/apple/swift-metrics/pull/112 * adopt sendable by @tomerd in https://github.com/apple/swift-metrics/pull/109 * Remove testable import from TestMetrics. by @fabianfett in https://github.com/apple/swift-metrics/pull/113 **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.3.1...2.3.2
2.3.1
1 year ago
## What's Changed * Expose `MetricsTestKit` as a product by @fabianfett in https://github.com/apple/swift-metrics/pull/111 ## New Contributors * @fabianfett made their first contribution in https://github.com/apple/swift-metrics/pull/111 **Full Changelog**: https://github.com/apple/swift-metrics/compare/2.3.0...2.3.1
2.3.0
1 year ago
- https://github.com/apple/swift-metrics/pull/106 Introduced new `MetricsTestKit` module that allows asserting certain metrics have been emitted etc. - we will provide more documentation soon; meanwhile you can use this test as reference for how to use the testkit here's how one uses it for those curious https://github.com/apple/swift-cluster-membership/blob/main/Tests/SWIMTests/SWIMMetricsTests.swift
2.2.0
2 years ago
New addition allowing for floating point counters. This API will be right away supported by SwiftPrometheus, other libs may follow. ## SemVer Minor ### New API: - Add `FloatingPointCounter` which allows reporting floating point metrics when necessary. Thanks @rauhul!
2.1.1
3 years ago
A minor new API to enable SystemMetrics from the new swift-metrics-extras (coming soon) repository. # SemVer Minor New API: - Expose `MetricsSystem.withWriterLock`so it can be invoked by alternate "bootstrap" functions, such as SystemMetrics; https://github.com/apple/swift-metrics/pull/86 Thanks @MrLotU ! --- For details on the changes please refer to the [0.2.1 milestone](https://github.com/apple/swift-metrics/milestone/14?closed=1)
3 years ago
# SemVer Minor New API: - `Timer.recordInterval(since:)` for easier reporting of time since a "start" `DispatchTime` https://github.com/apple/swift-metrics/pull/83 - thank you @slashmo! # SemVer Patch - Metrics now include their labels when printed to ease debugging https://github.com/apple/swift-metrics/pull/82 --- For details on the changes please refer to the [0.2.1 milestone](https://github.com/apple/swift-metrics/milestone/11?closed=1)
linux macOS iOS
apple/swift-distributed-actors 1.0.0-beta.3
Peer-to-peer cluster implementation for Swift Distributed Actors
โญ๏ธ 562
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.0.0-beta.3
1 year ago
## Highlights This release fixes a number of bugs preventing stable usage of the beta.2 release in a long running cluster (https://github.com/apple/swift-distributed-actors/pull/1059). It also performs a number of destructive renames while we still have the ability to do so. - **Module rename (!)** The `DistributedActors` module has been renamed to `DistributedCluster` as it explains more precisely what this module is offering (the `ClusterSystem`) type. - The `Node` and `UniqueNode` types have been changed to `Cluster.Endpoint` and `Cluster.Node` respectively. See https://github.com/apple/swift-distributed-actors/pull/1077 for a more detailed explanation. Internally we also adopted a new integration testing framework - offering MultiNode tests. This multi node testing framework will initially be matured internally before making it available to users outside the package. https://github.com/apple/swift-distributed-actors/pull/1055 ## What's Changed * Convert SWIMActorShell to distributed actor by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/977 * =reception immediately flush already known regs to a listing by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1049 * =reception prevent receptionist strong retaining actors by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1050 * Rewrite SWIMActor.sendPingRequests to use Swift concurrency by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1052 * New multi-node infrastructure for integration tests by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1055 * =receptionist Fix receptionist crash on concurrent registrations; those are fine and expected by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1059 * Correct typos in documentation by @PeterAdams-A in https://github.com/apple/swift-distributed-actors/pull/1065 * =build workaround for SwiftPM not allowing people to consume current `main` by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1067 * Fix typo: Lifecycle example by @MaximBazarov in https://github.com/apple/swift-distributed-actors/pull/1069 * =build fix how we declare the multi-node plugin by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1068 * =doc explain waiting for joined nodes better, fix link #1070 by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1072 * Rename DistributedActors -> DistributedCluster module by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1071 * Fix overflow in TimeSpec addition on 32-bit architectures by @orobio in https://github.com/apple/swift-distributed-actors/pull/1074 * !all node renames: node -> endpoint; unique node -> node by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1077 * -test remove known flaky test of unsupported feature by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1079 ## New Contributors * @PeterAdams-A made their first contribution in https://github.com/apple/swift-distributed-actors/pull/1065 * @MaximBazarov made their first contribution in https://github.com/apple/swift-distributed-actors/pull/1069 * @orobio made their first contribution in https://github.com/apple/swift-distributed-actors/pull/1074 **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/1.0.0-beta.2...1.0.0-beta.3
0.7.1
1 year ago
This release is primarily aimed at supporting Swift 5.7 - due to the updated Swift syntax dependency. ## What's Changed * Add Swift 5.7 support to legacy release/0.x branch. by @mrstegeman in https://github.com/apple/swift-distributed-actors/pull/1062 **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/0.7.0...0.7.1
1.0.0-beta.2
1 year ago
This beta release marks major improvements in all surface APIs and completes most of the public surface move to distributed actors and async await. We also added more documentation and will continue adding more examples and guides about using and deploying distributed actor clusters. A few API changes may still happen like making more methods async etc. ## Documentation Latest beta documentation is hosted on [github pages](https://apple.github.io/swift-distributed-actors/1.0.0-beta.2/documentation/distributedactors). ## Milestone The [1.0.0-beta.2](https://github.com/apple/swift-distributed-actors/milestone/32?closed=1) milestone contains all closed issues for your reference. ## What's Changed * Make sure to cancel listing when task is cancelled by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/966 * Receptionist should flush registrations in order by version by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/967 * Update receptionist tests by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/968 * Make ClusterControl.membershipSnapshot async property by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/969 * Add API to 'await joining cluster' by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/972 * Safer lifecycle watch api by @ktoso in https://github.com/apple/swift-distributed-actors/pull/961 * =docker Fix 5.7 docker image name by @ktoso in https://github.com/apple/swift-distributed-actors/pull/974 * Codable improvements for ActorID tags by @ktoso in https://github.com/apple/swift-distributed-actors/pull/915 * !context store lifecycle in DistributedActorContext; internal only by @ktoso in https://github.com/apple/swift-distributed-actors/pull/976 * fix wrong cross module usage; seems this was not caught by CI / SwiftPM by @ktoso in https://github.com/apple/swift-distributed-actors/pull/981 * Use #filePath instead of #file by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/984 * update swift tools version and required apple platforms by @JaapWijnen in https://github.com/apple/swift-distributed-actors/pull/982 * Fix #filePath related warnings by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/985 * Use AsyncTimerSequence from swift-async-algorithms by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/986 * Implement setting actor metadata with property wrapper fields by @ktoso in https://github.com/apple/swift-distributed-actors/pull/988 * Dead letter when remote call target is dead by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/989 * Add ability to watch distributed actor with TestProbe by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/991 * Silence OpLogDistributedReceptionist.sendAckOps timeout logs by @PopFlamingo in https://github.com/apple/swift-distributed-actors/pull/996 * Use correct error type for timeout error silencing by @PopFlamingo in https://github.com/apple/swift-distributed-actors/pull/997 * Remove all instances of AskResponse.wait() use by @ruslanskorb in https://github.com/apple/swift-distributed-actors/pull/998 * Fix logging level setting issue by @PopFlamingo in https://github.com/apple/swift-distributed-actors/pull/1003 * Implement ActorSingleton for DistributedActor by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/980 * Support seed nodes by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1005 * Remove unused LamportClock type by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1007 * Skip flaky test: ClusterLeaderActionsClusteredTests.test_singleLeader by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1008 * Make installSwiftBacktrace public before we remove it by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1006 * Implement generic distributed actor method call by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1013 * Change generic EventStream<Event> to ClusterEventStream and convert to actor by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1012 * Address remaining feedback in #1012 by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1015 * Distributed Actor support in Cluster Singleton by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1010 * Add .devcontainer by @PopFlamingo in https://github.com/apple/swift-distributed-actors/pull/995 * Hide VersionVector by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1023 * Avoid errors in old toolchains, add to-be-removed convenience keyword by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1026 * Make remote call errors configurable by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1020 * Make public enums into structs or hide them (part 1) by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1025 * Final polish and docs for singleton by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1022 * Improve old betas compatibility by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1029 * Make public enums into structs or hide them (part 2) by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1028 * -build remove toy "exec app" app by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1033 * =receptionist lookup() trying to cast stub actor by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1032 * Make public enums into structs or hide them (part 3 - final) by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/1037 * -jazzy remove jazzy; we're only using docc now by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1038 * [docc] Fail soundness on docc warnings (bad links), fix a few warnings by @ktoso in https://github.com/apple/swift-distributed-actors/pull/1027 ## New Contributors * @JaapWijnen made their first contribution in https://github.com/apple/swift-distributed-actors/pull/982 * @ruslanskorb made their first contribution in https://github.com/apple/swift-distributed-actors/pull/998 Thank you to all contributors! **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/1.0.0-beta.1.1...1.0.0-beta.2
1.0.0-beta.1.1
1 year ago
## Require macOS 13 / iOS 16 With macOS 13 beta announced, we're able to express the minimum deployment targets in Package.swift and allow developers to use this library without the `-disable-availability-checking` flags. Use macOS 13 Ventura and Xcode 14.0 beta to build this project, and develop using distributed actors ๐ŸŽ‰ ## What's Changed * Implement remoteCall without ask actors by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/956 * More API and documentation cleanups by @ktoso in https://github.com/apple/swift-distributed-actors/pull/954 * Deprecations by @ktoso in https://github.com/apple/swift-distributed-actors/pull/960 * Use Swift's time types by @yim-lee in https://github.com/apple/swift-distributed-actors/pull/962 * Remove unused LamportClock type by @ktoso in https://github.com/apple/swift-distributed-actors/pull/963 * Remove -disable-availability-checking, Swift 5.7 is part of Xcode 14.0 and has right availabilities now by @ktoso in https://github.com/apple/swift-distributed-actors/pull/964 **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/1.0.0-beta.1...1.0.0-beta.1.1
1.0.0-beta.1
1 year ago
### First Beta This is the first beta release of the distributed actors and cluster library. ### Supported features - a `ClusterSystem` implementation, enabling clustered `distributed actor` instances, - cluster events `system.cluster.events`, i.e. nodes joining, becoming down and leaving, - observe actor lifecycle and termination with `LifecycleWatch`, - a cluster-wide `DistributedReceptionist` implementation enabling actor discovery, - and more! Refer to the [reference documentation]() for more details
0.7.0
1 year ago
Support Swift and Swift Syntax 5.6 The upcoming Swift 5.7 release will not be supported on the release/0.x branch and we will move on towards the language provided distributed actor features. ## What's Changed * Add Swift 5.6 support. by @mrstegeman in https://github.com/apple/swift-distributed-actors/pull/870 * 0.x CI setup by @tomerd in https://github.com/apple/swift-distributed-actors/pull/871 * Adapt codebase for Swift 5.6 release version by @segabor in https://github.com/apple/swift-distributed-actors/pull/876 ## New Contributors * @mrstegeman made their first contribution in https://github.com/apple/swift-distributed-actors/pull/870 * @segabor made their first contribution in https://github.com/apple/swift-distributed-actors/pull/876 **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/0.6.10...0.7.0
0.6.10
2 years ago
## What's Changed * Down replaced cluster members by @budde in https://github.com/apple/swift-distributed-actors/pull/867 **Full Changelog**: https://github.com/apple/swift-distributed-actors/compare/0.6.9...0.6.10
0.6.8
2 years ago
#### Minor - adjust for Swift 5.5
0.6.7
2 years ago
### Patch - Fix building in release mode in Swift 5.4 - Update some code that was causing warnings / errors
0.6.6
2 years ago
- Fix and add debugging fir metrics which may crash with underflow https://github.com/apple/swift-distributed-actors/issues/802 Thanks @budde - Fix 5.4 builds - update service discovery to 1.0 More details: https://github.com/apple/swift-distributed-actors/milestone/22?closed=1
iOS macOS watchOS tvOS
apple/swift-nio-http2 1.30.0
HTTP/2 support for SwiftNIO
โญ๏ธ 446
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO HTTP/2 1.30.0
6 weeks ago
### SemVer Minor - Reduce sendability warnings (#417) ### SemVer Patch - Mark public generic async methods inlinable (#426) - Use explicit 64-bit UInt64 to support 32-bit platforms (#430) - Remove precondition: yielding to terminated AsyncSequence (#432) ### Other Changes - Add missing availability guards in tests (#429) - Fix Bench1Conn10kRequests crash (#434)
1.29.0
18 weeks ago
### New async APIs (former AsyncChannel SPI) - Add new async and typed HTTP/2 APIs (#424) ### SemVer Minor - Bump minimum Swift version to 5.7 (#420) ### Other Changes - Remove retroactive `CustomDebugStringConvertible` conformance in tests (#425)
SwiftNIO HTTP/2 1.28.1
20 weeks ago
### SemVer Patch - DOSHeuristics DeadlineClock more explicit on 5.6 (#422)
SwiftNIO HTTP/2 1.28.0
21 weeks ago
### SemVer Minor - Limit rate of permitted RST frames (3798fe5f1564f27461390b4f6163f6ddfb21fd2d) ### SemVer Patch - Replace os() with canImport(Darwin) (#399, patch credit to @brennobemoura) - Fix parent channel `read()` call on `HTTP2StreamChannel` initialization causing incorrect order of inbound `HTTP2Frame`s (#413, patch credit to @qusc) - Generic helpers for HTTP/2 async pipelines (#401) - Inline http2 fixups (#402) - H2 stream AsyncIterator non-sendable on 5.7 (#405) - Delay stream creation until the next loop tick (#416) ### Other Changes - Update allocation limits (#400) - HTTP/2 pipeline NIOAsyncChannel pipeline changes (#403) (#406) (#407) (#408) (#409) (#411) (#414) (#415) (#419)
SwiftNIO HTTP/2 1.27.0
39 weeks ago
### SemVer Minor - Drop support for Swift 5.5 (#392) - Add `HPACKHeader.removeAll(keepingCapacity:)` (#393) ### SemVer Patch - Fix the test for `HPACKHeader.removeAll(keepingCapacity:)` on Android (#395, patch credit to @finagolfin) - Use the synchronous `NIOHTTP2Handler` multiplexer accessor for synchronous channel operations (#396) ### Other Changes - Update the allocation counts CI build script to drop support for Swift 5.5 and add Swift 5.9 (#397)
SwiftNIO HTTP/2 1.26.0
46 weeks ago
### SemVer Minor - Integrate the multiplexer into the `NIOHTTPHandler` (#377, #379, #380, #381, #382, #383, #384, #386) ### SemVer Patch - Avoid an allocation in the outbound frame buffer (#385) - Replace `estimatedFrameSize` with `flowControlledSize` and only count DATA frames (#387, #388) ### Other Changes - Make soundness check aware of 2023 (#378) - Add regression testing for docs and fix the issues. (#389) - Add docker-compose file for Swift 5.9 (#390)
SwiftNIO HTTP/2 1.25.2
1 year ago
### SemVer Patch - Soften errors when seeing inactive before active (#376)
SwiftNIO HTTP/2 1.25.1
1 year ago
### SemVer Patch - Correctly respect changes to HEADER_TABLE_SIZE (#374)
SwiftNIO HTTP/2 1.25.0
1 year ago
### SemVer Minor - Ensure that we fire channelActive and channelInactive in order (#373) ### SemVer Patch - Better handle writes issued with already completed promises (#372)
SwiftNIO HTTP/2 1.24.1
1 year ago
### SemVer Patch - Content-Length errors shouldn't crash (#371)
apple/swift-tools-support-core swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
Contains common infrastructural code for both SwiftPM and llbuild.
โญ๏ธ 391
๐Ÿ•“ 22 hours ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.6.1
24 weeks ago
## What's Changed * Fix platform conditions in `Package.swift` by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/431 **Full Changelog**: https://github.com/apple/swift-tools-support-core/compare/0.6.0...0.6.1
0.6.0
24 weeks ago
## What's Changed * Fix iOS/tvOS/watchOS build by adding missing availability annotations by @jakepetroules in https://github.com/apple/swift-tools-support-core/pull/394 * Add async overloads of withTemporaryFile and withTemporaryDirectory by @jakepetroules in https://github.com/apple/swift-tools-support-core/pull/396 * TSCUtility/Triple.swift: fix comment typo by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/397 * Fix JSONMessageStreamingParser error message formatting by @tristanlabelle in https://github.com/apple/swift-tools-support-core/pull/398 * Potential workaround for a CI issue by @neonichu in https://github.com/apple/swift-tools-support-core/pull/404 * TSCBasic: handle empty paths in `WindowsPath(validatingRelativePath:)` by @compnerd in https://github.com/apple/swift-tools-support-core/pull/403 * Make `FileSystem` and conforming types as `Sendable` by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/402 * TSCUtility: deprecate `Triple` type by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/399 * FileSystem: make all classes `final` to fix `Sendable` errors by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/406 * TSCBasic: deprecate `localFileSystem` setter by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/401 * Update CODEOWNERS by @neonichu in https://github.com/apple/swift-tools-support-core/pull/405 * refactor RelativePath to allow late stage canonicalization in support of windows by @tomerd in https://github.com/apple/swift-tools-support-core/pull/369 * TSCBasic: remove uses of `any` from `FileSystem.swift` by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/407 * address deprecation warnings by @tomerd in https://github.com/apple/swift-tools-support-core/pull/409 * TSCBasic: make `LocalFileSystem` a struct by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/410 * Add `hasQuarantineAttribute` to `FileSystem` by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/411 * Update resolved file by @neonichu in https://github.com/apple/swift-tools-support-core/pull/417 * TSCBasic: deprecate `<<<` operator by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/413 * mark several FileSystem APIs as disfavored overloads by @tomerd in https://github.com/apple/swift-tools-support-core/pull/418 * TSCBasic: fix compatibility with Swift 5.5 by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/415 * Change `hasQuarantineAttribute(_:)` to `hasAttribute(_:_:)` by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/414 * Update requirements in `Package.swift` to match SwiftPM by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/416 * Add `async` overloads of `withLock` for FS I/O by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/420 * README.md: add deprecation notice by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/421 * TSCBasic: normalise the drive letter spelling on Windows by @compnerd in https://github.com/apple/swift-tools-support-core/pull/422 * Add support for Musl libc by @MaxDesiatov in https://github.com/apple/swift-tools-support-core/pull/423 * TSCBasic: honour `workingDirectory` on Windows' `Process` management by @compnerd in https://github.com/apple/swift-tools-support-core/pull/424 * SemVer works: swift-system is API stable, no need to conflict unnecesโ€ฆ by @weissi in https://github.com/apple/swift-tools-support-core/pull/425 * TSCTestSupport: account for `:` in function names by @compnerd in https://github.com/apple/swift-tools-support-core/pull/426 * [FileSystem] Add API for obtaining item replacement directory by @neonichu in https://github.com/apple/swift-tools-support-core/pull/427 * Use `URL.resourceValues()` for symlink detection by @neonichu in https://github.com/apple/swift-tools-support-core/pull/428 * Add more context to malformed JSON errors by @neonichu in https://github.com/apple/swift-tools-support-core/pull/429 ## New Contributors * @tristanlabelle made their first contribution in https://github.com/apple/swift-tools-support-core/pull/398 **Full Changelog**: https://github.com/apple/swift-tools-support-core/compare/0.5.1...0.6.0
49 weeks ago
1 year ago
1 year ago
1 year ago
1 year ago
0.4.0
1 year ago
0.2.7
1 year ago
0.3.0
1 year ago
iOS macOS linux windows
apple/swift-nio-ssl 2.26.0
TLS Support for SwiftNIO, based on BoringSSL.
โญ๏ธ 380
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO SSL 2.26.0
6 weeks ago
### SemVer Minor - Add support for shrinking massive ByteBufferBIOs (#443) - Bump minimum Swift version to 5.7 (#445) ### SemVer Patch - fclose fix for linux-glibc 2.38 (#448, patch credit to @Saljooq) - Android: update Bionic declarations for nullability annotations added in NDK 26 (#449, patch credit to @finagolfin) - Changes to support building with Musl. (#450, patch credit to @al45tair) - Define _DARWIN_C_SOURCE on Darwin to fix the build in Xcode. (#451, patch credit to @al45tair) - Update BoringSSL to 3309ca66385ecb0c37f1ac1be9f88712e25aa8ec (#446) ### Other Changes - Update Apple.com cert (#447) - Add cxx interop build pipeline (#454) - Update expired apple.com certificates (#455)
SwiftNIO SSL 2.25.0
28 weeks ago
### SemVer Minor - `NIOSSLHandler`: behave sensibly on `close(mode: .output)` (#428) ### SemVer Patch - Use #if canImport(Darwin) where possible (#435) - Bump minimum NIO version to 2.54.0 to fix test crashes (#442) ### Other Changes - Skipping testNotValidAfter on 32-bit platform (#426, patch credit to @bharsaklemukesh975) - Use EVP_PKEY_assign_RSA instead of EVP_PKEY_assign (#434, patch credit to @davidben) - Fix expired test certs (#441) - Update leaf cert used in tests (#431) - Adopt the Swift CoC (#433) - UnwrappingTests use own class member cert values (#437)
SwiftNIO SSL 2.24.0
44 weeks ago
### SemVer Minor - Drop Swift 5.5 (#425) ### SemVer Patch - Use underscore version of `NIOPreconcurrencySendable` to silence warning (#427)
SwiftNIO SSL 2.23.1
46 weeks ago
### SemVer Patch - Update BoringSSL to abfd5ebc87ddca0fab9fca067c9d7edbc355eae8 (#424) ### Other Changes - Use #fileID/#filePath instead of #file (#408) - Add .spi.yml for Swift Package Index DocC support (#410) - Add Swift 5.8 CI and update nightly CI to Ubuntu 22.04 (#415) - Point docs to Swift Package Index (#416) - Remove Jazzy doc generation (#417) - Fix the docs and add infrastructure for CI-ing it (#422) - Add docker-compose file for Swift 5.9 (#423)
SwiftNIO SSL 2.23.0
1 year ago
### SemVer Minor - Raise minimum supported Swift version from 5.4 to 5.5 (#401) - Remove `Package.swift` for Swift 5.4 (#403) ### SemVer Patch - Replace Lock with NIOLock (#400) - Update BoringSSL to cab31f65f1ad6e6daca62e95b25dd6cd805fce0b (#402) - Update BoringSSL to b819f7e9392d25db6705a6bd3c92be3bb91775e2 (#406) ### Other Changes - Remove `#if compiler(>=5.5)` (#404) - Replace `NIOSendable` with `Sendable` (#405)
SwiftNIO SSL 2.22.1
1 year ago
### SemVer Patch - Update BoringSSL to 8462a367bb57e9524c3d8eca9c62733c63a63cf4 (#399) ### Other Changes - Remove giant write test (#398)
SwiftNIO SSL 2.22.0
1 year ago
### SemVer Minor - Adopt `Sendable` (#391, #392, #395, #397) ### SemVer Patch - Store internal error file and line number information in error wrappers (#393) ### Other Changes - Use DocC for documentation (#390) - Update expired certs for CA name test. (#394) - Validate missing imports in CI (#396)
SwiftNIO SSL 2.21.0
1 year ago
### SemVer Minor - Add TLS-PSK Support (#369, patch credit to @agnosticdev) ### SemVer Patch - Tolerate massive writes (#384, #385) - Add sendCANameList to best effort functions. (#386) ### Other Changes - Update the expired leaf certificate (#383) - Invoke `additionalPeerCertificateVerificationCallback` with peer certificate (#387) - Make `NIOSSLCertificate._subjectAlternativeNames()` return type non-optional (#389)
SwiftNIO SSL 2.20.2
1 year ago
### SemVer Patch - Unbuffer reads after handshake (#379)
SwiftNIO SSL 2.20.1
1 year ago
### SemVer Patch - Include file path in `IOError`s thrown by `fopen` (#375) - Update BoringSSL to c239ffd0552179f358de31517391679e9b62ccd3 (#378) ### Other Changes - Use the 5.7 nightlies (#371) - Remove `try` from Server Example in README.md (#372) - Update BoringSSL vendor for Apple Silicon (#374)
apple/swift-nio-ssh 0.8.0
SwiftNIO SSH is a programmatic implementation of SSH using SwiftNIO
โญ๏ธ 365
๐Ÿ•“ 32 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO SSH 0.8.0
32 weeks ago
### SemVer Minor - Fully adopt `Sendable` (#151) ### SemVer Patch - Fixes client mode version parsing (#153)
SwiftNIO SSH 0.7.1
35 weeks ago
### SemVer Patch - Use #if canImport(Darwin) where possible (#148) - Correctly resize ByteBuffers (#150) ### Other Changes - Update allocation limits (#149)
SwiftNIO SSH 0.7.0
39 weeks ago
### SemVer Minor - Drop Swift 5.5 support. (#140) ### SemVer Patch - Avoid sending window update messages if the connection is locally closed (#143) (#144, patch credit to @gaetanzanella) ### Other Changes - Add Android support (#134, patch credit to @finagolfin) - Update allocation counts (#135, #138) - Fix documentation and add support for CI-ing it (#137) - Add a docker-compose file for Swift 5.9 (#139) - Update the allocation counts CI build script to drop support for Swift 5.5 and add Swift 5.9 (#146)
SwiftNIO SSH 0.6.1
1 year ago
### SemVer Patch - Remove some data-path CoW (#131) - Improve Sealed Box construction (#132) ### Other Changes - fix lost file handle error (#129, patch credit to @maartene) - Add Swift 5.8 CI and update nightly CI to Ubuntu 22.04 (#128) - Add initial allocation counter tests for SSH (#130) - Remove Jazzy doc generation (#133)
SwiftNIO SSH 0.6.0
1 year ago
### SemVer Minor - Serialise SSH Public Key (#127) ### Other Changes - Add .spi.yml for Swift Package Index DocC support (#126)
SwiftNIO SSH 0.5.0
1 year ago
### SemVer Minor - Adds support for custom transport protection algorithms (#97) - Raise minimum supported Swift version from 5.4 to 5.5 (#121) - Replace `NIOSSHSendable` with `Sendable` and remove it (#122) - Refactoring of the encryptPacket method (#123) ### Other Changes - Validate missing imports in CI (#120) - Use #fileID/#filePath instead of #file (#124)
SwiftNIO SSH 0.4.1
1 year ago
### SemVer Patch - Use `swift-atomics` instead of `NIOAtomics` (#117) ### Other Changes - Use 5.7 nightlies (#115) - Use Docc for documentation (#118)
SwiftNIO SSH 0.4.0
1 year ago
### SemVer Minor - Feature/userauth banners (#98, patch credit to @DominikHorn) - Add `PeerMaximumMessageLength` option for SSH child channels. (#101, patch credit to @gwynne) - Adopt `Sendable` on our public types (#106) - Drop support for Swift 5.2 and 5.3 (#113) ### SemVer Patch - Generate up to 8 random padding bytes at a time instead of 4 (#100, patch credit to @gwynne) - Support identification string without carriage return (#109, patch credit to @orobio) - fixes an issue where decodeFirstBlock can be called multiple times (#102) - Import concrete NIO modules (#105) ### Other Changes - Add 5.6 nightly CI. (#103, #104) - Add API breakages script from NIO (#111) - Fix warnings, that appeared after requiring Swift 5.4 (#114)
SwiftNIO SSH 0.3.3
2 years ago
### SemVer Patch - Fix crash sending window increment after close (#95) ### Other Changes - Clean up incorrect comments and test behaviour (#96)
SwiftNIO SSH 0.3.2
2 years ago
### SemVer Patch - Fix doc generation and jazzy version (#92) - Widen the pin on Crypto. (#93) ### Other Changes - Update to Swift 5.5 release in CI (#91)
iOS macOS watchOS tvOS
apple/example-package-dealer 2.0.0
Example package for use with the Swift Package Manager
โญ๏ธ 320
๐Ÿ•“ 19 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift 4
6 years ago
macOS
apple/swift-collections-benchmark 0.0.3
A benchmarking tool for Swift Collection algorithms
โญ๏ธ 316
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.0.3
1 year ago
This is a minor maintenance release fixing filename-related issues on Windows systems and bumping dependencies to the latest stable versions. ### Pull requests - https://github.com/apple/swift-collections-benchmark/pull/9 Make Paths Windowsโ€Compatible (by @SDGGiesbrecht) - https://github.com/apple/swift-collections-benchmark/pull/10 [library render]: Sanitize generated filenames (by @lorentey) - https://github.com/apple/swift-collections-benchmark/pull/13 Correct benchmark typo (by @mdznr) - https://github.com/apple/swift-collections-benchmark/pull/14 Bring dependencies to source-stable versions (by @WowbaggersLiquidLunch) - https://github.com/apple/swift-collections-benchmark/pull/16 Bump dependencies to latest revisions (by @lorentey) Full patch: https://github.com/apple/swift-collections-benchmark/compare/0.0.2...0.0.3 Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
0.0.2
2 years ago
### Additions - The package now comes with a sample benchmark in the [`Documentation/Example`](https://github.com/apple/swift-collections-benchmark/tree/main/Documentation/Example) directory. (https://github.com/apple/swift-collections-benchmark/pull/6) ### Fixes - Swift Collections Benchmark now works more reliably on platforms with lower resolution timers (https://github.com/apple/swift-collections-benchmark/issues/4) - Resolved a build issue when building the package on iOS, watchOS and tvOS platforms. (https://github.com/apple/swift-collections-benchmark/issues/5) ### Source incompatible changes Note: Existing benchmark definitions created for 0.0.1 will continue to work without changes in this release. The package is no longer using `CGFloat`, `CGPoint`, `CGSize`, `CGRect` and `AffineTransform` in its public API; these types have been replaced with `Double`, `Point`, `Vector`, `Rectangle` and `Transform`, respectively. This change only affects the charting APIs (including option structs such as `Theme`); it doesn't affect benchmark definitions. (We also kept serialization formats compatible with the 0.0.1 release.) The `BenchmarkResults.Point` type has been renamed `Measurement`, with a deprecated typealias put in place for the original name. ### Pull requests (You can also find a full list of issues resolved and PRs merged in this release by looking at the [0.0.2 milestone](https://github.com/apple/swift-collections-benchmark/issues?q=milestone:0.0.2).) * #2: Update README.md (by @stephencelis) * #3: [Timer] Round zero measurements to the resolution of the timer (by @lorentey) * #6: Example for docs (by @heckj) * #8: Stop using CG types outside renderers (by @lorentey) Thank you to everyone who contributed to this release! Your bug reports, discussions and pull requests all help improve this package.
0.0.1
2 years ago
This is the initial release.
apple/example-package-playingcard 3.0.5
Example package for use with the Swift Package Manager
โญ๏ธ 308
๐Ÿ•“ 48 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5 years ago
5 years ago
Swift 4
6 years ago
7 years ago
apple/indexstore-db swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
Index database library for use with sourcekit-lsp
โญ๏ธ 300
๐Ÿ•“ Yesterday
linux
apple/swift-docc-plugin 1.3.0
Swift Package Manager command plugin for Swift-DocC
โญ๏ธ 295
๐Ÿ•“ 36 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift-DocC-Plugin 1.3.0
36 weeks ago
### What's Changed - Documentation for [Swift symbols that extend other modules](https://apple.github.io/swift-docc-plugin/documentation/swiftdoccplugin/generating-documentation-for-extended-types) is now included **by default** when building with **Swift 5.9 or later**. To exclude external types when building Swift 5.9 or later, you can pass the new `--exclude-extended-types` flag: ```shell swift package generate-documentation --exclude-extended-types --target [target-name] ``` --- The `1.3.0` release includes contributions from @theMomax. Thank you!
Swift-DocC-Plugin 1.2.0
51 weeks ago
### What's Changed - You can now generate documentation that includes [Swift symbols that extend other modules](https://forums.swift.org/t/document-extensions-to-external-types-using-docc/56060) when building with **Swift 5.8 or later**. This is an opt-in feature that can be used by passing the `--include-extended-types` flag: ```shell swift package generate-documentation --include-extended-types --target [target-name] ``` - You can now generate documentation that excludes compiler synthesized symbols provided by default implementations of protocol requirements. This is an opt-in, experimental feature that can used by passing the `--experimental-skip-synthesized-symbols` flag: ```shell swift package generate-documentation --experimental-skip-synthesized-symbols --target [target-name] ``` --- The `1.2.0` release includes contributions from @finestructure, @sofiaromorales, and @theMomax. Thank you!
Swift-DocC Plugin 1.1.0
51 weeks ago
### What's Changed - You can now generate documentation that includes [Swift Snippets](https://github.com/apple/swift-evolution/blob/main/proposals/0356-swift-snippets.md) when building with **Swift 5.7 or later**. --- The `1.1.0` release includes contributions from @A-N-uraag, @bitjammer, @compnerd, @denil-ct, @ethan-kusters, @franklinsch, @sofiaromorales, and @SRowley90. Thank you!
Swift-DocC Plugin 1.0
1 year ago
Initial release.
macOS
apple/swift-llbuild2 0.18.1
A fresh take on a low-level build system API.
โญ๏ธ 280
๐Ÿ•“ 16 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
16 weeks ago
16 weeks ago
0.17.7
1 year ago
1 year ago
1 year ago
0.17.4
1 year ago
0.17.3
1 year ago
0.17.2
1 year ago
0.17.1
1 year ago
0.17.0
1 year ago
macOS
apple/swift-nio-transport-services 1.20.1
Extensions for SwiftNIO to support Apple platforms as first-class citizens.
โญ๏ธ 271
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO Transport Services 1.20.1
6 weeks ago
### SemVer Patch - Stop using deprecated API and add missing availability guards (#193) ### Other Changes - Make tests less flaky (#194) - Fix availability guards and compiler warnings (#195) - Fix build on watchOS (#196)
SwiftNIO Transport Services 1.20.0
18 weeks ago
### New async APIs (former AsyncChannel SPI) - Add new typed async bootstrap APIs back (#191) ### SemVer Minor - Bump minimum Swift version to 5.7 (#189) ### SemVer Patch - Fix a typo when casting the `allowLocalEndpointReuse` channel option value (#186, patch credit to @AgentFeeble) - Fire the pipelines error caught method when `NWConnection`'s state changes to failed (#187, patch credit to @Cartisim) ### Other Changes - Avoid race in datagram tests (#185)
SwiftNIO Transport Services 1.19.0
29 weeks ago
### SemVer Minor - Add support for UDP clients and servers. (#176, patch credit to @Joannis)
SwiftNIO Transport Services 1.18.0
29 weeks ago
### SemVer Minor - Provide a new singleton event loop group (#180) ### SemVer Patch - Extract the NWConnection code into StateManagedNWConnectionChannel (#174, patch credit to @Joannis) - State Managed Listeners (#175, patch credit to @Joannis) ### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes Important: The SPI(AsyncChannel) has been backed out of this release and will be re-added in a latter release once the SPI has been stabilised as API. - Async methods for `NIOTSListenerBootstrap` and `NIOTSConnectionBootstrap` (#178) - Adopt the `NIOAsyncChannel.Configuration` (#179) - Adopt latest SPI(AsyncChannel) changes (#181, #183) - Fix 5.6 compiler error in SPI(AsyncChannel( (#182) - Back out SPI(AsyncChannel) changes (#184) ### Other Changes - Adopt the Swift CoC (#177)
SwiftNIO Transport Services 1.17.0
44 weeks ago
### SemVer Minor - Drop support for Swift 5.5 (#172) ### SemVer Patch - Use underscore version of `NIOPreconcurrencySendable` to silence warning (#173) ### Other Changes - Add docker-compose file for Swift 5.9 (#170) - Drop Topics section (#171)
SwiftNIO Transport Services 1.16.0
46 weeks ago
### SemVer Minor - Expose multicast service type (#165) ### Other Changes - Use `#fileID`/`#filePath` instead of `#file` (#164) - Add `.spi.yml` for Swift Package Index DocC support (#166) - Point docs to Swift Package Index (#168) - Fix documentation and add infrastructure for CI-ing it (#169) - Add Swift 5.8 CI and update nightly CI to Ubuntu 22.04 (#167)
SwiftNIO Transport Services 1.15.0
1 year ago
### SemVer Minor - Raise minimum supported Swift version from 5.4 to 5.5 (#158) - Remove `#if compiler(>=5.5)` (#161) - Fix Swift 5.5 (#162) - Allow retrieval of metadata from `NWConnection` (#163)
SwiftNIO Transport Services 1.14.1
1 year ago
### SemVer Patch - Add missing availability annotation to NIOTSConnectionBootstrap (#160)
SwiftNIO Transport Services 1.14.0
1 year ago
### SemVer Minor - Adopt `Sendable` (#155) - Allow services to be launched with existing NWConnection or NWListener objects (#156) ### SemVer Patch - Replace Lock with NIOLock (#157)
SwiftNIO Transport Services 1.13.1
1 year ago
### SemVer Patch - Add defensive lifetime management for security metadata (#152) - Use `swift-atomics` instead of `NIOAtomics` (#153) ### Other Changes - Use 5.7 nightlies. (#151) - Use Docc for documentation (#154)
apple/swift-experimental-string-processing swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
An early experimental general-purpose pattern matching engine for Swift.
โญ๏ธ 263
๐Ÿ•“ 23 hours ago
apple/swift-service-discovery 1.3.0
A service discovery API for Swift.
โญ๏ธ 204
๐Ÿ•“ 18 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.3.0
18 weeks ago
## What's Changed * Fix typo in documentation by @fwcd in https://github.com/apple/swift-service-discovery/pull/48 * Require Swift 5.6 by @yim-lee in https://github.com/apple/swift-service-discovery/pull/51 * Fix async discovery cancellation by @fabianfett in https://github.com/apple/swift-service-discovery/pull/50 ## New Contributors * @fwcd made their first contribution in https://github.com/apple/swift-service-discovery/pull/48 **Full Changelog**: https://github.com/apple/swift-service-discovery/compare/1.2.1...1.3.0
1.2.1 Release
33 weeks ago
## What's Changed * Fix running tests on macOS by @yim-lee in https://github.com/apple/swift-service-discovery/pull/40 * DocC setup by @yim-lee in https://github.com/apple/swift-service-discovery/pull/42 and https://github.com/apple/swift-service-discovery/pull/43 * Less racy InMemoryServiceDiscovery by @fabianfett in https://github.com/apple/swift-service-discovery/pull/47 ## New Contributors * @fabianfett made their first contribution in https://github.com/apple/swift-service-discovery/pull/47 **Full Changelog**: https://github.com/apple/swift-service-discovery/compare/1.2.0...1.2.1
1.2.0
2 years ago
Add support for async/await (https://github.com/apple/swift-service-discovery/pull/39)
1.1.0
2 years ago
- Adopt [swift-atomics](https://github.com/apple/swift-atomics) (https://github.com/apple/swift-service-discovery/pull/37) This package now requires Swift >= 5.3.
1.0.0
3 years ago
This release doesn't contain any actual code changes.
0.1.0
3 years ago
apple/swift-cluster-membership 0.3.1
Distributed Membership Protocol implementations in Swift
โญ๏ธ 196
๐Ÿ•“ 6 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.3.1
3 years ago
#### Changes - =fix Small typo in overloaded less-than operator for Node struct - thank you @dustinnewman! - Compiling SWIMNIOExample fails (logs included) -- this was due to a new API that we moved from SWIM's impl to upstream so we now had two definitions of the same API; fixed. - =metrics more precise emitting of pingRequest metrics #### Details Please refer to the [0.3.1 milestone](https://github.com/apple/swift-cluster-membership/milestone/6?closed=1) for a complete list of changes. #### Credits ``` commits added removed 3 1 49 Konrad `ktoso` Malawski 1 51 1 Dustin @dustinnewman 1 0 4 tomer doron ```
0.3.0 - swift-metrics support in SWIM implementation
3 years ago
### New features - the `SWIM.Instance` as well as example NIO implementation now emit metrics using [swift-metrics](https://github.com/apple/swift-metrics) ### Changes - This release includes a single commit since 0.2.0, enabling the metrics support. - There are no wire-compatibility concerns wrt. upgrading to 0.3.0 from 0.2.0 cluster nodes in a rolling upgrade. Please refer to the [0.3.0 milestone](https://github.com/apple/swift-cluster-membership/milestone/4?closed=1) for a complete list of changes. ``` commits added removed 1 1151 26 Konrad `ktoso` Malawski 1 2 1 Tomer Doron ```
0.2.0 Minor SWIM updates
3 years ago
Minor updates and cleanups to the SWIM APIs. Refer to the [0.2.0](https://github.com/apple/swift-cluster-membership/milestone/3?closed=1) milestone for more details.
0.1.0: SWIM implementation
3 years ago
### First release! In the first release we're including an implementation of the SWIM membership protocol. Please refer to <the docs> and <blog post> to learn more about it.
iOS macOS watchOS tvOS linux macOS iOS
apple/swift-certificates 1.2.0
An implementation of X.509 for Swift
โญ๏ธ 195
๐Ÿ•“ 12 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift Certificates 1.2.0
12 weeks ago
### SemVer Minor - Move `ExpressibleByArrayLiteral` conformance of `_TinyArray` to the declaring module (#157) ### SemVer Patch - Simplify the internal representation of `RDN.Attribute.Value` (#156)
Swift Certificates 1.1.0
13 weeks ago
### SemVer Minor - Add Expanded CMS Support (#151, patch credit to @davidzech) - Support loading trust root CAs on Linux (#136) - Support converting RDNAttribute values into Strings (#154) ### Other Changes - build: simplify build rules (NFC) (#152, patch credit to @compnerd) - build: support building in Debug mode on Windows (#153, patch credit to @compnerd) - Add CI pipeline for Swift 5.10 (#145) - Remove note from README about API instability (#149) - Align `swift-format` configuration with other projects (#150)
Swift Certificates 1.0.1
22 weeks ago
This fixes failing checkouts on Windows due to a colon in one of the filenames in this repository. ### SemVer Patch - Rename TinyArray.append benchmark (#142)
Swift Certificates 1.0.0
23 weeks ago
This is the first major release and marks the time `swift-certificates` enters API stability! You can learn more about it in the [announcement forums post](https://forums.swift.org/t/swift-certificates-and-swift-asn-1-1-0-0-released/67500). ### SemVer Minor - Add the `diagnosticCallback` to `CMS.isValidSignature` (#135) - Update to `swift-asn1` `1.0.0` (#140) ### SemVer Patch - Update allowed `swift-crypto` version range to `2.5.0..<4.0.0` (#137) ### Other Changes - Fix typos in Sources and Tests (#133, patch credit to @Sajjon) - Adopt `package-benchmark` (#125) - Parse all WebPKI trust roots in Benchmarks (#138) - Update `swift-format` to `509.0.0` (#139) - Remove Xcode specific benchmark documentation (#141) Thank you very much to everyone who contributed to this release and everyone who tested it!
Swift Certificates 1.0.0-beta.1
27 weeks ago
### SemVer Minor - Added subjectPublicKeyInfoBytes to public keys (#100, patch credit to @Tyler-Keith-Thompson) - Police uniqueness of `Certificate.Extensions` (#84) - Remove the "from parts" Certificate constructor. (#88) - Police uniqueness of `ExtendedKeyUsage` (#90) - Implement remove for `RelativeDistinguishedName` (#92) - Implement property setters of `NameConstraints` (#94) - Do not allocate for `RelativeDistinguishedName`s with just a single attribute (#101) - Use #if canImport(Darwin) where possible (#102) - Add support for Musl libc (#103) - Store `String` in `RelativeDistinguishedName.Attribute` instead of `ASN1Any` if possible (#104) - Conform `AuthorityInformationAccess` to `RangeReplaceableCollection` (#105) - Add integer initialisers on `Certificate.SerialNumber` (#106) - Update to `swift-asn1` `0.10.0` (#107) - Allow `OCSPRequester` to fail `OCSPVerifierPolicy` (#108) - Add optional diagnostic information to `Verifier` (#113) - Add custom `String` representation to `Certificate` and related types (#116) - Adopt `apple/swift-format` (#121) - Allow `RelativeDistinguishedNameConvertible` to fail gracefully (#122) - Remove deprecated API (#123) - Add `PolicyFailureReason` to support lazy failure reason string interpolation (#126) - Use beta release of `swift-asn1` (#131) ### SemVer Patch - Make expiry checking cheaper. (#85) - We aren't supporting PSS for now. (#93) - Limit the number elements in `Extensions` and `ExtendedKeyUsage` (#95) - Make hashing a `RDN.Attribute.Value.utf8String` not allocate (#112) - Make `debugDescription` work well as part of a structural display (#115) - Reject `v1` `Certificate`s with extensions (#118) - Do not count self-issued certificates against maxPathLength (#119) - Fix preference of root certificates (#127) - Refactor `ASN1UTF8StringView` to `ASN1TaggedStringView` and use it for `printable` strings (#128) - Add `Certificate.PrivateKey` description (#132) ### Other Changes - Actually validate we can parse the signature. (#82) - [README] Add a leading dot to upToNextMinor (#83) - Make constructing Dates cheaper (#86) - Don't rely on having a SEP present (#87) - Remove unnecessary TODO (#89) - Setup allocation test framework (#96) - Add allocation test that parses all WebPKI roots (#97) - Implement TinyArray (#98) - Remove unused test key (#109) - Remove unused import (#110) - Add `Verifier` allocation tests (#111) - Use `Certificate.description` instead of `dump` for debugging flaky tests (#117) - Use valid `ASN1ObjectIdentifier` in tests with at least two components (#124)
Swift Certificates 0.6.0
42 weeks ago
### SemVer Minor - Implement Certificate Signing Request support (#59) - Add Policy Builder for constructing verifier policies (#79) - Gracefully fail `Extension` serialization (#80) ### SemVer Patch - Fix signature construction (#77) ### Other Changes - Fix OCSP serialisation and parsing tests (#81)
Swift Certificates 0.5.0
45 weeks ago
### SemVer Minor - Support PEM serialisation and parsing of `Certificate`, `Certificate.PublicKey` and `Certificate.PrivateKey` (#71) ### Other Changes - Fixed various typos in documentation (#73, #74, #75, #75, patch credit to @robo-fish)
Swift Certificates 0.4.1
45 weeks ago
### SemVer Patch - Fix windows build (#72, patch credit to @compnerd) ### Other Changes - Fix wrong variable in documentation (#70, patch credit to @LukasReschke) - Clean up the upToNextMinor (#69)
Swift Certificates 0.4.0
45 weeks ago
### SemVer Minor - Fix `SecureEnclave` issue in cmake build (#67, #68)
Swift Certificates 0.3.0
46 weeks ago
### SemVer Minor - Add support for using SecureEnclave.P256 (#55, patch credit to @jschlesser) - Add support for unwrapping public keys. (#60) - OCSP soft failure mode (#61) - Add API to construct a `SubjectKeyIdentifier` by hashing a `Certificate.PublicKey` (#64) ### SemVer Patch - Tweak the ECDSA signature representation (#50) - Fix name constraints parsing (#52) - Tolerate v1 certs without basic constraints (#53) - Add SPI support for disabling expiry checking in RFC5280Policy. (#54) - Fix `Sendable` warning in `OCSPVerifierPolicy.chainMeetsPolicyRequirementsWithoutDeadline` (#62) - Expose a CMSSignature type (#65) ### Other Changes - Documentation - Typos (#56, patch credit to @joey-gm) - Add docker-compose file for Swift 5.9 (#63)
iOS macOS watchOS tvOS
apple/swift-distributed-tracing 1.1.0
Instrumentation library for Swift server applications
โญ๏ธ 188
๐Ÿ•“ 4 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.1.0
4 weeks ago
## Supported Swift versions - This release drops the support for Swift 5.6, and keeps support for 5.7, 5.8, 5.9, 5.10. - The legacy type `LegacyTracer` remains available however is now deprecated. - Please avoid using the deprecated "AnySpan" based APIs. This release also cleans up some Sendability warnings in preparation for "complete concurrency checking" that will arrive in Swift 6. ## What's Changed * Update the adoption tables by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/131 * Enable strict concurrency checking in CI by @czechboy0 in https://github.com/apple/swift-distributed-tracing/pull/132 * Add Span.updateAttributes by @adam-fowler in https://github.com/apple/swift-distributed-tracing/pull/133 * Update README with the status of Swift-OTel by @Joannis in https://github.com/apple/swift-distributed-tracing/pull/135 * Remove old benchmark infra and replace with package-benchmark by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/140 * [PATCH] [bug] Fix ignored `at` argument in two instances of withSpan by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/139 * Add CI for Swift 5.10 by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/138 * Bump minimum Swift version to 5.7 by @rnro in https://github.com/apple/swift-distributed-tracing/pull/134 * Sendable Instrument Carriers by @slashmo in https://github.com/apple/swift-distributed-tracing/pull/136 ## New Contributors * @czechboy0 made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/132 * @Joannis made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/135 * @rnro made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/134 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/1.0.1...1.1.0
1.0.1
36 weeks ago
## 1.0.1 Patch release adjusting how we deal with availability annotations. Marking availability on specific types and not on package level makes it possible to adopt entirely optionally in packages which otherwise do not require the most recent (5.6+) Swift versions. Thank you to @adam-fowler for the patch and upcoming adoption in [Hummingbird](https://github.com/hummingbird-project/hummingbird). ## What's Changed * Remove platform requirement from Package.swift by @adam-fowler in https://github.com/apple/swift-distributed-tracing/pull/130 ## New Contributors * @adam-fowler made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/130 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/1.0.0...1.0.1
1.0.0
39 weeks ago
## Initial 1.0 release After a very long period of incubation, including the development of language features ([SE-0311: Task Locals](https://github.com/apple/swift-evolution/blob/main/proposals/0311-task-locals.md)) and multiple iterations on exact shapes of the API to ensure least possible impact on instrumented code when tracing is disabled, we are happy to announce the first source stable release of swift-distributed-tracing! This package is an "API package", in the same way swift-log and swift-metrics are. This means that this package does not offer a Tracer implementation, but allows libraries to use this abstract API to instrument their code (e.g. http clients, distributed actors, gRPC or other) using tracing and once a tracer is bootstrapped by an end user, spans from given library are included in the distributed trace. ## Special thanks It should be noted that this project initially kicked off thanks to Swift participating in Google Summer of Code in 2020 ([initial repository announcement](https://forums.swift.org/t/announcement-swift-distributed-tracing-repositories-now-live/42497)), and would not have been possible without the relentless efforts of @slashmo sticking to the work and project even 3 years after GSoC concluded. Maturing such crucial "core" libraries for the server ecosystem takes time, and we've since gained multiple Swift language features which made this library possible, and we'd like to extend our thanks to everyone involved along the way. Thanks! ## Reference Documentation Getting started with distributed tracing can be somewhat daunting, so in order to explain how to adopt and what "kind of adopter" and aspect of APIs you should be looking at, the initial release features **comprehensive [reference documentation](https://swiftpackageindex.com/apple/swift-distributed-tracing/documentation/tracing)** in the form of docc documentation hosted on swiftpackageindex.com (or generated from the 1.0 sources). ## Notable changes since beta releases When upgrading from beta releases you might need to take care of the following changes: - The `Baggage` type, previously vended by the swift-distributed-tracing-baggage package is now known as **`ServiceContext`** and has also announced its 1.0 release. - Please refer to its release notes for further rationale on the rename: https://github.com/apple/swift-service-context/releases/tag/1.0.0 - It is possible to mock time using the tracing instant types - The library now splits its API between `LegacyTracer` which is Swift 5.6 compatible, and `Tracer` which requires Swift 5.7+ - The reason for this is that the APIs now return a concrete `Span` type from `startSpan` which allows avoiding existential boxing if using tracers explicitly. And such return type is only supported since Swift 5.7 because the `Span` protocol is a "protocol with associated types" Further, several small improvements have been made since the betas, but nothing has fundamentally changed in the APIs. ## Adoption plans We anticipate a few tracing implementations (most notably [slashmo/swift-otel](https://github.com/slashmo/swift-otel)) to soon release 1.0 compatible versions of libraries. We (as in the SSWG workgroup) will also collaborate with various client (e.g. http) and server projects to spread the adoption of this API in such way that enabling tracing should give a great ecosystem wide user experience. This process will take time, and we would love to see the community help with this process! If you have any questions about implementing tracers, or adopting them in your libraries or projects please don't hesitate to reach out on the forums: https://forums.swift.org/c/server/43 or in this repository's issues. ## What's Changed * startSpan should take tracepoint location by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/68 * Add .spi.yml for Swift Package Index DocC support by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/72 * Change 'landing' target to Tracing by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/74 * notes about LoggingContext by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/75 * Add CI for Swift 5.8 and update nightly to Ubuntu 22.04 by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/76 * Mark types Sendable by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/83 * Update CoC and add CONTRIBUTING file by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/87 * Allow for reading and mutating a span name by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/88 * Recording an error may carry attributes by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/90 * associated type Span, Tracer as short-hand, and *Protocol types by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/93 * Enable struct Spans with reference semantics; optimal NoopSpan by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/94 * remove not used docker configurations by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/96 * remove linux test shims by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/97 * Provide explicit set/get to avoid SpanAttributeConvertible wrapping by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/95 * Implement TracerClock and abstract away "now" by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/98 * Remove some unused/untested dead code by @fabianfett in https://github.com/apple/swift-distributed-tracing/pull/100 * Correct the default impl for startAnySpan for 5.7 by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/112 * Introduce top level withSpan; reclaim Tracer and Instrument for protocols by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/113 * Add nanoseconds to instant protocol by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/114 * Update CI by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/116 * Add nanoseconds to SpanEvent by @slashmo in https://github.com/apple/swift-distributed-tracing/pull/118 * remove clock protocol, use autoclosure "now" instant by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/120 * end() should take an autoclosure instant, not direct instant by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/122 * consider TracerSpan assoc type -> Span by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/111 * [Docs] Combined initial documentation work by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/121 * Adopt ServiceContext 1.0 by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/127 * Use 1.0.0 service-context by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/128 * Rename do not switch case by @fabianfett in https://github.com/apple/swift-distributed-tracing/pull/129 ## New Contributors * @fabianfett made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/100 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/0.3.1...1.0.0
1.0.0-beta.2
45 weeks ago
## Important notes Please note that during the beta convergence period slight API changes are still happening. Please have a look at some of the type renames and move away from Clock types towards a `TracerInstant` and adjust tracer implementations accordingly. Important PRs changing APIs are: * Introduce top level withSpan; reclaim Tracer and Instrument for protocols by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/113 * remove clock protocol, use autoclosure "now" instant by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/120 * end() should take an autoclosure instant, not direct instant by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/122 * consider TracerSpan assoc type -> Span by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/111 In addition to that you can view the 13 closed issues on the [associated milestone](https://github.com/apple/swift-distributed-tracing/milestone/12?closed=1). ## Other changes * Remove some unused/untested dead code by @fabianfett in https://github.com/apple/swift-distributed-tracing/pull/100 * Correct the default impl for startAnySpan for 5.7 by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/112 * Add nanoseconds to instant protocol by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/114 * Update CI by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/116 * Add nanoseconds to SpanEvent by @slashmo in https://github.com/apple/swift-distributed-tracing/pull/118 ## New Contributors * @fabianfett made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/100 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/1.0.0-beta.1...1.0.0-beta.2
1.0.0-beta.1
48 weeks ago
## First Beta release Hi everyone, this is the first beta release of the tracing API. We changed many things but believe we have arrived at the final API shapes of the library. Most notably, it is possible to stick to concrete types if necessary, abstract away the notion of time, as well as mutate span names in-flight before they are ended. No-op tracing also gained significant performance improvements, with `NoopSpan` becoming a struct and therefore not incurring reference counting traffic. And time is not going to be read unless the tracer decides to do so (allowing for no-op and inactive spans to avoid reading the system clock). ## Call to action: please try out the APIs in your tracers or adoption Please try out the APIs before we freeze them in a 1.0 release in the coming weeks. During the beta period, we are still able to perform any breaking or important changes before this API will become frozen for the foreseeable future. Please raise your issues on the github issue tracker. ### Updating from 0.3.x There have been a number of source breaking changes in order to achieve the ideal 1.0 shape of APIs since the 0.3.x series of this library. - `protocol Tracer` became `protocol TracerProtocol` - this was in order to introduce the `Tracer` namespace so that we can offer `Tracer.withSpan(...) { ... }` rather than the too long `InstrumentationSystem.tracer.withSpan(...) {` - the `startSpan` protocol requirement now accepts a `function` and `clock` parameters - please use the clock to obtain the timestamp of the events emitted by the tracer, rather than other time sources - by default the `DefaultTracerClock` will be used - a new `LegacyTracerProtocol` is introduced which is designed specifically to support Swift 5.6 clients - this protocol cannot make use of returning generic `Span` types, and has to erase them to `any Span`, which is why all APIs are phrased as `startAnySpan` - this protocol will be deprecated as soon as the library is able to require Swift 5.7, however it will not be removed in order to retain source compatibility with adopters who may have been using this API for a migration period. - if your library adopting (or implementing) distributed tracing CAN use Swift 5.7+, please implement the `TracerProtocol` directly; Implementations for the `Any` versions of APIs will be provided for you automatically, delegating to your `startSpan` implementation, so you do not need to implement any of the Legacy APIs. - documentation updates are incoming, including full guides for implementing and using tracers here: https://github.com/apple/swift-distributed-tracing/pull/69 ## Swift versions We are going to stick to the AsyncHTTP, gRPC and other core server library's Swift support strategy. This means that this package currently will support Swift: 5.6, 5.7, 5.8, and when 5.9 is released, we will drop support for 5.6. Supporting Swift 5.6 comes with a _significant_ burden for this project, and we want to drop it as soon as our adopters allow us to (i.e. AsyncHTTPClient and friends). We envision this library to be depended on by these projects and therefore must adhere to their minimum supported Swift policies. ## What's Changed * startSpan should take tracepoint location by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/68 * Add .spi.yml for Swift Package Index DocC support by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/72 * Change 'landing' target to Tracing by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/74 * notes about LoggingContext by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/75 * Add CI for Swift 5.8 and update nightly to Ubuntu 22.04 by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/76 * Mark types Sendable by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/83 * Update CoC and add CONTRIBUTING file by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/87 * Allow for reading and mutating a span name by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/88 * Recording an error may carry attributes by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/90 * associated type Span, Tracer as short-hand, and *Protocol types by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/93 * Enable struct Spans with reference semantics; optimal NoopSpan by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/94 * remove not used docker configurations by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/96 * remove linux test shims by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/97 * Provide explicit set/get to avoid SpanAttributeConvertible wrapping by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/95 * Implement TracerClock and abstract away "now" by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/98 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/0.3.1...1.0.0-beta.1
0.3.1
1 year ago
## Changes - Added `withSpan` overload to accept a baggage from non-async code, but have the `operation` closure be `async` - Prepared docc setup, though not publishing yet. ## What's Changed * CI update by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/62 * DocC Setup by @yim-lee in https://github.com/apple/swift-distributed-tracing/pull/63 * +span additional withSpan to ease entering async world from non-async world by @ktoso in https://github.com/apple/swift-distributed-tracing/pull/64 ## New Contributors * @yim-lee made their first contribution in https://github.com/apple/swift-distributed-tracing/pull/62 **Full Changelog**: https://github.com/apple/swift-distributed-tracing/compare/0.3.0...0.3.1
0.3.0
2 years ago
Release with Sendable
0.2.0
2 years ago
Updated: - `LoggingContext`-based propagation was replaced with automatic context propagation via task-locals (#52) - `SpanStatus` now conforms to `Equatable` (#46) - `OpenTelemetryTracingSupport` was removed (#53) --- For details on the changes please refer to the [0.2.0 milestone](https://github.com/apple/swift-distributed-tracing/milestone/3?closed=1)
0.1.4
3 years ago
Updated: - `TracingOpenTelemetrySupport` now includes all semantic span attributes defined in Otel (0.7.0) (#38) Fixed: - Replaced all usage of `sanity` with `soundness` (#37) --- For details on the changes please refer to the [0.1.4 milestone](https://github.com/apple/swift-distributed-tracing/milestone/4)
0.1.3
3 years ago
Updated: - `SpanStatus.CannonicalCode` has been removed in favor of `SpanStatus.Code` (#31) Fixed: - The context version of `withSpan` now delegates to the baggage version of this function (#36) - A "dead" link in the README file has been fixed (#35, credit to @MrCull) --- For details on the changes please refer to the [0.1.3 milestone](https://github.com/apple/swift-distributed-tracing/milestone/3)
apple/swift-nio-extras 1.22.0
Useful code around SwiftNIO.
โญ๏ธ 186
๐Ÿ•“ 19 hours ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO Extras 1.22.0
Yesterday
### SemVer Minor - Make HTTP type conversion code public (#216, patch credit to @adam-fowler) - `LineBasedFrameDecoder`: can be a `NIOSingleStepByteToMessageDecoder` (#217)
SwiftNIO Extras 1.21.0
6 weeks ago
### SemVer Minor - HTTPType channel handlers RemovableChannelHandler conformance (#213, patch credit to @adam-fowler) ### SemVer Patch - Changes for Musl support. (#211, patch credit to @al45tair) - Don't reserve capacity for NIOPCAPRingBuffer (#209) ### Other Changes - Add retroactive marker to test conformances (#212) - Add missing availability guards in tests (#214)
SwiftNIO Extras 1.20.0
18 weeks ago
### SemVer Minor - Add `swift-http-types` adapter handlers (#202) - Bump minimum Swift version to 5.7 (#207)
SwiftNIO Extras 1.19.1
23 weeks ago
### SemVer Patch - Use #if canImport(Darwin) where possible (#201) ### Other Changes - Drop Swift 5.5 (#197) - Add docker-compose file for Swift 5.9 (#198) - Adopt the Swift CoC (#200)
SwiftNIO Extras 1.19.0
46 weeks ago
### SemVer Minor - Add the NFS3 protocol (#155) - Add `NIORequestResponseWithIDHandler` (#157) ### Other Changes - Fix documentation and add support for CI-ing it (#196)
SwiftNIO Extras 1.18.0
50 weeks ago
### SemVer Minor - Make SynchronizedFileSink.close unavailable from async (#195)
1.17.0
1 year ago
### SemVer Minor - ServerQuiescingHelper no longer leaking promises (#192) ### SemVer Patch - Refactor `QuiescingHelper` to exhaustively iterate state (#193)
SwiftNIO Extras 1.16.0
1 year ago
### SemVer Minor - Add HTTP1 proxy connect handler (#185) ### Other Changes - Add .spi.yml for Swift Package Index DocC support (#186) - Update generated test script from swift-nio (#188) - Add Swift 5.8 CI and update nightly CI to Ubuntu 22.04 (#190) - Remove Jazzy doc generation (#191)
SwiftNIO Extras 1.15.0
1 year ago
### SemVer Minor - Raise minimum supported Swift version from 5.4 to 5.5 (#180) ### SemVer Patch - Replace `NIOSendable` with `Sendable` (#181) - Remove `#if compiler(>=5.5)` (#182) - Use #fileID/#filePath instead of #file (#184) ### Other Changes - Fix README.md (#183)
SwiftNIO Extras 1.14.0
1 year ago
### SemVer Minor - Correctly validate the bounds of decompression (#177)
apple/example-package-deckofplayingcards 3.0.4
Example package for use with the Swift Package Manager
โญ๏ธ 182
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift 4
6 years ago
2.0.1
7 years ago
apple/example-package-fisheryates 2.0.6
Example package for use with the Swift Package Manager
โญ๏ธ 182
๐Ÿ•“ 2 years ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4 years ago
5 years ago
Swift 4
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
apple/FHIRModels 0.5.0
Swift library for FHIRยฎ resource data models
โญ๏ธ 165
๐Ÿ•“ 48 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Add R5 and R4B models
48 weeks ago
This release adds modules for the recently published **FHIR R5** (`5.0.0`) release and the previous **FHIR R4B** (`4.3.0`) release. These can be accessed using `import ModelsR5` and `import ModelsR4B`, respectively.
Maintenance Release 0.4
1 year ago
This is a maintenance release that addresses some issues and introduces small enhancements. - BREAKING CHANGES: fix duplicate code system names resulting in https://github.com/apple/FHIRModels/issues/11 - BREAKING CHANGES: regenerate R4 models to resolve https://github.com/apple/FHIRModels/issues/15 - Update _build_ models to 4.6.0-048af26 - Enhancement: make dates & times conform to `Comparable` and `ExpressibleAsNSDate` - Fix an issue where times with milliseconds were not proper ISO formatted in certain locales
NSDate Utilities
3 years ago
FHIR v4.5 for connectathon 25
3 years ago
Utilities & Linux Support
3 years ago
Add STU-3 models โ€“ย 0.2.0
3 years ago
Public Release โ€“ 0.1.0
3 years ago
iOS macOS watchOS tvOS
apple/swift-docc-symbolkit swift-DEVELOPMENT-SNAPSHOT-2024-03-03-a
A Swift package for encoding and decoding Swift Symbol Graph files.
โญ๏ธ 162
๐Ÿ•“ 22 hours ago
apple/swift-http-structured-headers 1.0.0
A Swift implementation of the HTTP Structured Header Field specification.
โญ๏ธ 151
๐Ÿ•“ 30 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
HTTP Structured Headers 1.0.0
30 weeks ago
This release is the first release of the 1.0.0 series. No API breakages have shipped in this release, it simply defines the current API as the v1.0 stable API. ### SemVer Minor - Raise minimum supported Swift version from 5.4 to 5.5 (#27, #33, #34) ### SemVer Patch - Remove unneeded compiler guard. (#35) ### Other Changes - Validate missing imports in CI (#26) - Use #fileID/#filePath instead of #file (#28) - Add .spi.yml for Swift Package Index DocC support (#29) - Add Swift 5.8 CI and update nightly CI to Ubuntu 22.04 (#30) - Fix documentation and add infrastructure for CI-ing it (#31) - Add docker-compose file for Swift 5.9 (#32)
HTTP Structured Headers 0.3.0
1 year ago
### SemVer Minor - Adopt Sendable (#23) ### Other Changes - Use 5.7 nightlies (#24) - Use Docc for documentation (#25)
HTTP Structured Headers 0.2.0
1 year ago
### SemVer Minor - Drop support for Swift 5.2 and 5.3 (#19) ### SemVer Patch - Remove redundant conformance constraints (#22) ### Other Changes - Add 5.6 main CI and nightly 5.7 (#17, #18 ) - Fix warnings, that appeared after requiring Swift 5.4 (#21)
HTTP Structured Headers 0.1.0
2 years ago
### Changes - Rename a number of types and modules (#13) - Fixes for changes to the OSS Decimal type (#16)
HTTP Structured Headers 0.0.1
3 years ago
Initial release! This package will remain in zerover status until at least after the final RFC for HTTP structured headers ships. Once that happens we can consider freezing the API.
apple/swift-asn1 1.1.0
An implementation of ASN.1 for Swift
โญ๏ธ 122
๐Ÿ•“ 19 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift ASN1 1.1.0
19 weeks ago
### SemVer Minor - Add support for parsing BER (#42) ### Other Changes - Update to `swift-format` `509.0.0` (#41) - Add CI pipeline for Swift 5.10 (#43) - Remove note from README about API instability (#45)
Swift ASN1 1.0.0-beta.2
24 weeks ago
### SemVer Minor - Support multi PEM parsing and speed up PEM parsing in general (#39) ### Other Changes - remove outdated TODO (#38) - Fix docs: `constructed` is no longer part of `ASN1Identifier` (#40)
Swift ASN.1 1.0.0
23 weeks ago
This is the first major release and marks the time `swift-asn1` enters API stability! You can learn more about it in the [announcement forums post](https://forums.swift.org/t/swift-certificates-and-swift-asn-1-1-0-0-released/67500). Nothing has changed since the last release[ `1.0.0-beta.2`](https://github.com/apple/swift-asn1/releases/tag/1.0.0-beta.2).
Swift ASN1 1.0.0-beta.1
27 weeks ago
### SemVer Minor - Remove deprecated API (#37) ### SemVer Patch - Adopt `apple/swift-format` (#35) - Make `ASN1ObjectIdentifier`s internal representation be the encoded form (#36)
Swift ASN1 0.10.0
35 weeks ago
### SemVer Minor - Add method to lazily parse a `SET` from a ASN1Node (#32, #34) - Make `IntegerBytesCollection` conditionally `Sendable` (#33) ### SemVer Patch - Avoid using stride(from:to:by:).reversed() (#31)
Swift ASN1 0.9.1
41 weeks ago
### SemVer Patch - Fix bug in comparing Generalized and UTC Time (#30)
Swift ASN1 0.9.0
41 weeks ago
### SemVer Minor - Make `PEMDocument` `Hashable` and `Sendable` (#28) - Make GeneralizedTime and UTCTime Comparable. (#29) ### Other Changes - Clean up the upToNextMinor in the docs (#27)
Swift ASN1 0.8.0
45 weeks ago
### SemVer Minor - Changed scope of PEMDocument to public (#22, patch credit to @ekscrypto) - Add PEM support through `PEMRepresentable` (#26) ### Other Changes - Documentation - Typos (#24, patch credit to @joey-gm) - Clean up the upToNextMinor (#20) - Add docker-compose file for Swift 5.9 (#25)
0.7.0
51 weeks ago
### SemVer Minor * Add support for serializing raw bytes (#19)
SET OF de/serialization
1 year ago
## What's Changed * SET OF de/serialization in https://github.com/apple/swift-asn1/pull/12 **Full Changelog**: https://github.com/apple/swift-asn1/compare/0.5.0...0.6.0
apple/swift-mmio 0.0.2
Define and operate on type safe MMIO
โญ๏ธ 121
๐Ÿ•“ 3 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift MMIO 0.0.2
3 weeks ago
Quality of life improvements ### Additions - Adds a variant of the `@RegisterBank` macro with offset, stride, and count arguments. This allows you to declare a logical vector of registers with a user-defined stride between them, e.g. `@RegisterBank(offset: 0x100, stride: 0x10, count: 0x8)`. #65 - Adds a variant of `Register.write` taking a builder closure: `write<T>(_: (inout Value.Write) -> (T)) -> T`. This method allows you to form a write value without needing to create a named temporary value. #75 - Adds conditional extension to `RawRepresentable` types conforming to `FixedWidthInteger` for easier adoption of `BitFieldProjectable`. Conforming types only need to provide an implementation for `bitWidth`. #81 ### Changes - Updates bit-field macros bits parameter to be generic over `BinaryInteger` `RangeExpression`s. You can now specify bit ranges using any Swift range syntax, e.g. `0..<1`, `0...1`, `0...`, `...1`, or `...`. #43 - Updates the MMIOVolatile bridge to eliminate the dependency on `stdint.h`, allowing you to build needing a copy of libc headers. #52 - Removes restrictions on computed properties for `@RegisterBank` and `@Register` macros. #59 - Updates error messages for members missing a macro annotation to include fix-its. #64 ### Fixes - Replaces the use of `hasFeature(Embedded)` with `$Embedded` for proper compilation condition checking. #60 - Corrects the generation of placeholder attributes for Macros with multiple arguments, ensuring proper commas between the arguments. #63 - Resolves build issues for 32-bit platforms, ensuring compatibility with watchOS. The use of 64-bit wide integers is now conditionally compiled based on target architecture. #79 The 0.0.2 release includes contributions from @rauhul and @SamHastings1066. Thank you!
Swift MMIO 0.0.1
15 weeks ago
**Swift MMIO** initial release. ### Additions - Introduces `@RegisterBank` and `@RegisterBank(offset:)` macros, enabling you to define register groups directly in Swift code. #2 - Introduces `@Register` macro and bit field macros (`@Reserved`, `@ReadWrite`, `@ReadOnly`, `@WriteOnly`) for declaring registers composed of bit fields. Bit field macros take a range parameter which describes the subset of bits they reference (e.g., `@ReadWrite(bits: 3..<7)`). #4 - Enhances bit field macros to support discontiguous bit fields. They now accept a variadic list of bit ranges and automatically handle scattering/gathering from the relevant bits (e.g., `@ReadWrite(bits: 3..<7, 10..<12)`). #10 - Enhances bit field macros with type projections via a new `as:` parameter. Projections allow you to operation on bit fields using strong types instead of raw integers (e.g. `@ReadWrite(bits: 3..<7, as: A.self)`) #27 - Enhances registers with support for interposing reads and writes when compiling with `FEATURE_INTERPOSABLE`. You can use interposers to unit test drivers. This feature is enabled when building with the `SWIFT_MMIO_FEATURE_INTERPOSABLE` environment variable defined. #31 The 0.0.1 release includes contributions from @rauhul. Thank you!
iOS macOS watchOS tvOS macCatalyst
apple/swift-nio-imap 0.1.0
A Swift project that provides an implementation of the IMAP4rev1 protocol, built upon SwiftNIO.
โญ๏ธ 92
๐Ÿ•“ 1 year ago
apple/swift-cassandra-client 0.3.0
Cassandra client in Swift
โญ๏ธ 83
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.3.0
1 year ago
Expose the paging token API from the C/C++ driver (https://github.com/apple/swift-cassandra-client/pull/22, credit to @erichmenge)
0.2.0
1 year ago
- Make ssl.verifyFlag non-optional (https://github.com/apple/swift-cassandra-client/pull/15)
0.1.1
1 year ago
Allow setting per statement request timeout (https://github.com/apple/swift-cassandra-client/pull/9)
0.1.0
1 year ago
Includes: - Expose C* metrics (https://github.com/apple/swift-cassandra-client/pull/7) - Provide way to set cluster consistency (https://github.com/apple/swift-cassandra-client/pull/8)
apple/swift-llvm-bindings swift-5.9.2-RELEASE
Swift Bindings for LLVM Project APIs
โญ๏ธ 71
๐Ÿ•“ 12 weeks ago
apple/swift-statsd-client 1.0.1
metrics backend for swift-metrics that uses the statsd protocol
โญ๏ธ 55
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.0.1 Release
1 year ago
## What's Changed * Update README.md by @hassila in https://github.com/apple/swift-statsd-client/pull/35 * DocC setup by @yim-lee in https://github.com/apple/swift-statsd-client/pull/36 * Allow client to send metrics to IPV6 addresses by @Palleas in https://github.com/apple/swift-statsd-client/pull/40 * Address deprecation warnings by @Palleas in https://github.com/apple/swift-statsd-client/pull/41 ## New Contributors * @hassila made their first contribution in https://github.com/apple/swift-statsd-client/pull/35 * @yim-lee made their first contribution in https://github.com/apple/swift-statsd-client/pull/37 * @Palleas made their first contribution in https://github.com/apple/swift-statsd-client/pull/40 **Full Changelog**: https://github.com/apple/swift-statsd-client/compare/1.0.0...1.0.1
1.0.0 release
2 years ago
First 1.0 release
1.0.0-alpha.4
3 years ago
Introduces `MetricNameSanitizer` and enables it by default, allowing statsd-client to be used directly with Vapor apps (as their metric labels may include `:` which was causing trouble). See #21 for details.
1.0.0-alpha.3
3 years ago
3rd alpha release, fixes important issue with connection leak #14
1.0.0-alpha.2
4 years ago
second alpha release
1.0.0-alpha.1
4 years ago
first alpha release
apple/swift-service-context 1.0.0
Minimal type-safe context propagation container
โญ๏ธ 50
๐Ÿ•“ 39 weeks ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.0.0
39 weeks ago
## 1.0.0: `ServiceContext` Please note that the primary module vended by this library is `ServiceContext` which has changed from the library's pre-1.0 days. Please continue reading about migrating from the "Baggage" name type if you were using this library from before its 1.0 days. ## Migrating off the legacy type name: "Baggage" This package was initially developed for quite a while as the `swift-distributed-tracing-baggage` package and was used only by the [`swift-distributed-tracing` project](https://github.com/apple/swift-distributed-tracing). As time passed, more projects were making use of the baggage type and we decided to name this more generically. **Previously:** code using Baggage directly would be using it like this: ```swift import InstrumentationBaggage private enum FirstTestKey: BaggageKey { typealias Value = Int } var baggage = Baggage.topLevel // Note, from 1.0 this will emit deprecation warnings guard let value = baggage[FirstTestKey.self] else { return "no value" } return "value was: \(value)" ``` The above snippet continues to work, however it is deprecated upon release. Please adopt the new spelling of the type, which has the same capabilities as previous type: ```swift import ServiceContextModule private enum FirstTestKey: ServiceContextKey { typealias Value = Int } var context = ServiceContext.topLevel guard let value = context[FirstTestKey.self] else { return "no value" } return "value was: \(value)" ``` Everything about `ServiceContext` is the same as it was with `Baggage`, and the `InstrumentationBaggage` module now simply has a `typealias Baggage = ServiceContext` to ease migration in case you were using this type directly. The more generic name of "service context" allows developers to use this type for various context propagation needs, without necessarily binding it all with distributed tracing and the baggage terminology. ## What's Changed * Add .spi.yml for Swift Package Index DocC support by @yim-lee in https://github.com/apple/swift-service-context/pull/29 * Add CI for Swift 5.8 and update nightly to Ubuntu 22.04 by @yim-lee in https://github.com/apple/swift-service-context/pull/32 * Update CoC and add CONTRIBUTING file by @ktoso in https://github.com/apple/swift-service-context/pull/33 * Update CI by @yim-lee in https://github.com/apple/swift-service-context/pull/34 * Add _unsafeInheritExecutor to withValue convenience func by @ktoso in https://github.com/apple/swift-service-context/pull/35 * Add test coverage for using withValue inside an actor by @ktoso in https://github.com/apple/swift-service-context/pull/37 * Change package to ServiceContext; keep baggage compat module by @ktoso in https://github.com/apple/swift-service-context/pull/38 * Readme update for 1.0 by @ktoso in https://github.com/apple/swift-service-context/pull/39 **Full Changelog**: https://github.com/apple/swift-service-context/compare/0.4.1...1.0.0
0.4.1
1 year ago
## What's Changed * Fix missing static keyword by @ktoso in https://github.com/apple/swift-distributed-tracing-baggage/pull/28 **Full Changelog**: https://github.com/apple/swift-distributed-tracing-baggage/compare/0.4.0...0.4.1
0.4.0
1 year ago
## What's Changed * DocC setup by @yim-lee in https://github.com/apple/swift-distributed-tracing-baggage/pull/25 * Add support for Swift 5.1 (5.0 impossible due to compiler bug) by @slashmo in https://github.com/apple/swift-distributed-tracing-baggage/pull/26 * + convenience APIs since most people will never use the underlying `current` value by @ktoso in https://github.com/apple/swift-distributed-tracing-baggage/pull/27 ## New Contributors * @yim-lee made their first contribution in https://github.com/apple/swift-distributed-tracing-baggage/pull/25 **Full Changelog**: https://github.com/apple/swift-distributed-tracing-baggage/compare/0.3.0...0.4.0
0.3.0
2 years ago
Baggage is `Sendable`.
0.2.3
2 years ago
Same as 0.2.1, no Sendable requirement - this is introduced now in 0.3.0
0.2.2
2 years ago
Fixed Sendable conformances for older OSes
0.2.1
2 years ago
Updates: - Update SwiftFormat to 0.48.11 (#14) - Update installation guide to use 0.2.0 ๐Ÿ“– (#15) --- For details on the changes please refer to the [0.2.1 milestone](https://github.com/apple/swift-distributed-tracing-baggage/milestone/3)
0.2.0
2 years ago
Updated: - **Breaking**: Removed `LoggingContext` and dependencies, now includes `Baggage` directly in new `InstrumentationBaggage` module (#13) --- For details on the changes please refer to the [0.2.0 milestone](https://github.com/apple/swift-distributed-tracing-baggage/milestone/2)
0.1.1
3 years ago
Same as 0.1.0 however fixed the dependency url in Package.swift to use https rather than git.
0.1.0
3 years ago
Initial release
apple/swift-tools-support-async 0.11.0
Common infrastructural helpers on top of NIO for llbuild2 and swiftpm-on-llbuild2 projects. This is NOT a general purpose package and is unlikely to ever become stable.
โญ๏ธ 28
๐Ÿ•“ 1 week ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
TSA 0.9.3
44 weeks ago
- add missing deps #47
49 weeks ago
49 weeks ago
49 weeks ago
0.8.7
1 year ago
- allow more TSC versions
1 year ago
swift-tools-support-async 0.8.1
2 years ago
Be compatible with TSC's accidental API break at 0.2.5
0.3.0
2 years ago
2 years ago
0.2.0
2 years ago
macOS
apple/swift-se0270-range-set 1.0.1
Swift Evolution preview package for SE-0270.
โญ๏ธ 19
๐Ÿ•“ 2 years ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Fix subscript setters
2 years ago
Bugfixes: - Adds a missing setter for `DiscontinousSlice.subscript(bounds:)` - Prevents out-of-bounds assignment when using the multiple-range setter for `Collection.subscript(subranges:)`
SE0270_RangeSet 1.0.0
4 years ago
Initial release.
apple/swift-distributed-tracing-baggage-core 0.1.1
Minimal context propagation container
โญ๏ธ 12
๐Ÿ•“ 1 year ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.1.1
3 years ago
Same as 0.1.0, just released for consistency.
0.1.0
3 years ago
Initial release
apple/swift-se0288-is-power 2.0.0
Preview package for Swift Evolution proposal SE-0288
โญ๏ธ 5
๐Ÿ•“ 2 years ago
๐Ÿ”– Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2 years ago
Initial release of isPower(of:)
2 years ago

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics