SaturnFramework / Saturn

Opinionated, web development framework for F# which implements the server-side, functional MVC pattern
https://saturnframework.org
MIT License
714 stars 108 forks source link

Upgrade of Giraffe to 3.4 #153

Closed NinoFloris closed 5 years ago

NinoFloris commented 5 years ago

Upgrade of Giraffe to 3.4 should fix all breaking changes, also changed version constraint to be pessimistic as unlike AspNetCore Giraffe breaks a lot more during major bumps.

I removed stringConvert, we now completely rely on giraffe to convert our route segments! This solves ShortId and ShortGuid behavior changes.

Next up I made the plug behavior consistent, we now always fire every plug after their respective route check. In line with changes @jeremyabbott made. Part of this extra work requires checking if we're at the end of the getNextPartOfPath though. This is because any full route match with Giraffe.Routing.route after we change Request.Path won't otherwise match correctly anymore, as say a registered KeyHandler route "/%i" doesn't match changed path "/%i/". Firing of the plug was basically a bug that 'worked' before, as we would fire the plug which was before the route check but never the handler which came after it.

I'm however utterly confused why we mutate Path anyway (as seen it already resulted in a few bugs) @Krzysztof-Cieslak

P.S. Sorry about the diffs for two of the samples, probably were still formatted with windows newlines, both just include an import for TaskBuilder.

/cc: @baronfel @rmunn @forki @Nhowka

NinoFloris commented 5 years ago

Agh, Ubuntu already has sdk 2.1.500 and no 2.1.403 anymore, while windows is fine with 2.1.403 and doesn't have 2.1.500...

Seems we're in good company... https://twitter.com/Nick_Craver/status/1068525227737411586

forki commented 5 years ago

https://github.com/SAFE-Stack/SAFE-BookStore/blob/master/build.fsx#L107

Am So., 2. Dez. 2018, 01:19 hat Nino Floris notifications@github.com geschrieben:

Agh, Ubuntu already has sdk 2.1.500, while windows is fine with 2.1.403, seems we're in good company... https://twitter.com/Nick_Craver/status/1068525227737411586

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/SaturnFramework/Saturn/pull/153#issuecomment-443469903, or mute the thread https://github.com/notifications/unsubscribe-auth/AADgNNZx7H-qS63ZDD1Yzc8PXBuey5tIks5u0xycgaJpZM4Y9Ka8 .