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

Remove unnecessary WrappedNode method indirection #15813

Merged
merged 3 commits into from
Jun 14, 2022

Conversation

stuhood
Copy link
Sponsor Member

@stuhood stuhood commented Jun 13, 2022

The WrappedNode::run_wrapped_node method was never actually called "via" trait WrappedNode, because it was only called immediately after matching a particular NodeKey implementation. So having the method was a bit misleading, but it also meant that:

  1. all node implementations needed to have the same shape for their implementation method
  2. run_wrapped_node was unnecessarily boxed due to WrappedNode needing to be marked async_trait. Removing the boxing means one fewer allocation per node.

This change removes WrappedNode::run_wrapped_node, and replaces it with a convention of having a run_node method.

…_node`.

# Building wheels and fs_util will be skipped. Delete if not intended.
[ci skip-build-wheels]
# Building wheels and fs_util will be skipped. Delete if not intended.
[ci skip-build-wheels]
@stuhood stuhood added the category:internal CI, fixes for not-yet-released features, etc. label Jun 13, 2022
@stuhood
Copy link
Sponsor Member Author

stuhood commented Jun 13, 2022

Commits are useful to review independently.

Copy link
Contributor

@Eric-Arellano Eric-Arellano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sweet!

@stuhood stuhood enabled auto-merge (squash) June 13, 2022 23:45
@stuhood stuhood merged commit 99af4b3 into pantsbuild:main Jun 14, 2022
@stuhood stuhood deleted the stuhood/remove-wrapped-node-method branch June 14, 2022 16:07
illicitonion added a commit to illicitonion/pants that referenced this pull request Jun 17, 2022
Internal changes:

* Add `@alonsodomin` to maintainers ([pantsbuild#15869](pantsbuild#15869))

* Scala parser improvements ([pantsbuild#15839](pantsbuild#15839))

* Refactor valid field aliases calculation for targets into a classmethod for easier re-use. ([pantsbuild#15861](pantsbuild#15861))

* Update Media page with Pycon ([pantsbuild#15852](pantsbuild#15852))

* Use Readme.com's new Markdown syntax ([pantsbuild#15845](pantsbuild#15845))

* [internal] better align test JVM lockfile support with pytest concepts ([pantsbuild#15804](pantsbuild#15804))

* Fix broken `engine_error` testutil decorator. ([pantsbuild#15818](pantsbuild#15818))

* Add `description_of_origin` for Docker address parsing ([pantsbuild#15814](pantsbuild#15814))

* Use `MultiGet` in Go rule ([pantsbuild#15838](pantsbuild#15838))

* Switch from warn to warning ([pantsbuild#15837](pantsbuild#15837))

* Bump clap from 3.1.18 to 3.2.4 in /src/rust/engine ([pantsbuild#15834](pantsbuild#15834))

* Bump reqwest from 0.11.10 to 0.11.11 in /src/rust/engine ([pantsbuild#15831](pantsbuild#15831))

* Bump strum from 0.24.0 to 0.24.1 in /src/rust/engine ([pantsbuild#15833](pantsbuild#15833))

* Bump strum_macros from 0.24.0 to 0.24.1 in /src/rust/engine ([pantsbuild#15835](pantsbuild#15835))

* Remove flake8-pantsbuild plugin ([pantsbuild#15830](pantsbuild#15830))

* go: support third-party package embeds ([pantsbuild#15827](pantsbuild#15827))

* Move `gshuflin` to Maintainers Emeritus ([pantsbuild#15828](pantsbuild#15828))

* Adds current contents of readme.com docs to repo and adds notes on how to sync. ([pantsbuild#15810](pantsbuild#15810))

* Remove unnecessary `WrappedNode` method indirection ([pantsbuild#15813](pantsbuild#15813))

* Handle anchors in doc_url() correctly. ([pantsbuild#15812](pantsbuild#15812))

* Move the macOS ARM64 build job into the existing test workflows. ([pantsbuild#15805](pantsbuild#15805))

* Add Lablup to users list. ([pantsbuild#15807](pantsbuild#15807))

* Add `description_of_origin` for several places finding Addresses ([pantsbuild#15797](pantsbuild#15797))

* [internal] Register `platform_specific_behavior` marker with Pytest ([pantsbuild#12679](pantsbuild#12679))

* Bump http from 0.2.7 to 0.2.8 in /src/rust/engine ([pantsbuild#15780](pantsbuild#15780))

* Update the `notify` crate. ([pantsbuild#15783](pantsbuild#15783))

* Bump tokio-stream from 0.1.8 to 0.1.9 in /src/rust/engine ([pantsbuild#15777](pantsbuild#15777))

* Bump indexmap from 1.8.1 to 1.8.2 in /src/rust/engine ([pantsbuild#15778](pantsbuild#15778))

* Bump uuid from 1.0.0 to 1.1.1 in /src/rust/engine ([pantsbuild#15779](pantsbuild#15779))

* Bump hyper from 0.14.18 to 0.14.19 in /src/rust/engine ([pantsbuild#15781](pantsbuild#15781))

* Update `crossbeam-utils` to `0.8.8`. ([pantsbuild#15782](pantsbuild#15782))
@illicitonion illicitonion mentioned this pull request Jun 17, 2022
illicitonion added a commit that referenced this pull request Jun 17, 2022
Internal changes:

* Add `@alonsodomin` to maintainers ([#15869](#15869))

* Scala parser improvements ([#15839](#15839))

* Refactor valid field aliases calculation for targets into a classmethod for easier re-use. ([#15861](#15861))

* Update Media page with Pycon ([#15852](#15852))

* Use Readme.com's new Markdown syntax ([#15845](#15845))

* [internal] better align test JVM lockfile support with pytest concepts ([#15804](#15804))

* Fix broken `engine_error` testutil decorator. ([#15818](#15818))

* Add `description_of_origin` for Docker address parsing ([#15814](#15814))

* Use `MultiGet` in Go rule ([#15838](#15838))

* Switch from warn to warning ([#15837](#15837))

* Bump clap from 3.1.18 to 3.2.4 in /src/rust/engine ([#15834](#15834))

* Bump reqwest from 0.11.10 to 0.11.11 in /src/rust/engine ([#15831](#15831))

* Bump strum from 0.24.0 to 0.24.1 in /src/rust/engine ([#15833](#15833))

* Bump strum_macros from 0.24.0 to 0.24.1 in /src/rust/engine ([#15835](#15835))

* Remove flake8-pantsbuild plugin ([#15830](#15830))

* go: support third-party package embeds ([#15827](#15827))

* Move `gshuflin` to Maintainers Emeritus ([#15828](#15828))

* Adds current contents of readme.com docs to repo and adds notes on how to sync. ([#15810](#15810))

* Remove unnecessary `WrappedNode` method indirection ([#15813](#15813))

* Handle anchors in doc_url() correctly. ([#15812](#15812))

* Move the macOS ARM64 build job into the existing test workflows. ([#15805](#15805))

* Add Lablup to users list. ([#15807](#15807))

* Add `description_of_origin` for several places finding Addresses ([#15797](#15797))

* [internal] Register `platform_specific_behavior` marker with Pytest ([#12679](#12679))

* Bump http from 0.2.7 to 0.2.8 in /src/rust/engine ([#15780](#15780))

* Update the `notify` crate. ([#15783](#15783))

* Bump tokio-stream from 0.1.8 to 0.1.9 in /src/rust/engine ([#15777](#15777))

* Bump indexmap from 1.8.1 to 1.8.2 in /src/rust/engine ([#15778](#15778))

* Bump uuid from 1.0.0 to 1.1.1 in /src/rust/engine ([#15779](#15779))

* Bump hyper from 0.14.18 to 0.14.19 in /src/rust/engine ([#15781](#15781))

* Update `crossbeam-utils` to `0.8.8`. ([#15782](#15782))
wisechengyi added a commit that referenced this pull request Jun 26, 2022
### Internal (put these in a PR comment for review, not the release notes)

* Bump uuid from 1.1.1 to 1.1.2 in /src/rust/engine ([#15832](#15832))

* Tests for Docker from arg not a upstream target ([#15874](#15874))

* Fix outstanding todo for moved fields defaults support. ([#15923](#15923))

* Move generic debug adapter settings to dedicated subsystem ([#15928](#15928))

* Prepare `2.12.0rc3`. ([#15913](#15913))

* Prepare `2.11.1rc3`. ([#15912](#15912))

* Upgrade default mypy to 0.961 and default pylint to v2.13.9 ([#15886](#15886))

* Bump clap from 3.2.4 to 3.2.6 in /src/rust/engine ([#15909](#15909))

* Bump indexmap from 1.8.2 to 1.9.1 in /src/rust/engine ([#15894](#15894))

* Bump time from 0.3.9 to 0.3.11 in /src/rust/engine ([#15895](#15895))

* Bump tower-service from 0.3.1 to 0.3.2 in /src/rust/engine ([#15896](#15896))

* Bump crossbeam-channel from 0.5.4 to 0.5.5 in /src/rust/engine ([#15893](#15893))

* [internal] remove TestCoursierWrapper ([#15902](#15902))

* Silence `[scala-infer].force_add_siblings_as_dependencies` deprecation. ([#15898](#15898))

* Add unit tests to GraphQL queries ([#15792](#15792))

* Release script fixups ([#15875](#15875))

* [internal] jvm: port remaining tests to use test lockfiles ([#15870](#15870))

* Bump to 2.13.0a0 ([#15871](#15871))

* Add `@alonsodomin` to maintainers ([#15869](#15869))

* Scala parser improvements ([#15839](#15839))

* Refactor valid field aliases calculation for targets into a classmethod for easier re-use. ([#15861](#15861))

* Update Media page with Pycon ([#15852](#15852))

* Use Readme.com's new Markdown syntax ([#15845](#15845))

* [internal] better align test JVM lockfile support with pytest concepts ([#15804](#15804))

* Fix broken `engine_error` testutil decorator. ([#15818](#15818))

* Add `description_of_origin` for Docker address parsing ([#15814](#15814))

* Use `MultiGet` in Go rule ([#15838](#15838))

* Switch from warn to warning ([#15837](#15837))

* Bump clap from 3.1.18 to 3.2.4 in /src/rust/engine ([#15834](#15834))

* Bump reqwest from 0.11.10 to 0.11.11 in /src/rust/engine ([#15831](#15831))

* Bump strum from 0.24.0 to 0.24.1 in /src/rust/engine ([#15833](#15833))

* Bump strum_macros from 0.24.0 to 0.24.1 in /src/rust/engine ([#15835](#15835))

* Remove flake8-pantsbuild plugin ([#15830](#15830))

* go: support third-party package embeds ([#15827](#15827))

* Move `gshuflin` to Maintainers Emeritus ([#15828](#15828))

* Adds current contents of readme.com docs to repo and adds notes on how to sync. ([#15810](#15810))

* Remove unnecessary `WrappedNode` method indirection ([#15813](#15813))

* Handle anchors in doc_url() correctly. ([#15812](#15812))

* Move the macOS ARM64 build job into the existing test workflows. ([#15805](#15805))

* Add Lablup to users list. ([#15807](#15807))

* Add `description_of_origin` for several places finding Addresses ([#15797](#15797))

* [internal] Register `platform_specific_behavior` marker with Pytest ([#12679](#12679))

* Bump http from 0.2.7 to 0.2.8 in /src/rust/engine ([#15780](#15780))

* Update the `notify` crate. ([#15783](#15783))

* Bump tokio-stream from 0.1.8 to 0.1.9 in /src/rust/engine ([#15777](#15777))

* Bump indexmap from 1.8.1 to 1.8.2 in /src/rust/engine ([#15778](#15778))

* Bump uuid from 1.0.0 to 1.1.1 in /src/rust/engine ([#15779](#15779))

* Bump hyper from 0.14.18 to 0.14.19 in /src/rust/engine ([#15781](#15781))

* Update `crossbeam-utils` to `0.8.8`. ([#15782](#15782))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:internal CI, fixes for not-yet-released features, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants