Skip to content

Commit e1e9274

Browse files
bors[bot]adamgreig
andauthored
Merge #590
590: RFC for moving cross to its own organisation r=adamgreig a=adamgreig [Rendered](https://github.com/rust-embedded/wg/blob/cross-rfc/rfcs/0590-new-cross-org.md). This RFC is for the attention of `@rust-embedded/tools` who currently maintain the `cross` crate. cc cross-rs/cross#574 Co-authored-by: Adam Greig <[email protected]>
2 parents ed7838e + 07af85f commit e1e9274

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

rfcs/0590-new-cross-org.md

+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
- Feature Name: new_cross_org
2+
- Start Date: 2021-12-06
3+
- RFC PR: [#590](https://github.com/rust-embedded/wg/pull/590)
4+
5+
# Summary
6+
[summary]: #summary
7+
8+
Move the `cross` repository to a new GitHub organisation `cross-rs`,
9+
with volunteers from the current Tools team as initial owners of the new
10+
organisation, to continue development of `cross` outside of the working group.
11+
12+
# Motivation
13+
[motivation]: #motivation
14+
15+
Currently the working group is responsible for maintaining
16+
[`cross`](https://github.com/rust-embedded/cross), a popular tool for
17+
cross-compiling Rust projects to different targets. While it was initially also
18+
useful for embedded development, it's no longer especially useful for standard
19+
embedded use (since Rust natively supports many popular targets), but has
20+
become popular for other use cases.
21+
22+
Because it's no longer widely used for embedded, it has not received much
23+
maintenance from the embedded WG, with the last release over a year ago
24+
and a number of issues and PRs left open.
25+
26+
We've previously asked for help with new maintainers [in this
27+
thread](https://github.com/rust-embedded/cross/issues/574) and received a
28+
positive response, but it doesn't seem appropriate to require these new
29+
maintainers to join an existing WG team and no action has been taken to
30+
bring any of the volunteers into the organisation.
31+
32+
Essentially, the WG does not have the maintenance bandwidth to keep on top
33+
of `cross`, but its user community hopefully does.
34+
35+
# Detailed design
36+
[design]: #detailed-design
37+
38+
We transfer the `cross` repository to a new `cross-rs` organisation (created in
39+
advance of writing this RFC to ensure name availability). Volunteers from the
40+
existing Tools team will be added as owners to the new organisation, which is
41+
otherwise a separate entity from the working group. The repository's README
42+
will be updated to reflect its new organisation and the crate's `authors` field
43+
updated to remove the Tools team. The WG will maintain the default GitHub
44+
redirect to help existing users and prevent breaking old links.
45+
46+
At this point the working group is no longer responsible for the new
47+
organisation or the `cross` project; the rest of this plan details the
48+
subsequent intentions for initial setup.
49+
50+
It's intended that additional volunteers from outside the WG will be added as
51+
maintainers, with PR approval and write acess to the repository, and a new team
52+
in that organisation created and given publish rights to crates.io.
53+
54+
The new organisation and moved repository would continue the WG's commitment to
55+
upholding the Rust project code of conduct, and having some existing Tools team
56+
members as the initial maintainers provides continuity of ownership and
57+
oversight as the new project gets underway.
58+
59+
Currently cross uses Azure Pipelines for CI and the dockerhub container
60+
registry for container images, but it is envisioned this will swap to GHA
61+
and GHCR, which means CI allowances and authorisation will be provided through
62+
the new GitHub organisation. The current status of the Azure authentication
63+
details are unknown, and the dockerhub team is beyond the free limit, so
64+
continuing with those providers is not anticipated.
65+
66+
# Drawbacks
67+
[drawbacks]: #drawbacks
68+
69+
Current users of cross rely on the WG to provide a reliable, stable, and
70+
trustworthy tool, and abandoning it to a new organisation could betray that
71+
trust. However, the maintenance level today is insufficient to provide the
72+
desired tool quality and unlikely to change significantly in the near future.
73+
By populating the new organisation initially with the existing maintainers,
74+
continuity of ownership is provided.
75+
76+
# Alternatives
77+
[alternatives]: #alternatives
78+
79+
Instead of creating a new organisation, we could:
80+
81+
* Create a new team inside the working group and have that team manage cross,
82+
adding new volunteers to the new team. However, this means the new volunteers
83+
who are only interested in cross must become WG members too, and the WG must
84+
continue to maintain a tool that is no longer especially relevant to
85+
embedded.
86+
* Continue with just the Tools team maintaining cross, potentially adding new
87+
volunteers to the Tools team. This is pretty much the status quo, so does
88+
not resolve the current maintenance problems.
89+
90+
# Unresolved questions
91+
[unresolved]: #unresolved-questions
92+
93+
None at this time.

0 commit comments

Comments
 (0)