CHANGELOG.md (7082B)
1 ## [0.16 Unreleased] 2 3 ## [0.15] - 2025-01-15 4 Fix missing bindir for MacOS install 5 6 ## [0.14] - 2025-01-15 7 Remove lttng and replace with simpler debug messsages to stderr to fix MacOS 8 build. 9 10 ## [0.13] - 2024-09-14 11 Fix build issue with pkg-config 12 13 ## [0.12] - 2024-09-14 14 Fixed: 15 * #103 truncated upload, fix folding by allocating enough space for carriage 16 return 17 * #96 Properly parse multistatus: A day can have multiple all-day events, which 18 will be returned as "calendar-data" entries in the XML. By using libxml2 we 19 can check the PRODID of the events and only sync with the daily event of the 20 diary. 21 * #97 GMX unfolding - escaped CR: The XML response for certain providers has a 22 character sequence ` ` at the end of each ics field. This is an escaped 23 carriage return. Properly parsing the XML with libxml2 automatically detects 24 and converts that carriage return. 25 26 Added: 27 * #47 External tool for oath authentication. CalDAV oauth with `oauth_eval_cmd`. 28 * #98 XML response parsing with libxml2 29 30 Removed: 31 * Sync with Google server is still supported, but `google_clientid`, 32 `google_secretid` and `google_tokenfile` settings are removed. Use external 33 tool for oath authentication (#47), for instance, "oama". 34 * A lot of custom parsing logic (xml and json string token manipulation) was 35 removed and replaced with libxml parsing (#98) 36 37 ## [0.11] - 2024-06-22 38 ### Changed 39 Calendar sync extended with support for providers that work with basicauth. 40 Tested providers GMX and Yahoo. Google calendar still supported. Provider 41 specifc changes: 42 * replace `google_calendar` config key with `caldav_calendar` 43 * extract caldav host without path as basis for further api paths 44 * fix start/end filter in event report request 45 * Google auth scope `calendar.events.owned` replaced by `calendar.events` 46 (https://developers.google.com/calendar/api/auth) 47 48 Documentation updates: 49 * doc(man): update scdoc `SOURCE_DATE_EPOCH` 50 * doc(lttng): create channel before starting session. The live sessions needs a 51 channel first before start. Otherwise, Error: No channel found in the session 52 * doc(google): update api scopes 53 * doc(readme): update issue board 54 * doc(nix): document nix build/install 55 * doc(nix): prefetch latest commit hash 56 57 Other various changes and fixes: 58 * feat: improve error handling 59 * fix(folding): missing CR 60 * fix(caldav): bearer token buffer overflow 61 * doc(#96): advise dedicated calendar for caldav sync 62 (https://board.in0rdr.ch/public/task/96/adedb4a1f31d1e5116b600c1c9dc225db8675d125f071758913a9570c383) 63 64 ### Added 65 CalDAV sync support for basicauth providers (tested with Yahoo, GMX). Changes 66 to support the providers. 67 68 GMX: 69 * follow redirects during principal discovery 70 * add missing ics fields for upload 71 * add missing etag prop for calendar retrieval 72 * relax xml token search and parsing 73 * bug(#97) description: unfolding - escaped CR 74 (https://board.in0rdr.ch/public/task/97/adedb4a1f31d1e5116b600c1c9dc225db8675d125f071758913a9570c383) 75 Bug in the download part. All ics fields in the xml response have the carriage 76 return html escape sequence ' ' Unfortunately this escape sequence is not 77 handled correctly on our side yet and saved to the text file on disk. All 78 other caldav server implementations only send '\n' at the end of each ics line. 79 80 Yahoo: 81 * fix several printf buffer overflows 82 * fix xml parsing functions to not assume xml namespace, can be different 83 depending on the provider 84 * fix wrong caldav report depth header fields 85 * fix wrong caldav request time-range xml filter that synced down the event 86 from the next day to the currently selected day 87 * fix missing CR while unfolding 88 * send proper content-type 89 * new lttng `debug_long` tracepoint 90 * improve homeset and calendar requests 91 * replace LAST-MODIFIED with DTSTAMP, because LAST-MODIFIED is not available on 92 all providers 93 94 Scripts and documentation for Nix: 95 * Nix shell for development setups including build and documentation utilities 96 * Nix stdenv build scripts for stable/unstable build files 97 98 ## [0.10] - 2024-04-15 99 * fix: use addstr without fmt 100 * Update IRC channel in man page 101 102 ## [0.9] - 2023-10-08 103 104 ### Changed 105 * Increase token size to max. advertised in the Google API docs: 106 https://developers.google.com/identity/protocols/oauth2#size 107 * Fixes bugs while drawing days before/after the DST change and in the 108 movements between these boundaries 109 110 ### Added 111 * feat(lttng): add debug_tm tracepoint 112 * feat: replace usleep with nanosleep 113 114 ## [0.8] - 2023-03-26 115 116 ### Notes 117 * This is a bugfix release 118 119 ### Changed 120 * Fix caldav access/refresh token size 121 * Fix caldav postfield size (port) 122 * Fix wrong date marks in ics import 123 * Fix minor typos in docs and confirmation screen 124 * Fix Makefile target exec rights 125 126 ### Added 127 * Improve docs for obs project and caldav API 128 129 ## [0.7] - 2023-02-20 130 131 ### Changed 132 * #15: Fix segfault when no remote google_calendar 133 * #12: Prevent overflow in display_entry 134 * #11: Fix repeated 'S' key press 135 * #10: Fix malloc for google_tokenfile 136 * #3: Improve handling for tokenfile when offline (Caldav sync) 137 * Move source code from Codeberg 138 139 ### Added 140 * #6/7: LTTng instrumentation for development and debugging purposes 141 142 ## [0.6] - 2022-02-02 143 144 ### Changed 145 * Changed "s" shortcut logic: "s" no longer jumps to specific day (search), use 146 "f" to "find" date (drop-in replacement). Use "s" to "sync" entries to Google 147 calendar (CalDAV sync). 148 * Move source code from GitHub to Codeberg 149 * Simplify man page generation with [scdoc](https://sr.ht/~sircmpwn/scdoc/) 150 * Fix segfault at a first run (#1) 151 152 ### Added 153 * External text format command (#68, #80) `--fmt-cmd` 154 * Pseudo-terminal to support ANSI escape characters (colors, font types, etc.) 155 and `--no-pty` option (#6, #44, #5) 156 * Mouse support for selecting dates (#60) 157 * Documentation of Open Build Service (OBS) jobs (`docs/OBS.md`) 158 * Documentation of testing and debugging procedures (`docs/TESTING.md`) 159 * Add `debug` target to `Makefile` 160 * CalDAV sync: "s"/"S" shortcuts to sync selected day/Month with Google 161 calendar 162 * Import (#76, #77): "i" shortcut to import entries from .ics 163 * Export (#78): "E" shortcut to export entries to .ics 164 165 ## [0.5] - 2021-02-24 166 167 ### Changed 168 * Make year range (#56), first weekday (#13) and file name configurable 169 * Change g/G shortcut logic: Jump to first/last non-empty entry (#57) 170 * Improve man page and overall documentation 171 172 ### Added 173 * Add optional configuration file (#35) 174 * Add command line options (#34), help and version flags (#45) 175 176 ## [0.4] - 2020-10-17 177 178 ### Changed 179 * Fix install on OSX (#41) 180 * Improve Makefile and build instructions 181 182 ## [0.3] - 2016-12-28 183 184 ### Changed 185 * Escape characters and utf-8 fixes 186 * First day of week according to locale 187 188 ### Added 189 * Header file 190 * Constant parameters 191 * Jump to nearest entry 192 * Man page 193 194 ## [0.2] - 2016-11-27 195 196 ### Changed 197 * Fixes trailing '/' in entry reading 198 199 ### Added 200 * Remove entries 201 * Search entries, jump to date 202 203 ## [0.1] - 2016-11-24 204 205 ### Notes 206 * There is still a bug which appends '/' to the diary directory even if the 207 trailing '/' is already given. 208 * Removing entries not yet possible