what's a python library you started using this year that you can't go back from
Posted by scheemunai_@reddit | Python | View on Reddit | 183 comments
for me it's httpx. i was using requests for literally everything for years and never thought about it. switched to httpx for async support on a project and now requests feels like going back to python 2.
also pydantic v2. i know it's been around but i only switched from dataclasses recently and the validation stuff alone saved me so many dumb bugs. writing api clients without it now feels reckless.
curious what other people picked up recently that just clicked. doesn't have to be new, just new to you.
SpecialPapaya@reddit
Pathlib
Regular_Effect_1307@reddit
Pyprojroot
turkishtango@reddit
Man, Pathlib is so much better than this os.path nonsense.
cheesepumpkinspure@reddit
uv
Tricky_Animator9831@reddit
I switched to httpx recently too and the async support is a total game changer for high volume tasks. I usually pair it with FleetProxy to handle my IP rotation and it makes the whole networking stack feel so much more modern and resilient. It is definitely hard to go back to the standard requests library once you realize how much faster you can scale with a proper async setup and a solid proxy infrastructure.
Dry-Yam322@reddit
I completely agree on httpx being a game changer for async projects, and for me, pairing it with FleetProxy for my scraping and automation scripts has been the real turning point this year. Handling IP rotation directly through a reliable proxy infrastructure rather than manual lists makes the whole networking stack feel way more modern and resilient. It is definitely one of those setups where once you experience how much faster you can scale without hitting rate limits, going back to basic request logic feels like a massive step backward.
Sad_Bid_4047@reddit
Polars. Once you stop writing pandas and start writing Polars expressions, going back feels like driving stick after owning an automatic. The lazy evaluation alone saved me 3 hours on a 40GB dataset last month.
nicoloboschi@reddit
I also switched to Pydantic v2 recently and agree about the validation benefits. For managing AI agent memory, which also requires rigorous validation, we've been using Pydantic AI with Hindsight. https://hindsight.vectorize.io/sdks/integrations/pydantic-ai
Effective-Chip-3625@reddit
tenacity. I used to write my own retry loops with time.sleep and counters and they'd always break in weird ways.
Future_Eve@reddit
Httpx is nice but still suffer from opinionated decisions. I had better success with aiohttp on some very edge cases.
Dwarni@reddit
uv, ruff
This hides all the venv nonsense from you and makes python development so much better.
No-Performance6235@reddit
And if you add cookiecutter to the mix you have an easy way to start new projects with the same consistency and setup
dataisok@reddit
polars
No-Performance6235@reddit
+1 Polars has been a life saver handling lots of data and the pipelines make it easy to understand what you doing in a transformation process. Lazy Frames are awesome
McRojb@reddit
Is it because of the speed compared to pandas? I don't use either much just curious
canuck_in_wa@reddit
very fast
clean and consistent api
secretaliasname@reddit
Love me some polars but would love it A LOT more if there were an unsafe mode where I can mutate the underlying buffers and if it had complex dtype.
psychuil@reddit
When would that be useful?
RepresentativeFill26@reddit
Django.
SciEngr@reddit
Django is way too magical for me. I want EVERYTHING to be explicit in my code and Django gives devs too many opportunities to let hidden implementation magic creep in.
Henry_the_Butler@reddit
I also like to know exactly what's going on...but Django has a ton baked in that you'd end up reinventing the wheel too much if you don't use it. (at least that's my current thinking)
What do you recommend or use instead?
RepresentativeFill26@reddit
Yes, I agree that there is quite some implicit magic happening. However, the last 5 months I have been working on a multi-tenant platform and Django provides a lot out of the box. Think security middleware, context processors, orm etc.
the_ballmer_peak@reddit
Really? That kind of surprises me. I've used Django for a long time but on any new project in the past five years I've been actively avoiding it.
RepresentativeFill26@reddit
Why have you been actively avoiding it?
the_ballmer_peak@reddit
It's too big.
Other projects are only trying to solve for part of the web application architecture. Django tries to solve all of it. In doing so, it constrains your choices, and you wind up stuck with the decisions Django has made for you, whether they suit you or not.
It prevents incremental improvement, which essentially prevents improvement, and you get stuck.
RepresentativeFill26@reddit
Well, I have been responsible for development of a multi-tenant web app and it has been a very good experience so far.
Sure it is bloated but it gets the job done.
the_ballmer_peak@reddit
It absolutely does. But in three years when you want to change part of your application, you won't be able to.
RepresentativeFill26@reddit
Why do you think that? In my experience software practices have more influence on modularity than a framework.
the_ballmer_peak@reddit
I'd say design decisions more than just 'practices.' And using a framework that's not designed for modularity is a design decision.
Django is great if that's what you're looking for. My problem with it is that if you've built something that you expect to last 5-10 years or more, you'll find yourself in trouble. That's true of any such all-encompassing framework, not just Django.
j_marquand@reddit
tqdm for any scripts I run with a for loop
ApproachingHuman@reddit
YES, and so simple to implement.
Effective-Aioli1828@reddit
I just discovered Optuna a few eeks ago while running a 100-trial hyperparameter search on a well log dataset for rock facies prediction (1.17M samples, XGBoost, 8 hyperparameters). It uses a aTree-structured Parzen Estimator instead of grid search; this builds a probabilistic model of which parameter regions work well, then it focuses just there. So, for example, in my run: instead of grid searching 5^8 combinations you get informed search that converges in 30-50 trials. SQLite backend means the study is fully resumable: that is, parameters are stored in the database, including pruned ones, so you can go back and inspect anything. You don't even have to decide the number of trials upfront, you can add more later to the same study. You can even Ctrl+C, go to bed at night, get up in the morning and get it to pick up where it left off.
It comes with good built-in visualization (parameter importance plots, optimization history, parallel coordinate plots).
One hard lesson: if you use the pruner with few-fold cross-validation, per-fold variance can trick it into killing your best trial. Learned that the hard way, but the was simple : set MedianPruner (n_warmup_steps=n_folds-1) so it can't prune until all folds are done. With 3-fold CV that effectively disables it, which is the right call when your folds have high variance. Pruning earns its keep with 5+ folds. And that's where the SQLite resumability came handy: I stopped the study, fixed the pruner setting, restarted, and it continued from exactly where it left off with the new configuration. No lost work.
SoloAquiParaHablar@reddit
One thing to be mindful of with Pydantic is to avoid constantly validating data structures. Do it once at the boundary. Pydantic can become very inefficient.
makinggrace@reddit
I wish I read this last week....
nicholashairs@reddit
uv + uv-tox for doing multi-interpreter testing
straightedge23@reddit
ruff for me. was using flake8 + black + isort separately and ruff just replaced all of them. linting a big project went from like 30 seconds to under a second. felt stupid for not switching sooner.
PA100T0@reddit
Try xenon and/or radon next. You’ll simplify a lot of code
danielgafni@reddit
There is a ruff rule for that:
https://docs.astral.sh/ruff/rules/complex-structure/
wildetea@reddit
For larger projects, ruff is amazing. I still have to use pylint to detect any circular imports though, since ruff doesn’t evaluate multiple files at once, see issue.
But i have ruff run first, which runs incredibly fast, then if that succeeds, run pylint in my code linting CI.
McRojb@reddit
Found it a couple weeks ago myself, fkn amazing. Also integrates so well into vscode
vorhvb@reddit
cv2 :)
However recently I’ve switched on C/ImageMagick ’cause it’s faster
PhysicsGlue@reddit
Tkinter
coke1017@reddit
pydantic
Human_Ad4679@reddit
Came here to write this
Matangriegor@reddit
I used to love dataclasses, and still do, but it feels weird not using Pydantic now. Been fun seeing its spread--I never would have ran into it if it weren't for its exposure.
MaLiN2223@reddit
Same for me, actually both Pydantic 1 and Pydantic 2 at the same time so it made me appreciate the progress more.
czue13@reddit
Yep. Also pydantic ai
digitalhobbit@reddit
Same, Pydantic + Pydantic AI.
thearn4@reddit
JAX for scalable and differentiable numerical array operations. Oddly enough not even for ML modelling but I see why people might choose it over pytorch.
cleodog44@reddit
Would love to hear more about why people might choose it over PyTorch
BawliTaread@reddit
Any good resources the get started? I went through the docs but I feel like I still need a bit of practice and get used to vmap and jit.
sarver311@reddit
Marimo, as a replacement for ipython notebooks. I personally love that I can pull in different datasources and then query and join them via sql. They have a ton of built in tools to build UI's and their UIs for interacting with dataframes make it really easy to interact with them. Can't recommend it enough.
cleodog44@reddit
Just boarded the marimo train this week. So good. Very agent friendly as well
akshayka@reddit
Thanks for using marimo! Let me know if there's anything we can do to make your experience better
mtbdeano@reddit
Plus one thousand, Marimo changes everything, rethink your automation, data analysis, and data science loops
Sufficient-Rent6078@reddit
I can really recommend using Marimo over Jupyter Notebooks. It has a number of built-in guards (e.g. forces you to not redefine variables) which you have to adapt when coming from jupyter, but I feel the team put a lot of thought into Marimo to not become quite as messy as jupyter notebooks. I also set the runtime reactivity feature inactive by default, as I don't want to accidentally hammer slow endpoints or trigger long running functions with every second cell change.
flipenstain@reddit
+1 fighting hard for my team to adopt it into their flows. Excellent library to handshake sql and python without taking something away from either side
slayer_of_idiots@reddit
Typer.
I started using click last year. Just found typer and will continue using it.
aarontbarratt@reddit
FastAPI with Pydantic has been fantastic. I am never using Flask or Django again
Aromatic_Pumpkin8856@reddit
Full disclosure, this is my project, but I'm definitely not going back to python without it: pytest-gremlins. It's a mutation testing library. Essentially it makes little changes in your code, maybe a > to a < or a False to a True, things like that, and runs your tests. If all your tests still pass, then you know your tests aren't as good as you think. I've found all kinds of subtle bugs that I didn't know I had.
opossum787@reddit
That’s a really clever idea. I’ll give it a try!
Aromatic_Pumpkin8856@reddit
Please feel free to submit any issues. Or it's OSS, so feel free to contribute!
rainyy_day@reddit
mypy/ty
SciEngr@reddit
I wouldn’t invest in ty at this point. It’s not very good compared to other type checkers and with it being owned by OpenAI I’m not so certain it’ll ever become feature complete.
Zumochi@reddit
How is it owned by OpenAI? That would also make ruff and uv owned by OpenAI.
opossum787@reddit
Bad news friend
saw79@reddit
yup, openai bought astral
Zumochi@reddit
Well I completely missed that.
Not sure what to think of it, but it's probably not positive :/
SciEngr@reddit
OpenAI bought astral last week
Sufficient-Rent6078@reddit
I have recently discovered the python type system conformance report which made me inclined to target pyright first and only optionally use mypy in addition to that - with the added advantage, that pyright seems to generally perform faster.
tacit-ophh@reddit
Man have I got bad news for you about httpx
necromenta@reddit
Dang what to use now?
Ragoo_@reddit
niquests
sexualrhinoceros@reddit
The developer of this is an OG AI slop spammer who spammed this all over Reddit when they first dropped it and made insane huge claims about it. You will not catch me using this library unless even urllib gets yanked out of STD.
I swapped to https://github.com/MarkusSintonen/pyreqwest :)
ThePrimitiveSword@reddit
Strong claims require strong evidence, same with strong accusations.
I've found niquests actually delivers on its claims, especially on speed and performance. Been using it since it first released. In real-world usage, often get at least a 10x speed increase vs requests when just doing a drop in replacement. The other features are definitely nice as well, such as using the OS trust store, so it works with self signed SSL certs in a corporate environment without any additional setup or patches.
They also make very human mistakes, such as misspelling words occasionally etc.
It looks like they also want disclosure when pull requests use AI.
Do you have any evidence or examples whatsoever of the 'AI slop'?
sexualrhinoceros@reddit
yep, I commented about this before here
ThePrimitiveSword@reddit
I don't see anything in that about AI.
And someone responded to that comment already, and I feel addresses what you quoted, so I'll quote them in response to you linking your quote of someone else.
sexualrhinoceros@reddit
please read through their old posts, they're all deleted now but are very obviously AI unless you require the developer explicitly saying "I used AI" to tell that em-dashes, "its not just x, its y!" patterns, and excessive emoji usage as headers are such. I'm giving you a good faith reply here but I won't personally be ever using / showing this library respect.
ThePrimitiveSword@reddit
I'm looking, but can't find what you're referring to.
Your claims were about the niquests project being AI slop, the project is open source so do you have any examples of niquests using AI? I'm happy for you to provide examples of the em-dashes etc. that you described. A positive match from an AI detection algorithm would be something, even with how notorious those are at having false positives.
At the moment, you're making claims but can't back it with evidence. You've made the claims, the burden of proof lies with you.
On a related note, do you think that this readme appears to be obviously AI slop?
Just wondering, as that's by the same author as niquests, and that's from over a year before ChatGPT released. That project has been published since 2019, Ousret isn't a vibe-coder.
McRojb@reddit
Not an expert on package maintainence and coding is certainly not my proffesion. That said, I do like the package and have used it for quick and dirty code. But it feels "bloated" already and not something I excpect to be around in a few years. I don't see the reason for using it when aiohttp (requests for sync) is around. You seem a little defensive? 2k stars is not something I feel comfertable putting that much faith in.
ThePrimitiveSword@reddit
I have faith in it because I've been using it for a few years and find it to work really well, and Ousret has been very responsive to the issues I've raised on Github.
I use it instead of the alternatives because I find it to work really well for my needs, such as using OS trust store for SSL certs, compatibility with the 'responses' package, can be used for SSPI authentication and huge performance gains for my use cases.
When someone claims something that I use and find to work well is AI slop with nothing to back their claims, I don't feel it unreasonable to ask for evidence when what I'm seeing seems to contradict these claims.
I loathe AI slop (Booklore and Huntarr are good examples) and if niquests is actually AI slop then I'd like to know, but it's a strong claim to make without anything to back it up.
McRojb@reddit
Fair enough! I havn't built much with external logins myself so don't know much about but will take your word.
I honestly had to google "SSPI authentication" so I feel a bit out of my depth.
Although I started programming without it, github copilot autofill is a god send for me (md otherwise). But actual AI slop I do despise too.
ThePrimitiveSword@reddit
All good, I'll admit I was a bit heated as it hurts to see something that I use and rely on talked down with no evidence, especially when the maintainer has been very receptive to me and they've accomplished what the original project raised tens of thousands of dollars to do but hasn't managed to (per my response to you in the other comment chain).
Honestly, SSPI auth should be killed off, but it still exists in some corporate environments, and I do programming in a heavily locked down enterprise environment where change can be slow so it'll likely still be in use for another decade or two.
Laruae@reddit
Sorry, honestly interested, can you elaborate on your concerns with niquests?
I'm looking for a new home after concerns about httpx.
sexualrhinoceros@reddit
yep, I commented about this before here
Laruae@reddit
Replying here since the original is not open for replies.
I would be very interested in a 2026 review of niquests from an outside party. Might be enlightening, either showing a project that has matured or bring other concerns to light.
Again, zero horse in this race, just interested as someone who is shopping for a library.
McRojb@reddit
When it comes to niquests, one of my first reactions looking through the docs, it’s fkn weird for a library meant to replace httpx to implement something like a rate limiter in the library itself
ThePrimitiveSword@reddit
Do you mean the opt-in feature documented here?
I think I'm missing something. It makes sense to be as an opt-in feature.
And niquests is a replacement for requests, not httpx.
McRojb@reddit
You can call it a replacement for requests all you want, but with built in async support (and the fact we're talking about it under a httpx comment??) what people are using it for is a replacement of httpx not requests. Also yes, but you might be right in that "it makes sense" as an opt-in feature, but from a maintence point of view it came across as weird to me
andaskus@reddit
Hey, I'm the one who wrote the PR. Why ? I ran into a rate limit issue while using some services and wanted a rate limiter well integrated with the lib itself rather than a side car lib. I asked the maintainer if it was ok to which he answered positively.
ThePrimitiveSword@reddit
Doesn't look like a heavy maintenance burden.
Looking at the pull request all the changes seem to be this. It's not much code, most of the changes are adding test cases.
They tried to get improvements made to urllib3 but nothing happened so they forked.
Then urllib3 tried to crowdfund tends of thousands of dollars in funding to do what had already been done via niquests and urllib3-future.
That was after all this happened.
McRojb@reddit
Could you like stop being more well-informed than me... Breaks my bloody ego.
The only thing you earned here is probably an annyoing dm about your opinion when I'm unsure about related projects in the future.
Still disagree about the "maintenance burden" though, in my opinion such a core library shouldn't try to do that much.
Will read through the last 3 links when I get time!
McRojb@reddit
Go with aiohttp. Well maintained and lots of users
riksi@reddit
It's only async which is a non-go.
GrammerJoo@reddit
Nice! Looks promising. What's your experience so far?
McRojb@reddit
Eh not going to touch pyreqwest. Aiohttp is good shit though
McRojb@reddit
Got that feeling when looking through the code, man feels good to be right
this_is_a_long_nickn@reddit
+1
niltz0@reddit
pyqwest. Buf uses it for connectrpc-python
DrMaxwellEdison@reddit
Interesting.
pyreqwestis also built on Rustreqwest. Wonder how they compare.niltz0@reddit
Given that pyqwest is maintained by an organization, not a single individual, and is now being used in the official connectrpc-python implementation which is backed by Buf, another organization, I assume it will have better long term support. Also, looking at the ergonomics of pyreqwest, the “build” pattern seems a little off to me.
a_r_a_a_r_a_a_r_a@reddit
niquests
stealthbr@reddit
aiohttp
False-Tea-6308@reddit
Second aiohttp, very easy to use and wrapping in async funcs are very straight forward for me
NekoRobbie@reddit
Third aiohttp, discord.py introduced me to it and I've been liking it ever since. Heck, the syntax isn't even that different from requests, aside from it being async, from my looks at requests
DrowningRat@reddit
httpx got forked.
https://tildeweb.nl/\~michiel/httpxyz.html
https://httpxyz.org/
KayakJulie@reddit
thanks, fork author here ;-)
KayakJulie@reddit
For this reason I created httpxyz recently --> https://tildeweb.nl/\~michiel/httpxyz.html
jan2042@reddit
anyio (as async replacement for Pathlib among other things)
sledziu32@reddit
Pywin32
Briana_Reca@reddit
For data analysis, Polars has been a game changer for me this year. The speed and memory efficiency compared to pandas, especially with larger datasets, is just incredible. It's a bit of a learning curve but totally worth it.
Newepsilon@reddit
Plotly. I have become hooked on interactive figures.
Optimal_Deal4372@reddit
Panda
glenrhodes@reddit
uv. I resisted for a while because I had a workflow that worked but once I switched there was no going back. Install times went from frustrating to near-instant and the lockfile behavior just works. Ruff too but that one feels less dramatic since it still does the same thing, just faster.
WHMCT@reddit
pre-commit, because it's easier than doing stuff manually. Idk why I didn't start using it earlier
Free_Math_Tutoring@reddit
Controversial take, but I really really don't like pre-commit the tool. I find it infinitely easier to just have a hooks folder with a pre-commit bash file comitted to the repo, which can trivially use the commands defined in a taskfile of the repo.
Sufficient-Rent6078@reddit
An alternative I discovered when reading on the
numpy.org/numtypeproject is lefthook, so far I'm still usingpre-commitin my projects - but I would be happy to hear if someone here can report on their experiences.rogersaintjames@reddit
Check out prek, if you have work spaces/disparate rules
ColdPorridge@reddit
Prek is a lot nicer for a lot of reasons. One of which being the maintainer does not power-trip and close valid issues whenever their perspective is challenged.
IcecreamLamp@reddit
What does this actually do? I've heard people mention it but never looked into what it actually does.
MRanse@reddit
It executes checks and lints your files automatically before committing. It can also ensure that specific files like lock files are synched to your environment/dependencies.
trynafindavalidname@reddit
FYI, there’s a rust-written re-implementation you could check out called
prekthat’s backwards compatible with the pre-commit config fileRegular_Zucchini_565@reddit
pydantic and flask i find this as best library to study in 2026
HommeMusical@reddit
tyro.I've been using
typerfor years. Spent ten minutes withtyroand I'm not going back.abccccc456@reddit
uv for package management. actually faster than poetry and just works.
swagruss@reddit
uv
redrabbitreader@reddit
Same for me... I wondered what the fuss was all about and finally gave it a go earlier this month. Why have I waited so long !?
Affectionate-Bid386@reddit
uvallows only one virtualenv for a project it seemsIn
poetry, though , you can split into separate sub-codebases (libraries) each with its own virtualenv, and one such sub-codebase can reference others as included libraries which also ends up pulling in that local library's requirements into the referring sub-codebase's virtualenv. This makes a monorepo much easier to maintain ... each sub-codebase has its own clear requirements, and it seems the pattern could be extended across multiple git repos as well. I'd rather not have my utility library rely artificially on pytorch.If
uvallowed for this I'd switch. Some repos at $DAY_JOB use it, I appreciate the speed.aisingiorix@reddit
streamerate, Java-style fluent interfaces for map and filter.
LesLukas@reddit
syrupy
wakojako49@reddit
keyring and 1password cli
nievinny@reddit
Not this but end of last year I moved fully to Ty and ruff, can't believe it took me so long.
aala7@reddit
Pydantic settings 🙌🏽 handles config neatly from whatever source you want
Amzker@reddit
Not specifically this year.
asyncmy, rich, strcutlog, aiohttp, motor, aiosqlite, redis[hi redis], aiosmtplib, Jinja2 templates.
jedberg@reddit
Transact.
A durable execution library that turns your application into it's own durable executor using just Postgres.
RedEyed__@reddit
pydantic-ai
zoidBurgher@reddit
How are you using this, and how does your usage relate to / differ from regular Pydantic?
RedEyed__@reddit
pydantic_ai and pydantic are not comparable
Both are from the same team.
The first depends on the second.
I suggest you better to read the doc, but in short, pedantic_ai is framework to write LLM agents, similar to one used in claude code or cline, or codex.
zoidBurgher@reddit
Thanks. I skimmed the docs but was confused because I started with the assumption that they'd be closely related
RedEyed__@reddit
Yep, I imagine reading it without context:).
The only common thing in both is philosophy: everything is fully typed
doncheeto12@reddit
Yeah the pydantic ai docs are dense and unnecessarily like “wow everything has to be typed to hell!” In reality it’s fairly easy to use, they are just trying to differentiate themselves from toy AI wrappers (cough langchain cough) as the one that real developers who use AI in production need.
RedEyed__@reddit
Exactly the reason why I use it and push my team towards.
leodevian@reddit
aiohttp for async requests.
rich for pretty printing, logging and tracebacks.
Click for command-line interfaces.
dweebomcthousand@reddit
Check out typer for clis. Built on click so it should feel familiar but uses type hints to declare arguments and options etc. and the generated docs are really nice. It’s from the guy that made FastAPI
sly_as_a_fox@reddit
Generated docs?
https://typer.tiangolo.com/tutorial/typer-command/#sample-docs-output
Whoa! Today I learned.
leodevian@reddit
I know it, and I know Cyclopts. I just love that Click is really easy to extend.
NerdEnPose@reddit
Typer is a good click replacement. Built on click but typing based, if you’re into this sort of thing
flying-sheep@reddit
I prefer cyclopts:
_MicroWave_@reddit
Click is very boilerplate heavy.
Typer is a huge step up. (I think it might even be built on click) But expresses much more elegantly.
leodevian@reddit
It is indeed powered by Click. While decorators can be composed, I never found an elegant way to share parameters between Typer commands. Also, I don’t like the recommended implementation for a version option (I don’t like unused function parameters).
ultrathink-art@reddit
For AI agent workflows: agent-cerebro. Two-tier memory (markdown hot state + SQLite+embeddings long-term) plus semantic dedup — agents stop rehashing old decisions between sessions without you manually pruning state. Switched from flat files and genuinely can't go back.
zweack@reddit
vLLM
yaxriifgyn@reddit
"logging" I have started using it in everything I write lately. I have used it before, but not as consistently as now. It keeps my console output short and to the point. But it allows trace and debugging messages so I can start to diagnose any output file problems immediately.
krakenant@reddit
Check out loguru. It adds some nice things and gives a default logger Singleton you can use across your project.
orz-_-orz@reddit
Does uv count?
mmmboppe@reddit
would like to be able to use CloneDigger again, but apparently nobody ported it to Python 3
gaoo8@reddit
Rich
mycocomelon@reddit
Graphviz
Sufficient-Rent6078@reddit
For me that would be the
returnslibrary (specifically their Railway oriented programming containers). While a bit niche it makes it much easier to argue and handle, which Errors (or Failure cases) need to be considered when calling a function.You'll likely not appreciate
returnsif you are not convinced of using a type checker and the package only starts to shine (for me) if used outside of scriping or notebooks. For modeling a complex domain with nested function calls it feels freeing to know that all known failure cases are statically declared and exhaustively handled.ImprovementLoose9423@reddit
Ollama and SciKit learn, but that's prob since I'm big into AI and Machine Learning.
yungbuil@reddit
loguru for out of the box logging
Krisselak@reddit
Duckdb; pointblank
notaselfdrivingcar@reddit
Alembic.
lightweight database migration tool for Python
Ecstatic-Artist-3454@reddit
typing
Zerocrossing@reddit
I have become so aggressive on typing everything and will never look back. A library having good typing support is now extremely high on my list of must-haves.
It's not foolproof, but when my repo has zero type issues reported I feel a lot more at peace that random duck typing/truthy nonsense isn't going to bite me in the ass down the road.
GrainTamale@reddit
Piggybacking here:
Annotatedfor function argsEatThemAllOrNot@reddit
Don’t use httpx, it’s a supply chain threat
GrainTamale@reddit
So is Claude...
Intrepid-Stand-8540@reddit
really? got any links?
xeow@reddit
pytest(long overdue)radon(static analysis: cyclomatic complexity and maintainability index calculations)GrainTamale@reddit
Never heard of
radon; this is why I come here, thanks!Leliana403@reddit
Dynaconf
Intrepid-Stand-8540@reddit
Pydantic and httpx. Right there with you.
RevolutionaryRip2135@reddit
Pyside6
ForeignSource0@reddit
Wireup has got to be up there for me. https://github.com/maldoinc/wireup
coldoven@reddit
mloda
TechnologySimilar794@reddit
Practice
gala0sup@reddit
dspy, structlog, granian, langfuse, OTel
inspectorG4dget@reddit
Pigar, Tqdm, More-itertools, flake8, streamlit
pip_install_account@reddit
asyncpg, pyvips, msgspec
xjotto@reddit
msgspec, instead of pydantic. For its speed.
totheendandbackagain@reddit
I love this article. So great to learn things from.
For me it's been copier-astral, it's the fastest way to scaffold a new project being vived into existence.
Regular_Effect_1307@reddit
Niquests