A year of AI disclosure in critical packages: https://nesbitt.io/2026/08/06/a-year-of-ai-disclosure-in-critical-packages.html
Andrew NesbittA year of AI disclosure in critical packagesAssisted-By: Daniel StenbergPackage Management Nerd, working on mapping the world of open source software https://ecosyste.ms and blogging about package managers at https://nesbitt.io
A year of AI disclosure in critical packages: https://nesbitt.io/2026/08/06/a-year-of-ai-disclosure-in-critical-packages.html
Andrew NesbittA year of AI disclosure in critical packagesAssisted-By: Daniel StenbergRE: https://mastodon.social/@andrewnez/117031823385268173
I’m now getting daily reminder emails that I have not responded to this request yet. 😬
Paraphrasing an email from a security company : We copied one of your blog posts and turned into an advert for one of our products. Please add a link to our blog post to the end of yours. 🥉
Andrew Nesbitt boosted
My 4-year/old just learned about the concept of infinity and is now throwing a tantrum over it. “It’s weird! I don’t like it. I just want numbers to stop!”
Andrew Nesbitt boosted
Please help if you can: I am working with some students who are studying programmers' beliefs about software engineering folklore. If you can spare a few minutes to answer the question in https://survey.bth.se/survey/2545, we would be very grateful. We would also be grateful if you could circulate the survey link to colleagues and friends - we would like to reach as diverse a demographic as possible. Thanks in advance.
survey.bth.se/survey/2545Andrew Nesbitt boosted
A car manufacturer lists an Android botnet in its open source attribution. The entry gives away how the list was made: by scanning instead of by declaring.
Why a declared dependency list is worth more than a scanned one, and how the PHPUnit PHAR discloses its own contents:
phpunit.expertYour composer.lock knows what a carmaker only guessesA car manufacturer lists an Android botnet in its open source attribution. The entry gives away how the list was made: by scanning instead of by declaring. Why a declared dependency list is worth more than a scanned one, and how the PHPUnit PHAR discloses its own contents.Unexpected use case for https://github.com/git-pkgs/proxy - putting it in front of their Artifactory.
I suspect people are using it for edge fan-out without actually paying for Artifactory Edge nodes.
github.com/git-pkgs/proxy
GitHubGitHub - git-pkgs/proxy: A lightweight caching proxy for package registries.A lightweight caching proxy for package registries. - git-pkgs/proxyAndrew Nesbitt boosted
Packaging 26.3 is out, with ranges (huge), PEP 808 support, and tons of fixes, improved performance, etc. https://github.com/pypa/packaging/releases/tag/26.3 #python #release
GitHubRelease 26.3 · pypa/packagingWhat's Changed
Features
Add a public VersionRange API and SpecifierSet.to_range(), representing the versions a specifier set accepts as an interval set that supports intersection, union, differenc...Andrew Nesbitt boosted
my keynote from europython is online!
youtu.be/wMPe_KepOjc
YouTubeKeynote: Securing Python for the next decade - William Woodruffhttps://github.com/chaoss/disclosure is proving to be a very useful tool in analysing disclosure of ai contributions to oss projects.
GitHubGitHub - chaoss/disclosure: Github Action to gather signals of disclosed AI contribution to aid community health monitoring tools and open source maintainersGithub Action to gather signals of disclosed AI contribution to aid community health monitoring tools and open source maintainers - chaoss/disclosureAndrew Nesbitt boosted
brew install actions/checkout - Using Homebrew's tap machinery as a curated distribution layer for GitHub Actions.
https://nesbitt.io/2026/08/04/brew-install-actions-checkout.html
Andrew Nesbittbrew install actions/checkoutUsing Homebrew’s tap machinery as a curated distribution layer for GitHub Actions.Andrew Nesbitt boosted
i didn’t think it was physically possible, but there’s finally something worse than curl | sh
brew install actions/checkout - Using Homebrew's tap machinery as a curated distribution layer for GitHub Actions.
https://nesbitt.io/2026/08/04/brew-install-actions-checkout.html
Andrew Nesbittbrew install actions/checkoutUsing Homebrew’s tap machinery as a curated distribution layer for GitHub Actions.Replying to @andrewnez@mastodon.social
Also if you're adding cache busting url parameters to api requests to try and get fresher results, I'm just going to block you, don't do that.
Curl had it's summer of bliss, @ecosystems is having it's Summer of Piss (taking) by security companies hammering the public api and ignoring the data license.
Replying to @andrewnez@mastodon.social
Anubis upgraded to 1.26.2 and difficulty level increased.
Also found some new security companies heavily scraping, I look forward to seeing whatever they produce with this CC-BY-SA data that I'm sure they will follow the license of and republish their findings under the same license.
RE: https://mastodon.social/@andrewnez/117032582823441702
Investigating this today, looks like there's a new residential proxy scraping the html of the various ecosyste.ms services, not the json api.
Useragent is all last years chrome on desktop mac, all executing js and passing anubis, see if I can make some tweaks to that config to shut it down.
92m requests to @ecosystems so far today, the biggest single day I've ever seen 🫠
Andrew Nesbitt boosted
RE: https://fosstodon.org/@adamchainz/117017044548701755
"Wheels are also now built with frame pointers enabled, per the PEP 831 change in Python 3.15. Frame pointers are a debugging feature for low-level languages like C, which allow debuggers to reconstruct the call stack of a program. Python has decided to enable frame pointers by default and encourage the ecosystem to do so as well, to make debugging easier for us all, so time-machine is joining the party."
Enabled by default for 3.15, do this for older versions:
@adamchainz@fosstodon.org✍️ time-machine 3.3.0 is out, with Python 3.15 support, performance improvements, subinterpreter support, and various bug fixes.
Check it out, and if you’re using freezegun, try the updated Migration CLI to convert and speed up your tests.
Replying to @andrewnez@mastodon.social
It’s now up to 101m 🫣
92m requests to @ecosystems so far today, the biggest single day I've ever seen 🫠
Paraphrasing an email from a security company : We copied one of your blog posts and turned into an advert for one of our products. Please add a link to our blog post to the end of yours. 🥉