Gambas Documentation
Application Repository
Code Snippets
Compilation & Installation
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
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 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
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.8.1

What's new

This release includes all bugs fixes and little changes made since the release of Gambas 3.8.0.

ChangeLog

DEVELOPMENT ENVIRONMENT

  • Error translations updated.

  • French translation updated.

  • Editor: Do not mark a file as unsaved when refactoring is triggered by saving this same file.

  • Some HiDPI fixes.

  • Recent Projects use the saved sort order now

  • Do not display the SVN revision anymore in the welcome dialog. Only in the system information.

  • SVN revision is now taken from the interpreter executable.

  • System information is now anonymous.

  • Comment, uncomment, indent and unindent now work as expected if the text has been selected from bottom to top.

  • Color chooser does not crash anymore when the project does not use any GUI component.

  • The packager now can create a package for a component project whatever the name of the project. It will internally prefix the project name with the vendor name if needed.

  • Image editor: Fix pen and eraser tool drawing.

  • Image editor: Information is now displayed on top of the image.

  • Image editor: The property panel got a close button.

  • Image editor: The information label is correctly refreshed when zooming in or zooming out.

  • Fix behaviour of shortcut text properties having ampersands inside.

  • Packager: Support for a vendor prefix shortcut, that is used in the package name instead of the vendor full name.

  • Packager: Now package names are normalized for each distribution. All non alphanumeric characters are replaced by an hyphen, but this can be changed independently of the distribution if needed.

  • Debugger: Displaying a dynamic variable in a static context does not crash anymore

  • GB.SubstString() API now can take a void substitution string. It returns NULL instead of doing a segfault. Consequently, RegExp.Replace() from gb.pcre can take a null replace string without crashing.

INTERPRETER

  • Fix DateDiff() day comparison when comparing two dates with different times.

  • Array.Resize() now correctly raises an error if its argument is negative.

  • Correctly detect too large arrays.

  • Array allocation incrementation now cannot be larger than 256 slots.

  • Fix multi-dimensional arrays size check.

  • New routine to compute the localized time/date formats and separators.

COMPILER

  • Syntax errors in constant declarations now give more detailed messages.

GB.DB.FORM

  • The application busy state is now correctly reset when an SQL error occurs.

  • Fix the queries requesting the data after the 256th entry.

GB.DB.MYSQL

  • Use the MySQL documentation trick to make the difference between a blob field and a text field. This should work far better than using the "max_length" value returned by the MySQL API that seems to randomly change between MySQL versions.

GB.DB.ODBC

  • Allow the Connection.Host property to be a full ODBC connection string.

GB.DB.SQLITE3

  • Interpret unknown SQL datatypes as "String" instead of using random garbage.

GB.FORM

  • Stock icon default sizes ("small", "medium"...) are now proportional to Desktop.Scale by steps of 8 pixels. This is for HiDPI support.

  • Wizard BeforeChange event can be cancelled now.

  • MessageView: Custom background color is now taken into account.

GB.FORM.EDITOR

  • TextEditor: Fix tab ("\t") character printing.

  • TextEditor: Only change the contents of a line if the provided new content is different from the current one.

GB.FORM.MDI

  • Toolbar tries to update the size of its icons when the font changes.

GB.GTK

  • Window now raises a Font event when its font changes.

  • Fix a uninitialized variable that can lead to a crash when creating a window.

  • TextArea.Paste() and CTRL+V works correctly now.

  • No GTK+ warning message anymore when a TextArea or TextBox gets the focus using some input methods.

GB.GTK3

  • Window now raises a Font event when its font changes.

  • Fix a uninitialized variable that can lead to a crash when creating a window.

  • TextArea.Paste() and CTRL+V works correctly now.

  • No GTK+ warning message anymore when a TextArea or TextBox gets the focus using some input methods.

GB.GUI.BASE

  • IconView: Fix item drawing when in horizontal orientation.

  • TreeView items height padding is now proportional to Desktop.Scale.

  • Fix behaviour of shortcut text properties having ampersands inside.

GB.NET.SMTP

  • SmtpClient.MessageId is a new property that allows to define the Message-ID header of the mail.

  • SmtpClient.InReplyTo is a new property that allows to define the In-Reply-To header of the mail. It defines the References header as well with the same value.

  • SmtpClient.AddHeader() is a new method to add a custom specific header to the mail.

GB.PCRE

  • RegExp.Replace() does not crash anymore when the replace string is void.

GB.QT4

  • Window now raises a Font event when its font changes.

  • Correctly initialize window properties when showing it in all cases.

  • Breeze widget theme patch to fix its bugs on small TextBox, ComboBox and SpinBox controls.

GB.QT5

  • Window now raises a Font event when its font changes.

  • Breeze widget theme patch to fix its bugs on small TextBox, ComboBox and SpinBox controls.

GB.REPORT2

  • The printer resolution is always 1200 dpi now.

  • Preview: The layout has been changed to be more readable.

  • Preview: Fix the printer combo initial value.

GB.XML

  • Document: Fixed a memory leak when the instanciation failed due to a parsing exception.

  • XmlElement: Internally setting an attribute with a NULL value does not crash anymore.

  • Encountering a never-ended attribute does not crash the parser anymore.

  • Optimized parser cleanup when an exception is thrown.

  • Fix attribute initialization method.

GB.XML.HTML

  • Encountering a never-ended attribute does not crash the parser anymore.

Compilation and installation

Read the instructions there.

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

Enjoy it !

See also