Goals for NHibernate 5.0?

335 views
Skip to first unread message

Oskar Berggren

unread,
Nov 26, 2016, 6:57:08 PM11/26/16
to nhibernate-...@googlegroups.com
Hi,

With 4.1.0 finally getting close we should do some planning for NHibernate 5.0.

First of all, there are mentions of a 4.2 release in various places, such as Jira and Github milestone, but I say we should head directly for 5.0.

There is already a branch "5.0.x" available with a single commit to make NH target .Net 4.5.2. Should we merge that to master? Or should we do a rare rebase of this single commit to current master, for a simplified long-term branch history? I'm leaning towards the latter, I suspect not too many will have branches based on 5.0.x already?

Then I guess we can just as well target .Net 4.6.2 immediately.


Some other tasks:
Remove the NET_4_0 conditional. This was mostly for implementations of ISerializable.GetObjectData().

There are a bunch of pull requests queued for 4.2 and 5.0, many of which should be in good condition already. Merge as many as possible, after that request rebases of the others. Repeat.

There are some big items like switching to NUnit 3.0.

Review other dependencies and upgrade where available.

I might be inclined to look at porting Hibernate's refactoring of dialects and id generators.



In a different thread I suggested a more relaxed approach to versioning and breaking changes, that would consist of making 4.1 the current long-term API stable release, while releases 5.0, 5.1, 5.2 etc can all contain breaking changes until we feel comfortable declaring a particular release the new long-term API stable release at some point in the future. Off-list there have been mentions of trying to do quarterly releases, and in that case it might be reasonable to mark one release per year as the new long-term stable. We need to decide on that.

I'm sure others will come forward with additional pull requests, but if we do decide to use a more relaxed approach to versioning and breaking changes (in some way), then I don't think 5.0 need to contain much more than that mentioned above. Better instead to release it after only a few months perhaps.


/Oskar

Ricardo Peres

unread,
Nov 27, 2016, 4:01:12 AM11/27/16
to nhibernate-development
+1 for .NET 4.6.2, plus replacing System.Data with System.Data.Commom (NH-3431), plus updating ReLinq to latest version - was this done now or just closed?

RP

Edno Silva

unread,
Nov 27, 2016, 9:38:20 AM11/27/16
to nhibernate-...@googlegroups.com
+1 for .NET 4.6.2
+1 we should head directly for 5.0.

--

---
You received this message because you are subscribed to the Google Groups "nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-development+unsub...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Sem mais,
Edno.

Alexander Zaytsev

unread,
Nov 28, 2016, 5:24:05 PM11/28/16
to nhibernate-...@googlegroups.com
I would like the 5.0.x branch to be removed completely. The commit does not provide any value at all. I was hopping to start working on 5.0.x in parallel, but this is not what has happened.

Regards 4.2 version in JIRA - it was intention to release 4.1 earlier and release some non-breaking changes shortly after, but again, this has not happened. So, I'm fine with 5.0 straight away.

Best Regards,
Alexander
To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-develo...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Sem mais,
Edno.

--

---
You received this message because you are subscribed to the Google Groups "nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-develo...@googlegroups.com.

Oskar Berggren

unread,
Nov 28, 2016, 5:53:27 PM11/28/16
to nhibernate-...@googlegroups.com
2016-11-28 22:23 GMT+00:00 Alexander Zaytsev <haz...@gmail.com>:
I would like the 5.0.x branch to be removed completely. The commit does not provide any value at all. I was hopping to start working on 5.0.x in parallel, but this is not what has happened.

Agreed. In fact, I'll do it immediately.



Oskar Berggren

unread,
Nov 28, 2016, 6:58:53 PM11/28/16
to nhibernate-...@googlegroups.com
I have:

* Removed branch 5.0.x from the core repository.

* Version on master is now 5.0.0.Alpha1.

* Submitted PR 535 to target .Net 4.6.2 and VS2015.

/Oskar


bunce....@gmail.com

unread,
Dec 2, 2016, 6:05:03 AM12/2/16
to nhibernate-development
With the slightly confusing information on the upcoming .net standard 2.0 targeting compatibility with .net 4.6.1, not 4.6.2, wouldn't it be better to restrict the update to .net 4.6.1 instead?

Oskar Berggren

unread,
Dec 2, 2016, 7:23:43 AM12/2/16
to nhibernate-...@googlegroups.com
As I understand it, ,net standard 2.0 is now expected to contain about 30 API additions (made in 1.5 and 1.6) that are not actually available if the runtime environment is .Net 4.6.1.

On the one hand, no need to target 4.6.2 unless we actually plan to use any of the new API, which I don't think we are (there's not much). So we could just as well lower it to 4.6.1.

Then, as for actually targetting .net standard 2.0 when that's available, the work required will not depend on the difference between 4.6.1 and 4.6.2, but rather on what parts of .Net Framework (4.6.x) we use that are NOT available in .net standard 2.0, no matter when they were introduced. With all the additions they are making in 2.0 it's starting to look a lot better. The large used but missing parts are System.Transactions, CodeDom/Reflection.Emit, and hardcoded references to the SQL Server and ODBC ADO.Net providers (for those we could use reflection as is already done for most other providers).

Running apiport on the various assemblies (master as of 2016-11-30 or so) reveals:
Assembly Target Framework .Net Standard,Version=v1.6 .Net Standard,Version=v2.0
Antlr3.Runtime
88,68 99,25
Iesi.Collections
97,98 100
NHibernate .NETFramework,Version=v4.6.2 69,55 91,58
Remotion.Linq
79,82 100
vshost .NETFramework,Version=v4.0 100 100


So it's starting to look good.

2016-12-02 1:19 GMT+00:00 <bunce....@gmail.com>:
With the slightly confusing information on the upcoming .net standard 2.0 targeting compatibility with .net 4.6.1, not 4.6.2, wouldn't it be better to restrict the update to .net 4.6.1 instead?
--

---
You received this message because you are subscribed to the Google Groups "nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-development+unsub...@googlegroups.com.
ApiPortAnalysis.xlsx

bunce....@gmail.com

unread,
Dec 3, 2016, 10:39:16 AM12/3/16
to nhibernate-development
Fair enough. Personally, I would stick with .net 4.6.1 as that appears to have the widest adoption now anyway, and then switch to .net standard 2.0 if possible when it's released. I think most people would want the option to move to the '.net core style stack' but, like me, are waiting until it introduces the better compatibility that is due in .net standard 2.0. It looks like .net 4.6.1 is the best stepping stone to ensure .net standard 2.0 compatibility when it comes out.

Oskar Berggren

unread,
Dec 4, 2016, 9:53:55 AM12/4/16
to nhibernate-...@googlegroups.com
I've switched master to 4.6.2. In retrospect it may have been a bit too soon for 4.6.2.

Den 3 dec. 2016 3:39 em skrev <bunce....@gmail.com>:
Fair enough. Personally, I would stick with .net 4.6.1 as that appears to have the widest adoption now anyway, and then switch to .net standard 2.0  if possible when it's released. I think most people would want the option to move to the '.net core style stack' but, like me, are waiting until it introduces the better compatibility that is due in .net standard 2.0. It looks like .net 4.6.1 is the best stepping stone to ensure .net standard 2.0 compatibility when it comes out.

Oskar Berggren

unread,
Dec 4, 2016, 9:54:14 AM12/4/16
to nhibernate-...@googlegroups.com
Switched to 4.6.1 I mean! 

To unsubscribe from this group and stop receiving emails from it, send an email to nhibernate-development+unsubscri...@googlegroups.com.

cremor

unread,
Dec 12, 2016, 1:43:50 AM12/12/16
to nhibernate-development
Is there any plan when async support might come?
Reply all
Reply to author
Forward
0 new messages