Skip to content

Commit a764dd4

Browse files
update changelogs
1 parent bbf8648 commit a764dd4

File tree

1 file changed

+91
-79
lines changed

1 file changed

+91
-79
lines changed

docs/changelog.md

Lines changed: 91 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -2,38 +2,59 @@
22

33
All notable changes to ArchiPy are documented in this changelog, organized by version.
44

5+
## [0.14.0] - 2025-04-16
6+
7+
### Added
8+
9+
#### Kafka Integration
10+
- Implemented comprehensive Kafka adapter system with ports and adapters
11+
- Added test suite for Kafka adapters
12+
- Enhanced Kafka documentation with detailed usage examples
13+
14+
#### Documentation
15+
- Refactored and improved documentation structure
16+
- Added comprehensive Kafka integration guides
17+
- Enhanced docstrings for better code understanding
18+
19+
### Fixed
20+
21+
#### Code Quality
22+
- Resolved linting issues in configuration templates
23+
- Fixed lint errors in Keycloak adapters and ports
24+
525
## [0.13.5] - 2025-04-16
626

727
### Fixed
828

929
#### SQLAlchemy
10-
1130
- Resolved sorting functionality in SQLAlchemy mixin
1231
- Enhanced query sorting capabilities with improved error handling
1332

33+
#### Code Quality
34+
- Applied ruff formatter to config_template.py for consistent code style
35+
- Updated AsyncContextManager to AbstractAsyncContextManager to resolve UP035 lint error
36+
1437
## [0.13.4] - 2025-04-15
1538

1639
### Added
1740

1841
#### FastAPI Integration
19-
2042
- Implemented lifespan support for FastAPI applications
2143
- Enhanced application lifecycle management with proper startup and shutdown handlers
2244

2345
#### Database Configuration
24-
2546
- Added automatic database URL generation with validation in SqlAlchemyConfig
2647
- Improved database connection configuration with enhanced error handling
2748

2849
### Code Quality
29-
3050
- Integrated new features with comprehensive test coverage
3151
- Enhanced configuration validation and error reporting
3252

3353
### Changed
3454

3555
- Update changelogs
3656

57+
3758
### Fixed
3859

3960
#### Configs
@@ -46,24 +67,20 @@ All notable changes to ArchiPy are documented in this changelog, organized by ve
4667
### Added
4768

4869
#### CI/CD
49-
5070
- Implemented comprehensive linting workflow for improved code quality
5171
- Enhanced GitHub Actions with updated tj-actions/changed-files for better change tracking
5272

5373
#### Documentation
54-
5574
- Added detailed documentation for range DTOs and their usage patterns
5675
- Improved API reference documentation with new examples
5776

5877
### Changed
5978

6079
#### Models
61-
6280
- Enhanced range DTOs with improved type safety and validation
6381
- Updated range DTOs to support more flexible boundary conditions
6482

6583
### Code Quality
66-
6784
- Integrated automated linting for consistent code style
6885
- Improved code formatting and documentation standards
6986

@@ -105,17 +122,17 @@ All notable changes to ArchiPy are documented in this changelog, organized by ve
105122
### Features
106123

107124
- **MinIO Integration**: Full S3-compatible object storage adapter with:
108-
- Comprehensive S3 operation support (12 standardized methods)
109-
- Built-in TTL caching for performance optimization
110-
- Flexible configuration with endpoint and credential management
111-
- Clear cache management through `clear_all_caches`
125+
- Comprehensive S3 operation support (12 standardized methods)
126+
- Built-in TTL caching for performance optimization
127+
- Flexible configuration with endpoint and credential management
128+
- Clear cache management through `clear_all_caches`
112129

113130
### Testing
114131

115132
- Added complete BDD test suite for MinIO adapter:
116-
- Bucket and object operation validation
117-
- Presigned URL generation testing
118-
- Bucket policy management verification
133+
- Bucket and object operation validation
134+
- Presigned URL generation testing
135+
- Bucket policy management verification
119136

120137
### Documentation
121138

@@ -128,7 +145,6 @@ All notable changes to ArchiPy are documented in this changelog, organized by ve
128145
```python
129146
# Initialize the MinIO adapter
130147
from archipy.adapters.minio.adapters import MinioAdapter
131-
132148
minio = MinioAdapter()
133149

134150
# Create a bucket and upload a file
@@ -144,11 +160,11 @@ download_url = minio.presigned_get_object("my-bucket", "document.pdf", expires=3
144160
### Features
145161

146162
- **Keycloak Integration**: Comprehensive authentication and authorization for FastAPI:
147-
- Role-based access control with customizable requirements
148-
- Resource-based authorization for fine-grained access control
149-
- Both synchronous and asynchronous authentication flows
150-
- Token validation and introspection
151-
- User info extraction capabilities
163+
- Role-based access control with customizable requirements
164+
- Resource-based authorization for fine-grained access control
165+
- Both synchronous and asynchronous authentication flows
166+
- Token validation and introspection
167+
- User info extraction capabilities
152168

153169
### Code Quality
154170

@@ -164,7 +180,6 @@ from archipy.helpers.utils.keycloak_utils import KeycloakUtils
164180

165181
app = FastAPI()
166182

167-
168183
@app.get("/api/profile")
169184
def get_profile(user: dict = Depends(KeycloakUtils.fastapi_auth(
170185
required_roles={"user"},
@@ -197,10 +212,10 @@ def get_profile(user: dict = Depends(KeycloakUtils.fastapi_auth(
197212
### Features
198213

199214
- **Keycloak Adapter**: New authentication and authorization system:
200-
- Asynchronous operations support
201-
- Token management and validation
202-
- User information retrieval
203-
- Comprehensive security features
215+
- Asynchronous operations support
216+
- Token management and validation
217+
- User information retrieval
218+
- Comprehensive security features
204219

205220
### Performance
206221

@@ -251,16 +266,16 @@ is_valid = keycloak.validate_token(token)
251266
### Features
252267

253268
- **Redis Integration**: New caching and key-value storage system:
254-
- Flexible key-value operations
255-
- Built-in TTL support
256-
- Connection pooling
257-
- Comprehensive error handling
269+
- Flexible key-value operations
270+
- Built-in TTL support
271+
- Connection pooling
272+
- Comprehensive error handling
258273

259274
- **Email Service**: New email integration system:
260-
- Multiple email provider support
261-
- Template-based email sending
262-
- Attachment handling
263-
- Async operation support
275+
- Multiple email provider support
276+
- Template-based email sending
277+
- Attachment handling
278+
- Async operation support
264279

265280
### Configuration
266281

@@ -273,7 +288,6 @@ is_valid = keycloak.validate_token(token)
273288
```python
274289
# Initialize the Redis adapter
275290
from archipy.adapters.redis.adapters import RedisAdapter
276-
277291
redis = RedisAdapter()
278292

279293
# Basic operations
@@ -289,15 +303,15 @@ redis.set("session:token", "abc123", ttl=3600) # Expires in 1 hour
289303
### Security
290304

291305
- **TOTP System**: Comprehensive Time-based One-Time Password implementation:
292-
- Secure token generation and validation
293-
- Configurable time windows
294-
- Built-in expiration handling
295-
- RFC compliance
306+
- Secure token generation and validation
307+
- Configurable time windows
308+
- Built-in expiration handling
309+
- RFC compliance
296310

297311
- **Multi-Factor Authentication**: Enhanced security framework:
298-
- Multiple authentication factor support
299-
- Flexible factor configuration
300-
- Integration with existing auth systems
312+
- Multiple authentication factor support
313+
- Flexible factor configuration
314+
- Integration with existing auth systems
301315

302316
### Usage Example
303317

@@ -321,17 +335,17 @@ secret_key = TOTPUtils.generate_secret_key_for_totp()
321335
### Features
322336

323337
- **Redis Integration**: Comprehensive key-value store and caching system:
324-
- Full Redis API implementation
325-
- Built-in caching functionality
326-
- Performance-optimized operations
327-
- Connection pooling support
338+
- Full Redis API implementation
339+
- Built-in caching functionality
340+
- Performance-optimized operations
341+
- Connection pooling support
328342

329343
### Testing
330344

331345
- **Mock Redis Implementation**:
332-
- Complete test coverage for Redis operations
333-
- Simulated Redis environment for testing
334-
- Configurable mock behaviors
346+
- Complete test coverage for Redis operations
347+
- Simulated Redis environment for testing
348+
- Configurable mock behaviors
335349

336350
### Documentation
337351

@@ -362,10 +376,10 @@ secret_key = TOTPUtils.generate_secret_key_for_totp()
362376
### Features
363377

364378
- **SQLAlchemy Integration**: Complete ORM implementation:
365-
- Robust entity model system
366-
- Transaction management with ACID compliance
367-
- Connection pooling with configurable settings
368-
- Comprehensive database operations support
379+
- Robust entity model system
380+
- Transaction management with ACID compliance
381+
- Connection pooling with configurable settings
382+
- Comprehensive database operations support
369383

370384
### Usage Example
371385

@@ -374,14 +388,12 @@ from archipy.adapters.orm.sqlalchemy.adapters import SQLAlchemyAdapter
374388
from archipy.models.entities.sqlalchemy.base_entities import BaseEntity
375389
from sqlalchemy import Column, String
376390

377-
378391
# Define a model
379392
class User(BaseEntity):
380393
__tablename__ = "users"
381394
name = Column(String(100))
382395
email = Column(String(100), unique=True)
383396

384-
385397
# Use the ORM
386398
orm = SQLAlchemyAdapter()
387399
with orm.session() as session:
@@ -407,10 +419,10 @@ with orm.session() as session:
407419
### Features
408420

409421
- **gRPC Integration**: Comprehensive interceptor system:
410-
- Client and server-side interceptors
411-
- Request/response monitoring
412-
- Performance tracing capabilities
413-
- Enhanced error management
422+
- Client and server-side interceptors
423+
- Request/response monitoring
424+
- Performance tracing capabilities
425+
- Enhanced error management
414426

415427
### Documentation
416428

@@ -432,10 +444,10 @@ with orm.session() as session:
432444
### Features
433445

434446
- **FastAPI Integration**: Complete web framework support:
435-
- Custom middleware components
436-
- Request/response processors
437-
- Standardized error handling
438-
- Response formatting utilities
447+
- Custom middleware components
448+
- Request/response processors
449+
- Standardized error handling
450+
- Response formatting utilities
439451

440452
### Documentation
441453

@@ -448,10 +460,10 @@ with orm.session() as session:
448460
### Features
449461

450462
- **Configuration System**: Flexible environment management:
451-
- Environment variable support
452-
- Type-safe configuration validation
453-
- Default value management
454-
- Override capabilities
463+
- Environment variable support
464+
- Type-safe configuration validation
465+
- Default value management
466+
- Override capabilities
455467

456468
### Documentation
457469

@@ -464,10 +476,10 @@ with orm.session() as session:
464476
### Features
465477

466478
- **Core Utilities**: Comprehensive helper functions:
467-
- Date/time manipulation with timezone support
468-
- String processing and formatting
469-
- Common development utilities
470-
- Type conversion helpers
479+
- Date/time manipulation with timezone support
480+
- String processing and formatting
481+
- Common development utilities
482+
- Type conversion helpers
471483

472484
### Documentation
473485

@@ -480,10 +492,10 @@ with orm.session() as session:
480492
### Architecture
481493

482494
- **Hexagonal Architecture**: Core implementation:
483-
- Ports and adapters pattern
484-
- Clean architecture principles
485-
- Domain-driven design
486-
- Base entity models
495+
- Ports and adapters pattern
496+
- Clean architecture principles
497+
- Domain-driven design
498+
- Base entity models
487499

488500
### Documentation
489501

@@ -496,10 +508,10 @@ with orm.session() as session:
496508
### Features
497509

498510
- **Initial Release**: Project foundation:
499-
- Core project structure
500-
- Basic framework components
501-
- Configuration system
502-
- CI/CD pipeline with GitHub Actions
511+
- Core project structure
512+
- Basic framework components
513+
- Configuration system
514+
- CI/CD pipeline with GitHub Actions
503515

504516
### Documentation
505517

0 commit comments

Comments
 (0)