Skip to content

Commit

Permalink
Merge branch 'master' into ci/release
Browse files Browse the repository at this point in the history
  • Loading branch information
DevopsGoth authored Jun 24, 2024
2 parents 9f7b1ce + 89b0ac3 commit 4f3be2f
Show file tree
Hide file tree
Showing 28 changed files with 74 additions and 41 deletions.
43 changes: 42 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,45 @@
# 2.24 (2024-05-23)
## 2.24.1
This is a minor point release. Upgrading is **strongly recommended**.

To upgrade, pull the latest docker image, or download the binary and
restart the node with the same configuration file as before.

### Changes

- Fixes cut pruning logic; during a previous change, there was a math error that caused no cuts to
ever be pruned from RocksDB [`17622c62`](https://github.com/kadena-io/chainweb-node/commit/17622c6240c06d8ff7c2cd8c848fc58658186be9)
- Don't prune cuts on startup. This avoids a race condition where we prune cuts on startup, and we don't write a cut before shutting down. [`f5f2be9b`](https://github.com/kadena-io/chainweb-node/commit/f5f2be9bca1f0aa4b4deb923f8623fd1834ffc44)
- Fixed a crash when using read-only replay with no upper bound [`4c494f0d`](https://github.com/kadena-io/chainweb-node/commit/4c494f0d7a360068cd8a40c03f58de0155ff27da)
- Disable telemetry monitor threads when telemetry is disabled anyway [`b2e182ad`](https://github.com/kadena-io/chainweb-node/commit/b2e182ad57462027d6aecba72e8f6556cce2692f)
- Reorganize ValidationFailure error message to be more readable [`3ab3e640`](https://github.com/kadena-io/chainweb-node/commit/3ab3e640e4f553d9bc798ad768aaa30fb8bf7700)
- Expand /info endpoint with: historical fork heights, historical chain graphs, node package version, genesis heights, the upcoming service date, and the block delay. [`9fb14dac`](https://github.com/kadena-io/chainweb-node/commit/9fb14dac6e8433ba07cecddbb7eb146ab1ce380b)
- Update pact pin for Hyperlane natives fixes [`1a9eb996`](https://github.com/kadena-io/chainweb-node/commit/1a9eb9960fcfe1c7e2673b1d26915285ff033cd7)
- Add message-id & message body validation & merkle tree metadata support to the Hyperlane message plugin. [`bc87c68b`](https://github.com/kadena-io/chainweb-node/commit/bc87c68bf0fc4ba427ff2cbf2858933b7470543a)
- Add capability to resume blocks in progress. [`38f3a3a6`](https://github.com/kadena-io/chainweb-node/commit/38f3a3a605d73d8114eab4c4bab0c729125fa5da)
- Miner now periodically "refreshes" blocks, ensuring that they use all transaction in the mempool, if possible. [`6e409ac8`](https://github.com/kadena-io/chainweb-node/commit/6e409ac8dcb221d4670372a8b57969d6ed7e56b9)
- Report refreshed blocks to the miner update stream [`dc7279fd`](https://github.com/kadena-io/chainweb-node/commit/dc7279fd984f8ffddef6ce3760101068c81f2046)
- Default compiler is now GHC 9.6.5, and update freeze deps [`8d1680ce`](https://github.com/kadena-io/chainweb-node/commit/8d1680ce3b6dcfbf3de6c3686bac553eedcfa72a)
- Payloads Endpoint: Support octet-stream Content-Type with binary encoding. Client support will be added at a later time. [`ce4718e0`](https://github.com/kadena-io/chainweb-node/commit/ce4718e0a17983597d60d5a29a93f4d03163db4e)
- Logging: move getBlockInMem to `Debug` level [`cae8f45b`](https://github.com/kadena-io/chainweb-node/commit/cae8f45bc04349be48e02b8f0faf42c1aa8e5939)
- Logging: Make cut timeout logs more clear [`85698d54`](https://github.com/kadena-io/chainweb-node/commit/85698d5420c8c0dc5cacfc6b80b5ddff43ce289c)
- Logging: Put cut fetch trace telemetry around cut timeouts instead of inside, so we still get telemetry even if a cut fetch times out. [`41c2a100`](https://github.com/kadena-io/chainweb-node/commit/41c2a10051f092d057f0c7052454ff8f53e2cb14 )
- Logging: Move cut extensibility to `Info` level, and log less often after the first one [`0c54b73d`](https://github.com/kadena-io/chainweb-node/commit/0c54b73d78e66f76a8f5696d9dbbc00e1738e33f)
- Logging: Failed transactions are now at `Debug` rather than `Info` level [`17baae4d`](https://github.com/kadena-io/chainweb-node/commit/17baae4d3d59cba847473963bf4dd1573bff7d8c)
- Logging: Restore block timeout logging; a previous change accidentally removed this. [`8ea378c1`](https://github.com/kadena-io/chainweb-node/commit/8ea378c15399bdc52c9e668da45133bcedb8299c)
- Logging: warp HTTP server errors are now at `Info` level [`fd043416`](https://github.com/kadena-io/chainweb-node/commit/fd0434169dcb5b6ed5ab233a931a5c7ec3cc7edb)
- Logging: P2P log messages are shorter and improved [`a3e4c565`](https://github.com/kadena-io/chainweb-node/commit/a3e4c56579d5a494057757fb3aa90dbdf254385a)
- Logging: Less verbose initialization [`8313a37e`](https://github.com/kadena-io/chainweb-node/commit/8313a37eaac4d38920fbffeea368d648028ed95e)
- Logging: Disable telemetry backend by default for less verbosity [`2c894c1e`](https://github.com/kadena-io/chainweb-node/commit/2c894c1ec06f6f08d3eab724545beb07859ae802)
- Logging: Cut pipeline logging is more descriptive [`27779aec`](https://github.com/kadena-io/chainweb-node/commit/27779aeca62cee5c00a9c515c006014f517f0558)
- Logging: Rename `connectioncounters` index to `counters` [`c81a95eb`](https://github.com/kadena-io/chainweb-node/commit/c81a95ebaeba82f7114d1ff104b5125ee1471a89)
- Logging: Single P2P task failures are now at `Debug` instead of `Info` level, while they're still being retried [`2952c7c2`](https://github.com/kadena-io/chainweb-node/commit/2952c7c2dd9432d3449e7a14b89bb776c103c5fb)
- Logging: Unify HTTP error logging across service and P2P APIs [`ef7579fe`](https://github.com/kadena-io/chainweb-node/commit/ef7579fe88c4a4d5a69b389e3e66486c15916f6d)
- Logging: Add a backend for P2P stats so they aren't logged as text [`24ff3ca7`](https://github.com/kadena-io/chainweb-node/commit/24ff3ca7ebff40c89041ee61fdf6cd48fb749a97)
- Logging: Log rewound blocks during catchup instead of played blocks [`3cead4be`](https://github.com/kadena-io/chainweb-node/commit/3cead4be42980aa4f85ffb1a9a698e99fa92a653)
- Logging: Silence unnecessary `chainweb-node: RequestCancelled` logs from PactService, by catching them in the request worker. [`6c4db9d2`](https://github.com/kadena-io/chainweb-node/commit/6c4db9d2a49440a6d36734c9d11599bed2959491)
- Logging: Stop logging ConnectionIsClosed [`a8c075e7`](https://github.com/kadena-io/chainweb-node/commit/a8c075e732f577cef849ac0b502ab1eefc77d853)

## 2.24 (2024-05-23)
This version replaces all previous versions. Any prior version will stop working
on **2024-05-29T00:00:00Z**. Node administrators must upgrade to this version
before that date. The 2.24 feature upgrade will occur at block height 4,819,246
Expand Down
2 changes: 1 addition & 1 deletion cabal.project.freeze
Original file line number Diff line number Diff line change
Expand Up @@ -340,4 +340,4 @@ constraints: any.Boolean ==0.2.4,
any.yet-another-logger ==0.4.2,
any.zigzag ==0.1.0.0,
any.zlib ==0.7.1.0
index-state: hackage.haskell.org 2024-06-03T19:01:17Z
index-state: hackage.haskell.org 2024-06-17T23:25:46Z
2 changes: 1 addition & 1 deletion chainweb.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 3.8

name: chainweb
version: 2.24
version: 2.24.1
synopsis: A Proof-of-Work Parallel-Chain Architecture for Massive Throughput
description: A Proof-of-Work Parallel-Chain Architecture for Massive Throughput.
homepage: https://github.com/kadena-io/chainweb
Expand Down
1 change: 0 additions & 1 deletion changes/2024-05-30T133934-0500.txt

This file was deleted.

2 changes: 0 additions & 2 deletions changes/2024-05-30T141430-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T141646-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T143223-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T143733-0500.txt

This file was deleted.

2 changes: 0 additions & 2 deletions changes/2024-05-30T144824-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T144952-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145052-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145526-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145604-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145629-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145702-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145746-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145807-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145831-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145855-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T145921-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T150001-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T150038-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T150129-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-05-30T163404-0400.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-06-11T102857-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-06-11T104051-0500.txt

This file was deleted.

1 change: 0 additions & 1 deletion changes/2024-06-14T103642-0500.txt

This file was deleted.

42 changes: 30 additions & 12 deletions tools/changelog/rollup
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ set -o errexit -o pipefail -o nounset
# ignore errexit with `&& true`
getopt --test > /dev/null && true
if [[ $? -ne 4 ]]; then
echo 'I’m sorry, `getopt --test` failed in this environment.'
echo "I'm sorry, \`getopt --test\` failed in this environment."
exit 1
fi

Expand Down Expand Up @@ -72,7 +72,7 @@ fi
if [ "$major" != "-" ]; then
newver="$major"
TEMPLATE=$(cat <<-EOM
# $major (FIXME)
## $major (FIXME)
This is a major version update. This release replaces all previous versions.
Any prior version will stop working on FIXME. Node administrators must
Expand All @@ -84,7 +84,7 @@ EOM
else
newver="$minor"
TEMPLATE=$(cat <<-EOM
# $minor (FIXME)
## $minor (FIXME)
This is a minor point release. Upgrading is **strongly recommended**.
To upgrade, pull the latest docker image, or download the binary and
Expand All @@ -103,23 +103,41 @@ if ! grep -qP "version:\s+$newver" "$ROOT/chainweb.cabal"; then
fi

# first, get all the high-level changelog entries
CHANGES="## Changes\n\n"
CHANGES="### Changes\n\n"
SHORT_COMMITS_MENTIONED=()
for file in $(find "$ROOT/changes" -type f -iname '*.txt' | sort); do
CHANGES+=$(printf -- "- %s\\\\n" "$(cat "$file")")
full_commit="$(git log -1 --pretty=format:"%H" -- "$file")"
short_commit=${full_commit:0:8}
SHORT_COMMITS_MENTIONED+=("$short_commit")
CHANGES+=$(printf -- "- %s [\`%s\`](https://github.com/kadena-io/chainweb-node/commit/%s)\\\\n" "$(cat "$file")" "$short_commit" "$full_commit")
done

# now, list every commit since the last tag, too
COMMITS="## Commits\n\n"

# gather all commits made since the previous release, to compare with what's
# mentioned in the changelog
SHORT_COMMITS_ALL=()
while IFS= read -r line; do
cid="${line%% *}"
msg="${line#* }"
COMMITS+=$(printf -- "- [\`%s\`](https://github.com/kadena-io/chainweb-node/commit/%s) %s\\\\n" "$cid" "$cid" "$msg")
done < <(git log $(git describe --tags --abbrev=0)..HEAD --oneline)
SHORT_COMMITS_ALL+=("$cid")
done < <(git log "$(git describe --tags --abbrev=0)..HEAD" --oneline)

contents=$(printf -- "$TEMPLATE\n\n$CHANGES\n$COMMITS\n" | cat - "$ROOT/CHANGELOG.md")
contents=$(printf -- "%s\n\n%s\n" "$TEMPLATE" "$CHANGES" | cat - "$ROOT/CHANGELOG.md")

# delete the old changelog and write the new one, and delete the changes.txt files
rm -f "$ROOT/changes/"*.txt
echo -e "$contents" > "$ROOT/CHANGELOG.md"
echo "Wrote new changelog to $ROOT/CHANGELOG.md; please review the changes before committing."

diff="$(echo "${SHORT_COMMITS_ALL[@]}" "${SHORT_COMMITS_MENTIONED[@]}" | tr ' ' '\n' | sort | uniq -u)"
MISSING_COMMIT_MESSAGES=""
COMMIT_SEP="--------------------------------------------------------------------------------"
for commit in $diff; do
# replace tabs with 4 spaces, replace leading spaces that precede only a
# newline with just a newline
MISSING_COMMIT_MESSAGES+="$(git show -s "$commit" | tr '\t' ' ' | sed 's/^[[:blank:]]*$//')\n\n$COMMIT_SEP\n\n"
done

# Test if the string is empty
if [[ -n "$MISSING_COMMIT_MESSAGES" ]]; then
printf -- "\n%s" "Note: There were commits made since the previous release, but not mentioned in the changelog. I've written these commits and their messages to $ROOT/changes/missing.txt. Please verify that each of these is acceptable to omit from the changelog. Manual intervention may be required to include any missing entries."
echo -e "$MISSING_COMMIT_MESSAGES" > "$ROOT/changes/missing.txt"
fi

0 comments on commit 4f3be2f

Please sign in to comment.