mirror of
https://github.com/cuberite/SQLiteCpp.git
synced 2025-08-04 09:46:02 -04:00
Some more concurence analysis
This commit is contained in:
parent
49f91bae6f
commit
8cf6d8e8b8
5
TODO.txt
5
TODO.txt
@ -7,6 +7,7 @@ Missing features :
|
|||||||
- execScalar() easy wrapper like CppSqlite
|
- execScalar() easy wrapper like CppSqlite
|
||||||
- TableExists
|
- TableExists
|
||||||
- batch mode managing multiple queries semicolon separated
|
- batch mode managing multiple queries semicolon separated
|
||||||
|
- support for different transaction mode
|
||||||
|
|
||||||
- Function ?
|
- Function ?
|
||||||
- Agregate ?
|
- Agregate ?
|
||||||
@ -20,3 +21,7 @@ Add optionnal usage of experimental sqlite3_trace() function to enable statistic
|
|||||||
|
|
||||||
Post an article to CodeProject : Is there a license issue ?
|
Post an article to CodeProject : Is there a license issue ?
|
||||||
Mirror the repository to GoogleCode : with a versionned downloadable ZIP file
|
Mirror the repository to GoogleCode : with a versionned downloadable ZIP file
|
||||||
|
|
||||||
|
Documentation:
|
||||||
|
- explain the noncopyable property for RAII design
|
||||||
|
- comment on returning error code instead of exception that shall not be thrown when exepected (!?)
|
||||||
|
76
wrappers.md
76
wrappers.md
@ -1,48 +1,82 @@
|
|||||||
http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
|
http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers
|
||||||
http://stackoverflow.com/questions/120295/what-is-a-good-oo-c-wrapper-for-sqlite
|
http://stackoverflow.com/questions/120295/what-is-a-good-oo-c-wrapper-for-sqlite
|
||||||
http://stackoverflow.com/questions/818155/sqlite-alternatives-for-c
|
http://stackoverflow.com/questions/818155/sqlite-alternatives-for-c
|
||||||
|
http://www.reddit.com/search?q=sqlite
|
||||||
|
|
||||||
|
|
||||||
- **SQLite++**: uses boost build system, Boost License 1.0 (http://sqlitepp.berlios.de/)
|
|
||||||
- **CppSQLite**: famous Code Project but old design, BSD License (http://www.codeproject.com/Articles/6343/CppSQLite-C-Wrapper-for-SQLite/)
|
|
||||||
|
|
||||||
|
|
||||||
**sqlite3cc**: http://ed.am/dev/sqlite3cc/
|
**sqlite3cc**: http://ed.am/dev/sqlite3cc/
|
||||||
- v0.1
|
- Nov 2009, Jan 2012 (v0.1)
|
||||||
- Nov 2009, Jan 2012
|
|
||||||
- (++) modern design, use RAII => can be a source of inspiration for me
|
- (++) modern design, use RAII => can be a source of inspiration for me
|
||||||
- (++) very well documented, in code and with a very good informal presentation
|
- (++) very well documented, in code and with a very good informal presentation
|
||||||
- (+) is maintained (recent), initial release is 0.1.0, January 2012 (started in 2010)
|
- (+) is maintained (recent), initial release is 0.1.0, January 2012 (started in 2010)
|
||||||
- (+/-) uses boost (some more dependancies...)
|
- (+/-) uses boost (some more dependancies...)
|
||||||
- (-) uses boost coding style (I tend to prefer CamelCaps or Java coding style)
|
- (-) uses boost coding style (I tend to prefer CamelCaps or Java coding style)
|
||||||
- (-) a bit complicated : offer many way to do the same thing where I would prefer a clean choice
|
- (-) a bit complex: offer many way to do the same thing where I would prefer a clean choice
|
||||||
- (-) thus it does not impose RAII, as it is still possible to open or close a database outside constructor/destructor
|
- (-) thus it does not impose RAII, as it is still possible to open or close a database outside constructor/destructor
|
||||||
- (---) LPGPL : for me, this is a stopper as I would like to be able to use it in commercial products
|
- (---) LPGPL: for me, this is a stopper as I would like to be able to use it in commercial products
|
||||||
- bazaar: http://bzr.ed.am/sqlite3cc
|
- bazaar: http://bzr.ed.am/sqlite3cc
|
||||||
- bugtracker: personal: trac is still to be installed to http://dev.ed.am/sqlite3cc
|
- bugtracker: personal: trac is still to be installed to http://dev.ed.am/sqlite3cc
|
||||||
|
- test suite: a simple main with boost filesystem (build librairy) depandancy
|
||||||
=> inspiration :
|
|
||||||
- bind named parameters,
|
|
||||||
- support for different transaction mode
|
|
||||||
- comment on returning error code instead of exception that shall not be thrown when exepected (!?)
|
|
||||||
- explain the noncopyable property for RAII design
|
|
||||||
|
|
||||||
**sqdbcpp**: http://code.google.com/p/sqdbcpp/
|
**sqdbcpp**: http://code.google.com/p/sqdbcpp/
|
||||||
- Dec 2009 (no more activity)
|
- Dec 2009 (no more activity)
|
||||||
- (++) new BSD license
|
- (++) new BSD license
|
||||||
- (+) CamelCaps
|
- (++) RAII design, with some good ideas, like the "Convertor" class
|
||||||
|
- (++) modern design, use RAII
|
||||||
|
- (+) CamelCaps naming convention
|
||||||
- (+) STL is the only depandancy
|
- (+) STL is the only depandancy
|
||||||
- (+) RAII design, with some good ideas,
|
- (+) very small code
|
||||||
- (-) but with some unnecessary complexity, and some unused code (RefCount...)
|
- (-) not RAII transactions
|
||||||
- (-) UTF-8/UTF-16 : the second is not portable
|
- (-) some unnecessary complexity to manage copyable objects (RefCount)
|
||||||
- (--) Not documented
|
- (-) UTF-8/UTF-16: the second is not portable
|
||||||
- (---) Not maintained/not finished : contact author !?
|
- (--) Not documented (only a short example
|
||||||
|
- (---) Not maintained/not finished: contact author !?
|
||||||
- SVN: http://sqdbcpp.googlecode.com/svn/trunk/
|
- SVN: http://sqdbcpp.googlecode.com/svn/trunk/
|
||||||
- bugtracker: GoogleCode: http://code.google.com/p/sqdbcpp/issues/list
|
- bugtracker: GoogleCode: http://code.google.com/p/sqdbcpp/issues/list
|
||||||
|
- test suite: with gtest
|
||||||
|
|
||||||
**sqlite3pp**: http://code.google.com/p/sqlite3pp/
|
**sqlite3pp**: http://code.google.com/p/sqlite3pp/
|
||||||
- Sep 2007 to Mar 2009
|
- Sep 2007 to Mar 2009
|
||||||
- (++) MIT License
|
- (++) MIT License
|
||||||
|
- (++) modern design, use RAII => can be a source of inspiration for me
|
||||||
- (+/-) uses boost (some more dependancies...)
|
- (+/-) uses boost (some more dependancies...)
|
||||||
-
|
- (-) complex: offer many way to do the same thing, and advance functionalities
|
||||||
|
- (--) Not documented in code
|
||||||
|
- (---) Not maintained, many open issues
|
||||||
|
- SVN: http://sqlite3pp.googlecode.com/svn/trunk/
|
||||||
|
- bugtracker: GoogleCode: http://code.google.com/p/sqlite3pp/issues/list
|
||||||
|
|
||||||
|
**SQLite++**: http://sqlitepp.berlios.de/
|
||||||
|
- Jan 2006 until now (Apr 2012)
|
||||||
|
- (++) still maintained
|
||||||
|
- (++) Boost License 1.0
|
||||||
|
- (+) good online introduction
|
||||||
|
- (+/-) uses boost (some more dependancies...)
|
||||||
|
- (-) uses boost build system
|
||||||
|
- (-) come with yet another unicode string library
|
||||||
|
- (-) too complex and big to dive easily into
|
||||||
|
- (--) Not documented in code
|
||||||
|
- SVN: https://svn.berlios.de/svnroot/repos/sqlitepp/trunk/
|
||||||
|
- bugtracker: no!
|
||||||
|
- test suite: yes, with bjam
|
||||||
|
|
||||||
|
**CppSQLite**: http://www.codeproject.com/Articles/6343/CppSQLite-C-Wrapper-for-SQLite/
|
||||||
|
- Mar 2004, Jun 2011
|
||||||
|
- (+/-) BSD License? CodeProject License?
|
||||||
|
- (+) famous CodeProject, good introductory article
|
||||||
|
- (--) Not documented in code
|
||||||
|
- (--) old design, no RAII
|
||||||
|
- (--) unnecessary complex memory allocation for exception
|
||||||
|
- VCS: no! but cloned twice on GitHub
|
||||||
|
- bugtracker: no!
|
||||||
|
- test suite: no, only some demo code.
|
||||||
|
|
||||||
|
**easySQLite**: http://code.google.com/p/easysqlite/
|
||||||
|
- Sep 2010
|
||||||
|
- (+/-) Manage table as objects, requiring to define their structure
|
||||||
|
- (-) not RAII
|
||||||
|
- (--) complex
|
||||||
|
- (---) Not maintained, some open issues
|
||||||
|
- SVN: http://easysqlite.googlecode.com/svn/trunk/
|
||||||
|
- bugtracker: http://code.google.com/p/easysqlite/source/list
|
||||||
|
- test suite: yes, a big one, with UnitTest++
|
Loading…
x
Reference in New Issue
Block a user