mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-12 22:25:24 +03:00
move chromadb imports and pysqlite hotswap to fix tests
This commit is contained in:
parent
35e8bcc68d
commit
6ef58d6fc2
@ -1,12 +1,9 @@
|
|||||||
import faulthandler
|
import faulthandler
|
||||||
import sys
|
|
||||||
import threading
|
import threading
|
||||||
|
|
||||||
from flask import cli
|
from flask import cli
|
||||||
|
|
||||||
# Hotsawp the sqlite3 module for Chroma compatibility
|
from frigate.app import FrigateApp
|
||||||
__import__("pysqlite3")
|
|
||||||
sys.modules["sqlite3"] = sys.modules.pop("pysqlite3")
|
|
||||||
|
|
||||||
faulthandler.enable()
|
faulthandler.enable()
|
||||||
|
|
||||||
@ -15,8 +12,6 @@ threading.current_thread().name = "frigate"
|
|||||||
cli.show_server_banner = lambda *x: None
|
cli.show_server_banner = lambda *x: None
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
from frigate.app import FrigateApp
|
|
||||||
|
|
||||||
frigate_app = FrigateApp()
|
frigate_app = FrigateApp()
|
||||||
|
|
||||||
frigate_app.start()
|
frigate_app.start()
|
||||||
|
|||||||
@ -54,10 +54,6 @@ def manage_embeddings(config: FrigateConfig) -> None:
|
|||||||
models = [Event]
|
models = [Event]
|
||||||
db.bind(models)
|
db.bind(models)
|
||||||
|
|
||||||
# Hotsawp the sqlite3 module for Chroma compatibility
|
|
||||||
__import__("pysqlite3")
|
|
||||||
sys.modules["sqlite3"] = sys.modules.pop("pysqlite3")
|
|
||||||
|
|
||||||
embeddings = Embeddings()
|
embeddings = Embeddings()
|
||||||
|
|
||||||
# Check if we need to re-index events
|
# Check if we need to re-index events
|
||||||
|
|||||||
@ -3,19 +3,32 @@
|
|||||||
import base64
|
import base64
|
||||||
import io
|
import io
|
||||||
import logging
|
import logging
|
||||||
|
import sys
|
||||||
import time
|
import time
|
||||||
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
from chromadb import Collection
|
|
||||||
from chromadb import HttpClient as ChromaClient
|
|
||||||
from chromadb.config import Settings
|
|
||||||
from PIL import Image
|
from PIL import Image
|
||||||
from playhouse.shortcuts import model_to_dict
|
from playhouse.shortcuts import model_to_dict
|
||||||
|
|
||||||
from frigate.models import Event
|
from frigate.models import Event
|
||||||
|
|
||||||
from .functions.clip import ClipEmbedding
|
# Hotsawp the sqlite3 module for Chroma compatibility
|
||||||
from .functions.minilm_l6_v2 import MiniLMEmbedding
|
try:
|
||||||
|
from chromadb import Collection
|
||||||
|
from chromadb import HttpClient as ChromaClient
|
||||||
|
from chromadb.config import Settings
|
||||||
|
|
||||||
|
from .functions.clip import ClipEmbedding
|
||||||
|
from .functions.minilm_l6_v2 import MiniLMEmbedding
|
||||||
|
except RuntimeError:
|
||||||
|
__import__("pysqlite3")
|
||||||
|
sys.modules["sqlite3"] = sys.modules.pop("pysqlite3")
|
||||||
|
from chromadb import Collection
|
||||||
|
from chromadb import HttpClient as ChromaClient
|
||||||
|
from chromadb.config import Settings
|
||||||
|
|
||||||
|
from .functions.clip import ClipEmbedding
|
||||||
|
from .functions.minilm_l6_v2 import MiniLMEmbedding
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,6 @@ import datetime
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
import unittest
|
import unittest
|
||||||
from unittest.mock import Mock
|
from unittest.mock import Mock
|
||||||
|
|
||||||
@ -11,18 +10,13 @@ from playhouse.shortcuts import model_to_dict
|
|||||||
from playhouse.sqlite_ext import SqliteExtDatabase
|
from playhouse.sqlite_ext import SqliteExtDatabase
|
||||||
from playhouse.sqliteq import SqliteQueueDatabase
|
from playhouse.sqliteq import SqliteQueueDatabase
|
||||||
|
|
||||||
|
from frigate.api.app import create_app
|
||||||
from frigate.config import FrigateConfig
|
from frigate.config import FrigateConfig
|
||||||
from frigate.models import Event, Recordings
|
from frigate.models import Event, Recordings
|
||||||
from frigate.plus import PlusApi
|
from frigate.plus import PlusApi
|
||||||
from frigate.stats.emitter import StatsEmitter
|
from frigate.stats.emitter import StatsEmitter
|
||||||
from frigate.test.const import TEST_DB, TEST_DB_CLEANUPS
|
from frigate.test.const import TEST_DB, TEST_DB_CLEANUPS
|
||||||
|
|
||||||
# Have to replace pysqlite3 before importing create_app
|
|
||||||
__import__("pysqlite3")
|
|
||||||
sys.modules["sqlite3"] = sys.modules.pop("pysqlite3")
|
|
||||||
|
|
||||||
from frigate.api.app import create_app # noqa: E402
|
|
||||||
|
|
||||||
|
|
||||||
class TestHttp(unittest.TestCase):
|
class TestHttp(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user