serde-deprecated / syntex

No longer maintained
113 stars 34 forks source link

Ownership of Syntex #114

Open dtolnay opened 7 years ago

dtolnay commented 7 years ago

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 commented 7 years ago

x-posted to u.r-l.o: https://users.rust-lang.org/t/seeking-new-maintainer-for-syntex/9288

dtolnay commented 7 years ago

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

fitzgen commented 7 years ago

@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 commented 7 years ago

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 commented 7 years ago

@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 commented 7 years ago

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

emilio commented 7 years ago

@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 commented 7 years ago

@dtolnay

Why syntex was dropped at 163d8d6c24144fdd6fd6c79c24d643043f8cf206 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 commented 7 years ago

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 commented 7 years ago

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