Skip to content

Commit 2b1481c

Browse files
committed
chore: Changelog
1 parent d680f2b commit 2b1481c

3 files changed

Lines changed: 69 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [1.5.4] - 2025-12-17
9+
10+
### Added
11+
- Custom serialization for specific columns via `serialize_columns` parameter
12+
- Supports per-call customization: `to_dict(serialize_columns={'field': lambda v: ...})`
13+
- Supports model-level defaults: `serialize_columns = {'field': lambda v: ...}` class attribute
14+
- Custom serializers receive the field value and return the serialized result
15+
16+
## [1.5.3] - 2025-12-16
17+
18+
### Added
19+
- `max_serialization_depth` parameter to control relationship recursion depth
20+
- Per-call usage: `to_dict(max_serialization_depth=1)`
21+
- Model-level default: `max_serialization_depth = 1` class attribute
22+
- Defaults to unlimited (`math.inf`) for backward compatibility
23+
- Prevents infinite recursion in models with circular relationships
24+
25+
## [1.5.2] - 2025-12-13
26+
27+
### Added
28+
- `exclude_values` parameter to filter out specific values from serialized output
29+
- Supports per-call usage: `to_dict(exclude_values=(None,))`
30+
- Supports model-level defaults: `exclude_values = (None,)` class attribute
31+
- Works with nested dictionaries and models
32+
- Only supports hashable values
33+
34+
## [1.5.0] - 2025-12-13
35+
36+
### Added
37+
- Enhanced rules and documentation
38+
- Additional test coverage
39+
- UV package manager support
40+
- GitHub Actions workflow improvements with coverage reporting
41+
- PyPI readiness tests and make commands
42+
43+
### Changed
44+
- Updated GitHub Actions workflow to use `uv` for dependency installation and linting
45+
- Improved test infrastructure and fixtures
46+
47+
## [1.4.22] - 2024-07-03
48+
49+
### Fixed
50+
- Various bug fixes and improvements from earlier versions
51+
52+
---
53+
54+
## Unreleased
55+
56+
### Added
57+
- (Future features will be listed here)
58+
59+
### Changed
60+
- (Future changes will be listed here)
61+
62+
### Fixed
63+
- (Future fixes will be listed here)
64+
65+
### Removed
66+
- (Future removals will be listed here)
67+

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "sqlalchemy-serializer"
3-
version = "1.5.3"
3+
version = "1.5.4"
44
description = "Mixin for SQLAlchemy models serialization without pain"
55
authors = [
66
{name = "yuri.boiko", email = "yuri.boiko.dev@gmail.com"}

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)