[INTERPRETER]
* NEW: Add a JIT API for loading classes without running the _init method.
[GB.JIT]
* BUG: Load classes without running the _init method, so that the JIT behaviour is closer to the interpreter behaviour.
[INTERPRETER]
* NEW: JIT: Add an API for throwing type mismatch errors.
* BUG: Raise a type mismatch error when converting a function to a variant. Don't panic anymore.
[GB.JIT]
* BUG: Handle function datatype by raising a type mismatch error.
[INTERPRETER]
* NEW: JIT: Support for SUPER.
* NEW: JIT: Support for extern functions.
* NEW: Add a flag in Gambas functions to know if they are static or not.
[GB.JIT]
* NEW: Support for SUPER.
* NEW: Support for extern functions.
* BUG: Fix object arrays access.
* OPT: Optimization of Abs, Sgn, Int, Fix, and Pi subroutines.
[INTERPRETER]
* NEW: JIT: Support for event raising.
* BUG: Fix some bugs detected by clang.
[GB.JIT]
* NEW: Support for event raising.
* OPT: Some optimizations in jit code generation and compilation.
[INTERPRETER]
* NEW: JIT: Complex number support.
* NEW: JIT: LAST support.
[GB.JIT]
* BUG: Fix management of local variable declaration of translated functions.
* NEW: Support for WITH ... END WITH.
* NEW: JIT: Complex number support.
* NEW: JIT: LAST support.
[INTERPRETER]
* NEW: Support for error management in JIT methods.
[COMPILER]
* BUG: Fix Error() function metadata.
[GB.JIT]
* NEW: Support for error management.
* NEW: TRY instruction.
* BUG: Correct support of NULL.
[INTERPRETER]
* OPT: String routines are now compiled with -O3.
* NEW: Don't display JIT debugging message unless GB_JIT_DEBUG is set to something different from zero.
* NEW: String whose length is greater than 256 now have a growth step of 256 bytes instead of 16.
[GB.JIT]
* NEW: Do many global optimizations as now the class metadata is fully available.
* NEW: Support for optional argument. Still buggy at the moment.
[BENCHMARKS]
* NEW: Little meaningless changes.
[INTERPRETER]
* NEW: JIT: Support for FOR EACH loops.
* BUG: JIT: Handle function values that are put on stack before calling them.
[COMPILER]
* NEW: JIT: Optimization of mathematic functions.
* NEW: JIT: Support for FOR EACH loops.
* NEW: JIT: Remove successive POP_x() / PUSH_x().
* NEW: JIT: Optimization of DIV and MOD.
* NEW: JIT: Support of internal control local variables used by SELECT and FOR EACH.
* NEW: JIT: Support for SWAP.
[GB.JIT]
* NEW: Optimization of mathematic functions.
* NEW: Variants management.
* NEW: All conversions are handled now.
* NEW: FOR EACH loops are implemented.
[INTERPRETER]
* NEW: Implement return value of JIT methods.
* NEW: Support for calling '.' operator from a JIT method.
[COMPILER]
* BUG: JIT: Fix detection of native arrays.
* BUG: JIT: Delete translated file if a class has no fast method anymore.
* BUG: JIT: Prefix JIT method with "jit_" to avoid possible conflicts.
* BUG: JIT: Fix variable initialization.
* NEW: JIT: Complete datatype support.
* NEW: JIT: Support for SWAP.
* NEW: JIT: Support for array operators.
* BUG: JIT: Fix arithmetic operators.
* NEW: JIT: Implement ME and "." operator.
* NEW: JIT: Complete GOSUB / RETURN support.
* NEW: JIT: Support for DIV and MOD operators. Not optimized yet.
[ARCHIVER]
* NEW: Put JIT translation in the archive.
[GB.JIT]
* NEW: Complete datatype support. Variant is not supported yet.
* NEW: Complete GOSUB / RETURN support.
* NEW: Support for ME and '.' operator.
[INTERPRETER]
* BUG: Release arguments after having called a JIT method.
* NEW: Add JIT interface for returning a value.
[COMPILER]
* NEW: JIT: Nicer translation for quick add of negative numbers.
[CONFIGURATION]
* NEW: Add '.jit' directory to '.gitignore'.
[COMPILER]
* NEW: New '-j' option that disables just in time compilation.
* NEW: JIT: Support for private functions calls.
* NEW: JIT: Support for native arrays accessors.
* BUG: JIT: Fix loop support.
* NEW: JIT: Support for GOSUB.
[GB.JIT]
* NEW: GB_JIT_DEBUG is an environment variable that defines if JIT compilation debugging messages are printed.
* NEW: GB_JIT_CFLAGS is an environment variable that defines the JIT compilation flags. The default is "-O3".
* NEW: Support for native arrays accessors.
[COMPILER]
* BUG: JIT: Fix local variable referencing.
* NEW: JIT: Implement NEW operator and array accessors.
[INTERPRETER]
* NEW: Support for JIT NEW operator and array accessors.
[GB.JIT]
* NEW: Support for object datatypes.
* NEW: Implement NEW operator and array accessors.
[COMPILER]
* NEW: JIT: Support for FOR...TO...NEXT loops.
* NEW: JIT: Support for Len(), Left$(), Mid$(), and Right$().
* NEW: JIT: Subroutines return values are now hadled correctly.
[GB.JIT]
* NEW: Compile JIT code with -O3.
[COMPILER]
* NEW: Internal initialization functions now can be JIT translated.
* NEW: Support of subroutine calling completed. Interpreter subroutines are called if there is no optimization implemented in the JIT translation.
[INTERPRETER]
* NEW: Remove old JIT stuff.
[GB.JIT]
* NEW: Use 'gambas.h' and 'gb.jit.h' to compile translated code.
* NEW: Work on JIT continues...
* NEW: Better panic errors.
[INTERPRETER]
* NEW: Remove the old JIT stuff.
* NEW: Calls gb.jit at runtime if needed. If a fast function has no jit implementation, the bytecode version is used.
* NEW: Start defining the JIT interface needed by the JIT functions.
* NEW: The common static character buffer is now twice the size of the maximum symbol length, to avoid possible overflows.
[GB.JIT]
* NEW: Compilation starts to work.
* NEW: Debugging messages.
[INTERPRETER]
* NEW: New API for reference a Gambas string.
[GB.DB]
* NEW: Result.GetAll() is a new method that returns an array of the values of a specific field from each record. It is about twice faster than the equivalent code written in Gambas.
* NEW: Add an API that allows to create an array class before instanciating it.
[GB.DBUS]
* BUG: When marshalling from DBus to Gambas, create the array classes before instanciating them.
git-svn-id: svn://localhost/gambas/trunk@8173 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Switch version to 3.10.90.
[GB.DB]
* NEW: Connection.TimeZone is new property that will allow to define the default timezone of dates stored in the database we are connected to. Not implemented yet.
git-svn-id: svn://localhost/gambas/trunk@8168 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The GB.SystemHasForked() API now resets the pseudo-random number generator, and the signal handler management pipe.
git-svn-id: svn://localhost/gambas/trunk@8089 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update french translation.
* NEW: Support for the new gb.term component.
[INTERPRETER]
* NEW: Add an API that returns the file descriptor associated with a specific stream.
[GB.TERM]
* NEW: New component for terminal management with an API very close to the one provided by the operating system.
git-svn-id: svn://localhost/gambas/trunk@8043 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Make CStr() and CDate() mutually coherent, by internally converting to UTC dates only.
git-svn-id: svn://localhost/gambas/trunk@7983 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly call static event handlers when an event is raised.
git-svn-id: svn://localhost/gambas/trunk@7884 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GB.GetArrayType() is a new API that returns the datatype of the elements of an array class.
git-svn-id: svn://localhost/gambas/trunk@7746 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Object.Raise() now works correctly with events having arguments.
git-svn-id: svn://localhost/gambas/trunk@7486 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GB.GetReturnValue() is a new interpreter API that returns a pointer
to the internal GB_VALUE slot where GB.ReturnXXX() functions store the
return value.
* NEW: Allow a component to declare a GB_AFTER_INIT() exported method that
is called just after all the components declared in the project are
completely loaded.
[GB.DBUS]
* NEW: DBus._HasSystemTray() is a new method that returns if the DBus
system tray is present. That method is used by the 'gb.gui.trayicon'
component to know if 'gb.dbus.trayicon' must be loaded.
* BUG: Fix xml introspection analysis.
[GB.DBUS.TRAYICON]
* BUG: Remove debugging messages.
* BUG: TrayIcon icon data is sent correctly now.
[GB.GUI.TRAYICON]
* NEW: New component that you must check if you want to have system tray
icons. It loads 'gb.dbus', use DBus._HasSystemTray() to know if it can
load 'gb.dbus.trayicon'. Otherwise it tells the current GUI component to
declare the old system tray implementation classes.
[GB.GTK]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
the old system tray icon and use them on demand.
[GB.GTK3]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
the old system tray icon and use them on demand.
[GB.QT4]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
the old system tray icon and use them on demand.
[GB.QT5]
* NEW: Let the new 'gb.gui.trayicon' deals with the dbus stuff, but keep
the old system tray icon and use them on demand.
git-svn-id: svn://localhost/gambas/trunk@7170 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add a new GB.Component.Declare() API, that allows a component to
dynamically register a class description.
[INFORMER]
* NEW: A component now can declare classes through a GB_OPTIONAL_CLASSES
public symbol. Theses classes are included into the information file,
but are not automatically loaded as the ones defined through the
GB_CLASSES symbol.
[GB.FORM.STATUSICON]
* NEW: This component has been removed and replaced by gb.dbus.trayicon.
* NEW: This component now provide TrayIcon and TrayIcons classes that have
exactly the same interface as the old ones.
[GB.DBUS]
* NEW: Remove the now useless DBusConnection.Raise(). The DBusConnection
Register() and Unregister() are kept for backward-compatibility reason.
* NEW: Add DBus.Raise() and DBus[].Raise() to raise signals. At the moment,
there is no difference between the two methods, as there no mean to
indicate the sender raising a signal. I don't know yet how DBus decides
which service sends a signal!
[GB.DBUS.TRAYICON]
* NEW: This component implements the tray icon DBus protocol. It is
automatically loaded by the GUI components.
[GB.GTK]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
* BUG: Fix the old TrayIcon implementation, so that it matches the QT one.
[GB.GTK3]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
* BUG: Fix the component name in deprecation warning messages.
* BUG: Fix the old TrayIcon implementation, so that it matches the QT one.
[GB.QT4]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
[GB.QT5]
* NEW: Load the 'gb.dbus' and 'gb.dbus.trayicon' components if the current
desktop is KDE >= 4. Otherwise, use the old TrayIcon implementation.
git-svn-id: svn://localhost/gambas/trunk@7154 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GB.GetProperty() API now returns the property value as a GB_VALUE
pointer, or NULL if the property could not be read.
[GB.DB.POSTGRESQL]
* BUG: Fix a compilation warning.
[GB.DBUS]
* NEW: DBusVariant.Signature is now a constant, not a property anymore.
* NEW: DBusVariant() static method has been removed.
* NEW: DBusVariant.Value is now writable.
* NEW: DBusVariant now can be inherited. Use the value of the Signature
constant for introspection of methods and properties using a child class
of DBusVariant.
* BUG: Show the org.freedesktop.DBus.Peer interface in introspection.
* BUG: The org.freedesktop.DBus.Properties.GetAll method now works
correctly.
* BUG: Correctly handle array datatypes.
* BUG: Correctly marshall DBus structures and arrays.
* BUG: Correctly handle NULL values.
[GB.FORM.EDITOR]
* BUG: TextEditor: Better detect cursor position when clicking in the
editor with the mouse.
[GB.FORM.STATUSICON]
* NEW: New component that provides a StatusIcon that is a TrayIcon using
the Status Notifier DBus specification (i.e. the new protocol). It should
only works with KDE at the moment.
[GB.IMAGE]
* NEW: Implement all possible image format conversions.
git-svn-id: svn://localhost/gambas/trunk@7150 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Text editor: Compression correctly marks the file as modified.
* NEW: Take gb.qt5 into account in the help system.
[WIKI CGI SCRIPT]
* NEW: Take gb.qt5 into account.
[INTERPRETER]
* NEW: GB.Component.IsLoaded() is new interpreter API that returns if a
specific component has been loaded.
* BUG: Running executables from an absolute path works again.
[GB.DESKTOP]
* BUG: DesktopWatcher: Use Desktop.Windows.FromHandle() instead of
Desktop.Windows[].
[GB.DESKTOP.X11]
* NEW: Support for gb.qt5.
[GB.FORM.EDITOR]
* BUG: TextEditor.Save() highlights the current line before saving.
[GB.QT5]
* NEW: Support for X11 event filter by translating xcb event into xlib
events.
* BUG: Cached DrawingArea works correctly now.
git-svn-id: svn://localhost/gambas/trunk@7099 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: LCDLabel now uses gb.sdl2.audio.
[GB.FORM]
* BUG: The ToolPanel buttons now takes Style.FrameWidth into account.
[GB.GTK]
* BUG: Remove a debugging message.
[GB.QT4]
* BUG: Do not delete open windows later when the event loop is finished.
This is not supported by QT.
git-svn-id: svn://localhost/gambas/trunk@6797 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Some fixes in the software farm window.
[INTERPRETER]
* NEW: Remove the GB.UnrefKeep() interpreter API, as it is not used
anymore.
git-svn-id: svn://localhost/gambas/trunk@6676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The structure of databases is now stored in the *.connection files.
It will be used for an automatic database initialization feature.
[WEBSITE MAKER]
* NEW: Update for 3.6.2.
[WIKI CGI SCRIPT]
* BUG: Fix the display of page without headers.
* NEW: Indexes are now displayed on two or more columns.
[INTERPRETER]
* NEW: New GB.AllocZero() API for allocating memory and filling it with
zeros.
[GB.DB.MYSQL]
* OPT: Cache metadata queries during 30 secondes to speed up things.
[GB.FORM]
* NEW: MenuButton displays a focus rectangle now.
[GB.GUI.BASE]
* BUG: ProgressBar now raises native control events.
git-svn-id: svn://localhost/gambas/trunk@6652 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use the new WebSettings.Cache.Clear() method.
* BUG: Fix project lists layout when they are filtered.
[WIKI CGI SCRIPT]
* BUG: Workaround the thttpd cgi interface bug.
[INTERPRETER]
* NEW: A new API for browsing a directory recursively.
* NEW: Js$() is a new function that quotes javascript strings.
[GB.FORM]
* BUG: ColorChooser: Don't memorize custom colors spuriously.
[GB.GUI.BASE]
* BUG: GridView: Don't take hidden columns into account when layouting
expanded columns.
git-svn-id: svn://localhost/gambas/trunk@6447 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the custom browser support.
* NEW: Add Chromimum to the list of browsers.
[INTERPRETER]
* NEW: GB.GetProperty() and GB.SetProperty() API now return TRUE when they
have raised an error. FALSE is everything was ok.
[GB.FORM.MDI]
* NEW: Redesign the shortcuts configuration dialog.
* NEW: Shortcuts now can be exported and imported.
[GB.GTK]
* BUG: DrawingArea: Clipping is correctly established now before raising
the Draw event.
* BUG: Keyboard events have been fixed. Key array accessor and Key.Code now
behave the same way as in gb.qt4.
* BUG: The Key.Meta property works correctly now.
* BUG: Now keyboard events seem to be sent twice by GDK. Found a workaround
for that new weird behaviour.
* BUG: Automatic window minimum size now works correctly.
* BUG: Windows can take focus as in gb.qt4.
[GB.GUI.BASE]
* BUG: GridView: Do not use Draw.Clip to preserve the clipping of the Draw
event. Otherwise you get drawing artifacts with gb.gtk.
* BUG: GridView: Setting the column width to -1 is taken into account by
the layout routine.
git-svn-id: svn://localhost/gambas/trunk@6306 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Now a method or property object datatype can be overridden by a more
specialized one.
git-svn-id: svn://localhost/gambas/trunk@6249 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add a echo button in the output console, that echoes the entered
command.
[WIKI]
* NEW: Add a HTTP server requests graph.
[INTERPRETER]
* BUG: The debugger does not change the Key property of collections when
displaying them.
* NEW: Collection.Key is writable now.
[GB.FORM]
* NEW: FontChooser: Always reset sample text at first use.
* BUG: FontChooser: Fix the behaviour when size changes.
git-svn-id: svn://localhost/gambas/trunk@6222 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The GB.CanRaise() API now does not take the locked status of the
parent object into account anymore. It really checks if an event has an
event handler.
git-svn-id: svn://localhost/gambas/trunk@6115 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The debugger now can be told to break the program on any error.
* NEW: Statistic tab in the project property dialog.
[INTERPRETER]
* BUG: Don't crash if an unknown option is passed with the '-g' option.
* NEW: The debugger now can be told to break the program on any error.
* NEW: System.BreakOnError is a new property that allows to set the
internal "break on error" option at runtime. I don't know if it is
actually useful, so I may remove it.
[GB.DEBUG]
* NEW: The debugger now can be told to break the program on any error.
git-svn-id: svn://localhost/gambas/trunk@6011 867c0c6c-44f3-4631-809d-bfa615b0a4ec