Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Upgrade] Go-Ethereum release v1.9.21 #1211

Merged
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
fc20680
params: begin v1.9.21 release cycle
fjl Aug 25, 2020
92b12ee
accounts/abi/bind/backends: Disallow AdjustTime for non-empty blocks …
MariusVanDerWijden Aug 26, 2020
d8da0b3
core/state, eth, trie: stabilize memory use, fix memory leak
karalabe Aug 26, 2020
16d7eae
eth: updated comments (#21490)
MariusVanDerWijden Aug 26, 2020
856307d
go.mod | goleveldb latest update (#21448)
ucwong Aug 26, 2020
d97e006
Merge pull request #21491 from karalabe/state-sync-leak-fix
karalabe Aug 27, 2020
05280a7
eth/tracers: revert reason in call_tracer + error for failed internal…
libotony Aug 27, 2020
5883afb
rpc: fix issue with null JSON-RPC messages (#21497)
fjl Aug 28, 2020
12d8570
accounts/abi: fix a bug in getTypeSize method (#21501)
tofudfy Sep 1, 2020
ff23e26
internal: fix personal.sign() (#21503)
de1acr0ix Sep 1, 2020
5cdb476
"Downloader queue stats" is now provided once per minute (#21455)
Neurone Sep 1, 2020
d90bbce
go.mod : update goja dependency (#21432)
ucwong Sep 1, 2020
3010f9f
eth/downloader: change intial download size (#21366)
holiman Sep 2, 2020
eeaf191
core, eth, trie: prepare trie sync for path based operation
karalabe Aug 28, 2020
f86324e
Merge pull request #21504 from karalabe/trie-path-sync
karalabe Sep 2, 2020
de971cc
eth: added trace_call to trace on top of arbitrary blocks (#21338)
MariusVanDerWijden Sep 7, 2020
c5d28f0
accounts: abi/bid/backends; cleaned doc errors, camelCase refactors a…
muse254 Sep 7, 2020
d54f2f2
whisper: remove whisper (#21487)
gballet Sep 8, 2020
8327d1f
accounts/usbwallet, signer/core: show accounts from ledger legacy der…
holiman Sep 8, 2020
066c755
build: remove wnode from the list of packages binaries (#21526)
gballet Sep 8, 2020
86bcbb0
.github: remove whisper from CODEOWNERS (#21527)
gballet Sep 8, 2020
dc681fc
params: update CHTs for v1.9.21 release
karalabe Sep 9, 2020
24562d9
Merge pull request #21534 from karalabe/cht-1.9.21
karalabe Sep 9, 2020
0287d54
params: release Geth v1.9.21
karalabe Sep 9, 2020
4f45465
Merge branch 'public_master' into upgrade/go-ethereum/v1.9.21-2021607…
Jun 9, 2021
919c3a7
fix: adapt new debug_traceCall method so it can handle private contra…
Jun 9, 2021
2dbc5dc
Merge branch 'upgrade/go-ethereum/v1.9.21-2021607125909' into upgrade…
Jun 9, 2021
2a7553e
Merge branch 'master' into upgrade/go-ethereum/v1.9.21-2021609142421
ricardolyn Jun 9, 2021
3f23db9
revert new version of leveldb and protobuf
Jun 14, 2021
d574312
Merge branch 'master' into upgrade/go-ethereum/v1.9.21-2021609142421
ricardolyn Jun 15, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
37 changes: 37 additions & 0 deletions .bintray.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"package": {
"name": "geth",
"repo": "quorum",
"subject": "_ORGANIZATION_",
"vcs_url": "https://github.com/jpmorganchase/quorum",
"licenses": [
"LGPL-3.0"
]
},
"version": {
"name": "_TRAVIS_TAG_",
"desc": "Quorum: _TRAVIS_TAG_, Geth: _GETH_VERSION_, Commit: _TRAVIS_COMMIT_, Build Number: _TRAVIS_BUILD_NUMBER_",
"released": "_RELEASED_DATE_",
"vcs_tag": "_TRAVIS_TAG_",
"gpgSign": true,
"attributes": [
{
"name": "Travis",
"values": [
"_TRAVIS_JOB_WEB_URL_"
],
"type": "string"
}
]
},
"files": [
{
"includePattern": "/dist/(.*.tar.gz)",
"uploadPattern": "_TRAVIS_TAG_/$1",
"matrixParams": {
"override": 1
}
}
],
"publish": true
}
28 changes: 12 additions & 16 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,32 @@
# Contributing

Thank you for considering to help out with the source code! We welcome
contributions from anyone on the internet, and are grateful for even the
Thank you for your interest in contributing to Quorum!
We welcome contributions from anyone on the internet, and are grateful for even the
smallest of fixes!

If you'd like to contribute to go-ethereum, please fork, fix, commit and send a
pull request for the maintainers to review and merge into the main code base. If
you wish to submit more complex changes though, please check up with the core
devs first on [our gitter channel](https://gitter.im/ethereum/go-ethereum) to
ensure those changes are in line with the general philosophy of the project
and/or get some early feedback which can make both your efforts much lighter as
well as our review and merge procedures quick and simple.
If you'd like to contribute to quorum please fork, fix, commit and
send a pull request. Commits which do not comply with the coding standards
are ignored.

## Coding guidelines

Please make sure your contributions adhere to our coding guidelines:

* Code must adhere to the official Go
[formatting](https://golang.org/doc/effective_go.html#formatting) guidelines
* Code must adhere to the official Go
[formatting](https://golang.org/doc/effective_go.html#formatting) guidelines
(i.e. uses [gofmt](https://golang.org/cmd/gofmt/)).
* Code must be documented adhering to the official Go
* Code must be documented adhering to the official Go
[commentary](https://golang.org/doc/effective_go.html#commentary) guidelines.
* Pull requests need to be based on and opened against the `master` branch.
* Commit messages should be prefixed with the package(s) they modify.
* E.g. "eth, rpc: make trace configs optional"

## Can I have feature X

Before you submit a feature request, please check and make sure that it isn't
possible through some other means. The JavaScript-enabled console is a powerful
feature in the right hands. Please check our
[Wiki page](https://github.com/ethereum/go-ethereum/wiki) for more info
Before you submit a feature request, please check and make sure that it isn't
possible through some other means. The JavaScript-enabled console is a powerful
feature in the right hands. Please check our
[developer documentation](https://docs.goquorum.consensys.net/en/latest/) for more info
and help.

## Configuration, dependencies, and tests
Expand Down
4 changes: 3 additions & 1 deletion .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,10 @@ For general questions please use [discord](https://discord.gg/nthXNEv) or the Et
#### System information

Geth version: `geth version`

OS & Version: Windows/Linux/OSX
Commit hash : (if `develop`)

Branch, Commit Hash or Release: `git status`

#### Expected behaviour

Expand Down
273 changes: 273 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,273 @@
name: Build Check
on:
push:
paths-ignore:
- 'docs/**'
- '**.md'
- 'mkdocs.yml'
- '.gitignore'
branches:
- master
env:
GO_VERSION: 1.15.5
GOPATH: ${{ github.workspace }}/go
WORKING_DIR: ${{ github.workspace }}/go/src/github.com/ethereum/go-ethereum
jobs:
build:
name: 'Run tests and build on ${{ matrix.os }}'
strategy:
fail-fast: false
matrix:
# Not enable for macos as there's a consistent failure:
# --- FAIL: TestUPNP_DDWRT (2.20s)
# ###[error] natupnp_test.go:165: not discovered
# must be sommething with Github Actions VM networking setup.
# Event Ubuntu requires a workaround
os: [ "ubuntu-18.04" ]
env:
QUORUM_IGNORE_TEST_PACKAGES: github.com/ethereum/go-ethereum/les,github.com/ethereum/go-ethereum/les/flowcontrol,github.com/ethereum/go-ethereum/mobile
runs-on: ${{ matrix.os }}
steps:
- name: 'Setup Go ${{ env.GO_VERSION }}'
uses: actions/setup-go@v1
with:
go-version: ${{ env.GO_VERSION }}
- name: 'Check out project files'
uses: actions/checkout@v2
with:
submodules: recursive
path: ${{ env.WORKING_DIR }}
- name: 'Apply workaround to fix networking in Linux'
if: runner.os == 'Linux'
run: |
# https://github.com/actions/virtual-environments/issues/798
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
- name: 'Prepare environment'
run: |
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH
- name: 'Run tests and build all'
working-directory: ${{ env.WORKING_DIR }}
run: |
make test all
publish-docker:
name: Publish Docker Image
needs:
- build
runs-on: ubuntu-18.04
steps:
- name: 'Checkout'
uses: actions/checkout@v2
- name: 'Build and publish to Docker Hub'
uses: docker/build-push-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_ACCESS_TOKEN }}
repository: ${{ secrets.DOCKER_REPO }}
tags: develop
add_git_labels: true
notify:
if: always()
name: Notify
needs:
- build
- publish-docker
runs-on: ubuntu-18.04
steps:
- name: 'Setup metadata'
id: setup
run: |
gitref_path="${{ github.ref }}"
gitref_path=${gitref_path/refs\/heads/tree} # for refs/heads/my-branch
gitref_path=${gitref_path/refs\/tags/tree} # for refs/tags/v1.0.0
gitref_path=${gitref_path#refs\/} # for refs/pull/123/merge
gitref_path=${gitref_path%/merge} # for refs/pull/123/merge
echo "::set-output name=gitref-path::$gitref_path"
- name: 'Prepare Slack message with full info'
id: status
uses: actions/github-script@0.8.0
with:
script: |
var gitref_path = "${{ steps.setup.outputs.gitref-path }}"
////////////////////////////////////
// retrieve workflow run data
////////////////////////////////////
console.log("get workflow run")
const wf_run = await github.actions.getWorkflowRun({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: ${{ github.run_id }}
})
console.log(wf_run.data)
console.log("get jobs for workflow run:", wf_run.data.jobs_url)
const jobs_response = await github.request(wf_run.data.jobs_url)
////////////////////////////////////
// build slack notification message
////////////////////////////////////
// some utility functions
var date_diff_func = function(start, end) {
var duration = end - start
// format the duration
var delta = duration / 1000
var days = Math.floor(delta / 86400)
delta -= days * 86400
var hours = Math.floor(delta / 3600) % 24
delta -= hours * 3600
var minutes = Math.floor(delta / 60) % 60
delta -= minutes * 60
var seconds = Math.floor(delta % 60)
var format_func = function(v, text, check) {
if (v <= 0 && check) {
return ""
} else {
return v + text
}
}
return format_func(days, "d", true) + format_func(hours, "h", true) + format_func(minutes, "m", true) + format_func(seconds, "s", false)
}
var status_icon_func = function(s) {
switch (s) {
case "w_success":
return ":white_check_mark:"
case "w_failure":
return ":no_entry:"
case "w_cancelled":
return ":warning:"
case "success":
return "\u2713"
case "failure":
return "\u2717"
default:
return "\u20e0"
}
}
// build the message
var job_blocks = []
var is_wf_success = true
var is_wf_failure = false
for (j of jobs_response.data.jobs) {
console.log(j.name, ":", j.status, j.conclusion, j.started_at, j.completed_at)
// ignore the current job running this script
if (j.status != "completed") {
continue
}
if (j.conclusion != "success") {
is_wf_success = false
}
if (j.conclusion == "failure") {
is_wf_failure = true
}
job_blocks.push({
type: "section",
text: {
type: "mrkdwn",
text: `${status_icon_func(j.conclusion)} <${j.html_url}|${j.name}> took ${date_diff_func(new Date(j.started_at), new Date(j.completed_at))}`
}
})
}
var workflow_status = "w_cancelled"
if (is_wf_success) {
workflow_status = "w_success"
} else if (is_wf_failure) {
workflow_status = "w_failure"
}
var context_elements = [
{
"type": "mrkdwn",
"text": "*Repo:* <https://github.com/${{ github.repository }}|${{ github.repository }}>"
},
{
"type": "mrkdwn",
"text": `*Branch:* <https://github.com/${{ github.repository }}/${gitref_path}|${{ github.ref }}>`
},
{
"type": "mrkdwn",
"text": `*Event:* ${wf_run.data.event}`
},
{
"type": "mrkdwn",
"text": `*Commit:* <https://github.com/${{ github.repository }}/commit/${wf_run.data.head_commit.id}|${wf_run.data.head_commit.id.substr(0, 8)}>`
},
{
"type": "mrkdwn",
"text": `*Author:* ${wf_run.data.head_commit.author.name}`
}
]
var header_blocks = [
{
type: "section",
text: {
type: "mrkdwn",
text: `${status_icon_func(workflow_status)} *${{ github.workflow }}* <${wf_run.data.html_url}|#${{ github.run_number }}> took ${date_diff_func(new Date(wf_run.data.created_at), new Date(wf_run.data.updated_at))}`
}
},
{
type: "context",
elements: context_elements,
},
{
type: "divider"
}
]
var slack_msg = {
blocks: [].concat(header_blocks, job_blocks)
}
return slack_msg
- name: 'Prepare Slack message with partial info'
id: short_status
if: failure()
uses: actions/github-script@0.8.0
with:
script: |
////////////////////////////////////
// retrieve workflow run data
////////////////////////////////////
const wf_run = await github.actions.getWorkflowRun({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: ${{ github.run_id }}
})
var date_diff_func = function(start, end) {
var duration = end - start
// format the duration
var delta = duration / 1000
var days = Math.floor(delta / 86400)
delta -= days * 86400
var hours = Math.floor(delta / 3600) % 24
delta -= hours * 3600
var minutes = Math.floor(delta / 60) % 60
delta -= minutes * 60
var seconds = Math.floor(delta % 60)
var format_func = function(v, text, check) {
if (v <= 0 && check) {
return ""
} else {
return v + text
}
}
return format_func(days, "d", true) + format_func(hours, "h", true) + format_func(minutes, "m", true) + format_func(seconds, "s", false)
}
var slack_msg = {
blocks: [
{
type: "section",
text: {
type: "mrkdwn",
text: `:skull_and_crossbones: *${{ github.workflow }}* <${wf_run.data.html_url}|#${{ github.run_number }}> (took ${date_diff_func(new Date(wf_run.data.created_at), new Date(wf_run.data.updated_at))})`
}
}
]
}
return slack_msg
- name: 'Send to Slack'
if: always()
run: |
cat <<JSON > long_message.json
${{ steps.status.outputs.result }}
JSON
cat <<JSON > short_message.json
${{ steps.short_status.outputs.result }}
JSON
_post() {
curl -X POST ${{ secrets.SLACK_WEBHOOK_URL }} -H "Content-type: application/json" --data "@${1}"
}
_post "long_message.json" || _post "short_message.json"
Loading