Support loading jwk from json#6
Draft
kleinmrk wants to merge 93 commits into
Draft
Conversation
8c82cc2 to
3241aef
Compare
Pull Request Test Coverage Report for Build 3170089274
💛 - Coveralls |
6482b90 to
5f89409
Compare
9b957dc to
e516be9
Compare
6e36d68 to
abbd94f
Compare
abbd94f to
55b5b14
Compare
…nt instead (Thalhammer#254) * Do not embed nlohmann::json directly, use find_package / FetchContent instead * Clea up traits workflow Headers are no longer vendored Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
* remove exception outside of error namespace * linter
* 📤 Use nlohmann_json tar release This avoids downloading the whole git repository and restricts the download to the pieces that are actually important, saving time and traffic.
Hides API changes between older OpenSSL versions behind a helper function to improve readability and maintainability of the application code.
This PR is related to discussion Thalhammer#243 and is a 3 file contribution: - `nuget\jwt-cpp.nuspec` contains all the descriptions of the NuGet package, including authors, and the path of files to be copied. - `nuget\jwt-cpp.targets` automatically set up the "additional include directories" when the package is installed. - `.github\workflows\nuget.yml` contains the GitHub Action to pack and pub the NuGet package. Co-authored-by: Diogo Strube de Lima <diogo.strube.lima@gmail.com> Co-authored-by: Chris Mc <prince.chrismc@gmail.com> Co-authored-by: Dominik Thalhammer <dominik@thalhammer.it>
The CMake min-req CI action takes ages to complete which is really annoying if you have to wait for it to finish in addition to wasting compute ressources. Turns out the vast majority of its time is spent building cmake every time, which is clearly not necessary. This change updates the workflow to cache the built cmake version and restore it if needed cutting ~7.5 minutes of the build.
* Update traits.h * fix actions fails * update version of jsoncons warkflow traits and install action * update example/traits/danielaparker-jsoncons.cpp * Drop support of the 0.x release of jsoncons * Update jsoncons to 1.3.2 and nlohmann-json to 3.12.0 * revert the changes for nlohmann-json --------- Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
* update nlohmann-json to 3.12.0 (fix cmake min version) * Bump fetch ver Needs new md5 * 3.12 md5 * Limit hunter cmake version * bump jsoncpp version to v1.9.6 as well * bump workflow as well as default --------- Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
introduced in Thalhammer#378
* use ubuntu-latest + update actions/cache * performance-avoid-endl https://clang.llvm.org/extra/clang-tidy/checks/performance/avoid-endl.html * misc-const-correctness https://clang.llvm.org/extra/clang-tidy/checks/misc/const-correctness.html * misc-const-correctness https://clang.llvm.org/extra/clang-tidy/checks/misc/const-correctness.html * formatting * clang format and tidy and already installed https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md#language-and-runtime * explict clang-format-14 * disable include cleaner * format * format * install lcov to get patching geninfo for gcc 13 * revert "install lcov to get patching geninfo for gcc 13"
* Support passing ssl library key handles to algorithms * Support passing public keys too for ssl library key handles * add documentation to ecdsa constructor * Support passing ssl library rsa keys * reformat code --------- Co-authored-by: Dominik Thalhammer <dominik@thalhammer.it> Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
Fixes error
```
The link interface of target "jwt-cpp::jwt-cpp" contains:
picojson::picojson>
but the target was not found. Possible reasons include:
* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing.
```
Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
…halhammer#398) The examples have been using older cmake_minimum_required, given support for versions <3.10 is deprecated since 3.31, synchronize the minimum required version from the main CMakeLists.txt (version 3.14) into examples and tests. closes Thalhammer#397
* Add size checks before casting to int Added checks to ensure sizes fit into int before casting. * Fix windows build without NOMINMAX --------- Co-authored-by: Dominik Thalhammer <thalhammer.d@googlemail.com> Co-authored-by: Dominik Thalhammer <dominik@thalhammer.it>
* Cast data size to unsigned int * correcting CI worktree * Add LCOV_ARGS to Fix geninfo line mismatch error * Add unused error ignore to LCOV_ARGS * Refactor Format to match lint requirements * Fix formatting in CMakeLists.txt for coverage setup * Fix coverage setup for jwt-cpp-test
* Fix lcov line number mismatch for ClaimTest::AudienceAsString (#1) * Add blank line before TEST macro to fix coverage line mismatch * Verify tests pass after fix * Remove CodeQL build artifacts and update .gitignore --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: JurgenLB <77586573+JurgenLB@users.noreply.github.com> * Remove blank line * Add concurrency to traits job Add concurrency settings to traits job in workflow * Additional spacing added to prevent geninfo line mismatch errors * Fix concurrency group in traits workflow to prevent job cancellations * fix-msvc-type-trait-warnings * Apply clang-format * Fix formatting issues * Fix formatting issues in jwt.h * format * Update jwt.h * Remove unwanted reference --------- Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
* Update LibreSSL version to 4.2.1 in CI configuration and documentation * update OpenSSLErrorTest for LibreSSL 4.2.0+ Add Linux LibreSSL support in CMake presets * add debug output to failure for all ssl libraries * fix type in libressl version check * chore: lint
* Support Ed25519 for LibreSSL 3.7.1+ * fix EdDSACertificate error code test for new implementation --------- Co-authored-by: Chris McArthur <prince.chrismc@gmail.com>
…hammer#412) * Extra install scripts for jsonconc. libressl, and wolfssl this make it easier to run locally when testing * make script exe plus cleanup
…Thalhammer#411) * Fix CMake cache key to use container image fallback * fix cache key for containers * pass cache key in one level higher * store info one level higher again * try $env:ImageOS * capture it from a step maybe * steal cache key logic from setup-go action * cleanup + comment explanation * spelling
asan and matrix for latest releases across all versions. Add back badges for older paid support releases and cleanup docs
updated doxygen to 1.14.0 and doxygen-awesome-css to 2.4.1
* feat: add glaze traits * fix: format * name glaze_json, add to ci, add example * code review * linter * disable linter for glaze tests * add badge to docs for new library --------- Co-authored-by: Curve <fynnbwdt@gmail.com>
…ammer#419) * typed tests for all the various json implementation more coverage of all the various traits * Configure LCOV_OPTS for coverage reporting Add LCOV_OPTS to ignore errors in coverage report * linter * Update LCOV_OPTS to ignore multiple mismatch errors * Configure LCOV to ignore mismatches Added configuration for LCOV to ignore mismatches in coverage reports. * try to pass lcov args + cleanup excludes * directly pass lcov args * fix min cmake req prepend is 3.15, seems overkill
drop no longer support CMake extension
* add reflect json traits * jwt-cpp defaults * fix clang tidy warnings * fix clang tidy warnings * rename directory * add tests * add tests * add tests * replace unnecessary copy with move * gate reflect cpp tests behind flag * reflect cpp CI work * reflect-cpp example * reflect-cpp CI * reflect-cpp CI * match naming + update ci * first pass code review * linter * linter * align naming * make file +x * align target name fix order or targets in tests * fix typo * Fix target_link_libraries syntax for jwt-cpp * cleanup example code * add reflect-json to coverage tests --------- Co-authored-by: Ali Girayhan Ozbay <aligirayhan.ozbay@abex.capital> Co-authored-by: Ali Girayhan Özbay <aligirayhan@ozbay.org>
…sting (Thalhammer#423) * utilize TypeParam to change traits implementation explains why coverage hits were so slow * fixup danielaparker-jsoncons locally * fixup open_source_parsers_jsoncpp tested locally * cleanup lcov args * add install script for osp/jsoncpp * linting * install script for boost * boost outputs json in different order this si allowed so the tests are now more relaxed when matching tokens * update gtest to install gmock as well * update gtest * add default version for gtest * lower gtest for min cmake compat test * fix typo * find gtest package is now config * add back install for lcov * try forcing install on * debug print cmake cache file from gtest * try install with make directly * workaround for gtest 1.16 cmake install * lower gtest to match cmake_min_versions * enable picojson lint tests generation * move negative decode tests * linter * explicit trait test for picojson * lint
* undo unwanted changes from Thalhammer#405 and Thalhammer#408 * Cast asInt64 result to integer_type * Fix double type handling for int64_type * unwanted change --------- Co-authored-by: Chris Mc <prince.chrismc@gmail.com>
* quick poc at using cmake to generate the defaults.h traits files * add test preset to dev * self review * poc moving logic to actions * Remove stale defaults.h generation configuration * Fix file path in lint workflow configuration * chmod +x * linter * linter * clean up action and lint workflow * rm source_dir cli arg from cmake script now just assume the current directory is correct * linter * fix order * add workflow preset for running unit test sadly then is less reusable than i wanted
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.