FS#79779 - [sqlite] support for printf() has been dropped between 3.40.1-1 and 3.41.0-1

Attached to Project: Arch Linux
Opened by Cecile Tonglet (cecton) - Monday, 25 September 2023, 13:57 GMT
Last edited by Toolybird (Toolybird) - Tuesday, 26 September 2023, 07:01 GMT
Task Type General Gripe
Category Packages: Core
Status Closed
Assigned To No-one
Architecture x86_64
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

Hello! I'm sorry if this ticket is not at the right place.

I use the package sqlite very often and today I just realized that the printf() function does not work anymore in the CLI.

According to the doc for sqlite, printf() has been renamed to format() in SQLite 3.38.0, which was released on 22 February 2022.

I can confirm that both commands (format and printf) works in the package sqlite 3.40.1-1 but not in 3.41.0-1. My guess is that this feature needs to be enabled in the configure script and it was disabled at some point OR it was enabled by default and now it isn't.

In any case, the change of behavior of the package sqlite is disturbing. I heavily rely on this feature and I will need to make an AUR if this is not re-enabled in the core package. But I would be very happy if we can re-enable this feature.

Net Upgrade Size: 0.04 MiB

Additional info:
* package version(s): 3.40.1-1 (support for printf/format), 3.41.0-1 (no more support for printf/format)
* config and/or log files etc.
* link to upstream bug report, if any

Steps to reproduce:

```
sqlite3 :memory: 'SELECT format("%d", 1)'
```
This task depends upon

Closed by  Toolybird (Toolybird)
Tuesday, 26 September 2023, 07:01 GMT
Reason for closing:  Not a bug
Additional comments about closing:  See comments
Comment by loqs (loqs) - Monday, 25 September 2023, 20:50 GMT
The current version of sqlite in the repositories is 3.43.1-1.

$ sqlite3
SQLite version 3.43.1 2023-09-11 12:01:27
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> SELECT format('This is %s. %s likes %s.', 'Tim', 'He', 'football');
This is Tim. He likes football.
sqlite> SELECT printf('This is %s. %s likes %s.', 'Tim', 'He', 'football');
This is Tim. He likes football.

Comment by Toolybird (Toolybird) - Monday, 25 September 2023, 22:18 GMT
Sorry, but "My guess" does not cut the mustard around here...we need facts. Please review the guidelines [1] to ensure your bug reports are effective. In this case your gripe seems to be off the mark as demonstrated above by @loqs. Stuff like this belongs in the support channels (Forum, etc).

[1] https://wiki.archlinux.org/title/Bug_reporting_guidelines
Comment by Toolybird (Toolybird) - Tuesday, 26 September 2023, 07:01 GMT
@reporter followed up with "I found the issue. In version 3.40 you can use the double quotes. Starting from 3.41 the double quotes gives this error. So no need to re-open since it's a change in sqlite itself and sorry for the inconvenience."

Loading...