Subject: bug#66017: Cannot install Ada mode

From: Left Right <[email-masked]>
Date: Fri, 15 Sep 2023 22:52:27 +0200

Hi.

I seem to have found the problem. I discovered I somehow had two
different versions of Alire installed: 1.2.0 and 1.2.1. The older one
was the one found when running build.sh. However, the Emacs Ada mode
crate must've been added after 1.2.1 Alire index was created. I
couldn't find a way to update Alire, and apparently, older Alire
cannot use the newer index... but deleting the old version allowed me
to make some progress.  Now it fails like this:

wisitoken-followed_by.adb:222:07: warning: "Generate_Data" is not
modified, could be declared constant [-gnatwk]
gnatcoll-projects.adb:38:09: warning: unit "Ada.Unchecked_Conversion"
is not referenced [-gnatwu]

   compilation of wisitoken-followed_by.adb failed

gprbuild: *** compilation phase failed
error: Command ["gprbuild", "-s", "-j0", "-p", "-P",
"/home/olegs/.emacs.d/elpa/ada-mode-8.0.5/emacs_ada_mode_8.0.5_ecfdcfb4/alire/cache/dependencies/wisitoken_4.1.0_f9cd282e/build/wisitoken_alire.gpr"]
exited with code 4
error: Compilation failed.

I'd still appreciate your help dealing with this.

Also, it would be nice if documentation mentioned the minimum required
version of Alire.

Trying to run the command that failed generates this:

❯ "gprbuild" "-s" "-j0" "-p" "-P"
"/home/olegs/.emacs.d/elpa/ada-mode-8.0.5/emacs_ada_mode_8.0.5_ecfdcfb4/alire/cache/dependencies/wisitoken_4.1.0_f9cd282e/build/wisitoken_alire.gpr"
wisitoken_alire.gpr:8:06: imported project file
"standard_common_alire" not found
wisitoken_alire.gpr:28:43: unknown package or project "Standard_Common_Alire"
wisitoken_alire.gpr:28:43: wrong expression kind for attribute
"default_switches"
wisitoken_alire.gpr:28:84: unknown package or project "Standard_Common_Alire"
wisitoken_alire.gpr:31:43: unknown package or project "Standard_Common_Alire"
wisitoken_alire.gpr:31:43: wrong expression kind for attribute
"default_switches"
wisitoken_alire.gpr:31:82: unknown package or project "Standard_Common_Alire"
wisitoken_alire.gpr:35:41: unknown package or project "Standard_Common_Alire"
wisitoken_config.gpr:3:06: imported project file
"stephes_ada_library.gpr" not found
wisitoken_config.gpr:3:06: imported by
"/home/olegs/.emacs.d/elpa/ada-mode-8.0.5/emacs_ada_mode_8.0.5_ecfdcfb4/alire/cache/dependencies/wisitoken_4.1.0_f9cd282e/config/wisitoken_config.gpr"
wisitoken_config.gpr:3:06: imported by
"/home/olegs/.emacs.d/elpa/ada-mode-8.0.5/emacs_ada_mode_8.0.5_ecfdcfb4/alire/cache/dependencies/wisitoken_4.1.0_f9cd282e/build/wisitoken_alire.gpr"
gprbuild: "/home/olegs/.emacs.d/elpa/ada-mode-8.0.5/emacs_ada_mode_8.0.5_ecfdcfb4/alire/cache/dependencies/wisitoken_4.1.0_f9cd282e/build/wisitoken_alire.gpr"
processing failed

On Fri, Sep 15, 2023 at 10:12 PM Left Right <[email-masked]> wrote:
>
> Hello.
>
> I'm trying to install Ada mode in Emacs 29.1 on Manjaro.
>
> This is my experience so far:
>
> ❯ cd ~/.emacs.d/elpa/ada-mode-8.0.5
> ❯ ./build.sh
> alr is /usr/local/bin/alr
> building ada-mode executables via Alire
> error: Crate [emacs_ada_mode~8.0.5] does not exist in the catalog.
> ./build.sh: line 16: cd: emacs_ada_mode_*: No such file or directory
> error: Cannot continue with invalid session:
> error:    Could not detect a session folder at current or parent locations
>
> When I try searching for this crate:
>
> ❯ alr index --update-all
> Already up to date.
> ❯ alr search emacs
> No hits
>
> Also, documentation mentions that Ada mode is supposed to be built-in,
> but unless I install this package from ELPA, there's no Ada mode in my
> Emacs installation.
>
> I found this page: https://alire.ada.dev/crates/emacs_ada_mode.html
> which seems to imply that the crate exists, but I don't understand why
> alr isn't finding it. (I'm very new to Ada).
>
> Any help would be very welcome.
>
> Best.
>
> Oleg