Skip to content

Commit

Permalink
Merging Release/2023.4-galaxy (#4111)
Browse files Browse the repository at this point in the history
* added info on post_process.sh

* added new pages

* added new pages to summary

* added new examples pages

* update plugin

* stripped down + added new links

* added deprecation warning

* smol reword

* initialise operators update branch

* update smoosh faq - two options

* update smoosh faq - two options

* correction based on feedback

* correction based on feedback

* update exit policy info

* create legal region pages - us, swiss

* add legal findings switzerland

* add regions to SUMMARY.md

* add regions to SUMMARY.md

* syntax fix

* syntax fix

* add page license

* syntax fix

* fix based on feedback

* Run embedded ip-forwarder in gateway

* config handling

* rustfmt

* Fix test compilation

* Remove hack

* Proper config backwards compatibility

* [mixnode] replace rocket with axum (#4071)

* axum-equivalent mixnode http api routes

* replaced all rocket routes with axum equivalents

* removed '_axum' suffix from the routes

* No need to show setup-ip-forwarder just yet

* Update security disclosure process

* unified native, socks5, NR client inits

* combine client run args

* moved to different submodule

* putting no cover and fastmode to common args

* removed the contracicting flag

* Incorporate basic nym-node HTTP API (with swagger) to mixnodes (#4075)

* basic nym-node router

* loading legacy routes

* dead code

* config migrations

* wasm lock

* Rename to old_config_v1_1_31.rs

* Update files to reflect new filename

* Rename to nym-ip-packet-router

* Rename to ip-packet-router directory

* Fix missed rename in template

* add exit policy implementation steps

* add exit policy implementation steps

* syntax fix

* Big chunk of search replace to the new name

* rustfmt

* add exit policy implementation steps

* ci: add workflow_dispatch to ci-nym-vpn-ui-rust

* Set name to ci-nym-api-tests

* replaced '--disable-sign-ext' with '--signext-lowering' when running wasm-opt (#3896)

* replaced '--disable-sign-ext' with '--signext-lowering' when running wasm-opt + updated wasm-opt

* updated wasm-opt used in CI

* ci: iterate on ci-nym-vpn-ui-rust

* ci: more iterate on ci-nym-vpn-ui-rust

* ci: tidy ci-nym-vpn-ui-js

* added examples pages

* added notepad to gitignore file

* added community examples

* streamline integrations files

* streamlined node types

* add token economics paper info

* added shipyard info

* try change ifconfig.me -> icanhazip.com

* tweak

* Add nodejs wrapper for wasm sphynx client

* Add mix-fetch for nodejs

* Add hack for working with old nym gateways

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* Polishing nodejs-client and mix-fetch-node

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* add --with-exit-policy flag

* change --host -> 146.70.170.3

* syntax fix

* change --host to -4 https://ifconfig.me

* print info on exit policy on embedded NR init (#4086)

* ci: rename to ci-binary-config-checker

* ci: rename cd-docs

* ci: move nightly to ubuntu-20.04

* ci: sort out nightly wallet build

* ci: nightly-build sed debug = false

* ci: use macos-latest in nightly-build

* ci: create nightly-nym-connect-desktop-build

* finish exit gateway setup

* Revert "Add hack for working with old nym gateways"

This reverts commit 7129de4.
To avoid breaking wss

* add example setup-network-requester

* fix: adding some polyfills to nodejs-client and mix-fetch

During the merge of the nodejs-wasm-client there seems to be some
losses, this commit makes nodejs-client and the nodejs mix-fetch work
with the internal tools. Still looking into Tommys qa feedback.

* spellcheck + table format fix

* Fix the getRandomValue crypto polyfill issue

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* Update mix-fetch-node to rc.3

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* add wss host setup

* new directory structure for rust SDK docs

* first draft of expanded rust stuff

* ci: fix typo in workflow name

* ci: switch nightly-build to github hosted windows-latest

* remove ./ from SUMMARY.md

* change syntax *binary* ->

* change phrasing

* change phrasing

* add correct cmdrun auto flow

* add reversed proxy ports

* tweak

* fixed broken link

* admonish plugin upgrade

* fix broken imports

* tweak

* updated import info

* removed todo - checked dependency versioning

* ci: change nightly-nym-wallet-build to windows-latest

* ci: switch nightly-nym-connect-desktop-build to windows-latest

* add smoosh link to intro

* first pass at troubleshooting doc

* first pass at helper messages

* Github Actions: fix cd-docs

* Github actions: remove deployment to website-dev

* Update Cargo.lock

* upgraded mdbook-admonish version

* added code example to helpers

* revert previous

* Fix sdk publish action (#4088)

* fix: sdk publish script

The bash implementation used in the GitHub CI runner seems to have an
issue with incrementing a variable with `(( COUNTER++ ))` while `((
COUNTER=+1 ))` works fine.

* Add more sdk packages to workspace and normalize build sdk scripts

* Disable workspaces in npm publish sdk

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* Continue publishing even when it fails

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

---------

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>

* Add NodeJS mixFetch to version bump tool

* Update SDK contract client

* Release Typescript SDK to version 1.2.1

* Fix lint error

* Fix lint error

* added open proxies

* fixed addr

* ci: cargo clean before clippy in nightly build

* Create IpForwarderService

* on_message

* Rename remaining places to ip packet router

* send back to mixnet

* rustfmt

* Add RoutingMode enum

* rustfmt

* Take RoutingMode as argument

* NYM_CLIENT_ADDR

* Fix compilation on non-linux

* Remove expect on NYM_CLIENT_ADDR

* updated mdbook admonish assets

* install admonish to all books

* added links + typo fixes

* add exit policy to existing NR

* Bump mixnode version and update changelog

---------

Signed-off-by: Sebastian Martinez <me@sebastinez.dev>
Co-authored-by: mfahampshire <maxhampshire@pm.me>
Co-authored-by: serinko <97586125+serinko@users.noreply.github.com>
Co-authored-by: Jon Häggblad <jon.haggblad@gmail.com>
Co-authored-by: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Co-authored-by: Raphaël Walther <raphael@nymtech.net>
Co-authored-by: Raphaël Walther <48209673+raphael-walther@users.noreply.github.com>
Co-authored-by: Tommy Verrall <60836166+tommyv1987@users.noreply.github.com>
Co-authored-by: Sebastian Martinez <me@sebastinez.dev>
Co-authored-by: mfahampshire <mfahampshire@protonmail.ch>
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
Co-authored-by: mx <33262279+mfahampshire@users.noreply.github.com>
  • Loading branch information
12 people authored Nov 7, 2023
1 parent 5df5918 commit e6652b2
Show file tree
Hide file tree
Showing 234 changed files with 14,854 additions and 1,931 deletions.
28 changes: 2 additions & 26 deletions .github/workflows/cd-docs.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CD docs
name: cd-docs

on:
workflow_dispatch:
Expand Down Expand Up @@ -26,7 +26,7 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: build
args: --workspace --release --all
args: --workspace --release
- name: Install mdbook
run: (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.4.33" mdbook)
- name: Install mdbook plugins
Expand All @@ -39,30 +39,6 @@ jobs:
run: cd documentation && ./build_all_to_dist.sh
continue-on-error: false

- name: Deploy branch master to dev
continue-on-error: true
uses: easingthemes/ssh-deploy@main
env:
SSH_PRIVATE_KEY: ${{ secrets.CD_WWW_SSH_PRIVATE_KEY }}
ARGS: "-rltgoDzvO --delete"
SOURCE: "dist/docs/"
REMOTE_HOST: ${{ secrets.CD_WWW_REMOTE_HOST_DEV }}
REMOTE_USER: ${{ secrets.CD_WWW_REMOTE_USER }}
TARGET: ${{ secrets.CD_WWW_REMOTE_TARGET }}/
EXCLUDE: "/node_modules/"

- name: Deploy branch master to prod
if: github.ref == 'refs/heads/master'
uses: easingthemes/ssh-deploy@main
env:
SSH_PRIVATE_KEY: ${{ secrets.CD_WWW_SSH_PRIVATE_KEY }}
ARGS: "-rltgoDzvO --delete"
SOURCE: "dist/docs/"
REMOTE_HOST: ${{ secrets.CD_WWW_REMOTE_HOST_PROD }}
REMOTE_USER: ${{ secrets.CD_WWW_REMOTE_USER }}
TARGET: ${{ secrets.CD_WWW_REMOTE_TARGET }}/
EXCLUDE: "/node_modules/"

- name: Post process
run: cd documentation && ./post_process.sh
continue-on-error: false
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Run config checks on all binaries
name: ci-binary-config-checker

on:
workflow_dispatch:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci-contracts-upload-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@ jobs:
- name: Install Rust stable
uses: actions-rs/toolchain@v1
with:
toolchain: 1.69.0
toolchain: stable
target: wasm32-unknown-unknown
override: true

- name: Install wasm-opt
uses: ./.github/actions/install-wasm-opt
with:
version: '112'
version: '114'

- name: Build release contracts
run: make contracts
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: build
args: --workspace --release --all
args: --workspace --release
- name: Install mdbook
run: (test -x $HOME/.cargo/bin/mdbook || cargo install --vers "^0.4.35" mdbook)
- name: Install mdbook plugins
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/ci-nym-api-tests.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CI for Nym API Tests
name: ci-nym-api-tests

on:
workflow_dispatch:
Expand All @@ -16,10 +16,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2

- name: Install npm
run: npm install

- name: Node v18
uses: actions/setup-node@v3
with:
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/ci-nym-connect-desktop-rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,12 @@ jobs:
override: true
components: rustfmt, clippy

- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: --manifest-path nym-connect/desktop/Cargo.toml --all -- --check

- name: Build all binaries
uses: actions-rs/cargo@v1
with:
Expand All @@ -45,12 +51,6 @@ jobs:
command: test
args: --manifest-path nym-connect/desktop/Cargo.toml --workspace

- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: --manifest-path nym-connect/desktop/Cargo.toml --all -- --check

- uses: actions-rs/clippy-check@v1
name: Clippy checks
continue-on-error: true
Expand Down
8 changes: 2 additions & 6 deletions .github/workflows/ci-nym-vpn-ui-js.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
name: ci-nym-vpn-ui-js

on:
push:
paths:
- 'nym-vpn/ui/src/**'
- 'nym-vpn/ui/package.json'
- 'nym-vpn/ui/index.html'
workflow_dispatch:
pull_request:
paths:
- 'nym-vpn/ui/src/**'
Expand All @@ -14,7 +10,7 @@ on:

jobs:
check:
runs-on: [ self-hosted, custom-linux ]
runs-on: custom-linux
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down
29 changes: 14 additions & 15 deletions .github/workflows/ci-nym-vpn-ui-rust.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
name: ci-nym-vpn-ui-rust

on:
push:
paths:
- 'nym-vpn/ui/src-tauri/**'
workflow_dispatch:
pull_request:
paths:
- 'nym-vpn/ui/src-tauri/**'

jobs:
build:
runs-on: [self-hosted, custom-linux]
runs-on: custom-linux
env:
CARGO_TERM_COLOR: always
CARGOTOML_PATH: ./nym-vpn/ui/src-tauri/Cargo.toml
Expand All @@ -31,34 +29,35 @@ jobs:
components: rustfmt, clippy

- name: Prepare build
working-directory: nym-vpn/ui/
run: mkdir dist
run: mkdir nym-vpn/ui/dist

- name: Check build
working-directory: nym-vpn/ui/src-tauri
run: cargo build --release --lib --features custom-protocol
- name: Build
uses: actions-rs/cargo@v1
with:
command: build
args: --manifest-path ${{ env.CARGOTOML_PATH }} --lib --features custom-protocol

# - name: Run all tests
# uses: actions-rs/cargo@v1
# with:
# command: test
# args: --manifest-path ${{ env.CARGOTOML_PATH }} --workspace
# args: --manifest-path ${{ env.CARGOTOML_PATH }}

- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: --manifest-path ${{ env.CARGOTOML_PATH }} --all -- --check

- uses: actions-rs/clippy-check@v1
name: Clippy checks
- name: Annotate with clippy checks
uses: actions-rs/clippy-check@v1
continue-on-error: true
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --manifest-path ${{ env.CARGOTOML_PATH }} --workspace --all-features
args: --manifest-path ${{ env.CARGOTOML_PATH }} --all-features

- name: Run clippy
- name: Clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: --manifest-path ${{ env.CARGOTOML_PATH }} --workspace --all-features -- -D warnings
args: --manifest-path ${{ env.CARGOTOML_PATH }} --all-features --all-targets -- -D warnings
41 changes: 33 additions & 8 deletions .github/workflows/nightly-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,26 @@ on:
workflow_dispatch:
schedule:
- cron: '14 1 * * *'

jobs:
build:
strategy:
fail-fast: false
matrix:
rust: [stable, beta]
os: [custom-linux, windows10, custom-runner-mac-m1]
os: [ubuntu-20.04, windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
env:
CARGO_TERM_COLOR: always
continue-on-error: true
steps:
- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y build-essential curl wget libssl-dev libudev-dev squashfs-tools protobuf-compiler
continue-on-error: true
if: matrix.os == 'custom-linux'

- name: Check out repository code
uses: actions/checkout@v3

- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y build-essential curl wget libssl-dev libudev-dev squashfs-tools protobuf-compiler
if: matrix.os == 'ubuntu-20.04'

- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
Expand All @@ -32,6 +32,12 @@ jobs:
override: true
components: rustfmt, clippy

- name: Install Protoc
uses: arduino/setup-protoc@v2
if: matrix.os == 'macos-latest' || matrix.os == 'windows-latest'
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

- name: Check formatting
uses: actions-rs/cargo@v1
with:
Expand All @@ -42,13 +48,27 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: build
args: --workspace
args: --release --workspace

- name: Build examples
uses: actions-rs/cargo@v1
with:
command: build
args: --workspace --examples
args: --release --workspace --examples

# To avoid running out of disk space, skip generating debug symbols
- name: Set debug to false (unix)
if: matrix.os == 'ubuntu-20.04' || matrix.os == 'macos-latest'
run: |
sed -i.bak 's/\[profile.dev\]/\[profile.dev\]\ndebug = false/' Cargo.toml
git diff
- name: Set debug to false (win)
if: matrix.os == 'windows-latest'
shell: pwsh
run: |
(Get-Content Cargo.toml) -replace '\[profile.dev\]', "`$&`ndebug = false" | Set-Content Cargo.toml
git diff
- name: Run unit tests
uses: actions-rs/cargo@v1
Expand All @@ -62,6 +82,11 @@ jobs:
command: test
args: --workspace -- --ignored

- name: Clean
uses: actions-rs/cargo@v1
with:
command: clean

- name: Clippy
uses: actions-rs/cargo@v1
with:
Expand Down
92 changes: 92 additions & 0 deletions .github/workflows/nightly-nym-connect-desktop-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
name: nightly-nym-connect-desktop-build

on:
workflow_dispatch:
schedule:
- cron: '14 1 * * *'

jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
env:
CARGO_TERM_COLOR: always
MANIFEST_PATH: --manifest-path nym-connect/desktop/Cargo.toml
continue-on-error: true
steps:
- name: Check out repository code
uses: actions/checkout@v3

- name: Install Dependencies (Linux)
run: sudo apt-get update && sudo apt-get install -y libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev squashfs-tools
if: matrix.os == 'ubuntu-20.04'

- name: Install rust toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true
components: rustfmt, clippy

- name: Check formatting
uses: actions-rs/cargo@v1
with:
command: fmt
args: ${{ env.MANIFEST_PATH }} --all -- --check

- name: Build
uses: actions-rs/cargo@v1
with:
command: build
args: ${{ env.MANIFEST_PATH }} --release --workspace

- name: Unit tests
uses: actions-rs/cargo@v1
with:
command: test
args: ${{ env.MANIFEST_PATH }} --workspace

- name: Clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: ${{ env.MANIFEST_PATH }} --workspace --all-targets -- -D warnings

notification:
needs: build
runs-on: custom-linux
steps:
- name: Collect jobs status
uses: technote-space/workflow-conclusion-action@v2
- name: Check out repository code
uses: actions/checkout@v3
- name: install npm
uses: actions/setup-node@v3
if: env.WORKFLOW_CONCLUSION == 'failure'
with:
node-version: 18
- name: Matrix - Node Install
if: env.WORKFLOW_CONCLUSION == 'failure'
run: npm install
working-directory: .github/workflows/support-files
- name: Matrix - Send Notification
if: env.WORKFLOW_CONCLUSION == 'failure'
env:
NYM_NOTIFICATION_KIND: nightly
NYM_PROJECT_NAME: "nym-connect-desktop-nightly-build"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
GIT_COMMIT_MESSAGE: "${{ github.event.head_commit.message }}"
GIT_BRANCH: "${GITHUB_REF##*/}"
IS_SUCCESS: "${{ env.WORKFLOW_CONCLUSION == 'success' }}"
MATRIX_SERVER: "${{ secrets.MATRIX_SERVER }}"
MATRIX_ROOM: "${{ secrets.MATRIX_ROOM_NIGHTLY }}"
MATRIX_USER_ID: "${{ secrets.MATRIX_USER_ID }}"
MATRIX_TOKEN: "${{ secrets.MATRIX_TOKEN }}"
MATRIX_DEVICE_ID: "${{ secrets.MATRIX_DEVICE_ID }}"
uses: docker://keybaseio/client:stable-node
with:
args: .github/workflows/support-files/notifications/entry_point.sh
Loading

0 comments on commit e6652b2

Please sign in to comment.