Development repository for Julia's package manager, shipped with Julia v1.0 and above.
Documentation | Build Status |
---|---|
If you want to develop this package do the following steps:
- Make a fork and then clone the repo locally on your computer
- Change the current directory to the Pkg repo you just cloned and start julia with
julia --project
. import Pkg
will now load the files in the cloned repo instead of the Pkg stdlib.- To test your changes, simply do
Pkg.test()
.
If you need to build Julia from source with a Git checkout of Pkg, then instead use make DEPS_GIT=Pkg
when building Julia. The Pkg
repo is in stdlib/Pkg
, and created initially with a detached HEAD
. If you're doing this from a pre-existing Julia repository, you may need to make clean
beforehand.
If you need to build Julia from source with Git checkouts of two or more stdlibs, please see the instructions in the Building Julia from source with a Git checkout of a stdlib
section of the doc/src/devdocs/build/build.md
file within the Julia devdocs.
This repository uses pre-commit hooks to automatically check and format code before commits. The hooks perform various checks including:
- File size and case conflict validation
- YAML syntax checking
- Trailing whitespace removal and line ending fixes
- Julia code formatting with Runic
To install and use the pre-commit hooks:
- Install pre-commit:
pip install pre-commit
(or use your system's package manager) - Install the hooks:
pre-commit install
from the root of the repository - Run on all files:
pre-commit run --all-files
from the root of the repository
Once installed, the hooks will run automatically on each commit. You can also run them manually anytime with pre-commit run
.
To check which commit julia master uses see JuliaLang/julia/stdlib/Pkg.version.
To open a PR to update this to the latest commit the JuliaPackaging/BumpStdlibs.jl github actions bot is recommended.