Versions & change logs

Versions of and change logs for the saugns program and SAU language. The history page has a more broad and big-picture description, which also goes back before the tagged versions from 2019 and later.

The CHANGELOG included with saugns covers all tagged versions. Below, links for tags and a log focused only on the SAU language can be found.

Contents

Tagged versions

The git tag message for most versions has text like that in the CHANGELOG for the version. Viewing the full source difference between versions is easier with the command-line git tool than the web interfaces, as in git diff old-version new-version. (See the project on Codeberggit clone https://codeberg.org/sau/saugns.git – or the main page for the project mirrors.)

Source archives of the versions for non-git users can be downloaded at Codeberg. Each version link below is for one of the tag messages at Framagit; download options can also be found on that page.

v0.4.x

v0.3.x

SAU language changes

Below is a shorter list of only changes that impact how scripts in the language are written – changes which often affect what's covered on this website. It may be updated ahead of new versions being tagged (see "stable branch" below). For fuller change notes for the saugns program, instead read its CHANGELOG.

This listing of changes is not completely exhaustive; some bugfixes, changes to undocumented behavior, and other small details affecting some possible scripts may go unlisted. The oldest tagged version v0.3.0 is compared to the historical (last 2012) sgensys-20120401.tgz version.

stable branch (untagged)

v0.4.8 (2024-11-03)

v0.4.8b (2024-11-12)

v0.4.7 (2024-10-16)

v0.4.7c (2024-10-30)

Fix modulators using the r frequency ratio a.k.a. relative frequency parameter, when linked to a carrier of type A or N (which have no frequency parameter). This used to behave as if the latter had a frequency of 1 Hz set. Now the behavior is as if the A or N didn't exist, so that only the object using r and any other carriers for it are considered. If there's no such other carrier, r can't be used, just like it can't for a top-level carrier.

v0.4.6 (2024-10-01)

v0.4.5 (2024-08-09)

v0.4.4 (2024-04-09)

The new options for assigning numerical variables are meant to be used with a new variable=value command-line option, which allows passing values to scripts, optional or required, scripts possibly supplying fallback values.

Add backward-compatibility deprecated alias, 'name=. Old scripts can be updated to use the newer assignment syntax, without any manual adjustment, using regex search-and-replace:

perl -pi -e "s/'([A-Za-z0-9_]+\\s*)=/\\$\\1=/g;" paths...

v0.4.4b (2024-04-16)

Add backward-compatibility deprecated seed(x) function.

v0.4.4c (2024-06-01)

v0.4.4d (2024-07-10)

Fix parsing bug for undocumented {...} grouping syntax.

v0.4.3 (2024-04-03)

Global amplitudes in unchanged scripts may sometimes be lowered by the S a changes. The old behavior corresponds to changing each S avalue to S avalue.m1.

The free [] list cannot yet be used for anything, thus remains an undocumented feature until more features for it are added.

v0.4.2 (2023-08-23)

Most older scripts did not remove modulators by setting new lists; those that do will require adjustment. Apart from that, a perl one-liner can be used to upgrade the sweep syntax in scripts. Deprecated support for the old sweep syntax is kept in the short term.

perl -pi -e 's/{/\[/g; s/}/\]/g; s/\]\[/ /g;' paths...

v0.4.2b (2023-09-08)

This means that pre-v0.4.2 script style can be updated turning {...}[...] into [...][...], if preferred.

v0.4.2c (2023-10-02)

v0.4.2d (2023-12-31)

This version fixes a few smaller default time bugs, and makes voices always number optimally low when counted (occasionally affecting default script amplitude) too.

v0.4.1 (2023-07-04)

Old scripts using Wssr will no longer work as expected; if that wave type is wanted, it could be re-added. Most other old scripts will produce equivalent results after adjusting saw uses, and adjusting phase p for and renaming the old hrs and ahs.

v0.4.0 (2023-01-27)

Backward-compatibility aliases have been added so scripts with type O, and (in the shorter term) sweep parameter r, still work with deprecation warnings.

v0.4.0b (2023-02-06)

v0.4.0c (2023-02-24)

v0.4.0d (2023-03-17)

This version fixes a bug affecting some builds of the program (x86-64 platform with clang compiler) – this fixes the mt and mvb modes for the R generator.


v0.3.x

v0.3.12 (2023-01-01)

v0.3.11 (2022-06-15)

v0.3.11b (2022-06-28)

v0.3.11c (2022-07-31)

v0.3.10 (2022-02-03)

v0.3.10b (2022-02-23)

v0.3.9 (2021-11-11)

v0.3.8 (2020-12-29)

v0.3.7 (2020-10-22)

v0.3.6 (2019-12-27)

v0.3.3 (2019-10-28)

v0.3.2 (2019-08-24)

v0.3.1 (2019-08-03)

v0.3.0 (2019-07-04)