Release Notes¶
v3.16.4¶
Released Dec 1, 2017
- Windows connection error bugfix
- Clearer errors on formatting failure (includes field name that failed)
- Update dependencies with changed names, now
*
eth-abi*eth-keyfile*eth-keys*eth-tester*eth-utils
v3.16.3¶
Released Nov 22, 2017
- Return checksummed addresses from all json rpc calls
getTransactionReceipt()returns thestatusfield as anint- If running multiple threads with the same w3 instance,
ValueError: Recursively called ...is no longer raised - Reuses IPC connection, for performance and memory improvements (especially with parity)
- Web3.toDecimal deprecated for Web3.toInt
- Asynchronous filter deprecations for synchronous
3.16.2¶
- Bump
ethereum-testerdependency to~0.1.0b2to unpinrlpversion.
3.16.1¶
- Addition of
ethereum-testeras a dependency
3.16.0¶
- Addition of named middlewares for easier manipulation of middleware stack.
- Provider middlewares can no longer be modified during runtime.
- Experimental custom ABI normalization API for Contract objects.
3.15.0¶
- Change docs to use RTD theme
- Experimental new
EthereumTesterProviderfor theethereum-testerlibrary. - Bugfix for
functiontype abi encoding viaethereum-abi-utilsupgrade tov0.4.1 - Bugfix for
Web3.toHexto conform to RPC spec.
3.14.2¶
- Fix PyPi readme text.
3.14.1¶
- Fix PyPi readme text.
3.14.0¶
- New
stalecheck_middleware - Improvements to
Web3.toHexandWeb3.toText. - Improvements to
Web3.sha3signature. - Bugfixes for
Web3.eth.signapi
3.13.5¶
- Add experimental
fixture_middleware - Various bugfixes introduced in middleware API introduction and migration to formatter middleware.
3.13.4¶
- Bugfix for formatter handling of contract creation transaction.
3.13.3¶
- Improved testing infrastructure.
3.13.2¶
- Bugfix for retrieving filter changes for both new block filters and pending transaction filters.
3.13.1¶
- Fix mispelled
attrdict_middleware(was spelledattrdict_middlware).
3.13.0¶
- New Middleware API
- Support for multiple providers
- New
web3.soliditySha3 - Remove multiple functions that were never implemented from the original web3.
- Deprecated
web3.currentProvideraccessor. Useweb3.providernow instead. - Deprecated password prompt within
web3.personal.newAccount.
3.12.0¶
- Bugfix for abi filtering to correctly handle
constructorandfallbacktype abi entries.
3.11.0¶
- All web3 apis which accept
addressparameters now enforce checksums if the address looks like it is checksummed. - Improvements to error messaging with when calling a contract on a node that may not be fully synced
- Bugfix for
web3.eth.syncingto correctly handleFalse
3.10.0¶
- Web3 now returns
web3.utils.datastructures.AttributeDictin places where it previously returned a normaldict. web3.eth.contractnow performs validation on theaddressparameter.- Added
web3.eth.getWorkAPI
3.9.0¶
- Add validation for the
abiparameter ofeth - Contract return values of
bytes,bytesXXandstringare no longer converted to text types and will be returned in their raw byte-string format.
3.8.1¶
- Bugfix for
eth_signdouble hashing input. - Removed deprecated
DelegatedSigningManager - Removed deprecate
PrivateKeySigningManager
3.8.0¶
- Update pyrlp dependency to
>=0.4.7 - Update eth-testrpc dependency to
>=1.2.0 - Deprecate
DelegatedSigningManager - Deprecate
PrivateKeySigningManager
3.7.1¶
- upstream version bump for bugfix in eth-abi-utils
3.7.0¶
- deprecate
eth.defaultAccountdefaulting to the coinbase account.
3.6.2¶
- Fix error message from contract factory creation.
- Use
ethereum-utilsfor utility functions.
3.6.1¶
- Upgrade
ethereum-abi-utilsdependency for upstream bugfix.
3.6.0¶
- Deprecate
Contract.code: replaced byContract.bytecode - Deprecate
Contract.code_runtime: replaced byContract.bytecode_runtime - Deprecate
abi,code,code_runtimeandsourceas arguments for theContractobject. - Deprecate
sourceas a property of theContractobject - Add
Contract.factory()API. - Deprecate the
construct_contract_factoryhelper function.
3.5.3¶
- Bugfix for how
requestslibrary is used. Now reuses session.
3.5.2¶
- Bugfix for construction of
request_kwargswithin HTTPProvider
3.5.1¶
- Allow
HTTPProviderto be imported fromweb3module. - make
HTTPProvideraccessible as a property ofweb3instances.
3.5.0¶
- Deprecate
web3.providers.rpc.RPCProvider - Deprecate
web3.providers.rpc.KeepAliveRPCProvider - Add new
web3.providers.rpc.HTTPProvider - Remove hard dependency on gevent.
3.4.4¶
- Bugfix for
web3.eth.getTransactionwhen the hash is unknown.
3.4.3¶
- Bugfix for event log data decoding to properly handle dynamic sized values.
- New
web3.testermodule to access extra RPC functionality frometh-testrpc
3.4.2¶
- Fix package so that
eth-testrpcis not required.
3.4.1¶
- Force gevent<1.2.0 until this issue is fixed: https://github.com/gevent/gevent/issues/916
3.4.0¶
- Bugfix for contract instances to respect
web3.eth.defaultAccount - Better error reporting when ABI decoding fails for contract method response.
3.3.0¶
- New
EthereumTesterProvidernow available. Faster test runs thanTestRPCProvider - Updated underlying eth-testrpc requirement.
3.2.0¶
web3.shhis now implemented.- Introduced
KeepAliveRPCProviderto correctly recycle HTTP connections and use HTTP keep alive
3.1.1¶
- Bugfix for contract transaction sending not respecting the
web3.eth.defaultAccountconfiguration.
3.1.0¶
- New DelegatedSigningManager and PrivateKeySigningManager classes.
3.0.2¶
- Bugfix or IPCProvider not handling large JSON responses well.
3.0.1¶
- Better RPC compliance to be compatable with the Parity JSON-RPC server.
3.0.0¶
Filterobjects now support controlling the interval through which they poll using thepoll_intervalproperty
2.9.0¶
- Bugfix generation of event topics.
- Web3.Iban now allows access to Iban address tools.
2.8.1¶
- Bugfix for
geth.ipcpath on linux systems.
2.8.0¶
- Changes to the
ContractAPI: Contract.deploy()parameter arguments renamed to argsContract.deploy()now takes args and kwargs parameters to allow constructing with keyword arguments or positional arguments.Contract.pastEventsnow allows you to specify afromBlock or ``toBlock.Previously these were forced to be'earliest'andweb3.eth.blockNumberrespectively.Contract.call,Contract.transactandContract.estimateGasare now callable as class methods as well as instance methods. When called this way, an address must be provided with the transaction parameter.Contract.call,Contract.transactandContract.estimateGasnow allow specifying an alternate address for the transaction.
- Changes to the
RPCProvidernow supports the following constructor arguments.sslfor enabling SSLconnection_timeoutandnetwork_timeoutfor controlling the timeouts for requests.
2.7.1¶
- Bugfix: Fix KeyError in merge_args_and_kwargs helper fn.
2.7.0¶
- Bugfix for usage of block identifiers ‘latest’, ‘earliest’, ‘pending’
- Sphinx documentation
- Non-data transactions now default to 90000 gas.
- Web3 object now has helpers set as static methods rather than being set at initialization.
- RPCProvider now takes a
pathparameter to allow configuration for requests to go to paths other than/.
2.6.0¶
- TestRPCProvider no longer dumps logging output to stdout and stderr.
- Bugfix for return types of
address[] - Bugfix for event data types of
address
2.5.0¶
- All transactions which contain a
dataelement will now have their gas automatically estimated with 100k additional buffer. This was previously only true with transactions initiated from aContractobject.
2.4.0¶
- Contract functions can now be called using keyword arguments.
2.3.0¶
- Upstream fixes for filters
- Filter APIs
onandpastEventsnow callable as both instance and class methods.
2.2.0¶
- The filters that come back from the contract
onandpastEventsmethods now call their callbacks with the same data format asweb3.js.
2.1.1¶
- Cast RPCProvider port to an integer.
2.1.0¶
- Remove all monkeypatching
2.0.0¶
- Pull in downstream updates to proper gevent usage.
- Fix
eth_sign - Bugfix with contract operations mutating the transaction object that is passed in.
- More explicit linting ignore statements.
1.9.0¶
- BugFix: fix for python3 only
json.JSONDecodeErrorhandling.
1.8.0¶
- BugFix:
RPCProvidernot sending a content-type header - Bugfix:
web3.toWeinow returns an integer instead of a decimal.Decimal
1.7.1¶
TestRPCProvidercan now be imported directly fromweb3
1.7.0¶
- Add
eth.admininterface. - Bugfix: Format the return value of
web3.eth.syncing - Bugfix: IPCProvider socket interactions are now more robust.
1.6.0¶
- Downstream package upgrades for
eth-testrpcandethereum-tester-clientto handle configuration of the Homestead and DAO fork block numbers.
1.5.0¶
- Rename
web3.contract._Contracttoweb3.contract.Contractto expose it for static analysis and auto completion tools - Allow passing string parameters to functions
- Automatically compute gas requirements for contract deployment and
- transactions.
- Contract Filters
- Block, Transaction, and Log filters
web3.eth.txpoolinterfaceweb3.eth.mininginterface- Fixes for encoding.
1.4.0¶
- Bugfix to allow address types in constructor arguments.
1.3.0¶
- Partial implementation of the
web3.eth.contractinterface.
1.2.0¶
- Restructure project modules to be more flat
- Add ability to run test suite without the slow tests.
- Breakup
encodingutils into smaller modules. - Basic pep8 formatting.
- Apply python naming conventions to internal APIs
- Lots of minor bugfixes.
- Removal of dead code left behing from
1.0.0refactor. - Removal of
web3/soliditymodule.
1.1.0¶
- Add missing
isConnected()method. - Add test coverage for
setProvider()
1.0.1¶
- Specify missing
pyrlpandgeventdependencies
1.0.0¶
- Massive refactor to the majority of the app.
0.1.0¶
- Initial release