mithrandyr / SimplySql

PowerShell module for querying various SQL databases
MIT License
197 stars 31 forks source link

Add SQLite Linux and OSX Dlls #111

Closed ili101 closed 7 months ago

ili101 commented 1 year ago

SQlite missing the Linux dependent dll. This adds the missing dlls.

Dlls are taken from https://github.com/ili101/DependencyonNativeLibraries/tree/master/HelloWorld The "SQLite.Interop.dll" dlls where not working with the existing "System.Data.SQLite.dll", it looks like that when you do dotnet publish --configuration Release -r win-x64 you get a precompiled dlls as you can see the date on the new dlls is 2022-11-26 and they are digitally signed. It is not mentioned what is the origin of the existing dlls in SimplySql so I not sure why are they not compatible but they are not digitally signed and have a newer date so I assume they where manually compiled from source on that date?

Regarding the new Linux file and subfolder name see https://github.com/PowerShell/PowerShell/issues/19277 (I didn't update the existing "x64" and "x86" folders to the new format ("win-x64" and win-x86) to not brake backward compatibility on pre PS 7.0 on Windows)

ili101 commented 1 year ago

Basically similar to https://github.com/mithrandyr/SimplySql/pull/22 but dose not require any change to the existing structure, just adds the 2 extra Linux/osx dll files.

Jiehong commented 1 year ago

Is this covering aarch64/arm64 for macos? (they no longer use x64 for the last 2 years)

ili101 commented 1 year ago

Is this covering aarch64/arm64 for macos? (they no longer use x64 for the last 2 years)

I do not use MacOS and GitHub Actions don't provide arm64 so I can't test. If you like to help you can download my fork and see if it works. If it doesn't, download https://www.powershellgallery.com/packages/rhubarb-geek-nz.SQLiteConnection/1.0.117.0 and copy the folder \osx-arm64\SQLite.Interop.dll.dylib next to the other folders in /SimplySql/Providers/SQLite/ reopen PS and update us if it works.

mithrandyr commented 7 months ago

Superseded by version 2.0