Skip to content
This repository has been archived by the owner on May 6, 2020. It is now read-only.

Ownership of Syntex #114

Open
dtolnay opened this issue Feb 4, 2017 · 10 comments
Open

Ownership of Syntex #114

dtolnay opened this issue Feb 4, 2017 · 10 comments

Comments

@dtolnay
Copy link
Contributor

dtolnay commented Feb 4, 2017

Now that Serde's code generation is stable and we no longer depend on Syntex, it no longer makes sense for our team to continue owning the Syntex stack.

Please let me know if you would be interested in taking over ownership. If nobody needs Syntex updates so much that they would be willing to run the stack, I think it means we can abandon Syntex and Aster and Quasi.

@dtolnay
Copy link
Contributor Author

dtolnay commented Feb 4, 2017

@dtolnay
Copy link
Contributor Author

dtolnay commented Feb 4, 2017

cc owners of <1 month old dependencies on syntex and aster and quasi:

@fitzgen
Copy link

fitzgen commented Feb 6, 2017

@dtolnay can you describe what maintainership of syntex/aster/quasi looks like in practice? Is it mostly un-nightly-ifying code from rustc?

bindgen would be pretty negatively impacted by the loss of syntex.

@emilio
Copy link

emilio commented Feb 6, 2017

Yes, though even though bindgen is really dependent on syntax for code generation, I think our need to update syntex is sporadic (i.e., when we need to generate code for something our current syntex version can't, which is rather unfrequent).

I think other projects that use rust code as input (rustfmt comes to mind) could be more affected by this.

I'm happy doing a syntex/aster/etc update once in a while when bindgen needs it for some reason, but I don't think bindgen has as much of a need for keeping syntex/quote/quasi constantly updated compared to other crates.

@dtolnay
Copy link
Contributor Author

dtolnay commented Feb 6, 2017

@fitzgen

can you describe what maintainership of syntex/aster/quasi looks like in practice? Is it mostly un-nightly-ifying code from rustc?

It is exclusively un-nightly-ifying code from rustc and bumping version numbers. Here are some example commits to give you an idea:

@emilio the thing is, resolving these merge conflicts sporadically in big batches is MUCH harder than resolving them in real time as they happen. So even if bindgen only bumps its syntex dependency very rarely, you still want to have a version of syntex that is based on a relatively recent rustc at all times.

@nox
Copy link

nox commented Feb 7, 2017

@emilio @dtolnay How hard would it be to migrate bindgen to syn's trees or just quotations?

@emilio
Copy link

emilio commented Feb 7, 2017

@nox: I assume it's going to be hardish to migrate to just quotations, since we need something a bit more procedural (though maybe quotations have now support for that?). Mainly, I don't know off-hand (haven't looked to much arguably, aster is nice for that) into how to replace patterns like:

for field in struct.fields() {
    // ...
    builder = builder.with_field(..);
}

I'd had to try to know how hard would be to migrate to syn, but in any case all that is kind of off-topic in this issue.

@Dushistov
Copy link

Dushistov commented Aug 5, 2017

@dtolnay

Why syntex was dropped at 163d8d6 and in version 0.59? Personaly I use syntex in my project for macros expansions.

I thought the project was stoped, but it is moving according to commit history,
but for some reason drops important parts.

@dtolnay
Copy link
Contributor Author

dtolnay commented Aug 5, 2017

I updated syntex_syntax to Rust 2017-06-01 to use in rustfmt. I did not update syntex because rustfmt does not use it. Rustfmt is going to be moving into the main Rust distro and no longer using syntex_syntax, so you should consider both syntex and syntex_syntax abandoned.

@Techcable
Copy link

You might want to post syn on the readmee as an alternative.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Development

No branches or pull requests

6 participants