Skip to content

deprecated estimateGas and buildTransaction in v5 contract #2438

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

Closed
wants to merge 58 commits into from

Conversation

dbfreem
Copy link
Contributor

@dbfreem dbfreem commented Apr 22, 2022

What was wrong?

Deprecating buildTransaction and estimateGas in the v5 branch. I will remove them in the asyncify-contract branch so they are effectively removed in v6

Related to Issue #1416

Todo:

kclowes and others added 30 commits February 10, 2022 10:42
…pes (ethereum#2340)

* Add 'Breaking Change' and 'Deprecation' to our valid newsfragment types

* Add newsfragment for new newsfragment categories

* Remove removal section of release notes
* Drop python 3.6

* Remove parity tests

* Add newsfragment for py36 drop
* fix: correct type for effectiveGasPrice (Wei, not int)

* fix: correct type for gas and gas_limit (int, not Wei)

* lint: removed unused type imports of Wei

* Add newsfragment for Wei/int typing fixes

Co-authored-by: kclowes <[email protected]>
* Require websockets v10+

- Remove event loop parameter

* Add newsfragment for websockets upgrade
* ➕ Add Python 3.10 support to CI

* Dropped support for all parities

* Change docker image to use 3.10

* Update pytest-asyncio plugin

* Mark async fixture as such, clean up pytest DeprecationWarnings

Signed-off-by: Harmouch101 <[email protected]>

Co-authored-by: Felipe Selmo <[email protected]>
Co-authored-by: kclowes <[email protected]>
* 🧹 clean unnecessary utf-8 encoding declaration

* 📝 add newsfragment.rst

Signed-off-by: Harmouch101 <[email protected]>
ethereum#2254)

* Added caching to the async session in request.py and AsyncHTTPProvider
* Add all types of towncrier documents to pyproject.toml

* Fix formatting for old newsfragments

* Don't show Misc content for consistency
* Update dependencies

* Add newsfragment for dep upgrades
* 📝 replace all instances of Web3 with w3

Signed-off-by: Harmouch101 <[email protected]>

* Remove unnecessary w3 arguments to tests while reviewing PR ethereum#2357

Co-authored-by: Felipe Selmo <[email protected]>
* An example how to manage local private key using env

How to manage private keys using environment variable, how to generate them, and some security warnings.

* Fix extra period

Inserted by the editor?

* add content tweaks and newsfragment

Co-authored-by: Marc Garreau <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
Signed-off-by: Harmouch101 <[email protected]>
* Refactor logic for attaching a `Method` class as a property rather than a method. Instead of implicitly setting `mungers=None`, explicitly set the `is_property` flag on `Method` to `True`. This also facilitates attaching new methods and properties to modules.

* Fix up some tests in test_method.py that were falsely passing to actually test correctly. Add tests for new `is_property` flag for the `Method` class.

* Create `test_module.py` and add tests for `attach_methods()`
@dbfreem
Copy link
Contributor Author

dbfreem commented Apr 22, 2022

just realized doc changes are still needed here I will make those in the next couple days

@dbfreem dbfreem marked this pull request as draft April 22, 2022 10:08
@dbfreem
Copy link
Contributor Author

dbfreem commented Apr 23, 2022

Actually, there isn't a doc portion of this. Since there will not be docs published for the v5 branch. At least, I wouldn't think there would be. I deprecated the methods but did not update the docs. I will rename all the methods in the docs on the asyncify-contract branch.

@dbfreem dbfreem marked this pull request as ready for review April 23, 2022 00:32
@dbfreem dbfreem marked this pull request as draft April 23, 2022 19:38
@dbfreem dbfreem marked this pull request as ready for review April 23, 2022 19:38
EricHuang0525 and others added 2 commits April 27, 2022 11:59
* Resolve Typo in documentation.

* Add newsfragment for doc fix

Co-authored-by: kclowes <[email protected]>
* Cache eth.chain_id in simple_cache_middleware (ethereum#2425)

* Add caching for sync chain_id

* Remove async chainId setter

Will add async chainId to the cache once the simple_cache_middleware is available on async

* Add docs

* Add newsfragment for simple_cache_middleware, take out old, confusing newsfragment
@kclowes
Copy link
Collaborator

kclowes commented Apr 27, 2022

Thanks @dbfreem! The docs on this branch (v5) should maintain the deprecation warnings. The doc deprecation warnings can be removed in master when we remove the camelCase methods.

The changes in contract look good. If you check out the core test output on circleci, there are a bunch of deprecation warnings for the camelCase -> snake_case change, so extra credit for cleaning those up too if you're up for it. I haven't looked, but I think there will also probably be doc changes needed in docs/contract.rst as well. Thanks again!

@dbfreem
Copy link
Contributor Author

dbfreem commented Apr 27, 2022

I am not sure how I got the docs out of sync here. My intention was to not remove those etc docs in v5. I was going to update the contract docs in v5. I will take care of this in a couple days.

antazoey and others added 12 commits April 29, 2022 09:41
* docs: fix example

* Add newsfragment for typo

Co-authored-by: kclowes <[email protected]>
* fix: add chainId to txn params

* fix: error message on chain id hex to int

* Add newsfragment

Co-authored-by: kclowes <[email protected]>
- Upgrade the go version used in the geth steps for circleci
- Added test_eth_get_transaction_receipt_unmined and test_eth_wait_for_transaction_receipt_unmined to the list of flaky tests with timeout issues.
- Adds support for extended resolvers for wildcard resolution as defined by ENSIP-10.
- Adds the method ``parent()`` to the ENS class whose function is to extract the proper parent from an ENS name.
- Adds the ``ens_encode_name()`` method that uses DNS name-encoding standards with a few tweaks, such as skipping the fully-encoded length validation for the domain (limit of 255 for DNS) and encoding the empty names as defined by ENSIP-10 as a single zero byte ``b'\x00'``.

Unrelated:

- Minor cleanup for some existing ens tests
- Test wildcard resolver functionality using a basic resolver with support for the `resolve()` method and validate the parent ens domain and its subdomains within the resolve method of the contract.
- Test the new ``ens_encode_name()`` from the ``ens.utils`` module.
- Test the new ``ENS.parent()`` method to extract a parent from an ENS name.
- Make ``ENS.resolve()`` an internal method to provide a better user experience / less confusion. ``ENS.address()`` and ``ENS.name()`` should better abstract forward and backward resolution without the need to expose the ``resolve()`` method as part of the API.

- Normalize the name being passed into ``ENS.resolver()`` since this is an exposed method for user input. This is done on other methods for the class but was not yet done for ``ENS.resolver()``.
@dbfreem dbfreem closed this May 4, 2022
@dbfreem dbfreem deleted the feature/contractDeprecateMethods branch July 9, 2022 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.