-
-
Notifications
You must be signed in to change notification settings - Fork 34
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
Implement !Unpin option #219
Conversation
9ec67a4
to
2706e39
Compare
637a13d
to
bdcfbf8
Compare
unrestricted_attribute_tokens requires 1.34
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's been more than a year since 1.34 was released, and most of the users of this crate depend on futures_api that requires 1.36 (and many of them depend on async_await that requires 1.39). so bumping MSRV to 1.34 is probably no problem.
(Also, the old receiver lifetime elision rule is not convenient, so I guess very few people really want to use pin in those versions...)
bors r+
Build succeeded: |
I think we need to decide on a policy when we release 1.0, but for now, I would like to support a year ago rustc (as long as it is possible). |
202: Allow naming the projected types r=taiki-e a=taiki-e By passing an argument with the same name as the method to the attribute, you can name the projection type returned from the method: ```rust #[pin_project( Replace, project = StructProj, project_ref = StructProjRef, project_replace = StructProjOwn, )] struct Struct<T> { #[pin] field: T, } let mut x = Struct { field: 0 }; let StructProj { field } = Pin::new(&mut x).project(); let StructProjRef { field } = Pin::new(&x).project_ref(); let StructProjOwn { field } = Pin::new(&mut x).project_replace(Struct { field: 1 }); ``` cc #43 Closes #124 TODO: * [x] add tests * [x] write docs * [x] separate unrelated changes; done in #214 * [x] msrv (`unrestricted_attribute_tokens` requires 1.34); done in #219 Co-authored-by: Taiki Endo <[email protected]>
292: Bump MSRV to 1.37 r=taiki-e a=taiki-e Bumps MSRV to 1.37 because `underscore_const_names` requires 1.37. This allows removing the build script. It's been more than a year since [1.37 was released](https://blog.rust-lang.org/2019/08/15/Rust-1.37.0.html), and most of the users of this crate depend on `futures_api` that requires 1.36 and `async_await` that requires 1.39. so bumping MSRV to 1.37 is probably no problem. Also, given that pin-project-lite's MSRV is 1.37 and the possibility of switching, most futures-related utilities require at least 1.37. cc #264 Refs: #219 Co-authored-by: Taiki Endo <[email protected]>
Example
Also, bump MSRV to 1.34 because
unrestricted_attribute_tokens
requires 1.34 (#202 also requires 1.34).Closes #108