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 Scripting
Gambas Server Pages
Gambas Unit Testing
Gambas Wiki Markup Syntax
Getting Started With Gambas
Hall Of Fame
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
Reporting a problem, a bug or a crash
Rich Text Syntax
Screenshots
The Gambas Object Model
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

Web site home page

GAMBAS is a free development environment and a full powerful object-oriented
language and development platform based on a Basic interpreter with optional
just-in-time compilation, as easy as Visual Basic™ was.

Read the Introduction then this presentation for more information.

Apr142023

Release of Gambas 3.18.2

This release includes important bug fixes made since the 3.18.1 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Feb262023

Release of Gambas 3.18.1

This release includes important bug fixes made since the 3.18.0 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Jan132023

Gambas 3.18.0 has been released.

Happy new year! Here is a new release of Gambas.

There are almost one thousand of changes in this release since the 3.17.3 version.

The main features of this release are:
  • Many interpreter optimizations making it faster.

  • The debugger interface was moved to the left panel of the IDE.

  • A project browser was added to the IDE that allows to browse the project data files.

  • A DBus browser was added to the IDE.

  • Bool@(), Byte@()... functions can be the target of an affectation now.

  • Integer arithmetic and conversion now raise an error if overflow is detected. This can be disabled at runtime for backward-compatibility.

  • Properties can be write-only now.

  • The database component now allows to define connection options specific to the underlying database server.

  • The FileView control view modes have been redesigned and file preview has been enhanced.

  • Many stock icons have been added.

  • gb.hash is a new component that implements the Md5(), Sha1(), Sha256() and Sha512() functions, thanks to BusyBox.

  • Many enhancements and fixes to the Web application development component.

See the Release Notes for all the details.

Jul222022

Release of Gambas 3.17.3

This release fixes may bugs detected since the 3.17.2 release.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr132022

Release of Gambas 3.17.2

This release fixes a blocking regression in the IDE form editor introduced in 3.17.1, and a few other minor bugs.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr062022

Release of Gambas 3.17.1

This release includes important bug fixes made since the 3.17.0 release, and a few new features.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Mar092022

Gambas 3.17.0 has been released.

This is a huge release again, with more than 1,200 changes, optimizations and bug fixes.

The main features of this release are:
  • A new lightweight HTML viewer component, gb.form.htmlview, based on the litehtml library.

  • Namespace support for exported symbols.

  • Support for static variables local to a function.

  • The IDE now can debug a process that run on another computer through ssh.

  • The debugger now can stop each time the value of an expression changes.

  • The profiler can now profile the code of the components loaded by the project.

  • Serialization now does not duplicate objects anymore, and so deal with any complex object structures even with circular dependencies.

  • Shr, Shl, Asr, Asl, Lsl, Lsr, Rol and Ror can now be used as operators.

  • Text highlighting has been redesigned to support different color names by file types.

  • Support for right-to-left language in GUI controls has been enhanced.

  • The new gb.gtk3.opengl component bring the GLArea OpenGL control to the GTK+3 component.

  • The gb.web.gui component has been enhanced with a tree control, keyboard events, global shortcuts and better focus management.

See the Release Notes for all the details.

Sep152021

Release of Gambas 3.16.3

This release fixes the bugs detected since the release of Gambas 3.16.2.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Jul142021

Release of Gambas 3.16.2

This release fixes many bugs detected since the release of Gambas 3.16.1.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.


May282021

Release of Gambas 3.16.1

This release fixes most of the bugs detected since the release of Gambas 3.16.0.

Binary packages are available for Ubuntu on the Gambas stable PPA.

See the Release Notes for the details.

Apr202021

Gambas 3.16.0 has been released.

This is a huge release, with more than a thousand of changes, optimizations and bug fixes.

Here are some of the main features:
  • GTK+3 and QT5 components now support Wayland.

  • GTK+3, QT4 and QT5 new web browser components using the same interface.

  • GTK+3 component is now on a par with QT5 component, allowing the development environment to run with GTK+3!

  • IDE compressed files are not stored in the project anymore. They are generated when the executable is made. Projects are automatically converted at opening.

  • Array access is now about 15% faster.

  • Add binary search methods to the array classes.

  • Date localization support has been redesigned, so that complex formats of languages like Chinese are supported. The new design should be backward-compatible with the old ones on western languages.

  • Compiler is now faster by using all the CPU cores.

  • Scripter has been redesigned, cleaned-up, enhanced and optimized.

  • Label, TextLabel, MovieBox, Frame and Separator controls are now written in Gambas.

  • A lot of new stock icons were added and updated.

  • The ODBC database driver works far better.

  • zstd compression format support.

  • aarch64 architecture support.

See the Release Notes for all the details.

Sep172020

Release of Gambas 3.15.2

This release provides important bug fixes since the release of Gambas 3.15.1.

See the Release Notes for the details.

Jul312020

Release of Gambas 3.15.1

This release provides important bug fixes since the release of Gambas 3.15.0.

See the Release Notes for the details.

Jul062020

Gambas 3.15.0 has been released.

This release provides the following main features and fixes:
  • A new unit test system made by Christof Thalhofer and Tobias Boege.

  • A new diff mode in the IDE code editor.

  • The ability to save and restore custom IDE layouts.

  • Enhanced support for dark themes.

  • Many fixes in the packager.

  • A new trace mode in the interpreter.

  • A new OPEN NULL syntax for opening a null stream.

  • A new PEEK instruction.

  • A new WAIT NEXT instruction.

  • The &= operator is now hundreds of times faster.

  • New special methods that allow any object to be serialized.

  • A new faster gb.web.gui component that replaces gb.web.form.

  • A new gb.poppler component that replaces gb.pdf.

See the Release Notes for all the details.

Jan232020

Release of Gambas 3.14.3

This release fixes an important regression in static arrays that were incorrectly read-only, and a lot of small other bugs here and there.

See the Release Notes for the details.

Nov192019

Release of Gambas 3.14.2

This release mainly includes a fix of the Message class that disturbs a lot of people.

See the Release Notes for the two other fixes.

Oct292019

Release of Gambas 3.14.1 (still Gambas π)

This release provides important last-minute fixes since the release of Gambas 3.14.0.

See the Release Notes for the details.

Sep242019

Gambas 3.14.0, as known as Gambas π, has been released.

This release brings the main following features:
  • The IDE can now print a source code file.

  • A 16 pixels size version of the Gambas font in medium and bold versions.

  • Support for immutable (read-only) arrays.

  • PROPERTY...USE... is a new shortcut syntax for defining properties.

  • Uncaught errors raised from an event handler can be ignored now.

  • The compiler emits column position on errors and warnings if possible.

  • Message boxes are not native anymore.

  • Web applications based on gb.web or gb.web.form now correctly handle the Accept-Language HTTP header.

As usual, there is a bunch of bug fixes. See the Release Notes for all the details.

Apr112019

Gambas 3.13.0 has been released.

This release fixes some disturbing bugs in Gambas 3.12, and add the following features:
  • JIT compilation is now done in background, speeding up program start.

  • The IDE now supports automatic translation tools.

  • File.RealPath() is a new method that canonicalizes a path, removing all its symbolic links.

  • Array.SortUsing() is a new method that sorts an array using an order defined by another array.

  • Array.Shuffle() is a new method that randomly shuffles the contents of an array.

  • TimeBox is a new control to enter durations.

See the Release Notes for all the details.


Previous news...