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

define the format of the gradle/maven fields: artifact_id, group_id, gradle, and maven_repository #87

Open
eighthave opened this issue Oct 2, 2020 · 2 comments
Assignees
Labels
question Further information is requested

Comments

@eighthave
Copy link
Contributor

For F-Droid, the fields artifact_id, group_id, gradle, and maven_repository are the most useful. But I'm not clear what their format is supposed to be. Are they defined as a single string entry? Or regexps? Or some a string others regexps? Here's my gut feeling about what they should be:

  • maven_repository should be a list of URL strings, each one being fully formed and directly usable
  • group_id should be a list of regexps to match Maven group identifiers
  • artifact_id should be a list of regexps to match Maven artifact identifiers
  • gradle I'm not sure what this is in relation to group_id and artifact_id, since it contains both. This could be a list of complete strings that can be used in combination with maven_repository to download example versions. It should include an entry for each known SDK artifact with a known working version. This can then be used for matching in build.gradle by stripping the version and maybe artifact identifer.

These fields are different than the code/network signatures since they can be used to both match declarations in build.gradle and also to download the actual artifacts. If they are regexps, then they cannot be used to download, only to match.

@pnu-s pnu-s added the question Further information is requested label Oct 3, 2020
@pnu-s
Copy link
Member

pnu-s commented Oct 3, 2020

Hi @eighthave

My first understanding was that they are all supposed to be strings, but I could be wrong

I think @U039b should be able to answer this :)

@eighthave
Copy link
Contributor Author

If group_id and artifact_id are both strings, then they need to be lists of strings since many tracking SDKs have more than one. The tricky part is that the actual SDK binary is a defined combination of group_id + artitfact_id, so each item in artifact_id list would not necessarily pair together with each item in the group_id list, and vice versa. That's why I thought it made sense to have group_id and _artifact_id be regexps and then have gradle be a list of entries that would have the correct pairing of group_id and artifact_id.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Development

No branches or pull requests

3 participants