.NET Developers should be using dotnet-outdated to update their project's references

  Рет қаралды 44,786

Scott Hanselman

Scott Hanselman

3 ай бұрын

.NET Developers should be using dotnet-outdated to update their project's references github.com/dotnet-outdated/do...

Пікірлер: 70
@TheBuzzSaw
@TheBuzzSaw 3 ай бұрын
"You can't just blindly update stuff." YOU UNDERESTIMATE MY POWER.
@msdevel
@msdevel 3 ай бұрын
Thank you for your comment on the previous video regarding my comment on technology debt. This is a great corrective to that. Anyway, after 18 years of programming in C#, I have come to the conclusion to be like a cowboy and update even blindly and wait for what tests and staging will reveal as I collect technology debt. I have seen many destroyed projects and companies because they did not care about updating anything and then the cost of the project increased to such an extent that it could not be saved.
@takistewart3404
@takistewart3404 3 ай бұрын
Embarrassed that I'd never heard of dotnet-outdated
@bhanuchhabra7634
@bhanuchhabra7634 3 ай бұрын
Not you only
@jonathanperis3600
@jonathanperis3600 3 ай бұрын
Totally the same
@Gonkers44
@Gonkers44 3 ай бұрын
Now I know what I’ve been missing.
@90vackoo
@90vackoo 3 ай бұрын
Thanks, we are in the process of updating our .net6 projects, the timing couldn't have been better. Never knew about these tools much appreciated! 😊
@PranayDora
@PranayDora 3 ай бұрын
Had no idea such a marvel existed! Feels i was livin' under a rock all this while! Thanks for sharing!
@phantompooper
@phantompooper 3 ай бұрын
I just started upgrading projects this week and have been running into some problems using Microsoft's .Net upgrade assistant. This is something I will definitely check out! Thanks!
@hemant-sathe
@hemant-sathe 3 ай бұрын
I am absolutely awed. Didn’t know about this and it’s so helpful. My current project team is struggling with the automated scan tools implemented across organisation which reports every vulnerability scan. This is like God send. We host our azure functions in aks. The base images we get have vulnerabilities in the extension bundles. These eventually are updated by Microsoft but I need to check if I can scan the whole docker image and upgrade those packages safely.
@bdcp
@bdcp 3 ай бұрын
Awesome! Together with upgrade-assistant dotnet cli is on fire! Never knew these tools existed, is there a list compiled somewhere with these tools?
@jongeduard
@jongeduard 3 ай бұрын
Thanks this can be really useful. Although currently it completely aborts at the first project it does not understand, even if I pass it the ifs option (which rather for failed package sources, not for failing projects), so running it for a full directory of projects is still waiting to become easier I guess.
@mhDuke
@mhDuke 3 ай бұрын
thanks hanselman
@georgehelyar
@georgehelyar 3 ай бұрын
I wrote a tool for this at my work for every repo without having a local copy, so that we can just update all packages in all repos nightly. It just uses azure devops rest api to fetch only csproj files into memory, load them with msbuild locator, update them with nuget protocol, push back and open a pr. Most off the shelf tools including those shown here don't work with projects that contain multiple target frameworks or old style projects like pre core asp, and they tend to be quite slow.
@HunterMayer
@HunterMayer 3 ай бұрын
Another question... Is this something you would use along side the dotnet upgrade tool. And rhe followup is does it replace the nuget package manager altogether? There seems to be complimentary overlap. Or is your typical use case to not use those tools and rely on outdated solely or mostly. What are the case you would use those tools instead of this one? (These are all questions i will have to supply the deciders id we adopt this alproach.)
@mk.gurenzero9434
@mk.gurenzero9434 2 ай бұрын
I love the terminal color scheme and theme can we get a link or a copy of the settings for that?
@bh9090bh9090
@bh9090bh9090 3 ай бұрын
All very cool info... but what is that line completion history browser thing?? That's awesome!
@shanselman
@shanselman 3 ай бұрын
www.hanselman.com/blog/adding-predictive-intellisense-to-my-windows-terminal-powershell-prompt-with-psreadline
@kouroshb26
@kouroshb26 3 ай бұрын
Anny good guide on moving from vcxproj to csproj guide? Woud love a tool like the one you mensioned to update like the dotnet upgrade assistant
@kj2w
@kj2w 3 ай бұрын
If I write unit tests using xUnit, is Playwright not an optionn since it specifically mentions testing frameworks: MSTEST and NUnit?
@Joooooooooooosh
@Joooooooooooosh 3 ай бұрын
Isn't that profile pic @2:38 from like 2003? Might be time to run profilepic-outdated. 😆
@funkylosik
@funkylosik 3 ай бұрын
sometimes i still keep the profile picture of me being 6, it has it's charm :D
@webluke
@webluke 3 ай бұрын
That's his "codefishing" image to get all the single lines of code.
@reikooters
@reikooters 3 ай бұрын
I'm familiar with his blog and that picture, but this is my first time finding his KZbin channel and seeing what he looks like now, so it was a surprise 😂
@IssaFram
@IssaFram 3 ай бұрын
Is it safe to assume that this tool will search all package reference sources?
@harsha7029
@harsha7029 3 ай бұрын
I yoloed .net 6 to .net 8 and everything worked out of the box.
@kaysammi3
@kaysammi3 3 ай бұрын
I wish i saw this a couple weeks ago when i updated our app. The nuget packages were my biggest issue.
@jspesh
@jspesh 3 ай бұрын
What is that tool you are using to make arrows/boxes on the screen and zoom in?
@shanselman
@shanselman 3 ай бұрын
ZoomIt
@HunterMayer
@HunterMayer 3 ай бұрын
Maybe this is off topic... Nuget package manager is flagging libraries/packages that have known vulnerabilities/issues. Is that within the scope of this tool?
@flygonfiasco9751
@flygonfiasco9751 3 ай бұрын
I use this tool a lot. It’s great
@DiomedesDominguez
@DiomedesDominguez 3 ай бұрын
I just learn about upgrade-assistant, now I can try to upgrade my +12 years old side projects.
@g3ff01
@g3ff01 3 ай бұрын
What is that colorful tool telling your basic git info all the time? What is the tool you use to search interactively in the git history? It isn't fzf, I guess.
@CafeAsp
@CafeAsp 3 ай бұрын
Good video, thanks.😀
@KvapuJanjalia
@KvapuJanjalia Ай бұрын
.NET SDK already has a command to list outdated/deprecated/vulnerable packages, but it does not upgrade them.
@MarkHegreberg
@MarkHegreberg 3 ай бұрын
I've written my own bash one-liner that interactively updates packages. super simple, just wraps dotnet list package --outdated with fzf and pipes it into dotnet add package
@ryanryder1981
@ryanryder1981 3 ай бұрын
Thanks this is great!
@edburdo
@edburdo 3 ай бұрын
Scott... can you do a video about Playwright?
@jadali1
@jadali1 15 күн бұрын
Is there an alternative solution to dotnet-outdated that works with .NET framework (classic)? I have projects built with 4.7.2 and 4.8 that I need to run dotnet-outdated against.
@mustafasabur
@mustafasabur 3 ай бұрын
What’s wrong with NuGet Package Manager?
@reikooters
@reikooters 3 ай бұрын
Seems good if your solution is made up of multiple projects, since the package manager only shows what you're using in that one selected project, where as I can see in the video it's showing updates across all projects
@mustafasabur
@mustafasabur 3 ай бұрын
@@reikooters you can also see for multiple projects by right clicking the solution and picking nuget manager
@reikooters
@reikooters 3 ай бұрын
@@mustafasabur Thanks for that! Somehow I never noticed it
@BillyVanegas
@BillyVanegas 2 ай бұрын
I am amazed by these tools, but once you use them, although they streamline and simplify the work, they also let you know how outdated your projects, which comprise the solution, are. The path that Scott shows is only a quarter of everything you have to do to transition your .NET 6.0 project to .NET 8.0. If your complete path spans from development to production. It took him 10 minutes with three projects, whereas I spent over 2 hours on the same tasks (addressing issues when changing versions, methods that no longer exist and need to be replaced). Then, to complete the path to production, for the CI/CD to deploy it to Azure, it took another five hours, for me. The YAML changes, they're small changes but they matter, and then when he does the Release on the app service, there are also other adjustments to make in a YAML. In short, it takes almost a full workday to get everything updated (Completed the entire path) and have a correct baseline for the .NET 10 version, which is what I hope to use for the next update. I hope to comment on this again in the next 2 years. :)
@andrejdz9ga
@andrejdz9ga 3 ай бұрын
9:34 this comnent must be engrave in stone for centuries.
@varshneydevansh
@varshneydevansh 3 ай бұрын
My first and last job was in .NET MVC for Government of India
@Crozz22
@Crozz22 3 ай бұрын
Why use this instead of just keeping using nuget package manager?
@vlogulsibian
@vlogulsibian 3 ай бұрын
the big question i have is why are missing from my dot net projects parts of the dot net or why can not be accessed . nativewin32 is one of them. i use vs2022c free and i can not access the disks informations if i have multiple disk how can i find the disk infos ???
@vlogulsibian
@vlogulsibian 3 ай бұрын
i now throw c# and return to c++ ????
@mattcargile
@mattcargile 3 ай бұрын
Love seeing you drive stick shift! 😊
@BrianHunsakerMusic
@BrianHunsakerMusic 3 ай бұрын
I'm the other way around. I never do anything command line unless the GUI version doesn't exist. And I'm a long-time, high level programmer. I know it's an uncommon response for people at my level, but it's more efficient and I have no issues with it, otherwise I'd command line more.
@mattcargile
@mattcargile 3 ай бұрын
@@BrianHunsakerMusic bummer! You can’t repeat GUI operations easily and you may miss all the core nuggets of wisdom of how the systems work. Are you working on Rust or C or C++?
@BrianHunsakerMusic
@BrianHunsakerMusic 2 ай бұрын
@@mattcargileC# actually. Some people use the excuse that "the GUI doesn't have all the options", but I say they've never used a product like Tortoise SVN / Git. It can be done well and correct and have all the options I normally need. And I don't have to remember cryptic commands or consult my cheat sheet for things I forgot by avoiding the command line. I don't lose anything, I save time trying to memorize or look up cheat sheets. I understand that people who are always in Unix and other types of folks will prefer command line, that makes sense. For programmers in my area, it just doesn't. But I've always been beating my own drum so it's not surprising.
@mattcargile
@mattcargile 2 ай бұрын
@@BrianHunsakerMusic what about reproducing builds across dev local env? You need to use the CLI for that.
@BrianHunsakerMusic
@BrianHunsakerMusic 2 ай бұрын
@@mattcargileNot sure what you mean. I hit F5 in Visual Studio. When I build Docker containers locally and push to the cloud, yes I use a few commands since it's much faster than a pipeline. That's about it.
@verrigo
@verrigo 3 ай бұрын
"You guys have tests?!" :D
@furqan-safdar
@furqan-safdar 3 ай бұрын
How to get that colorful CLI in Terminal?
@shanselman
@shanselman 3 ай бұрын
I have a video on it
@furqan-safdar
@furqan-safdar 3 ай бұрын
@@shanselman would you share the link plz
@timothygibney159
@timothygibney159 3 ай бұрын
@@furqan-safdarohmyposh
@punters4218
@punters4218 3 ай бұрын
You can’t run .net outdated YOLO 😂 Great video!
@Torsan1977
@Torsan1977 3 ай бұрын
--yolo needs to be a flag on every dotnet command! 😂
@HunterMayer
@HunterMayer 3 ай бұрын
How did you know I am buried in .net 6 projects and the need to unbury myself is... palpable!
@KnowlegeStream
@KnowlegeStream 3 ай бұрын
hi, can you share your gist please :)
@krccmsitp2884
@krccmsitp2884 3 ай бұрын
Does that also work with Central Package Management (Directory.Packages.props)?
“.NET 9 Is Killing MediatR, MassTransit & Wolverine!”
11:59
Nick Chapsas
Рет қаралды 78 М.
1 класс vs 11 класс (неаккуратность)
01:00
Sigma Girl Education #sigma #viral #comedy
00:16
CRAZY GREAPA
Рет қаралды 101 МЛН
SpaceX Falcon 9 Starlink Launch
Reality PC
Рет қаралды 1
The Lesson About GUID IDs I Learned the Hard Way
15:43
Zoran Horvat
Рет қаралды 27 М.
Updating my personal website from .NET 6 to .NET 8 LTS in 15 min
17:13
Scott Hanselman
Рет қаралды 12 М.
Open Innovation: Using Emacs to Bring Depth to Open Source
7:05
Positron's Emacs Channel
Рет қаралды 579
microsoft's new AI feature is an absolute dumpster fire
9:34
Low Level Learning
Рет қаралды 62 М.
Await Async Tasks Are Getting Awesome in .NET 9!
9:24
Nick Chapsas
Рет қаралды 86 М.
The Truth Talk Podcast #9 - With Laurice Jimu
36:56
Larreth Jimu
Рет қаралды 24
Make Your LINQ Up to 10x Faster!
11:08
Nick Chapsas
Рет қаралды 52 М.
Stop Using the Worst Way to Loop Lists in .NET!
9:35
Nick Chapsas
Рет қаралды 44 М.
Pratik Cat6 kablo soyma
0:15
Elektrik-Elektronik
Рет қаралды 8 МЛН
Main filter..
0:15
CikoYt
Рет қаралды 988 М.
iPhone 15 Unboxing Paper diy
0:57
Cute Fay
Рет қаралды 1,7 МЛН
Индуктивность и дроссель.
1:00
Hi Dev! – Электроника
Рет қаралды 1,6 МЛН
Apple watch hidden camera
0:34
_vector_
Рет қаралды 56 МЛН
С ноутбуком придется попрощаться
0:18
Up Your Brains
Рет қаралды 316 М.