Giter Club home page Giter Club logo

Comments (21)

dustinmoris avatar dustinmoris commented on May 19, 2024 3

Just released all packages with the upgrade to netstandard2.0 and net461. Enjoy!

from giraffe.

Banashek avatar Banashek commented on May 19, 2024 2

Looks like aspnetcore 2.0.0 was released on nuget.

I assume the cli tools will be released soon as well.

Looks like there might be a bit of time between the core 2.0 change and giraffe getting updated. There are quite a few dependencies that will need to hit 2.0 (FSharp.Core, FSharp.NET.Sdk) according to the compatibility matrix found here.

The way I interpret the matrix (though I could be wrong) is that all dependencies will need to be netstandard 2.0 compatible for a project to itself be 2.0 compatible.

from giraffe.

Banashek avatar Banashek commented on May 19, 2024 2

Yeah it's pretty exciting. I made sure to install it before starting on any of the porting work. I've got the partial working solution in the copy project repo I made. It's stripped down to only the necessary bits to get giraffe working on dotnet core, but doesn't include any of the CI or net461 parts. I'll look at it a bit more today.

from giraffe.

Banashek avatar Banashek commented on May 19, 2024 1

Yeah I pulled down the repo and just started shoving 2.0 dependencies at it. The first thing I noticed was an f# compiler error, which is when I stopped. I think that will be the only thing that will need to be waited on.

Aspnet stuff -> 2.0
System stuff -> 2.0
Json -> not yet

though i'm not sure how much these matter

Since 2.0 is a superset with no breaking changes I feel like it should be attemptable.

Every time I think I understand this stuff I look into it and something like "we don't need to do semver because we feel it's a big change" happens.

Anyhoo, If I have some time I'll look into the F# issue (it was an error about multiple imports of System.Runtime on compilation) and see if I can't sort it out.

from giraffe.

Banashek avatar Banashek commented on May 19, 2024 1

So I've got everything working targeting netstandard2.0/netcore2.0 here except for the samples.

The SampleApp has the following error:
image

And the IdentityApp has errors to do with wherever all the identity stuff got moved to, but it shouldn't be too much work to translate it over.

I don't know if I'll be able to actually get to that stuff this weekend (just got booked for meetings, and then will be away from the computer), but I've checked in 90% of what needs to be done in my repo.

Let me know if you'd like that PR'd into a netcore2.0 branch or something where the last 10% can be finished up.

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Hi, Yes I definitely plan to support .NET Core 2.0, but I haven't had time to play with preview 2 yet. From previous experience I thought it might be better to wait for the final RTM, because they often changed quite a few bits very last minute and I don't want to migrate the library multiple times, but if the support for .NET Core preview 2 is much desired then I can definitely work on it and release pre-release of Giraffe on that version too.

from giraffe.

ryukinix avatar ryukinix commented on May 19, 2024

Good to hear it, @dustinmoris! Awesome job.

I'll be watching your progress.

I'm very excited about .NET Core 2.0, seems they improved a lot and fixed annoying bugs (which I suffer on some cases, like the wrong f# templates for console apps and others things). Another thing I expect is, but I don't have sure, If they will release support for Linux x86.

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Thanks, weird I didn't see any official announcements of ASP.NET Core 2.0 yet, but you're right... it's been out for 3 days now! I actually also didn't think that netstandard2.0 is a new netstandard rather then a continuation of the previous one. This breaks the whole concept of netstandard, that when you target a lower version it will always work on a platform which supports a higher version. I am really confused... I don't understand why adding more APIs to netstandard2.0 stops compatibility with the old standards... anyway... given that this is the case I will indeed have to wait for all other dependencies to update first.

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

nice... let me know how you get on with it and if you want me to help with something, otherwise I'll just wait for the PR :D

from giraffe.

Banashek avatar Banashek commented on May 19, 2024

So I got the projects building with these changes, but am running into all sorts of weird nuget-type errors.

I was at it for a while and got down pretty far the nuget/netcore rabbit hole.

Decided to take a step back and see if everything worked minimally.

I made a copy project with minimal dependencies to see if it would work. It seems to work, but this is just targeting netcore and I only tested the simple application (which uses some giraffe features like XmlViewEngine, Middleware, and HttpHandlers).

Somewhere between these two repos is the answer lol.

Figured I'd put the information here for reference.

from giraffe.

ryukinix avatar ryukinix commented on May 19, 2024

FYI, .NET Core 2.0 was released two days ago!

from giraffe.

Banashek avatar Banashek commented on May 19, 2024

Got passed all the weird runtime issues. Everything is building and tests are passing. I just need to fix up the samples and I should have a PR in today.

image

from giraffe.

Banashek avatar Banashek commented on May 19, 2024

error NU1202: Package Microsoft.AspNetCore 2.0.0 is not compatible with net46

I've got everything tested under netstandard2.0

Not sure if everything will work with the net46 dependency

@dustinmoris thoughts?

Some info:
dotnet/aspnetcore#2022
https://github.com/dotnet/standard/blob/master/docs/versions.md

from giraffe.

Banashek avatar Banashek commented on May 19, 2024

Additionally, I don't think I'll be able to test 461 (which should be compatible if you want to bump it) on my mac. It could be set up in docker, but I don't think I have the time to set that up at the moment.

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Hi I just created a netstandard20 branch. Feel free to submit the PR and I will merge it in there and finish the last 10% :)

from giraffe.

NinoFloris avatar NinoFloris commented on May 19, 2024

Any easy way to consume it for now?

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Hi @NinoFloris I aim to work on the 2.0 branch this weekend and hopefully have a new pre-release package ready by then which you can consume. I'll keep you posted here...

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Hey, I am going through your changes and targeting 461 all works too, so might have a new release ready tonight or tomorrow. There's one thing though which I am surprised and I would like to understand better. How come all the projects build now without FSharp.Core and FSharp.NET.Sdk??

from giraffe.

NinoFloris avatar NinoFloris commented on May 19, 2024

from giraffe.

dustinmoris avatar dustinmoris commented on May 19, 2024

Nice, that's great, thanks!

from giraffe.

JonCanning avatar JonCanning commented on May 19, 2024

🎉

from giraffe.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.