In order to fix #22 we need to introduce a new driver (https://github.com/mattn/go-sqlite3). It states in its compilation section that it requires CGO_ENABLED=1 and a working gcc compiler on the target system. This restricts usage of this tool and forces users to provide the correct environment to build it. Therefore I decided to exclude SQLite3 by default and provide a handy way to enable user to build it via a Makefile. The assumption is that user who have the neccessary environment set up are also able to execute a Makefile.
Furthermore with a growing number of dependencies and with the latest go1.13 release I want to introduce vendoring and versioning via go modules.
This said, this PR does hereby the following:
[x] Adds a new database type sqlite3 and an implementation for it.
[x] Introduces a Makefile for a convenient way to enable the new database type for these who need it.
[x] Introduced the build flag sqlite3 which when set builds the new file sqlite_driver.go.
In order to fix #22 we need to introduce a new driver (https://github.com/mattn/go-sqlite3). It states in its compilation section that it requires
CGO_ENABLED=1
and a workinggcc
compiler on the target system. This restricts usage of this tool and forces users to provide the correct environment to build it. Therefore I decided to exclude SQLite3 by default and provide a handy way to enable user to build it via a Makefile. The assumption is that user who have the neccessary environment set up are also able to execute a Makefile.Furthermore with a growing number of dependencies and with the latest go1.13 release I want to introduce vendoring and versioning via go modules.
This said, this PR does hereby the following:
sqlite3
and an implementation for it.sqlite3
which when set builds the new filesqlite_driver.go
.