Commit graph

826 commits

Author SHA1 Message Date
gambas
9f39e674c2 Print constants (Null, True, False) with only the first letter in upper case.
[GB.DEBUG]
* NEW: Print constants (Null, True, False) with only the first letter in upper case.
2022-02-07 21:51:18 +01:00
gambas
d2eebaf136 The debugger and the profiler now can act inside components.
[INTERPRETER]
* NEW: Add a debugger API to allows debugging inside components.

[GB.DEBUG]
* NEW: New debugger command to toggle  debugging inside components.
* NEW: Support for profiling inside components.
2022-02-05 00:11:10 +01:00
gambas
9280365122 Debug.Signal() is a new method that signals a debugged gambas process with SIGUSR2 to ask him to pause.
[GB.DEBUG]
* NEW: Debug.Signal() is a new method that signals a debugged gambas
  process with SIGUSR2 to ask him to pause.
2022-02-02 20:57:31 +01:00
gambas
2a90e5f081 Fix a warning message.
[GB.DEBUG]
* BUG: Fix a warning message.
2022-02-01 01:22:02 +01:00
gambas
168b00a5d5 AvlTree: Clearing the tree now correctly frees all nodes.
[GB.DATA]
* BUG: AvlTree: Clearing the tree now correctly frees all nodes.
2021-11-05 20:11:24 +01:00
gambas
0f80f22530 The Highlight constants now follow the order defined by the new 'gb.eval.highlight' design.
[GB.EVAL]
* NEW: The Highlight constants now follow the order defined by the new 'gb.eval.highlight' design.
2021-11-05 16:46:35 +01:00
gambas
c0345b99ab Raise an error if point or rectangle constructor take an incorrect number of arguments.
[GB.GEOM]
* BUG: Raise an error if the rectangle constructor does not take zero or four arguments.
* BUG: Raise an error if the point constructor does not take zero or two arguments.
2021-11-02 12:20:07 +01:00
gambas
01a1df3b33 Move 'gb.form.htmlview' source code directory at the top, so it is compiled after the components its project requires.
[CONFIGURATION]
* BUG: Move 'gb.form.htmlview' source code directory at the top, so it is compiled after the components its project requires.
2021-10-31 17:55:55 +01:00
gambas
7b456ffc0b Do not make the project depends on 'gb.form', it break compilation.
[GB.FORM.HTMLVIEW]
* BUG: Do not make the project depends on 'gb.form', it break compilation.
2021-10-31 02:11:15 +02:00
gambas
bfddf7d407 HtmlView: The control can get focus now, and react to arrow keys.
[GB.FORM.HTMLVIEW]
* NEW: HtmlView: The control can get focus now, and react to arrow keys.
* NEW: HtmlView: Fix litehtml instead of patching it for string and conversion functions that must ignore the current locale.
2021-10-30 22:22:47 +02:00
gambas
d8a203f83a HtmlView: The control is now usable.
[GB.FORM.HTMLVIEW]
* NEW: HtmlView: The control is now usable.
2021-10-30 20:37:44 +02:00
gambas
fa3921b056 Work continues...
[GB.FORM.HTMLVIEW]
* NEW: Work continues...
2021-10-30 02:15:43 +02:00
gambas
ed430b5656 Try to fix compilation.
[GB.FORM.HTMLVIEW]
* BUG: Try to fix compilation.
2021-10-29 03:33:44 +02:00
gambas
894e73d1c6 Work continues on the new HtmlView control.
[GB.FORM.HTMLVIEW]
* NEW: Work continues on the new HtmlView control.
2021-10-29 02:51:00 +02:00
gambas
c2052e42f3 Add two API for translating and scaling the current painter.
[GB.DRAW]
* NEW: Add two API for translating and scaling the current painter.
2021-10-29 02:49:34 +02:00
gambas
fe27af0ddb Add an API to set the current paint background color.
[GB.DRAW]
* NEW: Add an API to set the current paint background color.
2021-10-28 03:29:13 +02:00
gambas
57916c60c3 Use '-std=c99' for compilation of 'gumbo'.
[GB.FORM.HTMLVIEW]
* BUG: Use '-std=c99' for compilation of 'gumbo'.
2021-10-28 03:07:33 +02:00
gambas
58f47d68ad Use the C compiler for compiling 'gumbo'.
[GB.FORM.HTMLVIEW]
* BUG: Use the C compiler for compiling 'gumbo'.
2021-10-28 02:26:36 +02:00
gambas
5c8b49b601 Add gcc flag for c++11 standard.
[GB.FORM.HTMLVIEW]
* BUG: Add gcc flag for c++11 standard.
2021-10-28 02:08:31 +02:00
gambas
f5db84f9a2 Integrate 'gumbo' library inside the component.
[GB.FORM.HTMLVIEW]
* NEW: Integrate 'gumbo' library inside the component, so that the component has no depency anymore and compile on all systems.
  Consequently, the component source code moved to the '/main/lib' directory.
2021-10-28 01:27:55 +02:00
gambas
fdc47c8744 Some debugger fixes.
[GB.DEBUG]
* BUG: Fix debugger fifo opening process.
* BUG: The result of an evaluated expression is not truncated anymore.
2021-10-25 02:57:04 +02:00
gambas
438deab9da The '!' command does not write on the standard output anymore, but now works like the '?' command.
[GB.DEBUG]
* NEW: The '!' command does not write on the standard output anymore, but now works like the '?' command.
2021-10-20 14:17:22 +02:00
gambas
85cbb94625 Support for debugging a process not run by the IDE.
[INTERPRETER]
* NEW: Support for "remote" debugging, i.e. debugging a process not run by the IDE.
  It is activated by the existence of a symbolic link named '/tmp/gambas-<project name>.debug'
  pointing at the IDE temporary directory. The symbolic link is destroyed by the debuggee, so that
  no other process of the same project can use it.
* BUG: Remove support of two deprecated parameters in '.startup' file.
* NEW: The internal common string buffer size is now equal to 'PATH_MAX'.

[GB.DEBUG]
* NEW: Support for "remote" debugging.
* OPT: The debugger process now opens the output fifo in blocking mode when needed, and the
  debugged process opens the output fifo for reading when needed too.
2021-10-20 02:28:22 +02:00
gambas
bc806a189b The parser now does not store integer numbers in its global symbol table anymore. Compile is now about 5% faster.
[COMPILER]
* OPT: The parser now does not store integer numbers in its global symbol table anymore.
* OPT: Some other little optimizations here and here. The compiler is now about 5% faster.

[ARCHIVER]
* NEW: Compile with '-O3' optimization flag.

[INFORMER]
* NEW: Compile with '-O3' optimization flag.

[GB.EVAL]
* OPT: The parser now does not store integer numbers in its global symbol table anymore.
2021-10-14 03:01:14 +02:00
gambas
d651287c43 Now integer constants can be simple integer expressions in array, constant and enumeration declarations.
[COMPILER]
* NEW: Shr, Shl, Asr, Asl, Lsl, Lsr, Rol and Ror can now be used as operators.
* NEW: Now integer constants can be simple integer expressions in array, constant and enumeration declarations.

[GB.EVAL]
* BUG: Fix a compiler warning.
2021-10-12 13:33:45 +02:00
gambas
4729b9e60b JIT implementation of Left$(), Mid$() and Right$(). They are now twice faster.
[GB.JIT]
* NEW: JIT implementation of Left$(), Mid$() and Right$(). They are now twice faster.
2021-09-18 23:41:47 +02:00
gambas
34b543e555 Standard stream objects (File.In, File.Out, File.Err) are now created on demand.
[INTERPRETER]
* NEW: Standard stream objects (File.In, File.Out, File.Err) are now created on demand.
2021-09-18 14:50:39 +02:00
gambas
e2c15bd10b Fix highlighting and rewriting of lines having comments with more than one space before them.
[GB.EVAL]
* BUG: Fix highlighting and rewriting of lines having comments with more than one space before them.
2021-07-05 18:52:07 +02:00
gambas
9072d7c9de Connection.Collations correctly returns the collation list now.
[GB.DB]
* BUG: Connection.Collations correctly returns the collation list now.
2021-06-29 23:21:44 +02:00
gambas
6e5c42939a Fix some memory leaks introduced by the last commit.
[GB.JIT]
* BUG: Fix some memory leaks introduced by the last commit.
2021-06-18 14:33:40 +02:00
gambas
78ad25231b JIT compiler support for embedded array and structures variables.
[INTERPRETER]
* NEW: JIT compiler support for embedded array and structures variables.

[GB.JIT]
* NEW: JIT compiler support for embedded array and structures variables.
2021-06-18 04:33:42 +02:00
gambas
06e2373dd5 Fix memory leaks in debugger expression evaluation routines.
[INTERPRETER]
* BUG: Fix memory leaks in debugger expression evaluation routines.

[GB.DEBUG]
* BUG: Fix memory leaks in debugger expression evaluation routines.
* NEW: The debugger now prints the reference count next to object references.
* BUG: A null pointer is printed as "NULL" now.
2021-06-12 01:39:52 +02:00
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