Skip to content

Commit 3eec0b9

Browse files
authored
Merge pull request #2278 from iotaledger/develop
2 parents 5a98797 + 7d2cd7a commit 3eec0b9

File tree

443 files changed

+15781
-30390
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

443 files changed

+15781
-30390
lines changed

.dockerignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
.github/
44
docs/
55
.idea/
6+
go.work*
67

78
LICENSE
89
README.md

.github/workflows/client-import.yml

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
name: Client Lib Import Check
22

33
on:
4-
push:
5-
paths-ignore:
6-
- 'docs/**'
74
pull_request:
85
paths-ignore:
96
- 'docs/**'
@@ -24,4 +21,4 @@ jobs:
2421
uses: actions/checkout@v2
2522

2623
- name: Run Import Check Script
27-
run: ./scripts/client_import_check.sh
24+
run: ./scripts/client_import_check.sh

.github/workflows/feature-network-deploy.yml

-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@ jobs:
7676
GRAFANA_ADMIN_PASSWORD: '${{ secrets.GRAFANA_ADMIN_PASSWORD }}'
7777
ELK_ELASTIC_PASSWORD: '${{ secrets.ELK_ELASTIC_PASSWORD }}'
7878
ELK_ELASTIC_USER: '${{ secrets.ELK_ELASTIC_USER }}'
79-
DRANDS_SECRET: '${{ secrets.DRANDS_SECRET }}'
8079
COMMIT_SHA: '${{ github.sha }}'
8180
GOSHIMMER_DOCKER_IMAGE: 'iotaledgertesting/goshimmer'
8281
GOSHIMMER_DOCKER_TAG: 'feature'
+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: GoReleaser dryrun
2+
3+
on:
4+
pull_request:
5+
paths-ignore:
6+
- 'docs/**'
7+
8+
jobs:
9+
10+
goreleaser:
11+
name: GoReleaser dryrun
12+
runs-on:
13+
- ubuntu-latest
14+
container:
15+
image: gohornet/goreleaser-cgo-cross-compiler:1.18.1
16+
volumes: [/repo]
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v2
20+
21+
- name: Create fake config.json and snapshot.bin
22+
run: touch config.json snapshot.bin
23+
24+
- name: Run GoReleaser
25+
run: goreleaser --snapshot --rm-dist
26+
shell: bash

.github/workflows/integration-tests.yml

-97
Original file line numberDiff line numberDiff line change
@@ -156,55 +156,6 @@ jobs:
156156
name: ${{ env.TEST_NAME }}
157157
path: tools/integration-tests/logs
158158

159-
drng:
160-
name: drng
161-
env:
162-
TEST_NAME: drng
163-
runs-on: ubuntu-latest
164-
steps:
165-
166-
- name: Checkout repository
167-
uses: actions/checkout@v2
168-
169-
- name: Cache Go modules for tester container
170-
uses: actions/cache@v2
171-
with:
172-
path: |
173-
~/go
174-
# make sure concurrent runs (not really supported) do not match the same key but instead fall back to a reasonable cache
175-
key: ${{ runner.os }}-it-go-${{ hashFiles('tools/integration-tests/tester/go.sum') }}-${{ github.job }}-${{ github.sha }}
176-
restore-keys: |
177-
${{ runner.os }}-it-go-${{ hashFiles('tools/integration-tests/tester/go.sum') }}-
178-
${{ runner.os }}-it-go-
179-
180-
- name: Build GoShimmer image
181-
run: |
182-
docker build \
183-
--build-arg DOWNLOAD_SNAPSHOT=0 \
184-
-t iotaledger/goshimmer .
185-
186-
- name: Pull additional Docker images
187-
run: |
188-
docker pull angelocapossele/drand:v1.1.4
189-
190-
- name: Run integration tests
191-
run: |
192-
export CURRENT_UID=$(id -u):$(id -g)
193-
docker-compose -f tools/integration-tests/tester/docker-compose.ci.yml up --abort-on-container-exit --exit-code-from tester
194-
195-
- name: Create logs from tester
196-
if: always()
197-
run: |
198-
docker logs tester &> tools/integration-tests/logs/tester.log
199-
200-
- name: Save logs as artifacts
201-
if: always()
202-
uses: actions/upload-artifact@v1
203-
with:
204-
name: ${{ env.TEST_NAME }}
205-
path: tools/integration-tests/logs
206-
207-
208159
value:
209160
name: value
210161
env:
@@ -349,51 +300,3 @@ jobs:
349300
with:
350301
name: ${{ env.TEST_NAME }}
351302
path: tools/integration-tests/logs
352-
353-
diagnostics:
354-
name: diagnostics
355-
env:
356-
TEST_NAME: diagnostics
357-
runs-on: ubuntu-latest
358-
steps:
359-
360-
- name: Check out code
361-
uses: actions/checkout@v2
362-
363-
- name: Cache Go modules for tester container
364-
uses: actions/cache@v2
365-
with:
366-
path: |
367-
~/go
368-
# make sure concurrent runs (not really supported) do not match the same key but instead fall back to a reasonable cache
369-
key: ${{ runner.os }}-it-go-${{ hashFiles('tools/integration-tests/tester/go.sum') }}-${{ github.job }}-${{ github.sha }}
370-
restore-keys: |
371-
${{ runner.os }}-it-go-${{ hashFiles('tools/integration-tests/tester/go.sum') }}-
372-
${{ runner.os }}-it-go-
373-
374-
- name: Build GoShimmer image
375-
run: |
376-
docker build \
377-
--build-arg DOWNLOAD_SNAPSHOT=0 \
378-
-t iotaledger/goshimmer .
379-
380-
- name: Pull additional Docker images
381-
run: |
382-
docker pull alpine/socat:1.7.4.3-r0
383-
384-
- name: Run integration tests
385-
run: |
386-
export CURRENT_UID=$(id -u):$(id -g)
387-
docker-compose -f tools/integration-tests/tester/docker-compose.ci.yml up --abort-on-container-exit --exit-code-from tester
388-
389-
- name: Create logs from tester
390-
if: always()
391-
run: |
392-
docker logs tester &> tools/integration-tests/logs/tester.log
393-
394-
- name: Save logs as artifacts
395-
if: always()
396-
uses: actions/upload-artifact@v1
397-
with:
398-
name: ${{ env.TEST_NAME }}
399-
path: tools/integration-tests/logs

.github/workflows/pre-devnet-deploy.yml

-1
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ jobs:
7171
GRAFANA_ADMIN_PASSWORD: '${{ secrets.GRAFANA_ADMIN_PASSWORD }}'
7272
ELK_ELASTIC_PASSWORD: '${{ secrets.ELK_ELASTIC_PASSWORD }}'
7373
ELK_ELASTIC_USER: '${{ secrets.ELK_ELASTIC_USER }}'
74-
DRANDS_SECRET: '${{ secrets.DRANDS_SECRET }}'
7574
COMMIT_SHA: '${{ github.sha }}'
7675
GOSHIMMER_DOCKER_IMAGE: 'iotaledger/goshimmer'
7776
GOSHIMMER_DOCKER_TAG: 'develop'

.github/workflows/release.yml

-6
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,6 @@ jobs:
3838
uses: actions/checkout@v2
3939
with:
4040
ref: "refs/tags/${{github.event.inputs.tagName}}"
41-
- name: Set up Go
42-
uses: actions/setup-go@v2
43-
with:
44-
go-version: 1.18
4541

4642
- name: Copy config.default.json to config.json
4743
run: cp config.default.json config.json
@@ -98,8 +94,6 @@ jobs:
9894
GRAFANA_ADMIN_PASSWORD: '${{ secrets.GRAFANA_ADMIN_PASSWORD }}'
9995
ELK_ELASTIC_PASSWORD: '${{ secrets.ELK_ELASTIC_PASSWORD }}'
10096
ELK_ELASTIC_USER: '${{ secrets.ELK_ELASTIC_USER }}'
101-
DRANDS_SECRET: '${{ secrets.DRANDS_SECRET }}'
102-
DRNG_XTEAM_01_SEED: '${{ secrets.DRNG_XTEAM_01_SEED }}'
10397
SNAPSHOTTER_BUCKET: '${{ secrets.SNAPSHOTTER_BUCKET }}'
10498
SNAPSHOTTER_ACCESS_KEY: '${{ secrets.SNAPSHOTTER_ACCESS_KEY }}'
10599
SNAPSHOTTER_SECRET_KEY: '${{ secrets.SNAPSHOTTER_SECRET_KEY }}'

.github/workflows/reviewdog.yml

+4-7
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,14 @@ jobs:
1010
steps:
1111

1212
- name: Checkout repository
13-
uses: actions/checkout@v2
13+
uses: actions/checkout@v3
1414
with:
1515
fetch-depth: 0 # required for new-from-rev option in .golangci.yml
1616

17-
- uses: actions/setup-go@v1
18-
with:
19-
go-version: "1.18"
20-
2117
- name: Run golangci-lint
22-
uses: docker://reviewdog/action-golangci-lint:latest
18+
uses: reviewdog/action-golangci-lint@v2
2319
with:
2420
github_token: ${{ secrets.github_token }}
2521
golangci_lint_flags: "--timeout=10m"
26-
reporter: "github-pr-review"
22+
reporter: "github-pr-check"
23+
fail_on_error: true

.github/workflows/test.yml

-42
This file was deleted.

.github/workflows/unit-test.yml

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Test GoShimmer
2+
3+
on:
4+
pull_request:
5+
paths-ignore:
6+
- 'docs/**'
7+
8+
jobs:
9+
10+
unit-tests:
11+
name: Unit tests
12+
runs-on: ubuntu-latest
13+
steps:
14+
15+
- name: Setup dependencies
16+
run: sudo apt-get install libgflags-dev libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev libzstd-dev
17+
18+
- name: Setup Go 1.18
19+
uses: actions/setup-go@v1
20+
with:
21+
go-version: 1.18
22+
23+
- name: Checkout repository
24+
uses: actions/checkout@v2
25+
26+
- name: Cache Go build and dependencies
27+
uses: actions/cache@v2
28+
with:
29+
path: |
30+
~/.cache/go-build
31+
~/go/pkg/mod
32+
# make sure concurrent runs (not really supported) do not match the same key but instead fall back to a reasonable cache
33+
key: ${{ runner.os }}-go-${{ hashFiles('go.sum') }}-${{ github.event.action }}${{ github.event.after }}
34+
restore-keys: |
35+
${{ runner.os }}-go-${{ hashFiles('go.sum') }}
36+
${{ runner.os }}-go-
37+
38+
- name: Run Tests
39+
run: go test ./... -tags rocksdb -count=1 -timeout 10m
40+
41+
42+
unit-tests-race:
43+
name: Unit tests -race
44+
runs-on: ubuntu-latest
45+
steps:
46+
47+
- name: Setup dependencies
48+
run: sudo apt-get install libgflags-dev libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev libzstd-dev
49+
50+
- name: Setup Go 1.18
51+
uses: actions/setup-go@v1
52+
with:
53+
go-version: 1.18
54+
55+
- name: Checkout repository
56+
uses: actions/checkout@v2
57+
58+
- name: Cache Go build and dependencies
59+
uses: actions/cache@v2
60+
with:
61+
path: |
62+
~/.cache/go-build
63+
~/go/pkg/mod
64+
# make sure concurrent runs (not really supported) do not match the same key but instead fall back to a reasonable cache
65+
key: ${{ runner.os }}-go-${{ hashFiles('go.sum') }}-${{ github.event.action }}${{ github.event.after }}
66+
restore-keys: |
67+
${{ runner.os }}-go-${{ hashFiles('go.sum') }}
68+
${{ runner.os }}-go-
69+
70+
- name: Run Tests with -race
71+
run: go test ./... -tags rocksdb -count=1 -race -short -timeout 20m

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ testNodes/*
2828
# Project files
2929
.idea
3030
go.work
31+
go.work.sum
3132

3233
# Database directory
3334
mainnetdb/

CHANGELOG.md

+22
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
# v0.9.0 - 2022-06-16
2+
3+
> This major release introduces concurrency throughout the node with asynchronous events and parallelized booking. This is achieved with serix, a generic deterministic serialization library, and through generic thread-safe data models. The ledger and conflictDAG and output processing (introduction of UTXO VM) have been completely rewritten. The Blockfactory received a total revamp as well and tip selection should show better behavior in resolving conflicts. In addition, a bunch of unused modules and code have been removed rendering the project overall more readable. The short identifier of a nodeID has been adjusted to show the first 8 characters of the full identity.
4+
5+
The snapshot has been changed and thus the ledger state is fully reset.
6+
- Refactor MessageFactory, introduce ReferenceProvider and OrphanageManager (#2240)
7+
- Refactor models to be thread-safe with serix (#2248)
8+
- Remove future markers (#2241)
9+
- Delete unused modules (#2234)
10+
- Change identity.ID short representation (#2238)
11+
- Build(deps): bump eventsource in /plugins/dagsvisualizer/frontend (#2235)
12+
- Refactor models to use generic base models (#2231)
13+
- Build(deps): bump eventsource in /plugins/analysis/dashboard/frontend (#2233)
14+
- Build(deps): bump eventsource in /plugins/dashboard/frontend (#2232)
15+
- Multithreaded booking and new data flow with solidification of transactions (#2151)
16+
- Reviewdog version bump (#2223)
17+
- Fix serializer package dependency (#2219)
18+
- Force static linking of final binary in builtin script (#2216)
19+
- GoReleaser dryrun on PRs (#2213)
20+
- Update marker docs (#2146)
21+
22+
123
# v0.8.14 - 2022-05-16
224

325
> Minor revision introducing small docker changes.

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ FROM prepare-runtime as debugger-enabled-0
135135

136136
ENTRYPOINT ["/app/goshimmer", "--config=/app/config.json"]
137137

138-
# We execute this stage only if debugging is enabled, i.e REMOTE_DEBUGGIN==1
138+
# We execute this stage only if debugging is enabled, i.e REMOTE_DEBUGGING==1
139139
FROM prepare-runtime as debugger-enabled-1
140140
EXPOSE 40000
141141

0 commit comments

Comments
 (0)