chocolatey-community/chocolatey-packages

(sqlite3) Does not install 64-bit version

Closed this issue · 4 comments

Checklist

  • I have verified that this is the correct repository, and the package is maintained by the chocolatey-community user.
  • I have verified that this is happening in the latest available version of the package.

Chocolatey Version

2.2.2

Chocolatey License

None

Package Version

3.43.2

Current Behaviour

Installing on a 64-bit machine installs the 32-bit version instead.

choco uninstall sqlite fails to fully uninstall - the files are not deleted or removed from the path, which leads to them hiding later installs done by methods other than chocolatey, causing the user to have to track down and delete the chocolatey installation manually.

Expected Behaviour

Installing on a 64-bit machine should install the 64-bit version by default. Uninstalling should delete files and remove them from the path.

Steps To Reproduce

choco install sqlite

Open a new shell

Run sqlite3

Try to load a 64-bit library (such as 64-bit version of xlite - .load xlite

Fails with "%1 is not a valid Win32 application" error

Environment

- Operating System: Windows 10 (Microsoft Windows NT 10.0.19045.0)
- PowerShell Version: 5.1.19041.4412
- Shell: git bash or Windows PowerShell in Windows Terminal

Chocolatey Log

https://gist.github.com/djwashburn/9b74a6e8ba6a34bce3e55b7fb1d831e8

Anything else?

No response

The logs provided don't have any mention of sqlite.

I installed sqlite here, and it installed the 64-bit version as expected.

image

The package places the sqlite files into $env:ChocolateyInstall\lib\sqlite\tools. Upon uninstall, that folder is removed.

image

The hash for the sqllite3.dll in the tools folder is E0B28EDF0584FCB2FC88FFB38D8B29E227037B23FA2221A9F76B7BD3D26F7CBA:

image

The hash for the sqlite3.dll in the sqllite-dll-win64-x64 archive used for the installation is e0b28edf0584fcb2fc88ffb38d8b29e227037b23fa2221a9f76b7bd3d26f7cba, which is the same:

image

If xlite doesn't work with it (which I've confirmed) then this could mean many things. The package installs the 64-but version of sqlite as it is supposed to and that's all it is expected to do.

The issue here might actually be the opposite. As per the note that was just merged in #2342, the 32 bit version is no longer being shipped, and so it's not being installed.

Functions as expected using a 64-bit version:

image

Issue however reported against 3.43.2 which contains 32-bit versions of the tooling - sqlite3.exe is a 32-bit binary in this version of the package. Even on 64-bit machines the tools were 32-bit.

Package versions 3.46.0 and later contain 64-bit versions of the tooling and will operate as expected with a 64-bit version of xlite.

Actually a timing issue - #2486 raised on 7th June and updated sqlite package supporting the 64-bit tooling merged in #2342 / available on the 13th June.

pauby commented

Given all of the above comments, and their being no response from @djwashburn, in going to go ahead and close this. We can always reopen it if necessary.