www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 21226] New: Bug in installer.sh#L552-L556 and missing

https://issues.dlang.org/show_bug.cgi?id=21226

          Issue ID: 21226
           Summary: Bug in installer.sh#L552-L556 and missing signature
                    files
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P1
         Component: installer
          Assignee: nobody puremagic.com
          Reporter: edwards.ac gmail.com

The following lines:

https://github.com/dlang/installer/blob/720d3af0756390c065774b62952076fc73d17a49/script/install.sh#L552-L556

incorrectly assumes that we've always used 2.xxx.x for our releases. As a
result, it wrongly classifies any compiler prior to 2.065.0 as nightlies and
fails to install them.

I attempted to remedy this by changing the condition to:

    if [[ ! $input_compiler =~ -[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]] &&
       [[ ! $input_compiler =~ -[0-9][.][0-9]{3}$ ]] &&
       [[ ! $input_compiler =~ -[0-9][.][0-9]{3}[.][0-9]{1,3}(-[0-9]{1,3})? ]];
then

Not sure if this messes up some other logic further down in the script but it
works for my purposes. I don't install nighties so I couldn't care less.
Nightlies are a hit and miss thing anyway. We haven't had one uploaded since
March. The other option I see is to rename these releases to match current
convention. 

This works to an extent. It downloads the archive but fails on attempt to
download the signature files. All release from 2.000 to 2.064 are missing them.

Please upload those files and patch the script to allow for their
download/installation.

--Andrew

--
Sep 05 2020