alire-project / alire

Command-line tool from the Alire project and supporting library
GNU General Public License v3.0
288 stars 49 forks source link

Question: package available? #984

Closed pjljvandelaar closed 2 years ago

pjljvandelaar commented 2 years ago

Dear Alire developers,

I recently added the rejuvenation crate to the archive. I can already find it on alire website: https://alire.ada.dev/crates/rejuvenation However, I still get

   +i gnat            11.2.3 (new,installed,gnat_native,indirect)
   +  gnatcoll        22.0.0 (new,indirect)
   +  gnatcoll_gmp    22.0.0 (new,indirect)
   +  gnatcoll_iconv  22.0.0 (new,indirect)
   +  langkit_support 22.0.0 (new,indirect)
   +  libadalang      22.0.0 (new)
   +  libgmp          6.2.1  (new,indirect)
   +  libgpr          22.0.0 (new,indirect)
   +  libiconv        1.16.0 (new,indirect)
   +! rejuvenation    *      (new,missing)
   +  xmlada          22.0.0 (new,indirect)

Are these systems not connected? If so, how long can I have to wait? If not, what went wrong?

Greetings, Pierre

mosteo commented 2 years ago

Have you updated your index with alr index --update-all?

For future questions of this kind, I would recommend to use the "Discussions" area of this project.

pjljvandelaar commented 2 years ago

Thanks for the answer! I was not aware of the Discussions area!

pjljvandelaar commented 2 years ago

Unfortunately, that doesn't solve the problem:

PS C:\path\to\Renaissance-Ada\src\libraries\Rewriters> alr index --update-all
Already up to date.
PS C:\path\to\Renaissance-Ada\src\libraries\Rewriters> alr build
warn: Generating possibly incomplete environment because of missing dependencies
gnatcoll.gpr:254:07: warning: value "windows" is not used as label
Compile
   [Ada]          langkit_support-diagnostics.adb
   [Ada]          langkit_support-adalog-pure_relations.adb
...

Unfortunately, alr doesn't report anymore which dependencies are found and which are missing exactly.

The log file is created with alr build -vv -d log.txt

mosteo commented 2 years ago

The log seems to be incomplete, as I don't see a definite error there. My download ends in line 3139.

Also, could you please paste here the output of alr with --solve after running an alr update?

pjljvandelaar commented 2 years ago

@mosteo Indeed the log.txt file is incomplete. I included a few lines after warning: value "windows" is not used as label, since that occurs after the warning warn: Generating possibly incomplete environment because of missing dependencies in the earlier output (without the -vv flag). I incorrected assumed that was enough ;-(

alr update

PS C:\path\to\Renaissance-Ada\src\libraries\Rewriters> alr update

Changes to dependency solution:

   New solution is complete.
   ^ gnat 11.2.4 (gnat_native,upgraded from 11.2.3)

Do you want to proceed?
[Y] Yes  [N] No  (default is Yes) Y
Note: Deploying release rejuvenation=0.1.0...
Cloning into 'C:\path\to\Renaissance-Ada\src\libraries\Rewriters\alire\cache\dependencies\alr-krhv.tmp'...
remote: Enumerating objects: 339, done.
remote: Counting objects: 100% (339/339), done.Receiving objects:   1% (4/339)
remote: Compressing objects: 100% (240/240), done.
remote: Total 339 (delta 128), reused 286 (delta 82), pack-reused 0R
Receiving objects: 100% (339/339), 142.15 KiB | 1.75 MiB/s, done.
Resolving deltas: 100% (128/128), done.
PS C:\path\to\Renaissance-Ada\src\libraries\Rewriters> alr with --solve
Dependencies (direct):
   libadalang^22.0.0
   rejuvenation*
Dependencies (solution):
   gnat=11.2.4 (gnat_native) (installed) (origin: binary_archive)
   gnatcoll=22.0.0 (origin: source_archive)
   gnatcoll_gmp=22.0.0 (origin: source_archive)
   gnatcoll_iconv=22.0.0 (origin: source_archive)
   langkit_support=22.0.0 (origin: source_archive)
   libadalang=22.0.0 (origin: source_archive)
   libgmp=6.2.1 (origin: system)
   libgpr=22.0.0 (origin: source_archive)
   libiconv=1.16.0 (origin: system)
   rejuvenation=0.1.0 (origin: git)
   xmlada=22.0.0 (origin: source_archive)
Dependencies (graph):
   gnatcoll=22.0.0        --> libgpr=22.0.0 (~22.0.0)
   gnatcoll_gmp=22.0.0    --> gnatcoll=22.0.0 (~22.0.0)
   gnatcoll_gmp=22.0.0    --> libgmp=6.2.1 (*)
   gnatcoll_iconv=22.0.0  --> gnatcoll=22.0.0 (~22.0.0)
   gnatcoll_iconv=22.0.0  --> libiconv=1.16.0 (*)
   langkit_support=22.0.0 --> gnatcoll=22.0.0 (^22)
   langkit_support=22.0.0 --> gnatcoll_iconv=22.0.0 (^22)
   libadalang=22.0.0      --> gnatcoll=22.0.0 (^22)
   libadalang=22.0.0      --> gnatcoll_gmp=22.0.0 (^22)
   libadalang=22.0.0      --> gnatcoll_iconv=22.0.0 (^22)
   libadalang=22.0.0      --> langkit_support=22.0.0 (^22)
   libgpr=22.0.0          --> gnat=11.2.4 (gnat_native) (/=2020)
   libgpr=22.0.0          --> xmlada=22.0.0 (~22.0.0)
   rejuvenation=0.1.0     --> libadalang=22.0.0 (^22.0.0)
   rewriters=0.0.0        --> libadalang=22.0.0 (^22.0.0)
   rewriters=0.0.0        --> rejuvenation=0.1.0 (*)
   xmlada=22.0.0          --> gnat=11.2.4 (gnat_native) (>=11)

After these instructions, I was no longer able to reproduce the issue with alr build.

mosteo commented 2 years ago

Ah, I understand. I was looking for a more "compilation failed/alr errored" kind of error.

For the record, what was happening was:

  1. You had an incomplete solution initially, as rejuvenation was not in your local index.
    1. That's what causes the warning about a potentially incomplete environment, as alr knows you're missing required dependencies
  2. After alr index --update-all, rejuvenation was available but at present alr does not automatically attempt to retry looking for a solution after such an update.
    1. That's why a manual alr update was needed. This found rejuvenation for the solution.