You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: abi3 wheels for py3.10+ and drop unused exports (#1702) (#1)
Build a single CPython stable-ABI (abi3-py310) wheel per platform via pyo3's
abi3-py310 feature, so a new Python release (3.14 and beyond) never leaves ormar
without an installable wheel — the root cause of the missing cp314 build.
Remove four exports that ormar does not use (extract_prefixed_columns,
prepare_model_to_save, translate_columns_to_aliases, translate_aliases_to_columns)
along with their modules and tests; ormar's full suite passes against the
trimmed build.
Production hardening: mandatory CI lint (cargo fmt --check, clippy, ruff),
test matrix extended to Python 3.14 and Windows, abi3 single-wheel build plus
sdist, and the broken repository URLs are corrected.
Copy file name to clipboardExpand all lines: README.md
+7-4Lines changed: 7 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# ormar-utils
2
2
3
-
Rust-accelerated utility functions for the [ormar](https://github.com/collerek/ormar) async ORM.
3
+
Rust-accelerated utility functions for the [ormar](https://github.com/ormar-orm/ormar) async ORM.
4
4
5
5
This package provides optional Rust implementations of performance-critical operations used internally by ormar. When installed, ormar automatically uses these faster implementations.
6
6
@@ -21,6 +21,10 @@ pip install ormar[rust]
21
21
- Python >= 3.10
22
22
- A Rust toolchain (for building from source)
23
23
24
+
Wheels are built against the CPython stable ABI (`abi3`, Python 3.10+), so a
25
+
single wheel per platform works on current and future Python releases without a
26
+
per-version rebuild.
27
+
24
28
## API Reference
25
29
26
30
All functions are exposed from the `ormar_rust_utils` module:
@@ -40,9 +44,8 @@ All functions are exposed from the `ormar_rust_utils` module:
40
44
### Collections
41
45
-`UniqueList(initial=None)` - A list that prevents duplicates using hash-based O(1) lookups
42
46
43
-
### Row Processing
44
-
-`extract_prefixed_columns(column_mappings, selected_columns, row, column_prefix, item)` - Extract prefixed columns from a database row
45
-
-`prepare_model_to_save(new_kwargs, aliases_map, fields_to_keep)` - Consolidate column alias translation and field filtering
47
+
### Alias Utilities
48
+
-`build_reverse_alias_map(field_alias_map)` - Build a cached alias -> field_name lookup (with identity entries) from a field_name -> alias mapping
46
49
47
50
### Merge Infrastructure
48
51
-`group_by_pk(pks)` - Group items by PK hash, preserving insertion order
0 commit comments