├── .dialyzer_ignore.exs ├── .formatter.exs ├── .github ├── FUNDING.yml └── workflows │ └── ci.yml ├── .gitignore ├── CHANGELOG.md ├── Dockerfile ├── LICENSE ├── README.md ├── _docs └── introduction.md ├── assets ├── favicon.png └── logo.png ├── bin └── setup ├── config ├── config.exs └── runtime.exs ├── docker-compose.yml ├── examples ├── queries.exs ├── reading.exs ├── views.exs └── writing.exs ├── lib ├── drops │ ├── relation.ex │ ├── relation │ │ ├── application.ex │ │ ├── cache.ex │ │ ├── compilation.ex │ │ ├── compilers │ │ │ ├── code_compiler.ex │ │ │ ├── ecto_compiler.ex │ │ │ ├── postgres_schema_compiler.ex │ │ │ ├── schema_compiler.ex │ │ │ └── sqlite_schema_compiler.ex │ │ ├── config.ex │ │ ├── generator.ex │ │ ├── inflector.ex │ │ ├── loadable.ex │ │ ├── loaded.ex │ │ ├── operations │ │ │ ├── and.ex │ │ │ └── or.ex │ │ ├── plugin.ex │ │ ├── plugins │ │ │ ├── auto_restrict.ex │ │ │ ├── ecto │ │ │ │ └── query.ex │ │ │ ├── loadable.ex │ │ │ ├── pagination.ex │ │ │ ├── query │ │ │ │ └── schema_compiler.ex │ │ │ ├── queryable.ex │ │ │ ├── queryable │ │ │ │ ├── invalid_query_error.ex │ │ │ │ └── operations │ │ │ │ │ ├── compiler.ex │ │ │ │ │ ├── order │ │ │ │ │ └── compiler.ex │ │ │ │ │ ├── preload │ │ │ │ │ └── compiler.ex │ │ │ │ │ └── restrict │ │ │ │ │ └── compiler.ex │ │ │ ├── reading.ex │ │ │ ├── schema.ex │ │ │ ├── views.ex │ │ │ └── writing.ex │ │ ├── query.ex │ │ ├── schema.ex │ │ └── schema │ │ │ ├── field.ex │ │ │ ├── foreign_key.ex │ │ │ ├── index.ex │ │ │ ├── patcher.ex │ │ │ ├── primary_key.ex │ │ │ └── serializable.ex │ └── sql │ │ ├── compiler.ex │ │ ├── compilers │ │ ├── postgres.ex │ │ └── sqlite.ex │ │ ├── database.ex │ │ ├── database │ │ ├── column.ex │ │ ├── foreign_key.ex │ │ ├── index.ex │ │ ├── primary_key.ex │ │ └── table.ex │ │ ├── postgres.ex │ │ └── sqlite.ex └── mix │ └── tasks │ ├── dev │ ├── test.cov.update_tasks.ex │ ├── test.example.ex │ └── test.setup.ex │ ├── drops.relation.gen_schemas.ex │ ├── drops.relation.install.ex │ └── drops.relation.refresh_cache.ex ├── mix.exs ├── mix.lock ├── priv └── repo │ ├── migrations │ └── 20250712114838_common_types.exs │ ├── postgres │ └── migrations │ │ ├── 20240101000001_create_users_table.exs │ │ ├── 20240101000002_create_groups_table.exs │ │ ├── 20240101000003_create_user_groups_table.exs │ │ ├── 20240101000004_create_associations_tables.exs │ │ ├── 20240101000005_create_basic_types_table.exs │ │ ├── 20240101000006_create_special_pk_tables.exs │ │ ├── 20240101000007_create_timestamps_table.exs │ │ ├── 20240101000008_create_posts_table.exs │ │ ├── 20240101000009_create_comprehensive_types_tables.exs │ │ ├── 20240101000010_create_metadata_test_table.exs │ │ ├── 20240101000011_create_binary_id_tables.exs │ │ ├── 20240101000012_create_uuid_tables.exs │ │ ├── 20250712114838_common_types.exs │ │ └── 20250712114839_custom_types.exs │ └── sqlite │ └── migrations │ ├── 20240101000001_create_users_table.exs │ ├── 20240101000002_create_groups_table.exs │ ├── 20240101000003_create_user_groups_table.exs │ ├── 20240101000004_create_associations_tables.exs │ ├── 20240101000005_create_basic_types_table.exs │ ├── 20240101000006_create_special_pk_tables.exs │ ├── 20240101000007_create_timestamps_table.exs │ ├── 20240101000008_create_posts_table.exs │ ├── 20240101000009_create_comprehensive_types_tables.exs │ ├── 20240101000010_create_metadata_test_table.exs │ ├── 20240101000011_create_binary_id_tables.exs │ ├── 20240101000012_create_uuid_tables.exs │ ├── 20240101000013_recreate_uuid_tables_with_correct_type.exs │ ├── 20250712114838_common_types.exs │ └── 20250712114840_custom_types.exs ├── test ├── cov-todo.md ├── drops │ ├── relation │ │ ├── associations_test.exs │ │ ├── behavioral_test.exs │ │ ├── cache_test.exs │ │ ├── compilers │ │ │ ├── postgres_schema_compiler_test.exs │ │ │ └── sqlite_schema_compiler_test.exs │ │ ├── generator_test.exs │ │ ├── load_cache_test.exs │ │ ├── loadable_metadata_test.exs │ │ ├── metadata_test.exs │ │ ├── plugins │ │ │ ├── auto_restrict_test.exs │ │ │ ├── ecto │ │ │ │ └── query_test.exs │ │ │ ├── pagination_test.exs │ │ │ ├── queryable │ │ │ │ └── operations │ │ │ │ │ └── order_test.exs │ │ │ ├── reading_test.exs │ │ │ ├── schema_test.exs │ │ │ ├── views_test.exs │ │ │ └── writing_test.exs │ │ ├── query │ │ │ └── composition_test.exs │ │ ├── query_test.exs │ │ ├── schema │ │ │ ├── code_compiler_test.exs │ │ │ ├── generator_test.exs │ │ │ └── patcher_test.exs │ │ ├── schema_test.exs │ │ ├── uuid_dynamic_relation_test.exs │ │ └── view_test.exs │ ├── relation_test.exs │ └── sql │ │ ├── database │ │ ├── postgres │ │ │ └── types_test.exs │ │ ├── sqlite │ │ │ └── types_test.exs │ │ └── table_test.exs │ │ └── introspector │ │ └── database │ │ ├── postgres_test.exs │ │ └── sqlite_test.exs ├── mix │ └── tasks │ │ ├── drops_relation_gen_schemas_test.exs │ │ ├── drops_relation_install_test.exs │ │ └── drops_relation_refresh_cache_test.exs ├── support │ ├── doctest │ │ └── my_app.ex │ ├── doctest_case.ex │ ├── fixtures.ex │ ├── integration_case.ex │ ├── relation_case.ex │ ├── repos.ex │ └── test.ex └── test_helper.exs └── test_integration └── apps ├── pristine ├── .formatter.exs ├── mix.exs └── mix.lock └── sample ├── .formatter.exs ├── config ├── config.exs ├── dev.exs └── runtime.exs ├── lib ├── sample.ex ├── sample │ └── repo.ex └── users.ex ├── mix.exs ├── mix.lock ├── priv ├── postgres │ └── migrations │ │ ├── 20240101000001_create_users.exs │ │ ├── 20240101000002_create_posts.exs │ │ └── 20240101000003_create_comments.exs └── sqlite │ └── migrations │ ├── 20240101000001_create_users.exs │ ├── 20240101000002_create_posts.exs │ └── 20240101000003_create_comments.exs └── test └── test_helper.exs /.dialyzer_ignore.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/.dialyzer_ignore.exs -------------------------------------------------------------------------------- /.formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/.formatter.exs -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: solnic 2 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## 2025-07-30 - 0.1.0 2 | 3 | Initial public release! 🎉 4 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/README.md -------------------------------------------------------------------------------- /_docs/introduction.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/_docs/introduction.md -------------------------------------------------------------------------------- /assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/assets/favicon.png -------------------------------------------------------------------------------- /assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/assets/logo.png -------------------------------------------------------------------------------- /bin/setup: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/bin/setup -------------------------------------------------------------------------------- /config/config.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/config/config.exs -------------------------------------------------------------------------------- /config/runtime.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/config/runtime.exs -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /examples/queries.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/examples/queries.exs -------------------------------------------------------------------------------- /examples/reading.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/examples/reading.exs -------------------------------------------------------------------------------- /examples/views.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/examples/views.exs -------------------------------------------------------------------------------- /examples/writing.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/examples/writing.exs -------------------------------------------------------------------------------- /lib/drops/relation.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation.ex -------------------------------------------------------------------------------- /lib/drops/relation/application.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/application.ex -------------------------------------------------------------------------------- /lib/drops/relation/cache.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/cache.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilation.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilation.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilers/code_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilers/code_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilers/ecto_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilers/ecto_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilers/postgres_schema_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilers/postgres_schema_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilers/schema_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilers/schema_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/compilers/sqlite_schema_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/compilers/sqlite_schema_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/config.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/config.ex -------------------------------------------------------------------------------- /lib/drops/relation/generator.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/generator.ex -------------------------------------------------------------------------------- /lib/drops/relation/inflector.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/inflector.ex -------------------------------------------------------------------------------- /lib/drops/relation/loadable.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/loadable.ex -------------------------------------------------------------------------------- /lib/drops/relation/loaded.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/loaded.ex -------------------------------------------------------------------------------- /lib/drops/relation/operations/and.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/operations/and.ex -------------------------------------------------------------------------------- /lib/drops/relation/operations/or.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/operations/or.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugin.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugin.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/auto_restrict.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/auto_restrict.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/ecto/query.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/ecto/query.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/loadable.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/loadable.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/pagination.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/pagination.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/query/schema_compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/query/schema_compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable/invalid_query_error.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable/invalid_query_error.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable/operations/compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable/operations/compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable/operations/order/compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable/operations/order/compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable/operations/preload/compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable/operations/preload/compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/queryable/operations/restrict/compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/queryable/operations/restrict/compiler.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/reading.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/reading.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/schema.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/schema.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/views.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/views.ex -------------------------------------------------------------------------------- /lib/drops/relation/plugins/writing.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/plugins/writing.ex -------------------------------------------------------------------------------- /lib/drops/relation/query.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/query.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/field.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/field.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/foreign_key.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/foreign_key.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/index.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/index.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/patcher.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/patcher.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/primary_key.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/primary_key.ex -------------------------------------------------------------------------------- /lib/drops/relation/schema/serializable.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/relation/schema/serializable.ex -------------------------------------------------------------------------------- /lib/drops/sql/compiler.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/compiler.ex -------------------------------------------------------------------------------- /lib/drops/sql/compilers/postgres.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/compilers/postgres.ex -------------------------------------------------------------------------------- /lib/drops/sql/compilers/sqlite.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/compilers/sqlite.ex -------------------------------------------------------------------------------- /lib/drops/sql/database.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database.ex -------------------------------------------------------------------------------- /lib/drops/sql/database/column.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database/column.ex -------------------------------------------------------------------------------- /lib/drops/sql/database/foreign_key.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database/foreign_key.ex -------------------------------------------------------------------------------- /lib/drops/sql/database/index.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database/index.ex -------------------------------------------------------------------------------- /lib/drops/sql/database/primary_key.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database/primary_key.ex -------------------------------------------------------------------------------- /lib/drops/sql/database/table.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/database/table.ex -------------------------------------------------------------------------------- /lib/drops/sql/postgres.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/postgres.ex -------------------------------------------------------------------------------- /lib/drops/sql/sqlite.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/drops/sql/sqlite.ex -------------------------------------------------------------------------------- /lib/mix/tasks/dev/test.cov.update_tasks.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/dev/test.cov.update_tasks.ex -------------------------------------------------------------------------------- /lib/mix/tasks/dev/test.example.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/dev/test.example.ex -------------------------------------------------------------------------------- /lib/mix/tasks/dev/test.setup.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/dev/test.setup.ex -------------------------------------------------------------------------------- /lib/mix/tasks/drops.relation.gen_schemas.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/drops.relation.gen_schemas.ex -------------------------------------------------------------------------------- /lib/mix/tasks/drops.relation.install.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/drops.relation.install.ex -------------------------------------------------------------------------------- /lib/mix/tasks/drops.relation.refresh_cache.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/lib/mix/tasks/drops.relation.refresh_cache.ex -------------------------------------------------------------------------------- /mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/mix.exs -------------------------------------------------------------------------------- /mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/mix.lock -------------------------------------------------------------------------------- /priv/repo/migrations/20250712114838_common_types.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/migrations/20250712114838_common_types.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000001_create_users_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000001_create_users_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000002_create_groups_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000002_create_groups_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000003_create_user_groups_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000003_create_user_groups_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000004_create_associations_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000004_create_associations_tables.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000005_create_basic_types_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000005_create_basic_types_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000006_create_special_pk_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000006_create_special_pk_tables.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000007_create_timestamps_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000007_create_timestamps_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000008_create_posts_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000008_create_posts_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000009_create_comprehensive_types_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000009_create_comprehensive_types_tables.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000010_create_metadata_test_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000010_create_metadata_test_table.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000011_create_binary_id_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000011_create_binary_id_tables.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20240101000012_create_uuid_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20240101000012_create_uuid_tables.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20250712114838_common_types.exs: -------------------------------------------------------------------------------- 1 | ../../migrations/20250712114838_common_types.exs -------------------------------------------------------------------------------- /priv/repo/postgres/migrations/20250712114839_custom_types.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/postgres/migrations/20250712114839_custom_types.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000001_create_users_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000001_create_users_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000002_create_groups_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000002_create_groups_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000003_create_user_groups_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000003_create_user_groups_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000004_create_associations_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000004_create_associations_tables.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000005_create_basic_types_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000005_create_basic_types_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000006_create_special_pk_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000006_create_special_pk_tables.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000007_create_timestamps_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000007_create_timestamps_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000008_create_posts_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000008_create_posts_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000009_create_comprehensive_types_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000009_create_comprehensive_types_tables.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000010_create_metadata_test_table.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000010_create_metadata_test_table.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000011_create_binary_id_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000011_create_binary_id_tables.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000012_create_uuid_tables.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000012_create_uuid_tables.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20240101000013_recreate_uuid_tables_with_correct_type.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20240101000013_recreate_uuid_tables_with_correct_type.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20250712114838_common_types.exs: -------------------------------------------------------------------------------- 1 | ../../migrations/20250712114838_common_types.exs -------------------------------------------------------------------------------- /priv/repo/sqlite/migrations/20250712114840_custom_types.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/priv/repo/sqlite/migrations/20250712114840_custom_types.exs -------------------------------------------------------------------------------- /test/cov-todo.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/cov-todo.md -------------------------------------------------------------------------------- /test/drops/relation/associations_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/associations_test.exs -------------------------------------------------------------------------------- /test/drops/relation/behavioral_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/behavioral_test.exs -------------------------------------------------------------------------------- /test/drops/relation/cache_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/cache_test.exs -------------------------------------------------------------------------------- /test/drops/relation/compilers/postgres_schema_compiler_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/compilers/postgres_schema_compiler_test.exs -------------------------------------------------------------------------------- /test/drops/relation/compilers/sqlite_schema_compiler_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/compilers/sqlite_schema_compiler_test.exs -------------------------------------------------------------------------------- /test/drops/relation/generator_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/generator_test.exs -------------------------------------------------------------------------------- /test/drops/relation/load_cache_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/load_cache_test.exs -------------------------------------------------------------------------------- /test/drops/relation/loadable_metadata_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/loadable_metadata_test.exs -------------------------------------------------------------------------------- /test/drops/relation/metadata_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/metadata_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/auto_restrict_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/auto_restrict_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/ecto/query_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/ecto/query_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/pagination_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/pagination_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/queryable/operations/order_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/queryable/operations/order_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/reading_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/reading_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/schema_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/schema_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/views_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/views_test.exs -------------------------------------------------------------------------------- /test/drops/relation/plugins/writing_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/plugins/writing_test.exs -------------------------------------------------------------------------------- /test/drops/relation/query/composition_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/query/composition_test.exs -------------------------------------------------------------------------------- /test/drops/relation/query_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/query_test.exs -------------------------------------------------------------------------------- /test/drops/relation/schema/code_compiler_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/schema/code_compiler_test.exs -------------------------------------------------------------------------------- /test/drops/relation/schema/generator_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/schema/generator_test.exs -------------------------------------------------------------------------------- /test/drops/relation/schema/patcher_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/schema/patcher_test.exs -------------------------------------------------------------------------------- /test/drops/relation/schema_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/schema_test.exs -------------------------------------------------------------------------------- /test/drops/relation/uuid_dynamic_relation_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/uuid_dynamic_relation_test.exs -------------------------------------------------------------------------------- /test/drops/relation/view_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation/view_test.exs -------------------------------------------------------------------------------- /test/drops/relation_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/relation_test.exs -------------------------------------------------------------------------------- /test/drops/sql/database/postgres/types_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/sql/database/postgres/types_test.exs -------------------------------------------------------------------------------- /test/drops/sql/database/sqlite/types_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/sql/database/sqlite/types_test.exs -------------------------------------------------------------------------------- /test/drops/sql/database/table_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/sql/database/table_test.exs -------------------------------------------------------------------------------- /test/drops/sql/introspector/database/postgres_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/sql/introspector/database/postgres_test.exs -------------------------------------------------------------------------------- /test/drops/sql/introspector/database/sqlite_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/drops/sql/introspector/database/sqlite_test.exs -------------------------------------------------------------------------------- /test/mix/tasks/drops_relation_gen_schemas_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/mix/tasks/drops_relation_gen_schemas_test.exs -------------------------------------------------------------------------------- /test/mix/tasks/drops_relation_install_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/mix/tasks/drops_relation_install_test.exs -------------------------------------------------------------------------------- /test/mix/tasks/drops_relation_refresh_cache_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/mix/tasks/drops_relation_refresh_cache_test.exs -------------------------------------------------------------------------------- /test/support/doctest/my_app.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/doctest/my_app.ex -------------------------------------------------------------------------------- /test/support/doctest_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/doctest_case.ex -------------------------------------------------------------------------------- /test/support/fixtures.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/fixtures.ex -------------------------------------------------------------------------------- /test/support/integration_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/integration_case.ex -------------------------------------------------------------------------------- /test/support/relation_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/relation_case.ex -------------------------------------------------------------------------------- /test/support/repos.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/repos.ex -------------------------------------------------------------------------------- /test/support/test.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/support/test.ex -------------------------------------------------------------------------------- /test/test_helper.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test/test_helper.exs -------------------------------------------------------------------------------- /test_integration/apps/pristine/.formatter.exs: -------------------------------------------------------------------------------- 1 | [ 2 | inputs: ["{mix,.formatter}.exs", "{config,lib,test}/**/*.{ex,exs}"] 3 | ] 4 | -------------------------------------------------------------------------------- /test_integration/apps/pristine/mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/pristine/mix.exs -------------------------------------------------------------------------------- /test_integration/apps/pristine/mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/pristine/mix.lock -------------------------------------------------------------------------------- /test_integration/apps/sample/.formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/.formatter.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/config/config.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/config/config.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/config/dev.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/config/dev.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/config/runtime.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/config/runtime.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/lib/sample.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/lib/sample.ex -------------------------------------------------------------------------------- /test_integration/apps/sample/lib/sample/repo.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/lib/sample/repo.ex -------------------------------------------------------------------------------- /test_integration/apps/sample/lib/users.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/lib/users.ex -------------------------------------------------------------------------------- /test_integration/apps/sample/mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/mix.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/mix.lock -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/postgres/migrations/20240101000001_create_users.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/postgres/migrations/20240101000001_create_users.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/postgres/migrations/20240101000002_create_posts.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/postgres/migrations/20240101000002_create_posts.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/postgres/migrations/20240101000003_create_comments.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/postgres/migrations/20240101000003_create_comments.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/sqlite/migrations/20240101000001_create_users.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/sqlite/migrations/20240101000001_create_users.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/sqlite/migrations/20240101000002_create_posts.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/sqlite/migrations/20240101000002_create_posts.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/priv/sqlite/migrations/20240101000003_create_comments.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/priv/sqlite/migrations/20240101000003_create_comments.exs -------------------------------------------------------------------------------- /test_integration/apps/sample/test/test_helper.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/solnic/drops_relation/HEAD/test_integration/apps/sample/test/test_helper.exs --------------------------------------------------------------------------------