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

TODO List #6

Closed
14 of 18 tasks
obscuren opened this issue Jan 25, 2014 · 3 comments
Closed
14 of 18 tasks

TODO List #6

obscuren opened this issue Jan 25, 2014 · 3 comments
Assignees

Comments

@obscuren
Copy link
Contributor

This issue serves as a temporarily to do list

  • Add MIT License
  • Improve overall testing
  • Add Travis to eth packages
  • Retrieving peer blocks
  • Get peers from connecting peers
  • Add a "addpeer" option to the dev console
  • Support Tor
  • UPnP
  • NAT-PMP
  • Fix miner
  • Fix uncles
  • Improve self connect detection
  • Add disconnection reasons to peers
  • Document libraries
  • Add sync mechanism to trie. Trie shouldn't commit any changes unless requested. The trie would add an extra caching layer.
  • Get rid of RlpValue and move on to ethutil.Value
  • Chain iterator (or partial iterator) NewIterator(options *IteratorOptions)
  • Get rid of the secp256k1 lib and implement my own
@ghost ghost assigned obscuren Jan 25, 2014
@suhr
Copy link

suhr commented Mar 2, 2014

Support Tor

What about I2P support?

@obscuren
Copy link
Contributor Author

obscuren commented Mar 2, 2014

@suhr Undecided. We might roll our own session based for simplicities sake. We'll see.

@obscuren obscuren closed this as completed May 8, 2014
zelig referenced this issue in ethersphere/swarm Oct 23, 2014
Fix typo(?) in naming - s/GenisisHeader/GenesisHeader/
obscuren pushed a commit that referenced this issue Jan 29, 2015
obscuren added a commit that referenced this issue Jan 29, 2015
Run JSHint on all code using Travis CI
@ghost ghost mentioned this issue Dec 13, 2015
bts pushed a commit to bts/go-ethereum that referenced this issue Feb 1, 2017
eth: look in private an public state on reading state data
holiman referenced this issue in holiman/go-ethereum Jul 18, 2017
cdetrio pushed a commit to cdetrio/go-ethereum that referenced this issue Feb 24, 2018
Pull in the latest changes from go-ethereum
phucnguyenit added a commit to phucnguyenit/go-ethereum that referenced this issue Jun 12, 2018
shiotoli pushed a commit to CortexFoundation/MinerInterface that referenced this issue Aug 14, 2018
MetadiumRelease referenced this issue in METADIUM/go-metadium Aug 25, 2018
Fixed gas limit setting was not enforced

Approved-by: Uh Sado <sadoc@metadium.com>
holiman referenced this issue in holiman/go-ethereum Sep 8, 2018
…) (#6)

Makes Interface interface a bit more stateless and abstract.

Obviously this change is dictated by EVMC design. The EVMC tries to keep the responsibility for EVM features totally inside the VMs, if feasible. This makes VM "stateless" because VM does not need to pass any information between executions, all information is included in parameters of the execute function.
holiman referenced this issue in holiman/go-ethereum Sep 8, 2018
* go modules added; preparing to write aura consensus

* adding goerli flag

* goerli flag added

* adding configs

* core/vm: Hide read only flag from Interpreter interface (ethereum#17461) (#6)

Makes Interface interface a bit more stateless and abstract.

Obviously this change is dictated by EVMC design. The EVMC tries to keep the responsibility for EVM features totally inside the VMs, if feasible. This makes VM "stateless" because VM does not need to pass any information between executions, all information is included in parameters of the execute function.

* configuring genesis

* removing duplicate imports

* adding configs for aura api

* configuring goerli cli flag

* flag function fix

* typo fix
holiman referenced this issue in holiman/go-ethereum Sep 8, 2018
* go modules added; preparing to write aura consensus

* adding goerli flag

* goerli flag added

* adding configs

* core/vm: Hide read only flag from Interpreter interface (ethereum#17461) (#6)

Makes Interface interface a bit more stateless and abstract.

Obviously this change is dictated by EVMC design. The EVMC tries to keep the responsibility for EVM features totally inside the VMs, if feasible. This makes VM "stateless" because VM does not need to pass any information between executions, all information is included in parameters of the execute function.

* configuring genesis

* removing duplicate imports

* adding configs for aura api

* configuring goerli cli flag

* flag function fix

* typo fix

* goerli flag finalized

* config mod
holiman referenced this issue in holiman/go-ethereum Sep 8, 2018
* go modules added; preparing to write aura consensus

* adding goerli flag

* goerli flag added

* adding configs

* core/vm: Hide read only flag from Interpreter interface (ethereum#17461) (#6)

Makes Interface interface a bit more stateless and abstract.

Obviously this change is dictated by EVMC design. The EVMC tries to keep the responsibility for EVM features totally inside the VMs, if feasible. This makes VM "stateless" because VM does not need to pass any information between executions, all information is included in parameters of the execute function.

* configuring genesis

* removing duplicate imports

* adding configs for aura api

* configuring goerli cli flag

* flag function fix

* modifying configs
xmxanuel pushed a commit to xmxanuel/go-ethereum that referenced this issue Nov 15, 2018
gballet pushed a commit that referenced this issue Dec 4, 2018
* added tests for new abi encoding features (#4)

* added tests from bytes32[][] and string[]

* added offset to other types

* formatting

* Abi/dynamic types (#5)

* Revert "Abi/dynamic types (#5)" (#6)

This reverts commit dabca31.

* Abi/dynamic types (#7)

* some cleanup

* Apply suggestions from code review

apply suggestions

Co-Authored-By: vedhavyas <vedhavyas.singareddi@gmail.com>

* added better formatting (#8)

* review chnages

* better comments
@wijittrapha
Copy link

I still not understand. But thank you.

gballet referenced this issue in gballet/go-ethereum Feb 17, 2020
rewrewby pushed a commit to rewrewby/mev-geth that referenced this issue Mar 3, 2020
tynes pushed a commit to tynes/go-ethereum that referenced this issue Sep 13, 2020
Fixing broken tests, skipping tests we intentionally break, and configuring CI within Github Actions
tynes pushed a commit to tynes/go-ethereum that referenced this issue Sep 13, 2020
* Get basic getStorage/setStorage stubs working

* Clean up tests

* Add state_manager

* Add StateManager set & getStorage

* Add state mananger create function

* Add get & increment nonce

* Add getCodeContractBytecode

* Add GetCodeContractHash

* Add getCodeContractHash to the state manager

* Add associateCodeContract to state manager

* Pass the tests

* go fmt

* Add stateTransition to test with

* Fix tests

* Test deploying contract with transition state

* Call executeTransaction on contract deployment

* Added ExecutionManager deployment

* Get contract deployments working

* Cleanup logging

* Get stubbed ExecutionManager working

* Get a simple contract to deploy through the ExecutionManager

* Refactor simpleAbiEncode

* Revert unnecessary changes

* Remove comments

* Revert changes outside of this PR

* Revert changes outside of this PR

* Revert changes outside of this PR

* Fix broken tests

* Move OVM bytecode & ABI into constants

* Add crazy printlines

* Remove crazy comments

* Add a bunch of debug printlns

* Add helper fn for applying msgs to the EVM

* Update ExecutionManager bytecode

* Shim CREATE for EM to use correct addr

* Add SimpleStorage test

* Add the EM/SM to all new states

* Force all txs to be routed through the EM

* Remove unused files

* Remove unused comments

* Increment nonce after failed tx

* Add debug statements

* Use evm.Time for timestamp

* Change EM deployment, fix broken tests, clean up

* Add an OVM test & remove printlns

* Fix lint errors & remove final printlns

* Final cleanup--remove some comments

* Limiting Geth to one transaction per block (#3)

* Limiting Geth to one transaction per block
* Adding TransitionBatchBuilder to build & submit rollup blocks

* Adding L1MessageSender to Transaction (#4)

* Adding L1MessageSender to Transaction
* Adding logic to omit L1MessageSender in encoding / decoding when nil and never use it in hash computation

Co-authored-by: ben-chain <ben@pseudonym.party>

* Fixing Geth Tests (ethereum#6)

Fixing broken tests, skipping tests we intentionally break, and configuring CI within Github Actions

* Hex Trie -> Binary Trie (ethereum#7)

*** Changing Hex Trie to Binary Trie ***

Note: This changes and/or comments out a bunch of tests, so if things break down the line, this is likely the cause!

* Ingest Block Batches (ethereum#8)

Handling BlockBatches in Geth at `SendBlockBatches` endpoint (eth_sendBlockBatches)

Other:
* Adding PR template
* Adding ability to set timestamp and making blocks use configured timestamp
* Adding ability to encode original tx nonce in calldata
* Adding L1MessageSender to Contract Creation Txs

* Add L1MessageSender to Message

* Increment nonce on CREATE failure

* Fix bug where evm.Time=0

* Use state dump with hardcoded EM & SM addrs

- ExecutionMgr address should always be 0x0000...dead0000
- StateMgr address should always be 0x0000...dead0001

* Move EM deployment into genesis block maker

* Update EM contracts to latest version

* Update EM to remove events

* Fix the OVM tests

* Skip an ungodly number of tests

* Fix lint errors

* Clean up logging

* Cleanup more logs

* Use local reference to state manager

* Rename applyOvmToState(..)

* Remove unneeded check

* Clean up logging & add EM ABI panic

* Add gas metering to SM & small refactor

* Update core/vm/state_manager.go

Co-authored-by: Kevin Ho <kevinjho1996@gmail.com>

Co-authored-by: Mason Fischer <mason@kissr.co>
Co-authored-by: Will Meister <william.k.meister@gmail.com>
Co-authored-by: ben-chain <ben@pseudonym.party>
Co-authored-by: Kevin Ho <kevinjho1996@gmail.com>
gballet added a commit that referenced this issue Nov 27, 2020
* internal/build: implement signify's signing func
* Add signify to the ci utility
* fix output file format
* Add unit test for signify
* holiman's + travis' feedback
* internal/build: verify signify's output
* crypto: move signify to common dir
* use go-minisign to verify binaries
* more holiman feedback
* crypto, ci: support minisign output
* only accept one-line trusted comments
* configurable untrusted comments
* code cleanup in tests
* revert to use ed25519 from the stdlib
* bug: fix for empty untrusted comments
* write timestamp as comment if trusted comment isn't present
* rename line checker to commentHasManyLines
* crypto: added signify fuzzer (#6)
* crypto: added signify fuzzer
* stuff
* crypto: updated signify fuzzer to fuzz comments
* crypto: repro signify crashes
* rebased fuzzer on build-signify branch
* hide fuzzer behind gofuzz build flag
* extract key data inside a single function
* don't treat \r as a newline
* travis: fix signing command line
* do not use an external binary in tests
* crypto: move signify to crypto/signify
* travis: fix formatting issue
* ci: fix linter build after package move

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
rjl493456442 referenced this issue in rjl493456442/go-ethereum Dec 14, 2020
* internal/build: implement signify's signing func
* Add signify to the ci utility
* fix output file format
* Add unit test for signify
* holiman's + travis' feedback
* internal/build: verify signify's output
* crypto: move signify to common dir
* use go-minisign to verify binaries
* more holiman feedback
* crypto, ci: support minisign output
* only accept one-line trusted comments
* configurable untrusted comments
* code cleanup in tests
* revert to use ed25519 from the stdlib
* bug: fix for empty untrusted comments
* write timestamp as comment if trusted comment isn't present
* rename line checker to commentHasManyLines
* crypto: added signify fuzzer (#6)
* crypto: added signify fuzzer
* stuff
* crypto: updated signify fuzzer to fuzz comments
* crypto: repro signify crashes
* rebased fuzzer on build-signify branch
* hide fuzzer behind gofuzz build flag
* extract key data inside a single function
* don't treat \r as a newline
* travis: fix signing command line
* do not use an external binary in tests
* crypto: move signify to crypto/signify
* travis: fix formatting issue
* ci: fix linter build after package move

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
recmo pushed a commit to recmo/go-ethereum that referenced this issue Feb 17, 2021
[R4R] modify params for Parlia consensus with 21 validators
enriquefynn pushed a commit to enriquefynn/go-ethereum that referenced this issue Mar 10, 2021
* internal/build: implement signify's signing func
* Add signify to the ci utility
* fix output file format
* Add unit test for signify
* holiman's + travis' feedback
* internal/build: verify signify's output
* crypto: move signify to common dir
* use go-minisign to verify binaries
* more holiman feedback
* crypto, ci: support minisign output
* only accept one-line trusted comments
* configurable untrusted comments
* code cleanup in tests
* revert to use ed25519 from the stdlib
* bug: fix for empty untrusted comments
* write timestamp as comment if trusted comment isn't present
* rename line checker to commentHasManyLines
* crypto: added signify fuzzer (ethereum#6)
* crypto: added signify fuzzer
* stuff
* crypto: updated signify fuzzer to fuzz comments
* crypto: repro signify crashes
* rebased fuzzer on build-signify branch
* hide fuzzer behind gofuzz build flag
* extract key data inside a single function
* don't treat \r as a newline
* travis: fix signing command line
* do not use an external binary in tests
* crypto: move signify to crypto/signify
* travis: fix formatting issue
* ci: fix linter build after package move

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
maoueh referenced this issue in streamingfast/go-ethereum Aug 13, 2021
tony-ricciardi pushed a commit to tony-ricciardi/go-ethereum that referenced this issue Jan 20, 2022
For whatever reasons the miners would appear to deadlock when this backoff time was 7s, 10s has been working reliably for a couple weeks.
lochjin pushed a commit to lochjin/go-ethereum that referenced this issue Mar 18, 2022
Inphi pushed a commit to Inphi/go-ethereum that referenced this issue Jun 21, 2022
duguyifang pushed a commit to btccom/go-ethereum that referenced this issue Aug 31, 2022
protolambda added a commit to protolambda/go-ethereum that referenced this issue Sep 16, 2022
protolambda added a commit to protolambda/go-ethereum that referenced this issue Jan 4, 2023
protolambda pushed a commit to protolambda/go-ethereum that referenced this issue Jan 4, 2023
protolambda added a commit to protolambda/go-ethereum that referenced this issue Mar 3, 2023
This commit squashes the op-geth fork history into a more maintainable
diff for rebasing upon upstream geth.

reference-optimistic-geth changes (origins of op-geth in early Bedrock
development stage):
- Deposit TX Type
- Enable deposit tx in EVM/tx pool
- Change deposit nonce to not be the max nonce
- Extend PayloadAttributesV1 with a Transactions field
- Force deposits at the start of each L2 block
- Fix height check
- noTxPool flag, reproduce block in verifier mode without tx pool interference
- Fix RPC json marshalling (ref op-geth PR 4)
- Deposit txs block height check in block body validation (ref op-geth PR 5)
- core: do not try to reinject deposit txs into tx-pool (ref-op-geth PR 6)
- deposit source hash field instead of L2 block height and tx index combination
- Include invalid deposits, rewind state, but always persist mint (ethereum#10)
- Provide gas to Call/Create in deposit transactions (ethereum#12)
- Add docker builds (ref-op-geth PR 16, 17)
- Don't panic on deposit transaction signature values or chain ID (ref-op-geth PR 18)
- core: Add version to DepositTx (ref-op-geth PR 19)
- Enable Geth build/lint/test in CircleCI (ref-op-geth PR 23)
- core: Include guaranteed gas in the gas pool (ref-op-geth PR 21)
- core: handle base fee, l1 availability fee, tx fee (ref-op-geth PR 27)
- fix: deposit tx hash
- fix l1 fee cache, rpc, tracing and tx pool
- core: remove deposit-tx sub-type (a.k.a. deposit version byte)
- eth/catalyst: allow engine user to reorg own chain
- miner: restore ability to reorg deep as block builder
- params: print Optimism consensus type in banner
- core/types: remove unused protected() method, see upstream PR 23376
- core: do not mutate original balance value in tx pool l1 cost adjustment
- core: subtract deposit gas from pool, so other txs do not use the same gas. And fail tx processing if deposits reach gas limit
- core/types: deposits do not tip, avoid basefee subtraction
- Unmeter the L1 Attributes Transaction
- miner: handle force tx errors as critical, clean up diff
- ci: Switch branch
- eth,miner: return STATUS_INVALID when failing to process forced transactions in request (ref-op-geth PR 40)
- verifier: forward tx to sequencer based on flag
- txpool: add flag to disable tx gossip (ref-op-geth PR 42)
- Add op-geth version in addition to geth version (ref-op-geth PR 43)
- ci: CircleCI improvements (ref-op-geth PR 44)
- Rename to op-geth
- Build latest tag on optimism branch

op-geth changes:
- Expose cache config in simulated backend (#2)
- Add EIP-1559 parameters
- eth/catalyst: update payload id computation (#1)
- make eip1559 configurable (#4)
- post-merge network should not log warnings about missing transition information (#5)
- Make the simulator more configurable (ethereum#6)
- fix OPB-6 - IsDepositTx check instead of artificial nonce value check (ethereum#7)
- Simulated backend - enable proof of stake consensus type and fix performance issue (ethereum#8)
- accounts: simulated backend consensus engine option and immediate tx indexing
- consensus/beacon: recognize all blocks as reached TTD with 0 TTD in chain config
- Add --rollup.historicalhttp CLI flag and fix backend iface
- Flags and interfaces for historical RPC requests (ethereum#12)
- Redirect historical RPC requests (ethereum#13)
- Use the pre-existing ethereum.NotFound error (ethereum#18)
- Add historical endpoint to TraceBlockByNumber and TraceBlockByHash (ethereum#19)
- Add historical endpoint to TraceTransaction (ethereum#20)
- Add historical endpoint to TraceCall (ethereum#21)
- optimism: fee params from info txi, update l1 cost func GPO params read (ethereum#15)
- add hardcoded addresses for fee payouts (ethereum#23)
- dynamic gas limit via engine API (ethereum#22)

Co-authored-by: Matthew Slipper <me@matthewslipper.com>
Co-authored-by: Joshua Gutow <jgutow@oplabs.co>
Co-authored-by: protolambda <proto@protolambda.com>
Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
Co-authored-by: Maurelian <maurelian@protonmail.ch>
neraty pushed a commit to gnosis/go-ethereum that referenced this issue Mar 13, 2023
* Implement block validation API

* Validate proposer payment assuming its the last transaction in the block (ethereum#4)

* Validate that the coinbase and feeRecipient are not blacklisted (ethereum#5)

* Validate that the proposer payment has no calldata and its gas usage (ethereum#6)

* Validate gas limit is set correctly wrt registered (ethereum#8)

* Pass validation-specific config (ethereum#9)
neraty pushed a commit to gnosis/go-ethereum that referenced this issue Apr 3, 2023
* Implement block validation API

* Validate proposer payment assuming its the last transaction in the block (ethereum#4)

* Validate that the coinbase and feeRecipient are not blacklisted (ethereum#5)

* Validate that the proposer payment has no calldata and its gas usage (ethereum#6)

* Validate gas limit is set correctly wrt registered (ethereum#8)

* Pass validation-specific config (ethereum#9)
XWJACK added a commit to XWJACK/go-ethereum that referenced this issue Jul 25, 2023
sbellem pushed a commit to sbellem/go-ethereum that referenced this issue Jul 25, 2023
…orage

Create protected storage on the CREATE2 opcode
nikicat pushed a commit to nikicat/go-ethereum that referenced this issue Sep 11, 2023
cuiweixie pushed a commit to cuiweixie/go-ethereum that referenced this issue Nov 2, 2023
Co-authored-by: Vladislav Varadinov <vladislav.varadinov@gmail.com>
Co-authored-by: Freddy Caceres <facs95@gmail.com>
Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
allnil pushed a commit to allnil/go-ethereum that referenced this issue Feb 24, 2024
libotony added a commit to libotony/go-ethereum that referenced this issue Jul 10, 2024
* dashboard: remove the dashboard (ethereum#20279)

This removes the dashboard project. The dashboard was an experimental
browser UI for geth which displayed metrics and chain information in
real time. We are removing it because it has marginal utility and nobody
on the team can maintain it.

Removing the dashboard removes a lot of dependency code and shaves
6 MB off the geth binary size.

* tweak and make build pass

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: tony <liboliqi@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants