11# Changelog
22
3- ** Version:** 4.0.0
4- ** Date:** December 12 , 2025
3+ ** Version:** 4.1.0
4+ ** Date:** December 18 , 2025
55** SPDX-License-Identifier:** BSD-3-Clause<br >
66** License File:** See the LICENSE file in the project root.<br >
7- ** Copyright:** © 2025 Michael Gardner, A Bit of Help, Inc.<br >
8- ** Status:** Released
7+ ** Copyright:** © 2025 Michael Gardner, A Bit of Help, Inc.<br >
8+ ** Status:** Released
99
1010All notable changes to this project will be documented in this file.
1111
@@ -14,9 +14,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1414
1515## [ Unreleased]
1616
17+ ---
18+
19+ ## [ 4.1.0] - 2025-12-18
20+
1721### Deprecated
1822
19- #### Result-based Try functions
23+ #### Result-based Try functions (procedural Map_Exception pattern)
2024- ` Try_To_Result ` - Use ` Functional.Try.Map_To_Result `
2125- ` Try_To_Any_Result_With_Param ` - Use ` Functional.Try.Map_To_Result_With_Param `
2226- ` Try_To_Functional_Result ` - Use ` Functional.Try.Map_To_Result `
@@ -27,13 +31,18 @@ maintainable than procedural `Map_Exception` functions (code). The Map
2731versions use a mapping array that is self-documenting and allows multiple
2832exception-to-error-kind discriminations without if/elsif chains.
2933
30- #### Option-based Try functions
31- - ` Try_To_Functional_Option ` - Use ` Functional.Try.Map_To_Result ` with default
32- - ` Try_To_Option_With_Param ` - Use ` Functional.Try.Map_To_Result_With_Param ` with default
34+ ** Note:** Option-based Try functions (` Try_To_Functional_Option ` ,
35+ ` Try_To_Option_With_Param ` ) are NOT deprecated. They serve valid use cases
36+ for "probe" operations with sensible defaults where error details don't matter.
37+
38+ ### Changed
3339
34- ** Rationale:** Discarding exception context loses debuggability. Prefer
35- Result with explicit ` Unwrap_Or ` at call site to preserve error information
36- while still providing default fallback behavior.
40+ - ` Functional.Try.To_Result ` - Reimplemented with inline exception handling
41+ instead of delegating to deprecated ` Try_To_Functional_Result ` . This eliminates
42+ deprecation warnings when building the functional library itself.
43+ - ` Functional.Try.To_Option ` - Reimplemented with inline exception handling
44+ instead of delegating to ` Try_To_Functional_Option ` (consistency).
45+ - Added "When to Use Option" documentation section to ` functional-try.ads `
3746
3847---
3948
0 commit comments