|
1 | 1 | Pkg v1.13 Release Notes |
2 | 2 | ======================= |
3 | 3 |
|
4 | | -- Project.toml environments now support a `readonly` field to mark environments as read-only, preventing modifications. ([#4284]) |
5 | | -- `Pkg.build` now supports an `allow_reresolve` keyword argument to control whether the build process can re-resolve package versions, similar to the existing option for `Pkg.test`. ([#3329]) |
6 | | -- Packages are now automatically added to `[sources]` when they are added by url or devved. |
7 | | -- `update` now shows a helpful tip when trying to upgrade a specific package that can be upgraded but is held back because it's part of a less optimal resolver solution ([#4266]) |
8 | | -- `Pkg.status` now displays yanked packages with a `[yanked]` indicator and shows a warning when yanked packages are present. `Pkg.resolve` errors also display warnings about yanked packages that are not resolvable. ([#4310]) |
9 | | -- Added `pkg> compat --current` command to automatically populate missing compat entries with the currently resolved package versions. Use `pkg> compat --current` for all packages or `pkg> compat Foo --current` for specific packages. ([#3266]) |
10 | | -- Added `Pkg.precompile() do` block syntax to delay autoprecompilation until after multiple operations complete, improving efficiency when performing several environment changes. ([#4262]) |
11 | | -- Added `Pkg.autoprecompilation_enabled(state::Bool)` to globally enable or disable automatic precompilation for Pkg operations. ([#4262]) |
| 4 | +- Project.toml environments now support a `readonly` field to mark environments as read-only, preventing modifications. |
| 5 | + ([#4284]) |
| 6 | +- `Pkg.build` now supports an `allow_reresolve` keyword argument to control whether the build process can re-resolve |
| 7 | + package versions, similar to the existing option for `Pkg.test`. ([#3329]) |
| 8 | +- Packages are now automatically added to `[sources]` when they are added by url or devved. ([#4225]) |
| 9 | +- `update` now shows a helpful tip when trying to upgrade a specific package that can be upgraded but is held back |
| 10 | + because it's part of a less optimal resolver solution ([#4266]) |
| 11 | +- `Pkg.status` now displays yanked packages with a `[yanked]` indicator and shows a warning when yanked packages are |
| 12 | + present. `Pkg.resolve` errors also display warnings about yanked packages that are not resolvable. ([#4310]) |
| 13 | +- Added `pkg> compat --current` command to automatically populate missing compat entries with the currently resolved |
| 14 | + package versions. Use `pkg> compat --current` for all packages or `pkg> compat Foo --current` for specific packages. |
| 15 | + ([#3266]) |
| 16 | +- Added `Pkg.precompile() do` block syntax to delay autoprecompilation until after multiple operations complete, |
| 17 | + improving efficiency when performing several environment changes. ([#4262]) |
| 18 | +- Added `Pkg.autoprecompilation_enabled(state::Bool)` to globally enable or disable automatic precompilation for Pkg |
| 19 | + operations. ([#4262]) |
| 20 | +- Implemented atomic TOML writes to prevent data corruption when Pkg operations are interrupted or multiple processes |
| 21 | + write simultaneously. All TOML files are now written atomically using temporary files and atomic moves. ([#4293]) |
| 22 | +- Implemented lazy loading for RegistryInstance to significantly improve startup performance for operations that don't |
| 23 | + require full registry data. This reduces `Pkg.instantiate()` time by approximately 60% in many cases. ([#4304]) |
| 24 | +- Added support for directly adding git submodules via `Pkg.add(path="/path/to/git-submodule.jl")`. ([#3344]) |
| 25 | +- Enhanced REPL user experience by automatically detecting and stripping accidental leading `]` characters in commands. |
| 26 | + ([#3122]) |
| 27 | +- Improved tip messages to show REPL mode syntax when operating in REPL mode. ([#3854]) |
| 28 | +- Enhanced error handling with more descriptive error messages when operations fail on empty URLs during git repository |
| 29 | + installation or registry discovery. ([#4282]) |
| 30 | +- Improved error messages for invalid compat entries to provide better guidance for fixing them. ([#4302]) |
| 31 | +- Added warnings when attempting to add local paths that contain dirty git repositories. ([#4309]) |
| 32 | +- Enhanced package parsing to better handle complex URLs and paths with branch/tag/subdir specifiers. ([#4299]) |
| 33 | +- Improved artifact download behavior to only attempt downloads from the Pkg server when the package is registered on |
| 34 | + that server's registries. ([#4297]) |
| 35 | +- Added comprehensive documentation page about depots, including depot layouts and configuration. ([#2245]) |
| 36 | +- Enhanced error handling for packages missing from registries or manifests with more informative messages. ([#4303]) |
| 37 | +- Added more robust error handling when packages have revisions but no source information. ([#4311]) |
| 38 | +- Enhanced registry status reporting with more detailed information. ([#4300]) |
| 39 | +- Fixed various edge cases in package resolution and manifest handling. ([#4307], [#4308], [#4312]) |
| 40 | +- Improved handling of path separators across different operating systems. ([#4305]) |
| 41 | +- Added better error messages when accessing private PackageSpec.repo field. ([#4170]) |
12 | 42 |
|
13 | 43 | Pkg v1.12 Release Notes |
14 | 44 | ======================= |
15 | 45 |
|
16 | 46 | - Pkg now has support for "workspaces" which is a way to resolve multiple project files into a single manifest. |
17 | | - The functions `Pkg.status`, `Pkg.why`, `Pkg.instantiate`, `Pkg.precompile` (and their REPL variants) have been updated |
18 | | - to take a `workspace` option. Read more about this feature in the manual about the TOML-files. ([#3841]) |
| 47 | + The functions `Pkg.status`, `Pkg.why`, `Pkg.instantiate`, `Pkg.precompile` (and their REPL variants) have been |
| 48 | + updated to take a `workspace` option, with fixes for workspace path collection and package resolution in workspace |
| 49 | + environments. Read more about this feature in the manual about the TOML-files. ([#3841], [#4229]) |
19 | 50 | - Pkg now supports "apps" which are Julia packages that can be run directly from the terminal after installation. |
20 | | - Apps can be defined in a package's Project.toml and installed via Pkg. ([#3772]) |
21 | | -- `status` now shows when different versions/sources of dependencies are loaded than that which is expected by the manifest ([#4109]) |
| 51 | + Apps can be defined in a package's Project.toml and installed via Pkg. Apps now support multiple apps per package |
| 52 | + via submodules, allowing packages to define multiple command-line applications, with enhanced functionality including |
| 53 | + update capabilities and better handling of already installed apps. ([#3772], [#4277], [#4263]) |
| 54 | +- `status` now shows when different versions/sources of dependencies are loaded than that which is expected by the |
| 55 | + manifest ([#4109]) |
22 | 56 | - When adding or developing a package that exists in the `[weakdeps]` section, it is now automatically removed from |
23 | 57 | weak dependencies and added as a regular dependency. ([#3865]) |
24 | | -- Enhanced fuzzy matching algorithm for package name suggestions. |
25 | | -- The Pkg REPL now supports GitHub pull request URLs, allowing direct package installation from PRs via `pkg> add https://github.com/Org/Package.jl/pull/123` ([#4295]) |
| 58 | +- Enhanced fuzzy matching algorithm for package name suggestions with improved multi-factor scoring for better package |
| 59 | + name suggestions. ([#4287]) |
| 60 | +- The Pkg REPL now supports GitHub pull request URLs, allowing direct package installation from PRs via |
| 61 | + `pkg> add https://github.com/Org/Package.jl/pull/123` ([#4295]) |
| 62 | +- Improved git repository cloning performance by changing from `refs/*` to `refs/heads/*` to speed up operations on |
| 63 | + repositories with many branches. ([#2330]) |
| 64 | +- Improved REPL command parsing to handle leading whitespace with comma-separated packages. ([#4274]) |
| 65 | +- Improved error messages when providing incorrect package UUIDs. ([#4270]) |
| 66 | +- Added confirmation prompts before removing compat entries to prevent accidental deletions. ([#4254]) |
26 | 67 |
|
27 | 68 | Pkg v1.11 Release Notes |
28 | 69 | ======================= |
@@ -131,3 +172,35 @@ Pkg v1.7 Release Notes |
131 | 172 | [#3002]: https://github.com/JuliaLang/Pkg.jl/issues/3002 |
132 | 173 | [#3021]: https://github.com/JuliaLang/Pkg.jl/issues/3021 |
133 | 174 | [#3266]: https://github.com/JuliaLang/Pkg.jl/pull/3266 |
| 175 | +[#4266]: https://github.com/JuliaLang/Pkg.jl/pull/4266 |
| 176 | +[#4310]: https://github.com/JuliaLang/Pkg.jl/pull/4310 |
| 177 | +[#3329]: https://github.com/JuliaLang/Pkg.jl/pull/3329 |
| 178 | +[#4262]: https://github.com/JuliaLang/Pkg.jl/pull/4262 |
| 179 | +[#4293]: https://github.com/JuliaLang/Pkg.jl/pull/4293 |
| 180 | +[#4304]: https://github.com/JuliaLang/Pkg.jl/pull/4304 |
| 181 | +[#3344]: https://github.com/JuliaLang/Pkg.jl/pull/3344 |
| 182 | +[#2330]: https://github.com/JuliaLang/Pkg.jl/pull/2330 |
| 183 | +[#3122]: https://github.com/JuliaLang/Pkg.jl/pull/3122 |
| 184 | +[#3854]: https://github.com/JuliaLang/Pkg.jl/pull/3854 |
| 185 | +[#4282]: https://github.com/JuliaLang/Pkg.jl/pull/4282 |
| 186 | +[#4302]: https://github.com/JuliaLang/Pkg.jl/pull/4302 |
| 187 | +[#4309]: https://github.com/JuliaLang/Pkg.jl/pull/4309 |
| 188 | +[#4299]: https://github.com/JuliaLang/Pkg.jl/pull/4299 |
| 189 | +[#4295]: https://github.com/JuliaLang/Pkg.jl/pull/4295 |
| 190 | +[#4277]: https://github.com/JuliaLang/Pkg.jl/pull/4277 |
| 191 | +[#4297]: https://github.com/JuliaLang/Pkg.jl/pull/4297 |
| 192 | +[#2245]: https://github.com/JuliaLang/Pkg.jl/pull/2245 |
| 193 | +[#4303]: https://github.com/JuliaLang/Pkg.jl/pull/4303 |
| 194 | +[#4254]: https://github.com/JuliaLang/Pkg.jl/pull/4254 |
| 195 | +[#4270]: https://github.com/JuliaLang/Pkg.jl/pull/4270 |
| 196 | +[#4263]: https://github.com/JuliaLang/Pkg.jl/pull/4263 |
| 197 | +[#4229]: https://github.com/JuliaLang/Pkg.jl/pull/4229 |
| 198 | +[#4274]: https://github.com/JuliaLang/Pkg.jl/pull/4274 |
| 199 | +[#4311]: https://github.com/JuliaLang/Pkg.jl/pull/4311 |
| 200 | +[#4300]: https://github.com/JuliaLang/Pkg.jl/pull/4300 |
| 201 | +[#4307]: https://github.com/JuliaLang/Pkg.jl/pull/4307 |
| 202 | +[#4308]: https://github.com/JuliaLang/Pkg.jl/pull/4308 |
| 203 | +[#4312]: https://github.com/JuliaLang/Pkg.jl/pull/4312 |
| 204 | +[#4305]: https://github.com/JuliaLang/Pkg.jl/pull/4305 |
| 205 | +[#4170]: https://github.com/JuliaLang/Pkg.jl/pull/4170 |
| 206 | +[#4287]: https://github.com/JuliaLang/Pkg.jl/pull/4287 |
0 commit comments