Re: [julia-users] How to manage local, proprietary packages
Keno's suggestion of using a custom METADATA is working well. The users only have to invoke Pkg.init(our local METADATA repo) once when first setting up their environment. Works well on Windows and Linux. One little issue: I thought it might be best to create my own local branch of METADATA and then merge changes to `metadata-v2` at origin into it. `Pkg.init` supports using this new branch via its second argument. However, `Pkg.update()` seems to always reset the working branch to `metadata-v2`, so I have been simply adding local commits to that branch, which still allows me to pull from origin. Not sure if this is something worth flagging as an issue, or if it is intentional. Also, created PR #8365 https://github.com/JuliaLang/julia/pull/8365, which attempts to improve the `Pkg.init` documentation. Thanks, --Peter On Friday, September 12, 2014 6:39:38 AM UTC-7, Peter Simon wrote: I will have a chance to play with this over the weekend, and will be happy to share any positive results. I will also see if I can improve the documentation. --Peter On Friday, September 12, 2014 3:27:13 AM UTC-7, Ivar Nesje wrote: I would not say that the documentation is wrong. It is just confusing and fails to mention the optional arguments. As we have standardized on ~/.julia, we should probably mention where we will end up creating files. If you think you got a grip of how the function works, you can suggest improvements to the docs here https://github.com/JuliaLang/julia/edit/master/doc/stdlib/pkg.rst. If not you should open an issue on github about the confusion so that we can add an appropriate milestone. Ivar kl. 23:07:40 UTC+2 torsdag 11. september 2014 skrev Peter Simon følgende: Ah! I had a look at the source code for `Pkg.init` and see that its default first argument is DEFAULT_META, which is initialized to git:// github.com/JuliaLang/METADATA.jl. So `Pkg.init` is used to point the package manager to the global METAFILE package directory. This is definitely not what I took away from the documentation, which reads: help? Pkg.init Base.Pkg.init() Initialize Pkg.dir() as a package directory. This will be done automatically when the JULIA_PKGDIR is not set and Pkg.dir() uses its default value. This is the same as the online docs. Since the documentation talks about `Pkg.dir()` I thought it was for establishing the local package repository location. Looks like the documentation wrong/out of date? Thanks, --Peter
Re: [julia-users] How to manage local, proprietary packages
Thanks for the report. We need someone to actually run Pkg in this mode to ensure it works. Resetting the branch is an issue worth reporting on github. I guess it was done when the METADATA format changed for 0.2, and users had to be moved to the new branch with the new format.
Re: [julia-users] How to manage local, proprietary packages
OK, I opened the issue regarding `Pkg.update()` always resetting to the default branch: #8370 https://github.com/JuliaLang/julia/issues/8370 On Monday, September 15, 2014 1:50:33 PM UTC-7, Ivar Nesje wrote: Thanks for the report. We need someone to actually run Pkg in this mode to ensure it works. Resetting the branch is an issue worth reporting on github. I guess it was done when the METADATA format changed for 0.2, and users had to be moved to the new branch with the new format.
Re: [julia-users] How to manage local, proprietary packages
I would not say that the documentation is wrong. It is just confusing and fails to mention the optional arguments. As we have standardized on ~/.julia, we should probably mention where we will end up creating files. If you think you got a grip of how the function works, you can suggest improvements to the docs here https://github.com/JuliaLang/julia/edit/master/doc/stdlib/pkg.rst. If not you should open an issue on github about the confusion so that we can add an appropriate milestone. Ivar kl. 23:07:40 UTC+2 torsdag 11. september 2014 skrev Peter Simon følgende: Ah! I had a look at the source code for `Pkg.init` and see that its default first argument is DEFAULT_META, which is initialized to git:// github.com/JuliaLang/METADATA.jl. So `Pkg.init` is used to point the package manager to the global METAFILE package directory. This is definitely not what I took away from the documentation, which reads: help? Pkg.init Base.Pkg.init() Initialize Pkg.dir() as a package directory. This will be done automatically when the JULIA_PKGDIR is not set and Pkg.dir() uses its default value. This is the same as the online docs. Since the documentation talks about `Pkg.dir()` I thought it was for establishing the local package repository location. Looks like the documentation wrong/out of date? Thanks, --Peter
Re: [julia-users] How to manage local, proprietary packages
I will have a chance to play with this over the weekend, and will be happy to share any positive results. I will also see if I can improve the documentation. --Peter On Friday, September 12, 2014 3:27:13 AM UTC-7, Ivar Nesje wrote: I would not say that the documentation is wrong. It is just confusing and fails to mention the optional arguments. As we have standardized on ~/.julia, we should probably mention where we will end up creating files. If you think you got a grip of how the function works, you can suggest improvements to the docs here https://github.com/JuliaLang/julia/edit/master/doc/stdlib/pkg.rst. If not you should open an issue on github about the confusion so that we can add an appropriate milestone. Ivar kl. 23:07:40 UTC+2 torsdag 11. september 2014 skrev Peter Simon følgende: Ah! I had a look at the source code for `Pkg.init` and see that its default first argument is DEFAULT_META, which is initialized to git:// github.com/JuliaLang/METADATA.jl. So `Pkg.init` is used to point the package manager to the global METAFILE package directory. This is definitely not what I took away from the documentation, which reads: help? Pkg.init Base.Pkg.init() Initialize Pkg.dir() as a package directory. This will be done automatically when the JULIA_PKGDIR is not set and Pkg.dir() uses its default value. This is the same as the online docs. Since the documentation talks about `Pkg.dir()` I thought it was for establishing the local package repository location. Looks like the documentation wrong/out of date? Thanks, --Peter
RE: [julia-users] How to manage local, proprietary packages
Ah! I had a look at the source code for `Pkg.init` and see that its default first argument is DEFAULT_META, which is initialized to git://github.com/JuliaLang/METADATA.jl. So `Pkg.init` is used to point the package manager to the global METAFILE package directory. This is definitely not what I took away from the documentation, which reads: help? Pkg.init Base.Pkg.init() Initialize Pkg.dir() as a package directory. This will be done automatically when the JULIA_PKGDIR is not set and Pkg.dir() uses its default value. This is the same as the online docs. Since the documentation talks about `Pkg.dir()` I thought it was for establishing the local package repository location. Looks like the documentation wrong/out of date? Thanks, --Peter