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

Comparing rxvt-unicode/Changes (file contents):
Revision 1.1191 by sf-exg, Fri Jan 16 20:14:36 2015 UTC vs.
Revision 1.1304 by sf-exg, Sun Feb 4 16:44:17 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
36TODO: document typical actions in rxvt.1.pod keysyms 35TODO: document typical actions in rxvt.1.pod keysyms
37TODO: warn with a graphical message when env has been modified 36TODO: warn with a graphical message when env has been modified
38TODO: c&c perl socket via daemon-ext mechanism 37TODO: c&c perl socket via daemon-ext mechanism
39TODO: simplify extension metainfo cache, cache on disk 38TODO: simplify extension metainfo cache, cache on disk
40TODO: URxvt::Ext::Name installs urxvt ext name and provides pod/manpage for URxvt::Ext::Name 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?
41 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 memory leak when a background expression uses the muladd
67 or focus_fade operators (reported by Erik-Jan).
68 - fix reference counting of values returned by some perl bindings.
69 - fix OSC responses with 7-bit ST (reported by Stuart Henderson).
70 - fix mouse reporting of motion notify events to report 3 as
71 the button number when no button is pressed, same as xterm.
72 Previously urxvt reported the number of the last button
73 pressed or an invalid value, before the first button press
74 (reported by Uli Schlachter).
75 - change the encoding of buttons 8-11 in mouse reporting
76 sequences to match xterm's and enable reporting of release
77 events for them (patch by Pierre-Marc Fournier).
78 - clamp coordinates in mouse reporting sequences to the number
79 of rows and columns (patch by Nick Hanley).
80 - added Alt_L/ALt_R and updated some keys in iso 14755 5.2 mode.
81 - perl 5.38 does not handle empty locale names, use "C" instead
82 (patch by sxzzsf).
83 - add emoji test character, so that emoji-only fonts can be used without
84 any tricks.
85
869.31 Mon 02 Jan 2023 18:13:16 CET
87 - implement a fix for CVE-2022-4170 (reported and analyzed by David Leadbeater).
88 While present in version 9.30, it should not be exploitable. It is exploitable
89 in versions 9.25 and 9.26, at least, and allows anybody controlling output to
90 the terminal to execute arbitrary code in the urxvt process.
91 - the background extension no longer requires off focus fading support
92 to be compiled in.
93 - the confirm-paste extension now offers a choice between pasting the original
94 or a sanitized version, and also frees up memory used to store the paste text
95 immediately.
96 - fix compiling without frills.
97 - fix rewrapMode: never.
98 - fix regression that caused urxvt to no longer emit responses
99 to OSC color queries other than OSC 4 ones.
100 - fix regression that caused urxvt to no longer process OSC 705.
101 - restore CENTURY to be 1900 to "improve" year parsing in urclock (or at
102 least go back to the old interpretation) (based on an analysis
103 by Tommy Pettersson).
104 - exec_async (used e.g. by the matcher extension to spawn processes) now
105 sets the URXVT_EXT_WINDOWID variable to the window id of the terminal.
106 - implement -fps option/refreshRate resource to change the default 60 Hz
107 maximum refresh limiter. I always wanted an fps option, but had to
108 wait for a user requesting it.
109 - new clickthrough extension.
110 - perl now also requires Xext.
111 - X region and shape extension functionality has been exposed to perl
112 extensions.
113 - RENDER extension no longer depends on ENABLE_XIM_ONTHESPOT.
114
1159.30 Sat 27 Nov 2021 21:07:09 CET
116 - the background extension did not initialise properly when automatically
117 loaded via the OSC.
118 - new "on_attach" hook type implemented, to initialise late-loading
119 extensions.
120
1219.29 Mon 22 Nov 2021 18:07:14 CET
122 - libptytty (http://dist.schmorp.de/libptytty/) is now a required
123 external dependency.
124 - enable confirm-paste extension by default, can be disabled by e.g.
125 URxvt.perl-ext: -confirm-paste
126 - Key bindings specified with the -keysym option or with resources of
127 the form URxvt*keysym work again. Such resources, as opposed to
128 resources of the form URxvt.keysym, were not officially allowed but
129 accepted, so ignoring them is considered a regression.
130 - new option/resource -rm/rewrapMode, which sets the line rewrap
131 mode to auto, never or always.
132 - new option/resource -dpb/disablePasteBrackets, which can be used to
133 disable bracketed paste mode sequences, as more and more programs
134 abuse these sequences (typically in the name of security, but these
135 sequences are not improving security). Also, bracketed paste mode
136 is now under frills.
137 - add manpage for urclock.
138 - confirm-paste wrongly considered brackets as ctrlchars (patch by
139 Jakub Wilk, debian bug #995244).
140 - if urxvt cannot detect a good estimate for font width (because a font does
141 not contain latin characters at all for example), it will now fall
142 back to xft's max_advance_width, which works well with some fonts. It
143 currently will warn about this.
144 - do not render variation selectors in the default font as boxes, treat
145 them as zero-width characters.
146 - change combining character architecture to allow fonts to handle
147 combining sequences on their own. This could allow future renderers
148 to be more intelligent about these sequences.
149 - use the previous enhancement to allow unicode characters outside of the
150 BMP to be rendered even without --enable-unicode3, as long as an
151 xft with the character is configured.
152 It's recommended to stay with disabled unicode3 even more now.
153 - freetype/xft have been verified to return nonsensical offsets for
154 combining characters. urxvt tries to compensate to some extent,
155 but diacritics will be slightly off in many cases, and far off in
156 some cases (e.g. input mono).
157 - when checking for overlap/careful handling, take non-basefont
158 character shifts into account.
159 - extensions can now request autoloading on OSC and Perl OSC sequences,
160 implement this for the background, clipboard-osc and overlay-osc
161 extensions.
162 - the background extension will now be autoloaded when the OSC 20 or 705
163 sequence is received.
164 - added OSC 776 sequence to return character cell width, height and font
165 ascent, which is useful when using urxvt as slave to calculate window
166 size form or to row/column count.
167 - matcher extension documentation now points out some requirements for
168 regular expressions. the default url matching regex will now try
169 to match IRLs in addition to URLs.
170 - The view_start perl method now scrolls to the bottom also when the
171 argument is greater than 0.
172 - eval scroll actions now scroll to the bottom when scrolling down and
173 there are less lines to scroll than the ones requested (reported by
174 Stephen Talley).
175 - allow perl-ext and perl-ext-common to override autoloaded extensions.
176 this allows tabbed to disable itself in subtabs, avoiding recursive
177 loading.
178 - update precompose table to unicode 13.0.
179 - update charset conversion tables to perl 5.32 (this only affected
180 cs_koi8_u_from_unicode).
181 - unicode characters > 0x100000 were not handled correctly w.r.t.
182 font rendering.
183 - replace bitstream vera by dejavu sans, as it has replaced the former
184 almost everywhere.
185 - urxvt will now try tic -x first and only fall back to tic without -x
186 when tic -x fails.
187 - fix urclock not erasing the old date on the clock face, causing
188 overdraw, plus a host of other small fixes and improvements.
189 - shave off over 1K of code size from urclock by replacing the sine table
190 with a slightly less accurate fixed point approximation.
191 - do not specify indentation with =over in pod, this is no longer
192 needed with semi-modern pod tools and gives the formatter more
193 stylistic freedom.
194 - background extension did not set the "size-sensitive" flag
195 when repeat mode wasn't normal.
196 - extensions are now subjected to "use strict 'subs'".
197 - avoid crashing when xft successfully opens a font but then somehow
198 can't lock the face.
199 - locale_decode/encode api methods now pass through undef unchanged.
200 - fix undefined behaviour in the perl hook function, as diagnosed by clang.
201
2029.26 Fri May 14 19:14:14 CEST 2021
203 - ev_iouring.c was wrongly required during compilation, and wrongly
204 not packaged.
205
2069.25 Fri May 14 15:51:36 CEST 2021
207 - for the 17.5th anniversary, and because many distributions seem to
208 remove rxvt in favour of urxvt, this release resurrects rclock as
209 urclock.
210 - add support for systemd socket-based activation - debian bug #917105,
211 freebsd bug #234276.
212 - do not destruct perl on exit anymore: this might fail for a variety of
213 reasons, and takes unnecessary time.
214 - remove any macros from urxvtperl manpage(s), should fix debian
215 bug 858385.
216 - the old bg image resources are now provided by the background
217 extension, and perl is thus required for bg image support. No
218 configuration change is needed: urxvt autoloads the background
219 ext if any bg image resource/option is present (for OSC sequences to
220 work you need to enable it explicitly). The old bg image
221 resources are also now deprecated; users are encouraged to
222 switch to the new bg image interface (see man urxvt-background).
223 - confirm-paste now checks for any ctlchars, not just newlines.
224 - searchable scrollback will now ignore bracketed paste mode sequences
225 (prompted by Daniel Gröber's patch).
226 - drop ISO 2022 locale support. ISO 2022 encodings are not supported in
227 POSIX locales and clash with vt100 charset emulation (the luit
228 program can be used as a substitute).
229 - perl didn't parse rgba colours specified as an array correctly,
230 only allowing 0 and 100% intensity for each component (this affected
231 fill and tint).
232 - when iterating over resources, urxvt will now try to properly handle
233 multipart resources (such as "*background.expr"), for the benefit
234 of autoloading perl extensions.
235 - ESC G (query rxvt graphics mode) has been disabled due to security
236 implications. The rxvt graphics mode was removed in rxvt-unicode 1.5,
237 and no programs relying on being able to query the mode are known.
238 - work around API change breakage in perl 5.28, based on a patch by
239 Roman Bogorodskiy.
240 - improved security: rob nation's (obsolete) graphics mode queries
241 no longer reply with linefeed in secure/default mode.
242 - ISO 8613-3 direct colour SGR sequences (patch by Fengguang Wu).
243 - xterm focus reporting mode (patch by Daniel Hahler).
244 - xterm SGR mouse mode.
245 - implement DECRQM. Patch by Přemysl Eric Janouch.
246 - add missing color index parameter to OSC 4 response. Patch
247 by Přemysl Eric Janouch.
248 - in some window managers, if smart resize was enabled, urxvt
249 erroneously moved the window on font change - awesome bug
250 #532, arch linux bug ##34807 (patch by Uli Schlachter).
251 - fix urxvtd crash when using a background expression.
252 - properly restore colors when using fading and reverse video
253 is enabled while urxvt is focused and then disabled while it
254 is not focused, or vice versa (patch by Daniel Hahler).
255 - fix high memory usage when an extension repeatedly hides and
256 shows an overlay (reported by Marcel Lautenbach).
257 - expose priv_modes member and constants to perl extensions
258 (patch by Rastislav Barlik).
259 - fix a whole slew of const sillyness, unfortunately forced upon
260 us by ISO C++.
261 - update to libecb 0x00010006.
262 - disable all thread support in ecb.h as we presumably don't need it.
263 - slightly improve Makefile source dependencies.
264 - work around bugs in newer Pod::Xhtml versions (flags incorrect formatting codes
265 in xhtml/html sections but does not interpret correct ones).
266
2679.22 Sat Jan 23 21:07:33 CET 2016
268 - NOTICE: this release updates terminfo.
269 - add terminfo capabilities for various ctrl and shift-ctrl key variants
270 (patch by Sebastian Schmidt).
271 - fix longstanding core font encoding bug where some character
272 ranges could not be mapped from unicode to the font: affected
273 encodings are big5, gb2312, iso8859-8 (hebrew), jis0201 and
274 ksc5601 (reported by Mikachu).
275 - fix crash when the number of columns is 1 and a 0 width character is inserted
276 (reported by Kuang-che Wu).
277 - fix a crash when parsing an invalid color specification (reported by Kuang-che Wu).
278 - fix a buffer overflow in font name parser (reported by Kuang-che Wu).
279 - do not start blinking cursor if the window is unfocused (reported by
280 Devin J. Pohly).
281 - change the width of underline and i-beam cursor to 2 pixels (based on
282 a patch by Omar Sandoval).
283 - add pointerShape resource to change the mouse pointer shape
284 (based on a patch by Brian Watson).
42 - a keysym resource for a key which is already bound to an 285 - a keysym resource for a key which is already bound to an
43 action now properly rebinds the key. 286 action now properly rebinds the key.
287 - do not report mouse motion events if Shift is active (patch by Daniel Hahler).
288 - put the alpha component last in responses to OSC color queries
289 (patch by Benjamin Herr).
290 - the key_press hook is now invoked before processing the
291 event, as documented. This change was done in 9.21 but not
292 announced and fixes debian bugs #511377, #531751 and red hat
293 bug #1105069. Note that this change breaks a few scripts,
294 such as mark-yank-urls, which rely on the previous buggy
295 behaviour that urxvt processes the event (in particular
296 keysym bindings) before invoking the hook.
44 - the tabbed extension now properly refreshes the active tab 297 - the tabbed extension now properly refreshes the active tab
45 when scrolling and the mouse pointer is outside the terminal 298 on a key press when the mouse pointer is outside the terminal
46 window. 299 window.
300 - add 'lookup_keysym' perl method to lookup the action bound
301 to a key combination.
302 - a key combination bound to 'matcher:select' can now be used
303 to cycle through the matches in matcher.
304 - change perl integer accessors (->width et al.) into mutators.
305 - this version has been verified to work with perl 5.8.3.
47 306
489.21 Wed Dec 31 14:50:03 CET 2014 3079.21 Wed Dec 31 14:50:03 CET 2014
49 - the "moa redraw 8-bit british vintage colour management" release. 308 - the "moa redraw 8-bit british vintage colour management" release.
50 - NOTICE: this release updates terminfo. 309 - NOTICE: this release updates terminfo.
51 - fix pixel droppings on overdraw when a secondary core font has the 310 - fix pixel droppings on overdraw when a secondary core font has the

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines