Opened 3 hours ago

#70846 new defect

macports.sqlext should be updated to current extension APIs

Reported by: RJVB (René Bertin) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jmroot (Joshua Root)
Port: macports.sqlext

Description

The macports.sqlext extension provided by port:macports.sqlext no longer works, idem for the version of the code in the git master branch.

As already posted in a comment in #62365:

> port installed macports.sqlext
The following ports are currently installed:
  macports.sqlext @2.6.3_0 (active)

> sudo cp -p /opt/local/var/macports/registry/registry{,-20240920}.db
> sqlite3
SQLite version 3.41.0 2023-02-21 18:09:37
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .load /opt/local/lib/sqlite3/macports.sqlext
sqlite> .open /opt/local/var/macports/registry/registry-20240920.db
sqlite> VACUUM;
Runtime error: no such collation sequence: VERSION

Indeed, looking at the sqlext.c code one explanation is obvious: the HAVE_SQLITE3EXT_H macro has been replaced by SQLITE3EXT_H(and I don't find any evidence of HAVE_SQLITE3EXT_H being set by the build system either). A better check would a simple #ifdef sqlite3_create_collation but even with that change made it seems that the sqlite3_extension_init() function is simply not being called when the extension is loaded.

Change History (0)

Note: See TracTickets for help on using tickets.