Commit Graph

444 Commits

Author SHA1 Message Date
Dianne Skoll 0ec43d570c Add "const" function, which is the inverse of "nonconst" 2025-05-23 08:47:12 -04:00
Dianne Skoll 0c93e045bd Bump version to 05.04.00. 2025-05-22 21:40:38 -04:00
Dianne Skoll f0f0cec2d3 Add $Tu == triguntil() system variable. 2025-05-22 18:00:24 -04:00
Dianne Skoll 70a97a8fe5 Add trigbase() built-in function. 2025-05-22 17:44:42 -04:00
Dianne Skoll 8a6857b787 Add test to ensure recursive eval() yields error rather than segfault. 2025-05-22 15:00:46 -04:00
Dianne Skoll 3118f8d2a4 Add "eval()" built-in function. 2025-05-22 13:52:07 -04:00
Dianne Skoll cf2114e2ef Update tests. 2025-05-22 10:04:32 -04:00
Dianne Skoll b33a3191f5 Better nonconst diagnostic messages. 2025-05-22 09:38:06 -04:00
Dianne Skoll caa900d38d Fix tests. 2025-05-22 09:35:52 -04:00
Dianne Skoll 1d3c1f006f Take care of some corner-cases of non-const tracking. 2025-05-22 09:35:18 -04:00
Dianne Skoll af5854d0c6 Improve diagnostic message. 2025-05-21 12:27:08 -04:00
Dianne Skoll 43d0066780 Add test for additional non-constant debugging message. 2025-05-21 12:24:44 -04:00
Dianne Skoll de2d15009f Document all the non-constant tracking machinery. 2025-05-21 12:23:08 -04:00
Dianne Skoll 8ca5c7e56e Add test for "hush mode" in conjunction with "purge mode" 2025-05-21 11:21:24 -04:00
Dianne Skoll 1e3657b728 Overhaul how IF/ELSE work so we can track "constant-ness" of variables.
We now keep track of whether a variable holds a "constant" value
(ie, a value that will stay the same on successive Remind runs)
so Purge Mode can be more accurate.
2025-05-20 22:11:39 -04:00
Dianne Skoll 31c8893a2a Add tests for non-const-expression debugging output. 2025-05-20 12:03:53 -04:00
Dianne Skoll 1be6ff23fb Optimmize away ! INT_CONSTANT. 2025-05-16 10:48:02 -04:00
Dianne Skoll 4db201945c Optimize "- INT_CONSTANT" to be simply -INT_CONSTANT rather than (- INT_CONSTANT) 2025-05-16 08:30:44 -04:00
Dianne Skoll 6aa217044b Implement wkdaynum("dayname") 2025-05-14 18:30:47 -04:00
Dianne Skoll c64d939237 Allow argument to monnum to be a string, in which case it's parsed as a month name. 2025-05-14 09:57:16 -04:00
Dianne Skoll 3fb1db0880 Add catcherr() built-in function. 2025-05-10 09:33:24 -04:00
Dianne Skoll a35de17b00 Add the "catch()" built-in function. 2025-05-09 17:09:00 -04:00
Dianne Skoll 758e2c1a9d Add some more year-folding tests. 2025-05-08 14:22:01 -04:00
Dianne Skoll 4590e746c5 Force year-folding on 32-bit time_t machines. 2025-05-08 12:10:15 -04:00
Dianne Skoll e107ed5482 Bump version to 05.03.07. 2025-05-06 12:37:43 -04:00
Dianne Skoll 59f978a9db Add $TimetIs64bit system variable. 2025-05-06 12:14:18 -04:00
Dianne Skoll ce123d1b41 Bump to version 05.03.06. 2025-04-25 11:02:22 -04:00
Dianne Skoll 44b920e080 Make "remind -s" respect $DefaultColor
https://dianne.skoll.ca/pipermail/remind-fans/2025/005051.html
2025-04-23 10:15:20 -04:00
Dianne Skoll 2c8fa39af0 Add tests for astronomical functions. 2025-03-20 11:38:18 -04:00
Dianne Skoll ee4e3e9073 Bump version to 05.03.05. 2025-03-19 17:38:33 -04:00
Dianne Skoll 38615adb41 Update tests for fixes to 12:XXam 2025-03-19 12:38:36 -04:00
Dianne Skoll 81fa6c667f Update unit test. 2025-03-19 11:57:23 -04:00
Dianne Skoll a22c674846 Add moonrise and moonset functions. 2025-03-19 11:45:34 -04:00
Dianne Skoll ba224445b1 Allocate 256 expr_nodes in a chunk instead of 64. 2025-03-16 10:55:42 -04:00
Dianne Skoll be746f9fa7 Print placeholder args when printing error message for user function invoked with incorrect number of arguments. 2025-03-13 23:33:19 -04:00
Dianne Skoll 44afdfcb44 Update version to 05.03.04 2025-03-09 10:48:43 -04:00
Dianne Skoll 5915eb4973 Bump version to 05.03.03. 2025-03-03 11:23:10 -05:00
Dianne Skoll 471ecff267 Report both starting and ending lines for commands spanning multiple lines because of \-line continuation.
This affects error and warning messages primarily.  The JSON
interchange format has an additional lineno_start entry for
reminders that span multiple lines.  (Historically, lineno
was the *last* line of the reminder statement and I kept
that for compatibility.)
2025-02-16 20:30:16 -05:00
Dianne Skoll 5acbb907b4 Issue warning if a substitution sequence related to time is used without an AT clause.
Remind unit tests / tests (push) Successful in 31s
2025-02-10 09:23:43 -05:00
Dianne Skoll 21ecc28ea4 Prep for 05.03.02 release.
Remind unit tests / tests (push) Successful in 34s
2025-02-09 09:56:45 -05:00
Dianne Skoll a5a7637696 Bump version in preparation for next release. 2025-02-04 13:49:00 -05:00
Dianne Skoll 3b43222585 Add the triginfo("header") function and corresponding %<...> substitution sequence. 2025-02-01 14:39:06 -05:00
Dianne Skoll 51b831fb6a Check for proper escaping in JSON and TRANSLATE DUMP. 2025-02-01 11:15:25 -05:00
Dianne Skoll 0ebaaa4097 Add optional add_quote argument to escape() 2025-02-01 10:58:55 -05:00
Dianne Skoll 930bab0fde Add more tests. 2025-02-01 10:45:34 -05:00
Dianne Skoll 694c4099d1 Add \xAA sequence for parsing quoted strings; add the escape() built-in function; update docs. 2025-02-01 10:36:38 -05:00
Dianne Skoll 8c4ca12ca7 When creating the "info" JSON hash, make the keys lower-case instead of upper-case.
Remind unit tests / tests (push) Successful in 46s
2025-01-31 08:07:53 -05:00
Dianne Skoll e832eb868c Make INFO require "Header: Value" strings; make the "info" element in the JSON output a hash instead of an array.
Remind unit tests / tests (push) Successful in 36s
2025-01-30 16:58:56 -05:00
Dianne Skoll e6ceeee2ec Add the "INFO" clause to the REM command.
Remind unit tests / tests (push) Successful in 33s
Intended to pass additional information to a back-end to use as it wishes.
One example is to add extra info such as locaiton, description, etc. to ical
files.
2025-01-28 15:51:28 -05:00
Dianne Skoll 124c5c4e7e Make test mode warning more verbose.
Remind unit tests / tests (push) Successful in 35s
2025-01-21 11:54:24 -05:00