Commit graph

794 commits

Author SHA1 Message Date
gambas
2c73795c31 Take ':' inside identifiers into account by replacing them by '$'.
[GB.JIT]
* BUG: Take ':' inside identifiers into account by replacing them by '$', which is allowed in C identifiers.
2021-06-04 14:28:05 +02:00
gambas
ac52cdc447 The first time an watched expression has a value does not trigger a breakpoint anymore.
[GB.DEBUG]
* NEW: The first time an watched expression has a value does not trigger a breakpoint anymore.
2021-06-04 14:27:53 +02:00
gambas
8a8b470c5a 'STATIC' keyword can be used instead of 'DIM' for declaring local static variables.
[COMPILER]
* NEW: 'STATIC' keyword can be used instead of 'DIM' for declaring local static variables.

[INTERPRETER]
* NEW: Support for local static variables.

[GB.DEBUG]
* NEW: Support for local static variables.
2021-06-01 23:12:55 +02:00
gambas
e3af76ce15 Fix management of watched expressions.
[GB.DEBUG]
* BUG: Fix comparison routine of watched expressions.
* BUG: Initialize the stack context correctly when checking watched expressions.
2021-06-01 18:14:54 +02:00
gambas
65eff9e732 The debugger now can watch expressions, and stop when their value changes.
[INTERPRETER]
* NEW: Support for expression watches.

[GB.DEBUG]
* NEW: Add new command for watching expressions, i.e. stopping the debugger when the value of an expressions changes.
2021-05-24 15:34:37 +02:00
gambas
0e78042e07 Initial implementation of class namespaces.
[DEVELOPMENT ENVIRONMENT]
* NEW: Update French translation.
* NEW: Support of the new '.list' file format.
* NEW: Support of the new EXPORT AS syntax.
* NEW: Update error messages.

[COMPILER]
* NEW: EXPORT AS is a new syntax for exporting a class with a specific name that can include a namespace.
* NEW: New header file to start sharing reader code with the 'gb.eval' component.
* NEW: Class names can include a colon. The part before the colon is assumed to be a namespace.

[INTERPRETER]
* NEW: Classes exported in a namespace are now declared both in the global symbol table and in the local symbol table of their component.
* NEW: Class names are now allocated inside the symbol tables, and not in the class objects anymore.

[GB.EVAL]
* NEW: Share some reader code with the compiler.
2021-05-18 02:12:33 +02:00
gambas
3b8b6b5315 Support for 'gb.gtk3.opengl' component.
[GB.GUI.OPENGL]
* NEW: Support for 'gb.gtk3.opengl' component.
2021-05-07 19:20:04 +02:00
Christof Thalhofer
f524a2eb9d fix gb.test bug 2181
[GB.TEST]
* BUG: gb.test does not print a real error's text
2021-04-27 13:44:35 +02:00
gambas
5bcecf2c41 Use 'SIGUSR2' signal instead of 'SIGUSR1' to stop debugged processes, because 'SIGUSR1' makes WebKit crash.
[GB.DEBUG]
* BUG: Use 'SIGUSR2' signal instead of 'SIGUSR1' to stop debugged processes, because 'SIGUSR1' makes WebKit crash.
2021-04-27 10:39:05 +02:00
gambas
cdafe4c211 Use 'String[].Remove()' instead of 'String[].Extract()' which was not needed.
[GB.TEST]
* OPT: Use 'String[].Remove()' instead of 'String[].Extract()' which was not needed.
2021-04-13 00:35:31 +02:00
Christof Thalhofer
6872813adc gb.test Prints line numbers for clickable links
[GB.TEST]
*NEW: Prints line numbers in TAP output so that the IDE can create clickable links to the code.
2021-04-12 22:50:36 +02:00
gambas
77654d842f Add GB.DateFromString() API.
[INTERPRETER]
* NEW: Add GB.DateFromString() API.
2021-04-10 23:05:09 +02:00
gambas
171b46c2f3 Tells the database driver if the connection has already been closed when releasing a query result.
[INTERPRETER]
* NEW: Add an API to know if a native error has already been raised.

[GB.DB]
* NEW: The Result.Release() driver API now tells if the connection has been closed.
* NEW: Raise an error when retrieving the primary key fails, if the driver has not already raised it.
2021-04-10 16:15:34 +02:00
gambas
256942831f Fix corner-cases for forward-only Result objects.
[GB.DB]
* BUG: Don't call the collation driver routine if the 'no_collation' flag is set by the database driver.
* BUG: Do not try to seek anywhere in the Result object if the 'no_seek' flag is set, even if the row count is positive.
* BUG: Result.Delete() never removes a row from the result set if its row count is negative (i.e. if it is forward-only).
2021-04-10 03:41:31 +02:00
gambas
f6fab7df97 Update authors.
[GB.COMPRESS]
* NEW: Update authors.
2021-04-05 15:03:38 +02:00
gambas
03913217d1 Make a project icon.
[GB.JIT]
* NEW: Make a project icon.
2021-04-03 12:46:45 +02:00
gambas
a5d164134e Support for the GB_GUI_TRAYICON_NO_DBUS environment variable.
[GB.GUI.TRAYICON]
* NEW: Support for the GB_GUI_TRAYICON_NO_DBUS environment variable.
2021-03-18 17:20:30 +01:00
gambas
3240ebd8ef Fix the default NULL value for objects. JIT functions returning NULL objects as default value do not crash anymore.
[GB.JIT]
* BUG: Fix the default NULL value for objects. JIT functions returning NULL objects as default value do not crash anymore.
2021-03-10 01:55:50 +01:00
gambas
d5c59c123c Change the GB_FUNCTION structure so that it stores the index of the method instead of its description pointer.
[INTERPRETER]
* NEW: Change the GB_FUNCTION structure so that it stores the index of the method instead of its description pointer.

[GB.DATA]
* OPT: The new GB_FUNCTION structure allows to reduce the size of the GRAPH_DESC structure.
2021-03-07 23:51:12 +01:00
gambas
50db463077 Support for '#Script' preprocessor keyword.
[COMPILER]
* NEW: Support for '#Script' preprocessor keyword.

[GB.EVAL]
* NEW: Support for '#Script' preprocessor keyword.
2021-03-06 22:18:15 +01:00
Christof Thalhofer
97e67b9481 gb.test use dot instead of colon in TAP output
[GB.TEST]
* OPT: Use dot instead of colon in TAP output for testmodule.testmethod
2021-03-06 14:14:58 +01:00
gambas
1656bfa06c Test.BailOut() now raises an error to quit later, instead of quitting immediately, to avoid circular references warning.
[GB.TEST]
* NEW: Test.BailOut() now raises an error to quit later, instead of quitting immediately, to avoid circular references warning.
2021-03-06 13:17:35 +01:00
gambas
ffe87b6074 Tabs and newlines are now replaced by spaces inside error messages. Otherwise the debugger breaks.
[GB.DEBUG]
* BUG: Tabs and newlines are now replaced by spaces inside error messages. Otherwise the debugger breaks.
2021-03-06 13:17:35 +01:00
gambas
321809c4c7 Keywords and subroutines are now returned by two different properties of the System class.
[GB.EVAL]
* NEW: Keywords and subroutines are now returned by two different properties of the System class.
* NEW: System properties Keywords, Subroutines and Datatypes now return a read-only array.

[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new System Keywords and Subroutines properties.
2021-03-06 13:17:35 +01:00
gambas
c4bc1a9ef6 Add more color constants.
[GB.IMAGE]
* NEW: Add more color constants.
2021-03-06 13:17:35 +01:00
gambas
439af29083 TrayIcon: The Picture property kind is now "Picture:NoCache" so that the trayicon icon is not modified when the current theme is dark.
[GB.GUI.TRAYICON]
* NEW: TrayIcon: The Picture property kind is now "Picture:NoCache" so that the trayicon icon is not modified when the current theme is dark.
2021-03-06 13:17:35 +01:00
Christof Thalhofer
8ebf5b5e61 gb.test report Error.Where on error and crash
[GB.TEST]
* NEW: Report Error.Where on error and crash.
2021-03-06 13:17:35 +01:00
Tobias Boege
6dcf1584b2 gb.test: don't mark string formats as translatable
[GB.TEST]
* BUG: Remove the marking of some string as translatable which are just formats, like "&1: &2".
2021-03-06 13:17:35 +01:00
gambas
ffe6133fd7 Still fixing Gambas highlighting of space characters.
[GB.EVAL]
* BUG: Still fixing Gambas highlighting of space characters.
2021-02-15 19:26:29 +01:00
gambas
8360ee65eb Fix space characters highlighting again.
[GB.EVAL]
* BUG: Fix space characters highlighting again.
2021-02-15 16:15:18 +01:00
gambas
69623f1eea Fix how highlighting deals with spaces.
[GB.EVAL]
* BUG: Fix how highlighting deals with spaces.
2021-02-15 03:20:41 +01:00
gambas
47a9a6679b '#Include" is a new preprocessor reserved identifier. Fix preprocessor lines highlighting.
[COMPILER]
* NEW: '#Include" is a new preprocessor reserved identifier.
* BUG: Always raise a syntax error if a preprocessor line starts with an unknown reserved identifier.

[GB.EVAL]
* BUG: Fix preprocessor lines highlighting.
2021-02-06 17:47:32 +01:00
gambas
ab74b3195d Stop watching debugger file descriptor as soon as there is a read error.
[GB.DEBUG]
* BUG: Stop watching debugger file descriptor as soon as there is a read error.
2021-02-06 17:05:03 +01:00
gambas
a22fb26f0f Enumerating subcollection now silently ignores elements that do not exist anymore, instead of raising an error.
[GB.DB]
* NEW: Enumerating subcollection now silently ignores elements that do not exist anymore, instead of raising an error.
2021-02-06 04:04:42 +01:00
gambas
c0167ec949 Fix parser on multi-line text.
[GB.EVAL]
* BUG: Fix parser on multi-line text.
2021-02-03 18:29:55 +01:00
gambas
ee50e97948 If the "class" word follows the "End" keyword, it is recognized as a keyword.
[COMPILER]
* NEW: If the "class" word follows the "End" keyword, it is recognized as a keyword.

[GB.EVAL]
* NEW: If the "class" word follows the "End" keyword, it is recognized as a keyword.
2021-02-01 04:04:46 +01:00
gambas
f588c83fda PictureBox now uses the new UserControl Draw pseudo-event and Frame container in now implemented in Gambas.
[GB.DRAW]
* NEW: Add PaintExtents W and H properties as synonymous of Width and Height.

[GB.GUI.BASE]
* NEW: PictureBox now uses the new UserControl Draw pseudo-event.
* NEW: Frame container in now implemented in Gambas.

[GB.GTK]
* NEW: Frame container in now implemented in Gambas.
* BUG: Style drawing routines now work correctly on UserControl.

[GB.GTK3]
* NEW: Frame container in now implemented in Gambas.

[GB.QT4]
* NEW: Frame container in now implemented in Gambas.

[GB.QT5]
* NEW: Frame container in now implemented in Gambas.
* BUG: Do not activate windows on Wayland, this is not supported.
2021-01-23 23:30:36 +01:00
gambas
a514b8a676 Fix error message choice.
[GB.GUI.QT.OPENGL]
* BUG: Fix error message choice.

[GB.GUI.QT.WEBKIT]
* BUG: Fix error message choice.

[GB.GUI.WEBVIEW]
* BUG: Fix error message choice.
2021-01-04 13:14:30 +01:00
gambas
67631903cb Do not crash if '$XDG_CURRENT_DESKTOP' is not defined.
[GB.GUI]
* BUG: Do not crash if '$XDG_CURRENT_DESKTOP' is not defined.

[GB.GUI.QT]
* BUG: Do not crash if '$XDG_CURRENT_DESKTOP' is not defined.
2020-12-26 22:44:57 +01:00
gambas
05e27f506b Use "$XDG_CURRENT_DESKTOP" before "$KDE_FULL_SESSION" to know if we are running KDE.
[GB.GUI]
* BUG: Use "$XDG_CURRENT_DESKTOP" before "$KDE_FULL_SESSION" to know if we are running KDE.

[GB.GUI.QT]
* BUG: Use "$XDG_CURRENT_DESKTOP" before "$KDE_FULL_SESSION" to know if we are running KDE.
2020-12-21 17:45:26 +01:00
gambas
2c173c0a2d Correctly remove 'gb.component' file from installation once the metadata has been generated.
[CONFIGURATION]
* BUG: Correctly remove 'gb.component' file from installation once the metadata has been generated.
2020-11-27 20:33:15 +01:00
gambas
fd478d91b9 SQLRequest: Do not quote "*" field name in Select() method.
[GB.DB]
* NEW: SQLRequest: Do not quote "*" field name in Select() method.
2020-11-24 21:42:02 +01:00
gambas
2ca5bdd574 The debugger now correctly saves and prints the current error message.
[INTERPRETER]
* NEW: Add a debug API that returns the current error message, and remove the API that printed it.

[GB.DEBUG]
* BUG: The debugger now correctly saves and prints the current error message.
2020-11-11 03:32:03 +01:00
gambas
5ae68582e6 Add 'gb.qt4.webview' component.
[GB.GUI.WEBVIEW]
* NEW: Handle 'gb.qt4.webview'.

[GB.QT4.WEBVIEW]
* NEW: New component based on QtWebKit like 'gb.qt4.webkit'.
2020-09-30 17:43:26 +02:00
gambas
3e0b760dc6 Work on web browser components continue. New QT/GTK+ web browser switcher component.
[GB.GTK3.WEBVIEW]
* NEW: WebView: Add Title and Zoom properties.
* NEW: WebView: Add History property and history support.

[GB.GUI]
* NEW: Enhance debugging messages.

[GB.GUI.OPENGL]
* NEW: Fix debugging messages.

[GB.GUI.QT]
* NEW: Enhance debugging messages.

[GB.GUI.WEBVIEW]
* NEW: New QT/GTK+ web browser switcher component.

[GB.QT5.WEBVIEW]
* NEW: WebView: Add Title and Zoom properties.
* NEW: WebView: Add History property and history support.
2020-09-23 01:06:18 +02:00
gambas
f0606b61c3 Disable jit compiler if no compiler is found.
[INTERPRETER]
* NEW: Disable jit compiler if no compiler is found.

[GB.JIT]
* NEW: Don't crash if no compiler is found, but just tell the interpreter.
2020-09-14 21:15:20 +02:00
gambas
18a74ff682 Use "-march=native -mtune=native" to compile JIT translated code.
[GB.JIT]
* OPT: Use "-march=native -mtune=native" to compile JIT translated code.
2020-09-11 00:43:08 +02:00
Tobias Boege
62823aed08 gb.test: Improve diagnostics of Approximate assertions
[GB.TEST]
* BUG: Improve diagnostics of Approximate and RelativeApproximate assertions, showing the original values too.
2020-08-09 22:11:07 +02:00
gambas
8af699ce91 Correctly handle "~" in database directories.
[GB.DB.SQLITE2]
* BUG: Correctly handle "~" in database directories.

[GB.DB.SQLITE3]
* BUG: Correctly handle "~" in database directories.
2020-08-02 21:14:15 +02:00
Christof Thalhofer
fffe0cc8db gb.test ignore case in test fixtures' method names
[GB.TEST]
* BUG: gb.test ignore case of method names of test fixtures
2020-07-18 12:45:31 +02:00