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

Build on Rust stable branch #53

Closed
kmcallister opened this issue Nov 3, 2014 · 1 comment
Closed

Build on Rust stable branch #53

kmcallister opened this issue Nov 3, 2014 · 1 comment

Comments

@kmcallister
Copy link
Contributor

Not for 1.0 necessarily, but at some point in 1.x.

The biggest obstacle is syntax extensions. I have no clever ideas there except running rustc-nightly --pretty expanded and shipping that as the 1.x "source".

We should catalog all of the other obstacles here.

Servo itself will be on nightlies for a looooong time.

@kmcallister
Copy link
Contributor Author

Current plan for syntax extensions is syntex.

bors-servo pushed a commit to servo/tendril that referenced this issue Jul 24, 2015
Run on stable Rust

Without the `unstable` Cargo feature, on 64 bit platforms:
* `Tendril<_>` is 17 bytes instead of 16. (It has a drop flag.)
* `Option<Tendril<_>>` is 18 bytes instead of 16. (It has a drop flag and an explicit tag.)

r? @Manishearth

Needed for servo/html5ever#53

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/tendril/14)
<!-- Reviewable:end -->
bors-servo pushed a commit to servo/string-cache that referenced this issue Jul 27, 2015
Run on Rust stable

Without `--features unstable`:

* `Atom` is 16 bytes instead of 8. (It has a drop flag.)
* `ns!` and `atom!` are giant generated macros instead of plugins, and so may increase compile times.

r? @glennw, particularly c4fa256.

Needed for servo/html5ever#53

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/string-cache/95)
<!-- Reviewable:end -->
bors-servo pushed a commit that referenced this issue Jul 31, 2015
Run on Rust stable

When the "unstable" Cargo feature is given, html5ever’s build script will use html5ever_macros as a library to generate or update `src/tree_builder/rules.expanded.rs`, which is part of the source tree.

(This feature also enables the corresponding features of tendril and string-cache.)

html5ever_macros is not a plugin anymore, but it still uses libsyntax and still behaves a lot like a syntax extension.

When "unstable" is *not* given, the build script checks that rules.expanded.rs is up to date (based on a hash of rules.rs) and fails if it’s not.

Tests also run on stable Rust on Travis-CI, but unfortunately most of them are disabled as they dynamically generated using internals of the `test` crate.

r? @Manishearth

Fixes #53
Closes #151

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/html5ever/151)
<!-- Reviewable:end -->
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

No branches or pull requests

1 participant