Jan Vrany <jan.vrany@labware.com> [Mon, 24 Jul 2023 23:15:14 +0100] rev 293
Introduce `GDBPortlib` to facilitate porting to other dialects
This commit introduces `GDBPortlib` in order to allow port to other
Smalltalk dialects, e.g, Pharo. Dialect specific code should go there.
For now, this includes creation of pipes and PTYs and spawning
processes.
Since now we use `GDBPortlib`s to encapsulate dialect-specific code,
(what used to be) `GDBStXSimpleProcess` and `GDBStXUnixProcess` are
no longer Smalltalk/X specific. Therefore they have been renamed to
`GDBSimpleProcess` and `GDBUnixProcess`
Jan Vrany <jan.vrany@labware.com> [Fri, 04 Aug 2023 22:56:43 +0100] rev 292
Compatibility: do not use `Delay waitForMilliseconds: x`
...and use `(Delay forMilliseconds: x) wait` as the latter is more portable.
Jan Vrany <jan.vrany@labware.com> [Mon, 31 Jul 2023 18:09:07 +0100] rev 291
Compatibility: remove dependency on `UserPreferences`
...as this is very Smalltalk/X specific class. Instead, keep user-configured
GDB in class variable in class `GDBProcess` and let dialect-specific code
to set as required.
Jan Vrany <jan.vrany@labware.com> [Tue, 25 Jul 2023 17:50:44 +0100] rev 290
Compatibility: handle different implementations of announcements
This commit refactors the code using and extending annoucements to handle
different implementations present in Smalltalk/X and Pharo.
Jan Vrany <jan.vrany@labware.com> [Mon, 24 Jul 2023 14:25:20 +0100] rev 289
Compatibility: use `#includes:` rather than `#includesIdentical:`
...as the latter is not present in (at least) Pharo.
Jan Vrany <jan.vrany@labware.com> [Mon, 24 Jul 2023 14:10:12 +0100] rev 288
Compatibility: do not use `#nextPutLine:`
...as it does not exist in (at least) Pharo. Also, `#flush` the
output stream once the command is written as Pharo's stream are
buffered.
Jan Vrany <jan.vrany@labware.com> [Fri, 14 Jul 2023 15:03:01 +0100] rev 287
Compatibility: do not use `#findFirst:ifNone:`
...as it does not exists in (at least) Pharo.
Jan Vrany <jan.vrany@labware.com> [Fri, 14 Jul 2023 13:45:12 +0100] rev 286
Compatibility: refactor finalization of debuggers and variable objects
...to make it compatible with (at least) Pharo. It also changes the code so
that all GDB-related finalization uses one single registry (instead of having
variable object finalization registry per debugger object).
Jan Vrany <jan.vrany@labware.com> [Fri, 14 Jul 2023 10:09:02 +0100] rev 285
Compatibility: do not use `Process >> addExitAction:`
...since it does not exists in (at least) Pharo. Instead, use `#ensure:`
in process's start block.
Jan Vrany <jan.vrany@labware.com> [Thu, 13 Jul 2023 16:26:06 +0100] rev 284
Compatibility: use `#cull:` instead of `#valueWithOptionalArgument:`
...as the latter does not exists in (at least) Pharo.