Skip to content

Commit 94068ad

Browse files
giarc3skeet70
andauthored
Prepare for 0.7 (#148)
* Prepare for 0.7 * Local build.js env change * Working example app * Example tracks latest * Wait for compilation before page load to prevent chunk load issues if the page loads before vendor code has been compiled --------- Co-authored-by: Murph Murphy <murph@clurictec.com>
1 parent 6460c36 commit 94068ad

File tree

18 files changed

+163
-29146
lines changed

18 files changed

+163
-29146
lines changed

.github/workflows/bump-version.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ concurrency:
55
cancel-in-progress: true
66

77
on:
8-
push:
9-
branches:
10-
- main
118
workflow_dispatch:
129
inputs:
1310
version:
@@ -17,5 +14,6 @@ jobs:
1714
bump:
1815
uses: IronCoreLabs/workflows/.github/workflows/bump-version.yaml@bump-version-v1
1916
with:
17+
release_prereleases: false
2018
version: ${{ inputs.version }}
2119
secrets: inherit

.github/workflows/publish.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: Typescript Publish
2+
on:
3+
release:
4+
types:
5+
- "created" # triggered by Bump Version creating a release
6+
workflow_dispatch:
7+
jobs:
8+
typescript-release:
9+
uses: IronCoreLabs/workflows/.github/workflows/typescript-release.yaml@typescript-release-v1
10+
with:
11+
pre_publish_steps: "./build.js"
12+
publish_working_directory: "pkg"
13+
secrets: inherit

.github/workflows/wasm-ci.yaml

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,38 +2,40 @@ name: WASM CI
22
concurrency:
33
group: ${{ github.workflow }}-${{ github.ref }}
44
cancel-in-progress: true
5-
'on':
5+
on:
66
push:
77
branches:
8-
- main
9-
pull_request: null
10-
workflow_dispatch: null
8+
- main
9+
pull_request:
10+
workflow_dispatch:
1111
jobs:
1212
test:
1313
runs-on: ubuntu-22.04
1414
strategy:
1515
matrix:
1616
node_version:
17-
- '18'
17+
- 24
1818
steps:
19-
- uses: actions/checkout@v5
20-
- uses: actions-rs/toolchain@v1
21-
with:
22-
profile: minimal
23-
toolchain: stable
24-
override: true
25-
target: wasm32-unknown-unknown
26-
- uses: taiki-e/cache-cargo-install-action@v2
27-
with:
28-
# needs to match Cargo.toml and flake.nix version
29-
tool: wasm-bindgen-cli@0.2.100
30-
- uses: actions/setup-node@v6
31-
with:
32-
node-version: ${{ matrix.node_version }}
33-
cache: yarn
34-
- name: Install modules
35-
run: yarn
36-
- name: Compile
37-
run: cargo update && yarn run compile
38-
- name: Run tests
39-
run: yarn run test
19+
- uses: actions/checkout@v5
20+
- uses: actions-rs/toolchain@v1
21+
with:
22+
profile: minimal
23+
toolchain: stable
24+
override: true
25+
target: wasm32-unknown-unknown
26+
- uses: taiki-e/cache-cargo-install-action@v2
27+
with:
28+
# needs to match Cargo.toml and flake.nix version
29+
tool: wasm-bindgen-cli@0.2.104
30+
- uses: actions/setup-node@v6
31+
with:
32+
node-version: ${{ matrix.node_version }}
33+
cache: yarn
34+
- name: Install modules
35+
run: yarn
36+
- name: Compile
37+
run: cargo update && yarn run compile
38+
- name: Run tests
39+
run: yarn run test
40+
- name: Test build
41+
run: ./build.js

CHANGELOG.md

Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,66 @@
11
# Changelog
22

3+
## 0.7.0
4+
5+
- Upgrade all JS and Rust dependencies
6+
- Upgrade to Rust 2024 edition
7+
- Rework release process
8+
39
## 0.6.0
410

5-
+ Removed `setRandomSeed` and `pbkdf2SHA256` from `recrypt_wasm_binding.d.ts` and related places. These were only needed for Edge Legacy and IE11 which are no longer supported by recrypt-wasm-binding.
6-
+ Removed support for MS Edge Legacy (version <= 44) as Microsoft has ended support for Edge Legacy
7-
+ Prep for Rust 2021 Edition
11+
- Removed `setRandomSeed` and `pbkdf2SHA256` from `recrypt_wasm_binding.d.ts` and related places. These were only needed for Edge Legacy and IE11 which are no longer supported by recrypt-wasm-binding.
12+
- Removed support for MS Edge Legacy (version <= 44) as Microsoft has ended support for Edge Legacy
13+
- Prep for Rust 2021 Edition
814

915
## 0.5.8
1016

11-
+ Upgrade all JS and Rust dependencies.
17+
- Upgrade all JS and Rust dependencies.
1218

1319
## 0.5.7
1420

15-
+ Upgrade `ironcore-search-helpers` to 0.1.2.
16-
+ `Recrypt.EncryptedSearch.transliterateString` added to allow filtering of lists after encrypted search.
21+
- Upgrade `ironcore-search-helpers` to 0.1.2.
22+
- `Recrypt.EncryptedSearch.transliterateString` added to allow filtering of lists after encrypted search.
1723

1824
## 0.5.6
1925

20-
+ Upgrade `recrypt-rs` to 0.11.0
21-
+ Expose new class for performing encrypted search. New class is `EncryptedSearch` and contains two methods for substring search.
22-
+ `const encSearch = new Recrypt.EncryptedSearch();`
23-
+ `encSearch.generateHashesForString(s: string, salt: Uint8Array, partitionId?: string): Uint32Array`
24-
+ `encSearch.generateHashesForStringWithPadding(s: string, salt: Uint8Array, partitionId?: string): Uint32Array`
26+
- Upgrade `recrypt-rs` to 0.11.0
27+
- Expose new class for performing encrypted search. New class is `EncryptedSearch` and contains two methods for substring search.
28+
- `const encSearch = new Recrypt.EncryptedSearch();`
29+
- `encSearch.generateHashesForString(s: string, salt: Uint8Array, partitionId?: string): Uint32Array`
30+
- `encSearch.generateHashesForStringWithPadding(s: string, salt: Uint8Array, partitionId?: string): Uint32Array`
2531

2632
## 0.5.5
2733

28-
+ Consume latest `0.9` release of Recrypt to consume bug fix for `addPrivateKeys` and `subtractPrivateKeys` methods to correctly support PrivateKey rotation.
34+
- Consume latest `0.9` release of Recrypt to consume bug fix for `addPrivateKeys` and `subtractPrivateKeys` methods to correctly support PrivateKey rotation.
2935

3036
## 0.5.4
3137

32-
+ Upgrade `recrypt-rs` to 0.8.4
38+
- Upgrade `recrypt-rs` to 0.8.4
3339

3440
## 0.5.3
3541

36-
+ Upgrade `recrypt-rs` to 0.8.2
37-
+ Expose two new functions for adding or subtracting two private keys.
38-
+ `Recrypt.addPrivateKeys(key1: Uint8Array, key2: Uint8Array): Uint8Array`
39-
+ `Recrypt.subtractPrivateKeys(key1: Uint8Array, key2: Uint8Array): Uint8Array`
42+
- Upgrade `recrypt-rs` to 0.8.2
43+
- Expose two new functions for adding or subtracting two private keys.
44+
- `Recrypt.addPrivateKeys(key1: Uint8Array, key2: Uint8Array): Uint8Array`
45+
- `Recrypt.subtractPrivateKeys(key1: Uint8Array, key2: Uint8Array): Uint8Array`
4046

4147
## 0.5.1
4248

43-
+ Upgrade all dependencies to latest version, including recrypt-rs (0.7.1).
44-
+ Enable feature flags to use u32 backend for `ed25519-dalek`. Reduces the size of the resulting WASM binary.
49+
- Upgrade all dependencies to latest version, including recrypt-rs (0.7.1).
50+
- Enable feature flags to use u32 backend for `ed25519-dalek`. Reduces the size of the resulting WASM binary.
4551

4652
## 0.4.3
4753

48-
+ Upgrade to the latest released version of recrypt-rs (0.6.1) to avoid depending on fork of ed25519.
54+
- Upgrade to the latest released version of recrypt-rs (0.6.1) to avoid depending on fork of ed25519.
4955

5056
## 0.4.2
5157

52-
+ If/when random seed is set, it's value will be cleared after use so it cannot be used as a seed for any subsequent operations.
58+
- If/when random seed is set, it's value will be cleared after use so it cannot be used as a seed for any subsequent operations.
5359

5460
## 0.4.1
5561

56-
+ Added new method `setRandomSeed(seed: Uint8Array)` that can be used to pre-seed the PRNG that is needed in order to use this library. This can be useful to support loading this WASM module in a WebWorker and also support MSEdge which doesn't allow for random number generation in a WebWorker. Without being able to pre-seed the PRNG this library would fail in MSEdge in a WebWorker. If using this random seed, it should be a 32 byte Uint8Array of random bytes and needs to be invoked before creating an instance of the `Api256` class.
57-
+ Added a new method `pbkdf2SHA256(salt: Uint8Array, password: Uint8Array, iterations: number)` which adds support for generating a derived cryptographic key from the provided salt and password bytes. Will use SHA-256 as the hashing method to generate a 32 byte derived key based on the number of iterations provided.
62+
- Added new method `setRandomSeed(seed: Uint8Array)` that can be used to pre-seed the PRNG that is needed in order to use this library. This can be useful to support loading this WASM module in a WebWorker and also support MSEdge which doesn't allow for random number generation in a WebWorker. Without being able to pre-seed the PRNG this library would fail in MSEdge in a WebWorker. If using this random seed, it should be a 32 byte Uint8Array of random bytes and needs to be invoked before creating an instance of the `Api256` class.
63+
- Added a new method `pbkdf2SHA256(salt: Uint8Array, password: Uint8Array, iterations: number)` which adds support for generating a derived cryptographic key from the provided salt and password bytes. Will use SHA-256 as the hashing method to generate a 32 byte derived key based on the number of iterations provided.
5864

5965
## 0.4.0
6066

0 commit comments

Comments
 (0)