masonite-orm 2.22.1__tar.gz → 2.22.2__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.
Files changed (225) hide show
  1. masonite-orm-2.22.2/PKG-INFO +54 -0
  2. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/setup.py +1 -1
  3. masonite-orm-2.22.2/src/masonite_orm.egg-info/PKG-INFO +54 -0
  4. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masonite_orm.egg-info/SOURCES.txt +1 -102
  5. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masonite_orm.egg-info/entry_points.txt +1 -0
  6. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/BaseConnection.py +0 -1
  7. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/QueryBuilder.py +2 -2
  8. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/MySQLPlatform.py +7 -2
  9. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/PostgresPlatform.py +15 -3
  10. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/SQLitePlatform.py +12 -1
  11. masonite_orm-2.22.1/.deepsource.toml +0 -15
  12. masonite_orm-2.22.1/.env-example +0 -16
  13. masonite_orm-2.22.1/.github/ISSUE_TEMPLATE/bug_report.md +0 -35
  14. masonite_orm-2.22.1/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
  15. masonite_orm-2.22.1/.github/workflows/pythonapp.yml +0 -73
  16. masonite_orm-2.22.1/.github/workflows/pythonpublish.yml +0 -80
  17. masonite_orm-2.22.1/.gitignore +0 -21
  18. masonite_orm-2.22.1/.pypirc +0 -8
  19. masonite_orm-2.22.1/CONTRIBUTING.md +0 -66
  20. masonite_orm-2.22.1/LICENSE +0 -21
  21. masonite_orm-2.22.1/PKG-INFO +0 -60
  22. masonite_orm-2.22.1/TODO.md +0 -10
  23. masonite_orm-2.22.1/app/observers/UserObserver.py +0 -101
  24. masonite_orm-2.22.1/cc.py +0 -37
  25. masonite_orm-2.22.1/conda/conda_build_config.yaml +0 -5
  26. masonite_orm-2.22.1/conda/meta.yaml +0 -28
  27. masonite_orm-2.22.1/databases/migrations/2018_01_09_043202_create_users_table.py +0 -28
  28. masonite_orm-2.22.1/databases/migrations/2020_04_17_000000_create_friends_table.py +0 -19
  29. masonite_orm-2.22.1/databases/migrations/2020_04_17_00000_create_articles_table.py +0 -18
  30. masonite_orm-2.22.1/databases/migrations/2020_10_20_152904_create_table_schema_migration.py +0 -21
  31. masonite_orm-2.22.1/databases/migrations/__init__.py +0 -3
  32. masonite_orm-2.22.1/databases/seeds/database_seeder.py +0 -10
  33. masonite_orm-2.22.1/databases/seeds/user_table_seeder.py +0 -16
  34. masonite_orm-2.22.1/makefile +0 -43
  35. masonite_orm-2.22.1/orm +0 -41
  36. masonite_orm-2.22.1/orm.sqlite3 +0 -0
  37. masonite_orm-2.22.1/requirements.txt +0 -6
  38. masonite_orm-2.22.1/src/masonite_orm.egg-info/PKG-INFO +0 -60
  39. masonite_orm-2.22.1/src/masoniteorm/.gitignore +0 -0
  40. masonite_orm-2.22.1/src/masoniteorm/connections/.gitignore +0 -0
  41. masonite_orm-2.22.1/src/masoniteorm/models/Model.pyi +0 -748
  42. masonite_orm-2.22.1/src/masoniteorm/stubs/create-migration.html +0 -13
  43. masonite_orm-2.22.1/src/masoniteorm/stubs/table-migration.html +0 -0
  44. masonite_orm-2.22.1/tests/User.py +0 -17
  45. masonite_orm-2.22.1/tests/collection/test_collection.py +0 -680
  46. masonite_orm-2.22.1/tests/commands/test_shell.py +0 -89
  47. masonite_orm-2.22.1/tests/config/test_db_url.py +0 -125
  48. masonite_orm-2.22.1/tests/connections/test_base_connections.py +0 -28
  49. masonite_orm-2.22.1/tests/eagers/test_eager.py +0 -70
  50. masonite_orm-2.22.1/tests/factories/test_factories.py +0 -68
  51. masonite_orm-2.22.1/tests/integrations/config/__init__.py +0 -0
  52. masonite_orm-2.22.1/tests/integrations/config/database.py +0 -142
  53. masonite_orm-2.22.1/tests/models/test_models.py +0 -255
  54. masonite_orm-2.22.1/tests/mssql/builder/test_mssql_query_builder.py +0 -440
  55. masonite_orm-2.22.1/tests/mssql/builder/test_mssql_query_builder_relationships.py +0 -132
  56. masonite_orm-2.22.1/tests/mssql/grammar/test_mssql_delete_grammar.py +0 -29
  57. masonite_orm-2.22.1/tests/mssql/grammar/test_mssql_insert_grammar.py +0 -37
  58. masonite_orm-2.22.1/tests/mssql/grammar/test_mssql_qmark.py +0 -42
  59. masonite_orm-2.22.1/tests/mssql/grammar/test_mssql_select_grammar.py +0 -488
  60. masonite_orm-2.22.1/tests/mssql/grammar/test_mssql_update_grammar.py +0 -35
  61. masonite_orm-2.22.1/tests/mssql/schema/test_mssql_schema_builder.py +0 -302
  62. masonite_orm-2.22.1/tests/mssql/schema/test_mssql_schema_builder_alter.py +0 -270
  63. masonite_orm-2.22.1/tests/mysql/builder/test_mysql_builder_transaction.py +0 -44
  64. masonite_orm-2.22.1/tests/mysql/builder/test_query_builder.py +0 -938
  65. masonite_orm-2.22.1/tests/mysql/builder/test_query_builder_scopes.py +0 -69
  66. masonite_orm-2.22.1/tests/mysql/builder/test_transactions.py +0 -36
  67. masonite_orm-2.22.1/tests/mysql/connections/test_mysql_connection_selects.py +0 -46
  68. masonite_orm-2.22.1/tests/mysql/grammar/test_mysql_delete_grammar.py +0 -79
  69. masonite_orm-2.22.1/tests/mysql/grammar/test_mysql_insert_grammar.py +0 -103
  70. masonite_orm-2.22.1/tests/mysql/grammar/test_mysql_qmark.py +0 -167
  71. masonite_orm-2.22.1/tests/mysql/grammar/test_mysql_select_grammar.py +0 -478
  72. masonite_orm-2.22.1/tests/mysql/grammar/test_mysql_update_grammar.py +0 -115
  73. masonite_orm-2.22.1/tests/mysql/model/test_accessors_and_mutators.py +0 -45
  74. masonite_orm-2.22.1/tests/mysql/model/test_model.py +0 -343
  75. masonite_orm-2.22.1/tests/mysql/relationships/test_belongs_to_many.py +0 -174
  76. masonite_orm-2.22.1/tests/mysql/relationships/test_has_many_through.py +0 -98
  77. masonite_orm-2.22.1/tests/mysql/relationships/test_has_one_through.py +0 -98
  78. masonite_orm-2.22.1/tests/mysql/relationships/test_relationships.py +0 -185
  79. masonite_orm-2.22.1/tests/mysql/schema/test_mysql_schema_builder.py +0 -386
  80. masonite_orm-2.22.1/tests/mysql/schema/test_mysql_schema_builder_alter.py +0 -296
  81. masonite_orm-2.22.1/tests/mysql/scopes/test_can_use_global_scopes.py +0 -42
  82. masonite_orm-2.22.1/tests/mysql/scopes/test_can_use_scopes.py +0 -40
  83. masonite_orm-2.22.1/tests/mysql/scopes/test_soft_delete.py +0 -77
  84. masonite_orm-2.22.1/tests/postgres/builder/test_postgres_query_builder.py +0 -800
  85. masonite_orm-2.22.1/tests/postgres/builder/test_postgres_transaction.py +0 -41
  86. masonite_orm-2.22.1/tests/postgres/grammar/test_delete_grammar.py +0 -77
  87. masonite_orm-2.22.1/tests/postgres/grammar/test_insert_grammar.py +0 -82
  88. masonite_orm-2.22.1/tests/postgres/grammar/test_select_grammar.py +0 -493
  89. masonite_orm-2.22.1/tests/postgres/grammar/test_update_grammar.py +0 -126
  90. masonite_orm-2.22.1/tests/postgres/relationships/test_postgres_relationships.py +0 -131
  91. masonite_orm-2.22.1/tests/postgres/schema/test_postgres_schema_builder.py +0 -370
  92. masonite_orm-2.22.1/tests/postgres/schema/test_postgres_schema_builder_alter.py +0 -303
  93. masonite_orm-2.22.1/tests/scopes/test_default_global_scopes.py +0 -141
  94. masonite_orm-2.22.1/tests/seeds/test_seeds.py +0 -12
  95. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_builder_insert.py +0 -39
  96. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_builder_pagination.py +0 -66
  97. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_query_builder.py +0 -998
  98. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_query_builder_eager_loading.py +0 -99
  99. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_query_builder_relationships.py +0 -129
  100. masonite_orm-2.22.1/tests/sqlite/builder/test_sqlite_transaction.py +0 -52
  101. masonite_orm-2.22.1/tests/sqlite/grammar/test_sqlite_delete_grammar.py +0 -75
  102. masonite_orm-2.22.1/tests/sqlite/grammar/test_sqlite_insert_grammar.py +0 -103
  103. masonite_orm-2.22.1/tests/sqlite/grammar/test_sqlite_select_grammar.py +0 -463
  104. masonite_orm-2.22.1/tests/sqlite/grammar/test_sqlite_update_grammar.py +0 -113
  105. masonite_orm-2.22.1/tests/sqlite/models/test_observers.py +0 -122
  106. masonite_orm-2.22.1/tests/sqlite/models/test_sqlite_model.py +0 -259
  107. masonite_orm-2.22.1/tests/sqlite/relationships/test_sqlite_polymorphic.py +0 -56
  108. masonite_orm-2.22.1/tests/sqlite/relationships/test_sqlite_relationships.py +0 -164
  109. masonite_orm-2.22.1/tests/sqlite/schema/test_sqlite_schema_builder.py +0 -355
  110. masonite_orm-2.22.1/tests/sqlite/schema/test_sqlite_schema_builder_alter.py +0 -211
  111. masonite_orm-2.22.1/tests/sqlite/schema/test_table.py +0 -109
  112. masonite_orm-2.22.1/tests/sqlite/schema/test_table_diff.py +0 -163
  113. masonite_orm-2.22.1/tests/utils.py +0 -57
  114. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/MANIFEST.in +0 -0
  115. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/README.md +0 -0
  116. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/setup.cfg +0 -0
  117. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masonite_orm.egg-info/dependency_links.txt +0 -0
  118. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masonite_orm.egg-info/requires.txt +0 -0
  119. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masonite_orm.egg-info/top_level.txt +0 -0
  120. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/__init__.py +0 -0
  121. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/collection/Collection.py +0 -0
  122. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/collection/__init__.py +0 -0
  123. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/CanOverrideConfig.py +0 -0
  124. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/CanOverrideOptionsDefault.py +0 -0
  125. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/Command.py +0 -0
  126. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/Entry.py +0 -0
  127. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MakeMigrationCommand.py +0 -0
  128. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MakeModelCommand.py +0 -0
  129. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MakeModelDocstringCommand.py +0 -0
  130. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MakeObserverCommand.py +0 -0
  131. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MakeSeedCommand.py +0 -0
  132. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateCommand.py +0 -0
  133. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateFreshCommand.py +0 -0
  134. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateRefreshCommand.py +0 -0
  135. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateResetCommand.py +0 -0
  136. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateRollbackCommand.py +0 -0
  137. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/MigrateStatusCommand.py +0 -0
  138. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/SeedRunCommand.py +0 -0
  139. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/ShellCommand.py +0 -0
  140. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/__init__.py +0 -0
  141. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/stubs/create_migration.stub +0 -0
  142. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/stubs/create_seed.stub +0 -0
  143. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/stubs/model.stub +0 -0
  144. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/stubs/observer.stub +0 -0
  145. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/commands/stubs/table_migration.stub +0 -0
  146. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/config.py +0 -0
  147. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/ConnectionFactory.py +0 -0
  148. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/ConnectionResolver.py +0 -0
  149. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/MSSQLConnection.py +0 -0
  150. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/MySQLConnection.py +0 -0
  151. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/PostgresConnection.py +0 -0
  152. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/SQLiteConnection.py +0 -0
  153. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/connections/__init__.py +0 -0
  154. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/exceptions.py +0 -0
  155. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/expressions/__init__.py +0 -0
  156. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/expressions/expressions.py +0 -0
  157. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/factories/Factory.py +0 -0
  158. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/factories/__init__.py +0 -0
  159. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/helpers/__init__.py +0 -0
  160. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/helpers/misc.py +0 -0
  161. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/migrations/Migration.py +0 -0
  162. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/migrations/__init__.py +0 -0
  163. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/models/MigrationModel.py +0 -0
  164. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/models/Model.py +0 -0
  165. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/models/Pivot.py +0 -0
  166. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/models/__init__.py +0 -0
  167. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/observers/ObservesEvents.py +0 -0
  168. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/observers/__init__.py +0 -0
  169. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/pagination/BasePaginator.py +0 -0
  170. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/pagination/LengthAwarePaginator.py +0 -0
  171. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/pagination/SimplePaginator.py +0 -0
  172. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/pagination/__init__.py +0 -0
  173. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/providers/ORMProvider.py +0 -0
  174. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/providers/__init__.py +0 -0
  175. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/EagerRelation.py +0 -0
  176. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/__init__.py +0 -0
  177. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/BaseGrammar.py +0 -0
  178. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/MSSQLGrammar.py +0 -0
  179. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/MySQLGrammar.py +0 -0
  180. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/PostgresGrammar.py +0 -0
  181. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/SQLiteGrammar.py +0 -0
  182. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/grammars/__init__.py +0 -0
  183. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/processors/MSSQLPostProcessor.py +0 -0
  184. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/processors/MySQLPostProcessor.py +0 -0
  185. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/processors/PostgresPostProcessor.py +0 -0
  186. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/processors/SQLitePostProcessor.py +0 -0
  187. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/query/processors/__init__.py +0 -0
  188. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/BaseRelationship.py +0 -0
  189. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/BelongsTo.py +0 -0
  190. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/BelongsToMany.py +0 -0
  191. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/HasMany.py +0 -0
  192. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/HasManyThrough.py +0 -0
  193. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/HasOne.py +0 -0
  194. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/HasOneThrough.py +0 -0
  195. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/MorphMany.py +0 -0
  196. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/MorphOne.py +0 -0
  197. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/MorphTo.py +0 -0
  198. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/MorphToMany.py +0 -0
  199. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/relationships/__init__.py +0 -0
  200. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Blueprint.py +0 -0
  201. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Column.py +0 -0
  202. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/ColumnDiff.py +0 -0
  203. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Constraint.py +0 -0
  204. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/ForeignKeyConstraint.py +0 -0
  205. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Index.py +0 -0
  206. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Schema.py +0 -0
  207. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/Table.py +0 -0
  208. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/TableDiff.py +0 -0
  209. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/__init__.py +0 -0
  210. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/MSSQLPlatform.py +0 -0
  211. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/Platform.py +0 -0
  212. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/schema/platforms/__init__.py +0 -0
  213. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/BaseScope.py +0 -0
  214. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/SoftDeleteScope.py +0 -0
  215. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/SoftDeletesMixin.py +0 -0
  216. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/TimeStampsMixin.py +0 -0
  217. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/TimeStampsScope.py +0 -0
  218. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/UUIDPrimaryKeyMixin.py +0 -0
  219. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/UUIDPrimaryKeyScope.py +0 -0
  220. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/__init__.py +0 -0
  221. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/scopes/scope.py +0 -0
  222. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/seeds/Seeder.py +0 -0
  223. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/seeds/__init__.py +0 -0
  224. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/testing/BaseTestCaseSelectGrammar.py +0 -0
  225. {masonite_orm-2.22.1 → masonite-orm-2.22.2}/src/masoniteorm/testing/__init__.py +0 -0
@@ -0,0 +1,54 @@
1
+ Metadata-Version: 2.1
2
+ Name: masonite-orm
3
+ Version: 2.22.2
4
+ Summary: The Official Masonite ORM
5
+ Home-page: https://github.com/masoniteframework/orm
6
+ Author: Joe Mancuso
7
+ Author-email: joe@masoniteproject.com
8
+ License: MIT
9
+ Description: <p align="center">
10
+ <img src="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4trhpkkdbbzutc5ufxi9.png" width="160px">
11
+ <h1 align="center">Masonite ORM</h1>
12
+ </p>
13
+
14
+ <p align="center">
15
+ <a href="https://docs.masoniteproject.com">
16
+ <img alt="Masonite Package" src="https://img.shields.io/static/v1?label=Masonite&message=package&labelColor=grey&color=blue&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAA6gAwAEAAAAAQAAAA4AAAAATspU+QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAnxJREFUKBVNUl1IVEEUPjPObdd1VdxWM0rMIl3bzbVWLSofVm3th0AhMakHHyqRiNSHEAq5b2HSVvoQRUiEECQUQkkPbRslRGigG8auoon2oPSjpev+3PWeZq7eaC5nDt93vplz5txDQJYpNxX4st4JFiwj9aCqmswUFQNS/A2YskrZJPYefkECC2GhQwAqvLYybwXrwBvq8HSNOXRO92+aH7nW8vc/wS2Z9TqneYt2KHjlf9Iv+43wFJMExzO0YE5OKe60N+AOW6OmE+WJTBrg23jjzWxMBauOlfyycsV24F+cH+zAXYUOGl+DaiDxfl245/W9OnVrSY+O2eqPkyz4sVvHoKp9gOihf5KoAVv3hkQgbj/ihG9fI3RixKcUVx7lJVaEc0vnyf2FFll+ny80ZHZiGhIKowWJBCEAKr+FSuNDLt+lxybSF51lo74arqs113dOZqwsptxNs5bwi7Q3q8npSC2AWmvjTncZf1l61e5DEizNn5mtufpsqk5+CZTuq00sP1wkNPv8jeEikVVlJso+GEwRtNs3QeBt2YP2V2ZI3Tx0e+7T89zK5tNASOLEytJAryGtkLc2PcBM5byyUWYkMQpMioYcDcchC6xN220Iv36Ot8pV0454RHLEwmmD7UWfIdX0zq3GjMPG5NKBtv5qiPEPekK2U51j1451BZoc3i+1ohSQ/UzzG5uYFFn2mwVUnO4O3JblXA91T51l3pB3QweDl7sNXMyEjbguSjrPcQNmwDkNc8CbCvDd0+xCC7RFi9wFulD3mJeXqxQevB4prrqgc0TmQ85NG/K43e2UwnMVAJIEBNfWRYR3HfnvivrIzMyo4Hgy+hfscvLo53jItAAAAABJRU5ErkJggg==">
17
+ </a>
18
+ <img src="https://img.shields.io/badge/python-3.6+-blue.svg" alt="Python Version">
19
+ <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/MasoniteFramework/orm">
20
+ <img alt="License" src="https://img.shields.io/github/license/MasoniteFramework/orm">
21
+ <a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
22
+ </p>
23
+
24
+ ## Installation & Usage
25
+
26
+ All documentation can be found here [https://orm.masoniteproject.com](https://orm.masoniteproject.com).
27
+
28
+ Hop on [Masonite Discord Community](https://discord.gg/TwKeFahmPZ) to ask any questions you need!
29
+
30
+ ## Contributing
31
+
32
+ If you would like to contribute please read the [Contributing Documentation](CONTRIBUTING.md) here.
33
+
34
+ ## License
35
+
36
+ Masonite ORM is open-sourced software licensed under the [MIT License](LICENSE).
37
+
38
+ Keywords: Masonite,MasoniteFramework,Python,ORM
39
+ Platform: UNKNOWN
40
+ Classifier: Development Status :: 5 - Production/Stable
41
+ Classifier: Intended Audience :: Developers
42
+ Classifier: Topic :: Software Development :: Build Tools
43
+ Classifier: Environment :: Web Environment
44
+ Classifier: License :: OSI Approved :: MIT License
45
+ Classifier: Operating System :: OS Independent
46
+ Classifier: Programming Language :: Python :: 3.6
47
+ Classifier: Programming Language :: Python :: 3.7
48
+ Classifier: Programming Language :: Python :: 3.8
49
+ Classifier: Programming Language :: Python :: 3.9
50
+ Classifier: Framework :: Masonite
51
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
52
+ Classifier: Framework :: Masonite
53
+ Description-Content-Type: text/markdown
54
+ Provides-Extra: test
@@ -8,7 +8,7 @@ setup(
8
8
  # Versions should comply with PEP440. For a discussion on single-sourcing
9
9
  # the version across setup.py and the project code, see
10
10
  # https://packaging.python.org/en/latest/single_source_version.html
11
- version="2.22.1",
11
+ version="2.22.2",
12
12
  package_dir={"": "src"},
13
13
  description="The Official Masonite ORM",
14
14
  long_description=long_description,
@@ -0,0 +1,54 @@
1
+ Metadata-Version: 2.1
2
+ Name: masonite-orm
3
+ Version: 2.22.2
4
+ Summary: The Official Masonite ORM
5
+ Home-page: https://github.com/masoniteframework/orm
6
+ Author: Joe Mancuso
7
+ Author-email: joe@masoniteproject.com
8
+ License: MIT
9
+ Description: <p align="center">
10
+ <img src="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4trhpkkdbbzutc5ufxi9.png" width="160px">
11
+ <h1 align="center">Masonite ORM</h1>
12
+ </p>
13
+
14
+ <p align="center">
15
+ <a href="https://docs.masoniteproject.com">
16
+ <img alt="Masonite Package" src="https://img.shields.io/static/v1?label=Masonite&message=package&labelColor=grey&color=blue&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAA6gAwAEAAAAAQAAAA4AAAAATspU+QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAnxJREFUKBVNUl1IVEEUPjPObdd1VdxWM0rMIl3bzbVWLSofVm3th0AhMakHHyqRiNSHEAq5b2HSVvoQRUiEECQUQkkPbRslRGigG8auoon2oPSjpev+3PWeZq7eaC5nDt93vplz5txDQJYpNxX4st4JFiwj9aCqmswUFQNS/A2YskrZJPYefkECC2GhQwAqvLYybwXrwBvq8HSNOXRO92+aH7nW8vc/wS2Z9TqneYt2KHjlf9Iv+43wFJMExzO0YE5OKe60N+AOW6OmE+WJTBrg23jjzWxMBauOlfyycsV24F+cH+zAXYUOGl+DaiDxfl245/W9OnVrSY+O2eqPkyz4sVvHoKp9gOihf5KoAVv3hkQgbj/ihG9fI3RixKcUVx7lJVaEc0vnyf2FFll+ny80ZHZiGhIKowWJBCEAKr+FSuNDLt+lxybSF51lo74arqs113dOZqwsptxNs5bwi7Q3q8npSC2AWmvjTncZf1l61e5DEizNn5mtufpsqk5+CZTuq00sP1wkNPv8jeEikVVlJso+GEwRtNs3QeBt2YP2V2ZI3Tx0e+7T89zK5tNASOLEytJAryGtkLc2PcBM5byyUWYkMQpMioYcDcchC6xN220Iv36Ot8pV0454RHLEwmmD7UWfIdX0zq3GjMPG5NKBtv5qiPEPekK2U51j1451BZoc3i+1ohSQ/UzzG5uYFFn2mwVUnO4O3JblXA91T51l3pB3QweDl7sNXMyEjbguSjrPcQNmwDkNc8CbCvDd0+xCC7RFi9wFulD3mJeXqxQevB4prrqgc0TmQ85NG/K43e2UwnMVAJIEBNfWRYR3HfnvivrIzMyo4Hgy+hfscvLo53jItAAAAABJRU5ErkJggg==">
17
+ </a>
18
+ <img src="https://img.shields.io/badge/python-3.6+-blue.svg" alt="Python Version">
19
+ <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/MasoniteFramework/orm">
20
+ <img alt="License" src="https://img.shields.io/github/license/MasoniteFramework/orm">
21
+ <a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
22
+ </p>
23
+
24
+ ## Installation & Usage
25
+
26
+ All documentation can be found here [https://orm.masoniteproject.com](https://orm.masoniteproject.com).
27
+
28
+ Hop on [Masonite Discord Community](https://discord.gg/TwKeFahmPZ) to ask any questions you need!
29
+
30
+ ## Contributing
31
+
32
+ If you would like to contribute please read the [Contributing Documentation](CONTRIBUTING.md) here.
33
+
34
+ ## License
35
+
36
+ Masonite ORM is open-sourced software licensed under the [MIT License](LICENSE).
37
+
38
+ Keywords: Masonite,MasoniteFramework,Python,ORM
39
+ Platform: UNKNOWN
40
+ Classifier: Development Status :: 5 - Production/Stable
41
+ Classifier: Intended Audience :: Developers
42
+ Classifier: Topic :: Software Development :: Build Tools
43
+ Classifier: Environment :: Web Environment
44
+ Classifier: License :: OSI Approved :: MIT License
45
+ Classifier: Operating System :: OS Independent
46
+ Classifier: Programming Language :: Python :: 3.6
47
+ Classifier: Programming Language :: Python :: 3.7
48
+ Classifier: Programming Language :: Python :: 3.8
49
+ Classifier: Programming Language :: Python :: 3.9
50
+ Classifier: Framework :: Masonite
51
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
52
+ Classifier: Framework :: Masonite
53
+ Description-Content-Type: text/markdown
54
+ Provides-Extra: test
@@ -1,39 +1,12 @@
1
- .deepsource.toml
2
- .env-example
3
- .gitignore
4
- .pypirc
5
- CONTRIBUTING.md
6
- LICENSE
7
1
  MANIFEST.in
8
2
  README.md
9
- TODO.md
10
- cc.py
11
- makefile
12
- orm
13
- orm.sqlite3
14
- requirements.txt
15
3
  setup.py
16
- .github/ISSUE_TEMPLATE/bug_report.md
17
- .github/ISSUE_TEMPLATE/feature_request.md
18
- .github/workflows/pythonapp.yml
19
- .github/workflows/pythonpublish.yml
20
- app/observers/UserObserver.py
21
- conda/conda_build_config.yaml
22
- conda/meta.yaml
23
- databases/migrations/2018_01_09_043202_create_users_table.py
24
- databases/migrations/2020_04_17_000000_create_friends_table.py
25
- databases/migrations/2020_04_17_00000_create_articles_table.py
26
- databases/migrations/2020_10_20_152904_create_table_schema_migration.py
27
- databases/migrations/__init__.py
28
- databases/seeds/database_seeder.py
29
- databases/seeds/user_table_seeder.py
30
4
  src/masonite_orm.egg-info/PKG-INFO
31
5
  src/masonite_orm.egg-info/SOURCES.txt
32
6
  src/masonite_orm.egg-info/dependency_links.txt
33
7
  src/masonite_orm.egg-info/entry_points.txt
34
8
  src/masonite_orm.egg-info/requires.txt
35
9
  src/masonite_orm.egg-info/top_level.txt
36
- src/masoniteorm/.gitignore
37
10
  src/masoniteorm/__init__.py
38
11
  src/masoniteorm/config.py
39
12
  src/masoniteorm/exceptions.py
@@ -62,7 +35,6 @@ src/masoniteorm/commands/stubs/create_seed.stub
62
35
  src/masoniteorm/commands/stubs/model.stub
63
36
  src/masoniteorm/commands/stubs/observer.stub
64
37
  src/masoniteorm/commands/stubs/table_migration.stub
65
- src/masoniteorm/connections/.gitignore
66
38
  src/masoniteorm/connections/BaseConnection.py
67
39
  src/masoniteorm/connections/ConnectionFactory.py
68
40
  src/masoniteorm/connections/ConnectionResolver.py
@@ -81,7 +53,6 @@ src/masoniteorm/migrations/Migration.py
81
53
  src/masoniteorm/migrations/__init__.py
82
54
  src/masoniteorm/models/MigrationModel.py
83
55
  src/masoniteorm/models/Model.py
84
- src/masoniteorm/models/Model.pyi
85
56
  src/masoniteorm/models/Pivot.py
86
57
  src/masoniteorm/models/__init__.py
87
58
  src/masoniteorm/observers/ObservesEvents.py
@@ -145,77 +116,5 @@ src/masoniteorm/scopes/__init__.py
145
116
  src/masoniteorm/scopes/scope.py
146
117
  src/masoniteorm/seeds/Seeder.py
147
118
  src/masoniteorm/seeds/__init__.py
148
- src/masoniteorm/stubs/create-migration.html
149
- src/masoniteorm/stubs/table-migration.html
150
119
  src/masoniteorm/testing/BaseTestCaseSelectGrammar.py
151
- src/masoniteorm/testing/__init__.py
152
- tests/User.py
153
- tests/utils.py
154
- tests/collection/test_collection.py
155
- tests/commands/test_shell.py
156
- tests/config/test_db_url.py
157
- tests/connections/test_base_connections.py
158
- tests/eagers/test_eager.py
159
- tests/factories/test_factories.py
160
- tests/integrations/config/__init__.py
161
- tests/integrations/config/database.py
162
- tests/models/test_models.py
163
- tests/mssql/builder/test_mssql_query_builder.py
164
- tests/mssql/builder/test_mssql_query_builder_relationships.py
165
- tests/mssql/grammar/test_mssql_delete_grammar.py
166
- tests/mssql/grammar/test_mssql_insert_grammar.py
167
- tests/mssql/grammar/test_mssql_qmark.py
168
- tests/mssql/grammar/test_mssql_select_grammar.py
169
- tests/mssql/grammar/test_mssql_update_grammar.py
170
- tests/mssql/schema/test_mssql_schema_builder.py
171
- tests/mssql/schema/test_mssql_schema_builder_alter.py
172
- tests/mysql/builder/test_mysql_builder_transaction.py
173
- tests/mysql/builder/test_query_builder.py
174
- tests/mysql/builder/test_query_builder_scopes.py
175
- tests/mysql/builder/test_transactions.py
176
- tests/mysql/connections/test_mysql_connection_selects.py
177
- tests/mysql/grammar/test_mysql_delete_grammar.py
178
- tests/mysql/grammar/test_mysql_insert_grammar.py
179
- tests/mysql/grammar/test_mysql_qmark.py
180
- tests/mysql/grammar/test_mysql_select_grammar.py
181
- tests/mysql/grammar/test_mysql_update_grammar.py
182
- tests/mysql/model/test_accessors_and_mutators.py
183
- tests/mysql/model/test_model.py
184
- tests/mysql/relationships/test_belongs_to_many.py
185
- tests/mysql/relationships/test_has_many_through.py
186
- tests/mysql/relationships/test_has_one_through.py
187
- tests/mysql/relationships/test_relationships.py
188
- tests/mysql/schema/test_mysql_schema_builder.py
189
- tests/mysql/schema/test_mysql_schema_builder_alter.py
190
- tests/mysql/scopes/test_can_use_global_scopes.py
191
- tests/mysql/scopes/test_can_use_scopes.py
192
- tests/mysql/scopes/test_soft_delete.py
193
- tests/postgres/builder/test_postgres_query_builder.py
194
- tests/postgres/builder/test_postgres_transaction.py
195
- tests/postgres/grammar/test_delete_grammar.py
196
- tests/postgres/grammar/test_insert_grammar.py
197
- tests/postgres/grammar/test_select_grammar.py
198
- tests/postgres/grammar/test_update_grammar.py
199
- tests/postgres/relationships/test_postgres_relationships.py
200
- tests/postgres/schema/test_postgres_schema_builder.py
201
- tests/postgres/schema/test_postgres_schema_builder_alter.py
202
- tests/scopes/test_default_global_scopes.py
203
- tests/seeds/test_seeds.py
204
- tests/sqlite/builder/test_sqlite_builder_insert.py
205
- tests/sqlite/builder/test_sqlite_builder_pagination.py
206
- tests/sqlite/builder/test_sqlite_query_builder.py
207
- tests/sqlite/builder/test_sqlite_query_builder_eager_loading.py
208
- tests/sqlite/builder/test_sqlite_query_builder_relationships.py
209
- tests/sqlite/builder/test_sqlite_transaction.py
210
- tests/sqlite/grammar/test_sqlite_delete_grammar.py
211
- tests/sqlite/grammar/test_sqlite_insert_grammar.py
212
- tests/sqlite/grammar/test_sqlite_select_grammar.py
213
- tests/sqlite/grammar/test_sqlite_update_grammar.py
214
- tests/sqlite/models/test_observers.py
215
- tests/sqlite/models/test_sqlite_model.py
216
- tests/sqlite/relationships/test_sqlite_polymorphic.py
217
- tests/sqlite/relationships/test_sqlite_relationships.py
218
- tests/sqlite/schema/test_sqlite_schema_builder.py
219
- tests/sqlite/schema/test_sqlite_schema_builder_alter.py
220
- tests/sqlite/schema/test_table.py
221
- tests/sqlite/schema/test_table_diff.py
120
+ src/masoniteorm/testing/__init__.py
@@ -1,2 +1,3 @@
1
1
  [console_scripts]
2
2
  masonite-orm = masoniteorm.commands.Entry:application.run
3
+
@@ -85,4 +85,3 @@ class BaseConnection:
85
85
  self._connection.execute(platform.enable_foreign_key_constraints())
86
86
  elif foreign_keys is not None:
87
87
  self._connection.execute(platform.disable_foreign_key_constraints())
88
-
@@ -1955,9 +1955,9 @@ class QueryBuilder(ObservesEvents):
1955
1955
  map_related = self._map_related(related_result, related)
1956
1956
  for model in hydrated_model:
1957
1957
  if isinstance(related_result, Collection):
1958
- related.register_related(relation_key, model, related_result)
1958
+ related.register_related(relation_key, model, map_related)
1959
1959
  else:
1960
- model.add_relation({relation_key: related_result or None})
1960
+ model.add_relation({relation_key: map_related or None})
1961
1961
  else:
1962
1962
  hydrated_model.add_relation({relation_key: related_result or None})
1963
1963
  return self
@@ -176,11 +176,16 @@ class MySQLPlatform(Platform):
176
176
  else:
177
177
  default = ""
178
178
 
179
+ column_constraint = ""
180
+ if column.column_type == "enum":
181
+ values = ", ".join(f"'{x}'" for x in column.values)
182
+ column_constraint = f"({values})"
179
183
  add_columns.append(
180
184
  self.add_column_string()
181
185
  .format(
182
186
  name=self.get_column_string().format(column=column.name),
183
187
  data_type=self.type_map.get(column.column_type, ""),
188
+ column_constraint=column_constraint,
184
189
  length=length,
185
190
  constraint="PRIMARY KEY" if column.primary else "",
186
191
  nullable="NULL" if column.is_null else "NOT NULL",
@@ -333,14 +338,14 @@ class MySQLPlatform(Platform):
333
338
 
334
339
  def add_column_string(self):
335
340
  return (
336
- "ADD {name} {data_type}{length}{signed} {nullable}{default}{after}{comment}"
341
+ "ADD {name} {data_type}{length}{column_constraint}{signed} {nullable}{default}{after}{comment}"
337
342
  )
338
343
 
339
344
  def drop_column_string(self):
340
345
  return "DROP COLUMN {name}"
341
346
 
342
347
  def change_column_string(self):
343
- return "MODIFY {name}{data_type}{length} {nullable}{default} {constraint}"
348
+ return "MODIFY {name}{data_type}{length}{column_constraint} {nullable}{default} {constraint}"
344
349
 
345
350
  def rename_column_string(self):
346
351
  return "CHANGE {old} {to}"
@@ -194,6 +194,11 @@ class PostgresPlatform(Platform):
194
194
  else:
195
195
  default = ""
196
196
 
197
+ column_constraint = ""
198
+ if column.column_type == "enum":
199
+ values = ", ".join(f"'{x}'" for x in column.values)
200
+ column_constraint = f" CHECK({column.name} IN ({values}))"
201
+
197
202
  add_columns.append(
198
203
  self.add_column_string()
199
204
  .format(
@@ -201,6 +206,7 @@ class PostgresPlatform(Platform):
201
206
  data_type=self.type_map.get(column.column_type, ""),
202
207
  length=length,
203
208
  constraint="PRIMARY KEY" if column.primary else "",
209
+ column_constraint=column_constraint,
204
210
  nullable="NULL" if column.is_null else "NOT NULL",
205
211
  default=default,
206
212
  after=(" AFTER " + self.wrap_column(column._after))
@@ -263,12 +269,18 @@ class PostgresPlatform(Platform):
263
269
  changed_sql = []
264
270
 
265
271
  for name, column in table.changed_columns.items():
272
+
273
+ column_constraint = ""
274
+ if column.column_type == "enum":
275
+ values = ", ".join(f"'{x}'" for x in column.values)
276
+ column_constraint = f" CHECK({column.name} IN ({values}))"
266
277
  changed_sql.append(
267
278
  self.modify_column_string()
268
279
  .format(
269
280
  name=self.wrap_column(name),
270
281
  data_type=self.type_map.get(column.column_type),
271
- nullable="NULL" if column.is_null else "NOT NULL",
282
+ column_constraint=column_constraint,
283
+ constraint="PRIMARY KEY" if column.primary else "",
272
284
  length="(" + str(column.length) + ")"
273
285
  if column.column_type not in self.types_without_lengths
274
286
  else "",
@@ -380,13 +392,13 @@ class PostgresPlatform(Platform):
380
392
  return "ALTER TABLE {table} {columns}"
381
393
 
382
394
  def add_column_string(self):
383
- return "ADD COLUMN {name} {data_type}{length} {nullable}{default} {constraint}"
395
+ return "ADD COLUMN {name} {data_type}{length}{column_constraint} {nullable}{default} {constraint}"
384
396
 
385
397
  def drop_column_string(self):
386
398
  return "DROP COLUMN {name}"
387
399
 
388
400
  def modify_column_string(self):
389
- return "ALTER COLUMN {name} TYPE {data_type}{length}"
401
+ return "ALTER COLUMN {name} TYPE {data_type}{length}{column_constraint} {constraint}"
390
402
 
391
403
  def rename_column_string(self):
392
404
  return "RENAME COLUMN {old} TO {to}"
@@ -171,15 +171,21 @@ class SQLitePlatform(Platform):
171
171
  else:
172
172
  default = ""
173
173
  constraint = ""
174
+ column_constraint = ""
174
175
  if column.name in diff.added_foreign_keys:
175
176
  foreign_key = diff.added_foreign_keys[column.name]
176
177
  constraint = f" REFERENCES {self.wrap_table(foreign_key.foreign_table)}({self.wrap_column(foreign_key.foreign_column)})"
178
+ if column.column_type == "enum":
179
+ values = ", ".join(f"'{x}'" for x in column.values)
180
+ column_constraint = f" CHECK('{column.name}' IN({values}))"
177
181
 
178
182
  sql.append(
179
- "ALTER TABLE {table} ADD COLUMN {name} {data_type}{signed} {nullable}{default}{constraint}".format(
183
+ self.add_column_string()
184
+ .format(
180
185
  table=self.wrap_table(diff.name),
181
186
  name=self.wrap_column(column.name),
182
187
  data_type=self.type_map.get(column.column_type, ""),
188
+ column_constraint=column_constraint,
183
189
  nullable="NULL" if column.is_null else "NOT NULL",
184
190
  default=default,
185
191
  signed=" " + self.signed.get(column._signed)
@@ -291,6 +297,11 @@ class SQLitePlatform(Platform):
291
297
  def get_column_string(self):
292
298
  return '"{column}"'
293
299
 
300
+ def add_column_string(self):
301
+ return (
302
+ "ALTER TABLE {table} ADD COLUMN {name} {data_type}{column_constraint}{signed} {nullable}{default}{constraint}"
303
+ )
304
+
294
305
  def create_column_length(self, column_type):
295
306
  if column_type in self.types_without_lengths:
296
307
  return ""
@@ -1,15 +0,0 @@
1
- # generated by deepsource.io
2
- version = 1
3
-
4
- test_patterns = [
5
- 'tests/**/*.py'
6
- ]
7
-
8
- exclude_patterns = [
9
- 'databases/migrations/*'
10
- ]
11
-
12
- [[analyzers]]
13
- name = "python"
14
- enabled = true
15
- runtime_version = "3.x.x"
@@ -1,16 +0,0 @@
1
-
2
- RUN_MYSQL_DATABASE=False
3
-
4
- MYSQL_DATABASE_HOST=
5
- MYSQL_DATABASE_USER=
6
- MYSQL_DATABASE_PASSWORD=
7
- MYSQL_DATABASE_DATABASE=
8
- MYSQL_DATABASE_PORT=
9
-
10
- POSTGRES_DATABASE_HOST=
11
- POSTGRES_DATABASE_USER=
12
- POSTGRES_DATABASE_PASSWORD=
13
- POSTGRES_DATABASE_DATABASE=
14
- POSTGRES_DATABASE_PORT=
15
-
16
- DATABASE_URL=
@@ -1,35 +0,0 @@
1
- ---
2
- name: Bug report
3
- about: A bug would be defined as an issue / problem in the original requirement. If the feature works but could be enhanced please use the feature request option.
4
- title: ''
5
- labels: 'bug'
6
- assignees: ''
7
- ---
8
-
9
- **Describe the bug**
10
- A clear and concise description of what the bug is.
11
-
12
- **To Reproduce**
13
- Steps to reproduce the behavior:
14
- 1. Go to '...'
15
- 2. Click on '....'
16
- 3. Scroll down to '....'
17
- 4. See error
18
-
19
- **Expected behavior**
20
- What do you believe should be happening?
21
-
22
- **Screenshots or code snippets**
23
- Screenshots help a lot. If applicable, add screenshots to help explain your problem.
24
-
25
- **Desktop (please complete the following information):**
26
- - OS: [e.g. Mac OSX, Windows]
27
- - Version [e.g. Big Sur, 10]
28
-
29
- **What database are you using?**
30
- - Type: [e.g. Postgres, MySQL, SQLite]
31
- - Version [e.g. 8, 9.1, 10.5]
32
- - Masonite ORM [e.g. v1.0.26, v1.0.27]
33
-
34
- **Additional context**
35
- Any other steps you are doing or any other related information that will help us debug the problem please put here.
@@ -1,19 +0,0 @@
1
- ---
2
- name: Feature request or enhancement
3
- about: Suggest an idea or improvement for this project.
4
- title: ''
5
- labels: enhancement, feature request
6
- assignees: ''
7
-
8
- ---
9
-
10
- **Describe the feature as you'd like to see it**
11
- A clear and concise description of what you want to happen.
12
-
13
- **What do we currently have to do now?**
14
- Give some examples or code snippets on the current way of doing things.
15
-
16
- **Additional context**
17
- Add any other context or screenshots about the feature request here.
18
-
19
- - [ ] Is this a breaking change?
@@ -1,73 +0,0 @@
1
- name: Test Application
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
- build:
7
- runs-on: ubuntu-20.04
8
-
9
- services:
10
- postgres:
11
- image: postgres:10.8
12
- env:
13
- POSTGRES_USER: postgres
14
- POSTGRES_PASSWORD: postgres
15
- POSTGRES_DB: postgres
16
- ports:
17
- # will assign a random free host port
18
- - 5432/tcp
19
- # needed because the postgres container does not provide a healthcheck
20
- options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
21
-
22
- mysql:
23
- image: mysql:5.7
24
- env:
25
- MYSQL_ALLOW_EMPTY_PASSWORD: yes
26
- MYSQL_DATABASE: orm
27
- ports:
28
- - 3306
29
- options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
30
-
31
- strategy:
32
- matrix:
33
- python-version: ["3.6", "3.7", "3.8", "3.9"]
34
- name: Python ${{ matrix.python-version }}
35
- steps:
36
- - uses: actions/checkout@v1
37
- - name: Set up Python ${{ matrix.python-version }}
38
- uses: actions/setup-python@v4
39
- with:
40
- python-version: ${{ matrix.python-version }}
41
- - name: Install dependencies
42
- run: |
43
- make init
44
- - name: Test with pytest
45
- env:
46
- POSTGRES_DATABASE_HOST: localhost
47
- POSTGRES_DATABASE_DATABASE: postgres
48
- POSTGRES_DATABASE_USER: postgres
49
- POSTGRES_DATABASE_PASSWORD: postgres
50
- POSTGRES_DATABASE_PORT: ${{ job.services.postgres.ports[5432] }}
51
- MYSQL_DATABASE_HOST: localhost
52
- MYSQL_DATABASE_DATABASE: orm
53
- MYSQL_DATABASE_USER: root
54
- MYSQL_DATABASE_PORT: ${{ job.services.mysql.ports[3306] }}
55
- DB_CONFIG_PATH: tests/integrations/config/database.py
56
- run: |
57
- python orm migrate --connection postgres
58
- python orm migrate --connection mysql
59
- make test
60
- lint:
61
- runs-on: ubuntu-20.04
62
- name: Lint
63
- steps:
64
- - uses: actions/checkout@v1
65
- - name: Set up Python 3.6
66
- uses: actions/setup-python@v4
67
- with:
68
- python-version: 3.6
69
- - name: Install Flake8
70
- run: |
71
- pip install flake8==3.7.9
72
- - name: Lint
73
- run: make lint
@@ -1,80 +0,0 @@
1
- name: Upload Python Package
2
-
3
- on:
4
- release:
5
- types: [created]
6
-
7
- jobs:
8
- build:
9
- runs-on: ubuntu-20.04
10
-
11
- services:
12
- postgres:
13
- image: postgres:10.8
14
- env:
15
- POSTGRES_USER: postgres
16
- POSTGRES_PASSWORD: postgres
17
- POSTGRES_DB: postgres
18
- ports:
19
- # will assign a random free host port
20
- - 5432/tcp
21
- # needed because the postgres container does not provide a healthcheck
22
- options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
23
-
24
- mysql:
25
- image: mysql:5.7
26
- env:
27
- MYSQL_ALLOW_EMPTY_PASSWORD: yes
28
- MYSQL_DATABASE: orm
29
- ports:
30
- - 3306
31
- options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
32
-
33
- strategy:
34
- matrix:
35
- python-version: ["3.6"]
36
- name: Python ${{ matrix.python-version }}
37
- steps:
38
- - uses: actions/checkout@v1
39
- - name: Set up Python ${{ matrix.python-version }}
40
- uses: actions/setup-python@v4
41
- with:
42
- python-version: ${{ matrix.python-version }}
43
- - name: Install dependencies
44
- run: |
45
- make init
46
- - name: Test with Pytest and Publish to PYPI
47
- env:
48
- POSTGRES_DATABASE_HOST: localhost
49
- POSTGRES_DATABASE_DATABASE: postgres
50
- POSTGRES_DATABASE_USER: postgres
51
- POSTGRES_DATABASE_PASSWORD: postgres
52
- POSTGRES_DATABASE_PORT: ${{ job.services.postgres.ports[5432] }}
53
- MYSQL_DATABASE_HOST: localhost
54
- MYSQL_DATABASE_DATABASE: orm
55
- MYSQL_DATABASE_USER: root
56
- MYSQL_DATABASE_PORT: ${{ job.services.mysql.ports[3306] }}
57
- TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
58
- TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
59
- DB_CONFIG_PATH: tests/integrations/config/database.py
60
- run: |
61
- python orm migrate --connection postgres
62
- python orm migrate --connection mysql
63
- make publish
64
- - name: Discord notification
65
- env:
66
- DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
67
- uses: Ilshidur/action-discord@master
68
- with:
69
- args: "{{ EVENT_PAYLOAD.repository.full_name }} {{ EVENT_PAYLOAD.release.tag_name }} has been released. Checkout the full release notes here: {{ EVENT_PAYLOAD.release.html_url }}"
70
-
71
- publish:
72
- runs-on: ubuntu-latest
73
- steps:
74
- - uses: actions/checkout@v2
75
- - name: publish-to-conda
76
- uses: fcakyon/conda-publish-action@v1.3
77
- with:
78
- subdir: "conda"
79
- anacondatoken: ${{ secrets.ANACONDA_TOKEN }}
80
- platforms: "win osx linux"