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

Deprecate #[project] attributes in favor of the naming of projected-type #225

Closed
taiki-e opened this issue May 18, 2020 · 3 comments · Fixed by #244
Closed

Deprecate #[project] attributes in favor of the naming of projected-type #225

taiki-e opened this issue May 18, 2020 · 3 comments · Fixed by #244
Assignees
Labels
A-project-attribute Area: #[project], #[project_ref], and #[project_replace] (note: this was removed in v1.0)

Comments

@taiki-e
Copy link
Owner

taiki-e commented May 18, 2020

The naming of projected-type added in #202 is more powerful than project* attributes and the implementation is also very simple.

There some reasons for removing project* attributes in favor of the naming of projected-type:

That said, it may be tedious to name each time...

@taiki-e taiki-e added A-pin-projection Area: #[pin_project] A-project-attribute Area: #[project], #[project_ref], and #[project_replace] (note: this was removed in v1.0) needs-discussion and removed A-pin-projection Area: #[pin_project] labels May 18, 2020
@Aaron1011
Copy link
Collaborator

I'm in favor of this - I think it's nice to only require using macros at the definition site.

@taiki-e taiki-e assigned taiki-e and unassigned taiki-e May 31, 2020
@taiki-e
Copy link
Owner Author

taiki-e commented Jun 5, 2020

I'll do this next week.

@taiki-e taiki-e pinned this issue Jun 5, 2020
@taiki-e taiki-e changed the title Consider deprecating #[project] attributes in favor of the naming of projected-type Deprecate #[project] attributes in favor of the naming of projected-type Jun 5, 2020
taiki-e added a commit to taiki-e/futures-rs that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/hyper that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/tower that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/warp that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/tonic that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/actix that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/actix-net that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/actix-web that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/tokio-tungstenite that referenced this issue Jun 5, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/diem that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/diem that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
bors-libra pushed a commit to diem/diem that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225

Closes: #4320
Approved by: bmwill
taiki-e added a commit to taiki-e/noria that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/rants that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/shadowsocks-rust that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/async-smtp that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
taiki-e added a commit to taiki-e/rust-libp2p that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
tikue pushed a commit to google/tarpc that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
@taiki-e
Copy link
Owner Author

taiki-e commented Jun 6, 2020

Also, in the future (when project attribute removed), we can reduce generated code by skips unnamed projection types and methods when pin_project used on enums.

zonyitoo pushed a commit to shadowsocks/shadowsocks-rust that referenced this issue Jun 6, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
mxinden pushed a commit to libp2p/rust-libp2p that referenced this issue Jun 9, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
LucioFranco pushed a commit to hyperium/tonic that referenced this issue Jun 9, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
@bors bors bot closed this as completed in 9e3996f Jun 13, 2020
@bors bors bot closed this as completed in #244 Jun 13, 2020
LucioFranco pushed a commit to tower-rs/tower that referenced this issue Jun 15, 2020
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
@taiki-e taiki-e unpinned this issue Jun 19, 2020
exrook pushed a commit to exrook/futures-rs that referenced this issue Apr 5, 2021
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
exrook pushed a commit to exrook/futures-rs that referenced this issue Apr 5, 2021
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
jxs pushed a commit to jxs/warp that referenced this issue Jun 27, 2021
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
BenxiangGe pushed a commit to BenxiangGe/hyper that referenced this issue Jul 26, 2021
…m#2219)

pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
santos227 pushed a commit to santos227/rustlib that referenced this issue Jun 20, 2022
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
black02430horse added a commit to black02430horse/tokio-tungstenite that referenced this issue Apr 25, 2024
pin-project will deprecate the project attribute due to some unfixable
limitations.

Refs: taiki-e/pin-project#225
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-project-attribute Area: #[project], #[project_ref], and #[project_replace] (note: this was removed in v1.0)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants