v2.0.0-beta1
Pre-release
Pre-release
mosteo
released this
19 Oct 15:08
·
141 commits
to release/2.0
since this release
Caveat
This is a pre-release to get early feedback from the community on the new features. There is ongoing work on known bugs; please check these before reporting.
Major new features
alr install
allows to install indexed or local crates under a prefix with standardgprinstall
structure (under~/.alire
by default).- By default now, dependencies are downloaded once to a shared cache, and a unique build folder is used for each release configuration, also shared across workspaces.
alr test
by default now tests the local workspace.alr publish
will offer by default to create for you the PR against the community index.- New switches
alr publish --status|--cancel|--request-review
allow complete management of release submissions from the command line.
Check our log of user-visible changes for full details.
New Contributors
- @AJ-Ianozi made their first contribution in #1141
- @reznikmm made their first contribution in #1179
- @serock made their first contribution in #1173
- @0rzech made their first contribution in #1249
- @godunko made their first contribution in #1292
- @timlag1305 made their first contribution in #1265
- @mgrojo made their first contribution in #1313
- @corinthian13 made their first contribution in #1343
- @atalii made their first contribution in #1408
What's Changed
- Bump alr and index versions to 1.2 by @mosteo in #1025
- Alire.Utils.Switches: Disable No_Exception_Propagation warning by @Fabien-Chouteau in #1030
- Update user-changes.md by @Fabien-Chouteau in #1043
- Alr.Commands.Edit: update pointer to GNAT Studio release by @Fabien-Chouteau in #1045
- Alire.Crate.Configuration: disable style checks in generated code by @Fabien-Chouteau in #1047
- Update dependencies to indexed versions by @mosteo in #1046
- Alire.Utils.Switches: add -gnateE when debug info enabled by @Fabien-Chouteau in #1057
- Fix new warnings in GNAT 12.1 by @mosteo in #1071
- Keep
last_build_profile
in sync with profile requested in manifest by @mosteo in #1049 - Export build-switches to TOML by @mosteo in #1072
- Allow more than one conditional action by @mosteo in #1070
- Fix bracket in alr help show by @jquorning in #1073
- Fix host arch by @Fabien-Chouteau in #1092
- Lazy index loading (1/2) by @mosteo in #1085
- Lazy index loading (2/2) by @mosteo in #1086
- Add Savannah from GNU to trusted sites by @mosteo in #1095
- Fix generated pin to parent crate by @mosteo in #1096
- Remove more unneeded full index loading/external detections by @mosteo in #1097
- Prepend projects to GPR_PROJECT_PATH by @mosteo in #1098
- Add newline before [[depends-on]] and [[pins]] by @mosteo in #1108
- Use "*" for auto dependency when pinning to parent by @mosteo in #1107
- Remove obsolescent files by @mosteo in #1105
- Fix solver user interactions related to timeouts by @mosteo in #1103
- Fix gnat_external detection on
alr toolchain
by @mosteo in #1104 - Remove some ambiguities that led to warnings by @mosteo in #1113
- Show providers of an abstract crate by @mosteo in #1114
- Use last build profile on
alr run
by @mosteo in #1080 - Alire.Solver: Refactor types for simpler updates by @mosteo in #1110
- Speed-up search of incomplete solutions by @mosteo in #1116
- Alire.Utils.Switches: remove -gnateE when debug info enabled by @Fabien-Chouteau in #1120
- Document nested crates in Best Practices by @mosteo in #1123
- Minor improvements to solver progress output by @mosteo in #1117
- Fix end of quote by @jquorning in #1124
- Honor the --force option when publishing a crate (#1083) by @stcarrez in #1130
- Emit error for all unset configuration variables by @jquorning in #1132
- workaround for gnatcoll-core#64 / gnatstudio#128 by @AJ-Ianozi in #1141
- Reason for missing releases in solution by @mosteo in #1127
- Enhancements to actions documentation/testing by @mosteo in #1128
- Migrate workflows with explicit ubuntu-18.04 to latest by @mosteo in #1154
- Fixes for external detection in Fedora by @mosteo in #1142
- Solver: fix double count of complete solution by @mosteo in #1144
- Crate_Configuration: delay creation of temp files by @mosteo in #1145
- New switches for
alr build
to apply profile to all dependencies by @mosteo in #1119 - Fix Ada VSC plugin for Gitpod by @mosteo in #1158
alr test
: Allow binary releases to not contain project files by @mosteo in #1159- Add support for FreeBSD (#22) by @stcarrez in #1148
- Right trim tables by @jquorning in #1166
- Fix copy/paste error by @reznikmm in #1179
- Allow package removal by
apt
with --force by @mosteo in #1165 - Document steps to carry out during a release by @mosteo in #1162
- Remove too strict check for root manifest reload by @mosteo in #1168
alr show --dependents
to show which crates have another as a dependency by @mosteo in #1170- Fail tests if complain_on_error=False but no error happens by @mosteo in #1171
- Use release profile for
alr get --build
by @mosteo in #1169 - Fix grouping commands and simplify descriptions by @onox in #1180
- Support openSUSE and SUSE distributions by @serock in #1173
- Allow missing configuration values until build by @mosteo in #1167
- Implement Homebrew as the system deployer for macOS. by @simonjwright in #1185
- Fix alr help edit: GNAT Studio by @jquorning in #1199
- Build switches: unconditionally add -gnatW8 by @Fabien-Chouteau in #972
- Add source code recommendations to the policies by @reznikmm in #1202
- Encode wwstrings as utf8 by @mosteo in #1220
- alr publish: warn about -dev version by @Fabien-Chouteau in #1221
- alr-commands-init.adb: make alr init interactive by @Fabien-Chouteau in #1228
- Improve user experience with better manifest errors messages by @Fabien-Chouteau in #1229
- Fix crate config conflicts errors by @Fabien-Chouteau in #1208
- Use hyphens for action usage output by @0rzech in #1249
- Update testsuite readme by @0rzech in #1252
- Update getting-started.md by @Fabien-Chouteau in #1253
- Alr.Commands.Search: unify "search" and "search --crates" behavior by @Fabien-Chouteau in #1254
- Test alr from project dir by @0rzech in #1262
- Update msys2 installer by @Fabien-Chouteau in #1284
- Fix typo. by @godunko in #1292
- Workflow to have a binary nightly build by @mosteo in #1293
- Use XDG_CACHE_DIR for cache by @timlag1305 in #1265
- Disallow dots in identifiers by @0rzech in #1267
- Add
--alr
testsuite option by @0rzech in #1295 - Fix "Loading crate=0.0.0" log message by @mosteo in #1106
- Clearer error for misplaced manifest in index tree by @mosteo in #1213
- Fix error when showing an unavailable binary origin by @mosteo in #1304
- Specify the initial branch for test repos. by @simonjwright in #1244
- Check remote hosts during
alr index --check
by @mosteo in #1309 - alire_common.gpr: remove default host os to avoid mistakes on macOS by @Fabien-Chouteau in #1298
alr install
redux: Installation of binary crates by @mosteo in #1302- Fix the example for editor.cmd by @mgrojo in #1313
- Install a local crate by @mosteo in #1322
- Run testsuite on selfbuilds too by @mosteo in #1324
- Write Warn/Error traces to stderr by default by @mosteo in #1327
- Add Alire.Platforms.Folders.Home for FreeBSD by @JeremyGrosser in #1328
- Mention dev/build.sh and fix typos in readme by @0rzech in #1331
- Replace uses of GNAT CE with latest FSF from Alire by @mosteo in #1330
- Install indexed crates by @mosteo in #1335
- New
--nested
switch foralr show
by @mosteo in #1333 - More explicit identifier error message by @mosteo in #1341
- Don't enable color if TERM=dumb by @mosteo in #1342
- Update: "This file is generated" by @jquorning in #1338
- Update getting-started.md by @corinthian13 in #1343
- Avoid a crash when system pkg is detected twice by @mosteo in #1350
- Actually use the cache location for shared releases by @mosteo in #1349
- Unicode documentation by @mosteo in #1332
- Test the local release with
alr test
by @mosteo in #1356 - Docker driver for tests in default configuration by @mosteo in #1358
- Typed variants of Alire.Config.Edit.Set by @mosteo in #1353
- Switch to ghcr.io from dockerhub by @mosteo in #1360
- Fix nightly build by @mosteo in #1365
- Bump clic dependency by @mosteo in #1363
- Config option to globally share dependencies by @mosteo in #1367
- Remove
alr test --docker
by @mosteo in #1366 - Fix Wide_Wide_String wrongly interpreted as String by @mosteo in #1370
- Alr init fixes by @Fabien-Chouteau in #1372
- alire-platforms-current__windows.adb: add C++ include path for msys2 by @Fabien-Chouteau in #1375
- Fixes for compilation with gcc 13.1 by @mosteo in #1381
- "Compiler version" --> "Compiled with version" by @mosteo in #1388
- Don't raise on bad external detection from output by @mosteo in #1389
- Fix unpacking of tarfiles with softlinks to subdirectories by @mosteo in #1382
- Select default toolchain automatically instead of showing assistant on 1st run by @mosteo in #1391
- Homogenize terminology of session/working folder as workspace by @mosteo in #1390
- Fix Windows testsuite for self-built alr by @mosteo in #1387
- Use a python3 venv on Linux distros by @mosteo in #1396
- Indicators in solution diff about non-source dependencies by @mosteo in #1395
- Improvements to publishing with automatic PR creation by @mosteo in #1398
- Bits from the
alr share
feat to be kept by @mosteo in #1399 - Support MacPorts as external provider. by @simonjwright in #1404
- Change all mentions of 'catalog' to 'index' by @mosteo in #1405
alr publish --status
by @mosteo in #1400- dev: use env for executable shebangs by @atalii in #1408
- New
alr publish --cancel
by @mosteo in #1406 - New
alr publish --request-review
by @mosteo in #1409 - Fix nightly build by @mosteo in #1413
- Better random generation of temp file names by @mosteo in #1414
- Don't treat warnings as errors when no style checks by @mosteo in #1412
- New shared builds mechanism (mockup) by @mosteo in #1419
- Trivial safeguard in
Force_Delete
by @mosteo in #1422 - Refactor Alire.Shared into Alire.Toolchains by @mosteo in #1423
- Use build profile in build hash by @mosteo in #1425
- MacOS; export PATH variables for includes and libraries. by @simonjwright in #1420
- Replace
rsync
withGNATCOLL.VFS.Copy
by @mosteo in #1427 - Debug when folder deletion fails by @mosteo in #1426
- Fix conflicting file created during
alr install
by @mosteo in #1429 - Add GPR externals and env. vars. to build hash computation by @mosteo in #1428
- Add compiler version to build hash by @mosteo in #1442
- Refactor config builtins by @mosteo in #1431
- Add crate environment to build hash inputs by @mosteo in #1432
- Delay syncing shared build dir until the actual build by @mosteo in #1433
- Add crate config variables to build hash by @mosteo in #1434
- Generate crate config on demand for shared dependencies by @mosteo in #1435
- Reuse hashing mechanism to regen config in sandboxed mode by @mosteo in #1438
- Include hash of dependencies in build hash by @mosteo in #1439
- Add some hardcoded externals to hash input by @mosteo in #1440
- Run delayed post-fetch actions during build by @mosteo in #1441
- New
ALR_TRACEBACK_ENABLED
env. var. by @mosteo in #1450 - Use the same Find function in "show" as in "show --jekyll" by @mgrojo in #1452
- Remove old release-sharing mechanism remnants by @mosteo in #1451
- Fix bug in dependency traversal order by @mosteo in #1445
- Cosmetic change to binary origin image when unavailable by @mosteo in #1446
- Cleanup after shared releases impl by @mosteo in #1448
- Fix bugs for corner cases with shared dependencies by @mosteo in #1453
- Remove spurious -g causing excess rebuilds when building
alr
by @mosteo in #1454 - Print UTF-8 strings using
GNAT.IO
inAlr.Commands
subsystem by @mgrojo in #1458 - Fix location of default install prefix by @mosteo in #1461
- Omit global switches in subcommand-specific help by @mosteo in #1462
- Fix corner case related to git+file:// URLs in lockfiles by @mosteo in #1465
- Remove ".git" after cloning, with option to disable by @mosteo in #1463
Full Changelog: v1.2.0...v2.0.0-beta1