Commit Graph

52 Commits

Author SHA1 Message Date
Rick Newton-Rogers 3681f659d9 Drop Swift 6.0 (#61)
Motivation:

Swift 6.0 is no longer supported, we should bump the tools version and
remove it from our CI.

Modifications:

* Bump the Swift tools version to Swift 6.1
* Remove Swift 6.0 jobs where appropriate in main.yml, pull_request.yml

Result:

Code reflects our support window.
1.5.0
2026-04-10 16:31:28 +01:00
Rick Newton-Rogers 0a96e51832 Enable Swift 6.3 jobs in CI (#60)
Motivation:

Swift 6.3 has been released, we should add it to our CI coverage.

Modifications:

Add additional Swift 6.3 jobs where appropriate in main.yml,
pull_request.yml

Result:

Improved test coverage.
2026-04-01 13:56:26 +01:00
Mads Odgaard 5ee8f2dd51 Move to FoundationEssentials (#59)
Uses `FoundationEssentials` instead of `Foundation`. Also removes
`NIOFoundationCompat`, because it did appear to be used, and that pulled
in the entire Foundation.

Also disabled the default traits for the `OpenAPIRuntime` to prevent
linking Foundation.
1.4.0
2026-03-06 17:55:32 +00:00
Rick Newton-Rogers 502e303d73 update actions/checkout from v4 to v6 (#58)
Motivation

* Following [GitHub's
announcement](https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/),
Node 20 is being deprecated and runners will begin using Node 24 by
default starting March 4th, 2026. Node 20 will reach end-of-life in
April 2026.

Modifications

* Upgrade GitHub Actions to their latest versions to ensure
compatibility with Node 24.
* Replace `actions/checkout@v4` with `actions/checkout@v6` in all
workflow files.

Result

* Workflow files reference `actions/checkout@v6`.
2026-03-04 13:20:44 +00:00
Cory Benfield 4828c3aa33 Remove Swift 5.10 support (#56) 1.3.0 2025-11-13 15:25:00 +00:00
Rick Newton-Rogers ea546ba637 Add explicit read permissions to workflows (#55)
Motivation:

* More secure GitHub Actions workflows

Modifications:

Add explicit 'contents: read' permissions to workflows that did not have
explicit permissions defined. This follows GitHub Actions security best
practices by limiting the default GITHUB_TOKEN permissions.

Result:

An extra layer of security.
1.2.0
2025-11-05 11:26:40 +00:00
Rick Newton-Rogers fd9e9c4a53 Enable Swift 6.2 jobs in CI (#53)
Motivation:

Swift 6.2 has been released, we should add it to our CI coverage.

Modifications:

Add additional Swift 6.2 jobs where appropriate in main.yml,
pull_request.yml

Result:

Improved test coverage.
2025-09-30 10:27:55 +01:00
Raphael 5cb5dd8522 Enable release mode builds (#52)
### Motivation:

Some errors do not show up in debug builds. Enabling release mode builds
improves the CI coverage.

### Modifications:

Enable release mode builds for pull requests and scheduled builds on
main.

### Result:

Improved CI coverage.
2025-07-30 11:07:19 +01:00
Rick Newton-Rogers 77663696af Drop Swift 5.9 (#51)
Motivation:

Swift 5.9 is no longer supported, we should bump the tools version and
remove it from our CI.

Modifications:

* Bump the Swift tools version to Swift 5.10
* Remove Swift 5.9 jobs where appropriate in main.yml, pull_request.yml

Result:

Code reflects our support window.
2025-05-07 14:07:08 +01:00
Rick Newton-Rogers 4671c106e6 Enable Swift 6.1 jobs in CI (#50)
Motivation:

Swift 6.1 has been released, we should add it to our CI coverage.

Modifications:

Add additional Swift 6.1 jobs where appropriate in main.yml,
pull_request.yml

Result:

Improved test coverage.
2025-05-07 10:37:02 +01:00
Rick Newton-Rogers 3de8aee75e Add static SDK CI workflow (#49)
Add static SDK CI workflow which runs on commits to PRs, merges to main
and daily on main.
2025-04-02 14:34:01 +01:00
Rick Newton-Rogers da9f6ae5ad Rename nightly_6_1 params to nightly_next (#47)
Rename nightly_6_1 params to nightly_next; see
https://github.com/apple/swift-nio/pull/3122
2025-03-14 10:24:09 +00:00
Rick Newton-Rogers a9707bbc51 Only apply standard swift settings on valid targets (#48)
Only apply standard swift settings on valid targets. The current check
ignores plugins but that is not comprehensive enough.
2025-03-14 10:17:37 +00:00
Rick Newton-Rogers 93b188b6d6 CI use 6.1 nightlies (#46)
CI use 6.1 nightlies now that Swift development is happening in the 6.1
branch
2025-01-30 09:57:56 +01:00
Si Beaumont fdd7e2f414 Use StrictConcurrency=complete in Package.swift and add Swift 6 language mode CI (#44)
### Motivation

We're trying to lock in strict concurrency across the package ecosystem
and standardise on how that's tested.

### Modifications

- Add `StrictConcurrency=complete` feature flag to all targets in the
package manifest
- Remove now superfluous strict concurrency compiler flag in CI runs
- Add a new CI pipeline that tests the package with Swift 6 language
mode.

### Result

- Package configuration consistent with others adopting strict
concurrency.
- Swift 6 language mode pipeline established to catch regressions.
2024-12-20 08:44:25 +00:00
Franz Busch cf4ffabaf4 Update release.yml (#45)
Update the release.yml file with the latest label changes
2024-12-18 14:19:54 +01:00
Rick Newton-Rogers 915aeff168 Enable MemberImportVisibility check on all targets (#43)
Enable MemberImportVisibility check on all targets. Use a standard
string header and footer to bracket the new block for ease of updating
in the future with scripts.
1.1.0
2024-12-11 15:32:13 +00:00
Rick Newton-Rogers 36da108ae3 Migrate to GitHub Actions (#41)
Migrate CI to use GitHub Actions.

### Motivation:

To migrate to GitHub actions and centralised infrastructure.

### Modifications:

Changes of note:
* Adopt swiftlang soundness checks, swift version matrix
* Remove scripts and docker files which are no longer needed

### Result:

Feature parity with old CI.

### Test Plan

Execute CI
2024-11-11 13:12:03 +00:00
Honza Dvorsky 7b96b1d08e Adopt AHC's .shared singleton as the default Client (#39)
### Motivation

As a convenience when you don't need to create a custom AHC Client
instance, we provide a singleton client as the default. AHC added their
own `Client.shared` singleton, so let's adopt that and remove the
transport's internal singleton, which was used for the same purpose.

### Modifications

- Replaced the tranport's internal singleton with the AHC-provided one.
- Use Int64 directly and skip conversions now that AHC also uses Int64
for the body byte size.

### Result

- No internal singleton is created now, possibly avoiding having two AHC
singletons in a given process.
- Fixed a warning around Int/Int64 conversion.

### Test Plan

Unit tests still pass.
2024-10-03 08:51:54 -07:00
Honza Dvorsky abfe558a66 Prep 1.0 (#37)
### Motivation

Prep 1.0 - docs.

### Modifications

See above.

### Result

Updated for 1.0.

### Test Plan

Previewed locally.
1.0.0
2023-12-11 05:04:24 -08:00
Si Beaumont bdb9c8fa6c Add issue template, redirecting to swift-openapi-generator issues (#36)
### Motivation

We centralize the issues for all the repos in the Swift OpenAPI
Generator project in the generator repo. Using an issue template will
make this even clearer, because it will allow people to use the normal
Github workflow to discover the process and provide a link to where to
file their issue.

### Modifications

Add issue template, redirecting to swift-openapi-generator issues.

### Result

When people try and file an issue, they'll be presented with a button
that takes them to the generator repo issues page.

### Test Plan

Manual.
2023-12-11 10:34:01 +00:00
Honza Dvorsky 410d691db3 Explicit dependency on HTTPTypes (#34)
### Motivation

Recent SwiftPM versions seem to be a bit stricter about using (i.e.,
`import ...`) transitive dependencies without explicitly declaring them
as direct dependencies.

### Modifications

Explicitly depend on the HTTPTypes module from swift-http-types.

### Result

More explicitly declare the dependency graph.

### Test Plan

All tests pass.
2023-12-01 13:36:21 +01:00
Si Beaumont ddc356e9e1 Add Docker Compose file for Swift 5.9.0 (#33) 2023-11-30 20:26:33 +00:00
Honza Dvorsky 7edc42113f Default the configuration parameter (#32)
Default the configuration parameter

### Motivation

The AsyncHTTPClient transport API has undergone changes in recent months and we didn't bring back the default initializer after we adopted the shared EventLoopGroup, allowing you to create a transport with just `let transport = AsyncHTTPClientTransport()`.

### Modifications

Default the configuration parameter in the initializer to be able to do that. It's already documented to work, but it doesn't.

### Result

Match the documented behavior of being able to use `let transport = AsyncHTTPClientTransport()`.

### Test Plan

Tests still pass.


Reviewed by: dnadoba

Builds:
     ✔︎ pull request validation (5.10) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/32
2023-11-30 13:39:25 +01:00
Honza Dvorsky 1ab51feec5 Add visionOS platform support (#31)
### Motivation

While this isn't technically necessary, as all versions of a platform
not explicitly mentioned are assumed to be supported, it's better to be
explicit here.

### Modifications

Add `visionOS(.v1)` to the list of supported platforms.

### Result

Clearer support matrix.

### Test Plan

N/A, this is basically just a documentation change.
2023-11-30 00:51:18 -08:00
Honza Dvorsky 0859eada6f Handle large payloads on 32bit platforms gracefully (#29)
Handle large payloads on 32bit platforms gracefully

### Motivation

If there's a request payload with a number of bytes that can't fit into 32 bits, we'd crash.

### Modifications

Use a graceful initializer and use `.unknown` (so no `content-length` will be sent) if the size exceeds the max of a 32bit int.

### Result

No crash for large payloads on 32bit platforms.

### Test Plan

Tests pass.


Reviewed by: dnadoba

Builds:
     ✔︎ pull request validation (5.10) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/29
1.0.0-alpha.1
2023-11-28 11:26:01 +01:00
Honza Dvorsky f5bf294257 Bump to 1.0.0-alpha.1 (#28)
Bump to 1.0.0-alpha.1

### Motivation

Prepare for 1.0.0-alpha.1.

### Modifications

- Updated runtime dependency.
- Updated docs.

### Result

Ready to tag 1.0.0-alpha.1.

### Test Plan

All tests pass.


Reviewed by: simonjbeaumont

Builds:
     ✔︎ pull request validation (5.10) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/28
2023-11-28 10:40:48 +01:00
Si Beaumont e0c24bc0b9 Remove #if swift(>=5.9) check in Package.swift (#27)
### Motivation

In #26 we bumped the minimum tools version to Swift 5.9, but we left the
`#if swift(>5.9)` compiler directive when enabling existential any by
default.

### Modifications

Remove #if swift(>=5.9) check in Package.swift

### Result

No checking for Swift 5.9+, because that's now the default.

### Test Plan

CI.
2023-11-27 08:35:03 -08:00
Honza Dvorsky 8c6cc5907c Move to Swift 5.9 as the minimum version (#26)
### Motivation

Part of addressing
https://github.com/apple/swift-openapi-generator/issues/75 and
https://github.com/apple/swift-openapi-generator/issues/119.

### Modifications

Bumped Swift tools version to 5.9 and made the `ExistentialAny` build
setting unconditional.

### Result

Building the package requires 5.9 now.

### Test Plan

Ran tests, all passed when using a Swift 5.9 toolchain.
2023-11-27 16:19:22 +01:00
Honza Dvorsky caa53033fe Prep for 1.0 alpha, adapted to runtime changes in main (#25)
### Motivation

On main, the HTTPBody length type changed from Int to Int64.

### Modifications

Adapted the transport with this change.

### Result

Repo builds again when using the latest runtime.

### Test Plan

Adapted tests.
2023-11-27 16:13:23 +01:00
Honza Dvorsky 701d752f25 Add README badges (#24)
### Motivation

Surface the Swift version and platform support status from Swift Package
Index.

### Modifications

Added badges, plus a quick link to the docc docs, to the top of the
README.

Also, expanded the supported platforms, we do actually support iOS and
friends (was an oversight not to include it before).

### Result

Easier to quickly see our support matrix, plus the quick link to docs.

### Test Plan

Previewed locally.
2023-11-16 08:47:28 +01:00
PARAIPAN SORIN e48b152d18 Disable "respectsExistingLineBreaks" in .swift-format for more consistent styling (#23)
### Motivation

- Relates to
[#230](https://github.com/apple/swift-openapi-generator/issues/230)

### Modifications

- Disable respectsExistingLineBreaks .swift-format rule and address
changes requested

### Result

- One of the .swift-format rules will be disabled

### Test Plan

- Run Tests
2023-11-01 17:49:29 +01:00
Honza Dvorsky 7c6a9e7304 Add a soundness --fix flag (#22)
Add a soundness --fix flag

### Motivation

When running `./scripts/soundness.sh` produces swift-format warnings, we ask adopters to manually copy/paste a call to swift format to fix the warnings up. This is tedious and unnecessary.

### Modifications

Add a `--fix` option on the `soundness.sh` script to actually apply the fixes as well, avoiding the need to copy/paste long commands.

### Result

Easier fixing up of formatting warnings.

### Test Plan

Manually tested the workflow locally.


Reviewed by: glbrntt

Builds:
     ✔︎ pull request validation (5.10) - Build finished. 
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/22
2023-10-25 12:01:10 +02:00
Honza Dvorsky 2e72905ccc Bump swift-format to 5.9 (#20)
Bump swift-format to 5.9

### Motivation

As per https://github.com/apple/swift-openapi-generator/issues/175.

### Modifications

Bump swift-format, update to make soundness pass.

### Result

Using swift-format 5.9.

### Test Plan

Soundness passed.


Reviewed by: dnadoba

Builds:
     ✔︎ pull request validation (5.10) - Build finished. 
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/20
2023-10-24 08:50:44 +02:00
PARAIPAN SORIN f3fa4a5008 Enable documentation comment validation in swift-format (#21) 2023-10-23 23:05:38 +02:00
Si Beaumont 6779786e54 Add docker-compose file for 5.10 CI (#19)
### Motivation

Now Swift 5.9 is released and 5.10 nightly images are available, we
should update our CI to use the official release for 5.10 and setup a
new CI for 5.10.
 
### Modifications

- Update 5.9 CI to use `swift:5.9-jammy`
- Add new CI for `swiftlang/swift:nightly-5.10-jammy`

### Result

- 5.9 CI is using official released image.
- 5.10 CI can be brought online.

### Test Plan

Running both of these commands locally succeed:

```console
% docker-compose -f docker/docker-compose.yaml -f docker/docker-compose.2204.59.yaml run test
```
```console
% docker-compose -f docker/docker-compose.yaml -f docker/docker-compose.2204.510.yaml run test
```
2023-10-04 18:53:33 +01:00
Honza Dvorsky 0a0c648c90 [AHC Transport] Async bodies + swift-http-types adoption (#16)
[AHC Transport] Async bodies + swift-http-types adoption

### Motivation

AHC transport changes of the approved proposals apple/swift-openapi-generator#255 and apple/swift-openapi-generator#254.

### Modifications

- Adapts to the runtime changes, depends on HTTPTypes now.
- Both request and response streaming works.

### Result

Transport works with the 0.3.0 runtime API of.

### Test Plan

Adapted tests.


Reviewed by: dnadoba, simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/16
0.3.0
2023-09-27 17:58:10 +02:00
Honza Dvorsky f228a33bdf Adopt a custom shared client (#18)
### Motivation

We previously defaulted the HTTPClient to .init(), but that's not
correct as it was never getting shut down.

### Modifications

Instead of creating a new client, just introduce our own shared one and
use that as the default value.

Once AHC provides a shared client, we can default to that in the
configuration initializer.

### Result

No more crashing clients on dealloc.

### Test Plan

All tests pass.

---------

Co-authored-by: David Nadoba <dnadoba@gmail.com>
0.2.3
2023-09-18 15:38:11 +02:00
Honza Dvorsky 7e40bff52d Fix double encoding of path parameters (#15)
Fix double encoding of path parameters

### Motivation

Fixes https://github.com/apple/swift-openapi-generator/issues/251.

### Modifications

Use the already escaped path setter on `URLComponents` to avoid the second encoding pass.

### Result

Path parameters that needed escaping are only escaped once, not twice.

### Test Plan

Adapted the existing unit test to cover a path item that needs escaping.


Reviewed by: simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/15
0.2.2
2023-09-07 14:53:14 +02:00
Honza Dvorsky 902cfc7420 Docs fixes (#14)
Docs fixes

### Motivation

Docs should be correct.

### Modifications

Update docs to reflect the new version.

### Result

N/A

### Test Plan

N/A


Reviewed by: dnadoba

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/14
0.2.1
2023-08-31 14:26:14 +02:00
Honza Dvorsky 0d9e57945b Prepare being compatible with runtime 0.2.0 release (#12)
Prepare being compatible with runtime 0.2.0 release

### Motivation

Runtime 0.2.0 is compatible with 0.1.3+ in the APIs adopted in the transport, so just reflect that in the manifest.

### Modifications

Increased the supported runtime range to include 0.2.x.

### Result

Once released, folks will be able to use 0.1.x of this transport with both 0.1.x and 0.2.x of runtime.

### Test Plan

Will be manually tested once runtime 0.2.0 is released.


Reviewed by: gjcairo

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/12
0.1.4 0.2.0
2023-08-30 17:16:36 +02:00
Honza Dvorsky 91dfd35092 Adopt the new shared HTTP client (#13)
Adopt the new shared HTTP client

### Motivation

Now that SwiftNIO/AsyncHTTPClient have a singleton variant of the `EventLoopGroup`, which allows creating an `HTTPClient` without any argument, let's simplify the initializer of the transport to take advantage of it - bringing it in line with the URLSession transport.

### Modifications

Default the HTTPClient to a new one with a default event loop group, and remove the mandatory shutdown call.

### Result

Adopters can more easily create the AHC transport.

### Test Plan

N/A


Reviewed by: dnadoba, glbrntt

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/13
0.1.3
2023-08-29 14:45:24 +02:00
Honza Dvorsky 95bb2f8456 Enable strict concurrency checking in CI (#11)
Enable strict concurrency checking in CI

### Motivation

To further avoid concurrency bugs, enable complete concurrency checking in CI.

### Modifications

Added the compiler flag to the docker-compose scripts.

### Result

If a warning of this nature comes up, because we have warnings-as-errors, it'll fail CI.

### Test Plan

Locally built without any warnings with the flag enabled.


Reviewed by: glbrntt

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/11
2023-08-11 16:02:13 +02:00
Honza Dvorsky 762f5e50ef [AHCTransport] Consistent style for initializing local variables (#10)
[AHCTransport] Consistent style for initializing local variables

### Motivation

Move to a consistent style when initializing local variables, always use `let foo = Foo(...)` vs `let foo: Foo = .init(...)`.

### Modifications

Updated all occurrences of the latter to use the former.

### Result

Consistent local variable initialization.

### Test Plan

All tests passed.


Reviewed by: gjcairo, simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/10
2023-08-01 16:14:00 +02:00
Honza Dvorsky 875fecf08b Disable ExistentialAny temporarily (#9)
Disable ExistentialAny temporarily

### Motivation

Unfortunately until we adopt 5.9, adding ExistentialAny on upstream packages has unintended consequences for some downstream packages, so disabling for now. Details in https://github.com/apple/swift-openapi-generator/issues/120

### Modifications

Disabled the feature enforcement, but the code changes are there, so downstream adopters can still use them.

### Result

We won't be seeing the issue described in https://github.com/apple/swift-openapi-generator/issues/120.

### Test Plan

PR CI, which discovered the original issue.


Reviewed by: simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/9
0.1.2
2023-07-17 11:30:12 +02:00
Mahdi Bahrami 98213b70f9 Full compatibility with the "ExistentialAny" upcoming feature (#8)
Discussed and requested in
https://github.com/apple/swift-openapi-generator/pull/99#issuecomment-1630636372
2023-07-13 08:35:08 +01:00
Denil Chungath 32f3ae2f51 Relax deployment target to macOS 10.15 (#6)
### Motivation

Relax deployment target to macOS 10.15

### Modifications

- Reduced requirement from macOS 13 to macOS 10.15
- Added the minimum version to readme and documentation

### Result

- Users will be able to deploy it on projects with a minimum deployment
target of 10.15
0.1.1
2023-06-13 17:23:43 +02:00
Honza Dvorsky 84cf5f4c6b [Releases] Add a GitHub release config (#7)
[Releases] Add a GitHub release config

### Motivation

This config helps compose release notes easier.

### Modifications

Added a config file that instructs GitHub how to group PRs.

### Result

Releases can be mostly generated now.

### Test Plan

N/A


Reviewed by: simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/7
2023-06-13 17:23:07 +02:00
Yim Lee 19b8e98a0a CI: remove temporary gitconfig workaround (#5)
### Motivation

The repo is public now. There is no need for the workaround anymore.

### Modifications

Remove gitconfig workaround added in
https://github.com/swift-server/swift-openapi-async-http-client/pull/3
2023-05-30 13:43:39 -07:00
Honza Dvorsky 5d0da418fd Use an SSH URL to fetch Runtime in CI (#3)
Use an SSH URL to fetch Runtime in CI

(Same as: https://github.com/apple/swift-openapi-generator/pull/3)

### Motivation

Until the swift-openapi-runtime repository is made public, it cannot be
cloned using a HTTPS package URL without authentication, which is what
this package is using in its Package.swift.

This means CI isn't able to run for this package. However, CI is able to
clone this repository over SSH, which presents an opportunity for a
temporary workaround.

### Modifications

Add a temporary step to the Docker Compose CI flow, which creates a Git
config in a shared ephemeral volume with the following contents:

```gitconfig
[url "git@github.com:apple/swift-openapi-runtime"]
        insteadOf = https://github.com/apple/swift-openapi-runtime
```

### Result

The CI should be able to clone the private dependency and then succeed.

### Test Plan

Locally, this works:

```console
❯ docker-compose -f docker/docker-compose.yaml -f docker/docker-compose.2204.58.yaml run test
...
+ swift test -Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error
...
Fetching https://github.com/apple/swift-openapi-runtime
...
Fetched https://github.com/apple/swift-openapi-runtime (2.68s)
...
Executed 86 tests, with 0 failures (0 unexpected) in 3.265 (3.265) seconds
```

Also, if we use can use the `shell` Docker Compose service to see things
are configured correctly:

```console
root@20ab69e3f292:/code# echo $GIT_CONFIG_GLOBAL
/ci-gitconfig/gitconfig
root@20ab69e3f292:/code# cat $GIT_CONFIG_GLOBAL
[url "git@github.com:apple/swift-openapi-runtime"]
        insteadOf = https://github.com/apple/swift-openapi-runtime
```


Reviewed by: simonjbeaumont

Builds:
     ✔︎ pull request validation (5.8) - Build finished. 
     ✔︎ pull request validation (5.9) - Build finished. 
     ✔︎ pull request validation (nightly) - Build finished. 
     ✔︎ pull request validation (soundness) - Build finished. 

https://github.com/swift-server/swift-openapi-async-http-client/pull/3
2023-05-12 14:20:55 +02:00