Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#14862 closed enhancement (fixed)

vte-0.64.0 (currency update)

Reported by: Xi Ruoyao Owned by: Douglas R. Reno
Priority: normal Milestone: 11.0
Component: BOOK Version: SVN
Severity: normal Keywords:


It's already tagged and I think the tarball will be uploaded soon.

Note that gnome-terminal-40.0 needs this version.

Change History (9)

comment:1 by Xi Ruoyao, 2 years ago

Oh no, it just looks like they forgot the tarball. It's tagged 2 weeks ago!


comment:3 by Xi Ruoyao, 2 years ago

Summary: vte-0.64.0vte-0.64.0 (concurrency update)

The upstream said vte won't use d.g.o anymore.

comment:4 by Xi Ruoyao, 2 years ago

Summary: vte-0.64.0 (concurrency update)vte-0.64.0 (currency update)

comment:5 by Douglas R. Reno, 2 years ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

Thank you for looking into this!

comment:6 by Douglas R. Reno, 2 years ago

Lots of GTK4 related work in here

build: Post branch version bump 
build: Post branch version bump 
glade: Set icon prefix 
Update Slovak translation 
Update Chinese (Taiwan) translation 
widget: Implement GtkScrollableInterface::get_border Avoid warnings if shell is configured with 'set -u' 
spawn: Remove current directory from fallback search PATH 
lib: Abort when alloc returns nullptr 
   Allocating memory with glib (g_new, etc) will abort the process
   when memory allocation fails. Do the same when using the C++
   allocator (operator new, etc) throws bad_alloc.
gtk: Allow passing null callback to spawn_async 
pty: Allow null callback for spawn_async 
widget: Reference terminals while processing 
   In some language bindings, the callbacks we emit during processing
   may cause their GC to run, which could finalise a VteTerminal,
   removing it from g_active_terminals list while we're iterating
   over that list.
widget: Remove GdkAtom usage where possible 
widget: Move Event classes to platform 
widget: Simplify mouse event translation 
   Just throw on unexpected event type.
widget: Use named cursors by default 
widget: Fix missing include 
parser: Sort command list 
parser: Generate the sequences and command lists with a script 
   This is in preparation for further parser changes which
   would be hard to do when relying only on the C preprocessor
   to transform the sequence and command lists.
terminal: Create ProcessingContext struct 
   Move local variables used in process_incoming_{utf8,pcterm} into a struct.
   This is in preparation of upcoming refactoring.
terminal: Process one chunk at a time 
   Move the common code out of the data syntax specific processing functions,
   and call them separately for each chunk.
   This is in preparation of upcoming refactoring.
terminal: Reindent 
   Remove excessive indentation left over from recent refactoring.
terminal: Don't stop processing on EOS chunk 
   There may be more chunks after the EOS chunk since the terminal may
   already have another PTY and have read data from it.
terminal: Prepare for processing only part of a chunk 
   Copy the last byte of the preceding chunk (except for EOS chunks) to
   the next chunk's dataminusone. This will allow rewinding the stream
   during processing by one byte, without keeping the preceding chunk
   This is in preparation of upcoming refactoring.
parser: Store the string terminator for DCS sequences 
   This will be used in a subsequent commit.
parser: cat: Factor processing out into its own function 
   This will be used in later commits.
tests: Rename sixel fuzzer 
emulation: Fix DA1 response with SIXEL disabled 
   Omit SIXEL from the DA1 response when SIXEL is enabled at build time
   but disabled at runtime.
debug: Make 'image' debug flag work 
widget: Remove excessive const 
parser: Silence missing declaration warning 
lib: Add infrastructure for data syntax switching 
   Add a way for a sequence handler to signal to the processing loop
   that it has switched data syntax, and thus the processing loop must return
   so the handler for the new data syntax can take over.
modes: Add DECSDM mode 
lib: Add new SIXEL parser and test suite 
parser: cat: Plug in new SIXEL parser 
   Use the new SIXEL parser to descend into parsing SIXEL data.
   Also implement linter support for SIXEL to catch a few common problems.
lib: Add new SIXEL context and test 
lib: Replace SIXEL handling 
   Remove the old sixel parser and context, and move over to the new parser
   and context.
lib: Keep track of unscaled cell size and report window size unscaled 
   This allows sixel image dimensions to be consistent when printed at
   different zoom levels.
lib: sixel: Also reset data capacity when dropping the buffer 
parser: Properly refer to python3
lib: Fix typo in comment 
lib: Add missing include 
   std::malloc/free require <cstdlib>.
lib: Add missing include 
widget: Manage the Widget implementation through a shared_ptr 
widget: Move clipboard handling to Widget 
   Move clipboard handling into its own Clipboard class to make
   Terminal independent of the platform's clipboard handling.
fonts: Don't use deprecate gdk threads timeout API 
widget: Remove unused function 
widget: Use GdkEvent accessor function 
draw: Move drawing images after translating the cairo context 
   This avoids having to offset the images manually.
sixel: Pass colour components to Context::prepare 
   The Context's colour storage format is internal, so pass the fg and
   bg colours components individually.
modes: Assign enum values to non-fixed modes first 
   This allows all settable modes to have values that fit into the storage,
   while fixed modes get assigned enum values after all settable modes.
lib: Add missing nullable annotation to spawn child setup functions 
lib: Simplify smart pointers for glib/pango/pcre types 
lib: Add getter support for smart pointer 
app: Use smart pointers 
parser: cat: Use more smart pointers 
decoder: cat: Use more smart pointers 
parser: Update sequences with additions from recent xterm 
widget: Use safe getter 
spawn: Clarify ownership transfer 
   Pass unqiue_ptr<SpawnOperation> to ::run_async to make it clear that it
   takes ownership of the operation.
sixel: Remove unnecessary include
emulation: Implement XTERM_SMGRAPHICS sequence 
lib: Move ProcessingContext up 
   ... so that it can be used earlier.
lib: sixel: Update bbox when inserting an image 
   This should fix a problem where sometimes the image wouldn't scroll into view.
emulation: sixel: Implement DECSET 1070 
   Private mode 1070 controls whether each SIXEL image gets a freshly initialised
   set of colour registers, or if changes from one SIXEL image persist to the next.
build: Add config.h as dependency to all sources 
app: Replace GtkBox with GtkGrid 
sixel: Fix unused variable warning when not building with sixel enabled 
app: Fork UI files for gtk3 
   Unfortunately, gtk4-build-tool 3to4 doesn't actually produce a working
   UI file for gtk4, so it'll be necessary to adjust them by hand. Fork
   the UI files so that they have different names for gtk3 (and later gtk4).
widget: Record the press count for button press events 
   Replace double/triple click events with a press_count on the generic
   button press event.
Update POTFILES.skip 
widget: Remove unused event timestamp 
lib: Use pragma once 
widget: Make scroll event its own class 
sixel: Store device-independent pixel surfaces in Image 
widget: Move GdkEvent from EventBase to KeyEvent 
   Only the key events handling needs to access the native event anymore.
widget: Scroll events have no button 
app: Fix paste action sensitivity 
widget: Don't use scroll event's position 
   Use the last known mouse position in when sending the mouse coordinates.
lib: Use bitset to store pending change flags 
parser: Add some more charsets 
modes: Add some more private modes 
parser: Add some more known sequences 
sixel: Use special coulor registers for default foreground and background 
   ... and implement background colour transparency using the second
   parameter to DECSIXEL.
app: Fix background image drawing 
   Use the option's background alpha value, *not* the value retrieved from
   vte_terminal_get_color_background_for_draw() since that is set to zero
   in this case.
lib: Sanitise the passed-in font description 
   Remove weight and style if set, so that SGR attributes can work.
Revert "sixel: Use special coulor registers for default foreground and background" 
   There is nothing technically wrong with this commit, but it was a heavily amended
   commit based on squashing two commits by the Author, and I forgot to change the Author
   to myself. The next commit will re-commit this with proper attribution.
sixel: Use special coulor registers for default foreground and background 
   ... and implement background colour transparency using the second
   parameter to DECSIXEL.
   It's not clear from the available documentation of how the 2nd parameter
   to DECSIXEL *should* work, but based on discussion in issue #253, this patch
   makes vte use the value "1" as meaning uninked pixels should be transparent,
   and any other value (including the default) to mean that uninked pixels
   should use the current SGR background colour.
   This also fixes an issue where the user-addressable colour register 0 was
   being overwritten with the current SGR foreground colour.
   Based on patches by Hans Petter Jansson <>.
sixel: Use m_defaults to retrieve the SGR colours 
   This takes into account the SGR 7 (reverse) attribute, which
   m_color_defaults doesn't carry.
all: Use pragma once 
all: Use std::swap 
Fix build 
lib: Drop wrong use of volatile 
lib: Use sysconf on macos to get the upper limit of number of FDs 
lib: Fix unused variable warning when not using getrlimit 
docs: Add index for API new in 0.64 
widget: Add API to disable fallback scrolling 
   Ordinarily, when the VteTerminal hasn't consumed a scroll event otherwise
   (e.g. by sending the event to the application), it falls back to perform
   a history scroll.  When the terminal is added to a GtkScrolledWindow, this
   result in the scrolled window not performing kinetic scrolling.
   This commit adds API (and GObject property) to VteTerminal to disable the
   fallback scrolling.
   Based on a patch by Tony Houghton <>.
Update Esperanto translation 
Revert "docs: Add index for API new in 0.64" 
docs: Add index for API new in 0.64 
ring: Fix image memory leak 
   ... and various code correctness and style issues.
   Use unique_ptr instead of naked new/delete, and use a std::multimap for
sixel: Be extra safe when advancing the scanline position 
sixel: Fix processing of DECSIXEL sequence when using UTF-8 C1 controls 
   The matching-controls check was getting the wrong introducer value.
widget: Fix clipboard types 
widget: Add gtk glue 
clipboard: Use smart pointers 
app: Use smart pointer 
app: Fix search next/prev button sensitivity 
pty: Add support for PTY packet mode on sysv-like systems
widget: Fix idle child-exited signal after dispose  
sixel: Ignore DECSIXEL sequence when OR-mode is requested 
parser: cat: Make linter warn on unsupported DECSIXEL OR-mode 
widget: Limit select-all to the writable region not including the scrollback 
   Including the scrollback in select-all makes it too easy to select so much
   data that putting it on the clipboard either hangs the process for a long time
   or causes a crash (gnome-terminal#288).
Update Catalan translation 
parser: Remove unused enum 
widget: Improve font sanitisation 
   Allow bold font to be used for normal attr when bold-is-bright is
   enabled, and allow weights up to medium for normal attr.
widget: Improve font sanitisation 
   Clamp the font weight instead of simply unsetting any weight specified.
Update Norwegian Bokmål translation 
emulation: Add some research notes 
all: Clean up licence headers 
   Unify the licence headers so that all same-licensed files use the exact
   same text.
   For some time now, libvte has been effectively LGPL3+ due to newer files being
   LGPL3+ only while some older files were still nominally LGPL2+ as per their
   licence headers.  Exercise the "or (at your option) any later version" upgrade
   option to henceforth use, modify and distribute all these files under LGPL3+
modes: Fix typo 
parser: Add new sequence from xterm 362 
emulation: Use the correct enum 
parser: modes: Generate modes-*.hh from script and data 
font: pangocairo: Use PangoFontMetrics to measure the font 
spawn: Use close_range to set CLOEXEC on all FDs 
   ... when available; otherwise fall back to iterating over /proc/self/fd
   as previously.
lib: Move missing defs to missing.hh and update 
Revert "font: pangocairo: Use PangoFontMetrics to measure the font" 
keymap: Use int8_t for the length of the short keymap strings 
   ... instead of ssize_t.
parser: cat: Make linter warn on unsupported RLogin DECGCI extension 
lib: Replace deprecated std::is_pod 
   ... in preparation of requiring C++20.
sixel: Fix omitted data syntax reset when mismatched controls 
   At the end of parsing the sixel data, we always need to
   pop_data_syntax(). The code was incorrectly omitting that in
   the case of mismatched controls.
parser: cat: Make linter warn on unsupported RLogin DECSIXEL ID extension 
lib: Fix indentation 
parser: Correct charset designation sequences with final byte 7/14 
Update Punjabi translation 
font: pangocairo: Use PangoFontMetrics to measure the font 
sixel: Add missing ifdef 
sixel: Add missing ifdef 
parser: DECBI is NOP 
lib: Typo fix 
all: Remove SIXEL support from stable branch 
   The SIXEL support is not in a releasable state with
   important and fundamental problems still unsolved.
Version 0.63.91 
build: Post release version bump 
app: Add debug option to track clipboard targets 
   Trying to help track down the clipboard issue in mutter#1469 /
   gnome-shell#3052 / mutter#1656
Update Galician translation 
Update Finnish translation 
widget: Don't implement GtkScrollableInterface:get_border 
app: Use gboolean for GOptionArg entries of type G_OPTION_ARG_NONE 
build: Add dist script  
build: Version 0.64.0 

comment:7 by Douglas R. Reno, 2 years ago

The GTK4 support doesn't quite seem to work yet. It complains about not being able to find gtk+-4.0 (via CMake or pkgconfig). GTK4's PC file is in /usr/lib/pkgconfig/gtk4.pc, and there were a lot of changes this cycle to port to gtk4, but never any completion. I'll leave the comments in the book where they are for now, we'll see if anything changes when 0.64.1 comes around.

comment:8 by Douglas R. Reno, 2 years ago

Resolution: fixed
Status: assignedclosed

Fixed at r24440

comment:9 by Bruce Dubbs, 2 years ago

Milestone: 10.211.0

Milestone renamed

Note: See TracTickets for help on using tickets.