Import pysqlite3 if available, closes #360

This commit is contained in:
Simon Willison 2018-08-15 17:51:46 -07:00
commit da41daa168
No known key found for this signature in database
GPG key ID: 17E2DEA2588B7F52
8 changed files with 18 additions and 10 deletions

View file

@ -4,7 +4,6 @@ import collections
import hashlib
import itertools
import os
import sqlite3
import sys
import threading
import traceback
@ -33,6 +32,7 @@ from .utils import (
escape_sqlite,
get_plugins,
module_from_path,
sqlite3,
sqlite_timelimit,
to_css_class
)

View file

@ -1,7 +1,12 @@
import hashlib
import sqlite3
from .utils import detect_spatialite, detect_fts, escape_sqlite, get_all_foreign_keys
from .utils import (
detect_spatialite,
detect_fts,
escape_sqlite,
get_all_foreign_keys,
sqlite3
)
HASH_BLOCK_SIZE = 1024 * 1024

View file

@ -9,13 +9,17 @@ import os
import pkg_resources
import re
import shlex
import sqlite3
import tempfile
import time
import shutil
import urllib
import numbers
try:
import pysqlite3 as sqlite3
except ImportError:
import sqlite3
# From https://www.sqlite.org/lang_keywords.html
reserved_words = set((
'abort action add after all alter analyze and as asc attach autoincrement '

View file

@ -2,7 +2,6 @@ import asyncio
import csv
import json
import re
import sqlite3
import time
import urllib
@ -25,6 +24,7 @@ from datasette.utils import (
path_with_format,
remove_infinites,
resolve_table_and_format,
sqlite3,
to_css_class,
value_as_boolean,
)

View file

@ -1,4 +1,3 @@
import sqlite3
import urllib
import jinja2
@ -19,6 +18,7 @@ from datasette.utils import (
path_with_added_args,
path_with_removed_args,
path_with_replaced_args,
sqlite3,
to_css_class,
urlsafe_components,
value_as_boolean,

View file

@ -1,10 +1,10 @@
from datasette.app import Datasette
from datasette.utils import sqlite3
import itertools
import json
import os
import pytest
import random
import sqlite3
import sys
import string
import tempfile

View file

@ -1,7 +1,7 @@
from datasette.app import Datasette
from datasette.utils import sqlite3
import os
import pytest
import sqlite3
import tempfile

View file

@ -7,7 +7,6 @@ import json
import os
import pytest
from sanic.request import Request
import sqlite3
import tempfile
from unittest.mock import patch
@ -228,7 +227,7 @@ def test_detect_fts():
CREATE VIRTUAL TABLE "Street_Tree_List_fts" USING FTS4 ("qAddress", "qCaretaker", "qSpecies", content="Street_Tree_List");
CREATE VIRTUAL TABLE r USING rtree(a, b, c);
'''
conn = sqlite3.connect(':memory:')
conn = utils.sqlite3.connect(':memory:')
conn.executescript(sql)
assert None is utils.detect_fts(conn, 'Dumb_Table')
assert None is utils.detect_fts(conn, 'Test_View')