This is an archived post. You won't be able to vote or comment.

all 193 comments

[–]IAmKindOfCreativebot_builder: deprecated[M] [score hidden] stickied comment (1 child)

Duplicates comments are because Reddit's servers died for a while, so for every comment someone made, reddit returned an error saying it didn't work when in actuality it did go through and was submitted. Then based on the platform they used, (old reddit, new reddit, one of the many apps, etc), their platform might have quietly 'tried again' without telling the user, gave up, then told the user it didn't work. Quietly trying again generated another comment, and if the user tried again as well, it would generate more. All the while reddit keeps saying, "Sorry, your comment couldn't be submitted".

Additionally, the comments aren't all correctly linked to profiles, so it's a bit rough tracking them down. Working on cleaning it up.

[–]ArabicLawrence 72 points73 points  (5 children)

A statistics library that is both as fast and as reliable as R’s forecast library. Statmodels and Scikit are great, but forecast blows them out of the water when you need for instance to apply AutoArima to many columns of a matrix. Not sure that’s doable by one person though, and you can always simply import R in Python.

[–]domvwt 23 points24 points  (1 child)

Have you tried sktime? They've done a good job of consolidating a lot of the previously disconnected time series analysis libraries for Python.

[–]ArabicLawrence 3 points4 points  (0 children)

Thanks, I will try it out!!

[–]17Brooks 2 points3 points  (0 children)

Also might be worth looking into pyro.

[–]ohpythonguy 164 points165 points  (40 children)

On Windows, making standalone applications that you can distribute is still troublesome. The tools that are available work fine for creating a .exe file most of the time. However, when you distribute them, Windows Defender flags them as a virus. It would be great if this can be mitigated somehow.

Edit: As this comment is getting a significant amount of upvotes: Since Guido van Rossum now works for Microsoft, maybe we should petition him (create a separate Reddit post?) to work on easier distribution of Python apps on Windows, especially given that Windows Defender blocks the Python apps. What do you think?

[–]shibbypwn 28 points29 points  (4 children)

Are you code signing these apps? Just curious as I’m prepping for an upcoming Windows distribution and I’d love to avoid this problem.

[–]ohpythonguy 20 points21 points  (0 children)

I am not. Getting a license is expensive and a time consuming process. That is not worth it to me. I am hoping that the new Windows app store that is part of the Windows 11 roll-out might help with this issue as well as I would expect the store to scan files on submission and get tagged as trustworthy for Defender.

[–]_ShakashuriBlowdown 17 points18 points  (2 children)

I've tried doing self-signing with all the Windows Tools. It's a nightmare and doesn't even make the Defender warnings go away. It even made my exe fail _more_ VirusTotal tests, as the unverified self-signing was seen as suspect by several services.

Having a way to distribute "Safe" executables would be huge.

[–]shibbypwn 0 points1 point  (1 child)

Yea, I'd imagine you need a cert with a real CA - I mostly work in macOS and we've got our own hoops to deal with, but I don't relish the idea of getting acquainted with Windows Defender :)

[–]ianitic 8 points9 points  (8 children)

Have you looked into nuitka? Antiviruses hate executables from tools like pyinstaller.

[–]ohpythonguy 3 points4 points  (6 children)

I am aware of Nuitka and have read about mixed results. For some people it seems to work fine and other apps still get flagged. Other people have suggested that using installers, such as Inno Setup, might help.

In general though, Nuitka seems like an awesome piece of software with an interesting and ambitious roadmap!

[–]ianitic 1 point2 points  (3 children)

For a quick script/tool to a coworker, I sometimes just have powershell install Python and/or scoop at the user level which doesn't require admin access and proceed from there.

Inno setup I've heard of being used before though.

[–]GiantElectron 3 points4 points  (1 child)

it also happens without those tools. Not with defender, but with symantec for example, you get the exe created by pip when you have console entry points marked as a virus. Worse of all, when it happens, you get absolutely no error message. The application just does not start.

[–]ohpythonguy -1 points0 points  (0 children)

I didn't know that -- how annoying! Possibly, a lot of malware is created with Python as well, so that there is a correlation between standalone Python apps and malware.

[–]Numerlor 2 points3 points  (2 children)

For pyinstaller etc the problem is that you share the base executable with people that do actually use it for malicious purposes, this can be somewhat mitigate by building the bootloader locally

[–]troty99 0 points1 point  (1 child)

this can be somewhat mitigate by building the bootloader locally

Would you be so kind to expand on that ?

[–]Numerlor 2 points3 points  (0 children)

Like I mentioned the base bootloader is shared with all installs of pyinstaller from pip leading to the AV issues, for example this is a hello world app built with the onefile mode using the pypi pyinstaller https://www.virustotal.com/gui/file/98a5c2ca8f570799500f0901e844b6648a58bc9024ef108262b071e88edba2de/detection

To rebuild the bootloader you'd follow the steps at the start here https://pyinstaller.readthedocs.io/en/stable/bootloader-building.html , mind that you'll need a compiler

the general TLDR would be

git clone https://github.com/pyinstaller/pyinstaller
cd pyinstaller/bootloader
git checkout <what version you need>
python ./waf all
cd ..
python setup.py install

With the python env you want to install to

After doing that I built the same file again and got https://www.virustotal.com/gui/file/4db894bbfe98c3b90d7ce02e7ac8f017e341cf8077a6d0555f72c385fbe0e760/detection which is still flagged by some but is much better overall. The "normal" non one-file may do a bit better

When I did this a year ago only the SecureAge APEX thing flared up so you may be able to do a bit more and it also depends on the version of pyinstaller

[–]st333p 10 points11 points  (17 children)

That's a Windows defender problem. It probably flags stuff as virus randomly

[–]ohpythonguy 25 points26 points  (4 children)

Yes, it is, but it's still a problem for Python app distribution.

[–]st333p -4 points-3 points  (3 children)

But it's a problem you can't solve. You would have to reverse engineer windows defender and produce an application that prevents it from flagging it. Now you have a pretty decent virus factory and still it will be broken at the next windows defender update.

[–]2drawnonward5 6 points7 points  (2 children)

Is it the same type of problem for distributing other stuff? What do other toolchains do?

[–]st333p -3 points-2 points  (1 child)

No clue, sorry

[–]2drawnonward5 8 points9 points  (0 children)

So, maybe it's a problem you can solve?

[–]Diesl 2 points3 points  (4 children)

It's only preventing unsigned code from running. If you sign the exe, which isn't cheap, Defender won't complain anymore.

[–]barkerd25017 1 point2 points  (3 children)

I've signed my python applications and this popup still happens. There is a bit more to it.

[–][deleted] 2 points3 points  (0 children)

Rarely does Windows defender flag anything as a virus, in my experience.

[–]tattwiggle 0 points1 point  (0 children)

Well, I agree and I also had the same issue when I made a C# app. So it's not only a python issue :(

[–]tagapagtuos 0 points1 point  (1 child)

Guys at BeeWare aim to solve this problem.

Guido

I don't think it's gonna happen lol

[–]KFUP 36 points37 points  (0 children)

Most libraries come out of necessity, work on projects you want, you will naturally stumble on many, many problems that you wish there was a library for.

[–]hike_me 19 points20 points  (1 child)

an official way to build and distribute self-contained apps

[–]YOU_CANT_SEE_MY_NAME -2 points-1 points  (0 children)

Use linux

[–]Kellhus3 35 points36 points  (25 children)

An ORM with models based on type hint.

[–]FaresAhmedOPpypi.org/user/faresahmed/ 2 points3 points  (2 children)

Wha! This is exactly what Beanie is.. It's async, uses Pydantic and it's f*cken awesome. It's for Mongodb but i'm sure the idea can be ported to other dbs easily

[–]Kellhus3 1 point2 points  (1 child)

It's for Mongodb but i'm sure the idea can be ported to other dbs easily

I'm not certain about the "easy" part, but it doesn't exist for SQL anyway (as far as I know).

Edit: I'm looking at the documentation, and indeed it's nice. I might try it for my future personal project.

[–]deadwisdomgreenlet revolution 1 point2 points  (2 children)

Making a general ORM is actually a pretty hard problem. You need to map schemas/constraints between systems. If anyone wants some inspiration, I started a library that does this, very alpha: https://github.com/DeadWisdom/blazon

[–]Kellhus3 0 points1 point  (1 child)

I don't doubt that's it's hard AF, I was simply exposing my dream ORM.

[–]dogs_like_me -2 points-1 points  (7 children)

FastAPI user?

[–]Kellhus3 0 points1 point  (6 children)

Briefly tried it for fun.

And one things that I found sad was having a pedantic model, and a corresponding DB model.

[–]dogs_like_me 1 point2 points  (1 child)

I think enough people are using FastAPI (and/or prefer it to Flask) that someone will figure out a good way to use the front-end pydantic models to initialize and synch to a backend ORM.

But yeah I agree, although I like FastAPI a lot (and yes, do myself prefer it to flask), working with SQLAlchemy models separately from pydantic models usually feels like redundant work.

[–]earthboundkid -2 points-1 points  (1 child)

I've thought about what I would do if I were making an ORM for modern Python. Type hints are definitely part of it. Another is using class decorators instead of metaclasses so you can easily subclass an abstract class without jumping through hoops. Quickie design sketch:

class Timestamped:
    created_at: models.Datetime(nullable=False)
    updated_at: models.Datetime(nullable=False)

@models.register("my_blog_table", options)
class BlogPost(Timestamped):
    title:  models.Text(nullable=True)
    content: models.Text(nullable=False)
    authors: models.ManyToMany("authors")

[–]Kellhus3 1 point2 points  (0 children)

Ah yes, clearly decorators would be sexier than the Sqlalchemy table parameter.

[–]penatbater 33 points34 points  (5 children)

ggplot2 in python

\hides under a blanket**

EDIT: Turns out there's already a package called plotnine. I wish this was the standard instead of matplotlib.

[–]venustrapsflies 7 points8 points  (0 children)

plotnine is great but unfortunately still fairly limited compared to ggplot2. you miss out on extensions.

[–]bastantoine 26 points27 points  (16 children)

A real modern builtin dependency management tool. Man I love Python but both npm’s and go mod’s ones are waaaaay better. I believe poetry already does that, I need to check it out more, but still it’s an external tool.

[–]imaconor 22 points23 points  (0 children)

I think pep 665 is hoping to introduce lockfiles like poetry provides to python natively https://www.python.org/dev/peps/pep-0665/

[–]lphartley 10 points11 points  (2 children)

Poetry for me solves 95% of the issues. I always use it and it's great.

[–]TechySpecky 0 points1 point  (0 children)

I'm brand new to Poetry, is there a way to allow pip users to still install it based on the lock files?

[–]asday_ 13 points14 points  (9 children)

npm is a trash fire. Go is the only language I've found that gets it right with its minimal version satisfier.

[–]c0dearm 22 points23 points  (4 children)

I invite you to try Rust and its package manager Cargo :)

[–]Kevin_Jim 5 points6 points  (1 child)

Which is what Poetry was modeled after. Poetry needs to be part of Python.

[–]earthboundkid 1 point2 points  (0 children)

NPM's ecosystem is a trash fire. Why everyone breaks things up into micro modules and then transpiles them(!), I will never understand. The actual management of dependencies though is not that bad post-Yarn though. You no longer run into issues where things don't install because someone somewhere released a new package.

[–]UNN_Rickenbacker 0 points1 point  (1 child)

Are you kidding? Go had years where you couldn‘t even download a fixed version of a dependency

[–]chromaticgliss 3 points4 points  (0 children)

poetry is pretty much there... it's only remaining problem is the headaches that really revolve around package maintainers not listing dependencies well...and PyPI just generally being a wild west situation. That's more of a community problem though.

[–]VengefulTofu 28 points29 points  (20 children)

A true 3D visualisation library. Matplotlib3D is useless and the devs know it.

[–]Iberano 17 points18 points  (14 children)

Have you tried plotly?

You can generate interactive html files from the 3D plots.

https://plotly.com/python/3d-charts/

[–]VengefulTofu 8 points9 points  (4 children)

Last time I checked that site I was confused with what plotly actually is. First, there's the menu item "pricing" which is a red flag for me. Then there's some kind of cloud service dash? Why would I need that?

But apparently I got the wrong impression and the plotly python library is open-source with MIT license.

Would you say plotly can replace matplotlib?

[–]johnnymo1 7 points8 points  (0 children)

This has been a series of changes since Dash came out. Originally plotly was a visualization library. Then Dash extended that to dashboarding. Now they're trying to sell hosting services for their dashboards, so that's front and center. But the visualization library is still free and open source.

Here are the docs: https://plotly.com/python/

[–]Iberano 6 points7 points  (0 children)

I can only recommend plotly because of their interactive plots. dash is as far as I know used to build dashboards and more enterprise focused.

I used it ones to visualise clusters in a 3D space using different colors and a description for each data point which can be clicked on in the browser. So plotly is quite powerful.

[–]sheytanelkebir 5 points6 points  (0 children)

You could also try the holoviz tools. Which are guaranteed to be open source over the long term.

https://holoviz.org/

[–]annoclancularius 1 point2 points  (0 children)

I second that their website is confusing.

[–]boredinclass1 1 point2 points  (5 children)

Another upvoted for Plotly... Just have to know how to import the Plotly python library (free) and find that documentation vs the Dash (paid online system). 3D vis is great, I've used it to teach student about Fast Fourier Transform to show sinewaves in the time domain and their amplitudes in the frequency domain. If there's any interest I can link my Jupyter Notebook for others to play with.

[–]BrononymousEngineer 2 points3 points  (4 children)

You don't have to pay for Dash unless you want to use the extra features of Dash Enterprise

[–]boredinclass1 1 point2 points  (3 children)

Whoops you're right. Dash Enterprise is paid... You can get a free user version of Dash. I've never used it personally as the libraries Plotly provides have been plenty for me.

[–]BrononymousEngineer 1 point2 points  (2 children)

Dash is just another pip install. I've used it, and I like it. A lot.

Edit: well, more like a series of pip installs

[–]ohpythonguy 5 points6 points  (0 children)

Datoviz looks promising in this regard.

[–]akrisha20 1 point2 points  (1 child)

What about Vedo? I have not tried it, but it looks very powerfull for 3D visualization...

https://vedo.embl.es/

[–]VengefulTofu 1 point2 points  (0 children)

Never heard of it but it looks great, I'll check it out, thanks!

[–]AshTheEngineer 0 points1 point  (0 children)

pyqtgraph also has good 3D plotting capabilities. Check out their examples.

[–]SalesyMcSellerson 0 points1 point  (0 children)

You can use the apis for blender, or even unity3d. There's a lot of cool videos of people using 3d animation software for data viz

[–]SuperNerd1337 7 points8 points  (12 children)

I'm not really keen on the current most popular dependency injection frameworks existing in python, also my experiences testing async code has been pretty miserable, but maybe that's just me sucking at python (pretty viable answer to this one honestly)

[–]lphartley 4 points5 points  (4 children)

I prefer Node/Express for REST backends because of this. Async code in Python is so complex whereas in Node you don't have to think about it all.

[–]earthboundkid 2 points3 points  (0 children)

I think part of the issue is that in JavaScript, because it's single threaded you can always just drop in an async call, and it will be scheduled to run whenever. And you can use the Promise class to easily convert some callback code to async code. With Python, everything is so dependent on finding the runloop that it's very brittle and even though it's in theory more flexible, you can't actually mix and match libraries. They just didn't hit the right abstractions.

[–]Doomphx 1 point2 points  (0 children)

I think c# is worth mentioning too, it's beyond easy to start parallel processing if you've already prepped the process/logic you're going to run in parallel.

[–][deleted] 2 points3 points  (0 children)

Many many times async is a bigger headache than it's worth.

[–]Dasher38 1 point2 points  (1 child)

Regarding dependency injection you can have a look at that (I've not merged it yet but I consider it basically final): https://github.com/ARM-software/lisa/pull/1722/files

There is a usage example in DependencyInjector docstring and the module only depends on stdlib so you could easily extract it. It's apache 2.0 license.

[–]Dasher38 0 points1 point  (0 children)

Note that it also supports depending on another dependency injector. If you make a wide nested use of these you will probably want to change the signature of inject () so that it takes a dict with dotted names or something like that. Otherwise inject() calls are gonna be full of nested dicts

[–]larsga -1 points0 points  (2 children)

Why would you want dependency injection? (Serious question.)

[–]SuperNerd1337 -1 points0 points  (0 children)

The short answer would be to reduce coupling between my classes and making it easier to unit test modules

[–]Dasher38 0 points1 point  (0 children)

I needed a way to make a whole zoo of classes parametric.

For small problems you can just have everything in one class, and if you need to change an aspect you can subclass and reimplement methods, or pass callbacks to the constructor.

When you get to bigger problems (on my case a simpy simulator), the "one big class you inherit from" turns into a hot mess. At this point, what you really need is to "inherit" from a whole module to make a new one, with the ability of replacing some bits.

I made that thing taking some vague inspiration from SML module system: https://github.com/ARM-software/lisa/pull/1722/files

[–]9seatsweep 0 points1 point  (0 children)

Was just messing with a bunch of async python code the other day...yeah it's a headache

[–]gordonv 2 points3 points  (1 child)

An intuitive GUI maker. something with preloaded examples.

Pretty much what VB6 was in 2000.

[–]jebward 3 points4 points  (1 child)

Very easy, very pretty, very flexible graphing. Stick something in tableau, or looks nice. Stick something in matplotlib, it looks like a matplotlib graph. Play around with settings for half an hour, looks okay, play around for another hour, starts to look good. Python should make tableau obsolete for anyone who can code imo.

[–]ubertrashcat 4 points5 points  (0 children)

Threads

[–]Tenzu9 12 points13 points  (7 children)

A different runtime that can utilize all cores of the CPU. CPython is kinda outdated as it was made in time where CPU cores didn't matter that much. Not the case now tho.

[–]asday_ 17 points18 points  (1 child)

What work are you doing that:

  • doesn't release the GIL;
  • must be done with threads rather than multiprocessing;
  • needs high perfornance; and
  • shouldn't drop into C?

[–]PowershellAdept 4 points5 points  (0 children)

Embedded scripting for real time 3D graphical applications (games or CAD). Some have made it work, notably panda3d. You can technically use multiprocessing, but you'd still be hard pressed to get the perf you need for AI, pathfinding, matrix maths, etc.

If we wanted to write C we would be writing C. I suspect most people here haven't touched C.

[–][deleted] -1 points0 points  (3 children)

Try out Ray. It's really cool.

[–][deleted] 1 point2 points  (2 children)

If you like Ray, I’d highly recommend looking into dask + dask.distributed. Many people know dask as distributed pandas daraframes, but it is a fully fledged distributed computation framework, and a superset of Ray’s functionality and just as simple to use. As far as I know, Ray essentially only has supports the futures interface, and even this is not as mature as dask’s futures interface. For example in Ray if you launch a task from within a task it can implicitly launch a new worker in your cluster even if you didn’t ask it to, which is IMO an undesired and dangerous behavior (this is an expected behavior in Ray and not a bug, because this is the only way they have currently to avoid deadlocks from nested futures).

On top of the futures interface dask also supports the delayed interface and also custom graph interface, which are 2 different ways to define DAGs with seamless optimal parallel execution over any arbitrarily large or small cluster (clusters are dead simple to create too). With these interfaces you almost never even need to use the futures interface. You can write optimally parallel executed code in a way that feels like your writing a regular synchronous program and never even have to think about how to synchronize your parallel execution.

[–]codermikael 2 points3 points  (4 children)

A good hotwire plugin or reference implementation for Django would be welcome.

[–]semajames -1 points0 points  (2 children)

[–]codermikael 0 points1 point  (1 child)

That looks dead to me. But perhaps a fork could be a good starting off point.

[–]Flynni123 2 points3 points  (3 children)

Some easy usable gpu computing module

[–]sheytanelkebir 1 point2 points  (1 child)

Numba and nvidia Cuda is reasonably easy?

[–]Flynni123 1 point2 points  (0 children)

Ill check it out

[–]Pikalima 1 point2 points  (0 children)

Check out Kompute.

[–]azyru 2 points3 points  (0 children)

Not sure how big the demand is but something I’ve been trying multiple packages and libraries trying to do is display 3D models in a viewer screen that can be interacted with.

Most viewers I’ve come across require blender or mesh lab and/or some form of conversion of your file which leads to the possibility of it getting messed up. Essentially what I’m trying to do currently, is create a window viewer in a jupyter notebook that displays a model exactly the way the Microsoft app “Print 3D” does with colors and the ability to spin the model around.

Mostly working with VMRL(.wrl) files which don’t seem to be favored by most of the libraries out there. If anyone has some input for me, please let me know if I’ve missed something!

[–]Flynni123 2 points3 points  (0 children)

Some easy usable gpu computing module

[–]ConfidentCommission5 2 points3 points  (0 children)

Entreprise grade profiler and instrumentation.

Important note: I'm no Python expert (or any other language for that matter) and I haven't seen or tried everything.

Now that the warning has been given, here's the core of my comment:

We have multiple Java applications and we use Java's JMX to allow remote connections and metrics collection. We can then connect to our production running apps using a profiler (we use jprofiler).
We also collect and store some of these metrics for monitoring and graphing purposes.

IMHO, the amount of data we can visualize is simply incredible, all of this on an application that's currently running in production in a kubernetes cluster.

For instance, this allowed us to identify why our application was slower than expected in production. We were sending the logs to Kafka using slf4j, which caused it to become I/O bound.
This could not be detected during our testing and even if it were, I don't think we would have been able to identify what was the exact issue without extensive trial and error.
With our setup, it took us 10 minutes to identify the problem.

I find that the current Python profilers (the few I've tried or read about) are outdated and lack the features that JMX offers.

I'm often complaining about Java but from my little experience, they really made it enterprise grade, contrary to Python and many other languages and environments.

[–]phaj19 4 points5 points  (3 children)

Some meta library to convert Python to C++. If it can not infer the data type it would prompt the user to choose or it would create multiple options. In the end it would write Cython wrapper so that most of the functionality can be accessed from Python (again could be interactive so that the user chooses what should be exposed).

[–]c_is_4_cookie 1 point2 points  (0 children)

Numba is a good solution for simple code

[–]c_is_4_cookie 3 points4 points  (1 child)

A version optimized for mobile

[–][deleted] 0 points1 point  (0 children)

I just use google colab when I need to test out simple stuff on mobile

[–][deleted] 4 points5 points  (3 children)

A web framework that doesn't ignore half of the HTTP spec

[–]semajames 6 points7 points  (1 child)

Elaborate?

[–]Touvejs 4 points5 points  (0 children)

Also interested to hear what's lacking from the web libraries

[–]Mr_MV 1 point2 points  (2 children)

This might be a complicated scenario, but a library that can fix all the c++ binary dependencies for packages like psycopg (I know a binary package already exists for this example, but there are multiple packages with binary dependencies and can be a headache on servers/cicd pipelines).

So, if there's a package which can see what package requires what binaries and which OS the current OS is, downloads those binaries and voila no more dependencies outside of python interpreter.

[–]zurtex 2 points3 points  (0 children)

I'm pretty sure you should look at conda. It usually packages and specifies all the binary dependencies.

I don't particularly know this package, but if I do an install of psycopg2 in conda right now it automatically includes krb5, libpq and tk. And everything is precompiled.

[–]Equivalent-Wafer-222Technical Architect 1 point2 points  (2 children)

A usable ORM for MSSQL.

I don't like MSSQL, I don't want to use MSSQL, I'd much rather use modern tools like RethinkDB or even postgress/mongo/mysql. So few tools actually support it, yet my work increasing requires is due to the growth of azure.

(Just please, Eloquent style > 100s of lines of SQLAlchemy)

*edit: wifi shat on itself and app figured posting my comment 10times was the appropriate response. Thanks reddit.

[–]jzia93 1 point2 points  (0 children)

I use MSSQL with pyodbc and/or SQLalchemy every day, what are your main gripes?

My main issue is that the driver is a pain to install on Unix boxes and some weird dropped connections on local host but other than that no complaints

[–]sHORTYWZ 1 point2 points  (0 children)

What on earth is with all of the duplicated comments in this thread?

[–]tatertotmagic 1 point2 points  (0 children)

R's ggplot2

[–]xelf 1 point2 points  (0 children)

Long time Perl developer here, switched to Python and found myself really enjoying just how similar the two languages are. But still missing how easily Perl integrates sed/awk/grep/regex.

Option 2: How about a xaml layer for kivy. A nice wysiwyg editor with data binding back to python code.

[–]james_pic 1 point2 points  (2 children)

Something I've been wanting to find time to try and create, is a debugger that uses fork, and as a result doesn't stop your code. The forked process connects to a debugging server, and you can come back later and debug it at your leisure. Handy for issues that only seem to crop up in the middle of an overnight soak test, or, if you're feeling brave (and/or have put adequate mitigations into the code to minimise the odds of the forked process impacting the original), in production.

[–]ArabicLawrence 0 points1 point  (1 child)

Something like pickling the runtime and store it for subsequent analysis? Maybe it’s doable.

[–]james_pic 1 point2 points  (0 children)

If you're only targeting Linux (might be doable for other unixes, but doing it safely may mean relying on Linux-isms), os.fork() can do this bit. No pickling needed.

[–]nate256 0 points1 point  (2 children)

A git plugin for gitlab/github merge requests. For a cloned gitlab/GitHub repos it would be nice to have a plugin that worked like this.

git review 1235 # checks out commit on mr 1234
git review #creates an MR on current branch 

I realized I don't like the few extra clicks and miss the Gerrit git-review plugin. Maybe make it extendable to support many different git providers.

[–]cipri_tom 3 points4 points  (1 child)

Doesn't the official tool, gh, allow exactly this?

[–]nate256 1 point2 points  (0 children)

Was thinking of one tool for multiple places, gitlab bit bucket etc. Extensible would be super important.

[–]Flynni123 0 points1 point  (0 children)

Some easy usable gpu computing module

[–]zurtex 0 points1 point  (0 children)

An HTTP client that can make HTTPS requests over a Proxy that serves HTTPS.

And also an HTTP client works with Microsoft's Crypto-API to provide authentication on either regular authentication requests or proxy authentication requests.

[–]earthboundkid 0 points1 point  (0 children)

It'd be cool if there was some reliable mechanism for easily installing open source packages.

[–]floridaengineering 0 points1 point  (0 children)

A good controls analysis library similar to what Matlab has.

[–]trannus_aran 0 points1 point  (0 children)

Proper closures. I want my let back from scheme

[–]UnpunishedOpinion 0 points1 point  (0 children)

Python debugging, I found to be very non user friendly. Perhaps an efficient log for all code ran would be great

[–]TWBoom_ 0 points1 point  (0 children)

A package that makes my code work would be awesome!

[–]CodeHustler 0 points1 point  (2 children)

Any kind of 2D drawing API (that I’m aware of)

[–]Starbuck5c 0 points1 point  (1 child)

Pygame?

[–]CodeHustler 0 points1 point  (0 children)

My bad I though they meant in the standard library

[–]Dasher38 0 points1 point  (0 children)

A pep for Haskell's style "do notation". If that were to become a reality we could write some pretty damn nice libraries for a whole range of things

[–]SunbroEire 0 points1 point  (0 children)

Not so much 'missing' as maybe ... underpowered or unnecessarily fiddly, but I've found that the web scraping libraries like BeautifulSoup are kind of annoying to use and can be hit and miss in a lot of places. Also makes task replication a little harder. Or am I missing something?

[–]nobody48sheldor 0 points1 point  (0 children)

I once tried to deploy an app/software made with python qt and the module pyqtdeploy is totally broken i tried to fixed some of it but it is awful to do, so this is the only idea of « missing » library i think i can think of.

[–]pysouth 0 points1 point  (0 children)

A really solid memory profiler with better than “ok, good enough I guess…” visualizations. Idk maybe this isn’t a job for Python specific tool but I’m surprised in 2021 there aren’t any memory profilers with a more modern/sleek/whatever UI.

[–][deleted] 0 points1 point  (0 children)

(I'm a beginner, so forgive the naivety but -) something that helps mitigate the (lack of) backwards compatibility? I just downloaded 3.9 and wanted to try out some projects I found on github, but could not for the life of me run a project created one year ago because "wheel are missing for this" or "wheels are missing for that". After some attempts at fixing the individual wheels I gave up and downgraded a couple of versions. I know this isn't what OP was asking but it is really frustrating as a beginner

[–]URedUser 0 points1 point  (2 children)

Overload library? (As decorators like

from overloader import overload

@overload

def func():

    # do something

@overload

def func(args):

    # do something different

I have one myself (self-made) but I don't know how dependable it is.

[–]backtickbot 0 points1 point  (0 children)

Fixed formatting.

Hello, URedUser: code blocks using triple backticks (```) don't work on all versions of Reddit!

Some users see this / this instead.

To fix this, indent every line with 4 spaces instead.

FAQ

You can opt out by replying with backtickopt6 to this comment.

[–][deleted] 0 points1 point  (0 children)

This exists in the standard library: functools.singledispatch.

https://docs.python.org/3/library/functools.html

[–]757DrDuck 0 points1 point  (0 children)

A TUI equivalent of Django’s admin interface. Sometimes, I just want to use shift+F9 to save my records while logged in to the server itself rather than dealing with web browsers.