| name | update-liboqs |
| description | Update liboqs native library version. Use when checking for updates, upgrading liboqs, bumping version, or updating native dependencies. |
Update liboqs Version
Guide for updating the liboqs native library version in this project.
Quick Update (Automatic)
# Check for updates
make check
# Check and apply updates automatically
make check ARGS="--update"
This will:
- Check GitHub for latest liboqs release
- Update
pubspec.yamlwith newliboqs.native_version - Update CHANGELOG.md with new entry
Manual Update Process
Step 1: Check Current Version
make version
Or check pubspec.yaml:
liboqs:
native_version: "0.12.0" # Current version
Step 2: Update Version
Edit pubspec.yaml:
liboqs:
native_version: "0.13.0" # New version
Step 3: Regenerate FFI Bindings
make regen
This downloads the new liboqs headers and regenerates lib/src/bindings/liboqs_bindings.dart.
Step 4: Run Tests
make test
Step 5: Commit Changes
git add pubspec.yaml lib/src/bindings/ CHANGELOG.md
git commit -m "Update liboqs to 0.13.0"
git push
CI will automatically build native libraries for all platforms.
Check Options
# Just check (no changes)
make check
# Check and update
make check ARGS="--update"
# Update to specific version
make check ARGS="--update --version 0.13.0"
# Force version bump type
make check ARGS="--update --bump major"
make check ARGS="--update --bump minor"
make check ARGS="--update --bump patch"
# Skip changelog (CI uses this)
make check ARGS="--update --no-changelog"
# JSON output for CI
make check ARGS="--json"
Version Locations
| File | Field | Description |
|---|---|---|
pubspec.yaml |
liboqs.native_version |
Native library version |
pubspec.yaml |
version |
Dart package version |
CHANGELOG.md |
Latest entry | What changed |
After CI Builds
When CI completes after pushing:
- Native libraries are built for all platforms
- Artifacts are combined
- FFI bindings are regenerated (if API changed)
- Changes are committed back to repo
Troubleshooting
"No updates available"
- You're already on the latest version
- Check https://github.com/open-quantum-safe/liboqs/releases
"Binding generation failed"
- New liboqs version may have breaking API changes
- Check liboqs release notes
- May need to update wrapper code in
lib/src/
Tests fail after update
- API may have changed
- Check if algorithm names changed
- Review liboqs changelog for breaking changes