1. 22 Mar, 2021 1 commit
    • gary rong's avatar
      all: add read-only option to database (#22407) · 0c70b83e
      gary rong authored
      * all: add read-only option to database
      
      * all: fixes tests
      
      * cmd/geth: migrate flags
      
      * cmd/geth: fix the compact
      
      * cmd/geth: fix the format
      
      * cmd/geth: fix log
      
      * cmd: add chain-readonly
      
      * core: add readonly notion to freezer
      
      * core/rawdb: add log
      
      * core/rawdb: fix freezer close
      
      * cmd: fix
      
      * cmd, core: construct db
      
      * core: update tests
      0c70b83e
  2. 02 Feb, 2021 1 commit
  3. 03 Aug, 2020 1 commit
    • rene's avatar
      node: refactor package node (#21105) · c0c01612
      rene authored
      This PR significantly changes the APIs for instantiating Ethereum nodes in
      a Go program. The new APIs are not backwards-compatible, but we feel that
      this is made up for by the much simpler way of registering services on
      node.Node. You can find more information and rationale in the design
      document: https://gist.github.com/renaynay/5bec2de19fde66f4d04c535fd24f0775.
      
      There is also a new feature in Node's Go API: it is now possible to
      register arbitrary handlers on the user-facing HTTP server. In geth, this
      facility is used to enable GraphQL.
      
      There is a single minor change relevant for geth users in this PR: The
      GraphQL API is no longer available separately from the JSON-RPC HTTP
      server. If you want GraphQL, you need to enable it using the
      ./geth --http --graphql flag combination.
      
      The --graphql.port and --graphql.addr flags are no longer available.
      c0c01612
  4. 25 May, 2020 1 commit
  5. 08 Apr, 2020 1 commit
    • rene's avatar
      node: allow websocket and HTTP on the same port (#20810) · 07d909ff
      rene authored
      This change makes it possible to run geth with JSON-RPC over HTTP and
      WebSocket on the same TCP port. The default port for WebSocket
      is still 8546. 
      
          geth --rpc --rpcport 8545 --ws --wsport 8545
      
      This also removes a lot of deprecated API surface from package rpc.
      The rpc package is now purely about serving JSON-RPC and no longer
      provides a way to start an HTTP server.
      07d909ff
  6. 07 Feb, 2019 1 commit
    • Janoš Guljaš's avatar
      cmd, node, p2p/simulations: fix node account manager leak (#19004) · 26aea736
      Janoš Guljaš authored
      * node: close AccountsManager in new Close method
      
      * p2p/simulations, p2p/simulations/adapters: handle node close on shutdown
      
      * node: move node ephemeralKeystore cleanup to stop method
      
      * node: call Stop in Node.Close method
      
      * cmd/geth: close node.Node created with makeFullNode in cli commands
      
      * node: close Node instances in tests
      
      * cmd/geth, node: minor code style fixes
      
      * cmd, console, miner, mobile: proper node Close() termination
      26aea736
  7. 12 Oct, 2018 1 commit
    • Felix Lange's avatar
      p2p, p2p/discover: add signed ENR generation (#17753) · 6f607de5
      Felix Lange authored
      This PR adds enode.LocalNode and integrates it into the p2p
      subsystem. This new object is the keeper of the local node
      record. For now, a new version of the record is produced every
      time the client restarts. We'll make it smarter to avoid that in
      the future.
      
      There are a couple of other changes in this commit: discovery now
      waits for all of its goroutines at shutdown and the p2p server
      now closes the node database after discovery has shut down. This
      fixes a leveldb crash in tests. p2p server startup is faster
      because it doesn't need to wait for the external IP query
      anymore.
      6f607de5
  8. 22 May, 2018 1 commit
  9. 12 Apr, 2017 1 commit
    • Felix Lange's avatar
      cmd/geth: add --config file flag (#13875) · 30d706c3
      Felix Lange authored
      * p2p/discover, p2p/discv5: add marshaling methods to Node
      
      * p2p/netutil: make Netlist decodable from TOML
      
      * common/math: encode nil HexOrDecimal256 as 0x0
      
      * cmd/geth: add --config file flag
      
      * cmd/geth: add missing license header
      
      * eth: prettify Config again, fix tests
      
      * eth: use gasprice.Config instead of duplicating its fields
      
      * eth/gasprice: hide nil default from dumpconfig output
      
      * cmd/geth: hide genesis block in dumpconfig output
      
      * node: make tests compile
      
      * console: fix tests
      
      * cmd/geth: make TOML keys look exactly like Go struct fields
      
      * p2p: use discovery by default
      
      This makes the zero Config slightly more useful. It also fixes package
      node tests because Node detects reuse of the datadir through the
      NodeDatabase.
      
      * cmd/geth: make ethstats URL settable through config file
      
      * cmd/faucet: fix configuration
      
      * cmd/geth: dedup attach tests
      
      * eth: add comment for DefaultConfig
      
      * eth: pass downloader.SyncMode in Config
      
      This removes the FastSync, LightSync flags in favour of a more
      general SyncMode flag.
      
      * cmd/utils: remove jitvm flags
      
      * cmd/utils: make mutually exclusive flag error prettier
      
      It now reads:
      
         Fatal: flags --dev, --testnet can't be used at the same time
      
      * p2p: fix typo
      
      * node: add DefaultConfig, use it for geth
      
      * mobile: add missing NoDiscovery option
      
      * cmd/utils: drop MakeNode
      
      This exposed a couple of places that needed to be updated to use
      node.DefaultConfig.
      
      * node: fix typo
      
      * eth: make fast sync the default mode
      
      * cmd/utils: remove IPCApiFlag (unused)
      
      * node: remove default IPC path
      
      Set it in the frontends instead.
      
      * cmd/geth: add --syncmode
      
      * cmd/utils: make --ipcdisable and --ipcpath mutually exclusive
      
      * cmd/utils: don't enable WS, HTTP when setting addr
      
      * cmd/utils: fix --identity
      30d706c3
  10. 06 Jan, 2017 3 commits
  11. 22 Jul, 2016 1 commit
  12. 12 Apr, 2016 1 commit
    • Bas van Kervel's avatar
      rpc: various fixes/enhancements · aa9fff3e
      Bas van Kervel authored
      rpc: be less restrictive on the request id
      rpc: improved documentation
      console: upgrade web3.js to version 0.16.0
      rpc: cache http connections
      rpc: rename wsDomains parameter to wsOrigins
      aa9fff3e
  13. 09 Feb, 2016 2 commits
  14. 04 Feb, 2016 1 commit
  15. 27 Nov, 2015 3 commits