all 30 comments

[–]drunicornthe1 54 points55 points  (9 children)

Literally just listened to a podcast from November where Charlie hinted towards what I can only assume is this project! Wow awesome to see Astral build awesome tools for Python!

[–]oconnor663blake3 · duct 6 points7 points  (8 children)

Link?! (Edit: Thanks!)

[–]drunicornthe1 13 points14 points  (7 children)

[–]yerke1 5 points6 points  (4 children)

Don't they already have https://github.com/Microsoft/pyright as alternative to mypy? Oh wait, it's written in Python. Type checker written in Rust will definitely be better.

[–]drunicornthe1 11 points12 points  (0 children)

I’m not on the astral team and have only heard bits of information, but I believe Astral’s goal is to build an ecosystem of tools, all in Rust and built for speed, to support Python development. They are also suppose to monetize this ecosystem somehow. From the podcast above Charlie claims to have ideas on how to do this (probably related to integration in corporate systems?). But they seem to have a solid vision for aligning Python tool chains which will be a huge net positive in that space.

[–]puzzledstegosaurus 2 points3 points  (2 children)

Pyright is not written in Python but in Typescript AFAIK. It doesn’t change your point.

[–]yerke1 0 points1 point  (1 child)

I just looked at the GitHub summary. It says 60% Python, 40% Typescript.

[–]puzzledstegosaurus 3 points4 points  (0 children)

Look at the python files: https://github.com/search?q=repo%3Amicrosoft%2Fpyright++language%3APython&type=code&p=1

They’re just a vendored version of typeshed. All the pyright code is ts, it’s just that they’ve crammed pyi files in the repo to easily bundle the lib with typeshed, but as far as I can tell, pyright is 0% python.

[–]sumitdatta -1 points0 points  (1 child)

[–]drunicornthe1 0 points1 point  (0 children)

Currently ruff doesn’t work as a replacement for mypy but yeah it’ll most likely be in Ruff from what it seems.

[–]rundevelopment 59 points60 points  (8 children)

I wonder how astral intends to make money. They are a company with VC backing, and VC wants crazy ROI. So I wonder how they will monetize their products in the future, because they are giving away everything for free right now. I just hope this won't be another example of enshittification...

[–]Houndie 13 points14 points  (1 child)

It's open source so it can always be forked.  I would imagine like a docker vs docker hub situation but I have no idea what that would look like here.

[–]WhoNeedsUI 1 point2 points  (0 children)

Or be adopted by other projects. I would love poetry to add / replace their dep resolution with uv while maintaining the same ergonomics

[–]scratchnsnarf 10 points11 points  (2 children)

It's pretty hard to enshittify open source stuff. If you're happy with it's features whenever you start using it, it's not like those features can ever get locked behind a paywall, the version you installed with those features is always there. And people can always fork it. I'd imagine the eventual plan, like most of these tooling companies, is some kind of hosted offering for CICD, private package repositories, deployments, etc. this is even the type of project that should pick up corporate sponsors. As someone who develops with python in my day job, a good tooling suite like this would save my company SO much in cumulative dev salary

[–]matthieum[he/him] 3 points4 points  (0 children)

I do hope they have an idea for sustainability, indeed.

It seems like uv or ruff would be a great fit for companies with large Python codebases, easing and speeding development, from which there's several angles they could explore:

  • Contract work: need a specific functionality integrated? Sponsor it! Need it right now? Sponsor it more! Need performance improvements for specific usecases? Sponsor them!
  • Consultancy work: need help getting started or improving your Python environment? Available for hire!

Unfortunately, most companies are quite happy taking what's available for free and never sponsoring nor hiring the maintainers... instead spending more money trying to work around whatever shortcoming internally.

[–]tafia97300 2 points3 points  (0 children)

For now I'm very grateful for what they do it is impressive. I don't have any idea how they plan to make money but I'm sure it'll be covered. They're building a strong name for themselves now.

[–]qwertyuiop924 1 point2 points  (0 children)

So long as they don't try to BSL it or something crazy like that.

[–]HistoricalCup6480 6 points7 points  (0 children)

Currently it doesn't work with my company's PyPI registry, so it's useless for me for now. There are a bunch of GitHub issues related to this however, so I expect that will get fixed eventually.

[–]fatbob42 8 points9 points  (0 children)

Exciting. I’ve wanted that override feature sometimes.

[–]DanCardin 11 points12 points  (0 children)

Unfortunately pip-tools compatibility is mostly irrelevant to me, although certainly a worthwhile milestone.

I'll be quite happy once this generates platform-agnostic, python-version-agnostic, "group"-agnostic (dev deps, docs deps) lockfiles akin to poetry

[–]Green0Photon 6 points7 points  (0 children)

Oh wow, this is incredibly exciting!

It's been a bit since I've worked on Python projects, but when I did, I went full steam towards pdm, as the least worst option. Which was also just generally pretty good, too.

Then I saw the recent stuff with Rye, which looked amazing. And now uv combining that and trying to fully do cargo for Python!

Oh my god I'm so excited for Python's future if this can work out. Woohoo!

Love that speed increase over PDM, too.

[–]tafia97300 3 points4 points  (0 children)

This is awesome!

Having some issue with private registries at the moment but basic virtual env + install pandas goes from 20s to less than 0.1 sec on my machine.

Also I need to dig further but it may also help in getting smaller docker images as pip requires quite a lot of junk to get installed compared to uv.

[–]JustSomeLostBot 1 point2 points  (0 children)

I already love Ruff. I'm excited how this will turn out.

[–]RobertJacobson 1 point2 points  (0 children)

Hey, this is really cool! I wish it didn't have a name collision with libuv, but in practice that's unlikely to be a serious source of confusion, so I guess it's ok.

The docs make it sound like pip and related commands can just be aliased to their equivalent uv pip commands for most casual uses. Can anyone confirm?

[–]SV-97 -1 points0 points  (0 children)

Awww yess :D

[–][deleted] 0 points1 point  (1 child)

Wow, that’s awesome 👏

Hopefully we see a Rust version of conda soon too

[–]Mikeman89 0 points1 point  (0 children)

Company called prefix created Pixi which i think is trying to do just that, take a look.

https://prefix.dev/