Skip to content

Commit e213939

Browse files
fredericDelaportegliljashazzik
authored
Release 5.4.0 (nhibernate#3196)
fix nhibernate#3195 Co-authored-by: Gunnar Liljas <[email protected]> Co-authored-by: Alex Zaytsev <[email protected]>
1 parent 0672320 commit e213939

File tree

4 files changed

+192
-3
lines changed

4 files changed

+192
-3
lines changed

GitReleaseManager.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ issue-labels-exclude:
1313
- "r: Obsolete"
1414
- "r: Rejected"
1515
- "r: Replaced"
16+
- "r: Reverted"
1617
- "t: Fix"
1718
issue-labels-alias:
1819
- name: "t: Bug"

ReleaseProcedure.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ These are the tasks typically needed to create an official NHibernate release.
33
* In GitHub, make sure no open issues have milestone set to the release
44
that is about to happen (as these will show in the milestone).
55

6-
* Restore local dotnet tools: `dotnet tool restore`
6+
* From inside nhibernate-core folder, restore local dotnet tools: `dotnet tool restore`
77

88
* Create a draft release in Github with GitReleaseManager. For example:
99

build-common/NHibernate.props

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<NhVersion Condition="'$(NhVersion)' == ''" >5.4</NhVersion>
66
<VersionPatch Condition="'$(VersionPatch)' == ''">0</VersionPatch>
77
<!-- Clear VersionSuffix for making release and set it to dev for making development builds -->
8-
<VersionSuffix Condition="'$(VersionSuffix)' == ''">dev</VersionSuffix>
8+
<VersionSuffix Condition="'$(VersionSuffix)' == ''"></VersionSuffix>
99
<LangVersion Condition="'$(MSBuildProjectExtension)' != '.vbproj'">9.0</LangVersion>
1010

1111
<VersionPrefix Condition="'$(VersionPrefix)' == ''">$(NhVersion).$(VersionPatch)</VersionPrefix>

releasenotes.txt

+189-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,192 @@
1-
Build 5.3.14
1+
Build 5.4.0
2+
=============================
3+
4+
Release notes - NHibernate - Version 5.4.0
5+
6+
** Highlights
7+
* NHibernate has gained three new target frameworks: .Net 6, .Net Framework 4.8 and .Net Standard 2.1. NHibernate NuGet package
8+
provides them, along with the older targets, .Net Core 2.0, .Net Framework 4.6.1 and .Net Standard 2.0. These new targets allow
9+
some NHibernate optimizations for applications using them. The same limitations apply for .Net 6 and .Net Standard 2.1 as for
10+
.Net Core 2.0 and .Net Standard 2.0, see NHibernate 5.1.0 release notes.
11+
* A new batching strategy is available, minimizing the batching memory footprint. See #2959. Using it may increase CPU usage.
12+
* 201 issues were resolved in this release.
13+
14+
##### Possible Breaking Changes #####
15+
* Linq and criteria queries on unmapped entities will throw instead of returning an empty result list. See #1106, #1095.
16+
* The second level cache UpdateTimestampsCache does not use locks anymore. This may slightly increase the number of cases
17+
where stale data is returned by the query cache. See #2742.
18+
* Equality and hashcode access on uninitialized persistent collections will no more trigger their loading. See #2461.
19+
* DB2CoreDriver now uses named parameters instead of positional ones. See #2546.
20+
21+
** Bug
22+
23+
* #3198 EntityUpdateAction increments version despite veto on update
24+
* #3189 Support proxies of classes with init properties
25+
* #3188 No way of detecting if AutoFlush performed in added AutoFlushEventListener
26+
* #3176 Cached entity always fetches lazy properties with read-write concurrency strategy
27+
* #3156 Evaluation failure when using `Nullable` without a value in LINQ
28+
* #3150 LINQ query dynamic component by interface hangs the application
29+
* #3109 Fix table group join issue with subclasses
30+
* #3104 Inner Join fails with left Outer Join when referenced in Where clause
31+
* #3076 Nested group by results in "A recognition error occured"
32+
* #2968 Fix QueryStatistics.ExecutionAvgTime calculation
33+
* #2827 Fix BadImageFormatException in dynamic proxies for abstract classes and interfaces
34+
* #2822 "A recognition error ocurred" querying by a nullable component with more than N properties
35+
* #2758 Fix AmbiguousMatchException in ClearPool with FirebirdClient 6.6.0 and above
36+
* #2750 Using System.Transaction with IStatelessSession doesn't always flush batches to database
37+
* #2738 Unused Left Join in LINQ throws exception
38+
* #2717 MappingByCode discriminator column with string type throws exception
39+
* #2675 Fix collection lazy loading with composite keys on subclass columns
40+
* #2672 Linq query failure with left joins
41+
* #2619 InvalidOperationException in ProxyGenerator for class with generic non-virtual method
42+
* #2614 Obvious bug in two HQLQueryPlan classes with distinction Set
43+
* #2594 Wrong SQL produced by DML LINQ when using a select clause for a property referencing the outer select
44+
* #2555 Add spaces around concat operator
45+
* #2552 One-to-one second level cache issue
46+
* #2548 Mark DB2Dialect as not supporting null columns in unique constraint
47+
* #2547 Fix paging in DB2Dialect
48+
* #2540 Unable to use external predicate in subquery
49+
* #2534 Fix asymmetrical SqlType.Equals
50+
* #2454 ConditionalProjection containing the correlation to outer query fails to determine projection type
51+
* #2330 join on multiple conditions
52+
* #2201 Fetch Join generates incorrect SQL joins for the same entity type
53+
* #2092 Projection and join fetch in hql leads to duplicated column aliases
54+
* #1365 NH-3288 - Stale data checking does not work for one-to-one associations
55+
* #1349 NH-3893 - HQL parse error of a query with 'left' or 'right' function
56+
* #1326 NH-3622 - Fetching in query causes incorrect/missing joins in subquery
57+
* #1316 NH-3530 - memory when using default_batch_fetch_size
58+
* #1235 NH-2785 - StaleStateExceptions discarded on optional <join> table
59+
* #1215 NH-2208 - Error with filters on joined-subclass as many-to-one
60+
* #1209 NH-2049 - Error with filters on joined-subclass as one-to-one
61+
* #1180 NH-3847 - ConditionalProjection throws "Both true and false projections must return the same types" when the types are the same
62+
* #1106 NH-2978 - LINQ: Queries for unmapped entity types return empty result set
63+
* #1075 NH-2239 - Wrong OrderBy in generated SQL when using ICriteria, Eager fetching and order by clauses in collection mappings
64+
* #1072 NH-2174 - Invalid SQL is generated for OneToMany collections
65+
* #1062 NH-1893 - Trigger-Identity with Dynamic Insert throws ORA-01036 (10g)
66+
67+
** New Feature
68+
69+
* #2959 Support Dynamic BatchFetchStyle
70+
* #2744 Set which entities classes should never be cached, even indirectly
71+
* #2737 Add more left join support
72+
* #2645 Allow specifying the size of the query plan cache
73+
* #2641 Avoid InvalidCastException with Oracle number high precision values
74+
* #2551 Add support for joining a subquery in hql
75+
* #2545 Table group joins for subclasses in Criteria
76+
* #2486 Add Projections.Select in Criteria
77+
* #2361 Table group joins support in hql
78+
79+
** Improvement
80+
81+
* #3184 Support caching queries with autodiscovered types
82+
* #3177 Disable default caching in tests
83+
* #3160 Allow internal entity classess/interfaces in .NET Standard 2.0
84+
* #3133 Automatically generate async code on pull request
85+
* #3127 Register IType CLR types as aliases
86+
* #3116 Simplify SqlGenerator.FromFragmentSeparator
87+
* #3114 Exclude generated async files from Deepsource analysis
88+
* #3106 Skip table group join processing for implicit join
89+
* #3091 Use GitReleaseManager dotnet tool
90+
* #3083 Update SHFB in order to build documentation without MSBuild
91+
* #3050 Add .NET Standard 2.1 target
92+
* #3027 Avoid allocations on lock in SyncCacheLock
93+
* #3000 Add .NET 6 and .NET Framework 4.8 targets
94+
* #2990 Use inner join instead of implicit join for implied entity joins
95+
* #2957 Avoid lambda compilation as much as possible
96+
* #2948 Avoid lambda compilation for member access expressions in LINQ
97+
* #2947 LINQ queries triggers JIT a bit too much
98+
* #2920 Add parameter type to ADO exception
99+
* #2804 Projections.Conditional for CASE expressions with multiple conditions
100+
* #2752 Change cascade style for DefaultDirtyCheckEventListener to persist to avoid flushing the session
101+
* #2742 Remove locks from UpdateTimestampsCache
102+
* #2723 Avoid double param type guessing and better NULL parameter handling in LINQ
103+
* #2706 Set the rolledBack flag when disposing active transactions
104+
* #2700 Potential improvement to AliasToBeanResultTransformer
105+
* #2621 Regression bug with enums used as parameter for string column
106+
* #2571 Default value for CancellationToken in IQueryBatch.GetResultAsync
107+
* #2568 Support internal entity classes by proxy factory
108+
* #2556 Register right function for Firebird and PostgreSQL
109+
* #2546 Enable named parameters on DB2CoreDriver
110+
* #2539 Skip no longer needed moving ON condition to Where clause in LINQ
111+
* #2538 Remove no longer needed alias substitution for filtered many-to-many collection in hql
112+
* #2518 Support Aggregate subqueries with paging on MS SQL Server
113+
* #2510 Remove OrderByClause from query models with Contains, All and Any result operators
114+
* #2492 Replace casting with NodeType checks in Criteria ExpressionProcessor
115+
* #2479 When using a paged sub-query in Linq, generates incorrect SQL
116+
* #2461 Remove persistent collections Equals/GetHashCode overrides
117+
* #2460 Simplify single alias retrieval for SimpleProjections
118+
* #2448 Avoid lambda compilation for constant and member access expressions in Criteria
119+
* #1285 NH-3249 - Cannot perform HQL with "COUNT(DISTINCT Date(s.Date))"
120+
* #1244 NH-2868 - Generate method of ForeignGenerator fails with stateless sessions
121+
* #1095 NH-2829 - QueryOver/Criteria should throw exception when querying against unmapped class
122+
* #871 NH-3115 - Should de-duplicate joins when using fetching with where in LINQ query
123+
* #869 NH-2952 - Setting the SqlCheck is not supported in the ByCode mapping
124+
* #809 NH-2799 - Provide the CancelQuery() method in IStatelessSession
125+
* #766 NH-3813 - Eager fetch on key-many-to-one relation adds inner joins to the query
126+
* #715 NH-1040 - property-ref on joined-subclasses should work or error
127+
128+
** Task
129+
130+
* #3197 Update dependency System.Data.SqlClient to v4.8.5
131+
* #3195 Release NHibernate 5.4
132+
* #3161 Tell NuGet about the readme file
133+
* #3147 Add `datetimex` keyword to SapSQLAnywhere17Dialect
134+
* #3146 Run tests against Oracle XE 21c
135+
* #3123 Update dependency Npgsql to v6
136+
* #3121 Update dependency Microsoft.NETFramework.ReferenceAssemblies to v1.0.3
137+
* #3119 Update actions/setup-dotnet action to v2
138+
* #3118 Update actions/checkout action to v3
139+
* #3117 Update dependency NSubstitute to v4.4.0
140+
* #3111 Update dependency log4net to v2.0.15
141+
* #3080 Replace Dependabot with Renovate
142+
* #3063 Bump Oracle.ManagedDataAccess from 19.12.0 to 21.6.1
143+
* #3061 Bump Oracle.ManagedDataAccess.Core from 2.19.120 to 3.21.61
144+
* #3059 Bump log4net from 2.0.12 to 2.0.14
145+
* #3057 Run tests using .NET 4.8
146+
* #3017 Add deepsource.io code analysis
147+
* #3002 Bump NUnit3TestAdapter from 4.1.0 to 4.2.1
148+
* #2987 Disable auto rebasing for depandabot PRs
149+
* #2951 Run tests on .NET 6
150+
* #2946 Bump Microsoft.SourceLink.GitHub from 1.0.0 to 1.1.1
151+
* #2936 Bump System.Data.SQLite.Core from 1.0.114.3 to 1.0.115.5
152+
* #2911 Bump System.Data.SqlClient from 4.8.2 to 4.8.3
153+
* #2898 Bump FirebirdSql.Data.FirebirdClient from 6.6.0 to 8.5.2
154+
* #2887 Bump Oracle.ManagedDataAccess from 19.11.0 to 19.12.0
155+
* #2886 Bump Oracle.ManagedDataAccess.Core from 2.19.110 to 2.19.120
156+
* #2878 Bump System.Linq.Dynamic.Core from 1.2.10 to 1.2.12
157+
* #2870 Bump MySql.Data from 8.0.25 to 8.0.26
158+
* #2851 Cache Dialect in tests
159+
* #2818 Bump Microsoft.Data.SqlClient from 2.1.3 to 3.0.0
160+
* #2800 Bump System.Data.SQLite.Core from 1.0.113.7 to 1.0.114.2
161+
* #2799 Bump Npgsql from 4.0.3 to 4.1.9
162+
* #2796 Bump System.Linq.Dynamic.Core from 1.2.9 to 1.2.10
163+
* #2790 Bump Microsoft.NET.Test.Sdk from 16.9.4 to 16.10.0
164+
* #2786 Bump Microsoft.Data.SqlClient from 2.1.2 to 2.1.3
165+
* #2771 Bump MySql.Data from 8.0.22 to 8.0.25
166+
* #2770 Bump System.Data.SQLite.Core from 1.0.109.2 to 1.0.113.7
167+
* #2765 Bump Microsoft.NETFramework.ReferenceAssemblies from 1.0.0 to 1.0.2
168+
* #2759 Enable dependabot
169+
* #2756 Update dependencies
170+
* #2607 Merge 5.3.5
171+
* #2605 Upgrade AsyncGenerator to 0.19.1
172+
* #2593 Merge 5.3.4
173+
* #2582 Remove no longer used code in QueryModelVisitor
174+
* #2570 Update Relinq and LinFu links
175+
* #2516 Suppress Codefactor single class per file rule for test project
176+
* #2501 Upgrade MySql client and remove allowed failures on CI builds
177+
178+
** Tests
179+
180+
* #3024 Enable test accessing Component's Parent property in LINQ
181+
* #2921 Fix test for SAP SQL Anywhere
182+
* #2848 Add Oracle to GitHub Actions
183+
* #2541 LINQ SELECT tests with WHERE subquery
184+
* #2489 Improve CriteriaAssertFixture
185+
* #2456 Test case for #1180 and improve NullableType.ToString
186+
* #2242 Test case for NH-3972 - SQL error when selecting a column of a subclass when sibling classes have a column of the same name
187+
188+
189+
Build 5.3.14
2190
=============================
3191

4192
Release notes - NHibernate - Version 5.3.14

0 commit comments

Comments
 (0)