@@ -5,6 +5,53 @@ 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.0.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ## [ 1.2.5] - 2025-12-01
9+
10+ ### 🔐 Microsoft OAuth Support
11+
12+ Patch release adding full support for Microsoft Azure AD / Entra ID as OAuth provider.
13+
14+ ### Fixed
15+
16+ - ** Microsoft OAuth Authentication**
17+ - Fixed "missing email in user info response" error with Microsoft Graph API
18+ - Added support for ` mail ` field (Microsoft) as fallback for ` email ` (OIDC standard)
19+ - Added support for ` userPrincipalName ` as last resort email fallback
20+ - Added support for ` displayName ` (camelCase) for Microsoft user names
21+ - Email field priority: ` email ` → ` mail ` → ` userPrincipalName `
22+ - Name field priority: ` name ` → ` given_name ` +` family_name ` → ` displayName ` → ` cn ` → ` display_name ` → ` preferred_username `
23+
24+ ### Technical Details
25+
26+ - Modified ` parseUserInfo() ` in ` backend/internal/infrastructure/auth/oauth_provider.go `
27+ - Added 3 new test cases for Microsoft Graph API response formats
28+ - 100% backward compatible with existing OAuth providers (Google, GitHub, GitLab, custom)
29+
30+ ## [ 1.2.4] - 2025-11-28
31+
32+ ### 📄 CSV Signers Import
33+
34+ Minor release adding the ability to import expected signers from a CSV file.
35+
36+ ### Added
37+
38+ - ** CSV Import for Expected Signers**
39+ - CSV file upload directly from admin interface
40+ - Data preview before import with validation
41+ - Automatic separator detection (comma or semicolon)
42+ - Smart column detection (email, name)
43+ - Support for files with or without headers
44+ - Email validation with detailed error report
45+ - Selective import: ability to modify list before confirmation
46+ - Configurable limit on number of signers per import (` ACKIFY_IMPORT_MAX_SIGNERS ` , default: 500)
47+
48+ ### Technical Details
49+
50+ - New ` CSVParser ` service for robust CSV file parsing
51+ - API endpoints: ` POST /api/v1/admin/documents/{docId}/signers/preview-csv ` and ` POST /api/v1/admin/documents/{docId}/signers/import `
52+ - Drag-and-drop upload interface for CSV files
53+ - Preview modal with valid/invalid signers table
54+
855## [ 1.2.3] - 2025-11-24
956
1057### 🧪 Quality & Stability
@@ -482,6 +529,9 @@ For users upgrading from v1.1.x to v1.2.0:
482529- NULL UserName handling in database operations
483530- Proper string conversion for UserName field
484531
532+ [ 1.2.5 ] : https://github.com/btouchard/ackify-ce/compare/v1.2.4...v1.2.5
533+ [ 1.2.4 ] : https://github.com/btouchard/ackify-ce/compare/v1.2.3...v1.2.4
534+ [ 1.2.3 ] : https://github.com/btouchard/ackify-ce/compare/v1.2.1...v1.2.3
485535[ 1.2.1 ] : https://github.com/btouchard/ackify-ce/compare/v1.2.0...v1.2.1
486536[ 1.2.0 ] : https://github.com/btouchard/ackify-ce/compare/v1.1.3...v1.2.0
487537[ 1.1.3 ] : https://github.com/btouchard/ackify-ce/compare/v1.1.2...v1.1.3
0 commit comments