-
Notifications
You must be signed in to change notification settings - Fork 20
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
Support packages in subdirs #157
Comments
I think it would be good to standardize it. Tools like Documenter etc. look for tags with specific formats, cf. JuliaRegistries/Registrator.jl#230 (comment) and below. |
Might as well choose |
Isn't the registry information available? |
This is kind of sufficient, but we're currently not using the issue comments that trigger TagBot as an actual source of information so when TagBot runs it still needs to "discover" the Julia packages in the repo. If we changed the trigger comments to contain the UUID of the package it was triggering for, then yes we'd immediately know which package we should run for. But we previously declined to do that because of security concerns. I feel like if we only used a package UUID, there's no room for exploitation, but that needs some more thought. |
I like the idea of not using the issue comment as a source of information. You could iterate over all packages in the General registry and look until you find one where the |
Forgot to address this: I personally would really prefer to only apply this format on subdir packages, I dislike the idea of all my tags no longer being "standard" semver format (on repos where a single Julia package is the only content). But if there's consensus otherwise, then I don't mind I suppose.
I really like this strategy, it basically inverts my thought process on how it should work but I think it ought to work really well. Coincidentally I'm working on #173 this week, perhaps I can sneak in some time to address this once I've re-familiarized myself with the code. |
Oh, I should clarify. I meant that we would choose |
I don't really see the point in having |
Just to be sure, would this still work if there are two packages in the same repo, in different subdirs? (Eg SnoopCompile and SnoopCompileCore) |
I guess you would:
|
PR implementing individual subdir package support: #252 |
Starting from Julia 1.5, packages are no longer required to be rooted at the Git repo root.
A couple of things to consider here:
Currently we just look for Project.toml or JuliaProject.toml at the repo root, but now we need to look everywhere for those files.
We can still do that without a Git clone by looking through the Git tree:
Then we need to check for new versions and make tags for all of these projects.
Conversion of Git tree SHA to commit SHA will have to change, because we're currently looking at each commit's tree SHA which is computed from the root. We'll have to look through the tree for each commit:
We also need to name tags differently if there are multiple packages, maybe we can just expose a config option for this. We can probably do some nifty templating in the default to get
vVERSION
for packages at the repo root andPACKAGE-vVERSION
otherwise.The text was updated successfully, but these errors were encountered: