cysqlite 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ include README.md
2
+ include LICENSE
3
+ include pyproject.toml
4
+ include tests.py
5
+ recursive-include src *
6
+
7
+ global-exclude *.o
@@ -0,0 +1,17 @@
1
+ Metadata-Version: 2.4
2
+ Name: cysqlite
3
+ Version: 0.1.0
4
+ Summary: bindings for sqlite3
5
+ Author-email: Charles Leifer <coleifer@gmail.com>
6
+ Project-URL: Homepage, https://github.com/coleifer/cysqlite
7
+ Project-URL: Repository, https://github.com/coleifer/cysqlite
8
+ Classifier: Programming Language :: Python :: 2
9
+ Classifier: Programming Language :: Python :: 3
10
+ Classifier: Topic :: Database :: Database Engines/Servers
11
+ Classifier: Topic :: Software Development :: Embedded Systems
12
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
13
+ Description-Content-Type: text/markdown
14
+
15
+ ## cysqlite
16
+
17
+ An attempt at a reasonable Cython implementation of a Sqlite3 driver.
@@ -0,0 +1,3 @@
1
+ ## cysqlite
2
+
3
+ An attempt at a reasonable Cython implementation of a Sqlite3 driver.
@@ -0,0 +1,17 @@
1
+ Metadata-Version: 2.4
2
+ Name: cysqlite
3
+ Version: 0.1.0
4
+ Summary: bindings for sqlite3
5
+ Author-email: Charles Leifer <coleifer@gmail.com>
6
+ Project-URL: Homepage, https://github.com/coleifer/cysqlite
7
+ Project-URL: Repository, https://github.com/coleifer/cysqlite
8
+ Classifier: Programming Language :: Python :: 2
9
+ Classifier: Programming Language :: Python :: 3
10
+ Classifier: Topic :: Database :: Database Engines/Servers
11
+ Classifier: Topic :: Software Development :: Embedded Systems
12
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
13
+ Description-Content-Type: text/markdown
14
+
15
+ ## cysqlite
16
+
17
+ An attempt at a reasonable Cython implementation of a Sqlite3 driver.
@@ -0,0 +1,14 @@
1
+ MANIFEST.in
2
+ README.md
3
+ pyproject.toml
4
+ setup.py
5
+ tests.py
6
+ cysqlite.egg-info/PKG-INFO
7
+ cysqlite.egg-info/SOURCES.txt
8
+ cysqlite.egg-info/dependency_links.txt
9
+ cysqlite.egg-info/not-zip-safe
10
+ cysqlite.egg-info/top_level.txt
11
+ src/cysqlite.c
12
+ src/cysqlite.pxd
13
+ src/cysqlite.pyx
14
+ src/sqlite3.pxi
@@ -0,0 +1 @@
1
+ cysqlite
@@ -0,0 +1,33 @@
1
+ [build-system]
2
+ requires = ["setuptools", "wheel", "cython"]
3
+
4
+ [project]
5
+ name = "cysqlite"
6
+ version = "0.1.0"
7
+ description = "bindings for sqlite3"
8
+ readme = "README.md"
9
+ authors = [
10
+ { name = "Charles Leifer", email = "coleifer@gmail.com" }
11
+ ]
12
+ classifiers = [
13
+ "Programming Language :: Python :: 2",
14
+ "Programming Language :: Python :: 3",
15
+ "Topic :: Database :: Database Engines/Servers",
16
+ "Topic :: Software Development :: Embedded Systems",
17
+ "Topic :: Software Development :: Libraries :: Python Modules",
18
+ ]
19
+
20
+ [project.urls]
21
+ Homepage = "https://github.com/coleifer/cysqlite"
22
+ Repository = "https://github.com/coleifer/cysqlite"
23
+
24
+ [tool.setuptools]
25
+ # Include package data
26
+ zip-safe = false
27
+
28
+ [tool.setuptools.packages.find]
29
+ where = ["."]
30
+ include = ["cysqlite*"]
31
+
32
+ [tool.setuptools.package-data]
33
+ cysqlite = ["*.pxd", "*.pxi", "*.c"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,56 @@
1
+ import os
2
+ import sys
3
+ import warnings
4
+
5
+ from setuptools import setup
6
+ from setuptools.extension import Extension
7
+ try:
8
+ from Cython.Build import cythonize
9
+ cython_installed = True
10
+ except ImportError:
11
+ cython_installed = False
12
+
13
+ if cython_installed:
14
+ sources = ['src/cysqlite.pyx']
15
+ else:
16
+ sources = ['src/cysqlite.c']
17
+ cythonize = lambda obj: obj
18
+
19
+ if os.path.exists('src/sqlite3.c') and os.path.exists('src/sqlite3.h'):
20
+ sources.append('src/sqlite3.c')
21
+ include_dirs = ['src/']
22
+ libraries = []
23
+ define_macros = [
24
+ ('SQLITE_ALLOW_COVERING_INDEX_SCAN', 1),
25
+ ('SQLITE_ENABLE_FTS3', 1),
26
+ ('SQLITE_ENABLE_FTS3_PARENTHESIS', 1),
27
+ ('SQLITE_ENABLE_FTS4', 1),
28
+ ('SQLITE_ENABLE_FTS5', 1),
29
+ ('SQLITE_ENABLE_JSON1', 1),
30
+ ('SQLITE_ENABLE_LOAD_EXTENSION', 1),
31
+ ('SQLITE_ENABLE_MATH_FUNCTIONS', 1),
32
+ ('SQLITE_ENABLE_RTREE', 1),
33
+ ('SQLITE_ENABLE_STAT4', 1),
34
+ ('SQLITE_ENABLE_UPDATE_DELETE_LIMIT', 1),
35
+ ('SQLITE_SOUNDEX', 1),
36
+ ('SQLITE_USE_URI', 1),
37
+ ('SQLITE_TEMP_STORE', 3),
38
+ ('SQLITE_MAX_VARIABLE_NUMBER', 250000),
39
+ ('SQLITE_MAX_MMAP_SIZE', 2**40),
40
+ ]
41
+ else:
42
+ include_dirs = []
43
+ libraries = ['sqlite3']
44
+ define_macros = []
45
+
46
+ compile_args = ['-O3', '-Wall'] if sys.platform != 'win32' else ['/O2']
47
+
48
+ cysqlite_extension = Extension(
49
+ 'cysqlite',
50
+ sources=sources,
51
+ include_dirs=include_dirs,
52
+ libraries=libraries,
53
+ define_macros=define_macros,
54
+ extra_compile_args=compile_args)
55
+
56
+ setup(ext_modules=cythonize([cysqlite_extension]))