Hi, all, I have a beta release of Remind 05.04.00 available at https://dianne.skoll.ca/projects/remind/
Tar: https://dianne.skoll.ca/projects/remind/download/remind-05.04.00-BETA-1.tar.gz GPG: https://dianne.skoll.ca/projects/remind/download/remind-05.04.00-BETA-1.tar.gz.sig Git: https://git.skoll.ca/Skollsoft-Public/Remind The git repo is password-protected to avoid AI scrapers; log in as user "notabot" with password "notabot". There are a bunch of changes, mostly made possible by the new expression-evaluation engine introduced in 05.00.00. Complete release notes follow. Please give the beta a spin; I'd like the release to be as well-tested as possible! Regards, Dianne. CHANGES TO REMIND * VERSION 5.4 Patch 0 - 2025-??-?? - MAJOR IMPROVEMENT: remind: Track which expressions and variables Remind can prove to its satisfaction are "constant" - that is, that will always have the same value on any Remind run as long as the files are not edited. This allows "Purge Mode" to purge more reminders than before. See the new remind(1) man page section "NON-CONSTANT EXPRESSIONS" - MINOR NEW FEATURE: remind: add the "nonconst" built-in function (to force an expression to be interpreted as non-constant) and the "isconst" function to test if an expression is constant. - MINOR NEW FEATURE: remind: Add eval() built-in function that takes a string argument and evaluates it as an expression. - MINOR NEW FEATURE: remind: Add the trigbase() function and corresponding $Tb system variable. See the remind(1) man page for details. - MINOR IMPROVEMENT: remind: Make $Tu a synonym for triguntil(). - MINOR IMPROVEMENT: remind: If coerce() fails, issue a more detailed error message. - MINOR IMPROVEMENT: remind: Using Hush mode "-h" with purge mode "-j" suppresses the normal purge-mode diagnostics about reminders that might not be purged. Instead, only the "#!P: Expired" purge-mode lines are emitted. - NEW FEATURE: remind: Add the catch() built-in function. This lets you catch errors in expression evaluation. For example: catch(2/0, "oops") returns "oops". The catcherr() function returns the error message from the last catch() expression that failed, in this case "Division by zero". - IMPROVEMENT: remind: Remind can handle dates that require UTC to Local conversion (and vice-versa) for years greater than 2038, even on systems with a 32-bit time_t. - MINOR IMPROVEMENT: remind: Allow the argument to monnum() to be a string, in which case it's parsed as a month name and the corresponding month number returned. - MINOR IMPROVEMENT: remind: Allow the argument to wkdaynum() to be a string, in which case it's parsed as a weekday name and the corresponding weekday number returned. - MINOR IMPROVEMENT: remind: Make the expression parser optimize away "- INT_CONSTANT" and "! INT_CONSTANT". - BUG FIX: tests: Don't use the obsolete "tail +2" syntax in test-rem. Fix courtesy of Dick Marinus.
pgpfinAYInmQD.pgp
Description: OpenPGP digital signature
_______________________________________________ Remind-fans mailing list [email protected] https://dianne.skoll.ca/mailman/listinfo/remind-fans Remind is at https://dianne.skoll.ca/projects/remind/
