Files
tunarr/patches/kysely.patch
Christian Benincasa 769b05d201 refactor: add media_source_id to relevant entities (#1106)
We should be referencing media_sources by their ID on programs,
external_ids, etc. This enables us to use proper foreign keys for
referential integrity at the DB level, not worry about unique names for
media sources, and simplifies a lot of the code relating to media source
deletion and the cleanup thereafter.

This change also introduces the DBContext, which should allow for
arbitrarily calling other DB accessor functions when within transactions
and not deadlocking the connection to the DB.
2025-02-28 15:53:29 -05:00

468 lines
23 KiB
Diff

diff --git a/dist/esm/index.d.ts b/dist/esm/index.d.ts
index d556ad76e2a23d600e3ee3024bad9d7dd8beccf7..5f25e02adfed39f2cbebb7db31d04e9615b1a544 100644
--- a/dist/esm/index.d.ts
+++ b/dist/esm/index.d.ts
@@ -1,95 +1,48 @@
-export * from './kysely.js';
-export * from './query-creator.js';
-export * from './expression/expression.js';
-export { ExpressionBuilder, expressionBuilder, } from './expression/expression-builder.js';
-export * from './expression/expression-wrapper.js';
-export * from './query-builder/where-interface.js';
-export * from './query-builder/returning-interface.js';
-export * from './query-builder/output-interface.js';
-export * from './query-builder/having-interface.js';
-export * from './query-builder/select-query-builder.js';
-export * from './query-builder/insert-query-builder.js';
-export * from './query-builder/update-query-builder.js';
-export * from './query-builder/delete-query-builder.js';
-export * from './query-builder/no-result-error.js';
-export * from './query-builder/join-builder.js';
-export * from './query-builder/function-module.js';
-export * from './query-builder/insert-result.js';
-export * from './query-builder/delete-result.js';
-export * from './query-builder/update-result.js';
-export * from './query-builder/on-conflict-builder.js';
-export * from './query-builder/aggregate-function-builder.js';
-export * from './query-builder/case-builder.js';
-export * from './query-builder/json-path-builder.js';
-export * from './query-builder/merge-query-builder.js';
-export * from './query-builder/merge-result.js';
-export * from './raw-builder/raw-builder.js';
-export * from './raw-builder/sql.js';
-export * from './query-executor/query-executor.js';
-export * from './query-executor/default-query-executor.js';
-export * from './query-executor/noop-query-executor.js';
-export * from './query-executor/query-executor-provider.js';
-export * from './query-compiler/default-query-compiler.js';
-export * from './query-compiler/compiled-query.js';
-export * from './schema/schema.js';
-export * from './schema/create-table-builder.js';
-export * from './schema/create-type-builder.js';
-export * from './schema/drop-table-builder.js';
-export * from './schema/drop-type-builder.js';
-export * from './schema/create-index-builder.js';
-export * from './schema/drop-index-builder.js';
-export * from './schema/create-schema-builder.js';
-export * from './schema/drop-schema-builder.js';
-export * from './schema/column-definition-builder.js';
-export * from './schema/foreign-key-constraint-builder.js';
-export * from './schema/alter-table-builder.js';
-export * from './schema/create-view-builder.js';
-export * from './schema/drop-view-builder.js';
-export * from './schema/alter-column-builder.js';
-export * from './dynamic/dynamic.js';
-export * from './driver/driver.js';
-export * from './driver/database-connection.js';
-export * from './driver/connection-provider.js';
-export * from './driver/default-connection-provider.js';
-export * from './driver/single-connection-provider.js';
-export * from './driver/dummy-driver.js';
-export * from './dialect/dialect.js';
-export * from './dialect/dialect-adapter.js';
-export * from './dialect/dialect-adapter-base.js';
export * from './dialect/database-introspector.js';
-export * from './dialect/sqlite/sqlite-dialect.js';
-export * from './dialect/sqlite/sqlite-dialect-config.js';
-export * from './dialect/sqlite/sqlite-driver.js';
-export * from './dialect/postgres/postgres-query-compiler.js';
-export * from './dialect/postgres/postgres-introspector.js';
-export * from './dialect/postgres/postgres-adapter.js';
-export * from './dialect/mysql/mysql-dialect.js';
-export * from './dialect/mysql/mysql-dialect-config.js';
-export * from './dialect/mysql/mysql-driver.js';
-export * from './dialect/mysql/mysql-query-compiler.js';
-export * from './dialect/mysql/mysql-introspector.js';
-export * from './dialect/mysql/mysql-adapter.js';
-export * from './dialect/postgres/postgres-driver.js';
-export * from './dialect/postgres/postgres-dialect-config.js';
-export * from './dialect/postgres/postgres-dialect.js';
-export * from './dialect/sqlite/sqlite-query-compiler.js';
-export * from './dialect/sqlite/sqlite-introspector.js';
-export * from './dialect/sqlite/sqlite-adapter.js';
+export * from './dialect/dialect-adapter-base.js';
+export * from './dialect/dialect-adapter.js';
+export * from './dialect/dialect.js';
export * from './dialect/mssql/mssql-adapter.js';
export * from './dialect/mssql/mssql-dialect-config.js';
export * from './dialect/mssql/mssql-dialect.js';
export * from './dialect/mssql/mssql-driver.js';
export * from './dialect/mssql/mssql-introspector.js';
export * from './dialect/mssql/mssql-query-compiler.js';
-export * from './query-compiler/default-query-compiler.js';
-export * from './query-compiler/query-compiler.js';
-export * from './migration/migrator.js';
+export * from './dialect/mysql/mysql-adapter.js';
+export * from './dialect/mysql/mysql-dialect-config.js';
+export * from './dialect/mysql/mysql-dialect.js';
+export * from './dialect/mysql/mysql-driver.js';
+export * from './dialect/mysql/mysql-introspector.js';
+export * from './dialect/mysql/mysql-query-compiler.js';
+export * from './dialect/postgres/postgres-adapter.js';
+export * from './dialect/postgres/postgres-dialect-config.js';
+export * from './dialect/postgres/postgres-dialect.js';
+export * from './dialect/postgres/postgres-driver.js';
+export * from './dialect/postgres/postgres-introspector.js';
+export * from './dialect/postgres/postgres-query-compiler.js';
+export * from './dialect/sqlite/sqlite-adapter.js';
+export * from './dialect/sqlite/sqlite-dialect-config.js';
+export * from './dialect/sqlite/sqlite-dialect.js';
+export * from './dialect/sqlite/sqlite-driver.js';
+export * from './dialect/sqlite/sqlite-introspector.js';
+export * from './dialect/sqlite/sqlite-query-compiler.js';
+export * from './driver/connection-provider.js';
+export * from './driver/database-connection.js';
+export * from './driver/default-connection-provider.js';
+export * from './driver/driver.js';
+export * from './driver/dummy-driver.js';
+export * from './driver/runtime-driver.js';
+export * from './driver/single-connection-provider.js';
+export * from './dynamic/dynamic.js';
+export {
+ ExpressionBuilder,
+ expressionBuilder,
+} from './expression/expression-builder.js';
+export * from './expression/expression-wrapper.js';
+export * from './expression/expression.js';
+export * from './kysely.js';
export * from './migration/file-migration-provider.js';
-export * from './plugin/kysely-plugin.js';
-export * from './plugin/camel-case/camel-case-plugin.js';
-export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
-export * from './plugin/with-schema/with-schema-plugin.js';
-export * from './plugin/parse-json-results/parse-json-results-plugin.js';
+export * from './migration/migrator.js';
export * from './operation-node/add-column-node.js';
export * from './operation-node/add-constraint-node.js';
export * from './operation-node/add-index-node.js';
@@ -190,22 +143,117 @@ export * from './operation-node/values-node.js';
export * from './operation-node/when-node.js';
export * from './operation-node/where-node.js';
export * from './operation-node/with-node.js';
+export {
+ ComparisonOperatorExpression,
+ FilterObject,
+ OperandValueExpression,
+ OperandValueExpressionOrList,
+} from './parser/binary-operation-parser.js';
+export {
+ ExpressionOrFactory,
+ OperandExpression,
+} from './parser/expression-parser.js';
+export { InsertObject } from './parser/insert-values-parser.js';
+export {
+ JoinCallbackExpression,
+ JoinReferenceExpression,
+} from './parser/join-parser.js';
+export {
+ OrderByDirectionExpression,
+ OrderByExpression,
+} from './parser/order-by-parser.js';
+export {
+ ExtractTypeFromReferenceExpression,
+ ExtractTypeFromStringReference,
+ ReferenceExpression,
+ ReferenceExpressionOrList,
+ SimpleReferenceExpression,
+ StringReference,
+} from './parser/reference-parser.js';
+export {
+ CallbackSelection,
+ SelectArg,
+ SelectCallback,
+ SelectExpression,
+ Selection,
+} from './parser/select-parser.js';
+export {
+ SimpleTableReference,
+ TableExpression,
+ TableExpressionOrList,
+} from './parser/table-parser.js';
+export { ExistsExpression } from './parser/unary-operation-parser.js';
+export { UpdateObject } from './parser/update-set-parser.js';
+export {
+ ValueExpression,
+ ValueExpressionOrList,
+} from './parser/value-parser.js';
+export * from './plugin/camel-case/camel-case-plugin.js';
+export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
+export * from './plugin/kysely-plugin.js';
+export * from './plugin/parse-json-results/parse-json-results-plugin.js';
+export * from './plugin/with-schema/with-schema-plugin.js';
+export * from './query-builder/aggregate-function-builder.js';
+export * from './query-builder/case-builder.js';
+export * from './query-builder/delete-query-builder.js';
+export * from './query-builder/delete-result.js';
+export * from './query-builder/function-module.js';
+export * from './query-builder/having-interface.js';
+export * from './query-builder/insert-query-builder.js';
+export * from './query-builder/insert-result.js';
+export * from './query-builder/join-builder.js';
+export * from './query-builder/json-path-builder.js';
+export * from './query-builder/merge-query-builder.js';
+export * from './query-builder/merge-result.js';
+export * from './query-builder/no-result-error.js';
+export * from './query-builder/on-conflict-builder.js';
+export * from './query-builder/output-interface.js';
+export * from './query-builder/returning-interface.js';
+export * from './query-builder/select-query-builder.js';
+export * from './query-builder/update-query-builder.js';
+export * from './query-builder/update-result.js';
+export * from './query-builder/where-interface.js';
+export * from './query-compiler/compiled-query.js';
+export * from './query-compiler/default-query-compiler.js';
+export * from './query-compiler/query-compiler.js';
+export * from './query-creator.js';
+export * from './query-executor/default-query-executor.js';
+export * from './query-executor/noop-query-executor.js';
+export * from './query-executor/query-executor-provider.js';
+export * from './query-executor/query-executor.js';
+export * from './raw-builder/raw-builder.js';
+export * from './raw-builder/sql.js';
+export * from './schema/alter-column-builder.js';
+export * from './schema/alter-table-builder.js';
+export * from './schema/column-definition-builder.js';
+export * from './schema/create-index-builder.js';
+export * from './schema/create-schema-builder.js';
+export * from './schema/create-table-builder.js';
+export * from './schema/create-type-builder.js';
+export * from './schema/create-view-builder.js';
+export * from './schema/drop-index-builder.js';
+export * from './schema/drop-schema-builder.js';
+export * from './schema/drop-table-builder.js';
+export * from './schema/drop-type-builder.js';
+export * from './schema/drop-view-builder.js';
+export * from './schema/foreign-key-constraint-builder.js';
+export * from './schema/schema.js';
export * from './util/column-type.js';
export * from './util/compilable.js';
export * from './util/explainable.js';
-export * from './util/streamable.js';
-export * from './util/log.js';
-export { AnyAliasedColumn, AnyAliasedColumnWithTable, AnyColumn, AnyColumnWithTable, Equals, UnknownRow, Simplify, SqlBool, Nullable, NotNull, } from './util/type-utils.js';
export * from './util/infer-result.js';
export { logOnce } from './util/log-once.js';
-export { SelectExpression, SelectCallback, SelectArg, Selection, CallbackSelection, } from './parser/select-parser.js';
-export { ReferenceExpression, ReferenceExpressionOrList, SimpleReferenceExpression, StringReference, ExtractTypeFromStringReference, ExtractTypeFromReferenceExpression, } from './parser/reference-parser.js';
-export { ValueExpression, ValueExpressionOrList, } from './parser/value-parser.js';
-export { SimpleTableReference, TableExpression, TableExpressionOrList, } from './parser/table-parser.js';
-export { JoinReferenceExpression, JoinCallbackExpression, } from './parser/join-parser.js';
-export { InsertObject } from './parser/insert-values-parser.js';
-export { UpdateObject } from './parser/update-set-parser.js';
-export { OrderByExpression, OrderByDirectionExpression, } from './parser/order-by-parser.js';
-export { ComparisonOperatorExpression, OperandValueExpression, OperandValueExpressionOrList, FilterObject, } from './parser/binary-operation-parser.js';
-export { ExistsExpression } from './parser/unary-operation-parser.js';
-export { OperandExpression, ExpressionOrFactory, } from './parser/expression-parser.js';
+export * from './util/log.js';
+export * from './util/streamable.js';
+export {
+ AnyAliasedColumn,
+ AnyAliasedColumnWithTable,
+ AnyColumn,
+ AnyColumnWithTable,
+ Equals,
+ NotNull,
+ Nullable,
+ Simplify,
+ SqlBool,
+ UnknownRow,
+} from './util/type-utils.js';
diff --git a/dist/esm/index.js b/dist/esm/index.js
index c85949e9080a6e78f1aef5561ed050cb6d924b15..6ddadd439b6f5aa4b45749e3297035a7ad0b3496 100644
--- a/dist/esm/index.js
+++ b/dist/esm/index.js
@@ -1,96 +1,46 @@
/// <reference types="./index.d.ts" />
-export * from './kysely.js';
-export * from './query-creator.js';
-export * from './expression/expression.js';
-export { expressionBuilder, } from './expression/expression-builder.js';
-export * from './expression/expression-wrapper.js';
-export * from './query-builder/where-interface.js';
-export * from './query-builder/returning-interface.js';
-export * from './query-builder/output-interface.js';
-export * from './query-builder/having-interface.js';
-export * from './query-builder/select-query-builder.js';
-export * from './query-builder/insert-query-builder.js';
-export * from './query-builder/update-query-builder.js';
-export * from './query-builder/delete-query-builder.js';
-export * from './query-builder/no-result-error.js';
-export * from './query-builder/join-builder.js';
-export * from './query-builder/function-module.js';
-export * from './query-builder/insert-result.js';
-export * from './query-builder/delete-result.js';
-export * from './query-builder/update-result.js';
-export * from './query-builder/on-conflict-builder.js';
-export * from './query-builder/aggregate-function-builder.js';
-export * from './query-builder/case-builder.js';
-export * from './query-builder/json-path-builder.js';
-export * from './query-builder/merge-query-builder.js';
-export * from './query-builder/merge-result.js';
-export * from './raw-builder/raw-builder.js';
-export * from './raw-builder/sql.js';
-export * from './query-executor/query-executor.js';
-export * from './query-executor/default-query-executor.js';
-export * from './query-executor/noop-query-executor.js';
-export * from './query-executor/query-executor-provider.js';
-export * from './query-compiler/default-query-compiler.js';
-export * from './query-compiler/compiled-query.js';
-export * from './schema/schema.js';
-export * from './schema/create-table-builder.js';
-export * from './schema/create-type-builder.js';
-export * from './schema/drop-table-builder.js';
-export * from './schema/drop-type-builder.js';
-export * from './schema/create-index-builder.js';
-export * from './schema/drop-index-builder.js';
-export * from './schema/create-schema-builder.js';
-export * from './schema/drop-schema-builder.js';
-export * from './schema/column-definition-builder.js';
-export * from './schema/foreign-key-constraint-builder.js';
-export * from './schema/alter-table-builder.js';
-export * from './schema/create-view-builder.js';
-export * from './schema/drop-view-builder.js';
-export * from './schema/alter-column-builder.js';
-export * from './dynamic/dynamic.js';
-export * from './driver/driver.js';
-export * from './driver/database-connection.js';
-export * from './driver/connection-provider.js';
-export * from './driver/default-connection-provider.js';
-export * from './driver/single-connection-provider.js';
-export * from './driver/dummy-driver.js';
-export * from './dialect/dialect.js';
-export * from './dialect/dialect-adapter.js';
-export * from './dialect/dialect-adapter-base.js';
export * from './dialect/database-introspector.js';
-export * from './dialect/sqlite/sqlite-dialect.js';
-export * from './dialect/sqlite/sqlite-dialect-config.js';
-export * from './dialect/sqlite/sqlite-driver.js';
-export * from './dialect/postgres/postgres-query-compiler.js';
-export * from './dialect/postgres/postgres-introspector.js';
-export * from './dialect/postgres/postgres-adapter.js';
-export * from './dialect/mysql/mysql-dialect.js';
-export * from './dialect/mysql/mysql-dialect-config.js';
-export * from './dialect/mysql/mysql-driver.js';
-export * from './dialect/mysql/mysql-query-compiler.js';
-export * from './dialect/mysql/mysql-introspector.js';
-export * from './dialect/mysql/mysql-adapter.js';
-export * from './dialect/postgres/postgres-driver.js';
-export * from './dialect/postgres/postgres-dialect-config.js';
-export * from './dialect/postgres/postgres-dialect.js';
-export * from './dialect/sqlite/sqlite-query-compiler.js';
-export * from './dialect/sqlite/sqlite-introspector.js';
-export * from './dialect/sqlite/sqlite-adapter.js';
+export * from './dialect/dialect-adapter-base.js';
+export * from './dialect/dialect-adapter.js';
+export * from './dialect/dialect.js';
export * from './dialect/mssql/mssql-adapter.js';
export * from './dialect/mssql/mssql-dialect-config.js';
export * from './dialect/mssql/mssql-dialect.js';
export * from './dialect/mssql/mssql-driver.js';
export * from './dialect/mssql/mssql-introspector.js';
export * from './dialect/mssql/mssql-query-compiler.js';
-export * from './query-compiler/default-query-compiler.js';
-export * from './query-compiler/query-compiler.js';
-export * from './migration/migrator.js';
+export * from './dialect/mysql/mysql-adapter.js';
+export * from './dialect/mysql/mysql-dialect-config.js';
+export * from './dialect/mysql/mysql-dialect.js';
+export * from './dialect/mysql/mysql-driver.js';
+export * from './dialect/mysql/mysql-introspector.js';
+export * from './dialect/mysql/mysql-query-compiler.js';
+export * from './dialect/postgres/postgres-adapter.js';
+export * from './dialect/postgres/postgres-dialect-config.js';
+export * from './dialect/postgres/postgres-dialect.js';
+export * from './dialect/postgres/postgres-driver.js';
+export * from './dialect/postgres/postgres-introspector.js';
+export * from './dialect/postgres/postgres-query-compiler.js';
+export * from './dialect/sqlite/sqlite-adapter.js';
+export * from './dialect/sqlite/sqlite-dialect-config.js';
+export * from './dialect/sqlite/sqlite-dialect.js';
+export * from './dialect/sqlite/sqlite-driver.js';
+export * from './dialect/sqlite/sqlite-introspector.js';
+export * from './dialect/sqlite/sqlite-query-compiler.js';
+export * from './driver/connection-provider.js';
+export * from './driver/database-connection.js';
+export * from './driver/default-connection-provider.js';
+export * from './driver/driver.js';
+export * from './driver/dummy-driver.js';
+export * from './driver/runtime-driver.js';
+export * from './driver/single-connection-provider.js';
+export * from './dynamic/dynamic.js';
+export { expressionBuilder } from './expression/expression-builder.js';
+export * from './expression/expression-wrapper.js';
+export * from './expression/expression.js';
+export * from './kysely.js';
export * from './migration/file-migration-provider.js';
-export * from './plugin/kysely-plugin.js';
-export * from './plugin/camel-case/camel-case-plugin.js';
-export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
-export * from './plugin/with-schema/with-schema-plugin.js';
-export * from './plugin/parse-json-results/parse-json-results-plugin.js';
+export * from './migration/migrator.js';
export * from './operation-node/add-column-node.js';
export * from './operation-node/add-constraint-node.js';
export * from './operation-node/add-index-node.js';
@@ -191,10 +141,60 @@ export * from './operation-node/values-node.js';
export * from './operation-node/when-node.js';
export * from './operation-node/where-node.js';
export * from './operation-node/with-node.js';
+export * from './plugin/camel-case/camel-case-plugin.js';
+export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
+export * from './plugin/kysely-plugin.js';
+export * from './plugin/parse-json-results/parse-json-results-plugin.js';
+export * from './plugin/with-schema/with-schema-plugin.js';
+export * from './query-builder/aggregate-function-builder.js';
+export * from './query-builder/case-builder.js';
+export * from './query-builder/delete-query-builder.js';
+export * from './query-builder/delete-result.js';
+export * from './query-builder/function-module.js';
+export * from './query-builder/having-interface.js';
+export * from './query-builder/insert-query-builder.js';
+export * from './query-builder/insert-result.js';
+export * from './query-builder/join-builder.js';
+export * from './query-builder/json-path-builder.js';
+export * from './query-builder/merge-query-builder.js';
+export * from './query-builder/merge-result.js';
+export * from './query-builder/no-result-error.js';
+export * from './query-builder/on-conflict-builder.js';
+export * from './query-builder/output-interface.js';
+export * from './query-builder/returning-interface.js';
+export * from './query-builder/select-query-builder.js';
+export * from './query-builder/update-query-builder.js';
+export * from './query-builder/update-result.js';
+export * from './query-builder/where-interface.js';
+export * from './query-compiler/compiled-query.js';
+export * from './query-compiler/default-query-compiler.js';
+export * from './query-compiler/query-compiler.js';
+export * from './query-creator.js';
+export * from './query-executor/default-query-executor.js';
+export * from './query-executor/noop-query-executor.js';
+export * from './query-executor/query-executor-provider.js';
+export * from './query-executor/query-executor.js';
+export * from './raw-builder/raw-builder.js';
+export * from './raw-builder/sql.js';
+export * from './schema/alter-column-builder.js';
+export * from './schema/alter-table-builder.js';
+export * from './schema/column-definition-builder.js';
+export * from './schema/create-index-builder.js';
+export * from './schema/create-schema-builder.js';
+export * from './schema/create-table-builder.js';
+export * from './schema/create-type-builder.js';
+export * from './schema/create-view-builder.js';
+export * from './schema/drop-index-builder.js';
+export * from './schema/drop-schema-builder.js';
+export * from './schema/drop-table-builder.js';
+export * from './schema/drop-type-builder.js';
+export * from './schema/drop-view-builder.js';
+export * from './schema/foreign-key-constraint-builder.js';
+export * from './schema/schema.js';
export * from './util/column-type.js';
export * from './util/compilable.js';
export * from './util/explainable.js';
-export * from './util/streamable.js';
-export * from './util/log.js';
export * from './util/infer-result.js';
export { logOnce } from './util/log-once.js';
+export * from './util/log.js';
+export * from './util/streamable.js';