Skip to content

Commit

Permalink
Allow using native TLS root certs (#468)
Browse files Browse the repository at this point in the history
* Allow using native TLS root certs

* Test new feature, and ensure sqlite3 is present in the image
  • Loading branch information
djmitche authored Oct 13, 2024
1 parent ea3c68e commit 94a6ffc
Show file tree
Hide file tree
Showing 4 changed files with 70 additions and 1 deletion.
4 changes: 4 additions & 0 deletions .github/workflows/rust-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ jobs:
features:
- ""
- "server-sync"
- "tls-native-roots"

name: "taskchampion ${{ matrix.features == '' && 'with no features' || format('with features {0}', matrix.features) }}"
runs-on: ubuntu-latest
Expand All @@ -29,6 +30,9 @@ jobs:
path: ~/.cargo/registry
key: ubuntu-latest-stable-cargo-registry-${{ hashFiles('**/Cargo.lock') }}

- name: Install system packages
run: sudo apt-get install -y libsqlite3-dev

- name: Cache cargo build
uses: actions/cache@v4
with:
Expand Down
63 changes: 62 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions taskchampion/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ encryption = ["dep:ring"]
cloud = []
# static bundling of dependencies
bundled = ["rusqlite/bundled"]
# use native CA roots, instead of bundled
tls-native-roots = ["ureq/native-certs"]

[package.metadata.docs.rs]
all-features = true
Expand Down
2 changes: 2 additions & 0 deletions taskchampion/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ Support for some optional functionality is controlled by feature flags.
* `server-sync` - sync to the taskchampion-sync-server
* `sync` - enables all of the sync features above
* `bundled` - activates bundling system libraries like sqlite
* `tls-native-roots` - use native (system) TLS roots, instead of those bundled with rustls, by
(indirectly) enabling the `rustls` feature `rustls-tls-native-roots`.
By default, `sync` and `bundled` are enabled.
Expand Down

0 comments on commit 94a6ffc

Please sign in to comment.