]>
_ Git - alire.git/log
Fabien Chouteau [Fri, 18 Nov 2022 08:55:04 +0000 (09:55 +0100)]
Fix crate config conflicts errors (#1208)
* Alire.Properties.Configurations: print boolean values in lowercase
To match casing of TOML files where they come from.
* Alire.Crate_Configuration: fix, improve, and test value conflicts
- TOML value comparison was incorrect (use Equals function now)
- The "set by" info was incorrect
- Error message now show the conflicting values
Fabien Chouteau [Thu, 17 Nov 2022 11:38:45 +0000 (12:38 +0100)]
Improve user experience with better manifest errors messages (#1229)
* Improve user experience with better manifest errors messages
This is patch introduces suggestions in various error messages
from the manifest parser. A potential suggestion is made using
edit distance computing from a list of possible values. If the
quality is not deemed good enough, the full list of values is
printed.
* Temp fix GNAT version to check error on macOS
* Revert "Temp fix GNAT version to check error on macOS"
This reverts commit
5da86ba29a013940cb8469ae7f07b8114e488714 .
* Try with fixed macOS 10.15 version
Fabien Chouteau [Thu, 27 Oct 2022 08:39:26 +0000 (10:39 +0200)]
alr-commands-init.adb: make alr init interactive (#1228)
Alr init will now queries the user for information such as license,
description, tags, etc.
Non-interactive usage is still possible using existing switches and `-n`.
Fabien Chouteau [Tue, 25 Oct 2022 08:13:23 +0000 (10:13 +0200)]
alr publish: warn about -dev version (#1221)
* testsuite: simplify some alr publish tests
* alr publish: warn about -dev version
Alejandro R Mosteo [Mon, 24 Oct 2022 15:19:42 +0000 (17:19 +0200)]
Encode wwstrings as utf8 (#1220)
* Encode wwstrings as utf8
* Fixes for raw byte reading in ada-toml
* Further fixes related to UTF-8 encodings
* Sync pins with submodules
* Revert unneeded changes in Simple_Logging
Since GNAT.IO is safe to use with utf8
Co-authored-by: GHA <actions@github.com>
Maxim Reznik [Wed, 5 Oct 2022 09:35:55 +0000 (12:35 +0300)]
Add source code recommendations to the policies (#1202)
about UTF-8 encoding and a URL to Ada Style Guide.
Refs #919.
Fabien Chouteau [Thu, 29 Sep 2022 16:09:48 +0000 (18:09 +0200)]
Build switches: unconditionally add -gnatW8 (#972)
* Build switches: unconditionally add -gnatW8
* Update user-changes.md
Jesper Quorning [Mon, 26 Sep 2022 11:28:43 +0000 (13:28 +0200)]
Fix alr help edit: GNAT Studio (#1199)
Simon Wright [Fri, 23 Sep 2022 12:14:13 +0000 (13:14 +0100)]
Implement Homebrew as the system deployer for macOS. (#1185)
* Implement Homebrew as the system deployer for macOS.
* src/alire/alire-origins-deployers-system-homebrew.adb: new.
* src/alire/alire-origins-deployers-system-homebrew.ads: new.
* src/alire/alire-origins-deployers-system.adb (Platform_Deployer):
When the platform distro manager is Homebrew, return Homebrew.Deployer.
* src/alire/alire-platforms.ads (Distributions): include macOS.
(Package_Managers): add Homebrew.
(Distro_Manager): for macOS, use Homebrew.
* src/alire/alire-utils-tools.adb (System_Package_For_Tool): treat MacOS
like other distributions.
* src/alire/os_macos/alire-platforms-current__macos.adb
(Detected_Distribution): return Platforms.MacOS.
* testsuite/drivers/helpers.py (on_macos()): new.
(distribution()): return 'MACOS' if on_macos() is True.
; Squashed commit of the following:
; commit
0110299ceb66f58cd4793fd78a69fc5b100b4ccf
; Author: Simon Wright <simon@pushface.org>
; Date: Fri Sep 9 17:45:04 2022 +0100
; Restore test to correct sense.
; commit
d396b6b54a73bbbfd59071539bf6268bccce3cf0
; Author: Simon Wright <simon@pushface.org>
; Date: Fri Sep 9 17:34:54 2022 +0100
; Replace assertions in Homebrew deployer with exceptions
; commit
d7603110b9543bdaac9516fa844599e87fac70aa
; Author: Simon Wright <simon@pushface.org>
; Date: Mon Sep 5 14:14:03 2022 +0100
; Recognise macOS as a distribution.
; * testsuite/drivers/helpers.py (on_macos()): new.
; (distribution()): check on_macos(). Return 'MACOS' if true.
; commit
8703acfeb8fdf336d862cefc16706eac5d3f0758
; Author: Simon Wright <simon@pushface.org>
; Date: Sun Sep 4 17:33:13 2022 +0100
; Use 'brew info' to get available, installed versions.
; commit
8b22b904e19d64fecb89233e6527c2faf655d982
; Author: Simon Wright <simon@pushface.org>
; Date: Wed Aug 31 15:54:51 2022 +0100
; Continuing.
; commit
a9821ed9a605e30b5699a49df6fffd11224ab931
; Author: Simon Wright <simon@pushface.org>
; Date: Mon Aug 22 17:09:48 2022 +0100
; First changes for macOS Homebrew.
* Implement Homebrew for MacOS: response to comments on PR#1185
* .github/workflows/ci-macos.yml (Run test script): renamed to
"Run test script (without Homebrew)".
(Run test script (with Homebrew)): added 'eval $(brew shellenv)' before
running the test script, so that HOMEBREW_PREFIX gets defined.
* src/alire/alire-origins-deployers-system-homebrew.adb
(Homebrew_Prefix, Homebrew_Present): removed.
(Get_Info): named the declare block. Removed commented-out exception
handler.
(Already_Installed): use Get_Info's returned Installed_Version's length
to determine the result.
(Detect): Get_Version_From_String uses Semantic_Versioning.Parse.
Don't check for Homebrew_Present, it has to be or we wouldn't be
called.
* src/alire/alire-platforms.ads (Distributions): rename MacOS to Homebrew.
(Distro_Manager): likewise.
* src/alire/alire-utils-tools.adb (System_Package_For_Tool): MacOS (in
'case Distribution)' changed to Homebrew.
* src/alire/os_macos/alire-platforms-current__macos.adb
(Homebrew_Prefix): new, gets the environment variable "HOMEBREW_PREFIX".
(Homebrew_Present): new, true if the environment variable is present.
(Detected_Distribution): checks Homebrew_Present, returns Homebrew
or Distro_Unknown accordingly.
(Distribution_Root): returns Homebrew_Prefix if present, otherwise "/".
* testsuite/drivers/helpers.py (distribution()): if on macOS, return
HOMEBREW if HOMEBREW_PREFIX is found, DISTRO_UNKNOWN otherwise.
* Remove improper pragma in response to comment on #1185
* src/alire/alire-origins-deployers-system-homebrew.adb: removed
the innefective pragma Warnings (Off).
* Merging with openSUSE changes in #1173.
* src/alire/alire-origins-deployers-system.adb: added Homebrew option.
* src/alire/alire-platforms.ads: likewise.
* src/alire/alire-utils-tools.adb: likewise.
Co-authored-by: John Serock <1468970+serock@users.noreply.github.com>
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Thu, 22 Sep 2022 10:29:52 +0000 (12:29 +0200)]
Allow missing configuration values until build (#1167)
* Allow missing configuration values until build
* Do not generate files on incomplete config
* Crate_Configuration: refactor .Map to .Var_Map
Co-authored-by: GHA <actions@github.com>
John Serock [Wed, 21 Sep 2022 16:23:31 +0000 (12:23 -0400)]
Support openSUSE and SUSE distributions (#1173)
* Support zypper package manager
* Support openSUSE and SUSE distributions
onox [Mon, 19 Sep 2022 14:07:12 +0000 (16:07 +0200)]
Help: reorganize commands and simplify descriptions (#1180)
* Move some commands to Crate or Internal group
Fixes: #1138
* Use imperative mood and simplify descriptions of several commands
* Rename group "Internal" to "Testing" and adjust label of command "show"
Alejandro R Mosteo [Wed, 14 Sep 2022 08:15:26 +0000 (10:15 +0200)]
Use release build when `alr get --build`ing. (#1169)
This will also make `alr test` to use release builds, which is what we want as
submitted crates are tested in release mode.
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 14 Sep 2022 07:54:44 +0000 (09:54 +0200)]
Fail test if complain_on_error=False but no error (#1171)
This removes the need to assert that the expected failure indeed happened, and
hardens tests against situations where is unclear if an error should happen.
Alejandro R Mosteo [Wed, 14 Sep 2022 07:53:53 +0000 (09:53 +0200)]
`alr show --dependents` to show which crates have another as a dependency (#1170)
* `alr show --dependents` to show direct dependencies
Show all crates that directly depend on a given release
* Allow showing indirect dependents too
* Improved --dependents switch
* Improved ordering
* New test for `alr with --dependents`
* Add user visible changes entry
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 14 Sep 2022 07:49:45 +0000 (09:49 +0200)]
Remove too strict check for root manifest reload (#1168)
* Remove too strict check for root manifest reload
Since we are using absolute paths all around, that check is no longer
necessary.
Add a test for this situation, which should work besides the warning.
* Self-review fixes
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 13 Sep 2022 12:10:04 +0000 (14:10 +0200)]
Document steps to carry out during a release (#1162)
* Document steps to carry out during a release
Memory flaky
* Add index.toml step
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 13 Sep 2022 12:08:34 +0000 (14:08 +0200)]
Allow package removal by `apt` with --force (#1165)
* Allow package removal by apt with --force
* Propagate --force during `alr test`
* New test for default `alr test` get&build
* Self-review fixes
* Relax syntax in prototype for older python
Maxim Reznik [Mon, 12 Sep 2022 10:51:22 +0000 (13:51 +0300)]
Fix copy/paste error (#1179)
GHA [Fri, 26 Aug 2022 15:06:55 +0000 (17:06 +0200)]
Bump index version to 1.2.1
Jesper Quorning [Tue, 30 Aug 2022 08:12:44 +0000 (10:12 +0200)]
Right trim tables (#1166)
* Right trim tables
* Adapt testcases
Stephane Carrez [Fri, 26 Aug 2022 12:51:49 +0000 (14:51 +0200)]
Add support for FreeBSD (#1148)
* Add support for FreeBSD (#22)
* update GNAT project to recognize -XOS=freebsd and configure accordingly
* add FreeBSD as a valid operating system
* add AMD64 as an alias for X86_64 because uname -m returns amd64 on FreeBSD
* add platform specific implementation for FreeBSD
To build on FreeBSD, we should use
gprbuild -j0 -P alr_env -XOS=freebsd
* Fixes requested during code review
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Fri, 26 Aug 2022 08:34:05 +0000 (10:34 +0200)]
`alr test`: Allow binary releases to not contain project files (#1159)
* Allow binary releases to not contain project files
* Fix logic and output to test log instead of stdout
Alejandro R Mosteo [Thu, 25 Aug 2022 15:26:47 +0000 (17:26 +0200)]
Remove version from Ada VSC plugin (#1158)
Alejandro R Mosteo [Thu, 25 Aug 2022 12:32:36 +0000 (14:32 +0200)]
New switches for `alr build` to apply profile to all dependencies (#1119)
* New switches to recursively apply build profiles
* Test for new switches
* Document user-visible changes
* refactor how last profiles are stored
Now we keep track of all dependencies' profiles, so any individual change can
be detected and config files regenerated accordingly.
* Move to --profiles single switch
* Remove aliases
* Update documentation on user changes
* Self-review tweaks
* Code review fixes
* New test for improper list of profiles
* Fix `alr help build` output s/:/=/g
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 24 Aug 2022 08:12:55 +0000 (10:12 +0200)]
Crate_Configuration: delay creation of temp files (#1145)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 24 Aug 2022 08:12:32 +0000 (10:12 +0200)]
Solver: fix double count of complete solution (#1144)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 24 Aug 2022 08:10:43 +0000 (10:10 +0200)]
Fixes for external detections in Fedora (#1142)
Ignore package name casing and fix regular expression
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 23 Aug 2022 10:28:08 +0000 (12:28 +0200)]
Migrate explicit ubuntu-18.04 to latest (#1154)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 23 Aug 2022 10:26:46 +0000 (12:26 +0200)]
Enhancements to actions documentation/testing (#1128)
* New test for 'directory' property of actions
* Improvements to actions docs in catalog spec
* Code review fix
* Bump submodule
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Thu, 18 Aug 2022 11:05:05 +0000 (13:05 +0200)]
Reason for missing releases in solution (#1127)
* Store/display reason for crate missing in solution
* Add missing reasons to tests
* New test checking missing reasons
Although other tests already exercise the new feature, this way we have an
explicit one in case the others changed at some point.
* s/unindexed/unknown/
Co-authored-by: GHA <actions@github.com>
A.J. Ianozi [Thu, 18 Aug 2022 10:58:56 +0000 (06:58 -0400)]
workaround for gnatcoll-core#64 / gnatstudio#128 (#1141)
This is a workaround for issue AdaCore/gnatstudio#128 and AdaCore/gnatcoll-core#64 where GNAT Studio fails to open recently-updated or newly-created alire files. Breaking the Ada_Compiler_Switches up into two statements resloves this problem.
Jesper Quorning [Thu, 18 Aug 2022 10:31:37 +0000 (12:31 +0200)]
Emit error for all unset configuration variables (#1132)
* Emit error for all unset configuration variables
* Add test using config_index
* Move index to test directory
* Move test to config
Stephane Carrez [Wed, 3 Aug 2022 16:16:18 +0000 (18:16 +0200)]
Allow publishing to complete for an existing release with --force (#1130)
* Honor the --force option when publishing a crate (#1083)
When publishing and checking for existing crate with same version,
if the crate already exist and the force option is used,
emit a warning message and continue.
* Use Recoverable_Error to report that a crate version already exists
Jesper Quorning [Sun, 31 Jul 2022 08:54:11 +0000 (10:54 +0200)]
Alire.Crate_Configuration: Fix end of quote (#1124)
Alejandro R Mosteo [Sun, 31 Jul 2022 08:53:18 +0000 (10:53 +0200)]
Minor improvements to solver progress output (#1117)
Remove duplicate messages, and add progress while we are still in the space of
complete solutions (as nothing was reported if no complete solution was found).
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Sun, 31 Jul 2022 08:45:06 +0000 (10:45 +0200)]
Document nested crates in Best Practices (#1123)
Co-authored-by: GHA <actions@github.com>
Fabien Chouteau [Fri, 29 Jul 2022 08:16:16 +0000 (10:16 +0200)]
Alire.Utils.Switches: remove -gnateE when debug info enabled (#1120)
The switch is not compatible with embedded targets/run-times.
See #1118 .
Alejandro R Mosteo [Wed, 27 Jul 2022 14:03:53 +0000 (16:03 +0200)]
Speed-up search of incomplete solutions (#1116)
* Speed-up search of incomplete solutions
We now avoid earlier the solving of a dependency which has been already seen in
the search branch.
We also had a bug that was duplicating the search space with every extra
dependency. That meant an exponential increase in time for every extra
dependency. Fortunately, this only affected incomplete solutions.
In practice there are no visible changes as the solutions found are ultimately
the same.
* Fixes found by GHA
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 27 Jul 2022 10:23:30 +0000 (12:23 +0200)]
Alire.Solver: Refactor types for simpler updates (#1110)
Alejandro R Mosteo [Wed, 27 Jul 2022 09:10:06 +0000 (11:10 +0200)]
Use last build profile on `alr run` (#1080)
* Use last build profile on `alr run`
* user-changes.md: explain new behavior
Alejandro R Mosteo [Wed, 27 Jul 2022 09:09:44 +0000 (11:09 +0200)]
Show providers of an abstract crate (#1114)
* Show providers of abstract crates in `alr show`
* Test for the new output
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 27 Jul 2022 09:09:18 +0000 (11:09 +0200)]
Remove some ambiguities that led to warnings (#1113)
Thanks to Simon J. Wright
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Mon, 25 Jul 2022 08:15:15 +0000 (10:15 +0200)]
Fix gnat_external detection on `alr toolchain` (#1104)
* Fix gnat_external detection on `alr toolchain`
* Clarify what's going on with test
Alejandro R Mosteo [Mon, 25 Jul 2022 07:46:28 +0000 (09:46 +0200)]
Fix solver interactions on 'Always' timeout (#1103)
Alejandro R Mosteo [Mon, 25 Jul 2022 07:35:42 +0000 (09:35 +0200)]
Remove obsolescent files (#1105)
Alejandro R Mosteo [Mon, 25 Jul 2022 07:35:22 +0000 (09:35 +0200)]
Use "*" for auto dependency when pinning to parent (#1107)
This is probably what the user wants 99% of the time.
Alejandro R Mosteo [Mon, 25 Jul 2022 07:34:55 +0000 (09:34 +0200)]
Add newline before [[depends-on]] and [[pins]] (#1108)
When these are automatically added by `alr with`/`alr pin`.
This is more in line with what we see in manually edited manifests.
Alejandro R Mosteo [Fri, 22 Jul 2022 08:28:11 +0000 (10:28 +0200)]
Prepend projects to GPR_PROJECT_PATH (#1098)
We were appending which could cause mix-ups when there was another compiler in
the user path (as we are already prepending in the case of PATH)
Alejandro R Mosteo [Fri, 22 Jul 2022 08:27:40 +0000 (10:27 +0200)]
Remove more unneeded full index loading/external detections (#1097)
* Remove some unneeded external detection
* Fix bug in versions detection pattern matcher
* Remove some instances of full index loading
And some unnecessary instances of external detection
Alejandro R Mosteo [Fri, 22 Jul 2022 08:16:49 +0000 (10:16 +0200)]
Fix generated pin to parent crate (#1096)
* Replace buggy relative path in GNATCOLL
* New test for relative pins to parent crate
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Thu, 21 Jul 2022 15:51:58 +0000 (17:51 +0200)]
Add Savannah from GNU to trusted sites (#1095)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 20 Jul 2022 10:52:54 +0000 (12:52 +0200)]
Lazy index loading (2/2) (#1086)
* Index queries autoload crates if required
* Avoid infinite recursion when no indexes configured
* Remove references to Requires_Full_Index
* Fixed issues pending "provides" redo
* Generate and use a providers cache file
This cache file, which is common to all indexes, tells us in advance which
crates have to be loaded because they provide some another crate. E.g., if
"gnat" is requested to be loaded, we need to load all gnat_native, and
x-compilers.
If this file doesn't exist, we can only be sure by loading the full index, at
which time the file is regenerated for future use.
* Fix bug where all crates with same prefix were loaded
E.g. we were loading all gn* when only gnat_native needed to be loaded
* Fix providers generation when no index configured
* Add spinner during index load
* Remove the now redundant external aliases collection
* Removed last instances of forced index loading
* Fix for older compilers
* Test for the generated metadata file
* publishing.md: note about private indexes and "provides"
* Post-merge fix
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 20 Jul 2022 10:10:50 +0000 (12:10 +0200)]
Lazy index loading (1/2) (#1085)
* Index queries autoload crates if required
* Avoid infinite recursion when no indexes configured
* Remove references to Requires_Full_Index
* Fixed issues pending "provides" redo
Co-authored-by: GHA <actions@github.com>
Fabien Chouteau [Tue, 19 Jul 2022 11:05:55 +0000 (13:05 +0200)]
Fix host arch (#1092)
* Alire.Utils: add a function to return a string image of keys in map
* Alire.Expressions: improve error message with list of possible case
* Alire.TOML_Load: add missing host arch enum
Jesper Quorning [Sat, 25 Jun 2022 17:04:54 +0000 (19:04 +0200)]
Fix bracket in alr help show (#1073)
Alejandro R Mosteo [Fri, 24 Jun 2022 12:13:51 +0000 (14:13 +0200)]
Allow more than one conditional action (#1070)
* Allow conditional tables within multivalue arrays
* New test for loading of conditional actions
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Fri, 24 Jun 2022 11:49:23 +0000 (13:49 +0200)]
Export build-switches to TOML (#1072)
Alejandro R Mosteo [Thu, 23 Jun 2022 15:45:51 +0000 (17:45 +0200)]
Keep `last_build_profile` in sync with profile requested in manifest (#1049)
* Sync internal last_build_profile with manifest
* Test for the new behavior
* Replace field in Root with a pointer and manual management
* Fix warnings in gnatcoll-slim
* Fix new warnings unearthed by GNAT 12.1
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Thu, 23 Jun 2022 15:35:50 +0000 (17:35 +0200)]
Fix new warnings in GNAT 12.1 (#1071)
* Fix warnings in gnatcoll-slim
* Fix new warnings unearthed by GNAT 12.1
Fabien Chouteau [Wed, 22 Jun 2022 15:40:32 +0000 (17:40 +0200)]
Alire.Utils.Switches: add -gnateE when debug info enabled (#1057)
-gnateE adds extra info in exception messages.
Alejandro R Mosteo [Thu, 9 Jun 2022 19:01:19 +0000 (21:01 +0200)]
Update dependencies to indexed versions (#1046)
* Update manifest & submodules, remove unneeded pins
* Migrate to AnsiAda 1.0
* Migrate to URI_Ada 2.0
* Update to clic 0.2.1
* Update submodule to aaa v0.2.5
* Remove clic forced library type
* Restore gnatcoll pin
* Revert "Remove clic forced library type"
This reverts commit
742413cb2da4742d1157af308062e9339c5b95da .
Co-authored-by: GHA <actions@github.com>
Fabien Chouteau [Wed, 8 Jun 2022 09:24:39 +0000 (11:24 +0200)]
Alire.Crate.Configuration: disable style checks in generated code (#1047)
With the current style checks it is easy to break coding style by having
to many values in an enum for instance.
In theory we could generate better code for enums. But since users can
use their own coding style, it is impossible to be compatible with in
every situation.
So the best option is to disable all checks for this file.
Fabien Chouteau [Tue, 7 Jun 2022 09:38:56 +0000 (11:38 +0200)]
Alr.Commands.Edit: update pointer to GNAT Studio release (#1045)
* Alr.Commands.Edit: update pointer to GNAT Studio release
* Update test.py
Alejandro R. Mosteo [Mon, 6 Jun 2022 18:59:17 +0000 (20:59 +0200)]
Sync with branch 'alire/release/1.2'
Fabien Chouteau [Mon, 6 Jun 2022 17:29:21 +0000 (19:29 +0200)]
Update user-changes.md (#1043)
* Update user-changes.md
* Update user-changes.md
Alejandro R. Mosteo [Fri, 3 Jun 2022 15:36:23 +0000 (17:36 +0200)]
Bump versions to 1.2
Alejandro R Mosteo [Fri, 3 Jun 2022 10:11:07 +0000 (12:11 +0200)]
Speed-up detection of installed externals in RPM-based distros (#1036)
* Speed-up detection of installed externals in RPM distros
Although the yum/dnf wrappers are needed for the installation proper, we can
speed up detections of already installed packages by using rpm directly.
Unfortunately, rpm cannot give info on not installed packages, but this still
speeds up things greatly for the usual case of gnat/gprbuild being installed.
* Refactor duplicated code
Alejandro R. Mosteo [Thu, 2 Jun 2022 22:02:51 +0000 (00:02 +0200)]
Sync with branch 'alire/release/1.2'
Alejandro R. Mosteo [Wed, 1 Jun 2022 16:09:32 +0000 (18:09 +0200)]
Sync with branch 'alire/release/1.2'
Alejandro R Mosteo [Wed, 1 Jun 2022 16:08:03 +0000 (18:08 +0200)]
Fix early parsing of verbosity switches (#1034)
* Fix early parsing of verbosity switches
We were recognizing them even after the subcommand. This also meant that it
would have been impossible to have regular output if a -v is intended for the
subcommand, e.g. in `alr exec -- whatever -v`.
* Bump/sync clic submodule/dependency
Alejandro R. Mosteo [Wed, 1 Jun 2022 10:13:40 +0000 (12:13 +0200)]
Sync with branch 'release/1.2'
Fabien Chouteau [Wed, 25 May 2022 20:03:26 +0000 (22:03 +0200)]
Alire.Utils.Switches: Disable No_Exception_Propagation warning
This switch was always added to the init crates and should have been
included in the first version of build profiles. The warnings are only
displayed for embedded project based on run-times without exception
propagation, and can be very annoying.
Alejandro R Mosteo [Wed, 1 Jun 2022 10:08:06 +0000 (12:08 +0200)]
Alire.Utils.Switches: Disable No_Exception_Propagation warning (#1030)
Alire.Utils.Switches: Disable No_Exception_Propagation warning
Fabien Chouteau [Wed, 25 May 2022 20:03:26 +0000 (22:03 +0200)]
Alire.Utils.Switches: Disable No_Exception_Propagation warning
This switch was always added to the init crates and should have been
included in the first version of build profiles. The warnings are only
displayed for embedded project based on run-times without exception
propagation, and can be very annoying.
GHA [Wed, 18 May 2022 13:04:47 +0000 (15:04 +0200)]
alire.toml: Bump version to 1.2-rc1
GHA [Wed, 18 May 2022 13:04:18 +0000 (15:04 +0200)]
Bump version to 1.3-dev
Alejandro R Mosteo [Wed, 18 May 2022 13:02:19 +0000 (15:02 +0200)]
Sync with release/1.2
Bump alr and index versions to 1.2
GHA [Tue, 17 May 2022 15:52:23 +0000 (17:52 +0200)]
Bump alr and index versions to 1.2
Alejandro R Mosteo [Tue, 17 May 2022 09:24:08 +0000 (11:24 +0200)]
Fix retrieval of git root and prefix inside repo (#1024)
* Fix retrieval of git root and prefix inside repo
* Fix instantiation on older compilers
* Alire.VSSs.Git: Fix unreferenced parameter
* Alire.Publish: fix reversed logic
* Code review fixes
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 17 May 2022 09:07:31 +0000 (11:07 +0200)]
New `alr get --dirname` switch (#1014)
* Alr.Commands.Get: New --dirname switch
This switch just shows in which folder the just downloaded crate can be found.
* Tests for `alr get --dirname`
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Mon, 16 May 2022 18:14:12 +0000 (20:14 +0200)]
Create zipball with full sources for releases (#1023)
* Create asset for full sources with submodules
* No need to run in multiple OSes
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Mon, 9 May 2022 08:44:38 +0000 (10:44 +0200)]
Don't detect external tools when they're not (#1018)
Alejandro R Mosteo [Mon, 9 May 2022 08:44:09 +0000 (10:44 +0200)]
Properly detect domain in publishing assistant (#1020)
Fixes #1011
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Fri, 6 May 2022 09:57:31 +0000 (11:57 +0200)]
Load the index when dependencies are needed (#1019)
* Load the index when dependencies are needed
* Test for this fix
Co-authored-by: GHA <actions@github.com>
Fabien Chouteau [Wed, 4 May 2022 11:30:54 +0000 (13:30 +0200)]
tests/crate_config/basic: fix arm64 expected host (#1015)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Wed, 4 May 2022 10:40:33 +0000 (12:40 +0200)]
Update msys installer (#1017)
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Tue, 3 May 2022 09:13:54 +0000 (11:13 +0200)]
Show just the version with `alr --version` (#1013)
* Add a new --version standalone switch
* Add a couple of new tests
Alejandro R Mosteo [Fri, 29 Apr 2022 14:56:17 +0000 (16:56 +0200)]
Bump index version (#1009)
* Alire.Index_On_Disk: Drop index cache after deletion
Also ensure that all index addition functions operate with fresh index
information
* Bump index version
* Allow disabling the "old compatible index" warning
Also use real old compatible version to not have to use a fake old compatible version
* Alire.Config.Edit: fix copypasta mistake
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Fri, 29 Apr 2022 14:55:50 +0000 (16:55 +0200)]
Alire.Index_On_Disk: Drop index cache after deletion (#1010)
Also ensure that all index addition functions operate with fresh index
information
Co-authored-by: GHA <actions@github.com>
Alejandro R Mosteo [Thu, 28 Apr 2022 10:03:50 +0000 (12:03 +0200)]
Cache index detection and crate loading (#1008)
Alejandro R Mosteo [Tue, 26 Apr 2022 08:45:21 +0000 (10:45 +0200)]
Implement load of individual crates from index (#1006)
* Make index set its own type
* Basics for individual crate loading in place
* Complete single crate loading and use in `show`
* Use Empty_Set instead of Empty for older compilers
Fabien Chouteau [Mon, 25 Apr 2022 18:06:43 +0000 (20:06 +0200)]
Alr.Commands.Init: Create share folder for resources (#1003)
Note that gprinstall won't complain if this folder doesn't exists, so
users can decided to leave it empty or remove it in case they don't have
resources.
Fabien Chouteau [Mon, 25 Apr 2022 17:53:41 +0000 (19:53 +0200)]
Alr.Commands.Init: change default version for new crates to 0.1.0-dev (#1004)
Fabien Chouteau [Fri, 22 Apr 2022 14:38:11 +0000 (16:38 +0200)]
Update getting-started.md (#1000)
* Update getting-started.md
* Update getting-started.md
Fabien Chouteau [Wed, 20 Apr 2022 09:12:46 +0000 (11:12 +0200)]
Alire.Properties.Configurations: revert forced mixed case (#998)
* Alire.Properties.Configurations: revert forced mixed case
Forcing mixed case for enum values breaks existing crates (atomic).
* Alire.Crate_Configuration: force build profiles to lower case
The default is upper case because values are generated from Enum'Img.
Alejandro R Mosteo [Fri, 15 Apr 2022 09:00:21 +0000 (11:00 +0200)]
Refactor Alire.Features.Indes -> Alire.Index_On_Disk.Loading (#992)
The Alire.Features.* hierarchy was ill-conceived so getting rid of it by moving
a package around.
Alejandro R Mosteo [Thu, 14 Apr 2022 09:06:13 +0000 (11:06 +0200)]
New `action` subcommand (#983)
* New 'action' subcommand, listing supported
* Alr.Commands.Action: Add execution of given action
* Add tests for action listing and triggering
* doc/user-changes.md: document new `alr action`
* Self-review fixes
Fabien Chouteau [Wed, 13 Apr 2022 12:46:55 +0000 (14:46 +0200)]
Alire.Crate_Configuration: Fix pragma No_Elaboration_Code (#987)
pragma No_Elaboration_Code_All has an impact on implicitly or explicitly with’ed units:
https://docs.adacore.com/gnat_rm-docs/html/gnat_rm/gnat_rm/implementation_defined_pragmas.html
Fabien Chouteau [Wed, 13 Apr 2022 10:24:55 +0000 (12:24 +0200)]
Alr.Command: fix gnatcov built-in alias (#986)
The first argument of gnatcov must be the action (`instrument`, `coverage`, etc.).