This is the first alpha release of Swift Configuration 1.0.0. There are no more planned API-breaking changes and unless issues come up, this is the API shape that will be stabilized as Swift Configuration 1.0.0 in a couple of weeks.
Please update your libraries and applications to use this alpha release and provide feedback 🙏
⚠️ API-breaking changes between 0.2.0 and 1.0.0-alpha.1
- Generic file providers (Implementation of SCO-0001) by @czechboy0 in #60
- Migration: Rename references from
JSONProvidertoFileProvider<JSONSnapshot>, same forYAMLProviderand their reloading variants.
- Migration: Rename references from
- Rename ConfigSnapshotProtocol -> ConfigSnapshot by @czechboy0 in #67
- Migration: Rename references from
ConfigSnapshotProtocoltoConfigSnapshot
- Migration: Rename references from
- Remove custom key decoders by @czechboy0 in #71
- Migration: Use the period-separated default key decoder.
- Rename ConfigReader.withSnapshot(_:) to ConfigReader.snapshot() by @czechboy0 in #79
- Migration: Rename references from
withSnapshottosnapshot.
- Migration: Rename references from
- Remove the ConfigKeyEncoder API by @czechboy0 in #86
- Migration: Use the built-in key encoders.
Other changes
SemVer Minor
- NonisolatedNonsendingByDefault and other concurrency fixes by @czechboy0 in #63
- Add an allowMissing parameter to file-based providers by @czechboy0 in #73
- Allow non-copyable Return types in with-style methods by @czechboy0 in #81
- Add missing availability annotations in public APIs by @czechboy0 in #85
SemVer Patch
- Label closure parameters in public APIs by @czechboy0 in #82
Other Changes
- [Proposal] SCO-0001: Generic file providers by @czechboy0 in #62
- [SCO-0002] Remove custom key decoders by @czechboy0 in #72
- Prep docs for alpha.1 by @czechboy0 in #87
Full Changelog: 0.2.0...1.0.0-alpha.1