Тёмный

2.1 Billion Downloaded Deprecated Packages NPM | Prime Reacts 

ThePrimeTime
Подписаться 574 тыс.
Просмотров 66 тыс.
50% 1

Recorded live on twitch, GET IN
/ theprimeagen
Become a backend engineer. Its my favorite site
boot.dev/?prom...
This is also the best way to support me is to support yourself becoming a better backend engineer.
Article link: www.scmagazine...
By: Laura French
MY MAIN YT CHANNEL: Has well edited engineering videos
/ theprimeagen
Discord
/ discord
Have something for me to read or react to?: / theprimeagenreact
Kinesis Advantage 360: bit.ly/Prime-K...
Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
turso.tech/dee...

Опубликовано:

 

11 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 160   
@k98killer
@k98killer 6 месяцев назад
I'm glad that the Aqua Team Security Nautilus Force is out there fighting cyber crime.
@DsiakMondala
@DsiakMondala 6 месяцев назад
Master Shake holding a stick be like "I'll show you what is deprecation"
@DanielCouper-vf5zh
@DanielCouper-vf5zh 6 месяцев назад
Lookit that fricken project, fricken deprecated to Jesus and back
@joelazaro461
@joelazaro461 6 месяцев назад
The crime-fighting team members are: * Firewall Fiona - Cyber defense expert, skilled in creating impenetrable digital barriers. * Enigmatic Eddie - Master of data protection and cryptography, keeps the team's secrets safe. * Phantom Phoebe - The stealth operator, adept at navigating the dark web and shadowy corners of the internet. * Byte Blaster Bob - Offensive hacker, capable of launching devastating cyber attacks. * Protocol Paladin Pete - Ensures adherence to cybersecurity protocols and standards.
@yeahdudex
@yeahdudex 6 месяцев назад
number one on the web, g
@MagnumCarta
@MagnumCarta 6 месяцев назад
Nautilus: "Carl, you need to update your package!" Carl: "It don't matter. None of this matters"
@KemalAhmedIsAwesome
@KemalAhmedIsAwesome 6 месяцев назад
I'm an NPM scavenger. I pick up deprecated repos and try to save them. Often I will update a library and add 3rd party security and maintainers will ghost, but a few libraries do sign on and transfer ownership.
@JegErN0rsk
@JegErN0rsk 6 месяцев назад
not all heros wear capes
@earthling_parth
@earthling_parth 6 месяцев назад
Salute to you sir
@theycallmeken
@theycallmeken 6 месяцев назад
For real?
@Microphunktv-jb3kj
@Microphunktv-jb3kj 6 месяцев назад
make a scavenger cult / clan :D "brand yourself as like post-apocalyptic band of brothers travelling in dangerous straits mad max stylw orld scavenging shit JS code to survive" .... : )))) people would probably join your club and effort ...
@KemalAhmedIsAwesome
@KemalAhmedIsAwesome 6 месяцев назад
@@Microphunktv-jb3kj unfortunately little money in it. despite being setup for sponsors and everything, I maybe pick up $200 per year which is nothing compared to the time to maintain the libs
@tamal
@tamal 6 месяцев назад
Security vulnerabilities like NPM packages can also exist in third-party Java packages, go get, pip install or cargo add, PHP, etc. NPM scales way higher due to JavaScript not having std lib.
@xXYourShadowDaniXx
@xXYourShadowDaniXx 6 месяцев назад
One of the best reasons for having a strong standard library: You reduce dependencies and you know it will be maintained as long as the language doesn't die
@kuhluhOG
@kuhluhOG 6 месяцев назад
​@@xXYourShadowDaniXx correction as long as the implementation you are using of the language doesn't die
@vintner_
@vintner_ 6 месяцев назад
I'd say not only because of weaker standard library, but also due to being one of the most used languages in the world and one of the most used by beginners as well, which certainly generates more packages
@HunsterMonter
@HunsterMonter 6 месяцев назад
​@@vintner_That's how you get packages like is-odd with hundred of thousands of weekly downloads
@xyangst
@xyangst 6 месяцев назад
Rust also has a weak std lib but doesn't have this problem, i think its more that js moves a lot faster
@AdiktdToLoli
@AdiktdToLoli 6 месяцев назад
i love it when i look at a face expecting it to be solid but then i see the text behind his head.
@jeremystone6433
@jeremystone6433 6 месяцев назад
I downloaded a 100 deprecated packages just installing npm
@bbrainstormer2036
@bbrainstormer2036 6 месяцев назад
If leftpad didn't prove that npm was a hellscape, I don't know what will
@jouebien
@jouebien 6 месяцев назад
what's the bet half of these packages are packages like isArray, isTrue or isFalse?
@MikAlexander
@MikAlexander 6 месяцев назад
There's a certain level of complexity which we all can handle. Above that threshold everything becomes chaotic and unmanageable.
@7th_CAV_Trooper
@7th_CAV_Trooper 6 месяцев назад
Dude, the devs at my client never update npm nor nuget packages. It's like they don't even know it's an option.
@TimothyWhiteheadzm
@TimothyWhiteheadzm 6 месяцев назад
'Who doesn't at least align their case statements in ascending order?'. My guess it was done for performance reasons ie put the most common branches at the top. Will it actually make an appreciable difference? Depends on what the code is about and what the compiler does with it.
@DanielCouper-vf5zh
@DanielCouper-vf5zh 6 месяцев назад
Aaaand what percentage of these deps are build tool related? Sure, may well be deprecated but as they're local, not sure it's much of an issue (bar dev annoyance). Also, what % of that weekly figure is entirely automated, repeated CI builds? And what % is due to pinned older Node versions (see also every other long running project in every other language)? Tho if you're a security company BIG SCARY NUMBERS mean big cash I guess
@2dstencil847
@2dstencil847 6 месяцев назад
at least 20% would be dev tools, because how javascript and other server side project last century rely on (custom build step)
@Ish216
@Ish216 6 месяцев назад
I think their definition of deprecated is a bit too broad, but the point is correct I have no problem updating packages with any other language/package manager, but with npm I feel like dependency hell is just the norm (might be a bias from especially bad projects though)
@PaulGrayUK
@PaulGrayUK 6 месяцев назад
API wrappers for API wrappers was never a thing I thought would happen.
@ov1kenobi663
@ov1kenobi663 6 месяцев назад
10:15 .. Working as a consultant, I see this on the regular when jumping into a client project. Serverless made it sooooo much worse as there is only so fast cloud providers will update their offerings' base versions
@AScribblingTurtle
@AScribblingTurtle 6 месяцев назад
To be fair, this is only one of the many issues, that all package-based systems, available to the public, have. You get exactly the security and service you pay for and You can't hold anyone responsible but yourself if something goes wrong.
@TheKennyWorld
@TheKennyWorld 6 месяцев назад
the placeholder code is nuts
@robgrainger5314
@robgrainger5314 6 месяцев назад
It's possible that some of those packages not being actively maintained are simply complete. Not every package needs maintenance.
@MatheusLopesdev
@MatheusLopesdev 6 месяцев назад
“someone (sometimes me) have to deal with the decisions that I made 8 years ago” seems more accurate in my case 😂
@GPT-X938
@GPT-X938 6 месяцев назад
I remember one time passing around a node_module folder between my team because of a dependency issue, good times.
@mwwhited
@mwwhited 6 месяцев назад
As someone that had an opensource project and archived it because I didn't care and there were better options to replace it. I understand... and would have done the same. There is no money in the vast majority of these projects (I'll just ignore the number of people who's only contribution to a fork is removing the license) and the primary reason they are rotting is the original auth is no longer working on anything that cares about the project. BTW, the projects are open source... the code is out there especially for NPM. if you are about your own project either don't take the dependency or fork and fix it yourself.
@mwwhited
@mwwhited 6 месяцев назад
And from the number of mentions as well as the fact this "study" was done by the company that wrote the post and a product to scan for these issues... this is an advertisement not a study.
@orterves
@orterves 6 месяцев назад
2:24 it's open source, it most likely has a licence that absolves the author of any damages. Archiving the dependency was more than they had to do in response. Anyone is free to fork fix and provide a new version
@kuhluhOG
@kuhluhOG 6 месяцев назад
And because of that, when I want deprecate some software, I make one final release which at least adds a line which just logs on startup "software is deprecated and will not receive security fixes. Use at your own risk"
@TimothyWhiteheadzm
@TimothyWhiteheadzm 6 месяцев назад
Most of us rely on deprecated packages and that's OK. It doesn't mean it doesn't work. Even when they have known security vulnerabilities it may not actually affect your code.
@SeRoShadow
@SeRoShadow 6 месяцев назад
open source is not funded so why would they do a commitement to update them. they have no obligation.
@Telhias
@Telhias 6 месяцев назад
I wonder how many of those are things like leftpad package where the content is so simple that deprecation status doesn't matter.
@Nethezbet
@Nethezbet 6 месяцев назад
Is that the lorem ipsum version of code for "stock photo" images in developer articles?
@nevokrien95
@nevokrien95 6 месяцев назад
The only thing js can do blazingly fast is deprecate packages
@rodrigoserafim8834
@rodrigoserafim8834 6 месяцев назад
JS is purgatory, NPM is hell, Node is Tartarus
@RahulSsup
@RahulSsup 6 месяцев назад
I don’t understand one aspect of low-dependency. If you strive to use only the most essential packages and write more code yourself , aintyou opening up vulnerabilities in your own self-written code which will not even be scanned for any CVEs
@MarcelinoDeseo
@MarcelinoDeseo 6 месяцев назад
I guess you can use on security tools to scan the source code for vulnerabilities. Also, you can easily address the vulnerability of your own code rather than wait for the maintainers of the packages to do the fix. Either way, it's a matter of weighing convenience of using third party libraries but being tied to them vs effort to create and maintain your code but having more control.
@julians.2597
@julians.2597 6 месяцев назад
yeah it is, but there's various advantages. First, quite often you don't actually need all of a dependency, just a small part. Reimplementing (or copying from the dependency) it reduces the locations in which vulnerabilities could exist (do I just need to copy one util function or should I depend on lodash?). It also makes it much easier to maintain the code yourself because you don't need to get familiar with the entirety of the dependency (which you should before contributing to it). And lastly it means that an attacker may have to deliberately attack your service since your vulnerability is likely unique to your own program, rather than be able to attack you by default because a vulnerability has become known for a library you depend on.
@vishaldinesh
@vishaldinesh 6 месяцев назад
Does anybody know what bet did he loose ?
@WalterWoshid
@WalterWoshid 6 месяцев назад
The code at 1:00 is core-js (probably minified)
@suede__
@suede__ 6 месяцев назад
If it's open source, why didn't Aqua Nautilus issue a PR fixing it? It's easy to point out vulnerabilities, it's another to actually fix them. I'm not surprised by essentially relying on a volunteer army.
@MarcelinoDeseo
@MarcelinoDeseo 6 месяцев назад
fixing and maintaining an open source library takes time.
@jancizuletek670
@jancizuletek670 6 месяцев назад
Happy 2B downloaded deprecated packages since the posting of this video!
@johnbell1810
@johnbell1810 6 месяцев назад
what happens when the Dependency Deprecation Checker becomes deprecated?
@puncherinokripperino2500
@puncherinokripperino2500 6 месяцев назад
1:00 if you align your case statements you will have to put break; in case 2
@0runny
@0runny 6 месяцев назад
As a backend developer - npm packages seem like playing catch with grenades
@rumplstiltztinkerstein
@rumplstiltztinkerstein 6 месяцев назад
The issue about archiving is that it is Javascript. And things will always break in Javascript. Even if the current code is safe, a dependency eventually will become vulnerable. Meaning we have to at least change the version of the dependency in our project to avoid the risk.
@thekwoka4707
@thekwoka4707 6 месяцев назад
I don't think a lot of the use is new companies picking stuff recently and is deprecated, but shit packages that haven't been updated in 8 years that somehow get recommended all over the place.
@nerderror
@nerderror 6 месяцев назад
This literally happened to me few days ago: I installed my project on new machine, and it was... not working in most weird ways i ever seen, it was impossible to debug. I was so frustrated until i decided to remove "~" from package versions in the package.json file and re-install node modules (i never really wondered what i means before) and... problem was gone! So what happened is, if you have "~" prefix in your package version, it means NPM will install minor updates if they exist (but not major) . And in my case some random package after few years of silence got an update that freaking broke everything. BUT npm assumes minor updates wont brake anything so he happily installs them, how kind of him. Now i will never update my packages ever again 🙂
@Microphunktv-jb3kj
@Microphunktv-jb3kj 6 месяцев назад
6:50 - and thats why JS needs Standard Library
@Shogoeu
@Shogoeu 6 месяцев назад
I wonder how long the Nautilus tool will live until it becomes deprecated.
@MythiPlayz
@MythiPlayz 6 месяцев назад
hoo boy, what did npm do this time?
@goldydog1
@goldydog1 6 месяцев назад
Hey... Blue hair
@GRHmedia
@GRHmedia 6 месяцев назад
There are multiple SQLite3 version most of which are no longer maintained.
@MenkoDany
@MenkoDany 6 месяцев назад
I mean some packages are left-pad and don't need to be updated for decades if ever
@ragectl
@ragectl 6 месяцев назад
I always hate dealing with Python dependencies because it's so bad. But NPM makes Python look like the golden child of perfect dependency management ☠️ It is worth clarifying deprecated does not equal being a security problem.
@xpamamadeus
@xpamamadeus 6 месяцев назад
most of deprecated packages in my opinion its in devDependencies like build tools,not the actual code we use from packages
@bluladyfly
@bluladyfly 6 месяцев назад
*How much businesses rely on unpaid labor. There I fixed it for you.
@blackfrog1534
@blackfrog1534 6 месяцев назад
Exactly right
@goghvonjohann2924
@goghvonjohann2924 6 месяцев назад
The JS ecosystem is just nuts anyway. If you want any sort of quality you need a package repository where they check the quality of your package and your ability to maintain it long term. You shouldn't allow random people to publish random packages....
@NotAFanMan88
@NotAFanMan88 6 месяцев назад
Yes, because ain't nobody got time to keep up with the fact that the node ecosystem deprecates itself within a 6 month window. Its goddamn hell.
@Zakmakoto
@Zakmakoto 6 месяцев назад
>npm install -g npm@latest Warning: NPM is deprecated!
@XKCDism
@XKCDism 6 месяцев назад
When bring on a Dependency the security risk is YOUR responsibility not the developer for the package you downloaded
@kyuss789
@kyuss789 6 месяцев назад
The CLI tells you when you are installing deprecated packages yet everyone ignores it. The “if it works” mentality is strong in software orgs
@tamertamertamer4874
@tamertamertamer4874 6 месяцев назад
Every time I install something with npm I download a bunch of depreciated packages
@asagiai4965
@asagiai4965 2 месяца назад
That code shown doesn't work. Or at least not work as intended.
@LubosMudrak
@LubosMudrak 6 месяцев назад
"Oh no, somebody doesn't want to provide me free updates on the stuff I use to make money!" Just try to pay the guy or fork it and fix it. Duh.
@sumitpurohit8849
@sumitpurohit8849 6 месяцев назад
Research conducted by profound efforts of npm i everything.
@FatiMae-x8e
@FatiMae-x8e 6 месяцев назад
And some people studies cyber security bruh 😅 we literally don't have the man power to maintain the all the code we write ...
@ThatJay283
@ThatJay283 6 месяцев назад
this is also a great reason to not just do stuff like npm install is-array
@tomhanks1732
@tomhanks1732 6 месяцев назад
has this acquia team hunger force ever heard of npm audit?
@SirM0linarius
@SirM0linarius 6 месяцев назад
For a lot of packages it doesnt matter wether they are deprecated. I think for most frontend packages it doesnt matter if its deprecated(in the sense that a update isnt neccessary for security). I wouldnt care wether a date picker lets say is deprecated - if it works and looks good, i wont hassle with updating it.
@MNbenMN
@MNbenMN 6 месяцев назад
Cross your fingers and hope that deprecated date picker isn't allowing some arbitrary data to get injected into your database and unpacked when your app's users load and execute that instead of the data they are supposed to see. Maybe you hand coded sanitation to prevent that, but do all dev that are OK with deprecated dependency really take the extra measures to patch up security holes around abandoned dependencies?
@SirM0linarius
@SirM0linarius 6 месяцев назад
@@MNbenMN if my api endpoints wouldnt use schema validation the app would be insecure anyway. That is nothing a „secure“ date picker could change
@MNbenMN
@MNbenMN 6 месяцев назад
@@SirM0linarius That is valid, of course, up until someone figures out way to exploit the API without invalidating the schema taking advantage of some unintended behavior of the deprecated UI package.
@atikenny
@atikenny 6 месяцев назад
I call it Tuesday.
@MarcelinoDeseo
@MarcelinoDeseo 6 месяцев назад
Good luck dealing with outdated transitive packages
@kirkanos771
@kirkanos771 6 месяцев назад
I thought npm 2 was called yarn.
@MasamuneX
@MasamuneX 6 месяцев назад
can confirm tensorflow 2.10 was the last good one because fuck WSL
@zZMysteriousGamerZz
@zZMysteriousGamerZz 6 месяцев назад
Is your hair thinning? It seems a little transparent
@Fiercesoulking
@Fiercesoulking 6 месяцев назад
Well this will kill JS environment faster (dependency hell) . I heard the Lua hype train started while other using C#
@ask_carbon
@ask_carbon 6 месяцев назад
Cant really say that I am surprised.
@blagojejevrosimov2002
@blagojejevrosimov2002 6 месяцев назад
Thank god it was a lost bet 🙏 I was afraid to ask tbh, thought we lost u 🥺
@CheesyAceGameplay
@CheesyAceGameplay 6 месяцев назад
Normalize SOMBs as apart of maintained developer artifacts.
@Purely_Andy
@Purely_Andy 6 месяцев назад
ngl the hair doesn't look *that* bad
@gabereiser
@gabereiser 6 месяцев назад
NPM is a dumpster fire
@not_my_name5200
@not_my_name5200 6 месяцев назад
it is not blue, it is turquoise
@Blackcloak
@Blackcloak 6 месяцев назад
Did he lose a bet or did he just use too much Rust? 😛
@nyahhbinghi
@nyahhbinghi 6 месяцев назад
Gleamlang
@main-browsing5521
@main-browsing5521 6 месяцев назад
yo jinja
@xxvmvxx
@xxvmvxx 6 месяцев назад
How do you even have 50000 "top" packages Idk man what u doin in java script
@batatanna
@batatanna 6 месяцев назад
Can I npm npm 2?
@maximus1172
@maximus1172 6 месяцев назад
Any new developer should not write javascript and help stop the poison
@michaelschmid2311
@michaelschmid2311 6 месяцев назад
Guess we should just stop to use web frameworks already, back to plain es6 JavaScript + maybe JQuery but even that is a dependency That is avoidable
@CaptainWumbo
@CaptainWumbo 6 месяцев назад
To me this problem is intensely childish and misattributed. It's not a maintainer's fault for abandoning a hobby project. It's a dev's fault for running code on their machine (and their users' machines!!) that they have not audited and have not understood as the burden that it is. Like even as a kid when the internet was barely a thing I knew you weren't supposed to run random executables downloaded from the internet. People just give their trust to random code too freely. That goes for editor plugins too, super easy vector of attack.
@Slyfa187
@Slyfa187 6 месяцев назад
Agreed. Even ignoring the security problems it's bad practice to implement a package at first sight, same thing with copying code from stackoverflow before atleast understanding it. They are called dependencies for a reason. But I think this is still a problem that should be recognized and communicated even if the blame is misattributed. I don't have to blame anyone if my project is not affected because I either vet my dependencies or implement my own solution.
@Anitajonse
@Anitajonse 6 месяцев назад
I'm favoured, $60k every week! I can now give back to the locals in my community and also support God's work and the church. God bless America.
@ramostamis7562
@ramostamis7562 6 месяцев назад
Same here, with my current portfolio made from my investments with my personal financial advisor I totally agree with you
@andymclain2117
@andymclain2117 6 месяцев назад
Wow! Kind of in shock you mentioned expert,elizabeth ann graney. What a coincidence!!
@darrylhodge6708
@darrylhodge6708 6 месяцев назад
Elizabeth Ann has really set the standard for others to follow, we love her here in the UK as she has been really helpful and changed lots of life's
@lannyhumphry6048
@lannyhumphry6048 6 месяцев назад
Life is easier when the cash keeps popping in, thanks to Elizabeth Ann graney services. Glad she's getting the recognition she deserves
@Evansdavis568
@Evansdavis568 6 месяцев назад
Such a genuine personality!!, Sincerely speaking. I will continue to trade and stick to Elizabeth Ann daily signals and guides as long as it works well for me.
@DsiakMondala
@DsiakMondala 6 месяцев назад
Most of these downloads are just people learning anyway, very unreliable number.
@raccoons_stole_my_account
@raccoons_stole_my_account 6 месяцев назад
Love seeing the butthurt people were having over the hair for a week. Ya'll need some self reflection.
@ShadoFXPerino
@ShadoFXPerino 6 месяцев назад
Javascript is a secure, sandboxed language so this isn't a big problem :D :D
@RT-.
@RT-. 6 месяцев назад
Is this a joke?😅
@hieuvuongtrung8814
@hieuvuongtrung8814 6 месяцев назад
Rust is cra(p)b, everything will evolve into it. What youtube lack is more transparency youtuber :))
@newsofthenerd
@newsofthenerd 6 месяцев назад
Prime reads generated marketing article again. This is obviously created by aqua marketing team. As such all information there should be treated as an advert ie complete BS. Also if you do want to read the ad with this information cherry picked to make there point maybe scrub the articles first of its advertisement. But also stop reading astroturfing marketing ads.
@FelipeCotti
@FelipeCotti 6 месяцев назад
Baffles me why english speakers haven't yet swapped deprecated for DEPRECIATED. Much funnier and accurate.
@SuperGulamali
@SuperGulamali 6 месяцев назад
Javascript is deprecated
@kickrocks-os007
@kickrocks-os007 6 месяцев назад
Lost a bet, btw
@ITSecNEO
@ITSecNEO 6 месяцев назад
Very good for pentesters, easy vulnerabilities means easy money. So yeah all js devs, keep doing this 😂😂😂
@jesseparrish1993
@jesseparrish1993 6 месяцев назад
Please deprecate that horrible hair dye. Why do people think this is acceptable?
@alexandrodisla6285
@alexandrodisla6285 6 месяцев назад
Can you just make your hair normal.
@373323
@373323 6 месяцев назад
cheap and cheap advertisement
Далее
The Lies Of 100% Code Coverage | Prime Reacts
21:42
Просмотров 75 тыс.
Scaling Up Prime Video | Prime Reacts
17:30
Просмотров 104 тыс.
Why the PS5 Pro is $700
9:41
Просмотров 1 млн
Jonathan Blow on work-life balance and working hard
19:18
Jordan Peterson Refuses to Debate Matt Dillahunty
12:43
Destroyed By A Regex
17:14
Просмотров 93 тыс.
How I Beat The Password Game
39:53
Просмотров 37 тыс.
Cursor Is Beating VS Code (...by forking it)
18:00
Просмотров 56 тыс.
Developers On Edge
24:55
Просмотров 199 тыс.