diff --git a/.VERSION b/.VERSION index 47b322c97..4d9d11cf5 100644 --- a/.VERSION +++ b/.VERSION @@ -1 +1 @@ -3.4.1 +3.4.2 diff --git a/.release b/.release new file mode 100644 index 000000000..62a456455 --- /dev/null +++ b/.release @@ -0,0 +1,116 @@ +#!/bin/bash +# This script is intended to be run by the release-gap-package script which is +# part of the the ReleaseTools for GAP: +# +# https://github.com/gap-system/ReleaseTools/ + +set -e + +# ensure we are in the same directory as this script +cd "$(dirname "${BASH_SOURCE[0]}")" + +notice_it() { + printf '\033[93m%s\033[0m\n' "$*" +} + +error() { + printf '\033[31mERROR: %s\033[0m\n' "$*" + exit 1 +} + +run_gap() { + gap_output=$( \ + (echo 'OnBreak:=function() Print("FATAL ERROR"); FORCE_QUIT_GAP(1); end;;' ; cat - ; echo ; echo "FORCE_QUIT_GAP(0);") \ + | $GAP -A -q -b 2>&1 \ + | tr -d '\r' ) + mkdir -p "$TMP_DIR" + echo "$gap_output" > "$TMP_DIR/gap-error.log" + if echo "$gap_output" | grep -q '\(Error\|FATAL ERROR\|Syntax \)' ; then + error "there was an error running GAP, see $TMP_DIR/gap-error.log" + fi +} + +notice_it "Running Semigroup package .release script" + +# Delete unnecessary files + +notice_it "Deleting additional unnecessary files" + +rm -f .covignore +rm -f .codecov.yml +rm -f .gaplint.yml +rm -f azure-pipelines.yml + +rm -rf ci +rm -rf etc + + +# download libsemigroups +SEMI_DIR="$PWD" +LIBS_DIR="$SEMI_DIR/libsemigroups" + +# Get libsemigroups version from file +if [ -f "$SEMI_DIR/.LIBSEMIGROUPS_VERSION" ]; then + VERS=`tr -d '\n' < $SEMI_DIR/.LIBSEMIGROUPS_VERSION` +else + notice_it "Error, cannot find $SEMI_DIR/.LIBSEMIGROUPS_VERSION" + exit 1 +fi + +notice_it "libsemigroups v$VERS is required by this version of Semigroups" + +if [ -d "$LIBS_DIR" ] && [ "$(ls -A $LIBS_DIR)" ]; then + notice_it "the libsemigroups directory exists and is non-empty" + exit 1 +fi + +# Download libsemigroups +notice_it "Downloading libsemigroups v$VERS into $LIBS_DIR..." +curl -L -O "https://github.com/libsemigroups/libsemigroups/releases/download/v$VERS/libsemigroups-$VERS.tar.gz" +tar -xzf "libsemigroups-$VERS.tar.gz" && rm -f "libsemigroups-$VERS.tar.gz" && mv "libsemigroups-$VERS" "$LIBS_DIR" + +# Build the package because it must be loadable for the doc to be compiled (for +# some reason) + +notice_it "Building the Semigroups package" + +./autogen.sh +./configure --with-gaproot=/Users/jdm/gap CXX="ccache g++" CXXFLAGS="-fdiagnostics-color" +make -j8 + +notice_it "Building Semigroups package documentation for archives (using makedoc.g)" + +run_gap < "$f.bak" + mv "$f.bak" "$f" + sed 's;href="/.*io-.*/doc;href="https://gap-packages.github.io/io/doc/;g' "$f" > "$f.bak" + mv "$f.bak" "$f" + sed 's;href="/.*smallsemi-.*/doc;href="https://gap-packages.github.io/smallsemi/doc/;g' "$f" > "$f.bak" + mv "$f.bak" "$f" + sed 's;href="/.*images-.*/doc;href="https://gap-packages.github.io/images/doc/;g' "$f" > "$f.bak" + mv "$f.bak" "$f" + sed 's;href="/.*GAPDoc-.*/doc;href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc/doc/;g' "$f" > "$f.bak" + mv "$f.bak" "$f" +done + +notice_it "Finished running Semigroup package .release script!!!" diff --git a/CHANGELOG.md b/CHANGELOG.md index dc452dd3c..3fab769e9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,11 @@ Copyright © 2011-21 [James D. Mitchell][] et al. Licensing information can be found in the `LICENSE` file. +### Version 3.4.2 (released 07/02/2021) + +This is a minor release resolving some issues in v3.4.1 [James D. Mitchell][], +and with a number of improvements by [Wilf A. Wilson][]. + ### Version 3.4.1 (released 28/01/2021) This is a minor release including some bugfixes and improvements. The required diff --git a/PackageInfo.g b/PackageInfo.g index c63840d88..51f362df2 100644 --- a/PackageInfo.g +++ b/PackageInfo.g @@ -9,16 +9,16 @@ ## ## <#GAPDoc Label="PKGVERSIONDATA"> -## +## ## +## +## ## ## ## ## ## ## -## -## ## <#/GAPDoc> BindGlobal("_RecogsFunnyNameFormatterFunction", @@ -49,8 +49,8 @@ _STANDREWS := Concatenation(["Mathematical Institute, ", SetPackageInfo(rec( PackageName := "Semigroups", Subtitle := "A package for semigroups and monoids", -Version := "3.4.1", -Date := "28/01/2021", # dd/mm/yyyy format +Version := "3.4.2", +Date := "07/02/2021", # dd/mm/yyyy format License := "GPL-3.0-or-later", ArchiveFormats := ".tar.gz", diff --git a/VERSIONS b/VERSIONS index e6ef0fd56..08733245a 100644 --- a/VERSIONS +++ b/VERSIONS @@ -9,6 +9,7 @@ ## ## +release 3.4.2 - 07/02/2021 release 3.4.1 - 28/01/2021 release 3.4.0 - 28/08/2020 release 3.3.2 - 28/06/2020 diff --git a/doc/isorms.xml b/doc/isorms.xml index 25ae0e0d3..20612aa6e 100644 --- a/doc/isorms.xml +++ b/doc/isorms.xml @@ -83,7 +83,7 @@ triple[3] should be a list of elements from the underlying group of R2. If the - + of R1 has m columns and n rows, then the list should have length m + n, where the first m entries should correspond to the columns of @@ -284,7 +284,7 @@ gap> ImagesElm(map, RMSElement(R, 1, (2, 8), 2)); as S but the - + of T has been canonicalized. The output T is canonical in the sense that for any two inputs which are isomorphic Rees zero matrix semigroups the output of this diff --git a/doc/main.xml b/doc/main.xml index da0d83454..589d6594f 100644 --- a/doc/main.xml +++ b/doc/main.xml @@ -6,7 +6,7 @@ Text='Digraphs'>https://digraphs.github.io/DigraphsDigraphs"> https://gap-packages.github.io/datastructureshttps://gap-packages.github.io/datastructuresdatastructures"> https://gap-packages.github.io/orb/ diff --git a/makedoc.g b/makedoc.g index dac3f4391..1780a1ade 100644 --- a/makedoc.g +++ b/makedoc.g @@ -6,12 +6,11 @@ ## gap makedoc.g ## -PACKAGE := "Semigroups"; LoadPackage("GAPDoc"); LoadPackage("semigroups"); SemigroupsMakeDoc(); CopyHTMLStyleFiles("doc"); -GAPDocManualLab(PACKAGE); +GAPDocManualLab("Semigroups"); QUIT;