Closed bricelam closed 1 year ago
Should include things like...
- What it is
I can write the part about the underlying encryption extension, but not the .NET part.
- How to install it
Well, this part should be written by you, @bricelam, or @jammerxd.
I thought that the idea of NuGet packages is to make installing simple.
BTW, how and where will the packages be published?
How to use it
- In ADO.NET/Dapper
- In EF Core
- In sqlite-net
Again, this should also be written by you, @bricelam, or @jammerxd.
- With a SQLCipher database (especially ones created using bundle_e_sqlcipher)
Now, that should be really simple. _bundle_esqlcipher uses a recent SQLCipher library version, that is, SQLCipher 4 format:
"Data Source=file:sqlcipher-database-file-name"
.?cipher=sqlcipher&legacy=4
.In principle, SQLCipher allows to configure the encryption scheme via PRAGMA
commands (see SQLCipher documentation, but AFAIK this feature isn't used very often. However, if it is used, then the respective parameters have to be specified in the URI as well. How this is done can be seen in the test code for accessing a SQLCipher 2 database file.
- Where to learn more about SQLite3 Multiple Ciphers
I will write that part.
We should also consider adding a README to the main bundle package.
Yes, absolutely. What should be the content of that README? Is it just a short description of the package with pointers to further information? Or is it more or less a duplicate of the repo README? Are there formal requirements for the NuGet package(s)?
I’m happy to write most or all of this. Just filed it so I didn’t forget about it 😉
I thought that the idea of NuGet packages is to make installing simple.
Nuget is a package manager that is integrated into the .NET realm of development, It is comparable to npm or yarn but for .NET projects. Installing a preferred flavor of sqlite is not the same as using Microsoft's published sqlite package - as the Micrsoft sqlite package handles the resolution of these raw bundles we are generating. There are instructions in Microsoft's documentation that explain which nuget packages to install if you're going to use a custom flavor of sqlite (like sqlitemc)
I thought that the idea of NuGet packages is to make installing simple.
Nuget is a package manager that is integrated into the .NET realm of development, It is comparable to npm or yarn but for .NET projects. Installing a preferred flavor of sqlite is not the same as using Microsoft's published sqlite package - as the Micrsoft sqlite package handles the resolution of these raw bundles we are generating. There are instructions in Microsoft's documentation that explain which nuget packages to install if you're going to use a custom flavor of sqlite (like sqlitemc)
Admittedly, .NET is a closed book for me. Could you give a pointer to the relevant documentation and explain the consequences for our packages? TIA.
Admittedly, .NET is a closed book for me. Could you give a pointer to the relevant documentation and explain the consequences for our packages? TIA.
Here's a link to the page I'm referring to: https://learn.microsoft.com/en-us/dotnet/standard/data/sqlite/custom-versions?tabs=netcore-cli
Sqlite3MC would fall under custom versions.
I think we got all that covered in the README for all the major .NET libraries (Microsoft.Data.Sqlite, SQLite-net, and EF Core)
Should include things like...
We should also consider adding a README to the main bundle package.