en.osm.town is one of the many independent Mastodon servers you can use to participate in the fediverse.
An independent, community of OpenStreetMap people on the Fediverse/Mastodon. Funding graciously provided by the OpenStreetMap Foundation.

Server stats:

251
active users

#packaging

1 post1 participant0 posts today

So #setuptools fun: if your source tree contains a symbolic link to a directory, setuptools may randomly either include the original directory in the source distribution, or move it where the symlink was, disregarding the original location.

So if you have:

a/a
a/b
a/c
b -> a

you'll randomly end up with either:

a/a a/b a/c (and no "b")

or:

b/a b/b b/c (and no "a")

github.com/pypa/setuptools/iss

setuptools version 78.1.0 Python version 3.13.2 OS Gentoo Linux amd64 Additional environment information No response Description When the source tree contains a directory symlink such as b -> a, th...
GitHub[BUG] When source tree contains a directory symlink, the directory is randomly packaged either as the original or symlink path · Issue #4937 · pypa/setuptoolsBy mgorny

How packages with multiple build systems to choose from (either officially supported, or user-maintained) work:

1. The package has a primary non-CMake build system.
2. A #CMake build system is added.
3. Random reverse dependencies start depending on CMake exports from given package.
4. Distributions start switching over to CMake.
5. CMake turns out to be broken (again) in the next release.
6. You don't know if you can switch back, because you have no clue if some of the reverse dependencies don't require CMake exports.

So, now that the urgent fires have been put out for the time being, let's talk what other fun stuff #setuptools are doing these days.

For example, they have implemented PEP 639 recently (new license metadata). While doing that, they immediately deprecated their previous `license-field` field, giving people until 2026-02-18 to update their projects. The deprecation warnings also gives a helpful hint that you need setuptools 77 for the new field, which was released… a week ago.

So yeah, setuptools pretty much tells you that you need to choose between the old solution that means that all the versions of your package using it will stop building next February, or the new solution which means that your package will now require a week-old setuptools release (and effectively kill support for EOL Python versions, for which some projects apparently still care).

And of course the #Python community will tell you to solve the problem by pinning dependencies. And guess what happens when people put arbitrary pins (say, <77) to silence this deprecation warning, and other people have >=77 dependency, because they use the new variant.

So… would you like to talk about flit, perhaps? Or hatchling?

PS. The best joke is that they're pointing at a packaging guide that hasn't even been updated yet and still states that setuptools do not implement PEP 639.

github.com/pypa/setuptools/blo
web.archive.org/web/2025032403

Just added difftastic to #guix on the #rust team branch. It's a really good 'structural diff' which can provide a more human-readable diff.

Thanks to the contributor for sending it. I've found it really helpful for looking at package changes as I've been updating it.

difftastic.wilfred.me.uk/

difftastic.wilfred.me.ukDifftastic, a structural diff tool that understands syntaxDifftastic, a structural diff tool that understands syntax
#git#diff#nix

social.treehouse.systems/@mgor

Yes, they did it. #setuptools literally made lots of #Python packages (such as requests) explode, apparently in order to resolve a problem with their own test suite. Sure, that stuff has been deprecated for a long time. But as I've said multiple times, *nobody* sees these deprecation warnings.

Well, unless they run #Gentoo, because we have literally the only Python package installer out there that catches and repeats setuptools deprecation warnings verbosely. But we don't have time to fix deprecations in upstream packages while upstreams are making sure to set up fires all over the place, all the time.

github.com/pypa/setuptools/iss

Treehouse Mastodonmgorny-nyan (he) :autism:🙀🚂🐧 (@mgorny@treehouse.systems)Remember when you thought it's fine to ignore all these deprecation warnings about #setuptools randomly renaming stuff, because they're never going to remove the backwards compatiblity? https://github.com/pypa/setuptools/pull/4870 #Python

Little penguins trapped in rubbish and starving

"The penguin likely starved to death because it couldn’t break free."

"March has been a bad month for Victoria's little penguins, with large numbers discovered dead on beaches in and around Warrnambool and west of Phillip Island. Those deaths have been linked to rising sea temperatures and overfishing of the penguin's natural prey."
>>
au.news.yahoo.com/aussies-aske
#birds #penguins #rubbish #entanglement #starvation #plastic #packaging #overfishing #NSW #wildlife

Yahoo News · Aussies asked to 'think twice' after devastating find in 25kg of rubbish collected at new pierBy Michael Dahlstrom

From pouch to pouch - a way of life
Slurping and slumping from toddler food pouch to smoothies to elderly food pouches

“Something you never saw 20 years ago that has become entirely normal is the sight of a young child in a pushchair slurping his or her lunch from the nozzle of a pouch. - a way of life that continues long after babyhood. Sucking smooth, sweet puree direct from a pouch is also a recipe for tooth decay.”
>>
theguardian.com/society/2025/m
#food #packaging #foodpouch

The Guardian · Ultra-processed babies: are toddler snacks one of the great food scandals of our time?By Guardian staff reporter

Imagine you're a #Gentoo packager, and you're about to bump a #Python package. Which of the release summaries sounds the most ominous to you?

A #PyPI riddle: one of the following projects is using trusted publishing (i.e. #SigStore signatures) and the other isn't. Can you tell which one does, and how can you tell? And yes, it's visible immediately on the top project page, you don't have to click anything.

pypi.org/project/ansible-keyri
pypi.org/project/sampleproject

Please CW your answers not to spoil. And if you can't, don't worry — this is one of the most horrible #UI ideas I've ever seen.

pypi.orgClient Challenge
🟢 BOX 24/24 🟢

Special edition of my ‘36 Days of Type, 08’ letter-set.
24 boxes (signed and numbered), including 40 postcards (26 letters, 10 numbers, and 4 overviews).

....................................................................

Box Specifications:
— Editions: 24
— Signed & Numbered
— Box size: 15.5x11x2 cm
— Inside cover: Silk-screen print

....................................................................

Postcards Specifications:
— Post cards: A6 (10,5x14,85 cm)
— Printing techniques: full-color digital
— Paper: Tintoretto Gesso, 350 grams
— Printing: PeterPrint
....................................................................

#box #packaging #art #design #typography #lettering #graphicdesign #postcards #print #pixelfed #pixelfedart #printedpaper #typographic #digitalprint #graphicdesign #colorful #36daysoftype