Skip to content

Pin proc-macro2 in CI to fix MSRV breakage #2424

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 1 commit into from

Conversation

tnull
Copy link
Contributor

@tnull tnull commented Jul 17, 2023

The proc-macro2 crate switched to Rust edition 2021 starting with v1.0.66, i.e., has MSRV of 1.56.

Here, we pin it in CI to fix the breakage.

@tnull tnull mentioned this pull request Jul 17, 2023
@tnull tnull force-pushed the 2023-07-pin-proc-macro2 branch 2 times, most recently from 19d8ec9 to b512afa Compare July 17, 2023 19:13
@TheBlueMatt
Copy link
Collaborator

Also, this is a pretty big dep tree just for tokio::select!() on one line, especially when we already have a two-select implemented in lightning-background-processor. I wonder if we shouldn't just copy that into lightning-net-tokio.

@tnull tnull force-pushed the 2023-07-pin-proc-macro2 branch from b512afa to 6ff1100 Compare July 17, 2023 19:26
@tnull
Copy link
Contributor Author

tnull commented Jul 17, 2023

Also, this is a pretty big dep tree just for tokio::select!() on one line, especially when we already have a two-select implemented in lightning-background-processor. I wonder if we shouldn't just copy that into lightning-net-tokio.

Yeah, maybe. On the other hand, as discussed recently, a slight MSRV bump might be useful/imminent anyways, which would not only spare us to copy and maintain more code, but also would allow us to remove a lot (if not all) of the CI pins. Will go through what exactly our requirements are in the coming days to hopefully arrive at a sane target.

The proc-macro2 crate switched to Rust edition 2021 starting with
v1.0.66, i.e., has MSRV of 1.56.

Here, we pin it in CI to fix the breakage.
@tnull tnull force-pushed the 2023-07-pin-proc-macro2 branch from 6ff1100 to 61d7ada Compare July 17, 2023 19:32
@TheBlueMatt
Copy link
Collaborator

On the other hand, as discussed recently, a slight MSRV bump might be useful/imminent anyways

I'm not sure why - the furthest we could realistically go is 1.63, and sadly there's really just not much interesting between 1.48 and 1.63...we'll probably have some other sub-crates with MSRVs of 1.63, but there's no reason to rush ahead and bump the MSRV of the other crates for some time, I think.

@tnull
Copy link
Contributor Author

tnull commented Jul 17, 2023

On the other hand, as discussed recently, a slight MSRV bump might be useful/imminent anyways

I'm not sure why - the furthest we could realistically go is 1.63, and sadly there's really just not much interesting between 1.48 and 1.63...we'll probably have some other sub-crates with MSRVs of 1.63, but there's no reason to rush ahead and bump the MSRV of the other crates for some time, I think.

Well, the transaction-sync crate MSRV should lie somewhere around ~1.56/1.57 with TLS currently? So, while it won't protect us from future MSRV bumps longer term, it would allow us to get started, until we can move to a saner dependecy tree there. IIRC, this 'two-pronged' approach was what we arrived at?

@TheBlueMatt
Copy link
Collaborator

Well, the transaction-sync crate MSRV should lie somewhere around ~1.56/1.57 with TLS currently?

Right, but there's no reason that has to imply a workspace-wide MSRV bump, the rest of the workspace can still happily sit at 1.48.

@TheBlueMatt
Copy link
Collaborator

I think we should copy the one from lightning-background-processor - its like 15 LoC (would become 20 with return elements, maybe) and removes several crates from our dependency tree.

@TheBlueMatt TheBlueMatt added this to the 0.0.116 milestone Jul 17, 2023
@dunxen
Copy link
Contributor

dunxen commented Jul 17, 2023

I feel like dropping the dependency is ideal here, but also happy with a temporary pin.

@tnull
Copy link
Contributor Author

tnull commented Jul 17, 2023

I feel like dropping the dependency is ideal here, but also happy with a temporary pin.

Yeah, we probably should. Will pick it up tomorrow, if @TheBlueMatt doesn't beat me to it. Closing this for now.

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.

3 participants