sqlobjects 1.0.13__tar.gz → 1.0.14__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 (74) hide show
  1. {sqlobjects-1.0.13/sqlobjects.egg-info → sqlobjects-1.0.14}/PKG-INFO +1 -1
  2. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/pyproject.toml +1 -1
  3. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/session.py +18 -1
  4. {sqlobjects-1.0.13 → sqlobjects-1.0.14/sqlobjects.egg-info}/PKG-INFO +1 -1
  5. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects.egg-info/SOURCES.txt +0 -1
  6. sqlobjects-1.0.13/CHANGELOG.md +0 -105
  7. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/LICENSE +0 -0
  8. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/README.md +0 -0
  9. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/01-database-session-guide.md +0 -0
  10. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/02-model-definition-guide.md +0 -0
  11. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/03-query-operations-guide.md +0 -0
  12. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/04-crud-operations-guide.md +0 -0
  13. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/05-relationships-guide.md +0 -0
  14. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/06-validation-signals-guide.md +0 -0
  15. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/07-performance-guide.md +0 -0
  16. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/docs/rules/README.md +0 -0
  17. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/setup.cfg +0 -0
  18. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/__init__.py +0 -0
  19. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/_install_rules.py +0 -0
  20. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/cascade.py +0 -0
  21. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/database/__init__.py +0 -0
  22. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/database/config.py +0 -0
  23. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/database/manager.py +0 -0
  24. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/exceptions.py +0 -0
  25. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/__init__.py +0 -0
  26. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/aggregate.py +0 -0
  27. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/base.py +0 -0
  28. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/function.py +0 -0
  29. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/mixins.py +0 -0
  30. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/scalar.py +0 -0
  31. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/subquery.py +0 -0
  32. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/expressions/terminal.py +0 -0
  33. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/__init__.py +0 -0
  34. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/core.py +0 -0
  35. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/functions.py +0 -0
  36. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/proxies.py +0 -0
  37. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/__init__.py +0 -0
  38. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/descriptors.py +0 -0
  39. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/managers.py +0 -0
  40. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/prefetch.py +0 -0
  41. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/strategies.py +0 -0
  42. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/relations/utils.py +0 -0
  43. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/shortcuts.py +0 -0
  44. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/types/__init__.py +0 -0
  45. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/types/base.py +0 -0
  46. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/types/comparators.py +0 -0
  47. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/types/registry.py +0 -0
  48. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/fields/utils.py +0 -0
  49. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/internal/__init__.py +0 -0
  50. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/internal/operations.py +0 -0
  51. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/internal/results.py +0 -0
  52. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/metadata.py +0 -0
  53. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/mixins.py +0 -0
  54. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/model.py +0 -0
  55. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/objects/__init__.py +0 -0
  56. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/objects/bulk.py +0 -0
  57. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/objects/core.py +0 -0
  58. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/objects/upsert.py +0 -0
  59. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/queries/__init__.py +0 -0
  60. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/queries/builder.py +0 -0
  61. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/queries/dialect.py +0 -0
  62. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/queries/executor.py +0 -0
  63. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/queryset.py +0 -0
  64. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/signals.py +0 -0
  65. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/utils/__init__.py +0 -0
  66. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/utils/inspect.py +0 -0
  67. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/utils/naming.py +0 -0
  68. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/utils/pattern.py +0 -0
  69. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects/validators.py +0 -0
  70. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects.egg-info/dependency_links.txt +0 -0
  71. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects.egg-info/entry_points.txt +0 -0
  72. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects.egg-info/requires.txt +0 -0
  73. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/sqlobjects.egg-info/top_level.txt +0 -0
  74. {sqlobjects-1.0.13 → sqlobjects-1.0.14}/tests/test_config.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlobjects
3
- Version: 1.0.13
3
+ Version: 1.0.14
4
4
  Summary: Django-style async ORM library based on SQLAlchemy with chainable queries, Q objects, and relationship loading
5
5
  Author-email: XtraVisions <gitadmin@xtravisions.com>, Chen Hao <chenhao@xtravisions.com>
6
6
  Maintainer-email: XtraVisions <gitadmin@xtravisions.com>, Chen Hao <chenhao@xtravisions.com>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sqlobjects"
3
- version = "1.0.13"
3
+ version = "1.0.14"
4
4
  description = "Django-style async ORM library based on SQLAlchemy with chainable queries, Q objects, and relationship loading"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -11,7 +11,7 @@ from .database.manager import get_database, get_default
11
11
  from .exceptions import convert_sqlalchemy_error
12
12
 
13
13
 
14
- __all__ = ["AsyncSession", "ctx_session", "ctx_sessions", "get_session"]
14
+ __all__ = ["AsyncSession", "ctx_session", "ctx_sessions", "get_session", "has_session"]
15
15
 
16
16
 
17
17
  # Explicit session management (highest priority)
@@ -347,3 +347,20 @@ def get_session(db_name: str | None = None, readonly: bool = True, auto_commit:
347
347
  - Create a new AsyncSession with specified parameters if no explicit session
348
348
  """
349
349
  return _SessionContextManager.get_session(db_name, readonly, auto_commit)
350
+
351
+
352
+ def has_session(db_name: str | None = None) -> bool:
353
+ """Check if an explicit session exists in current context.
354
+
355
+ Args:
356
+ db_name: Database name (uses default database if None)
357
+
358
+ Returns:
359
+ True if explicit session exists, False otherwise
360
+ """
361
+ name = db_name or get_default()
362
+ try:
363
+ explicit_sessions = _explicit_sessions.get({})
364
+ return name in explicit_sessions
365
+ except LookupError:
366
+ return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlobjects
3
- Version: 1.0.13
3
+ Version: 1.0.14
4
4
  Summary: Django-style async ORM library based on SQLAlchemy with chainable queries, Q objects, and relationship loading
5
5
  Author-email: XtraVisions <gitadmin@xtravisions.com>, Chen Hao <chenhao@xtravisions.com>
6
6
  Maintainer-email: XtraVisions <gitadmin@xtravisions.com>, Chen Hao <chenhao@xtravisions.com>
@@ -1,4 +1,3 @@
1
- CHANGELOG.md
2
1
  LICENSE
3
2
  README.md
4
3
  pyproject.toml
@@ -1,105 +0,0 @@
1
- ## 1.0.13 (2025-11-18)
2
-
3
- ## 1.0.12 (2025-11-18)
4
-
5
- ### Refactor
6
-
7
- - move rules installer to independent scripts
8
-
9
- ## 1.0.11 (2025-11-18)
10
-
11
- ### Feat
12
-
13
- - add AI assistant rules with auto-install support
14
-
15
- ## 1.0.10 (2025-11-17)
16
-
17
- ### Feat
18
-
19
- - support Model class in join methods for cleaner API
20
-
21
- ## 1.0.9 (2025-11-14)
22
-
23
- ### Feat
24
-
25
- - add optional tables parameter to create_tables/drop_tables
26
-
27
- ## 1.0.8 (2025-11-11)
28
-
29
- ### Feat
30
-
31
- - add model-level relationship loading methods
32
- - improve relation field type inference
33
- - refactor relationship proxies
34
-
35
- ## 1.0.7 (2025-10-14)
36
-
37
- ### Feat
38
-
39
- - add upsert support for PostgreSQL
40
-
41
- ### Fix
42
-
43
- - identity support for PostgreSQL
44
-
45
- ### Refactor
46
-
47
- - consolidate bulk and queryset logic
48
-
49
- ### Perf
50
-
51
- - improve bulk delete performance
52
-
53
- ## 1.0.6 (2025-10-08)
54
-
55
- ### Feat
56
-
57
- - optimize field cache and state manager
58
- - implement relationship prefetch support
59
- - add kwargs parameter support to filter/exclude/get methods
60
-
61
- ### Refactor
62
-
63
- - unify cascade for model and queryset operations
64
-
65
- ## 1.0.5 (2025-09-25)
66
-
67
- ### Fix
68
-
69
- - generate DDL using column definition order
70
-
71
- ## 1.0.4 (2025-09-25)
72
-
73
- ### Feat
74
-
75
- - remove unnecessary exception catching
76
- - implement insert or update using database upsert
77
-
78
- ### Fix
79
-
80
- - use pk column name instead of column instance for pgsql upsert
81
-
82
- ### Refactor
83
-
84
- - move field default value related methods to DataConversionMixin
85
-
86
- ## 1.0.3 (2025-09-25)
87
-
88
- ### Fix
89
-
90
- - field default/default_factory not working
91
-
92
- ## 1.0.2 (2025-09-24)
93
-
94
- ### Feat
95
-
96
- - add type support for StringColumn
97
- - add support for cascade delete in relationships
98
- - add cascade support to relationship fields
99
- - add type checking for __registry__
100
- - use base model to create database tables
101
- - init public commit
102
-
103
- ### Fix
104
-
105
- - foreign key type inference issue
File without changes
File without changes
File without changes