Open WillDaSilva opened 8 months ago
+1 for Python
Support. A lot of existing configuration systems, dev/infra/code-ops ecosystem leverage python. A python
binding would would be a great addition.
+1!!!
+1
+10086
See also the discussion regarding a generic C ABI which would be required for a proper implementation of Python bindings.
+1
Seems like pickle basically can do what pydantic does. So maybe pydantic V2 generation would make sense? Could then even go via rust instead of C or just generate pydantic Python and have pydantic/Python handle the underlying rust/C as it already does at runtime.
or am I missing the point?
+1
+1
Please use emoji reactions on the issue instead of replying to indicate your interest. If you simply want to be notified of updates, you can subscribe to the issue—there's no need to add a comment.
+1
For those that are interested in implementing a python binding: we just published a specification for our message passing API, and our binary serialization format.
Our documentation can be found here: https://pkl-lang.org/main/current/bindings-specification/index.html
+1 for Python
Support.
And it should be MicroPython friendly
+1
must have! We use python a lot, but none of the supported languages. I guess C, C++ and Rust would be next
Adding python support would be game changing!
I've also added codegen (though it still needs more testing) Check it out here pkl-python
Python you can do it!
@bioball it would be great if you'll respond with your thoughts regarding the implementation of @jw-y - https://github.com/jw-y/pkl-python so it’ll get better chances of getting accepted.
As for Pydantic support, I’ve created an issue at the pkl python repository to discuss it.
For Rust, you can currently use https://github.com/DevYatsu/pkl_fast
Currently the following language bindings are supported:
It would be nice to add Python to the list, as it's one of the most popular programming languages, and it is often used to process configuration.
A first step towards achieving this may be the creation of a C API, which Python could then wrap:
8