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

Update mapping::lookup so it is a const function #49

Merged
merged 3 commits into from
May 17, 2021
Merged

Conversation

lopopolo
Copy link
Member

Raises the minimum Rust version to 1.46.0, adds docs for MSRV, and a CI job to ensure focaccia compiles with Rust 1.46.0.

@lopopolo lopopolo added A-performance Area: Performance improvements and optimizations. A-crate-features Area: Compile-time features or attributes. A-folding Area: Unicode case folding. labels Dec 30, 2020
@lopopolo
Copy link
Member Author

lopopolo commented Dec 30, 2020

This is blocked on rust-lang/rust#79549 which makes char::to_ascii_lowercase const fn.

@lopopolo lopopolo added the S-blocked Status: Marked as blocked ❌ on something else such as other implementation work. label Dec 30, 2020
@lopopolo
Copy link
Member Author

It looks like I came to this same conclusion in #17, but now there is a PR up in upstream Rust, so I'll keep this open.

lopopolo added a commit that referenced this pull request Dec 30, 2020
This commit does everything except add the `const` annotation to the
function signature. Adding `const` is blocked on rust-lang/rust#79549.

See #49.
@lopopolo
Copy link
Member Author

This will be unblocked once rust-lang/rust#82078 makes it to stable.

@lopopolo
Copy link
Member Author

The required const fn changes were released in Rust 1.52.0: https://blog.rust-lang.org/2021/05/06/Rust-1.52.0.html#stabilized-apis

@lopopolo lopopolo removed the S-blocked Status: Marked as blocked ❌ on something else such as other implementation work. label May 17, 2021
lopopolo added 3 commits May 17, 2021 07:07
Rust 1.52.0 stabilized several char ASCII methods as const which are
required by `lookup` if we wish to make `lookup` const.

https://blog.rust-lang.org/2021/05/06/Rust-1.52.0.html#stabilized-apis

This commit adds a job to the CI GitHub Actions workflow to test
foccacia with the declared MSRV of 1.52.0. Due to several panics in
incremental compilation in Rust 1.52.0, this job sets the
`CARGO_INCREMENTAL` env variable to 0 to disable incremental
compilation.
@lopopolo lopopolo merged commit 0e498c5 into trunk May 17, 2021
@lopopolo lopopolo deleted the const-lookup branch May 17, 2021 14:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-crate-features Area: Compile-time features or attributes. A-folding Area: Unicode case folding. A-performance Area: Performance improvements and optimizations.
Development

Successfully merging this pull request may close these issues.

1 participant