@@ -5,6 +5,62 @@ All notable changes to this project will be documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.1.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ## [ 0.1.0b4] - 2025-02-25
9+
10+ ### Added
11+ - Operation namespaces: ` client.records ` , ` client.query ` , ` client.tables ` , ` client.files ` (#102 )
12+ - ` client.files.upload() ` for file upload operations (#111 )
13+ - ` client.tables.list(filter=, select=) ` parameters (#112 )
14+ - Relationship management: ` create_one_to_many_relationship ` , ` create_many_to_many_relationship ` , ` get_relationship ` , ` delete_relationship ` , ` create_lookup_field ` (#105 , #114 )
15+ - ` RelationshipInfo ` typed return model for relationship operations (#114 )
16+ - ` client.records.upsert() ` for upsert operations (#106 )
17+ - Cascade behavior constants and input models (` CascadeConfiguration ` , ` LookupAttributeMetadata ` , etc.)
18+ - Backward compatibility test suite (` tests/integration/test_backward_compat.py ` )
19+
20+ ### Changed
21+ - Reorganized models: ` metadata.py ` split into ` relationship.py ` (relationship models) and ` labels.py ` (Label/LocalizedLabel) (#114 )
22+ - Relationship methods return ` RelationshipInfo ` dataclass instead of raw ` dict ` (#114 )
23+ - All flat methods on ` DataverseClient ` now emit ` DeprecationWarning ` and delegate to namespaced operations
24+ - ` tables.list() ` filter now wraps user filter in parentheses to prevent OData operator precedence issues (#112 )
25+
26+ ### Fixed
27+ - Installation example validation updated for current API surface (#113 )
28+ - File upload example: replaced ReportLab PDF dependency with plain text file generation (#111 )
29+ - ` if_none_match=False ` added to file replacement uploads (#111 )
30+
31+ ## [ 0.1.0b3] - 2025-12-19
32+
33+ ### Added
34+ - Client-side correlation ID and client request ID for request tracing (#70 )
35+ - Unit tests for ` DataverseClient ` (#71 )
36+
37+ ### Changed
38+ - Standardized package versioning (#84 )
39+ - Updated package link (#69 )
40+
41+ ### Fixed
42+ - Retry logic for examples (#72 )
43+ - Removed double space formatting issue (#82 )
44+ - Updated CI trigger to include main branch (#81 )
45+
46+ ## [ 0.1.0b2] - 2025-11-17
47+
48+ ### Added
49+ - Enforce Black formatting across the codebase (#61 , #62 )
50+ - Python 3.14 support added to ` pyproject.toml ` (#55 )
51+
52+ ### Changed
53+ - Removed ` pandas ` dependency (#57 )
54+ - Refactored SDK architecture and quality improvements (#55 )
55+ - Prefixed table names with schema name for consistency (#51 )
56+ - Updated docstrings across core modules (#54 , #63 )
57+
58+ ### Fixed
59+ - Fixed ` get ` for single-select option set columns (#52 )
60+ - Fixed example filename references and documentation URLs (#60 )
61+ - Fixed API documentation link in examples (#64 )
62+ - Fixed CI pipeline to use modern ` pyproject.toml ` dev dependencies (#56 , #59 )
63+
864## [ 0.1.0b1] - 2025-11-14
965
1066### Added
@@ -19,6 +75,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1975- Comprehensive error handling with specific exception types (` DataverseError ` , ` AuthenticationError ` , etc.) (#22 , #24 )
2076- HTTP retry logic with exponential backoff for resilient operations (#72 )
2177
78+ [ 0.1.0b4 ] : https://github.com/microsoft/PowerPlatform-DataverseClient-Python/compare/v0.1.0b3...v0.1.0b4
2279[ 0.1.0b3 ] : https://github.com/microsoft/PowerPlatform-DataverseClient-Python/compare/v0.1.0b2...v0.1.0b3
2380[ 0.1.0b2 ] : https://github.com/microsoft/PowerPlatform-DataverseClient-Python/compare/v0.1.0b1...v0.1.0b2
2481[ 0.1.0b1 ] : https://github.com/microsoft/PowerPlatform-DataverseClient-Python/releases/tag/v0.1.0b1
0 commit comments