sqlobjects 1.0.4__tar.gz → 1.0.5__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 (56) hide show
  1. {sqlobjects-1.0.4/sqlobjects.egg-info → sqlobjects-1.0.5}/PKG-INFO +1 -1
  2. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/pyproject.toml +1 -1
  3. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/metadata.py +15 -12
  4. {sqlobjects-1.0.4 → sqlobjects-1.0.5/sqlobjects.egg-info}/PKG-INFO +1 -1
  5. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/LICENSE +0 -0
  6. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/README.md +0 -0
  7. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/setup.cfg +0 -0
  8. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/__init__.py +0 -0
  9. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/cascade.py +0 -0
  10. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/database/__init__.py +0 -0
  11. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/database/config.py +0 -0
  12. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/database/manager.py +0 -0
  13. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/exceptions.py +0 -0
  14. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/__init__.py +0 -0
  15. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/aggregate.py +0 -0
  16. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/base.py +0 -0
  17. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/function.py +0 -0
  18. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/mixins.py +0 -0
  19. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/scalar.py +0 -0
  20. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/subquery.py +0 -0
  21. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/expressions/terminal.py +0 -0
  22. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/__init__.py +0 -0
  23. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/core.py +0 -0
  24. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/functions.py +0 -0
  25. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/proxies.py +0 -0
  26. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/relations/__init__.py +0 -0
  27. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/relations/descriptors.py +0 -0
  28. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/relations/managers.py +0 -0
  29. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/relations/proxies.py +0 -0
  30. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/relations/utils.py +0 -0
  31. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/shortcuts.py +0 -0
  32. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/types/__init__.py +0 -0
  33. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/types/base.py +0 -0
  34. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/types/comparators.py +0 -0
  35. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/types/registry.py +0 -0
  36. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/fields/utils.py +0 -0
  37. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/mixins.py +0 -0
  38. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/model.py +0 -0
  39. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/objects/__init__.py +0 -0
  40. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/objects/bulk.py +0 -0
  41. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/objects/core.py +0 -0
  42. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/queries/__init__.py +0 -0
  43. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/queries/builder.py +0 -0
  44. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/queries/executor.py +0 -0
  45. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/queryset.py +0 -0
  46. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/session.py +0 -0
  47. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/signals.py +0 -0
  48. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/utils/__init__.py +0 -0
  49. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/utils/inspect.py +0 -0
  50. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/utils/naming.py +0 -0
  51. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/utils/pattern.py +0 -0
  52. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects/validators.py +0 -0
  53. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects.egg-info/SOURCES.txt +0 -0
  54. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects.egg-info/dependency_links.txt +0 -0
  55. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects.egg-info/requires.txt +0 -0
  56. {sqlobjects-1.0.4 → sqlobjects-1.0.5}/sqlobjects.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlobjects
3
- Version: 1.0.4
3
+ Version: 1.0.5
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.4"
3
+ version = "1.0.5"
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 = { text = "MIT" }
@@ -969,18 +969,21 @@ class ModelProcessor(type):
969
969
  """
970
970
 
971
971
  fields = {}
972
- for name in dir(cls):
973
- if name.startswith("_"):
974
- continue
975
- try:
976
- attr = getattr(cls, name)
977
- if is_field_definition(attr):
978
- fields[name] = attr
979
- except AttributeError:
980
- # Attribute not accessible, skip silently
981
- continue
982
- except Exception as e:
983
- raise RuntimeError(f"Unexpected error accessing {name} on {cls.__name__}: {e}") from e
972
+
973
+ for base in reversed(cls.__mro__):
974
+ for name, _ in getattr(base, "__dict__", {}).items():
975
+ if name.startswith("_"):
976
+ continue
977
+ try:
978
+ attr = getattr(cls, name)
979
+ if is_field_definition(attr):
980
+ fields[name] = attr
981
+ except AttributeError:
982
+ # Attribute not accessible, skip silently
983
+ continue
984
+ except Exception as e:
985
+ raise RuntimeError(f"Unexpected error accessing {name} on {cls.__name__}: {e}") from e
986
+
984
987
  return fields
985
988
 
986
989
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sqlobjects
3
- Version: 1.0.4
3
+ Version: 1.0.5
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>
File without changes
File without changes
File without changes