Dianne Skoll
3083142753
Don't set up an inotify descriptor in non-daemon mode.
2025-09-30 16:41:16 -04:00
Dianne Skoll
26ec92675c
Give more specific ADDOMIT advice.
2025-09-29 14:22:10 -04:00
Dianne Skoll
01461929d7
Fix line-counting logic that made entirely-empty weeks one row too short.
2025-09-29 09:48:15 -04:00
Dianne Skoll
b3a2c0e7c7
Don't add a spurious blank line if there are no entries at all for a given calendar row.
2025-09-28 22:52:44 -04:00
Dianne Skoll
9f139b0d02
More readable code.
2025-09-27 10:03:59 -04:00
Dianne Skoll
5610590fa8
Be pickier about $WarningLevel. Make sure it matches the Perl regex: ^\d\d\.\d\d\.\d\d$
2025-09-27 09:38:00 -04:00
Dianne Skoll
5092d5bc16
More warning_level annotations.
2025-09-25 18:08:29 -04:00
Dianne Skoll
2f86920842
Add $WarningLevel special variable.
2025-09-25 17:55:16 -04:00
Dianne Skoll
604e1b049c
Add a warning to use SCANFROM with a moveable ADDOMIT.
2025-09-24 13:02:12 -04:00
Dianne Skoll
af69f8779d
Don't loop forever if a reminder moves backwards because of a time zone difference.
...
If we are not making progress, it's because the reminder has expired.
2025-09-19 13:33:23 -04:00
Dianne Skoll
131e77fa18
Use "unsigned long" to track expresison node evaluations.
2025-09-13 11:38:55 -04:00
Dianne Skoll
f153acf7ce
Default max-expr-complexity to 10,000,000
2025-09-12 12:56:14 -04:00
Dianne Skoll
dc6a229f5f
Add some const qualifiers, as recommended by cppcheck.
2025-09-12 11:15:10 -04:00
Dianne Skoll
5a3840759a
Make PrintValue truncate long strings on a multibyte-character boundary instead of potentially splitting a UTF-8 sequence.
2025-09-12 11:12:19 -04:00
Dianne Skoll
2f70b37d4c
Be stricter about parsing hex constants.
2025-09-11 17:22:24 -04:00
Dianne Skoll
d15c8f106b
Support hexadecimal integer constants in expressions; add hex() function.
2025-09-11 17:02:22 -04:00
Dianne Skoll
9d999a0074
Support hexacdecimal integer constants in expressions.
2025-09-11 16:50:13 -04:00
Dianne Skoll
097dda1750
Make asc() always return a number between 0 and 255.
2025-09-11 16:42:32 -04:00
Dianne Skoll
565bca4380
Add statistic for max expr node evaluations per line.
2025-09-11 12:04:32 -04:00
Dianne Skoll
adb38fe82e
Fix off-by-one error.
2025-09-11 11:25:20 -04:00
Dianne Skoll
804cf14a78
Implement --max-expr-complexity
2025-09-11 11:11:11 -04:00
Dianne Skoll
d9bf902153
Put #ifdef guards around wide char code.
2025-09-10 17:56:32 -04:00
Dianne Skoll
53a12de2f9
Fix typo
2025-09-10 17:54:26 -04:00
Dianne Skoll
fe2b34da68
Avoid memory leak.
2025-09-10 17:54:06 -04:00
Dianne Skoll
55975154b1
Add codepoint() and mbchar() functions.
2025-09-10 17:33:57 -04:00
Dianne Skoll
b00cf9c5b7
Remove some unnecessary assignments.
2025-09-10 13:48:18 -04:00
Dianne Skoll
375576fcc5
Add better support for multi-byte character set.
...
The functions mbindex, mbstrlen and mbsubstr are just like
index, strlen and substr, but they use and return 1-based
character indexes rather than 1-based byte indexes.
2025-09-10 13:25:27 -04:00
Dianne Skoll
21e0940257
Add distro-beta target.
2025-09-06 12:02:20 -04:00
Dianne Skoll
2835176ad3
Make "make test" run all tests by default. Add individual test-basic and test-tz makefile targets.
2025-09-05 17:46:25 -04:00
Dianne Skoll
ef7021972e
Add trigimetz and trigeventstarttz functions.
2025-09-04 15:36:27 -04:00
Dianne Skoll
47a4456c20
Explicitly initialize LastTrigger.tz to NULL.
2025-09-04 14:26:35 -04:00
Dianne Skoll
e9ee7492f7
Check for setuid/setgid early.
2025-09-04 14:25:09 -04:00
Dianne Skoll
4237dc4a3f
Allow empty string to be used in tzconvert to designate system default time zone.
2025-09-04 10:09:46 -04:00
Dianne Skoll
faf8947dda
Properly cache stdin in interactive mode.
2025-09-04 00:15:21 -04:00
Dianne Skoll
41a3db3a37
Fix abort.
2025-09-03 23:14:58 -04:00
Dianne Skoll
f12bcf3fe6
Restructure test targets.
2025-09-03 22:36:46 -04:00
Dianne Skoll
9ec1006804
Make an empty TZ (ie, TZ "") the same as no TZ.
2025-09-03 19:10:26 -04:00
Dianne Skoll
dfabda7dee
add trigtz() function
2025-09-03 14:19:31 -04:00
Dianne Skoll
da146d7989
Always output time_in_tz in JSON when needed.
2025-09-03 14:08:56 -04:00
Dianne Skoll
703907c94d
Update JSON output.
2025-09-03 13:57:25 -04:00
Dianne Skoll
bcfee04cae
Handle another time zone edge case.
2025-09-03 13:21:16 -04:00
Dianne Skoll
5f9e71f9eb
More timezone fixification.
2025-09-03 13:05:54 -04:00
Dianne Skoll
272336226e
Add timezone support to evaltrig.
2025-09-03 12:42:59 -04:00
Dianne Skoll
32f4b125b5
Seemingly (?) working time zone support!!
2025-09-03 12:35:51 -04:00
Dianne Skoll
7979a69cb9
First semi-sorta-working time zone adjustment.
2025-09-03 12:22:09 -04:00
Dianne Skoll
651368fedc
More work on timezone support.
2025-09-03 11:35:21 -04:00
Dianne Skoll
fe002557cf
New approach to handling time zone specs in REM command.
2025-09-03 11:02:01 -04:00
Dianne Skoll
d2785d909c
Remember DSEToday and SysTime in Local* variables so we can switch timezones.
2025-09-03 10:36:30 -04:00
Dianne Skoll
5d46df871f
Clamp trigger() to "1 January 1990 AT 00:00" if UTC flag is used.
2025-08-28 13:30:21 -04:00
Dianne Skoll
c5d661124c
Never return a year < 1990 from trigger()
2025-08-28 12:53:28 -04:00