Skip to content

Releases: apple/swift-configuration

1.2.0

05 Mar 08:27
be76c4a

Choose a tag to compare

What's Changed

SemVer Minor

  • Add PropertyListSnapshot provider for property list configuration files by @manojmahapatra in #155

Other Changes

  • Enable dependabot and switch GHA references to tags by @czechboy0 in #160
  • Fix benchmarks to fix CI by @czechboy0 in #161
  • Reloading config example by @heckj in #158
  • Add reloading-example to the Examples README by @czechboy0 in #162
  • add demonstration flow and fix grammar errors in example README by @heckj in #163
  • Add AWS secrets manager configuration package to community providers section of README by @benrosen78 in #165

New Contributors

Full Changelog: 1.1.0...1.2.0

1.1.0

17 Feb 10:41
1bb939f

Choose a tag to compare

What's Changed

SemVer Minor

Other Changes

  • Fix typo in comment by @heckj in #156
  • [docs] adding forward reference in the docs by @heckj in #159

Full Changelog: 1.0.2...1.1.0

1.0.2

30 Jan 12:40
b4768bd

Choose a tag to compare

What's Changed

SemVer Patch

Other Changes

  • Fix security reporting URL by @czechboy0 in #146
  • [CI] Build with the Android SDK and run the tests in the Android x86_64 emulator by @finagolfin in #140
  • [Docs] Add Android as supported platform by @finagolfin in #147
  • [CI] Add automated release workflow using swift-temporal-sdk by @inductor in #150
  • adding example to naming suggestions by @heckj in #152

New Contributors

Full Changelog: 1.0.1...1.0.2

1.0.1

13 Jan 13:51
6ffef19

Choose a tag to compare

What's Changed

SemVer Patch

  • Add support for one zero and yes no boolean strings in environement variables provider by @Adobels in #120
  • Update EnvironmentValueArrayDecoder to emit empty values when present by @Adobels in #133

Other Changes

  • Upgrade GitHub Actions for Node 24 compatibility by @salmanmkc in #119
  • Docs: Update KeyMappingProvider example to use prefixKeys(with:) by @sidepelican in #125
  • Update method signatures in code snippets within code comments. by @Adobels in #121
  • Edits for active voice over passive, present tense over past, and a couple of typos. by @heckj in #136
  • [Docs] Link Mattt's TOML provider under Community Providers by @czechboy0 in #129
  • Update example to 1.0 by @czechboy0 in #111
  • [CI] Fix static SDK build workflow by @czechboy0 in #141
  • [Docs] Custom provider guidelines by @czechboy0 in #137
  • switch links from symbol links to reference sources by @heckj in #142
  • bump min service lifecycle dependency to 2.8 by @heckj in #143

New Contributors

Full Changelog: 1.0.0...1.0.1

1.0.0

11 Dec 08:54
3528deb

Choose a tag to compare

Swift Configuration reaches 1.0! 🎉

This milestone allows integrating this package in API-stable libraries and applications, and building API-stable custom providers.

Many thanks to the folks who've provided feedback since the initial release, you made this possible 🙏 Do keep the feedback coming, while the API will not take breaking changes anymore, we will continue to evolve it in an API-additive way.

Which way will you integrate?

  1. Make it easy to configure your library by offering a method with a ConfigReader parameter (docs).
  2. Make it easy to integrate any configuration sources you need by instantiating a ConfigReader in your application (docs).
  3. Expand Swift Configuration's capabilities by implementing a custom configuration provider, for example to add support for another file format or by calling an external configuration system (docs).

What's Changed

⚠️ Breaking changes since 1.0.0-alpha.1

Full Changelog: 1.0.0-alpha.1...1.0.0

1.0.0-alpha.1

27 Nov 09:46
af63e6e

Choose a tag to compare

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 JSONProvider to FileProvider<JSONSnapshot>, same for YAMLProvider and their reloading variants.
  • Rename ConfigSnapshotProtocol -> ConfigSnapshot by @czechboy0 in #67
    • Migration: Rename references from ConfigSnapshotProtocol to ConfigSnapshot
  • 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 withSnapshot to snapshot.
  • 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

Other Changes

Full Changelog: 0.2.0...1.0.0-alpha.1

0.2.0

21 Oct 09:41
9d5e407

Choose a tag to compare

What's Changed

⚠️ Breaking changes between 0.1.x and 0.2.0

  • Rename bytes-from-string decoders in #57
  • Rename ProviderCompatTest.run() -> ProviderCompatTest.runTest() in #56

SemVer Minor

  • Default to enabled observability in #54
  • Expose AbsoluteConfigKey prepending/appending by @finnvoor in #39

SemVer Patch

  • [Refactor] Remove ConcreteAsyncSequence in #38
  • Move from platform versions to symbol availability in #48

Other Changes

  • [README] Fix 'Custom key syntax' link in #3
  • [CI] Enable static SDK builds in #4
  • Fix up a secrets example in #5
  • [Docs] Remove obsolete example about catching ConfigError in #7
  • Update Package.swift by @carlynorama in #9
  • [Docs] Fix up docs around key mapping in #46
  • Add linkage test in #53
  • [CI] Test examples in #50
  • chore: restrict GitHub workflow permissions - future-proof by @incertum in #59
  • Update docs for the 0.2.0 release in #58

New Contributors

Full Changelog: 0.1.1...0.2.0

0.1.1

24 Sep 11:08
7e5bc11

Choose a tag to compare

What's Changed

Other Changes

  • SPI needs the docc-plugin installed to build the docs - this fixes that scenario by @heckj in #1
  • Use the general runner pool for PRs by @czechboy0 in #2

New Contributors

Full Changelog: 0.1.0...0.1.1

0.1.0

23 Sep 19:23

Choose a tag to compare

Initial release - Hello, Swift Configuration!