setuptools-rust
winsafe-examples
Our great sponsors
setuptools-rust | winsafe-examples | |
---|---|---|
5 | 16 | |
555 | 57 | |
2.7% | - | |
8.7 | 5.4 | |
21 days ago | 27 days ago | |
Python | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
setuptools-rust
-
How do i go about building a vidoe conferencing app?
For Python specifically, In addition to using rust-cpython or PyO3, maturin makes it really comfortable to build, package, and publish Rust code into Python packages and, if your niche doesn't quite fit, there's setuptools-python which might do it.
-
Python extensions in Rust
Aside from the PyO3 and rust-cpython crates already mentioned, I'd suggest maturin as a way to integrate your build processes or possibly setuptools-rust.
-
Good use cases for Rust? I'm trying to find a reason to use Rust
Compiled modules for Python stuff (I'd recommend PyO3 but the last one I started was before that worked on stable Rust, so I used its progenitor, rust-cpython. See also maturin or setuptools-rust).
-
Can someone help me understand PyO3? I'm not sure how it works.
...but you will need to rename the generated library to match import conventions. setuptools-rust or Maturin can help with that.
-
PyO3: Rust Bindings for the Python Interpreter
Between pyodide, pyo3, rust-cpython, and rustpython, I think Pyo3 is the best way to drop in rust in a python project for a speed up, if that is your goal. Some of the demos show using python from rust, but to me the biggest feature is without a doubt compiling rust code to native python modules. I'm using it to speed up image manipulation backed by numpy arrays.
There’s a setuptools rust [0] extension package that can be used to hook the compilation of the rust into the wheel building or install from source. Maturin [1] seems to be regarded as the new and improved solution for this, but I found that it’s angled toward the using python from rust.
There’s also the rust numpy [2] package by the same org which is fantastic in that it lets you pass a numpy matrix to a native method written in rust and convert it to the rust equivalent data structure, perform whatever transformation you want (in parallel using rayon [3]), and return the array. When building for release, I was seeing speed ups of 100x over numpy on the most matrix mathable function imaginable, and numpy is no joke.
I think there is a lot of potential for these two ecosystems together. If there’s not a python package for something, there’s probably a rust crate.
If anyone is interested the python package that I'm building with some rust backend, its called pyrogis [4] for making custom image manipulations through numpy arrays.
winsafe-examples
- Is Rust worth it for non low-level applications
- Rust for Windows.
-
Unsafe is a bad practice?
You might be interested in winsafe. There are a few examples how it can be used without unsafe code.
-
Why Rust for general application development?
If you think this is nuts, just wait until you find out that people are writing high level, native desktop applications in pure Rust!
- What beginner-level projects can I do now that I've just started learning rust?
- How to play video with Rust
-
How useful is Rust for quick prototyping++?
The easy path is just to build your structs normally, letting the burden of Rc/Arcing everything to the user. My first design was like this. Once I decided to bury this stuff inside the library, then my headaches began. But the API ends up being very ergonomic.
-
What is an idiomatic rust equivalent of C# events?
For example, a button click, where self.wnd is the parent window, looks like this:
- Is there any GUI framework or interface in RUST?
-
Current Cons in Rust, Workarounds, and Status?
Well, I can't really say it's new, but I'm working on a safe GUI API for native Win32 applications, where you can draw the windows using a WYSIWYG resource editor, like this example. And I'm having a lot of fun with it.
What are some alternatives?
maturin - Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages
pybind11 - Seamless operability between C++11 and Python
Native Windows GUI - A light windows GUI toolkit for rust
tokenizers - 💥 Fast State-of-the-Art Tokenizers optimized for Research and Production
opencv-python - Automated CI toolchain to produce precompiled opencv-python, opencv-python-headless, opencv-contrib-python and opencv-contrib-python-headless packages.
winlamb - A lightweight modern C++11 library for Win32 API, using lambdas to handle Windows messages.
winsafe - Windows API and GUI in safe, idiomatic Rust.
json - Strongly typed JSON library for Rust
PyO3 - Rust bindings for the Python interpreter
rust-cpython - Rust <-> Python bindings
pythran - Ahead of Time compiler for numeric kernels