Gambas Documentation
Application Repository
Code Snippets
Compilation & Installation from source code
Components
Controls pictures
Deprecated components
Developer Documentation
Development Environment Documentation
Documents
About The Best Formula In The World
Architecture details
Benchmarks
Books
By Reference Argument Passing
Compatibility between versions
Creating And Using Libraries
Database Datatype Mapping
Database Request Quoting
Date & time management
Dates and calendars
DBus and Gambas
Differences Between Shell And Exec
Differences From Visual Basic
Distributions & Operating Systems
Drag & Drop
DrawingArea Internal Behaviour
External functions datatype mapping
Frequently Asked Questions
Gambas Farm Server Protocol
Gambas Mailing List Netiquette
Gambas Markdown Syntax
Gambas Naming Conventions
Gambas Object Model
Gambas Scripting
Gambas Server Pages
Gambas Unit Testing
Gambas Wiki Markup Syntax
Getting Started With Gambas
Hall Of Fame
Housekeeping, cleaning up
Image Management In Gambas
Including Help Comments in Source Code
Installation from binary packages
Interpreter limits
Introduction
Just In Time Compiler
Just In Time Compiler (old version)
License
Localisation and Internationalization
Mailing Lists & Forums
Naming Conventions
Network Programming
ODBC Component Documentation
PCRE Pattern Syntax
Porting from Gambas 2 to Gambas 3
Previous News
Project Directory Structure
Release Notes
Gambas 2.23.0
Gambas 2.23.1
Gambas 2.24.0
Gambas 3.0.0
Gambas 3.1.0
Gambas 3.1.1
Gambas 3.2.0
Gambas 3.2.1
Gambas 3.3.0
Gambas 3.3.1
Gambas 3.3.2
Gambas 3.3.3
Gambas 3.3.4
Gambas 3.4.0
Gambas 3.4.1
Gambas 3.4.2
Gambas 3.5.0
Gambas 3.5.1
Gambas 3.5.2
Gambas 3.5.3
Gambas 3.5.4
Gambas 3.6.0
Gambas 3.6.1
Gambas 3.6.2
Gambas 3.7.0
Gambas 3.7.1
Gambas 3.8.0
Gambas 3.8.1
Gambas 3.8.2
Gambas 3.8.3
Gambas 3.8.4
Gambas 3.9.0
Gambas 3.9.1
Gambas 3.9.2
Gambas 3.10.0
Gambas 3.11.0
Gambas 3.11.1
Gambas 3.11.2
Gambas 3.11.3
Gambas 3.11.4
Gambas 3.12.0
Gambas 3.12.1
Gambas 3.12.2
Gambas 3.13.0
Gambas 3.14.0
Gambas 3.14.1
Gambas 3.14.2
Gambas 3.14.3
Gambas 3.15.0
Gambas 3.15.1
Gambas 3.15.2
Gambas 3.16.0
Gambas 3.16.1
Gambas 3.16.2
Gambas 3.16.3
Gambas 3.17.0
Gambas 3.17.1
Gambas 3.17.2
Gambas 3.17.3
Gambas 3.18.0
Gambas 3.18.1
Gambas 3.18.2
Gambas 3.18.3
Gambas 3.18.4
Gambas 3.19.0
Gambas 3.19.1
Gambas 3.19.2
Gambas 3.19.3
Gambas 3.19.4
Gambas 3.19.5
Gambas 3.19.6
Gambas 3.20.0
Gambas 3.20.1
Gambas 3.20.2
Gambas 3 RC1
Gambas 3 RC2
Gambas 3 RC3
Gambas 3 RC4
Gambas 3 RC5
Gambas 3 RC6
Gambas 3 RC7
Reporting a problem, a bug or a crash
Rich Text Syntax
Screenshots
Text highlighting definition file syntax
The Program has stopped unexpectedly by raising signal #11
Variable Naming Convention
Wayland and gambas
WebPage Syntax
Web site home page
What Is Gambas?
Window & Form Management
Window Activation & Deactivation
Window Life Cycle
XML APIs
Error Messages
Gambas Playground
How To's
Language Index
Language Overviews
Last Changes
Lexicon
README
Search the wiki
To Do
Topics
Tutorials
Wiki License
Wiki Manual

Gambas 3.20.2

What's new?

This release includes some bug fixes made since the 3.20.1 release.

Compilation and installation

Read the instructions there.

If everything was fine, type "gambas3" to run the development environment.

Enjoy it !

Changelog

CONFIGURATION

  • Update AUTHORS file.

  • Update gbx3 manpage.

DEVELOPMENT ENVIRONMENT

Code editor

  • Fix local variable type detection.

Debugger

  • Add a toggle for disabling JIT compiler cache.

  • Fix background color of error label on dark theme.

  • Fix breakpoint synchronization between the editors and the debugger.

  • Allow to toggle the "Use HTTP server" debugging option when the gb.web.gui component is used.

Form editor

  • Redraw arrangement icons.

  • Display the control help when selecting a control.

Help browser

  • Some CSS fixes for offline mode.

Image editor

  • Optimize the loading of shapes.

  • Opened selections now use their first and last points as magnets.

  • Choosing a color now automatically selects the color tab in the property sheet.

  • The "line" tool automatically starts at the last point of the current selection if available.

  • If SHIFT is pressed, then all points of the selection are magnets.

  • The unselect selection button now unselects only the current selected shape.

  • Fix magnet representation on dark and light modes.

Packager

  • Add support for OBS syntax in AppImage ubuntu repository.

  • Update AppImage defaut configuration.

  • Add QT6 support packaging. Fix other support packaging.

  • Fix message label layout during packaging.

Search panel

  • Opening the search panel now always starts with a void search field.

  • Fill the search and replace fields combos with previous values in the right order.

Text editor

  • Support for json highlighting.

Miscellaneous

  • Add a toggle button and a menu entry in the View menu that displays the breakpoint list.

  • Update French translation.

  • Update German translation.

  • Update control icons for dark mode.

  • Update Gambas icons to thin theme.

  • Make the project icon points at Gambas application icon in gb.form.stock.

  • Fix breakpoint icon in the project tree top bar.

WIKI

  • Dark mode fixes.

  • Change how titles are displayed.

SELF-TESTER

  • Plan tests to ensure each will run.

INTERPRETER

  • Fix JIT implementation of the &= operator.

  • Array.Clear() does not crash anymore on static arrays. It just void them now.

  • The -T option without arguments works as expected now.

  • Fix conversion to Variant routine that didn't work on 32 bits systems.

  • Make the interpreter compile with C23.

  • If poll() signals a file descriptor with POLLHUP or POLLERR, immediately remove the watch, otherwise the file descriptor will be signaled again and again.

  • Ensure that all pending JIT compilation is finished before forking.

GB.DB2

  • Result.All() now correctly deals with numeric fields having a NULL value.

GB.DB2.SQLITE3

  • Correctly return fields of system tables.

GB.FORM

Completion

  • Fix popup foreground color.

FileChooser

  • Setting preview mode by code works as expected.

MenuButton

  • Spurious frames should not be drawn anymore during menu popup.

ValueBox

  • Fix mask for currency type.

Miscellaneous

  • Update control icons for dark mode.

GB.FORM.EDITOR

TextEditor

  • Prevent a possible infinite recursion when setting the Highlight property.

  • Add json mode.

  • Highlight matching characters less.

  • Fix highlighting of wrapped lines.

  • Fix GetLocation() method of Gambas mode.

  • Do not put breakpoints and bookmarks in the undo stack anymore.

GB.FORM.MEDIA

MediaView

  • Setting Position before playback now works as expected.

GB.FORM.MDI

  • Update Simplified Chinese translation.

  • Update control icons for dark mode.

GB.FORM.STOCK

  • Add speed stock icon.

  • Redraw gambas icon in gambas-thin theme.

  • Restore contrast in gambas-thin icons, and modify the dark theme generation so that the inverted icons are still readable.

  • Add some saturation to dark themes.

  • Add some application icons.

  • Update mahjongg icon in gambas-thin.

GB.GTK

  • Mouse.State correctly returns the META key state now.

GB.GTK3

  • Mouse.State correctly returns the META key state now.

GB.GUI.BASE

Slider

  • Fix overflows in internal computations.

  • Make the slider button one pixel smaller so that it is not cropped when the control has the focus.

Splitter

  • Prevent possible divisions by zero while computing layout.

Miscellaneous

  • Store the application desktop file inside one of the $XDG_DATA_DIR directories only if it is writable.

  • Use $XDG_DATA_HOME for the last resort directory of the application desktop file.

GB.HIGHLIGHT

  • symbol command can have children state.

  • Javascript highlighter: Fix regexp highlighting.

  • Add json highlighter.

GB.HTTPD

  • Add new environment variable GB_HTTPD_HOST to set the host binding of the http server.

  • Pass the GB_JIT_DEBUG variable to CGI scripts.

GB.JIT

  • If $PATH is not defined, define it using the directory where the compiler was found.

  • Display compiler errors better.

  • Prevent a crash at exit if the JIT temporary directory does not exist anymore for any reason.

  • Display the warning message about XDG_RUNTIME_DIR being not set only in debugging mode.

GB.NET

DnsClient

  • Fix host resolution when the host has both an IP4 and IP6 address.

Socket

  • Fix Connect() method with no arguments.

  • Keep the status socket after an internal error has been raised, so that the posted Error event gets it.

GB.TEST

  • Fix some documentation comments.

  • When printing all project tests, display one test by line.