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

packageSourceUrl usage #1

Open
dtgm opened this issue Mar 1, 2016 · 1 comment
Open

packageSourceUrl usage #1

dtgm opened this issue Mar 1, 2016 · 1 comment

Comments

@dtgm
Copy link
Owner

dtgm commented Mar 1, 2016

packageSourceUrl is a new nuspec XML element required to be a URL in relation to nupkg's source, specifically the repository where files used to create the nupkg resides.

ferventcoder prefers packageSourceUrl to point to repo base URL, e.g.

https://github.com/ferventcoder/chocolatey-packages

Because if it changes, the link will be wrong
The lowest common denominator is to get folks to the repo, they should be able to get to the package files
Which brings up an important distinction - the link is for all the files, not just the nuspec
So technically it would be to the folder, not all the way to the nuspec. 😉
I'm happy with any appropriate link that gets me to the files

dtgm contests this:

  • unlikely for link path to change
  • user could still identify repo source from broken link and "t nuspec"

dtgm prefers packageSourceUrl to repo specific URL containing the source files, e.g.

https://github.com/ferventcoder/chocolatey-packages/tree/master/automatic/_output/foobar2000/1.3.6

However there are additional issues with this method as well.

  1. The above URL may not necessarily be the exact files used to build the nupkg since the URL simply points to the latest commit tree, in this case: https://github.com/ferventcoder/chocolatey-packages/tree/e4f26c9e3982768cc60a0cb12be09780c4e2f146/automatic/_output/foobar2000/1.3.6
  2. a. Chocolatey,org packages are immutable once approved. Once this happens there shouldn't be any additional commits made to the files in that specific version directory.
    b. Additionally, given git is a revision control system, it makes more sense for packages not to have a version subdir and track versions within git commit comments instead.
    c. https://github.com/ferventcoder/chocolatey-packages/tree/master/automatic/_output/foobar2000
  3. The files in tree/master/automatic/_output/foobar2000/1.3.6 are sourced from tree/master/automatic/foobar2000/

Options:

https://github.com/ferventcoder/chocolatey-packages
https://github.com/ferventcoder/chocolatey-packages/tree/master/automatic/foobar2000
https://github.com/ferventcoder/chocolatey-packages/tree/master/automatic/_output/foobar2000
https://github.com/ferventcoder/chocolatey-packages/tree/master/automatic/_output/foobar2000/1.3.6

@dtgm
Copy link
Owner Author

dtgm commented Mar 1, 2016

01 Mar 2016 03:40:38

Having it to the repo is a better lower maintenance solution. One doesn't have to think about external dependencies when moving source code around, pointing to the top level repo handles all aspects of the requirement and provides a guarantee that the link won't break by source code changes.

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

1 participant