Skip to content

Commit de8c0b0

Browse files
committed
Merge remote-tracking branch 'upstream/master' into nuget
# Conflicts: # Tools/ilrepack/ILRepack.exe
2 parents fca1513 + 8671389 commit de8c0b0

File tree

134 files changed

+3803
-1823
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

134 files changed

+3803
-1823
lines changed

build-common/common.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,11 @@
5252
effectively SP0).
5353
-->
5454

55-
<property name="project.version" value="4.1.0.Alpha1" overwrite="false" />
55+
<property name="project.version" value="5.0.0.Alpha1" overwrite="false" />
5656

5757
<!-- This version number should be changed if, but only if, there are incompatible
5858
changes compared to the previous version. -->
59-
<property name="project.default-assembly-version" value="4.1.0.1001" overwrite="false" />
59+
<property name="project.default-assembly-version" value="5.0.0.1001" overwrite="false" />
6060

6161
<!-- Compute short project version (major.minor) using a regex -->
6262
<regex input="${project.version}" pattern="^(?'shortversion'\d+\.\d+)" />
@@ -196,7 +196,7 @@
196196
<property name="link.sdkdoc.version" value="SDK_v1_1" />
197197
<!-- merge should work with 4.0 when compiling for 4.0 -->
198198
<property name="merge.targetplatform" value="v4" />
199-
<property name="referenceassemblies.dir" value="${environment::get-folder-path('ProgramFiles')}\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0" />
199+
<property name="referenceassemblies.dir" value="${environment::get-folder-path('ProgramFiles')}\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1" />
200200
</target>
201201

202202
<target name="set-net-3.5-framework-configuration">

doc/reference/modules/configuration.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ ISession session = sessions.OpenSession(conn);
203203
<tbody>
204204
<row>
205205
<entry>
206-
<literal>connection.provider_class</literal>
206+
<literal>connection.provider</literal>
207207
</entry>
208208
<entry>
209209
The type of a custom <literal>IConnectionProvider</literal>.
@@ -346,7 +346,7 @@ ISession session = sessions.OpenSession(conn);
346346
<para>
347347
You may define your own plugin strategy for obtaining ADO.NET connections by implementing the
348348
interface <literal>NHibernate.Connection.IConnectionProvider</literal>. You may select
349-
a custom implementation by setting <literal>connection.provider_class</literal>.
349+
a custom implementation by setting <literal>connection.provider</literal>.
350350
</para>
351351

352352
</sect1>

lib/teamcity/sqlServerOdbc/NHibernate.Test.last-results.xml

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9856,12 +9856,20 @@ TearDown : NHibernate.Exceptions.GenericADOException : could not load an entity:
98569856
</test-suite>
98579857
</results>
98589858
</test-suite>
9859-
<test-suite type="Namespace" name="NH1756" executed="True" result="Success" success="True" asserts="0">
9859+
<test-suite type="Namespace" name="NH1756" executed="True" result="Failure" success="False" asserts="0">
98609860
<results>
9861-
<test-suite type="TestFixture" name="Fixture" executed="True" result="Success" success="True" asserts="0">
9861+
<test-suite type="TestFixture" name="Fixture" executed="True" result="Failure" success="False" asserts="0">
98629862
<results>
9863-
<test-case name="NHibernate.Test.NHSpecificTest.NH1756.Fixture.SaveTransient_Then_Update" description="Work with AutoFlush on commit" executed="True" result="Success" success="True" asserts="0" />
9864-
<test-case name="NHibernate.Test.NHSpecificTest.NH1756.Fixture.SaveTransient_Then_Update_Bug" executed="True" result="Success" success="True" asserts="0" />
9863+
<test-case name="NHibernate.Test.NHSpecificTest.NH1756.Fixture.SaveTransient_Then_Update" description="Work with AutoFlush on commit" executed="True" result="Error" success="False" asserts="0">
9864+
<failure>
9865+
<message><![CDATA[NHibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [NHibernate.Test.NHSpecificTest.NH1756.Book#1]]]></message>
9866+
</failure>
9867+
</test-case>
9868+
<test-case name="NHibernate.Test.NHSpecificTest.NH1756.Fixture.SaveTransient_Then_Update_Bug" executed="True" result="Error" success="False" asserts="0">
9869+
<failure>
9870+
<message><![CDATA[NHibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [NHibernate.Test.NHSpecificTest.NH1756.Book#2]]]></message>
9871+
</failure>
9872+
</test-case>
98659873
<test-case name="NHibernate.Test.NHSpecificTest.NH1756.Fixture.SaveTransient_Then_Update_Ok" executed="True" result="Success" success="True" asserts="0" />
98669874
</results>
98679875
</test-suite>
@@ -13818,11 +13826,15 @@ TearDown : Test didn't clean up after itself. session closed: False database cle
1381813826
</test-suite>
1381913827
</results>
1382013828
</test-suite>
13821-
<test-suite type="Namespace" name="NH392" executed="True" result="Success" success="True" asserts="0">
13829+
<test-suite type="Namespace" name="NH392" executed="True" result="Failure" success="False" asserts="0">
1382213830
<results>
13823-
<test-suite type="TestFixture" name="Fixture" executed="True" result="Success" success="True" asserts="0">
13831+
<test-suite type="TestFixture" name="Fixture" executed="True" result="Failure" success="False" asserts="0">
1382413832
<results>
13825-
<test-case name="NHibernate.Test.NHSpecificTest.NH392.Fixture.UnsavedMinusOneNoNullReferenceException" executed="True" result="Success" success="True" asserts="1" />
13833+
<test-case name="NHibernate.Test.NHSpecificTest.NH392.Fixture.UnsavedMinusOneNoNullReferenceException" executed="True" result="Error" success="False" asserts="1">
13834+
<failure>
13835+
<message><![CDATA[TearDown : NHibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [NHibernate.Test.NHSpecificTest.NH392.UnsavedValueMinusOne#1]]]></message>
13836+
</failure>
13837+
</test-case>
1382613838
</results>
1382713839
</test-suite>
1382813840
</results>
@@ -16794,14 +16806,24 @@ TearDown : Test didn't clean up after itself. session closed: True database clea
1679416806
</test-suite>
1679516807
</results>
1679616808
</test-suite>
16797-
<test-suite type="Namespace" name="VersionTest" executed="True" result="Success" success="True" asserts="0">
16809+
<test-suite type="Namespace" name="VersionTest" executed="True" result="Failure" success="False" asserts="0">
1679816810
<results>
16799-
<test-suite type="Namespace" name="Db" executed="True" result="Success" success="True" asserts="0">
16811+
<test-suite type="Namespace" name="Db" executed="True" result="Failure" success="False" asserts="0">
1680016812
<results>
16801-
<test-suite type="TestFixture" name="DbVersionFixture" executed="True" result="Success" success="True" asserts="0">
16813+
<test-suite type="TestFixture" name="DbVersionFixture" executed="True" result="Failure" success="False" asserts="0">
1680216814
<results>
16803-
<test-case name="NHibernate.Test.VersionTest.Db.DbVersionFixture.CollectionNoVersion" executed="True" result="Success" success="True" asserts="2" />
16804-
<test-case name="NHibernate.Test.VersionTest.Db.DbVersionFixture.CollectionVersion" executed="True" result="Success" success="True" asserts="2" />
16815+
<test-case name="NHibernate.Test.VersionTest.Db.DbVersionFixture.CollectionNoVersion" executed="True" result="Failure" success="False" asserts="2">
16816+
<failure>
16817+
<message><![CDATA[NHibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [NHibernate.Test.VersionTest.Db.User#1]
16818+
TearDown : Test didn't clean up after itself. session closed: False database cleaned: False connection closed: True]]></message>
16819+
</failure>
16820+
</test-case>
16821+
<test-case name="NHibernate.Test.VersionTest.Db.DbVersionFixture.CollectionVersion" executed="True" result="Failure" success="False" asserts="0">
16822+
<failure>
16823+
<message><![CDATA[NHibernate.StaleObjectStateException : Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [NHibernate.Test.VersionTest.Db.User#1]
16824+
TearDown : Test didn't clean up after itself. session closed: False database cleaned: False connection closed: True]]></message>
16825+
</failure>
16826+
</test-case>
1680516827
</results>
1680616828
</test-suite>
1680716829
<test-suite type="Namespace" name="MsSQL" executed="True" result="Success" success="True" asserts="0">

releasenotes.txt

Lines changed: 148 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,136 @@
1-
Tentative for 4.1:
1+
Build 4.1.0.GA
2+
=============================
3+
4+
##### Possible Breaking Changes Since 4.0 #####
5+
Proxies for classes that used lazy fields (not collections)
6+
would have any exceptions from the entity wrapped in TargetInvocationException. This
7+
wrapping exception have now been removed. Where relevant, you should instead catch
8+
the original exception type you throw.
9+
10+
For LINQ queries, the startAt parameter and the return value for string.IndexOf() are
11+
now correctly translated from .Net's 0-based indexing to SQL's 1-based indexing. LINQ
12+
queries that are written to expect SQL semantics for IndexOf() will likely need to be
13+
adjusted (NH-3846, NH-3901).
14+
Example: A LINQ query should now use 'x=>x.Name.IndexOf("a") == -1' to pick objects where
15+
the name doesn't contain the letter "a".
16+
17+
** Bug
18+
* [NH-3885] - ThreadSafeDictionary is not threadsafe
19+
220

3-
Possible breaking change: Proxies for classes that used lazy fields (not collections)
4-
would have any exceptions from the entity wrapped in TargetInvocationException. This
5-
wrapping exception have now been removed. Where relevant, you should instead catch
6-
the original exception type you throw.
21+
Build 4.1.0.CR1
22+
=============================
23+
24+
** Bug
25+
* [NH-2038] - No substring length check in RemoveAsAliasesFromSql
26+
* [NH-2127] - NHibernate cannot convert from decimal to int64 during OutputParamReturningDelegate.ExecuteAndExtract
27+
* [NH-2167] - Aggregate function GroupProperty mixing named and positional variables
28+
* [NH-2738] - Exception thrown when mapping contains empty enum
29+
* [NH-2839] - Linq query with boolean implemeted as IUserType fails
30+
* [NH-2930] - Mapping by code does not support multiple levels of abstract subclasses, nor does the abstract=true tag work on subclasses below the first level subclass
31+
* [NH-2931] - Registering mappings in mapping by code does not process classes accordingly to inheritance path
32+
* [NH-3015] - Join fetch with Stateless Session returns duplicate entities
33+
* [NH-3035] - Alias in HQL Order By Clause is Not Replaced
34+
* [NH-3046] - Potentially serious memory leak with regards to NHibernate.Action.EntityAction.BeforeTransactionCompletionProcessDelegate
35+
* [NH-3048] - Mapping-by-Code does not allow UnsavedValue in ComponentAsId mapping
36+
* [NH-3075] - NullReferenceException when using Fetch/FetchMany
37+
* [NH-3252] - AnsiString larger than 8000 doesn't work with Sql Server
38+
* [NH-3372] - Support generated columns in combination with explicit loader
39+
* [NH-3414] - Queries with sub-query in ThenBy fail
40+
* [NH-3453] - InvalidCastException from FindDirty on many-to-one association with property-ref to composite-id class
41+
* [NH-3454] - AdoNetWithDistributedTransactionFactory doesn't unhook event handler which may prevent garbage collection
42+
* [NH-3474] - GroupBy constant producing wrong SQL
43+
* [NH-3480] - <set> mapping using a property-ref as the link to its children can raise an InvalidCastException when loading
44+
* [NH-3487] - Deserializing a session can raise an NHibernateException - No tupilizer found for entity-mode [Poco]
45+
* [NH-3500] - Throwing exception from within a proxied method does not unwrap TargetInvocationException
46+
* [NH-3512] - Changes in derived object doesn't update version
47+
* [NH-3518] - If prepare_sql is true, columns of XML type won't work
48+
* [NH-3527] - UnionSubclassMapper should mark an abstract type as abstract in the generated HbmMapping
49+
* [NH-3564] - TimestampType does not work with 2nd level cache
50+
* [NH-3567] - Under the flushmode Auto, Query with subquery failed to flush if there are changes among the entities addressed by the sub-query
51+
* [NH-3583] - Autoflush doesn't work inside TransactionScope
52+
* [NH-3609] - Using Projections.Conditional inside of Projections.Count and Projections.Avg generates invalid sql.
53+
* [NH-3634] - Wrong syntax for comparing component with nullable properties(columnValue = NULL)
54+
* [NH-3666] - Setting native sql query cachable causes ArgumentNullException in CacheableResultTransformer.
55+
* [NH-3681] - NHibernate.HibernateException: Query Source could not be identified, when using join group and Sum()
56+
* [NH-3706] - NHibernate.Transform.Transformers should be static class
57+
* [NH-3727] - Criteria which use SubqueryProjection. Cannot be executed more than once. Second try throws exception.
58+
* [NH-3741] - Many to Many mapping against interfaces fails (reverts to using ElementRelationMapper instead of ManyToManyRelationMapper)
59+
* [NH-3743] - Fetch with GroupBy throws NullReferenceException
60+
* [NH-3747] - Very weak support for predicates in Linq Aggregate functions
61+
* [NH-3754] - Exception "System.ArgumentNullException" when using ICriteria with AliasToBeanResultTransformer and SecondLevelCache
62+
* [NH-3762] - DateType should not try to set DbParameter.DbType column
63+
* [NH-3767] - Wrong aliases when querying a table with the name starting with Select, From or As in Oracle
64+
* [NH-3784] - Collection filtering via ISession.CreateFilter should not allow DML queries
65+
* [NH-3785] - Collection filtering via ISession.CreateFilter incorrectly applies filter to nested subqueries
66+
* [NH-3791] - Transaction with multiple inserts, fails when a column-name contains 'select' on Firebird database
67+
* [NH-3797] - Computed GroupBys don't work if they have constants
68+
* [NH-3800] - Cannot combine Left Outer Join with Aggregating Group By
69+
* [NH-3801] - AddJoinsReWriter disassociates Select expressions and GroupBy key expressions
70+
* [NH-3816] - Conditionals in Select are too permissive
71+
* [NH-3817] - Merge fails randomly on a graph containing transient entities with multiple cascade paths
72+
* [NH-3818] - Conditional expressions in LINQ Select
73+
* [NH-3831] - NullableDictionary does not set _gotNullValue when using Add(TKey, TValue) method
74+
* [NH-3842] - DateTimeOffsetType throws NotImplementedException() for DefaultValue.
75+
* [NH-3844] - Left Outer Join with Aggregating Group By and Conditional Key Failure
76+
* [NH-3874] - Evicting an object with a collection with logging enabled throws
77+
* [NH-3891] - Not all overrides of ISerializable.GetObjectData set SecurityCritical
78+
* [NH-3895] - Problem with DateTime fractional seconds on ODBC for MS SQL Server
79+
* [NH-3897] - Use of Hashset Test framework's DebugConnectionProvider not thread-safe.
80+
* [NH-3899] - Too long column alias - Column.GetAlias() doesn't correctly respect Dialect.MaxAliasLength
81+
* [NH-3904] - Passing a user type instance as a constant parameter in a linq expression fails.
82+
* [NH-3909] - Regression on join following refactoring of NH-3801
83+
* [NH-3917] - SQLite Dialect does not specify any keywords except 'int'
84+
* [NH-3912] - Batch operations with the same IBatcher instance fail on expect rows count after single failed operation (Oracle)
85+
* [NH-3846] - Off-by-one error: LINQ to SQL of 'startIndex' (2nd) parameter - 'IndexOf()' to 'CharIndex()'
86+
* [NH-3901] - IndexOf doesn't translate into 0-based index
87+
* [NH-3918] - Select Expressions Cache Entities
88+
89+
** New Feature
90+
* [NH-1262] - Cascade of "all-delete-orphan" not supported for one-to-one
91+
* [NH-1452] - Join element doesn't support keys with property-refs
92+
* [NH-2218] - Extension method Query<T> doesn't support entity names
93+
* [NH-2611] - Allow injectable/inheritance of Linq query provider
94+
* [NH-3495] - Implement Oracle 12c Dialect
95+
* [NH-3499] - Allow query model visitor to be provided through the session factory
96+
* [NH-3619] - Make default value of FlushMode configurable
97+
98+
** Task
99+
* [NH-802] - Use msbuild instead of csc/vbc
100+
* [NH-3725] - Remove SharpTestsEx
101+
* [NH-3781] - Upgrade relinq to at least 1.13.177
102+
* [NH-3875] - Build with MSBuild Tools 2015 (14)
103+
* [NH-3890] - Update all support projects and tooling to .NET 4.0
104+
105+
** Improvement
106+
* [NH-2053] - Extend the filter-def usage to subclasses
107+
* [NH-2401] - Method for specifying IType of LINQ parameter
108+
* [NH-2821] - Better finding log4net.dll
109+
* [NH-2823] - Optimistic Locking in mapping by code
110+
* [NH-2824] - Precision and scale for decimal id
111+
* [NH-2887] - Tweak UriType to allow relative URIs to be supported.
112+
* [NH-3110] - Support Polymorphism in mapping by code
113+
* [NH-3198] - Have Mapping By Code Support Dynamic Component Inside Join
114+
* [NH-3312] - QueryOver, static Alias
115+
* [NH-3404] - Add missing standard Id Generators in Mapping By Code
116+
* [NH-3452] - Need to support CHAR(length) type for identifiers
117+
* [NH-3486] - Performance: For projections, identical metadata for rows is recalculated for every row
118+
* [NH-3489] - GetEffectiveParameterLocations is slow with a large number of parameters
119+
* [NH-3525] - Db2Dialect should issue FETCH FIRST N ROWS ONLY when there is no offset
120+
* [NH-3630] - Bitwise operation support for dialects using internal/external functions
121+
* [NH-3707] - Port HHH-6845 - Avoid repeated invocations of ReflectHelper.overridesEquals in proxy initializers
122+
* [NH-3720] - Support Additional Convert Methods in LINQ Queries
123+
* [NH-3726] - Support SqlMethods.Like() with escape character in LINQ
124+
* [NH-3732] - Start the NUnit GUI with the .NET 4.0 runtime
125+
* [NH-3759] - uuid.hex mapper issue
126+
* [NH-3763] - Add Bitwise operations for Oracle
127+
* [NH-3779] - Mapping by code does not allow to map structures as components
128+
* [NH-3783] - Enable update ordering for improved batching
129+
* [NH-3812] - GuidCombGenerator must use DateTime.UtcNow
130+
* [NH-3856] - Improve performance of SqlClientSqlCommandSet
131+
* [NH-3857] - Improve performance of MySqlClientSqlCommandSet
132+
* [NH-3920] - Improve logging of SQL parameter types and values
133+
* [NH-3811] - Consistent Unique Integer values per table
7134

8135

9136
Build 4.0.4.GA
@@ -325,6 +452,13 @@ Build 4.0.0.Alpha1
325452
* [NH-3347] - Remove obsolete dialects for NH4
326453

327454

455+
Build 3.4.1.GA
456+
=============================
457+
458+
** Bug
459+
* [NH-3795] - C# compiler "Roslyn" regression
460+
461+
328462
Build 3.4.0.GA
329463
=============================
330464
** Known BREAKING CHANGES from NH3.3.0.GA to NH3.4.0.GA
@@ -411,6 +545,14 @@ Build 3.4.0.CR1
411545
** Task
412546
* [NH-3251] - Update to antlr 3.5.0.2
413547

548+
549+
Build 3.3.5.GA
550+
=============================
551+
552+
** Bug
553+
* [NH-3795] - C# compiler "Roslyn" regression
554+
555+
414556
Build 3.3.4.GA
415557
=============================
416558

@@ -3053,4 +3195,4 @@ PreAlpha Build 2
30533195
- Modified MsSqlServer2000Dialect to maps a BooleanSqlType to a bit column type.
30543196
- Fixed bug with IdentityMap that caused problems with Session.Flush() loading lazy collections
30553197
- Added TicksType to TypeFactory
3056-
- Fixed bug with SchemaExport committing a non existing IDbTransaction
3198+
- Fixed bug with SchemaExport committing a non existing IDbTransaction

0 commit comments

Comments
 (0)