From c0a27622fb8a254c99681aebc59476b38004b435 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 14:32:37 -0700 Subject: [PATCH 01/28] bump golang --- .github/workflows/main-build.yml | 198 +++++++++++++++---------------- .github/workflows/run-tests.yml | 64 +++++----- .tool-versions | 4 +- Dockerfile.dev | 2 +- Tiltfile | 2 +- go.mod | 4 +- 6 files changed, 136 insertions(+), 138 deletions(-) diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index 7bf1dea89..ecbdffcdb 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -13,81 +13,81 @@ jobs: build-push-container: runs-on: ubuntu-latest steps: - - name: install ignite - # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. - run: | - # curl https://get.ignite.com/cli! | bash - wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz - tar -xzf ignite_28.2.0_linux_amd64.tar.gz - sudo mv ignite /usr/local/bin/ignite - ignite version - - - uses: actions/checkout@v3 - with: - fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 - - - name: Set up Go - uses: actions/setup-go@v4 - with: - go-version: "1.21.6" - - - name: Install CI dependencies - run: make install_ci_deps - - - name: Generate protobufs - run: make proto_regen - - - name: Build - run: ignite chain build -v --debug --skip-proto - - - name: Set up Docker Buildx - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/setup-buildx-action@v3 - - - name: Docker Metadata action - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - id: meta - uses: docker/metadata-action@v5 - env: - DOCKER_METADATA_PR_HEAD_SHA: "true" - with: - images: | - ghcr.io/pokt-network/poktrolld - tags: | - type=ref,event=branch - type=ref,event=pr - type=sha - type=sha,format=long - - - name: Login to GitHub Container Registry - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Copy binaries to inside of the Docker context - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - run: | - mkdir -p ./bin # Make sure the bin directory exists - cp $(which ignite) ./bin # Copy ignite binary to the repo's bin directory - cp $(go env GOPATH)/bin/poktrolld ./bin # Copy the binary to the repo's bin directory - ls -la ./bin - - - name: Build and push Docker image - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/build-push-action@v5 - with: - push: true - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - # NB: Uncomment below if arm64 build is needed; arm64 builds are off by default because build times are significant. - platforms: linux/amd64 #,linux/arm64 - file: Dockerfile.dev - cache-from: type=gha - cache-to: type=gha,mode=max - context: . + - name: install ignite + # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. + run: | + # curl https://get.ignite.com/cli! | bash + wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz + tar -xzf ignite_28.2.0_linux_amd64.tar.gz + sudo mv ignite /usr/local/bin/ignite + ignite version + + - uses: actions/checkout@v3 + with: + fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22.2" + + - name: Install CI dependencies + run: make install_ci_deps + + - name: Generate protobufs + run: make proto_regen + + - name: Build + run: ignite chain build -v --debug --skip-proto + + - name: Set up Docker Buildx + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/setup-buildx-action@v3 + + - name: Docker Metadata action + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + id: meta + uses: docker/metadata-action@v5 + env: + DOCKER_METADATA_PR_HEAD_SHA: "true" + with: + images: | + ghcr.io/pokt-network/poktrolld + tags: | + type=ref,event=branch + type=ref,event=pr + type=sha + type=sha,format=long + + - name: Login to GitHub Container Registry + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Copy binaries to inside of the Docker context + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + run: | + mkdir -p ./bin # Make sure the bin directory exists + cp $(which ignite) ./bin # Copy ignite binary to the repo's bin directory + cp $(go env GOPATH)/bin/poktrolld ./bin # Copy the binary to the repo's bin directory + ls -la ./bin + + - name: Build and push Docker image + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/build-push-action@v5 + with: + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + # NB: Uncomment below if arm64 build is needed; arm64 builds are off by default because build times are significant. + platforms: linux/amd64 #,linux/arm64 + file: Dockerfile.dev + cache-from: type=gha + cache-to: type=gha,mode=max + context: . run-e2e-tests: timeout-minutes: 20 @@ -98,27 +98,27 @@ jobs: GKE_CLUSTER: protocol-us-central1 GKE_ZONE: us-central1 steps: - - uses: actions/checkout@v4 - with: - sparse-checkout: | - .github - - - id: "auth" - name: "Authenticate to Google Cloud" - uses: "google-github-actions/auth@v1" - with: - credentials_json: "${{ secrets.GKE_PROTOCOL_US_CENTRAL }}" - - - uses: google-github-actions/get-gke-credentials@v1 - with: - cluster_name: ${{ env.GKE_CLUSTER }} - location: ${{ env.GKE_ZONE }} - project_id: ${{ secrets.GKE_PROTOCOL_PROJECT }} - - - name: Run E2E test job - env: - IMAGE_TAG: sha-${{ github.event.pull_request.head.sha || github.sha }} - NAMESPACE: devnet-issue-${{ github.event.number }} - JOB_NAME: e2e-test-${{ github.event.pull_request.head.sha || github.sha }} - POCKET_NODE: tcp://devnet-issue-${{ github.event.number }}-validator-poktrolld:36657 - run: bash .github/workflows-helpers/run-e2e-test.sh + - uses: actions/checkout@v4 + with: + sparse-checkout: | + .github + + - id: "auth" + name: "Authenticate to Google Cloud" + uses: "google-github-actions/auth@v1" + with: + credentials_json: "${{ secrets.GKE_PROTOCOL_US_CENTRAL }}" + + - uses: google-github-actions/get-gke-credentials@v1 + with: + cluster_name: ${{ env.GKE_CLUSTER }} + location: ${{ env.GKE_ZONE }} + project_id: ${{ secrets.GKE_PROTOCOL_PROJECT }} + + - name: Run E2E test job + env: + IMAGE_TAG: sha-${{ github.event.pull_request.head.sha || github.sha }} + NAMESPACE: devnet-issue-${{ github.event.number }} + JOB_NAME: e2e-test-${{ github.event.pull_request.head.sha || github.sha }} + POCKET_NODE: tcp://devnet-issue-${{ github.event.number }}-validator-poktrolld:36657 + run: bash .github/workflows-helpers/run-e2e-test.sh diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index ea7f2edd3..f88060ff4 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -17,35 +17,35 @@ jobs: go-test: runs-on: ubuntu-latest steps: - - name: install ignite - # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. - run: | - # curl https://get.ignite.com/cli! | bash - wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz - tar -xzf ignite_28.2.0_linux_amd64.tar.gz - sudo mv ignite /usr/local/bin/ignite - ignite version - - - uses: actions/checkout@v3 - with: - fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 - - - name: Set up Go - uses: actions/setup-go@v4 - with: - go-version: "1.21.6" - - - name: Install CI dependencies - run: make install_ci_deps - - - name: Generate protobufs - run: make proto_regen - - - name: Generate mocks - run: make go_mockgen - - - name: Run golangci-lint - run: make go_lint - - - name: Test - run: make go_test + - name: install ignite + # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. + run: | + # curl https://get.ignite.com/cli! | bash + wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz + tar -xzf ignite_28.2.0_linux_amd64.tar.gz + sudo mv ignite /usr/local/bin/ignite + ignite version + + - uses: actions/checkout@v3 + with: + fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22.2" + + - name: Install CI dependencies + run: make install_ci_deps + + - name: Generate protobufs + run: make proto_regen + + - name: Generate mocks + run: make go_mockgen + + - name: Run golangci-lint + run: make go_lint + + - name: Test + run: make go_test diff --git a/.tool-versions b/.tool-versions index 9b7a6107e..99b01e2e6 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1,4 +1,4 @@ # Run `asdf plugin add golang` and `asdf install` to install the dependencies, # and `asdf current` to switch to the versions of dependencies listed below -golang 1.21.6 -go 1.21.6 +golang 1.22.2 +go 1.22.2 diff --git a/Dockerfile.dev b/Dockerfile.dev index 4b803af34..89f2e19e1 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,7 +1,7 @@ # This Dockerfile is used to build container image for development purposes. # It intentionally contains no security features, ships with code and troubleshooting tools. -FROM golang:1.21.6 as base +FROM golang:1.22.2 as base RUN apt update && \ apt-get install -y \ diff --git a/Tiltfile b/Tiltfile index 5d8cca35b..12b657473 100644 --- a/Tiltfile +++ b/Tiltfile @@ -179,7 +179,7 @@ local_resource( docker_build_with_restart( "poktrolld", ".", - dockerfile_contents="""FROM golang:1.21.6 + dockerfile_contents="""FROM golang:1.22.2 RUN apt-get -q update && apt-get install -qyy curl jq less RUN go install github.com/go-delve/delve/cmd/dlv@latest COPY bin/poktrolld /usr/local/bin/poktrolld diff --git a/go.mod b/go.mod index 23c6c27f9..b028d2537 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,6 @@ module github.com/pokt-network/poktroll -go 1.21.1 - -toolchain go1.21.6 +go 1.22.2 replace ( // fix upstream GHSA-h395-qcrw-5vmq vulnerability. From 68147f73f17791c15954b14319eeaeb37d479401 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 15:29:39 -0700 Subject: [PATCH 02/28] change makefile --- .github/workflows/main-build.yml | 6 +--- .github/workflows/run-tests.yml | 6 +--- Makefile | 49 ++++++++++++++++++++++++++++++-- 3 files changed, 48 insertions(+), 13 deletions(-) diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index ecbdffcdb..cc701b987 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -16,11 +16,7 @@ jobs: - name: install ignite # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. run: | - # curl https://get.ignite.com/cli! | bash - wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz - tar -xzf ignite_28.2.0_linux_amd64.tar.gz - sudo mv ignite /usr/local/bin/ignite - ignite version + make ignite_install - uses: actions/checkout@v3 with: diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index f88060ff4..69a8d2d1a 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -20,11 +20,7 @@ jobs: - name: install ignite # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. run: | - # curl https://get.ignite.com/cli! | bash - wget https://github.com/ignite/cli/releases/download/v28.2.0/ignite_28.2.0_linux_amd64.tar.gz - tar -xzf ignite_28.2.0_linux_amd64.tar.gz - sudo mv ignite /usr/local/bin/ignite - ignite version + make ignite_install - uses: actions/checkout@v3 with: diff --git a/Makefile b/Makefile index f4b50198a..109ded4df 100644 --- a/Makefile +++ b/Makefile @@ -21,15 +21,45 @@ SUPPLIER_MODULE_ADDRESS = pokt1j40dzzmn6cn9kxku7a5tjnud6hv37vesr5ccaa GATEWAY_MODULE_ADDRESS = pokt1f6j7u6875p2cvyrgjr0d2uecyzah0kget9vlpl SERVICE_MODULE_ADDRESS = pokt1nhmtqf4gcmpxu0p6e53hpgtwj0llmsqpxtumcf -# Detect operating system -OS := $(shell uname -s) +# Detect operating system and arch +OS := $(shell uname -s | tr A-Z a-z) +ARCH := $(shell uname -m) +ifeq ($(ARCH),x86_64) + ARCH := amd64 +endif +ifeq ($(ARCH),aarch64) + ARCH := arm64 +endif # Set default commands, will potentially be overridden on macOS SED := sed GREP := grep +BRANCH := $(shell git rev-parse --abbrev-ref HEAD) +COMMIT := $(shell git log -1 --format='%H') + +# don't override user values +ifeq (,$(VERSION)) + # Remove 'v' prefix from git tag and assign to VERSION + VERSION := $(shell git describe --tags | sed 's/^v//') + # if VERSION is empty, then populate it with branch's name and raw commit hash + ifeq (,$(VERSION)) + VERSION := $(BRANCH)-$(COMMIT) + endif +endif + + +ldflags = -X github.com/cosmos/cosmos-sdk/version.Name=Poktroll \ + -X github.com/cosmos/cosmos-sdk/version.AppName=poktrolld \ + -X github.com/cosmos/cosmos-sdk/version.Version=$(VERSION) \ + -X github.com/cosmos/cosmos-sdk/version.Commit=$(COMMIT) \ + -X github.com/cosmos/cosmos-sdk/version.BuildTags= \ + -X github.com/pokt-network/poktroll/cmd/poktrolld/cmd.ChainID=$(CHAIN_ID) +ldflags += $(LDFLAGS) +ldflags := $(strip $(ldflags)) + # macOS-specific adjustments -ifeq ($(OS),Darwin) +ifeq ($(OS),darwin) # Check for gsed and ggrep, suggest installation with Homebrew if not found FOUND_GSED := $(shell command -v gsed) FOUND_GGREP := $(shell command -v ggrep) @@ -809,6 +839,19 @@ trigger_ci: ## Trigger the CI pipeline by submitting an empty commit; See https: git commit --allow-empty -m "Empty commit" git push + +.PHONY: install +install: ## Build and install the binary + go build -mod readonly -tags "" -ldflags "$(ldflags)" ./cmd/poktrolld + +.PHONY: ignite_install +ignite_install: ## Install ignite. Used by CI and heighliner. + wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz + tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz + sudo mv ignite /usr/local/bin/ignite + rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz + ignite version + ##################### ### Documentation ### ##################### From f2c3f73b5aca8697a05c642c35438c653a613a89 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 15:32:37 -0700 Subject: [PATCH 03/28] make sudo optional --- Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 109ded4df..25c8d76d0 100644 --- a/Makefile +++ b/Makefile @@ -846,9 +846,12 @@ install: ## Build and install the binary .PHONY: ignite_install ignite_install: ## Install ignite. Used by CI and heighliner. + # Check if sudo is available on the system + SUDO := $(shell command -v sudo || echo "") wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz - sudo mv ignite /usr/local/bin/ignite + # Use sudo if available + $(SUDO) mv ignite /usr/local/bin/ignite rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz ignite version From 8d2f88da467af9e352fb7dd0dde77e7665279368 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 15:37:10 -0700 Subject: [PATCH 04/28] fix sudo --- Makefile | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 25c8d76d0..8a33e6484 100644 --- a/Makefile +++ b/Makefile @@ -41,7 +41,7 @@ COMMIT := $(shell git log -1 --format='%H') # don't override user values ifeq (,$(VERSION)) # Remove 'v' prefix from git tag and assign to VERSION - VERSION := $(shell git describe --tags | sed 's/^v//') + VERSION := $(shell git describe --tags 2>/dev/null | sed 's/^v//') # if VERSION is empty, then populate it with branch's name and raw commit hash ifeq (,$(VERSION)) VERSION := $(BRANCH)-$(COMMIT) @@ -846,13 +846,16 @@ install: ## Build and install the binary .PHONY: ignite_install ignite_install: ## Install ignite. Used by CI and heighliner. - # Check if sudo is available on the system - SUDO := $(shell command -v sudo || echo "") - wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz - tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz - # Use sudo if available - $(SUDO) mv ignite /usr/local/bin/ignite - rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz + # Determine if sudo is available and use it if it is + if command -v sudo &>/dev/null; then \ + SUDO="sudo"; \ + else \ + SUDO=""; \ + fi; \ + wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ + tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ + $$SUDO mv ignite /usr/local/bin/ignite; \ + rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ ignite version ##################### From 4285d9758d451599f4c40f13f198f8293d33931e Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 15:54:01 -0700 Subject: [PATCH 05/28] use regepx instead --- Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 8a33e6484..2441b6cb1 100644 --- a/Makefile +++ b/Makefile @@ -264,14 +264,13 @@ proto_fix_self_import: ## TODO_TECHDEBT(@bryanchriswhite): Add a proper explanat @for dir in $(wildcard ./api/poktroll/*/); do \ module=$$(basename $$dir); \ echo "Further processing module $$module"; \ - $(GREP) -lRP '\s+'$$module' "github.com/pokt-network/poktroll/api/poktroll/'$$module'"' ./api/poktroll/$$module | while read -r file; do \ + $(GREP) -lRE '[[:space:]]+'$$module' "github.com/pokt-network/poktroll/api/poktroll/'$$module'"' $$dir | while read -r file; do \ echo "Modifying file: $$file"; \ $(SED) -i -E 's,^[[:space:]]+'$$module'[[:space:]]+"github.com/pokt-network/poktroll/api/poktroll/'$$module'",,' "$$file"; \ $(SED) -i 's,'$$module'\.,,g' "$$file"; \ done; \ done - .PHONY: proto_clean proto_clean: ## Delete existing .pb.go or .pb.gw.go files find . \( -name "*.pb.go" -o -name "*.pb.gw.go" \) | xargs --no-run-if-empty rm From d6fe763a5192d88d17de2cbc7d5e5fcf98113476 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 15:59:26 -0700 Subject: [PATCH 06/28] should be install --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 2441b6cb1..70f88158e 100644 --- a/Makefile +++ b/Makefile @@ -841,7 +841,7 @@ trigger_ci: ## Trigger the CI pipeline by submitting an empty commit; See https: .PHONY: install install: ## Build and install the binary - go build -mod readonly -tags "" -ldflags "$(ldflags)" ./cmd/poktrolld + go install -mod readonly -tags "" -ldflags "$(ldflags)" ./cmd/poktrolld .PHONY: ignite_install ignite_install: ## Install ignite. Used by CI and heighliner. From 8adc631f6a0ddee06e19ed9a1133f562690f4769 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 16:34:56 -0700 Subject: [PATCH 07/28] add heighliner CI job --- .github/workflows/container-images.yml | 39 ++++++++++++++++++++++++++ .github/workflows/main-build.yml | 2 +- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/container-images.yml diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml new file mode 100644 index 000000000..a53fd53f2 --- /dev/null +++ b/.github/workflows/container-images.yml @@ -0,0 +1,39 @@ +name: Create and Push Container Image (heighliner) + +on: + push: + tags: + - '**' + branches: + - '**' + +jobs: + build-and-push-image: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Log in to the Container registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push Docker image + uses: strangelove-ventures/heighliner-build-action@v1.0.1 + with: + chain: pocket-network + dockerfile: cosmos + pre-build: | + make ignite_install + make proto_regen + build-target: | + make install + binaries: | + - /go/bin/poktrolld diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index cc701b987..469367137 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -50,7 +50,7 @@ jobs: images: | ghcr.io/pokt-network/poktrolld tags: | - type=ref,event=branch + type=ref,event=branch,suffix=-dev type=ref,event=pr type=sha type=sha,format=long From 25e02c9b3dede87f4108ee8b3d786a8b6dc786c3 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 16:44:47 -0700 Subject: [PATCH 08/28] debug --- .github/workflows/container-images.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index a53fd53f2..4b5b21513 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -31,9 +31,9 @@ jobs: chain: pocket-network dockerfile: cosmos pre-build: | - make ignite_install - make proto_regen + make -d ignite_install + make -d proto_regen build-target: | - make install + make -d install binaries: | - /go/bin/poktrolld From 333df2bb87459e698318070f7bf7be2c4a0206f0 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 17:18:12 -0700 Subject: [PATCH 09/28] fix anvil on arm64 mac --- .github/workflows/main-build.yml | 9 ++++----- .github/workflows/run-tests.yml | 9 ++++----- localnet/kubernetes/anvil.yaml | 3 ++- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index 469367137..539aaa738 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -13,15 +13,14 @@ jobs: build-push-container: runs-on: ubuntu-latest steps: - - name: install ignite - # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. - run: | - make ignite_install - - uses: actions/checkout@v3 with: fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + - name: install ignite + run: | + make ignite_install + - name: Set up Go uses: actions/setup-go@v4 with: diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 69a8d2d1a..3932a0333 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -17,15 +17,14 @@ jobs: go-test: runs-on: ubuntu-latest steps: - - name: install ignite - # TODO_TECHDEBT: upgrade to the latest Ignite (the latest at the moment of creating a note is 0.28). Need to downgrade to fix CI pipelines. Might be done in scope of #240. - run: | - make ignite_install - - uses: actions/checkout@v3 with: fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + - name: install ignite + run: | + make ignite_install + - name: Set up Go uses: actions/setup-go@v4 with: diff --git a/localnet/kubernetes/anvil.yaml b/localnet/kubernetes/anvil.yaml index d80f59b9a..a4f2d62f1 100644 --- a/localnet/kubernetes/anvil.yaml +++ b/localnet/kubernetes/anvil.yaml @@ -16,7 +16,8 @@ spec: # TODO: Add resource limits containers: - name: anvil - image: ghcr.io/foundry-rs/foundry:latest + # TODO: going with a static tag instead of `latest` or `nightly` as latest is currently broken for darwin/arm64. + image: ghcr.io/foundry-rs/foundry:nightly-3fa02706ca732c994715ba42d923605692062375 ports: - containerPort: 8547 command: ["anvil"] From f763ced65dee6665122eb8c04a9ce9223450cc42 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 17:23:17 -0700 Subject: [PATCH 10/28] troubleshoot --- Makefile | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Makefile b/Makefile index 70f88158e..ae0ef1057 100644 --- a/Makefile +++ b/Makefile @@ -851,12 +851,25 @@ ignite_install: ## Install ignite. Used by CI and heighliner. else \ SUDO=""; \ fi; \ + echo "Downloading Ignite CLI..."; \ wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ + echo "Extracting Ignite CLI..."; \ tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ + echo "Contents of the extracted directory:"; \ + ls -lah; \ + echo "Moving Ignite CLI to /usr/local/bin..."; \ $$SUDO mv ignite /usr/local/bin/ignite; \ + echo "Cleaning up..."; \ rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ + echo "Checking if Ignite CLI is in the expected directory..."; \ + ls -lah /usr/local/bin/ | grep ignite; \ + echo "Current PATH: $$PATH"; \ + echo "Trying to run Ignite CLI version:"; \ + /usr/local/bin/ignite version; \ + echo "Trying to run Ignite CLI version without full path:"; \ ignite version + ##################### ### Documentation ### ##################### From 6ca674920190341f3a3715ceb12a45a6e3fa2e11 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 17:43:52 -0700 Subject: [PATCH 11/28] specify platform --- .github/workflows/container-images.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index 4b5b21513..ad86c3254 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -30,6 +30,7 @@ jobs: with: chain: pocket-network dockerfile: cosmos + platform: linux/arm64,linux/amd64,darwin/arm64,darwin/amd64 pre-build: | make -d ignite_install make -d proto_regen From 52589f547081911f7413b0a5b8099966d2a92254 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 17:49:37 -0700 Subject: [PATCH 12/28] no darwin containers ofc.. --- .github/workflows/container-images.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index ad86c3254..ba7b92937 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -30,7 +30,7 @@ jobs: with: chain: pocket-network dockerfile: cosmos - platform: linux/arm64,linux/amd64,darwin/arm64,darwin/amd64 + platform: linux/arm64,linux/amd64 pre-build: | make -d ignite_install make -d proto_regen From c796223a4e5831daa6f1f3d6c541a63fa56285af Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Mon, 6 May 2024 17:56:49 -0700 Subject: [PATCH 13/28] check which arch ignite is --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index ae0ef1057..db3c2714c 100644 --- a/Makefile +++ b/Makefile @@ -863,6 +863,7 @@ ignite_install: ## Install ignite. Used by CI and heighliner. rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ echo "Checking if Ignite CLI is in the expected directory..."; \ ls -lah /usr/local/bin/ | grep ignite; \ + file /usr/local/bin/ignite echo "Current PATH: $$PATH"; \ echo "Trying to run Ignite CLI version:"; \ /usr/local/bin/ignite version; \ From 15951f8dd3e5e7b3fe68774427c1fb91fcaeea26 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 16:18:46 -0700 Subject: [PATCH 14/28] try this --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index db3c2714c..5cbe94a34 100644 --- a/Makefile +++ b/Makefile @@ -863,11 +863,11 @@ ignite_install: ## Install ignite. Used by CI and heighliner. rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ echo "Checking if Ignite CLI is in the expected directory..."; \ ls -lah /usr/local/bin/ | grep ignite; \ - file /usr/local/bin/ignite echo "Current PATH: $$PATH"; \ echo "Trying to run Ignite CLI version:"; \ /usr/local/bin/ignite version; \ echo "Trying to run Ignite CLI version without full path:"; \ + /usr/local/bin/ignite version ignite version From 70de2dc2d232f73fafeee5f8e6e769917544694e Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 16:36:33 -0700 Subject: [PATCH 15/28] permissions --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 5cbe94a34..640454e6e 100644 --- a/Makefile +++ b/Makefile @@ -859,6 +859,7 @@ ignite_install: ## Install ignite. Used by CI and heighliner. ls -lah; \ echo "Moving Ignite CLI to /usr/local/bin..."; \ $$SUDO mv ignite /usr/local/bin/ignite; \ + $$SUDO chmod +x /usr/local/bin/ignite; \ echo "Cleaning up..."; \ rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ echo "Checking if Ignite CLI is in the expected directory..."; \ From 837462b0f19a9d3ffeaaeb6e436a429c4fd5a223 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 17:00:45 -0700 Subject: [PATCH 16/28] use gcompact --- .github/workflows/container-images.yml | 1 + Makefile | 10 ---------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index ba7b92937..2184e3782 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -32,6 +32,7 @@ jobs: dockerfile: cosmos platform: linux/arm64,linux/amd64 pre-build: | + apk add gcompat make -d ignite_install make -d proto_regen build-target: | diff --git a/Makefile b/Makefile index 640454e6e..9ce1a789e 100644 --- a/Makefile +++ b/Makefile @@ -855,20 +855,10 @@ ignite_install: ## Install ignite. Used by CI and heighliner. wget https://github.com/ignite/cli/releases/download/v28.3.0/ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ echo "Extracting Ignite CLI..."; \ tar -xzf ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ - echo "Contents of the extracted directory:"; \ - ls -lah; \ echo "Moving Ignite CLI to /usr/local/bin..."; \ $$SUDO mv ignite /usr/local/bin/ignite; \ - $$SUDO chmod +x /usr/local/bin/ignite; \ echo "Cleaning up..."; \ rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ - echo "Checking if Ignite CLI is in the expected directory..."; \ - ls -lah /usr/local/bin/ | grep ignite; \ - echo "Current PATH: $$PATH"; \ - echo "Trying to run Ignite CLI version:"; \ - /usr/local/bin/ignite version; \ - echo "Trying to run Ignite CLI version without full path:"; \ - /usr/local/bin/ignite version ignite version From ab3fd100c40cad02ad08f5c8547e9b402715ee03 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 17:08:32 -0700 Subject: [PATCH 17/28] install buf --- .github/workflows/container-images.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index 2184e3782..33d87bf72 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -32,7 +32,7 @@ jobs: dockerfile: cosmos platform: linux/arm64,linux/amd64 pre-build: | - apk add gcompat + apk add gcompat buf make -d ignite_install make -d proto_regen build-target: | From 46de719a2ef34df2257d1b75aaeb061a00115290 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 17:20:58 -0700 Subject: [PATCH 18/28] do the amd64 first --- .github/workflows/container-images.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index 33d87bf72..f19b44393 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -30,7 +30,7 @@ jobs: with: chain: pocket-network dockerfile: cosmos - platform: linux/arm64,linux/amd64 + # platform: linux/arm64,linux/amd64 pre-build: | apk add gcompat buf make -d ignite_install From f44406f105337f3f984f19e513a6135390db82de Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 17:42:41 -0700 Subject: [PATCH 19/28] install buf using go --- .github/workflows/container-images.yml | 6 ++---- Makefile | 4 ++++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index f19b44393..e4124f935 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -30,11 +30,9 @@ jobs: with: chain: pocket-network dockerfile: cosmos - # platform: linux/arm64,linux/amd64 + platform: linux/arm64,linux/amd64 pre-build: | - apk add gcompat buf - make -d ignite_install - make -d proto_regen + make -d heighliner_pre_build build-target: | make -d install binaries: | diff --git a/Makefile b/Makefile index 9ce1a789e..139c8bad6 100644 --- a/Makefile +++ b/Makefile @@ -861,6 +861,10 @@ ignite_install: ## Install ignite. Used by CI and heighliner. rm ignite_28.3.0_$(OS)_$(ARCH).tar.gz; \ ignite version +.PHONY: heighliner_pre_build +heighliner_pre_build: ignite_install proto_regen # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. + apk add gcompat + go install github.com/bufbuild/buf/cmd/buf@v1.31.0 ##################### ### Documentation ### From 1b99f9aabd636da9281c52512c899a9843b33bf7 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 17:46:22 -0700 Subject: [PATCH 20/28] install first --- Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 139c8bad6..63c493cba 100644 --- a/Makefile +++ b/Makefile @@ -862,9 +862,11 @@ ignite_install: ## Install ignite. Used by CI and heighliner. ignite version .PHONY: heighliner_pre_build -heighliner_pre_build: ignite_install proto_regen # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. +heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. apk add gcompat go install github.com/bufbuild/buf/cmd/buf@v1.31.0 + make ignite_install + make proto_regen ##################### ### Documentation ### From e84a05ec622ce5d3fcfc8fc373a1c56133e020d4 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Tue, 7 May 2024 18:07:14 -0700 Subject: [PATCH 21/28] --wip-- [skip ci] --- .gitignore | 3 ++- Makefile | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 2b6011cfb..9ac5ab3d6 100644 --- a/.gitignore +++ b/.gitignore @@ -67,6 +67,7 @@ api/poktroll/**/*.go-E # Relase artifacts produced by `ignite chain build --release` release +release_binaries # Only keep one go module in our codebase go.work.sum @@ -92,4 +93,4 @@ summary.html shannon_appgate_config.yaml shannon_app_config.yaml -gentx-*.json \ No newline at end of file +gentx-*.json diff --git a/Makefile b/Makefile index 63c493cba..6ee0d47d9 100644 --- a/Makefile +++ b/Makefile @@ -868,6 +868,27 @@ heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. H make ignite_install make proto_regen +# .PHONY: heighliner_use_prebuilt_binaries +# heighliner_use_prebuilt_binaries: # Uses binaries prebuilt by ignite +# apk add gcompat +# go install github.com/bufbuild/buf/cmd/buf@v1.31.0 +# make ignite_install +# make proto_regen + +.PHONY: ignite_release +ignite_release: ## Builds production binaries + ignite chain build --release -t linux:amd64 -t linux:arm64 -t darwin:amd64 -t darwin:arm64 + +.PHONY: ignite_release_extract_binaries +ignite_release_extract_binaries: ## Extracts binaries from the release archives + mkdir -p release_binaries + + for archive in release/*.tar.gz; do \ + binary_name=$$(basename "$$archive" .tar.gz); \ + tar -zxvf "$$archive" -C release_binaries "poktrolld"; \ + mv release_binaries/poktrolld "release_binaries/$$binary_name"; \ + done + ##################### ### Documentation ### ##################### From f39c67fcebe30c65b6dff191c0a1392639bb71e3 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 15:52:11 -0700 Subject: [PATCH 22/28] dedicated make target for hl --- Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 558b7afbb..82235cc52 100644 --- a/Makefile +++ b/Makefile @@ -838,7 +838,6 @@ trigger_ci: ## Trigger the CI pipeline by submitting an empty commit; See https: git commit --allow-empty -m "Empty commit" git push - .PHONY: install install: ## Build and install the binary go install -mod readonly -tags "" -ldflags "$(ldflags)" ./cmd/poktrolld @@ -868,6 +867,10 @@ heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. H make ignite_install make proto_regen +.PHONY: heighliner_build +heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. + make install + # .PHONY: heighliner_use_prebuilt_binaries # heighliner_use_prebuilt_binaries: # Uses binaries prebuilt by ignite # apk add gcompat From 36a7f17a3a695d74983137c3902337dcbc0b8dfa Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 15:54:34 -0700 Subject: [PATCH 23/28] hl job --- .github/workflows/container-images.yml | 44 +++++++++++++------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index e4124f935..363bfb112 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -3,9 +3,9 @@ name: Create and Push Container Image (heighliner) on: push: tags: - - '**' + - "**" branches: - - '**' + - "**" jobs: build-and-push-image: @@ -15,25 +15,25 @@ jobs: packages: write steps: - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 - - name: Log in to the Container registry - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + - name: Log in to the Container registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push Docker image - uses: strangelove-ventures/heighliner-build-action@v1.0.1 - with: - chain: pocket-network - dockerfile: cosmos - platform: linux/arm64,linux/amd64 - pre-build: | - make -d heighliner_pre_build - build-target: | - make -d install - binaries: | - - /go/bin/poktrolld + - name: Build and push Docker image + uses: strangelove-ventures/heighliner-build-action@v1.0.1 + with: + chain: pocket-network + dockerfile: cosmos + platform: linux/arm64,linux/amd64 + pre-build: | + make -d heighliner_pre_build + build-target: | + make -d heighliner_build + binaries: | + - /go/bin/poktrolld From b9033d1a0f72c766296c874e0b63c4264f26a447 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 15:58:59 -0700 Subject: [PATCH 24/28] ftfngr --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 82235cc52..765d23770 100644 --- a/Makefile +++ b/Makefile @@ -868,7 +868,7 @@ heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. H make proto_regen .PHONY: heighliner_build -heighliner_pre_build: # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. +heighliner_build: # Steps to execute during pre-build phase in heighliner. Having this step here makes it so we don't need to submit a PR on their side if we want to change something. make install # .PHONY: heighliner_use_prebuilt_binaries From 33bb098b56683e231a077272c935d9c0830b9e0a Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 17:21:25 -0700 Subject: [PATCH 25/28] add dockerfile for releases --- Dockerfile.release | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 Dockerfile.release diff --git a/Dockerfile.release b/Dockerfile.release new file mode 100644 index 000000000..5273a918c --- /dev/null +++ b/Dockerfile.release @@ -0,0 +1,13 @@ +# This Dockerfile is used to build container image for production workloads. +# It relies on the binaries produced by `ignite_release` and `ignite_release_extract_binaries` make targets. +FROM alpine:3.19 +ARG TARGETARCH + +# Use `1025` G/UID so users can switch between this and `heighliner` image without a need to chown the files. +RUN addgroup --gid 1025 -S pocket && adduser --uid 1025 -S pocket -G pocket + +COPY --chown=pocket:pocket release_binaries/poktroll_linux_$TARGETARCH /bin/poktrolld + +USER pocket + +ENTRYPOINT ["poktrolld"] From ead3046fcfad170438c70359e6a117559d5d0968 Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 17:31:24 -0700 Subject: [PATCH 26/28] try release artifacts job --- .github/workflows/container-images.yml | 68 +++++++++--------- .github/workflows/release-artifacts.yml | 94 +++++++++++++++++++++++++ 2 files changed, 128 insertions(+), 34 deletions(-) create mode 100644 .github/workflows/release-artifacts.yml diff --git a/.github/workflows/container-images.yml b/.github/workflows/container-images.yml index 363bfb112..295cd28d2 100644 --- a/.github/workflows/container-images.yml +++ b/.github/workflows/container-images.yml @@ -1,39 +1,39 @@ -name: Create and Push Container Image (heighliner) +# name: Create and Push Container Image (heighliner) -on: - push: - tags: - - "**" - branches: - - "**" +# on: +# push: +# tags: +# - "**" +# branches: +# - "**" -jobs: - build-and-push-image: - runs-on: ubuntu-latest - permissions: - contents: read - packages: write +# jobs: +# build-and-push-image: +# runs-on: ubuntu-latest +# permissions: +# contents: read +# packages: write - steps: - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 +# steps: +# - name: Set up QEMU +# uses: docker/setup-qemu-action@v2 - - name: Log in to the Container registry - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} +# - name: Log in to the Container registry +# uses: docker/login-action@v2 +# with: +# registry: ghcr.io +# username: ${{ github.actor }} +# password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push Docker image - uses: strangelove-ventures/heighliner-build-action@v1.0.1 - with: - chain: pocket-network - dockerfile: cosmos - platform: linux/arm64,linux/amd64 - pre-build: | - make -d heighliner_pre_build - build-target: | - make -d heighliner_build - binaries: | - - /go/bin/poktrolld +# - name: Build and push Docker image +# uses: strangelove-ventures/heighliner-build-action@v1.0.1 +# with: +# chain: pocket-network +# dockerfile: cosmos +# platform: linux/arm64,linux/amd64 +# pre-build: | +# make -d heighliner_pre_build +# build-target: | +# make -d heighliner_build +# binaries: | +# - /go/bin/poktrolld diff --git a/.github/workflows/release-artifacts.yml b/.github/workflows/release-artifacts.yml new file mode 100644 index 000000000..76300dd49 --- /dev/null +++ b/.github/workflows/release-artifacts.yml @@ -0,0 +1,94 @@ +name: Release artifacts + +# Currently disabled, but ready to implement a CI job to add binaries to GitHub releases. +on: + push: + branches: ["dk-heighliner"] + # pull_request: + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true + +jobs: + release-artifacts: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + - name: install ignite + run: | + make ignite_install + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22.2" + + - name: Install CI dependencies + run: make install_ci_deps + + - name: Generate protobufs + run: make proto_regen + + - name: Generate mocks + run: make go_mockgen + + - name: Build binaries + run: make ignite_release + + - name: Unarchive linux binaries for Docker to consume + run: make ignite_release_extract_binaries + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Docker Metadata action + id: meta + uses: docker/metadata-action@v5 + env: + DOCKER_METADATA_PR_HEAD_SHA: "true" + with: + images: | + ghcr.io/pokt-network/poktrolld + tags: | + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=ref,event=tag,suffix=prod + type=sha,suffix=prod + type=sha,format=long,suffix=prod + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + platforms: linux/amd64,linux/arm64 + file: Dockerfile.release + cache-from: type=gha + cache-to: type=gha,mode=max + context: . + + # TODO(@okdas): when we have proper releases, we can remove this and use binaries built by releases instead. + # But for now, attach them to commits so we/community can access them + - name: Add binaries to commit + uses: actions/upload-artifact@v4 + with: + name: poktrolld + path: release/ + + # TODO(@okdas): use for releases (also change the "on" part at the top so it only tgirrered for tags/releases) + # - name: Add release and publish binaries + # uses: softprops/action-gh-release@v1 + # with: + # files: | + # release/* From d1b5eae8e9f5c2e5f51a76f79e9aea3d5070f39d Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 18:01:36 -0700 Subject: [PATCH 27/28] --wip-- [skip ci] --- .github/workflows/label-actions.yml | 2 +- .github/workflows/main-build.yml | 188 +++++----- .github/workflows/reviewdog.yml | 3 +- .github/workflows/run-tests.yml | 40 +-- docusaurus/yarn.lock | 521 ++++++++++++++-------------- 5 files changed, 372 insertions(+), 382 deletions(-) diff --git a/.github/workflows/label-actions.yml b/.github/workflows/label-actions.yml index caf1a31cc..f372818aa 100644 --- a/.github/workflows/label-actions.yml +++ b/.github/workflows/label-actions.yml @@ -1,4 +1,4 @@ -name: 'Label Actions' +name: "Label Actions" on: issues: diff --git a/.github/workflows/main-build.yml b/.github/workflows/main-build.yml index 539aaa738..5335029d1 100644 --- a/.github/workflows/main-build.yml +++ b/.github/workflows/main-build.yml @@ -13,76 +13,76 @@ jobs: build-push-container: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - with: - fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 - - - name: install ignite - run: | - make ignite_install - - - name: Set up Go - uses: actions/setup-go@v4 - with: - go-version: "1.22.2" - - - name: Install CI dependencies - run: make install_ci_deps - - - name: Generate protobufs - run: make proto_regen - - - name: Build - run: ignite chain build -v --debug --skip-proto - - - name: Set up Docker Buildx - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/setup-buildx-action@v3 - - - name: Docker Metadata action - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - id: meta - uses: docker/metadata-action@v5 - env: - DOCKER_METADATA_PR_HEAD_SHA: "true" - with: - images: | - ghcr.io/pokt-network/poktrolld - tags: | - type=ref,event=branch,suffix=-dev - type=ref,event=pr - type=sha - type=sha,format=long - - - name: Login to GitHub Container Registry - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - name: Copy binaries to inside of the Docker context - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - run: | - mkdir -p ./bin # Make sure the bin directory exists - cp $(which ignite) ./bin # Copy ignite binary to the repo's bin directory - cp $(go env GOPATH)/bin/poktrolld ./bin # Copy the binary to the repo's bin directory - ls -la ./bin - - - name: Build and push Docker image - if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) - uses: docker/build-push-action@v5 - with: - push: true - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - # NB: Uncomment below if arm64 build is needed; arm64 builds are off by default because build times are significant. - platforms: linux/amd64 #,linux/arm64 - file: Dockerfile.dev - cache-from: type=gha - cache-to: type=gha,mode=max - context: . + - uses: actions/checkout@v3 + with: + fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + + - name: install ignite + run: | + make ignite_install + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22.2" + + - name: Install CI dependencies + run: make install_ci_deps + + - name: Generate protobufs + run: make proto_regen + + - name: Build + run: ignite chain build -v --debug --skip-proto + + - name: Set up Docker Buildx + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/setup-buildx-action@v3 + + - name: Docker Metadata action + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + id: meta + uses: docker/metadata-action@v5 + env: + DOCKER_METADATA_PR_HEAD_SHA: "true" + with: + images: | + ghcr.io/pokt-network/poktrolld + tags: | + type=ref,event=branch,suffix=-dev + type=ref,event=pr + type=sha + type=sha,format=long + + - name: Login to GitHub Container Registry + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Copy binaries to inside of the Docker context + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + run: | + mkdir -p ./bin # Make sure the bin directory exists + cp $(which ignite) ./bin # Copy ignite binary to the repo's bin directory + cp $(go env GOPATH)/bin/poktrolld ./bin # Copy the binary to the repo's bin directory + ls -la ./bin + + - name: Build and push Docker image + if: (github.ref == 'refs/heads/main') || (contains(github.event.pull_request.labels.*.name, 'push-image')) + uses: docker/build-push-action@v5 + with: + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + # NB: Uncomment below if arm64 build is needed; arm64 builds are off by default because build times are significant. + platforms: linux/amd64 #,linux/arm64 + file: Dockerfile.dev + cache-from: type=gha + cache-to: type=gha,mode=max + context: . run-e2e-tests: timeout-minutes: 20 @@ -93,27 +93,27 @@ jobs: GKE_CLUSTER: protocol-us-central1 GKE_ZONE: us-central1 steps: - - uses: actions/checkout@v4 - with: - sparse-checkout: | - .github - - - id: "auth" - name: "Authenticate to Google Cloud" - uses: "google-github-actions/auth@v1" - with: - credentials_json: "${{ secrets.GKE_PROTOCOL_US_CENTRAL }}" - - - uses: google-github-actions/get-gke-credentials@v1 - with: - cluster_name: ${{ env.GKE_CLUSTER }} - location: ${{ env.GKE_ZONE }} - project_id: ${{ secrets.GKE_PROTOCOL_PROJECT }} - - - name: Run E2E test job - env: - IMAGE_TAG: sha-${{ github.event.pull_request.head.sha || github.sha }} - NAMESPACE: devnet-issue-${{ github.event.number }} - JOB_NAME: e2e-test-${{ github.event.pull_request.head.sha || github.sha }} - POCKET_NODE: tcp://devnet-issue-${{ github.event.number }}-validator-poktrolld:36657 - run: bash .github/workflows-helpers/run-e2e-test.sh + - uses: actions/checkout@v4 + with: + sparse-checkout: | + .github + + - id: "auth" + name: "Authenticate to Google Cloud" + uses: "google-github-actions/auth@v1" + with: + credentials_json: "${{ secrets.GKE_PROTOCOL_US_CENTRAL }}" + + - uses: google-github-actions/get-gke-credentials@v1 + with: + cluster_name: ${{ env.GKE_CLUSTER }} + location: ${{ env.GKE_ZONE }} + project_id: ${{ secrets.GKE_PROTOCOL_PROJECT }} + + - name: Run E2E test job + env: + IMAGE_TAG: sha-${{ github.event.pull_request.head.sha || github.sha }} + NAMESPACE: devnet-issue-${{ github.event.number }} + JOB_NAME: e2e-test-${{ github.event.pull_request.head.sha || github.sha }} + POCKET_NODE: tcp://devnet-issue-${{ github.event.number }}-validator-poktrolld:36657 + run: bash .github/workflows-helpers/run-e2e-test.sh diff --git a/.github/workflows/reviewdog.yml b/.github/workflows/reviewdog.yml index c327b6617..40b019040 100644 --- a/.github/workflows/reviewdog.yml +++ b/.github/workflows/reviewdog.yml @@ -69,5 +69,4 @@ jobs: reporter: github-check level: warning locale: "US" - -# TODO_IMPROVE: Enforce using k.Logger() when logging in the `x/` directory code. \ No newline at end of file +# TODO_IMPROVE: Enforce using k.Logger() when logging in the `x/` directory code. diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 3932a0333..6cd7d3f75 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -17,30 +17,30 @@ jobs: go-test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - with: - fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 + - uses: actions/checkout@v3 + with: + fetch-depth: "0" # Per https://github.com/ignite/cli/issues/1674#issuecomment-1144619147 - - name: install ignite - run: | - make ignite_install + - name: install ignite + run: | + make ignite_install - - name: Set up Go - uses: actions/setup-go@v4 - with: - go-version: "1.22.2" + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: "1.22.2" - - name: Install CI dependencies - run: make install_ci_deps + - name: Install CI dependencies + run: make install_ci_deps - - name: Generate protobufs - run: make proto_regen + - name: Generate protobufs + run: make proto_regen - - name: Generate mocks - run: make go_mockgen + - name: Generate mocks + run: make go_mockgen - - name: Run golangci-lint - run: make go_lint + - name: Run golangci-lint + run: make go_lint - - name: Test - run: make go_test + - name: Test + run: make go_test diff --git a/docusaurus/yarn.lock b/docusaurus/yarn.lock index ef13ae772..11107ca6e 100644 --- a/docusaurus/yarn.lock +++ b/docusaurus/yarn.lock @@ -84,7 +84,7 @@ "@algolia/requester-common" "4.23.2" "@algolia/transporter" "4.23.2" -"@algolia/client-search@>= 4.9.1 < 6", "@algolia/client-search@4.23.2": +"@algolia/client-search@4.23.2": version "4.23.2" resolved "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.2.tgz" integrity sha512-CxSB29OVGSE7l/iyoHvamMonzq7Ev8lnk/OkzleODZ1iBcCs3JC/XgTIKzN/4RSTrJ9QybsnlrN/bYCGufo7qw== @@ -176,7 +176,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== -"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.19.6", "@babel/core@^7.23.3", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0": +"@babel/core@^7.19.6", "@babel/core@^7.23.3": version "7.23.5" resolved "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz" integrity sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g== @@ -1232,7 +1232,7 @@ "@docsearch/css" "3.6.0" algoliasearch "^4.19.1" -"@docusaurus/core@^3.2.1", "@docusaurus/core@3.2.1": +"@docusaurus/core@3.2.1", "@docusaurus/core@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/core/-/core-3.2.1.tgz" integrity sha512-ZeMAqNvy0eBv2dThEeMuNzzuu+4thqMQakhxsgT5s02A8LqRcdkg+rbcnuNqUIpekQ4GRx3+M5nj0ODJhBXo9w== @@ -1356,7 +1356,7 @@ vfile "^6.0.1" webpack "^5.88.1" -"@docusaurus/module-type-aliases@^3.2.1", "@docusaurus/module-type-aliases@3.2.1": +"@docusaurus/module-type-aliases@3.2.1", "@docusaurus/module-type-aliases@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.2.1.tgz" integrity sha512-FyViV5TqhL1vsM7eh29nJ5NtbRE6Ra6LP1PDcPvhwPSlA7eiWGRKAn3jWwMUcmjkos5SYY+sr0/feCdbM3eQHQ== @@ -1393,7 +1393,7 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-docs@^2 || ^3", "@docusaurus/plugin-content-docs@^3.2.1", "@docusaurus/plugin-content-docs@3.2.1": +"@docusaurus/plugin-content-docs@3.2.1", "@docusaurus/plugin-content-docs@^2 || ^3", "@docusaurus/plugin-content-docs@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.2.1.tgz" integrity sha512-GHe5b/lCskAR8QVbfWAfPAApvRZgqk7FN3sOHgjCtjzQACZxkHmq6QqyqZ8Jp45V7lVck4wt2Xw2IzBJ7Cz3bA== @@ -1506,7 +1506,7 @@ "@docusaurus/theme-search-algolia" "3.2.1" "@docusaurus/types" "3.2.1" -"@docusaurus/react-loadable@5.5.2": +"@docusaurus/react-loadable@5.5.2", "react-loadable@npm:@docusaurus/react-loadable@5.5.2": version "5.5.2" resolved "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz" integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== @@ -1545,7 +1545,7 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-common@^2 || ^3", "@docusaurus/theme-common@3.2.1": +"@docusaurus/theme-common@3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.2.1.tgz" integrity sha512-d+adiD7L9xv6EvfaAwUqdKf4orsM3jqgeqAM+HAjgL/Ux0GkVVnfKr+tsoe+4ow4rHe6NUt+nkkW8/K8dKdilA== @@ -1601,7 +1601,7 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-translations@^2 || ^3", "@docusaurus/theme-translations@3.2.1": +"@docusaurus/theme-translations@3.2.1", "@docusaurus/theme-translations@^2 || ^3": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.2.1.tgz" integrity sha512-jAUMkIkFfY+OAhJhv6mV8zlwY6J4AQxJPTgLdR2l+Otof9+QdJjHNh/ifVEu9q0lp3oSPlJj9l05AaP7Ref+cg== @@ -1609,7 +1609,7 @@ fs-extra "^11.1.1" tslib "^2.6.0" -"@docusaurus/types@*", "@docusaurus/types@^3.2.1", "@docusaurus/types@3.2.1": +"@docusaurus/types@3.2.1", "@docusaurus/types@^3.2.1": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/types/-/types-3.2.1.tgz" integrity sha512-n/toxBzL2oxTtRTOFiGKsHypzn/Pm+sXyw+VSk1UbqbXQiHOwHwts55bpKwbcUgA530Is6kix3ELiFOv9GAMfw== @@ -1624,14 +1624,14 @@ webpack "^5.88.1" webpack-merge "^5.9.0" -"@docusaurus/utils-common@^2 || ^3", "@docusaurus/utils-common@3.2.1": +"@docusaurus/utils-common@3.2.1", "@docusaurus/utils-common@^2 || ^3": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.2.1.tgz" integrity sha512-N5vadULnRLiqX2QfTjVEU3u5vo6RG2EZTdyXvJdzDOdrLCGIZAfnf/VkssinFZ922sVfaFfQ4FnStdhn5TWdVg== dependencies: tslib "^2.6.0" -"@docusaurus/utils-validation@^2 || ^3", "@docusaurus/utils-validation@3.2.1": +"@docusaurus/utils-validation@3.2.1", "@docusaurus/utils-validation@^2 || ^3": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.2.1.tgz" integrity sha512-+x7IR9hNMXi62L1YAglwd0s95fR7+EtirjTxSN4kahYRWGqOi3jlQl1EV0az/yTEvKbxVvOPcdYicGu9dk4LJw== @@ -1643,7 +1643,7 @@ js-yaml "^4.1.0" tslib "^2.6.0" -"@docusaurus/utils@^2 || ^3", "@docusaurus/utils@3.2.1": +"@docusaurus/utils@3.2.1", "@docusaurus/utils@^2 || ^3": version "3.2.1" resolved "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.2.1.tgz" integrity sha512-DPkIS/EPc+pGAV798PUXgNzJFM3HJouoQXgr0KDZuJVz1EkWbDLOcQwLIz8Qx7liI9ddfkN/TXTRQdsTPZNakw== @@ -1698,6 +1698,20 @@ mark.js "^8.11.1" tslib "^2.4.0" +"@emnapi/core@^1.1.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.1.1.tgz#3246a11db5b20b2fdf90e9b55fc7db4f3f88d947" + integrity sha512-eu4KjHfXg3I+UUR7vSuwZXpRo4c8h4Rtb5Lu2F7Z4JqJFl/eidquONEBiRs6viXKpWBC3BaJBy68xGJ2j56idw== + dependencies: + tslib "^2.4.0" + +"@emnapi/runtime@^1.1.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.1.1.tgz#697d02276ca6f49bafe6fd01c9df0034818afa98" + integrity sha512-3bfqkzuR1KLx57nZfjr2NLnFOobvyS0aTszaEGCGqmYMVDRaGvgIZbjGSV/MHSSmLgQ/b9JFHQ5xm5WRZYd+XQ== + dependencies: + tslib "^2.4.0" + "@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz" @@ -1810,11 +1824,87 @@ dependencies: "@types/mdx" "^2.0.0" +"@napi-rs/wasm-runtime@^0.1.1": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.1.2.tgz#cff8330e3728ab4447af82b67277f067132d341f" + integrity sha512-8JuczewTFIZ/XIjHQ+YlQUydHvlKx2hkcxtuGwh+t/t5zWyZct6YG4+xjHcq8xyc/e7FmFwf42Zj2YgICwmlvA== + dependencies: + "@emnapi/core" "^1.1.0" + "@emnapi/runtime" "^1.1.0" + "@tybys/wasm-util" "^0.8.1" + +"@node-rs/jieba-android-arm-eabi@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-android-arm-eabi/-/jieba-android-arm-eabi-1.10.0.tgz#ef351c295f2380fbcad386965830d56b3c62cf04" + integrity sha512-bzusJSLHm7I0qL8aQXGLt7IQ51Px35yGGEcQ/Ps4SEt0AxRSJ2/rxNET/8mlwBpOCZ5xiKE3BOBRfQajiPiI3g== + +"@node-rs/jieba-android-arm64@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-android-arm64/-/jieba-android-arm64-1.10.0.tgz#96386a880e21f227848c54270b8937e139fb6d41" + integrity sha512-g89Oq5U2RPmtlvuQhjNj8YZc5Gq033ODb7Ot4Z/OdIHvg2WMxi2M1GQhcdKu60dO79/tazc53W6I8/y691DUfQ== + "@node-rs/jieba-darwin-arm64@1.10.0": version "1.10.0" resolved "https://registry.npmjs.org/@node-rs/jieba-darwin-arm64/-/jieba-darwin-arm64-1.10.0.tgz" integrity sha512-IhR5r+XxFcfhVsF93zQ3uCJy8ndotRntXzoW/JCyKqOahUo/ITQRT6vTKHKMyD9xNmjl222OZonBSo2+mlI2fQ== +"@node-rs/jieba-darwin-x64@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-darwin-x64/-/jieba-darwin-x64-1.10.0.tgz#2eff70d7900941b6598742545555228659a40c0f" + integrity sha512-MBIs8ixKY4FPnifdZ7eTx6ht85TXE4kFBK4c8A/VDAbnmzBzpEyuV7tHUA2wAdfR0muC9j7/5FB4kQGZgYfc8g== + +"@node-rs/jieba-freebsd-x64@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-freebsd-x64/-/jieba-freebsd-x64-1.10.0.tgz#fa0c4f66a09afa2d91af4295fe43dbc42d5c68c2" + integrity sha512-MuY+1QEXONxo3I/uFLFju0/pSN5bzQORhJkIdP8CYv+jZaVB4Uz6rC7A5HrgjiAXOna6QsKlRgx2bYyHfaBUrA== + +"@node-rs/jieba-linux-arm-gnueabihf@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-linux-arm-gnueabihf/-/jieba-linux-arm-gnueabihf-1.10.0.tgz#a9c302cd7d24b80e55434a1453aaf07ee03ca0c0" + integrity sha512-QfSBnwISdVuTqsi4iThAO1LSbKRSqSsIWiIJgCduhYsTDDiG9+pHyfiZtcTwSf73SDXHZ400QuBNONWLQ/dSag== + +"@node-rs/jieba-linux-arm64-gnu@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-linux-arm64-gnu/-/jieba-linux-arm64-gnu-1.10.0.tgz#ca7d088604d5424531ee43f3f91048abb44d5c84" + integrity sha512-vzA2tX/6dReEd/7tZ9927glWQmKDausM6R9S5CqZx4BA4NSaWAK0xFdWsz0K7np459FXqNavLdNB5FVFJb4zzA== + +"@node-rs/jieba-linux-arm64-musl@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-linux-arm64-musl/-/jieba-linux-arm64-musl-1.10.0.tgz#4adae202d08403c0d2e6e456b4548c9ce37d2b89" + integrity sha512-gxqoAVOQsn9sgYK6mFO9dsMZ/yOMvVecLZW5rGvLErjiugVvYUlESXIvCqxp2GSws8RtTqJj6p9u/lBmCCuvaw== + +"@node-rs/jieba-linux-x64-gnu@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-linux-x64-gnu/-/jieba-linux-x64-gnu-1.10.0.tgz#be258736b8591dcbd1211b73376b43beb3cdf7b6" + integrity sha512-rS5Shs8JITxJjFIjoIZ5a9O+GO21TJgKu03g2qwFE3QaN5ZOvXtz+/AqqyfT4GmmMhCujD83AGqfOGXDmItF9w== + +"@node-rs/jieba-linux-x64-musl@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-linux-x64-musl/-/jieba-linux-x64-musl-1.10.0.tgz#e674f5f58352f5a0bcb187e258982f0b45907bac" + integrity sha512-BvSiF2rR8Birh2oEVHcYwq0WGC1cegkEdddWsPrrSmpKmukJE2zyjcxaOOggq2apb8fIRsjyeeUh6X3R5AgjvA== + +"@node-rs/jieba-wasm32-wasi@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-wasm32-wasi/-/jieba-wasm32-wasi-1.10.0.tgz#9b22e08341e9021de8b4f7d025661b6ab648e73e" + integrity sha512-EzeAAbRrFTdYw61rd8Mfwdp/fA21d58z9vLY06CDbI+dqANfMFn1IUdwzKWi8S5J/MRhvbzonbbh3yHlz6F43Q== + dependencies: + "@napi-rs/wasm-runtime" "^0.1.1" + +"@node-rs/jieba-win32-arm64-msvc@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-win32-arm64-msvc/-/jieba-win32-arm64-msvc-1.10.0.tgz#b3883e59e6c8a01577f95cbee5783cebed468345" + integrity sha512-eZjRLFUAvq1/E5+xXfJRqIB99Gu6BA+6+EXf/rCLuvEjXrDQuUunhmrSoOL5MjmUXTtazS+bXq9PXV5EFYyOPw== + +"@node-rs/jieba-win32-ia32-msvc@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-win32-ia32-msvc/-/jieba-win32-ia32-msvc-1.10.0.tgz#1ed7909231773b9faf6f9cbcb0062696f851dc8b" + integrity sha512-DrfbeCN7UcLN+MiocZabWo74XZIjfpQsJ/WMOItZzVbU2gDcJSkSyAhML9+OqId66DhGCMFFlGinocElM8iIAw== + +"@node-rs/jieba-win32-x64-msvc@1.10.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@node-rs/jieba-win32-x64-msvc/-/jieba-win32-x64-msvc-1.10.0.tgz#25e399f74a08a1cd2b0673ea45c5efabf4c5e7e4" + integrity sha512-RjBkBmjjHmj+bofiq5/han8wzbCkDk24OAPJ+YX8PX20GFSHmdjCiWapv3AooN8/RiKqlBfgodjS1JUngNWo5g== + "@node-rs/jieba@^1.6.0": version "1.10.0" resolved "https://registry.npmjs.org/@node-rs/jieba/-/jieba-1.10.0.tgz" @@ -1843,7 +1933,7 @@ "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5": +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": version "2.0.5" resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== @@ -1977,7 +2067,7 @@ "@svgr/babel-plugin-transform-react-native-svg" "^6.5.1" "@svgr/babel-plugin-transform-svg-component" "^6.5.1" -"@svgr/core@*", "@svgr/core@^6.0.0", "@svgr/core@^6.5.1": +"@svgr/core@^6.5.1": version "6.5.1" resolved "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz" integrity sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw== @@ -2041,6 +2131,13 @@ resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== +"@tybys/wasm-util@^0.8.1": + version "0.8.3" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.8.3.tgz#34dc6fd51bdc03524a27359137594bb15c59bba1" + integrity sha512-Z96T/L6dUFFxgFJ+pQtkPpne9q7i6kIPYCFnQBHSgSPV9idTsKfIhCss0h5iM9irweZCatkrdeP8yi5uM1eX6Q== + dependencies: + tslib "^2.4.0" + "@types/acorn@^4.0.0": version "4.0.6" resolved "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz" @@ -2312,7 +2409,7 @@ "@types/history" "^4.7.11" "@types/react" "*" -"@types/react@*", "@types/react@>= 16.8.0 < 19.0.0", "@types/react@>=16": +"@types/react@*": version "18.2.42" resolved "https://registry.npmjs.org/@types/react/-/react-18.2.42.tgz" integrity sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA== @@ -2403,7 +2500,7 @@ resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@webassemblyjs/ast@^1.11.5", "@webassemblyjs/ast@1.11.6": +"@webassemblyjs/ast@1.11.6", "@webassemblyjs/ast@^1.11.5": version "1.11.6" resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz" integrity sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q== @@ -2504,7 +2601,7 @@ "@webassemblyjs/wasm-gen" "1.11.6" "@webassemblyjs/wasm-parser" "1.11.6" -"@webassemblyjs/wasm-parser@^1.11.5", "@webassemblyjs/wasm-parser@1.11.6": +"@webassemblyjs/wasm-parser@1.11.6", "@webassemblyjs/wasm-parser@^1.11.5": version "1.11.6" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz" integrity sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ== @@ -2557,7 +2654,7 @@ acorn-walk@^8.0.0: resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.1.tgz" integrity sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw== -"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8, acorn@^8.0.0, acorn@^8.0.4, acorn@^8.7.1, acorn@^8.8.2: +acorn@^8.0.0, acorn@^8.0.4, acorn@^8.7.1, acorn@^8.8.2: version "8.11.2" resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz" integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== @@ -2582,12 +2679,7 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" -ajv-keywords@^3.4.1: - version "3.5.2" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz" - integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== - -ajv-keywords@^3.5.2: +ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== @@ -2599,7 +2691,7 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.12.2, ajv@^6.12.5, ajv@^6.9.1: +ajv@^6.12.2, ajv@^6.12.5: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2609,7 +2701,7 @@ ajv@^6.12.2, ajv@^6.12.5, ajv@^6.9.1: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.8.2, ajv@^8.9.0: +ajv@^8.0.0, ajv@^8.9.0: version "8.12.0" resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -2626,7 +2718,7 @@ algoliasearch-helper@^3.13.3: dependencies: "@algolia/events" "^4.0.1" -algoliasearch@^4.18.0, algoliasearch@^4.19.1, "algoliasearch@>= 3.1 < 6", "algoliasearch@>= 4.9.1 < 6": +algoliasearch@^4.18.0, algoliasearch@^4.19.1: version "4.23.2" resolved "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.2.tgz" integrity sha512-8aCl055IsokLuPU8BzLjwzXjb7ty9TPcUFFOk0pYOwsE5DMVhE3kwCMFtsCFKcnoPZK7oObm+H5mbnSO/9ioxQ== @@ -2713,16 +2805,16 @@ argparse@^2.0.1: resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -array-flatten@^2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== +array-flatten@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz" + integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== + array-union@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" @@ -2890,7 +2982,7 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.4, browserslist@^4.21.9, browserslist@^4.22.2, browserslist@^4.23.0, "browserslist@>= 4.21.0": +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.4, browserslist@^4.21.9, browserslist@^4.22.2, browserslist@^4.23.0: version "4.23.0" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz" integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== @@ -3146,16 +3238,16 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - color-name@1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + colord@^2.9.1: version "2.9.3" resolved "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz" @@ -3176,6 +3268,11 @@ comma-separated-tokens@^2.0.0: resolved "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== +commander@7, commander@^7.2.0: + version "7.2.0" + resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + commander@^10.0.0: version "10.0.1" resolved "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz" @@ -3191,21 +3288,11 @@ commander@^5.1.0: resolved "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - commander@^8.3.0: version "8.3.0" resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== -commander@7: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - common-path-prefix@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz" @@ -3556,7 +3643,7 @@ cytoscape-fcose@^2.1.0: dependencies: cose-base "^2.2.0" -cytoscape@^3.2.0, cytoscape@^3.23.0: +cytoscape@^3.23.0: version "3.27.0" resolved "https://registry.npmjs.org/cytoscape/-/cytoscape-3.27.0.tgz" integrity sha512-pPZJilfX9BxESwujODz5pydeGi+FBrXq1rcaB1mfhFXXFJ9GjE6CNndAk+8jPzoXGD+16LtSS4xlYEIUiW4Abg== @@ -3564,13 +3651,6 @@ cytoscape@^3.2.0, cytoscape@^3.23.0: heap "^0.2.6" lodash "^4.17.21" -d3-array@^3.2.0, "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3: - version "3.2.4" - resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" - integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== - dependencies: - internmap "1 - 2" - "d3-array@1 - 2": version "2.12.1" resolved "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz" @@ -3578,6 +3658,13 @@ d3-array@^3.2.0, "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", dependencies: internmap "^1.0.0" +"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@^3.2.0: + version "3.2.4" + resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" + integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== + dependencies: + internmap "1 - 2" + d3-axis@3: version "3.0.0" resolved "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz" @@ -3687,16 +3774,16 @@ d3-hierarchy@3: dependencies: d3-color "1 - 3" -d3-path@^3.1.0, "d3-path@1 - 3", d3-path@3: - version "3.1.0" - resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz" - integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== - d3-path@1: version "1.0.9" resolved "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz" integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== +"d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz" + integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== + d3-polygon@3: version "3.0.1" resolved "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz" @@ -3744,13 +3831,6 @@ d3-scale@4: resolved "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@^1.2.0: - version "1.3.7" - resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz" - integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw== - dependencies: - d3-path "1" - d3-shape@3: version "3.2.0" resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz" @@ -3758,6 +3838,13 @@ d3-shape@3: dependencies: d3-path "^3.1.0" +d3-shape@^1.2.0: + version "1.3.7" + resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz" + integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw== + dependencies: + d3-path "1" + "d3-time-format@2 - 4", d3-time-format@4: version "4.1.0" resolved "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz" @@ -3853,27 +3940,20 @@ debounce@^1.2.1: resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== -debug@^2.6.0: +debug@2.6.9, debug@^2.6.0: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@4: +debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0: version "4.3.4" resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" -debug@2.6.9: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - decode-named-character-reference@^1.0.0: version "1.0.2" resolved "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz" @@ -3954,16 +4034,16 @@ delaunator@5: dependencies: robust-predicates "^3.0.0" -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" - integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== - depd@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== + dequal@^2.0.0: version "2.0.3" resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" @@ -4460,7 +4540,7 @@ feed@^4.2.2: dependencies: xml-js "^1.6.11" -file-loader@*, file-loader@^6.2.0: +file-loader@^6.2.0: version "6.2.0" resolved "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz" integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== @@ -4762,16 +4842,16 @@ got@^12.1.0: p-cancelable "^3.0.0" responselike "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: - version "4.2.11" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" - integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== - graceful-fs@4.2.10: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: + version "4.2.11" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + gray-matter@^4.0.3: version "4.0.3" resolved "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz" @@ -5073,16 +5153,6 @@ http-deceiver@^1.2.7: resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - http-errors@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" @@ -5094,6 +5164,16 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" + integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-parser-js@>=0.5.1: version "0.5.8" resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz" @@ -5209,7 +5289,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3, inherits@2, inherits@2.0.4: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: version "2.0.4" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -5219,16 +5299,16 @@ inherits@2.0.3: resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== -ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: - version "1.3.8" - resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" - integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== - ini@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz" integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== +ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: + version "1.3.8" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + inline-style-parser@0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz" @@ -5239,16 +5319,16 @@ inline-style-parser@0.2.3: resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz" integrity sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g== -internmap@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz" - integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== - "internmap@1 - 2": version "2.0.3" resolved "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz" integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== +internmap@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz" + integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== + interpret@^1.0.0: version "1.4.0" resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz" @@ -5261,16 +5341,16 @@ invariant@^2.2.4: dependencies: loose-envify "^1.0.0" -ipaddr.js@^2.0.1: - version "2.1.0" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz" - integrity sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== +ipaddr.js@^2.0.1: + version "2.1.0" + resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz" + integrity sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ== + is-alphabetical@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz" @@ -5446,16 +5526,16 @@ is-yarn-global@^0.4.0: resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.4.1.tgz" integrity sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ== -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isarray@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isexe@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" @@ -6677,7 +6757,7 @@ micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: braces "^3.0.2" picomatch "^2.3.1" -"mime-db@>= 1.43.0 < 2": +mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== @@ -6687,40 +6767,14 @@ mime-db@~1.33.0: resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz" integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ== -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.27: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@^2.1.31: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@~2.1.17, mime-types@2.1.18: +mime-types@2.1.18, mime-types@~2.1.17: version "2.1.18" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz" integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ== dependencies: mime-db "~1.33.0" -mime-types@~2.1.24: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime-types@~2.1.34: +mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -6759,7 +6813,7 @@ minimalistic-assert@^1.0.0: resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@3.1.2: +minimatch@3.1.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -7145,13 +7199,6 @@ path-parse@^1.0.7: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-to-regexp@^1.7.0: - version "1.8.0" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz" - integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== - dependencies: - isarray "0.0.1" - path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz" @@ -7162,6 +7209,13 @@ path-to-regexp@2.2.1: resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz" integrity sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ== +path-to-regexp@^1.7.0: + version "1.8.0" + resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz" + integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== + dependencies: + isarray "0.0.1" + path-type@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" @@ -7481,7 +7535,7 @@ postcss-zindex@^5.1.0: resolved "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz" integrity sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A== -"postcss@^7.0.0 || ^8.0.1", postcss@^8.0.9, postcss@^8.1.0, postcss@^8.2.15, postcss@^8.2.2, postcss@^8.4.16, postcss@^8.4.17, postcss@^8.4.21, postcss@^8.4.26: +postcss@^8.4.17, postcss@^8.4.21, postcss@^8.4.26: version "8.4.32" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz" integrity sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw== @@ -7604,21 +7658,16 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" -range-parser@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - range-parser@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz" integrity sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A== +range-parser@^1.2.1, range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + raw-body@2.5.1: version "2.5.1" resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz" @@ -7669,7 +7718,7 @@ react-dev-utils@^12.0.1: strip-ansi "^6.0.1" text-table "^0.2.0" -react-dom@*, "react-dom@^16.14.0 || 17 || ^18", "react-dom@^16.6.0 || ^17.0.0 || ^18.0.0", react-dom@^18.0.0, "react-dom@>= 16.8.0 < 19.0.0": +react-dom@^18.0.0: version "18.2.0" resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== @@ -7715,14 +7764,6 @@ react-loadable-ssr-addon-v5-slorber@^1.0.1: dependencies: "@babel/runtime" "^7.10.3" -react-loadable@*, "react-loadable@npm:@docusaurus/react-loadable@5.5.2": - version "5.5.2" - resolved "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz" - integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== - dependencies: - "@types/react" "*" - prop-types "^15.6.2" - react-router-config@^5.1.1: version "5.1.1" resolved "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz" @@ -7743,7 +7784,7 @@ react-router-dom@^5.3.4: tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-router@^5.3.4, react-router@>=5, react-router@5.3.4: +react-router@5.3.4, react-router@^5.3.4: version "5.3.4" resolved "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz" integrity sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA== @@ -7758,7 +7799,7 @@ react-router@^5.3.4, react-router@>=5, react-router@5.3.4: tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react@*, "react@^16.13.1 || ^17.0.0 || ^18.0.0", "react@^16.14.0 || ^17 || ^18", "react@^16.6.0 || ^17.0.0 || ^18.0.0", react@^18.0.0, react@^18.2.0, "react@>= 16.8.0 < 19.0.0", react@>=15, react@>=16, react@>=16.0.0: +react@^18.0.0: version "18.2.0" resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== @@ -8078,20 +8119,15 @@ sade@^1.7.3: dependencies: mri "^1.1.0" -safe-buffer@^5.1.0, safe-buffer@>=5.1.0, safe-buffer@~5.2.0, safe-buffer@5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" @@ -8110,25 +8146,16 @@ scheduler@^0.23.0: dependencies: loose-envify "^1.1.0" -schema-utils@^3.0.0: - version "3.3.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz" - integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== - dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" - -schema-utils@^3.1.1: - version "3.3.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz" - integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== +schema-utils@2.7.0: + version "2.7.0" + resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz" + integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== dependencies: - "@types/json-schema" "^7.0.8" - ajv "^6.12.5" - ajv-keywords "^3.5.2" + "@types/json-schema" "^7.0.4" + ajv "^6.12.2" + ajv-keywords "^3.4.1" -schema-utils@^3.2.0: +schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: version "3.3.0" resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== @@ -8147,20 +8174,6 @@ schema-utils@^4.0.0: ajv-formats "^2.1.1" ajv-keywords "^5.1.0" -schema-utils@2.7.0: - version "2.7.0" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -"search-insights@>= 1 < 3": - version "2.13.0" - resolved "https://registry.npmjs.org/search-insights/-/search-insights-2.13.0.tgz" - integrity sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw== - section-matter@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz" @@ -8404,12 +8417,7 @@ source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" -source-map@^0.6.0: - version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@^0.6.1: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0: version "0.6.1" resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -8419,11 +8427,6 @@ source-map@^0.7.0: resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -source-map@~0.6.0: - version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - space-separated-tokens@^2.0.0: version "2.0.2" resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz" @@ -8467,45 +8470,22 @@ stable@^0.1.8: resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== - statuses@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== +"statuses@>= 1.4.0 < 2": + version "1.5.0" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== + std-env@^3.0.1: version "3.6.0" resolved "https://registry.npmjs.org/std-env/-/std-env-3.6.0.tgz" integrity sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg== -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string-width@^4.1.0: - version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string-width@^4.2.0: +string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -8523,6 +8503,20 @@ string-width@^5.0.1, string-width@^5.1.2: emoji-regex "^9.2.2" strip-ansi "^7.0.1" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + stringify-entities@^4.0.0: version "4.0.4" resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz" @@ -8763,9 +8757,6 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -"typescript@>= 2.7", typescript@>=4.9.5: - version "5.3.3" - undici-types@~5.26.4: version "5.26.5" resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" @@ -8884,7 +8875,7 @@ universalify@^2.0.0: resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz" integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== -unpipe@~1.0.0, unpipe@1.0.0: +unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== @@ -9113,7 +9104,7 @@ webpack-sources@^3.2.3: resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -"webpack@^4.0.0 || ^5.0.0", "webpack@^4.37.0 || ^5.0.0", webpack@^5.0.0, webpack@^5.1.0, webpack@^5.20.0, webpack@^5.88.1, "webpack@>= 4", "webpack@>=4.41.1 || 5.x", webpack@>=5, "webpack@3 || 4 || 5": +webpack@^5.88.1: version "5.89.0" resolved "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz" integrity sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw== @@ -9153,7 +9144,7 @@ webpackbar@^5.0.2: pretty-time "^1.1.0" std-env "^3.0.1" -websocket-driver@^0.7.4, websocket-driver@>=0.5.1: +websocket-driver@>=0.5.1, websocket-driver@^0.7.4: version "0.7.4" resolved "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz" integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== From 97b3c4cee2fd71c4d21f405e438dcac5a677e6db Mon Sep 17 00:00:00 2001 From: "Dmitry K." Date: Wed, 8 May 2024 18:06:55 -0700 Subject: [PATCH 28/28] add dash to suffix --- .github/workflows/release-artifacts.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-artifacts.yml b/.github/workflows/release-artifacts.yml index 76300dd49..b339d4e77 100644 --- a/.github/workflows/release-artifacts.yml +++ b/.github/workflows/release-artifacts.yml @@ -55,9 +55,9 @@ jobs: tags: | type=semver,pattern={{version}} type=semver,pattern={{major}}.{{minor}} - type=ref,event=tag,suffix=prod - type=sha,suffix=prod - type=sha,format=long,suffix=prod + type=ref,event=tag,suffix=-prod + type=sha,suffix=-prod + type=sha,format=long,suffix=-prod - name: Login to GitHub Container Registry uses: docker/login-action@v3