Skip to content

Commit

Permalink
Merge pull request #170 from VirgilSecurity/release/v0.17.0
Browse files Browse the repository at this point in the history
Release v0.17.0
  • Loading branch information
SergeySeroshtan committed Aug 8, 2023
2 parents aa1e5c1 + 9286479 commit 4611c23
Show file tree
Hide file tree
Showing 92 changed files with 1,419 additions and 593 deletions.
10 changes: 10 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
binaries/VSCCommon.xcframework.zip filter=lfs diff=lfs merge=lfs -binary
binaries/VSCCrypto.xcframework.zip filter=lfs diff=lfs merge=lfs -binary
binaries/VSCFoundation.xcframework.zip filter=lfs diff=lfs merge=lfs -binary
binaries/VSCPythia.xcframework.zip filter=lfs diff=lfs merge=lfs -binary
binaries/VSCRatchet.xcframework.zip filter=lfs diff=lfs merge=lfs -binary
binaries/VSCCommon.xcframework.zip.sha256sum filter=lfs diff=lfs merge=lfs -text
binaries/VSCCrypto.xcframework.zip.sha256sum filter=lfs diff=lfs merge=lfs -text
binaries/VSCFoundation.xcframework.zip.sha256sum filter=lfs diff=lfs merge=lfs -text
binaries/VSCPythia.xcframework.zip.sha256sum filter=lfs diff=lfs merge=lfs -text
binaries/VSCRatchet.xcframework.zip.sha256sum filter=lfs diff=lfs merge=lfs -text
45 changes: 45 additions & 0 deletions .github/workflows/build-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: build-linux
on:
push:
branches:
- "**"
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Configure toolchain
run: |
sudo apt update
sudo apt install valgrind
sudo apt install cloc
cmake --version
python3 --version
pip3 list --outdated
pip3 install -U protobuf grpcio-tools
- name: Configure project
run: >
cmake -S. -Bbuild
-DENABLE_HEAVY_TESTS=OFF
-DVIRGIL_C_MT_TESTING=OFF
-DENABLE_BENCHMARKING=ON
-DVIRGIL_POST_QUANTUM=ON
-DVIRGIL_PROGRAMS=ON
- name: Build for memcheck
run: cmake --build build -- -j$(nproc)
- name: Run memcheck
working-directory: build
run: |
ctest -T memcheck --output-on-failure
cat Testing/Temporary/MemoryChecker.*.log
- name: Build multi-threading tests
run: |
cmake -S. -Bbuild -DVIRGIL_C_MT_TESTING=ON
cmake --build build -- -j$(nproc)
- name: Run multi-threading tests
working-directory: build
run: ctest -L multi-threading --output-on-failure
- name: Run benchmarks
run: ./build/benchmarks/foundation/bench
- name: Calulate line of codes
run: cmake --build build --target cloc
42 changes: 42 additions & 0 deletions .github/workflows/build-macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: build-macos
on:
push:
branches:
- 'main'
- 'develop'
- 'release/**'
- 'hotfix/**'
jobs:
build-macos:
runs-on: macos-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v3
- name: Configure toolchain
run: |
cmake --version
python3 --version
pip3 install protobuf grpcio-tools
- name: Configure project
run: >
cmake -S. -Bbuild
-DVIRGIL_C_MT_TESTING=ON
-DENABLE_BENCHMARKING=ON
-DVIRGIL_PROGRAMS=ON
- name: Build project
run: cmake --build build -- -j$(sysctl -n hw.physicalcpu)
- name: Run tests
run: ctest --output-on-failure
working-directory: build

SPM:
runs-on: macos-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: actions/checkout@v3
- name: Check that SPM has correspond xcframeworks hash
run: ./scripts/check_spm_xcframeworks.sh
- name: Run SPM tests
run: ./scripts/run_spm_tests_with_local_binaries.sh
26 changes: 0 additions & 26 deletions .github/workflows/build.yml

This file was deleted.

34 changes: 19 additions & 15 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,28 @@ name: Release
on:
push:
tags: "*"

jobs:
release-apple-xcframeworks:
runs-on: macos-12
runs-on: macos-13
env:
DEVELOPER_DIR: /Applications/Xcode_14.3.1.app/Contents/Developer
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest
- uses: actions/checkout@v2
- name: Configure toolchain
run: |
cmake --version
python3 --version
pip3 install protobuf grpcio-tools
- name: Build Frameworks
run: ./scripts/build_apple_frameworks.sh
- uses: actions/checkout@v3
- name: Check that SPM has correspond xcframeworks hash
run: ./scripts/check_spm_xcframeworks.sh
- name: Release
uses: softprops/action-gh-release@v1
with:
draft: true
files: ./build_apple/VSCFrameworks/*.xcframework.zip
draft: false
prerelease: true
files: ./binaries/*.xcframework.zip
- name: Check SPM
run: swift test
- name: Deploy Cocoapods
env:
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
run: |
pod trunk push VSCCrypto.podspec
pod trunk push --synchronous VirgilCryptoFoundation.podspec
pod trunk push --synchronous VirgilCryptoPythia.podspec
pod trunk push --synchronous VirgilCryptoRatchet.podspec
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#####
build*/
.build*/
cmake-build*/
install*/
.depends_cache/
Expand Down
45 changes: 0 additions & 45 deletions .travis.yml

This file was deleted.

10 changes: 8 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,20 @@

cmake_minimum_required(VERSION 3.12 FATAL_ERROR)

project(virgil_crypto VERSION 0.16.3 LANGUAGES C)
project(virgil_crypto VERSION 0.17.0 LANGUAGES C)


# ---------------------------------------------------------------------------
# Forced build options
# ---------------------------------------------------------------------------
set(CMAKE_POSITION_INDEPENDENT_CODE ON)

# ---------------------------------------------------------------------------
# Global policies
# ---------------------------------------------------------------------------
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
cmake_policy(SET CMP0135 NEW)
endif()

# ---------------------------------------------------------------------------
# Helper modules
Expand All @@ -57,7 +63,7 @@ include("cmake/protobuf.cmake")
# ---------------------------------------------------------------------------
# Version options
# ---------------------------------------------------------------------------
set(VIRGIL_CRYPTO_VERSION_LABEL "" CACHE STRING "Version label, i.e. beta, rc1.")
set(VIRGIL_CRYPTO_VERSION_LABEL "dev.1" CACHE STRING "Version label, i.e. beta, rc1.")

# ---------------------------------------------------------------------------
# Build options
Expand Down
23 changes: 23 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# virgil-crypto-c ChangeLog (Sorted by date)

## Version 0.17.0 released 2023-08-09


### Changes

- Apple: Remove support for Apple BITCODE
- Apple: Bump min supported macOS version to 10.13
- Ext: Upgrade Relic to the version 0.6.0
- This version is **incompatible** with 0.5
- Lib/Pythia: Adopt to incompatible Relic version
- Now `blind()` produce different value, so stored blinded values can not be `deblinded()`
- Apple: Move support of CocoaPods and SPM from https://github.com/VirgilSecurity/virgil-cryptowrapper-x to this repo

### Bugfix

- Lib: Fix type of key_id argument within vscr_ratchet_skipped_messages module
- Previously this leads to compilation error on some compilers, like emscripten

### Improvements

- Wrapper/JS: Update dependencies


## Version 0.16.3 released 2022-10-23

### Features
Expand Down
Loading

0 comments on commit 4611c23

Please sign in to comment.