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

Would you consider maintaining this under the rust-mobile organization? #1

Closed
rib opened this issue Feb 14, 2023 · 10 comments
Closed

Comments

@rib
Copy link

rib commented Feb 14, 2023

Hi @matthunz

Earlier this year, while looking at modularizing the android-ndk-rs repo (that used to be hosted under the rust-windowing org), we decided to create a rust-mobile organisation as a place to collaborate and coordinate work on crates that are aimed at supporting mobile OS development (i.e. Android and iOS)

For context you can see here for more info about that modularization effort: rust-mobile/ndk#372

The general motivation for this was:

  1. To help make smaller utility crates that are helpful for mobile development a little easier to discover
  2. More easily share ideas / patterns between them where it makes sense. E.g. there is a "Rust Mobile Devs" team that gives at least one way to open discussions with other members working on similar / related crates.
  3. Help share the maintenance burden if wanted (in case someone no longer has the time / bandwidth / interest to work on a crate)

Thinking about Android specifically I think there are a few cross-cutting issues we have that we haven't got good answers for yet, including:

  1. no standard way of communicating whether libc++ is linked statically or shared
  2. no standard way of dealing with SDK versioning so crates know what Android APIs they should target
  3. no standard way of dealing with JNI pointers (or at least this is in flux currently)

and being able to collaborate on how we handle these consistently seems worthwhile.

I'd be more than happy to invite you as a member of the rust-mobile org if you'd like to transfer this repo there.

And just to clarify; the repo itself would still be your responsibility to maintain however you see fit if you did want to move it (i.e. it doesn't mean that you have to grant maintenance privileges to other members).

@matthunz
Copy link
Collaborator

For sure, that'd be awesome! Thanks so much for the invite

I actually just opened rust-mobile/android-activity#63 before seeing this. If you think this crate is better off separate I'd be happy to have it as a part of the org

@rib
Copy link
Author

rib commented Feb 15, 2023

Cool, yeah, my gut instinct at least for now is that this crate can be more useful as a standalone crate (since I think it's also relevant to applications that aren't necessarily based on android-activity) so maybe transferring the repo would be a good starting point and we can separately consider if there'd be benefits to having tighter integration with android-activity too.

I've just sent you an invite to the rust-mobile org.

With that I think you should be able to follow this guide for transferring your repo to the rust-mobile org: https://docs.github.com/en/repositories/creating-and-managing-repositories/transferring-a-repository

@matthunz
Copy link
Collaborator

Gotcha that makes sense to me, I just transferred it over!

You think it's better to rename the repo to android-intent to fit in a little better or nah?

@rib
Copy link
Author

rib commented Feb 15, 2023

Cool, welcome aboard!

Feel free to rename if you'd like to. Either way is fine I think - I don't think there's enough repos in the org yet to worry about fitting in with any particular naming convention.

I think sometimes the -rs suffix is just added when the repo name would clash with an existing non-Rust repo, but other times I expect some people add it simply to make it more apparent that a project is Rust based.

@MarijnS95
Copy link
Member

I think it's fine to drop the -rs suffix, it's not used in the package name either (and my personal opinion says that's ugly, too!). Don't forget to update the repository field in Cargo.toml.

Not sure what the best place is to do some code review besides opening an issue/PR, just consider rust-mobile/android-activity#63 (comment) and:

https://github.com/rust-mobile/android-intent-rs/blob/883144dbd112e2374cb5529f3ae57109f3530765/src/lib.rs#L11

Should have the backticks and brackets inverted to be a valid intradoc link. ndk_context should be an intradoc link too:

 /// Run 'f' with the current [`JNIEnv`] from [`ndk_context`].

@MarijnS95
Copy link
Member

Fwiw the webbrowser crate uses JNI to spawn an intent for opening the browser, that might benefit from using this utility crate (and make the dependencies on JNI and ndk-context implicit, dropping one more crate to have to update while we make changes to these).

@matthunz
Copy link
Collaborator

Just took up those suggestions for the docs @MarijnS95

I'm trying to push a commit though and it looks like I don't have access @rib it looks like I can't close issues either

@rib
Copy link
Author

rib commented Feb 15, 2023

Ah, I see. That should be fixed now I think.

Sorry about that @matthunz

@rib
Copy link
Author

rib commented Feb 15, 2023

@matthunz I've set you as an admin for the repo @matthunz (maximum privileges in github)

Previously it was only allowing org Owners to directly access the repo.

@matthunz
Copy link
Collaborator

That worked thanks!

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

3 participants