rillrate-fossil / rillrate-py Goto Github PK
View Code? Open in Web Editor NEWReal-time UI for bots and tools / Python bindings
Home Page: https://rillrate.com
License: Apache License 2.0
Real-time UI for bots and tools / Python bindings
Home Page: https://rillrate.com
License: Apache License 2.0
The library doesn't have any way to communicate its syntax, signatures and types to the user, this makes auto-complete and linting impossible to be done with the library. .pyi
files should be added, with all the methods, classes, attributes and type-hinting of the library, so mypy
is able to run on projects using rillrate, pylint
and pyright
won't complain about not finding definitions, and auto-complete is able to know what fields are available.
https://github.com/vicky5124/lavasnek_rs/blob/master/lavasnek_rs.pyi
https://github.com/Daggy1234/polaroid/tree/main/polaroid
You can check out an example of a .pyi
file with pyo3 on the lavasnek_rs and polaroid libraries.
There's currently no documentation available for anything rillrate-py, stubs files mentioned in #2 will help a bit with this, but full documentation should be written. Thankfully, this is quite easy to do, as pdoc (https://pdoc.dev/) supports building documentation from linked library files, but doc comments and function signatures will still need to be added to every function, method and "class" defined in the source.
https://github.com/vicky5124/lavasnek_rs/
Lavasnek has followed this approach with very happy results; you can check out the source code, to see how documentation is written, and also the macros used for function signatures. pdoc -o docs .env/lib/python3.9/site-packages/lavasnek_rs
is used to build the documentation, after maturin develop
has been run.
mitmproxy/pdoc#239
Note that .pyi
files are not yet supported by pdoc, so type values should be written in the documentation, as they won't show up in the documentation otherwise.
Currently, the library does not install on the newly released 3.10 python version, this is because wheels are only built for 3.6 to 3.9
"3.10"
should be added to the list of python versions, in CI, and PyPi Releases:
matrix:
python-version: [3.6, 3.7, 3.8, 3.9, "3.10"] # 3.10 w/o quotes will be read as 3.1
os: [ubuntu-latest, macos-latest, windows-latest]
Additionally, this library cannot be installed when using a 32 bit system, or an ARM system, because only x86_64 builds are made; this makes the library not be able to be installed via PyPi on 32 bit Windows or Linux systems, modern systems like the M1 Macs, and other ARM systems like the Raspberri Pi, or Android systems with Termux or PyDroid.
https://github.com/Daggy1234/polaroid/blob/main/.github/workflows/publish.yml
Check out how other pyo3 libraries build for ARM, like for example polaroid
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.