spring-projects / spring-net

Spring Framework for .NET
http://www.springframework.net
Apache License 2.0
846 stars 375 forks source link

.NET standard release plan #187

Closed cezarypiatekGC closed 3 years ago

cezarypiatekGC commented 5 years ago

Hi

I'm considering using Spring.Messaging.Nms in several projects for my company. The main obstacle that prevents me from taking it right now is the lack of the release of a version compatible with the .NET standard. I would like to know what is the current status of porting Spring.Messaging.Nms to .net standard and what are the release plans?

mashbrno commented 5 years ago

Would be great if you can create at least pre-release NuGet packages. I had to create my own Nugets to use in my own projects, but that is not generally good idea as other people don't know what to expect from such forks

lahma commented 5 years ago

I just pushed changes to master and Spring.Messaging.Nms now has netstandard2.0 target, can't promise a NuGet release or a date though.

lwqwag commented 4 years ago

Will next release be based on .netcore2.2 or .netcore3.0?

lahma commented 4 years ago

It's netstandard 2.0 so works on both.

lwqwag commented 4 years ago

Thanks for your reply

Simulacrux commented 4 years ago

Hi everyone,

as my fellow pre-poster wrote and also was stated in issue #167 , it would be very helpful to have official pre-release Nugets of the new Spring.Net version. Not everyone is able to compile and sign it on his own and if I understand the Milestones correct, the only open issue right now is the performance improvement. For my part, this would be a nice to have, but getting a new version (pre-release) of Spring.Net out in the world would be a nice Christmas gift.

Cheers Simulacruxx

michaelandrepearce commented 4 years ago

@lahma any update here with release?

lahma commented 4 years ago

Sorry for the radio silence. Currently I have little to give as I don't have permissions to the official NuGet feed. Best what I could do is to try to get some myget/GitHub feed up. The performance testing branch is not essential for the release. I believe that the version as-is with the .NET Core support is better than nothing, hopefully at least.

gergroen commented 4 years ago

A release would be great. @lahma Do you know who has the permissions for the official nuget feed?

lahma commented 4 years ago

Based on the core package NuGet page @markpollack and @sbohlen have the keys to the kingdom 🙂

Simulacrux commented 4 years ago

Yes from my point of view, every possible (pre-)release would be great.

As I'm hosting my own Nuget gallery at work for our inhouse project releases, I would be quite happy with just getting a "Zip" release to Github with the .nupkg and/or DLLs in there. Or some similar way of obtaining the latest bits.

Of yourse we should try to figure out the kingdom keys, but for the short term I would be quite happy with any "workaround" release.

THX @lahma for your continuous work for Spring.Net

michaelandrepearce commented 4 years ago

+1 agreed, at least a release in github would be good, so people could consume a binary nuget pkg release by manually downloading and installing in local nuget repos, and then if/when nuget.org perms are sorted the packages could always be posthumously uploaded to nuget.org

another option whilst nuget.org is being sorted, is to distribute it via bintray? https://bintray.com/

or even github packages - https://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-dotnet-cli-for-use-with-github-packages

agudets commented 4 years ago

Are there any chances to have at least pre-release .net standard version in short term (1-2months)?

mashbrno commented 4 years ago

It's a bit off topic, but from my point of view - Spring is not ready for .NET Core. I spend some time trying to make it work as our code base is tightly coupled with Spring.NET. But there are many unresolved issues, which need considerable amount of time to fix:

We still have no successor for Spring's superb expressions and validations.

lahma commented 4 years ago
  • there's no integration with ASP.NET Core

Probably doable, but require a champion to create a PR.

  • Common.Logging is not compatible with Microsoft.Extensions.Logging

Microsoft's version has won the battle so I think it would make sense to switch over to that.

  • async/await support for Spring.Data transactions

Just overloads needed?

  • lack of EF Core support

I think EF isn't supported either. What would this include?

mashbrno commented 4 years ago

async/await - there's more about NHibernate session thread safety. For sure it will end up as an overload, but quite complex one.

EF is also not supported, but it's getting mature and competitive with NHibernate. It's now suitable for wider range of projects than in 2005. Eg. NHibernate.Spatial.MsSql was full .NET for very long time (due to reference to Microsoft.SqlServer.Types).

terrajobst commented 3 years ago

@lahma

We just had a customer asking us about spring.net and whether it will support .NET Standard/.NET Core. You mentioned earlier that you can't promise a package. Is there anything we could help you with you?

lahma commented 3 years ago

I have pinged @sbohlen about modifying the NuGet org permissions. I think I'll also have a go to get GitHub actions working to release to NuGet package repository in the near future.

jgermanos commented 3 years ago

I have pinged @sbohlen about modifying the NuGet org permissions. I think I'll also have a go to get GitHub actions working to release to NuGet package repository in the near future. @lahma any ETA on the release to NuGet? thanks.

maulik-modi commented 3 years ago

@markpollack, @sbohlen and @lahma, @gjarzab , Is there anything we could help you with? Please release pre-release packages.

We are heavily invested in Spring.net for multiple products, It is high time we migrate to .net standard to do anything like Dockerization, getting rid of system.web, lighter application, faster performance, fewer allocations, Browser link.

@terrajobst, @simulacrux are also interested

Someone has created pre-release package here - https://www.nuget.org/packages/D3S.Spring.Core/3.0.3-pre

maulik-modi commented 3 years ago

I can see that https://www.nuget.org/packages/castle.core/ is being used by Popular libraries such as EFCore, FakeItEasy etc... to provide dynamic proxy

Simulacrux commented 3 years ago

Hi everyone,

yes I would also available to help with a release. Did not do any Github actions until now, but did a lot of other Build processes before, so should be manageable/learnable. I checked the other Pre-Upload in the Nuget gallery and this packages are without strong named DLLs, because at this time the signing key was not available. Therefore I downloaded the current sources and did a local build with signing and packing in Nugets. It is not tested for now from my side, but I thought I just share it here, so maybe some other could also have a look onto it. Version is 3.0.0 and Alpha1 as Prerelease signature.

Happy Testing Simulacrux Spring.Nuget.3.0.0-Alpha1.zip

lahma commented 3 years ago

On top of earlier progress:

I have spent considerable amount of my time (including part of my recent summer holiday) to get things working on .NET Core / NET5, all the permissions and setups done (collaboration with past maintainers), fighting the build system etc. Please do not expect me start fixing everything you might find, but everyone as consumer of the framework should provide pull requests to push things forward. Now publishing new versions should at least be (a lot) simpler.

There's always option to sponsor, if you want to show gratitude of the past work, this will not bind me to future work 😉

Let's consider this issue fixed!