good morning!!!!

Skip to content
Snippets Groups Projects
  1. Sep 02, 2016
  2. Aug 23, 2016
  3. Aug 22, 2016
    • Felix Lange's avatar
      accounts/abi/bind: use ethereum interfaces · d62d5fe5
      Felix Lange authored
      In this commit, contract bindings and their backend start using the
      Ethereum Go API interfaces offered by ethclient. This makes ethclient a
      suitable replacement for the old remote backend and gets us one step
      closer to the final stable Go API that is planned for go-ethereum 1.5.
      
      The changes in detail:
      
      * Pending state is optional for read only contract bindings.
        BoundContract attempts to discover the Pending* methods via an
        interface assertion. There are a couple of advantages to this:
        ContractCaller is just two methods and can be implemented on top of
        pretty much anything that provides Ethereum data. Since the backend
        interfaces are now disjoint, ContractBackend can simply be declared as
        a union of the reader and writer side.
      
      * Caching of HasCode is removed. The caching could go wrong in case of
        chain reorganisations and removing it simplifies the code a lot.
        We'll figure out a performant way of providing ErrNoCode before the
        1.5 release.
      
      * BoundContract now ensures that the backend receives a non-nil context
        with every call.
      d62d5fe5
    • Nick Johnson's avatar
      core/vm: Refactor tracing to make Tracer the main interface · 781915f1
      Nick Johnson authored
      This CL makes several refactors:
       - Define a Tracer interface, implementing the `CaptureState` method
       - Add the VM environment as the first argument of
         `Tracer.CaptureState`
       - Rename existing functionality `StructLogger` an make it an
         implementation of `Tracer`
       - Delete `StructLogCollector` and make `StructLogger` collect the logs
         directly
       - Change all callers to use the new `StructLogger` where necessary and
         extract logs from that.
       - Deletes the apparently obsolete and likely nonfunctional 'TraceCall'
         from the eth API.
      
      Callers that only wish accumulated logs can use the `StructLogger`
      implementation straightforwardly. Callers that wish to efficiently
      capture VM traces and operate on them without excessive copying can now
      implement the `Tracer` interface to receive VM state at each step and
      do with it as they wish.
      
      This CL also removes the accumulation of logs from the vm.Environment;
      this was necessary as part of the refactor, but also simplifies it by
      removing a responsibility that doesn't directly belong to the
      Environment.
      781915f1
  4. Aug 19, 2016
  5. Aug 17, 2016
    • Felix Lange's avatar
      common/compiler: simplify solc wrapper · 1a9e6691
      Felix Lange authored
      Support for legacy version 0.9.x is gone. The compiler version is no
      longer cached. Compilation results (and the version) are read directly
      from stdout using the --combined-json flag. As a workaround for
      ethereum/solidity#651, source code is written to a temporary file before
      compilation.
      
      Integration of solc in package ethapi and cmd/abigen is now much simpler
      because the compiler wrapper is no longer passed around as a pointer.
      
      Fixes #2806, accidentally
      1a9e6691
    • Felix Lange's avatar
      eth: remove dapp database remains · 84d11c19
      Felix Lange authored
      84d11c19
    • Felix Lange's avatar
      cmd/utils, node: create account manager in package node · 312263c7
      Felix Lange authored
      The account manager was previously created by packge cmd/utils as part
      of flag processing and then passed down into eth.Ethereum through its
      config struct. Since we are starting to create nodes which do not have
      eth.Ethereum as a registered service, the code was rearranged to
      register the account manager as its own service. Making it a service is
      ugly though and it doesn't really fix the root cause: creating nodes
      without eth.Ethereum requires duplicating lots of code.
      
      This commit splits utils.MakeSystemNode into three functions, making
      creation of other node/service configurations easier. It also moves the
      account manager into Node so it can be used by those configurations
      without requiring package eth.
      312263c7
    • Bas van Kervel's avatar
      rpc: refactor subscriptions and filters · 47ff8130
      Bas van Kervel authored
      47ff8130
  6. Aug 16, 2016
  7. Aug 04, 2016
    • Felix Lange's avatar
      eth: don't call ValidateFields · 0c9a858f
      Felix Lange authored
      ValidateFields was introduced before the rlp decoder disallowed nil
      values. Decoding RLP will never return nil values, there is no need
      to check for them.
      0c9a858f
  8. Jul 26, 2016
  9. Jul 25, 2016
  10. Jul 22, 2016
  11. Jul 19, 2016
  12. Jul 16, 2016
  13. Jul 15, 2016
  14. Jul 11, 2016
  15. Jul 04, 2016
  16. Jun 30, 2016
  17. Jun 16, 2016
  18. Jun 13, 2016
    • Péter Szilágyi's avatar
    • Jeffrey Wilcke's avatar
      core/state, eth: Updated suicides objects when tracing transactions · bb3651ab
      Jeffrey Wilcke authored
      Consensus rules dictate that objects can only be removed during the
      finalisation of the transaction (i.e. after all calls have finished).
      Thus calling a suicided contract twice from the same transaction:
      A->B(S)->ret(A)->B(S) results in 2 suicides. Calling the suicided
      object twice from two transactions: A->B(S), A->B, results in only one
      suicide and a call to an empty object.
      
      Our current debug tracing functionality replays all transaction that
      were executed prior to the targetted transaction in order to provide
      the user with an accurate trace.
      
      As a side effect to calling StateDB.IntermediateRoot it also deletes any
      suicides objects. Our tracing code never calls this function because it
      isn't interested in the intermediate root. Becasue of this it caused a
      bug in the tracing code where transactions that were send to priviously
      deleted objects resulted in two suicides rather than one suicide and a
      call to an empty object.
      
      Fixes #2542
      bb3651ab
  19. Jun 07, 2016
  20. Jun 06, 2016
  21. Jun 02, 2016
  22. May 30, 2016
  23. May 27, 2016
Loading