CARVIEW |
Navigation Menu
-
Notifications
You must be signed in to change notification settings - Fork 710
Announcement: Hello Project "Asp" #807
Replies: 13 comments · 18 replies
-
As a long-time consumer of this project, I thank you for all your great work. Best of luck on your new endeavor. |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 10
-
Thank you for all your work you rock! |
Beta Was this translation helpful? Give feedback.
All reactions
-
Thank you so much! |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1
-
aka "the one-man army" π€£ Thank you @commonsensesoftware for your support and determination to continue heading this project. |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1
-
made my month! :) |
Beta Was this translation helpful? Give feedback.
All reactions
-
Thanks for doing this! |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1
-
Thank you @commonsensesoftware for your great work!π |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1
-
Does anyone know what we are supposed to use for dotnet 7 now? |
Beta Was this translation helpful? Give feedback.
All reactions
-
Beta Was this translation helpful? Give feedback.
All reactions
-
It finally did. Honestly, about a month ago, but I've been up to my eyeballs and hadn't had time to test it would work. This is the exact same packages as what was published in the official 5.1 release, only uploaded to NuGet. It's kind of crazy that it already has that many downloads. This version and all others going forward will have a banner at the top of the README. I just hope people notice. I'm not sure how else to communicate it. It's been over two years, I know there are still people using the |
Beta Was this translation helpful? Give feedback.
All reactions
-
I updated my .net6 Web API to 5.1.0 but my unit tests started to take a long time (for some reason there is a stack overflow exception that takes a lot of time and then the test host restarts and finishes the tests). Because of that I started googling and found out about all of this, I had no idea about what happened to the project. About people noticing in my case it's easier when the package is marked as deprecated, that and the README would make it easier to change to the appropriate version. Thanks a lot for your work, time, dedication and for keeping this project alive. Edit: I upgraded to 6.4.0 and I'm getting the same behavior, I'm staying with 5.0.0 until I figure out what's going on. |
Beta Was this translation helpful? Give feedback.
All reactions
-
@JuanZamudioGBM unfortunately I haven't been able to even publish updates until about a month ago. It's taken over 2 years to get to this point. Without the ability to publish, there was no way to update the README to help let people know. I knew that would be problem and fell on many grenades trying to sort it out for the community to no avail. Fortunately, it is finally fixed and people are starting to notice. I hadn't considered formally marking the packages a deprecated, but that's a good idea. I'll look into making sure that I even have the ability to do that. Since the behavior repros on |
Beta Was this translation helpful? Give feedback.
All reactions
-
@JuanZamudioGBM It's also worth mentioning that |
Beta Was this translation helpful? Give feedback.
All reactions
-
Hello mates, firstly lemme say thanks for your work. MS once again overusing their community without any effort from their side π But regarding the API we have here. I have few questions more even after whole evening of reading about the topic:
|
Beta Was this translation helpful? Give feedback.
All reactions
-
Well, it's just lonely old me here as a mate of one #army-of-one. Thanks for the kudos. It's appreciated and what keeps me going on the project.
If you have both Minimal APIs and controllers, that is a supported scenario. If the APIs are across the implementation styles, there's a bit of work to do. If they are separate APIs, implemented in different styles, then there's nothing to do. For example: [ApiVersion(1.0)]
[AdvertisesApiVersions(2.0)]
[Route("[controller]")]
public class HelloController : ControllerBase
{
[HttpGet]
public IActionResult Get() => Ok("Hello world!");
} var app = builder.Build();
var hello = app.NewVersionedApi();
hello.MapGet( "/hello", () => "Hello world v2!")
.HasApiVersion(2.0)
.AdvertisesApiVersion(1.0); The reason this is necessary is because collation is performed differently between controllers and Minimal APIs. Routing would not be affected, but reporting API versions would. In order have |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 7
-
Thank you very much for clarification, now it's clear for me. Once again it's shame Microsoft ignores this topic. Actually, I was unable even to find any official MS guidelines for versioning usage (even via old libraries), only some 3rd party articles. What a mess I must say. |
Beta Was this translation helpful? Give feedback.
All reactions
-
There's a broad and long misconception that this project was run or otherwise funded by Microsoft and/or the ASP.NET team. It's not nor was it ever. It was under Microsoft OSS when I was still an employee. I was never even part of the ASP.NET team. That all cast a big shadow. Most posts, videos, and interviews all talk about how some Microsoft team brought it all to light. There's no That being the case, the bandage had to come off at some point. The level of confusion that it has caused is unfortunate, I fought long and hard to transition things the right way. I feared this might happen. Sadly, those fears came to fruition. Nevertheless, people have started to notice the change, make the transition, and spread the word along the way. Thanks for your continued support. Running, documenting, and supporting this entire project takes quite a bit of time. Things have simmered down a bit. I have some goals to get some articles and videos published in 2023. Stay tuned. |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1 -
π 2
-
After wondering why the It would be really nice if the old packages was marked as I have missed the .NET 6 version totally because of this (can't keep a track of 200+ packages in detail on GitHub) and when looking at the number of downloads of the |
Beta Was this translation helpful? Give feedback.
All reactions
-
A quick note because I noticed that someone posted a question/comment about The breaking changes between |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 3
-
NuGet package manager in VS now shows that Microsoft.AspNetCore.Mvc.Versioning is deprecated and links Asp.Versioning.Mvc as the recommended replacement. |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 2
-
@trlevvis Indeed. I'm not if that is a question or statement. I finally put a migration page based on this discussion. I discovered do have what's necessary to mark the package as deprecated with additional information so I have done so. The |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 2 -
π 1
-
Sadly, you can count me among the ones that didn't read thoroughly, but the warning icon and a deprecated tag sure caught my eye. |
Beta Was this translation helpful? Give feedback.
All reactions
-
π 1
-
@trlevvis You're not alone. I spent almost 2 years trying to do the right thing with MS to no avail. I committed to refactoring everything and publishing with new package identifiers Feb '22 (which was the original MS suggestion πΏ). Things went official in Aug '22. .NET 5 is not officially supported in later versions (e.g. .NET 6, 7, 8) so I've been trying to come up with progressively increasing ways to get the word out there. |
Beta Was this translation helpful? Give feedback.
All reactions
-
Thank you for the update. Your dedication to the API Versioning project and the community is truly appreciated. We look forward to the next chapter and the exciting developments to come in v6.0 |
Beta Was this translation helpful? Give feedback.
All reactions
-
β€οΈ 1
-
@commonsensesoftware Thank you for everything. |
Beta Was this translation helpful? Give feedback.
All reactions
-
Thank you Chris for your hard work! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
This project started as a thought experiment about how take the ideas behind versioning a service, specifically RESTful
services, and implement them in a practical way. The API versioning principles and concepts weren't really anything new, but
applying them in a generic way had yet to be done. It took about 2 years of development and feedback with several projects at
Microsoft, but eventually a generic pattern and foundling framework emerged. 6 years ago I took that foundation to the
open source community in order to evolve the framework and, honestly, for my own selfish use for service projects outside
of Microsoft. It was beyond my wildest imagination that the project would be noticed or become as popular as it has.
The decision to release the project under the Microsoft organization on GitHub was primarily to follow company open source
policy. Despite the common misconception, I am not, nor have ever been, a part of the ASP.NET team. I have established a
report with various team members over the years which I continue to maintain, but nothing more ever came of it. This project
has never had any type of official company sponsorship or funding. Although there been a few external contributions and
design collaborations, I've mostly run this project as a one-man army.
2021 came with a bunch of changes and after 14 years, I decided to leave Microsoft. As the solitary steward of the project,
that left the state of affairs a in predicament. While I attempted to usher a smooth transition of the project and keep it
afloat, there were a number of challenges in doing so. It took several months, but it was ultimately decided that the best
course of action was to move the project out of the Microsoft organization and into the .NET Foundation. Look for this
formal announcement in the .NET Foundation news soon.
This is all well and good. You may have noticed that the repo is already under the .NET Foundation organization, even
though it isn't listed as a project. A couple of other issues have arisen. First and foremost, the project name
and NuGet packages all indicate that they are owned or managed by Microsoft. Since I was the team and there is no longer
any official Microsoft oversight, that has to change. I thought about just forking the repo and starting anew, but I came
to the conclusion that it would be too confusing for the community that has been built. Hence forth, the project will be known
as "Asp", but still retain the ASP.NET API Versioning nomenclature.
The second issue is the NuGet package identifiers. It was suggested that I just send out an advisory that the identifiers
would change and leave them behind. After 100 million downloads, I found that to be an unacceptable answer. It took many months
to track down the appropriate NuGet stakeholders to begin the process, but the package identifiers have now been transferred
to the api-versioning-team with dotnetfoundation as a co-owner. If you've wondered why you haven't seen any packages
published in a long time, that's why. Now that I have some level of control over the packages again, updates can resume
once more. There are some limitations though. Any expansion of features in new packages would not be able to continue to
be published under the
Microsoft.*
prefix. Given this restriction and the previous possibility I might not have ever regained controlof the packages, I have already begun work in the next major release that will start using the
Asp.Versioning.*
prefix withoutany reference to Microsoft. The
README.md
and repo will provide information indicating this transition. The existing packagesfor
v5.x
will continue limited servicing for existing issues before the long-term switch to the new packages.I have no doubt that this transition will result in some level of confusion and disruption. I hope that this announcement will
provide some level of clarity as to the how and why it is happening. I'm really proud and honored to be a part of the
community that has been built around API Versioning, which is a big part of why I'm invested in continuing to actively support
it. It has also been many years since the project started and if there is to be a big disturbance now is the time to rip off
the proverbial band aid. The details of all these changes will be outlined in the
v6.0
roadmap discussion.Thank you to all that have supported and advocated for the project over the years.
Chris (@commonsensesoftware)
The API Versioning Team
Beta Was this translation helpful? Give feedback.
All reactions