The gnustep-dl2 package in Debian was in a very poor shape for years. We tried to rectify that by hesitatingly moving to tracking Git master, which unfortunately forced us to introduce a Debian-specific SONAME due to the incompatible changes.
The last release was ~17 years ago and it doesn't even compile with current GNUstep. We also introduced a script that builds and runs some of the examples; we use it as a build-time test and also as autopkgtest (it is being run in an isolation container with the gnustep-dl2 *.debs installed when any of the package (build-)depencies changes). Using this script, I was able to catch a regression fixed in patch #9: Running createTradingDB tool... Creating new PostgreSQL cluster 18/regress ... 2026-10-14 12:33:56.776 createTradingDB[55635:55635] File NSKeyValueCoding.m: 93 1. In -[NSObject(KeyValueCoding) valuesForKeys:] This method is deprecated, use -dictionaryWithValuesForKeys: 2026-10-14 12:33:56.805 createTradingDB[55635:55635] <NSException: 0x55a1cf10672 0> NAME:NSInvalidArgumentException REASON:EODatabaseContext(instance) does not r ecognize globalIDForObject: INFO:(null) (EODatabaseContext(instance) does not re cognize globalIDForObject:) test/usr/bin/createTradingDB: Uncaught exception NSInvalidArgumentException, rea son: EODatabaseContext(instance) does not recognize globalIDForObject: *** /tmp/pg_virtualenv.OwhZHd/log/postgresql-18-regress.log (last 100 lines) *** 2026-10-14 12:33:54.471 UTC [55609] LOG: starting PostgreSQL 18.6 (Debian 18.6- 3) on x86_64-pc-linux-gnu, compiled by x86_64-linux-gnu-gcc (Debian 16.2.0-1) 16 .2.0, 64-bit 2026-10-14 12:33:54.471 UTC [55609] LOG: listening on IPv6 address "::1", port 5433 2026-10-14 12:33:54.471 UTC [55609] LOG: listening on IPv4 address "127.0.0.1", port 5433 2026-10-14 12:33:54.472 UTC [55609] LOG: listening on Unix socket "/tmp/.s.PGSQL.5433" 2026-10-14 12:33:54.474 UTC [55615] LOG: database system was shut down at 2026-10-14 12:33:54 UTC 2026-10-14 12:33:54.476 UTC [55609] LOG: database system is ready to accept connections 2026-10-14 12:33:56.775 UTC [55636] yavor@gdl2trading ERROR: sequence "tst_customer_seq" does not exist 2026-10-14 12:33:56.775 UTC [55636] yavor@gdl2trading STATEMENT: DROP SEQUENCE TST_CUSTOMER_SEQ; Dropping cluster 18/regress ... make[1]: *** [debian/rules:60: override_dh_auto_test] Error 1 FYI, the script can be viewed online at https://sources.debian.org/src/gnustep-dl2/0.12.0%2Bgit20250112-2/debian/tests/tools I am forwarding the patches that have been accumulated. Federico Gimenez Nieto (1): GDL2Intro: Add @direntry Ilya Barygin (1): Fix build failure with -Werror=format-security Yavor Doganov (8): Link needed libraries to avoid unresolved symbols Fix doc build with gnustep-make/2.4.0 GDL2Intro: Fix errors from makeinfo Fix some spelling errors Fix various problems with the examples GDL2Palette: Fix loading EODatabaseContext: Fix exception in _primaryKeyForObject:raiseException: GDL2.gsdoc: Fix broken links Apps/EOModeler/Makefile.preamble | 5 ++- Documentation/GDL2Intro/GDL2Intro.texi | 19 ++++++---- EOAccess/EOAdaptorOperation.m | 2 +- EOAccess/EOAttribute.m | 2 +- EOAccess/EODatabase.m | 4 +- EOAccess/EODatabaseContext.m | 4 +- EOAccess/EOModel.m | 5 ++- EOAccess/EOModelGroup.m | 2 +- EOAccess/GNUmakefile | 2 + .../PostgreSQLAdaptor/PostgreSQLChannel.m | 6 +-- EOAdaptors/PostgreSQLAdaptor/config.mak.in | 3 +- EOAdaptors/SQLiteAdaptor/GNUmakefile.in | 2 +- EOControl/EODebug.m | 2 +- EOControl/EOObjectStoreCoordinator.m | 2 +- EOControl/EOObserver.m | 2 +- EOInterface/EODisplayGroup.m | 2 +- EOModeler/GNUmakefile | 3 ++ Examples/GNUmakefile | 2 +- Examples/Trading/GNUmakefile | 9 ++--- Examples/connection.m | 3 ++ Examples/eoexample.m | 29 ++++++++++++++- Examples/library.eomodel | 2 +- GDL2.gsdoc | 6 +-- GDL2Palette/GNUmakefile | 2 +- GDL2Palette/ResourceManager.m | 3 +- GNUmakefile.in | 3 +- Tools/eoutil.m | 37 ++++++++++++------- 27 files changed, 108 insertions(+), 55 deletions(-) -- 2.55.0
