ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/Changes
(Generate patch)

Comparing rxvt-unicode/Changes (file contents):
Revision 1.1162 by sf-exg, Mon Oct 6 11:11:19 2014 UTC vs.
Revision 1.1302 by root, Thu Jan 4 19:52:37 2024 UTC

22TODO: catch exceptions when calling perl hooks 22TODO: catch exceptions when calling perl hooks
23TODO: xdbe 23TODO: xdbe
24TODO: optimise bg reeval for resize for common patterns (pixmap bigger than window?) 24TODO: optimise bg reeval for resize for common patterns (pixmap bigger than window?)
25TODO: pack rxvt_fatal messages into the exception object 25TODO: pack rxvt_fatal messages into the exception object
26TODO: load must not cache, but global image cache must be cleaned 26TODO: load must not cache, but global image cache must be cleaned
27TODO: provide something like % for easy access for parse_keysym
28TODO: description into --help output? 27TODO: description into --help output?
29TODO: rxvt -help => (see rxvt-XXX(1))? 28TODO: rxvt -help => (see rxvt-XXX(1))?
30TODO: xor_rect should shift right 29TODO: xor_rect should shift right
31TODO IMPL: recalc bg only when not fully covering (no alpha, repeat|extend etc..) 30TODO IMPL: recalc bg only when not fully covering (no alpha, repeat|extend etc..)
32 31
33TODO IMPL: colour-change event with index 32TODO IMPL: colour-change event with index
34TODO IMPL: recalc bg always on bg colour change 33TODO IMPL: recalc bg always on bg colour change
35 34
36TODO: document typical actions in rxvt.1.pod keysyms 35TODO: document typical actions in rxvt.1.pod keysyms
37TODO: document meta comments and on_action hook
38TODO: perl one-liner
39TODO: warn with a graphical message when env has been modified 36TODO: warn with a graphical message when env has been modified
37TODO: c&c perl socket via daemon-ext mechanism
38TODO: simplify extension metainfo cache, cache on disk
39TODO: URxvt::Ext::Name installs urxvt ext name and provides pod/manpage for URxvt::Ext::Name
40TODO: pixel droppins idenrasm,ll,scrollup
41TODO: cuu/cud and probably others default to 1 when arg is 0, not just missing, in xterm/vt102, but not in rxvt
42TODO: clean up the resource vs. long option mess, especially in the manpage.
43TODO: think about daemon delaying urxvt client exit.
44IDEA: use harfbuzz to render combining sequences, maybe also complex scripts
45TODO: rclock horribly time-biased
46TODO: rclock iso date mode?
47TODO: printf "\e[4:3m" - "undercurl" - should probbaly be interpreted as underline, rather than \e[43m
48TODO: feature where I can just click on (y/p/n) when prompted after pasting text to the terminal?
40 49
50TODO: 08:11:16 <dg> in some cases printf "\e]50;\a" can be a crash
5108:11:50 <dg> it seems to depend a bit on setup, two in a row maybe needed
52- what font dpes urxvtr flal back ion this case? why not fixed?
5307:28:56 <dg> schmorp: try printf '\e]50;\a\xe7\xaf\xad'
5407:29:15 <dg> i'm guessing the builtin font doesn't have that character (篭)
5507:29:40 <dg> on one machine with 9.30 that segfaults, with what looks like a null pointer deref
5607:29:58 <dg> on latest dev, but a different machine it hangs
5707:33:26 <dg> hmm, and on openbsd it doesn't even hang with that reduction, but the actual case the fuzzer
58 found does hang
5907:34:02 <dg> curl -o - dg.cx/f12-afl-urxvt-id0-src517.txt
60
61TODO: nmeum reports that when the wm resizes urxvt while it opens, the prompt is now somewhere in the middle
62of the window, rather than near the top. this behaviour change wss part of the wrapmode fix, and should normally
63prevent from readline jumping around on resizes. running urxvt with the exact geometry that the wm will assign "fixed" this.
64https://github.com/exg/rxvt-unicode/commit/1eb2c326cb88ee7bae01e995a16829746bfe374e
65
66 - fix reference counting of values returned by some perl bindings.
67 - fix OSC responses with 7-bit ST (reported by Stuart Henderson).
68 - change the encoding of buttons 8-11 in mouse reporting
69 sequences to match xterm's and enable reporting of release
70 events for them (patch by Pierre-Marc Fournier).
71 - clamp coordinates in mouse reporting sequences to the number
72 of rows and columns (patch by Nick Hanley).
73 - added Alt_L/ALt_R and updated some keys in iso 14755 5.2 mode.
74 - perl 5.38 does not handle empty locale names, use "C" instead
75 (patch by sxzzsf).
76 - add emoji test character, so that emoji-only fonts can be used without
77 any tricks.
78
799.31 Mon 02 Jan 2023 18:13:16 CET
80 - implement a fix for CVE-2022-4170 (reported and analyzed by David Leadbeater).
81 While present in version 9.30, it should not be exploitable. It is exploitable
82 in versions 9.25 and 9.26, at least, and allows anybody controlling output to
83 the terminal to execute arbitrary code in the urxvt process.
84 - the background extension no longer requires off focus fading support
85 to be compiled in.
86 - the confirm-paste extension now offers a choice between pasting the original
87 or a sanitized version, and also frees up memory used to store the paste text
88 immediately.
89 - fix compiling without frills.
90 - fix rewrapMode: never.
91 - fix regression that caused urxvt to no longer emit responses
92 to OSC color queries other than OSC 4 ones.
93 - fix regression that caused urxvt to no longer process OSC 705.
94 - restore CENTURY to be 1900 to "improve" year parsing in urclock (or at
95 least go back to the old interpretation) (based on an analysis
96 by Tommy Pettersson).
97 - exec_async (used e.g. by the matcher extension to spawn processes) now
98 sets the URXVT_EXT_WINDOWID variable to the window id of the terminal.
99 - implement -fps option/refreshRate resource to change the default 60 Hz
100 maximum refresh limiter. I always wanted an fps option, but had to
101 wait for a user requesting it.
102 - new clickthrough extension.
103 - perl now also requires Xext.
104 - X region and shape extension functionality has been exposed to perl
105 extensions.
106 - RENDER extension no longer depends on ENABLE_XIM_ONTHESPOT.
107
1089.30 Sat 27 Nov 2021 21:07:09 CET
109 - the background extension did not initialise properly when automatically
110 loaded via the OSC.
111 - new "on_attach" hook type implemented, to initialise late-loading
112 extensions.
113
1149.29 Mon 22 Nov 2021 18:07:14 CET
115 - libptytty (http://dist.schmorp.de/libptytty/) is now a required
116 external dependency.
117 - enable confirm-paste extension by default, can be disabled by e.g.
118 URxvt.perl-ext: -confirm-paste
119 - Key bindings specified with the -keysym option or with resources of
120 the form URxvt*keysym work again. Such resources, as opposed to
121 resources of the form URxvt.keysym, were not officially allowed but
122 accepted, so ignoring them is considered a regression.
123 - new option/resource -rm/rewrapMode, which sets the line rewrap
124 mode to auto, never or always.
125 - new option/resource -dpb/disablePasteBrackets, which can be used to
126 disable bracketed paste mode sequences, as more and more programs
127 abuse these sequences (typically in the name of security, but these
128 sequences are not improving security). Also, bracketed paste mode
129 is now under frills.
130 - add manpage for urclock.
131 - confirm-paste wrongly considered brackets as ctrlchars (patch by
132 Jakub Wilk, debian bug #995244).
133 - if urxvt cannot detect a good estimate for font width (because a font does
134 not contain latin characters at all for example), it will now fall
135 back to xft's max_advance_width, which works well with some fonts. It
136 currently will warn about this.
137 - do not render variation selectors in the default font as boxes, treat
138 them as zero-width characters.
139 - change combining character architecture to allow fonts to handle
140 combining sequences on their own. This could allow future renderers
141 to be more intelligent about these sequences.
142 - use the previous enhancement to allow unicode characters outside of the
143 BMP to be rendered even without --enable-unicode3, as long as an
144 xft with the character is configured.
145 It's recommended to stay with disabled unicode3 even more now.
146 - freetype/xft have been verified to return nonsensical offsets for
147 combining characters. urxvt tries to compensate to some extent,
148 but diacritics will be slightly off in many cases, and far off in
149 some cases (e.g. input mono).
150 - when checking for overlap/careful handling, take non-basefont
151 character shifts into account.
152 - extensions can now request autoloading on OSC and Perl OSC sequences,
153 implement this for the background, clipboard-osc and overlay-osc
154 extensions.
155 - the background extension will now be autoloaded when the OSC 20 or 705
156 sequence is received.
157 - added OSC 776 sequence to return character cell width, height and font
158 ascent, which is useful when using urxvt as slave to calculate window
159 size form or to row/column count.
160 - matcher extension documentation now points out some requirements for
161 regular expressions. the default url matching regex will now try
162 to match IRLs in addition to URLs.
163 - The view_start perl method now scrolls to the bottom also when the
164 argument is greater than 0.
165 - eval scroll actions now scroll to the bottom when scrolling down and
166 there are less lines to scroll than the ones requested (reported by
167 Stephen Talley).
168 - allow perl-ext and perl-ext-common to override autoloaded extensions.
169 this allows tabbed to disable itself in subtabs, avoiding recursive
170 loading.
171 - update precompose table to unicode 13.0.
172 - update charset conversion tables to perl 5.32 (this only affected
173 cs_koi8_u_from_unicode).
174 - unicode characters > 0x100000 were not handled correctly w.r.t.
175 font rendering.
176 - replace bitstream vera by dejavu sans, as it has replaced the former
177 almost everywhere.
178 - urxvt will now try tic -x first and only fall back to tic without -x
179 when tic -x fails.
180 - fix urclock not erasing the old date on the clock face, causing
181 overdraw, plus a host of other small fixes and improvements.
182 - shave off over 1K of code size from urclock by replacing the sine table
183 with a slightly less accurate fixed point approximation.
184 - do not specify indentation with =over in pod, this is no longer
185 needed with semi-modern pod tools and gives the formatter more
186 stylistic freedom.
187 - background extension did not set the "size-sensitive" flag
188 when repeat mode wasn't normal.
189 - extensions are now subjected to "use strict 'subs'".
190 - avoid crashing when xft successfully opens a font but then somehow
191 can't lock the face.
192 - locale_decode/encode api methods now pass through undef unchanged.
193 - fix undefined behaviour in the perl hook function, as diagnosed by clang.
194
1959.26 Fri May 14 19:14:14 CEST 2021
196 - ev_iouring.c was wrongly required during compilation, and wrongly
197 not packaged.
198
1999.25 Fri May 14 15:51:36 CEST 2021
200 - for the 17.5th anniversary, and because many distributions seem to
201 remove rxvt in favour of urxvt, this release resurrects rclock as
202 urclock.
203 - add support for systemd socket-based activation - debian bug #917105,
204 freebsd bug #234276.
205 - do not destruct perl on exit anymore: this might fail for a variety of
206 reasons, and takes unnecessary time.
207 - remove any macros from urxvtperl manpage(s), should fix debian
208 bug 858385.
209 - the old bg image resources are now provided by the background
210 extension, and perl is thus required for bg image support. No
211 configuration change is needed: urxvt autoloads the background
212 ext if any bg image resource/option is present (for OSC sequences to
213 work you need to enable it explicitly). The old bg image
214 resources are also now deprecated; users are encouraged to
215 switch to the new bg image interface (see man urxvt-background).
216 - confirm-paste now checks for any ctlchars, not just newlines.
217 - searchable scrollback will now ignore bracketed paste mode sequences
218 (prompted by Daniel Gröber's patch).
219 - drop ISO 2022 locale support. ISO 2022 encodings are not supported in
220 POSIX locales and clash with vt100 charset emulation (the luit
221 program can be used as a substitute).
222 - perl didn't parse rgba colours specified as an array correctly,
223 only allowing 0 and 100% intensity for each component (this affected
224 fill and tint).
225 - when iterating over resources, urxvt will now try to properly handle
226 multipart resources (such as "*background.expr"), for the benefit
227 of autoloading perl extensions.
228 - ESC G (query rxvt graphics mode) has been disabled due to security
229 implications. The rxvt graphics mode was removed in rxvt-unicode 1.5,
230 and no programs relying on being able to query the mode are known.
231 - work around API change breakage in perl 5.28, based on a patch by
232 Roman Bogorodskiy.
233 - improved security: rob nation's (obsolete) graphics mode queries
234 no longer reply with linefeed in secure/default mode.
235 - ISO 8613-3 direct colour SGR sequences (patch by Fengguang Wu).
236 - xterm focus reporting mode (patch by Daniel Hahler).
237 - xterm SGR mouse mode.
238 - implement DECRQM. Patch by Přemysl Eric Janouch.
239 - add missing color index parameter to OSC 4 response. Patch
240 by Přemysl Eric Janouch.
241 - in some window managers, if smart resize was enabled, urxvt
242 erroneously moved the window on font change - awesome bug
243 #532, arch linux bug ##34807 (patch by Uli Schlachter).
244 - fix urxvtd crash when using a background expression.
245 - properly restore colors when using fading and reverse video
246 is enabled while urxvt is focused and then disabled while it
247 is not focused, or vice versa (patch by Daniel Hahler).
248 - fix high memory usage when an extension repeatedly hides and
249 shows an overlay (reported by Marcel Lautenbach).
250 - expose priv_modes member and constants to perl extensions
251 (patch by Rastislav Barlik).
252 - fix a whole slew of const sillyness, unfortunately forced upon
253 us by ISO C++.
254 - update to libecb 0x00010006.
255 - disable all thread support in ecb.h as we presumably don't need it.
256 - slightly improve Makefile source dependencies.
257 - work around bugs in newer Pod::Xhtml versions (flags incorrect formatting codes
258 in xhtml/html sections but does not interpret correct ones).
259
2609.22 Sat Jan 23 21:07:33 CET 2016
261 - NOTICE: this release updates terminfo.
262 - add terminfo capabilities for various ctrl and shift-ctrl key variants
263 (patch by Sebastian Schmidt).
264 - fix longstanding core font encoding bug where some character
265 ranges could not be mapped from unicode to the font: affected
266 encodings are big5, gb2312, iso8859-8 (hebrew), jis0201 and
267 ksc5601 (reported by Mikachu).
268 - fix crash when the number of columns is 1 and a 0 width character is inserted
269 (reported by Kuang-che Wu).
270 - fix a crash when parsing an invalid color specification (reported by Kuang-che Wu).
271 - fix a buffer overflow in font name parser (reported by Kuang-che Wu).
272 - do not start blinking cursor if the window is unfocused (reported by
273 Devin J. Pohly).
274 - change the width of underline and i-beam cursor to 2 pixels (based on
275 a patch by Omar Sandoval).
276 - add pointerShape resource to change the mouse pointer shape
277 (based on a patch by Brian Watson).
278 - a keysym resource for a key which is already bound to an
279 action now properly rebinds the key.
280 - do not report mouse motion events if Shift is active (patch by Daniel Hahler).
281 - put the alpha component last in responses to OSC color queries
282 (patch by Benjamin Herr).
283 - the key_press hook is now invoked before processing the
284 event, as documented. This change was done in 9.21 but not
285 announced and fixes debian bugs #511377, #531751 and red hat
286 bug #1105069. Note that this change breaks a few scripts,
287 such as mark-yank-urls, which rely on the previous buggy
288 behaviour that urxvt processes the event (in particular
289 keysym bindings) before invoking the hook.
290 - the tabbed extension now properly refreshes the active tab
291 on a key press when the mouse pointer is outside the terminal
292 window.
293 - add 'lookup_keysym' perl method to lookup the action bound
294 to a key combination.
295 - a key combination bound to 'matcher:select' can now be used
296 to cycle through the matches in matcher.
297 - change perl integer accessors (->width et al.) into mutators.
298 - this version has been verified to work with perl 5.8.3.
299
3009.21 Wed Dec 31 14:50:03 CET 2014
301 - the "moa redraw 8-bit british vintage colour management" release.
302 - NOTICE: this release updates terminfo.
303 - fix pixel droppings on overdraw when a secondary core font has the
304 same height but different ascent.
305 - implement cvvis in terminfo as blinking cursor, to distinguish it
306 from cnorm (emacs uses cvvis which is commonly a blinking cursor).
307 - when xft support was compiled in, colour queries erroneously returned
308 premultiplied values, this also affected internal queries, for example
309 when calculating faded colour. alpha is now divided out when possible,
310 which is more correct but loses colour resolution.
41 - Add DECSCUSR xterm extension to set the cursor to a vertical bar. 311 - add DECSCUSR xterm extension to set the cursor to a vertical bar.
312 - add 'extension:string' action, and associated on_action perl
313 hook, for keysym resources that invokes actions provided by
314 perl extensions. The 'perl:string' action and
315 on_user_command hook are deprecated but still supported.
316 - add 'builtin-string' action for keysym resources that restores string
317 mappings for keys that have predefined actions in urxvt.
318 - add -k option to urxvtc for killing the daemon process.
319 - document urxvtd's -e/--eval option that was implemented in 9.16,
320 but not documented.
321 - add -dockapp option to make the wm treat urxvt as a dockapp.
42 - Add -mc option and multiClickTime resource to set the maximum time 322 - add -mc option and multiClickTime resource to set the maximum time
43 between multi-click select events (patch by Joe Peterson). 323 between multi-click select events (patch by Joe Peterson).
44 - New 'eval' extension to evaluate arbitrary perl code with keysym 324 - new 'eval' extension to evaluate arbitrary perl code with keysym
45 bindings. The extension also provides methods that implement basic 325 bindings. The extension also provides methods that implement basic
46 actions, such as pasting selections and scrolling. 326 actions, such as pasting selections and scrolling.
47 - the macosx-clipboard and macosx-clipboard-native extensions have been removed. 327 - the macosx-clipboard and macosx-clipboard-native extensions have been removed.
48 - the keysym-list extension has been removed, you can use the following
49 perl one-liner to expand your existing .Xdefaults file to do without it:
50 - kuake extension now uses the kuake.hotkey resource to specify the hotkey. 328 - kuake extension now uses the kuake.hotkey resource to specify the hotkey.
51 - new 'matcher:select' mode of matcher to iterate over the matches with the keyboard. 329 - new 'matcher:select' mode of matcher to iterate over the matches with the keyboard.
52 - the 'matcher:list' feature of matcher now honours the launcher 330 - the 'matcher:list' feature of matcher now honours the launcher
53 associated to a matched pattern. 331 associated to a matched pattern.
332 - speed-up matcher underlining on very long lines (reported by Edward Z. Yang).
54 - fix up/down commands of searchable scrollback so that they always move 333 - fix up/down commands of searchable-scrollback so that they always move
55 to the previous/next logical line with a match, if any. 334 to the previous/next logical line with a match, if any.
56 - searchable-scrollback resource has been deprecated (use keysym instead). 335 - searchable-scrollback resource has been deprecated (use keysym instead).
57 - extension parameter passing is deprecated (use resource mechanism instead). 336 - extension parameter passing is deprecated (use resource mechanism instead).
58 - upgrade to GPLv3 (see COPYING). 337 - upgrade to GPLv3 (see COPYING).
338 - compile out of the box on Solaris 10, again.
59 - Fix height and position of the stippled area in next scrollbar (patch 339 - fix height and position of the stippled area in next scrollbar (patch
60 by Thomas Otto). 340 by Thomas Otto).
61 - fix off-by-one bug causing the iso14755 window not to jump out of the 341 - fix off-by-one bug causing the iso14755 window not to jump out of the
62 way properly. 342 way properly.
343 - fix crash that may happen if a lib to which urxvt is linked to calls setenv.
344 - fix memory leak in special_{encode,decode} perl methods.
345 - fix refresh bug that occurs when reverse video is set on a cell
346 containing a space and with the same bg and fg colour, red hat bug
347 #830236.
348 - fix crash that may happen if an x error is received after a terminal
349 window/popup has been destroyed already.
350 - removed superfluous 0 digit from sgr terminfo sequence.
351 - greatly improve colour allocation on colour-starved pseudocolour
352 displays to avoid read-write cells instead of simply failing
353 (this is only relevant for antique 8bpp frame buffers).
354 - do not free fade colours when not doing fading (this is likely
355 only relevant for antique 8bpp frame buffers).
356 - do not specialcase 2 or 4 colour visuals, leading to
357 simpler and actually more correct code.
358 - hopefully no longer leak colours on !truecolour visuals.
359 - use consistent method names (scr_recolour => scr_recolor).
360 - use simpler (but slightly less bogus) formula for nearest
361 colour choice (this is likely only relevant for antique 8bpp
362 frame buffers).
363 - remove fallback behaviour when initialising colours - the
364 behaviour was inconsistent between startup vs. later and
365 was only effective when valid colours couldn't be allocated.
63 366
649.20 Sat Apr 26 16:22:27 CEST 2014 3679.20 Sat Apr 26 16:22:27 CEST 2014
65 - (libptytty) fix bug that prevented urxvtd from writing utmp 368 - (libptytty) fix bug that prevented urxvtd from writing utmp
66 entries when using --fork (reported by Ryan Kavanagh). 369 entries when using --fork (reported by Ryan Kavanagh).
67 - security bugfix: window property values could be queried even 370 - security bugfix: window property values could be queried even

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines