SQLAlchemy-Continuum 1.4.0__tar.gz → 1.4.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 (127) hide show
  1. {SQLAlchemy-Continuum-1.4.0/SQLAlchemy_Continuum.egg-info → sqlalchemy_continuum-1.4.2}/PKG-INFO +15 -2
  2. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2/SQLAlchemy_Continuum.egg-info}/PKG-INFO +15 -2
  3. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/SQLAlchemy_Continuum.egg-info/SOURCES.txt +1 -0
  4. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/SQLAlchemy_Continuum.egg-info/requires.txt +1 -1
  5. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/setup.py +1 -1
  6. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/__init__.py +1 -1
  7. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/manager.py +3 -1
  8. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/flask.py +10 -14
  9. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/transaction_meta.py +1 -1
  10. sqlalchemy_continuum-1.4.2/tests/test_compatibility.py +16 -0
  11. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/CHANGES.rst +0 -0
  12. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/LICENSE +0 -0
  13. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/MANIFEST.in +0 -0
  14. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/README.rst +0 -0
  15. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/SQLAlchemy_Continuum.egg-info/dependency_links.txt +0 -0
  16. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/SQLAlchemy_Continuum.egg-info/not-zip-safe +0 -0
  17. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/SQLAlchemy_Continuum.egg-info/top_level.txt +0 -0
  18. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/Makefile +0 -0
  19. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/alembic.rst +0 -0
  20. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/api.rst +0 -0
  21. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/conf.py +0 -0
  22. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/configuration.rst +0 -0
  23. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/index.rst +0 -0
  24. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/intro.rst +0 -0
  25. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/license.rst +0 -0
  26. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/make.bat +0 -0
  27. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/native_versioning.rst +0 -0
  28. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/plugins.rst +0 -0
  29. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/queries.rst +0 -0
  30. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/revert.rst +0 -0
  31. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/schema.rst +0 -0
  32. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/transactions.rst +0 -0
  33. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/utilities.rst +0 -0
  34. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/docs/version_objects.rst +0 -0
  35. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/setup.cfg +0 -0
  36. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/builder.py +0 -0
  37. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/dialects/__init__.py +0 -0
  38. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/dialects/postgresql.py +0 -0
  39. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/exc.py +0 -0
  40. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/expression_reflector.py +0 -0
  41. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/factory.py +0 -0
  42. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/fetcher.py +0 -0
  43. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/model_builder.py +0 -0
  44. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/operation.py +0 -0
  45. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/__init__.py +0 -0
  46. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/activity.py +0 -0
  47. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/base.py +0 -0
  48. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/null_delete.py +0 -0
  49. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/property_mod_tracker.py +0 -0
  50. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/plugins/transaction_changes.py +0 -0
  51. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/relationship_builder.py +0 -0
  52. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/reverter.py +0 -0
  53. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/schema.py +0 -0
  54. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/table_builder.py +0 -0
  55. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/transaction.py +0 -0
  56. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/unit_of_work.py +0 -0
  57. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/utils.py +0 -0
  58. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/sqlalchemy_continuum/version.py +0 -0
  59. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/__init__.py +0 -0
  60. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/builders/__init__.py +0 -0
  61. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/builders/test_model_builder.py +0 -0
  62. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/builders/test_relationship_builder.py +0 -0
  63. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/builders/test_table_builder.py +0 -0
  64. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/dialects/__init__.py +0 -0
  65. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/dialects/test_triggers.py +0 -0
  66. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/__init__.py +0 -0
  67. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/test_common_base_class.py +0 -0
  68. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/test_concrete_inheritance.py +0 -0
  69. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/test_join_table_inheritance.py +0 -0
  70. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/test_multi_level_inheritance.py +0 -0
  71. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/inheritance/test_single_table_inheritance.py +0 -0
  72. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/__init__.py +0 -0
  73. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_activity.py +0 -0
  74. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_flask.py +0 -0
  75. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_null_delete.py +0 -0
  76. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_plugin_collection.py +0 -0
  77. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_property_mod_tracker.py +0 -0
  78. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_transaction_changes.py +0 -0
  79. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/plugins/test_transaction_meta.py +0 -0
  80. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/__init__.py +0 -0
  81. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_association_table_relations.py +0 -0
  82. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_custom_condition_relations.py +0 -0
  83. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_dynamic_relationships.py +0 -0
  84. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_many_to_many_relations.py +0 -0
  85. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_non_versioned_classes.py +0 -0
  86. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_one_to_many_relations.py +0 -0
  87. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/relationships/test_one_to_one_relations.py +0 -0
  88. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/revert/__init__.py +0 -0
  89. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/revert/test_deep_relationships.py +0 -0
  90. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/revert/test_many_to_many_relationships.py +0 -0
  91. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/revert/test_one_to_one_relationship.py +0 -0
  92. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/revert/test_one_to_one_with_secondary_table.py +0 -0
  93. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/schema/__init__.py +0 -0
  94. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/schema/test_update_end_transaction_id.py +0 -0
  95. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/schema/test_update_property_mod_flags.py +0 -0
  96. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_accessors.py +0 -0
  97. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_changeset.py +0 -0
  98. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_column_aliases.py +0 -0
  99. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_column_inclusion_and_exclusion.py +0 -0
  100. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_composite_primary_key.py +0 -0
  101. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_configuration.py +0 -0
  102. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_custom_schema.py +0 -0
  103. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_custom_version_base_class.py +0 -0
  104. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_delete.py +0 -0
  105. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_exotic_listener_chaining.py +0 -0
  106. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_exotic_operation_combos.py +0 -0
  107. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_i18n.py +0 -0
  108. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_insert.py +0 -0
  109. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_mapper_args.py +0 -0
  110. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_raw_sql.py +0 -0
  111. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_revert.py +0 -0
  112. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_savepoints.py +0 -0
  113. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_sessions.py +0 -0
  114. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_transaction.py +0 -0
  115. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_update.py +0 -0
  116. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_vacuum.py +0 -0
  117. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_validity_strategy.py +0 -0
  118. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_validity_strategy_multithreaded.py +0 -0
  119. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/test_versions.py +0 -0
  120. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/__init__.py +0 -0
  121. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_changeset.py +0 -0
  122. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_count_versions.py +0 -0
  123. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_is_modified.py +0 -0
  124. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_parent_class.py +0 -0
  125. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_transaction_class.py +0 -0
  126. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_tx_column_name.py +0 -0
  127. {SQLAlchemy-Continuum-1.4.0 → sqlalchemy_continuum-1.4.2}/tests/utils/test_version_class.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SQLAlchemy-Continuum
3
- Version: 1.4.0
3
+ Version: 1.4.2
4
4
  Summary: Versioning and auditing extension for SQLAlchemy.
5
5
  Home-page: https://github.com/kvesteri/sqlalchemy-continuum
6
6
  Author: Konsta Vesterinen
@@ -20,12 +20,25 @@ Classifier: Programming Language :: Python :: 3.10
20
20
  Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
22
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
+ License-File: LICENSE
24
+ Requires-Dist: SQLAlchemy>=1.4.0
25
+ Requires-Dist: SQLAlchemy-Utils>=0.41.2
23
26
  Provides-Extra: test
27
+ Requires-Dist: pytest>=2.3.5; extra == "test"
28
+ Requires-Dist: psycopg2>=2.4.6; extra == "test"
29
+ Requires-Dist: PyMySQL>=0.8.0; extra == "test"
30
+ Requires-Dist: Flask>=0.9; extra == "test"
31
+ Requires-Dist: Flask-Login>=0.2.9; extra == "test"
32
+ Requires-Dist: Flask-SQLAlchemy>=1.0; extra == "test"
33
+ Requires-Dist: SQLAlchemy-i18n!=1.1.0,>=0.8.4; extra == "test"
24
34
  Provides-Extra: flask
35
+ Requires-Dist: Flask>=0.9; extra == "flask"
25
36
  Provides-Extra: flask-login
37
+ Requires-Dist: Flask-Login>=0.2.9; extra == "flask-login"
26
38
  Provides-Extra: flask-sqlalchemy
39
+ Requires-Dist: Flask-SQLAlchemy>=1.0; extra == "flask-sqlalchemy"
27
40
  Provides-Extra: i18n
28
- License-File: LICENSE
41
+ Requires-Dist: SQLAlchemy-i18n!=1.1.0,>=0.8.4; extra == "i18n"
29
42
 
30
43
 
31
44
  SQLAlchemy-Continuum
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SQLAlchemy-Continuum
3
- Version: 1.4.0
3
+ Version: 1.4.2
4
4
  Summary: Versioning and auditing extension for SQLAlchemy.
5
5
  Home-page: https://github.com/kvesteri/sqlalchemy-continuum
6
6
  Author: Konsta Vesterinen
@@ -20,12 +20,25 @@ Classifier: Programming Language :: Python :: 3.10
20
20
  Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
22
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
+ License-File: LICENSE
24
+ Requires-Dist: SQLAlchemy>=1.4.0
25
+ Requires-Dist: SQLAlchemy-Utils>=0.41.2
23
26
  Provides-Extra: test
27
+ Requires-Dist: pytest>=2.3.5; extra == "test"
28
+ Requires-Dist: psycopg2>=2.4.6; extra == "test"
29
+ Requires-Dist: PyMySQL>=0.8.0; extra == "test"
30
+ Requires-Dist: Flask>=0.9; extra == "test"
31
+ Requires-Dist: Flask-Login>=0.2.9; extra == "test"
32
+ Requires-Dist: Flask-SQLAlchemy>=1.0; extra == "test"
33
+ Requires-Dist: SQLAlchemy-i18n!=1.1.0,>=0.8.4; extra == "test"
24
34
  Provides-Extra: flask
35
+ Requires-Dist: Flask>=0.9; extra == "flask"
25
36
  Provides-Extra: flask-login
37
+ Requires-Dist: Flask-Login>=0.2.9; extra == "flask-login"
26
38
  Provides-Extra: flask-sqlalchemy
39
+ Requires-Dist: Flask-SQLAlchemy>=1.0; extra == "flask-sqlalchemy"
27
40
  Provides-Extra: i18n
28
- License-File: LICENSE
41
+ Requires-Dist: SQLAlchemy-i18n!=1.1.0,>=0.8.4; extra == "i18n"
29
42
 
30
43
 
31
44
  SQLAlchemy-Continuum
@@ -58,6 +58,7 @@ tests/test_accessors.py
58
58
  tests/test_changeset.py
59
59
  tests/test_column_aliases.py
60
60
  tests/test_column_inclusion_and_exclusion.py
61
+ tests/test_compatibility.py
61
62
  tests/test_composite_primary_key.py
62
63
  tests/test_configuration.py
63
64
  tests/test_custom_schema.py
@@ -1,5 +1,5 @@
1
1
  SQLAlchemy>=1.4.0
2
- SQLAlchemy-Utils>=0.30.12
2
+ SQLAlchemy-Utils>=0.41.2
3
3
 
4
4
  [flask]
5
5
  Flask>=0.9
@@ -61,7 +61,7 @@ setup(
61
61
  platforms='any',
62
62
  install_requires=[
63
63
  'SQLAlchemy>=1.4.0',
64
- 'SQLAlchemy-Utils>=0.30.12',
64
+ 'SQLAlchemy-Utils>=0.41.2',
65
65
  ],
66
66
  extras_require=extras_require,
67
67
  classifiers=[
@@ -18,7 +18,7 @@ from .utils import (
18
18
  )
19
19
 
20
20
 
21
- __version__ = '1.4.0'
21
+ __version__ = '1.4.2'
22
22
 
23
23
 
24
24
  versioning_manager = VersioningManager()
@@ -433,7 +433,9 @@ class VersioningManager(object):
433
433
  ):
434
434
  return
435
435
 
436
- if clauseelement.is_insert:
436
+ if isinstance(clauseelement, str):
437
+ op = None
438
+ elif clauseelement.is_insert:
437
439
  op = Operation.INSERT
438
440
  elif clauseelement.is_delete:
439
441
  op = Operation.DELETE
@@ -21,31 +21,27 @@ from __future__ import absolute_import
21
21
  flask = None
22
22
  try:
23
23
  import flask
24
- from flask import request
25
- from flask.globals import _app_ctx_stack, _request_ctx_stack
24
+ from flask import current_app, has_app_context, has_request_context, request
26
25
  except ImportError:
27
26
  pass
28
27
  from sqlalchemy_utils import ImproperlyConfigured
28
+
29
29
  from .base import Plugin
30
30
 
31
31
 
32
32
  def fetch_current_user_id():
33
- from flask_login import current_user
33
+ if has_request_context():
34
+ from flask_login import current_user
34
35
 
35
- # Return None if we are outside of request context.
36
- if _app_ctx_stack.top is None or _request_ctx_stack.top is None:
37
- return
38
- try:
39
- return current_user.id
40
- except AttributeError:
41
- return
36
+ try:
37
+ return current_user.id
38
+ except AttributeError:
39
+ return
42
40
 
43
41
 
44
42
  def fetch_remote_addr():
45
- # Return None if we are outside of request context.
46
- if _app_ctx_stack.top is None or _request_ctx_stack.top is None:
47
- return
48
- return request.remote_addr
43
+ if has_app_context() and has_request_context():
44
+ return request.remote_addr
49
45
 
50
46
 
51
47
  class FlaskPlugin(Plugin):
@@ -5,7 +5,7 @@ You can use the plugin in same way as other plugins::
5
5
 
6
6
  meta_plugin = TransactionMetaPlugin()
7
7
 
8
- versioning_manager.plugins.add(meta_plugin)
8
+ versioning_manager.plugins.append(meta_plugin)
9
9
 
10
10
 
11
11
  TransactionMetaPlugin creates a simple model called TransactionMeta. This class
@@ -0,0 +1,16 @@
1
+ from pytest import mark
2
+ from packaging import version
3
+
4
+ import sqlalchemy as sa
5
+
6
+ from tests import TestCase
7
+
8
+
9
+ @mark.skipif("version.parse(sa.__version__) >= version.parse('2.0')")
10
+ class TestCompatibility1_4(TestCase):
11
+ def test_execute_string_select(self):
12
+ self.connection.execute('select 1')
13
+
14
+ def test_execute_string_insert(self):
15
+ self.connection.execute('insert into article (id, name) values (1, "Test article")')
16
+