-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expose old open pipe funcs #12
Conversation
- change wrapper functions that take buffers from py::object args into py::buffer args. - make RF24NetworkWrapper c'tor explicitly cast the _radio arg as a RF24 obj.
- readme now shows howto migrate from the old wrappers - readme now shows how to install from pypi or piwheels via pip - add some badges to readme - added missing RF24Network c'tor - re-worded RF24Mesh.write() doc a bit - made sure pyrf24.rf24 module shows up in the docs' python modules index - removed unnecessary option from automodule directive - correct the RF24Mesh docs' sections' nested ordering
remove superfluous badge and change some instructions to use pip instead of setup.py
- update README about building with added CMake args.` - ignore wheelhouse dir for local runs of cibuildwheel. - move binding code out of python pkg src. - move most of pkg metadata into pyproject.toml updated requirements - wheel seemed to have been a dependency of scikit-build - cpp-linter is now available from PyPI.
specifically for args that use default values. Should be properly documented, but this will suffice, but that would require abstracting build/install instructions from README to a new page
8eef21f
to
b06abf4
Compare
I tested this with the multiceiver_demo example modified to use a mix of integer and bytearray objects as addresses. Everything looks good! I also tested the networking layers using the general_network_test example (both mesh and net layers individually) just to make sure the changes didn't break anything. Note: The integers (like in C++) are written equivalently to the bytearray form if endianness is reversed. >>> import struct
>>> addr = struct.pack("Q", 0xb3b4b5b6f1)
>>> # 'Q' is an unsigned long long (8 bytes), so we'll just examine the first 5
>>> addr[:5]
b'\xf1\xb6\xb5\xb4\xb3' None of the example code actually uses integer objects as addresses because the functions that this PR is exposing are technically deprecated according to the docs. |
needs to use Ubuntu 22.-04 to get adequate version of cmake via apt
efefe64
to
b9e8519
Compare
gh-pages will be used only for push event reviews now. Going forward, RTD is preferable for end-users because we can host multiple branches/versions of the docs on RTD.io RTD can also be used to preview the docs for a PR.
- update classifiers for PyPI - hardcode badge color for piwheels
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reviewed & tested this. Now I'm merging this.
When the release CI finishes, these changes will be released as part of v0.2.1
I decided to take another try at exposing the overloaded
openReading/WritingPipe()
functions that take an int as an address. In successfully doing so, I found that there is a better way to declare functions that take abytes
orbytearray
object (usingpybind11::buffer
datatype).Other changes
scikit-build
. This allows for better control over what files get put in the distribution. Not to mention, its usage was recently discouraged (by one its authors 👀 ) when I asked about controlling the files in sdist.setuptools_scm
which I'm using to get the version from the tagged commit upon release. Additionally,wheel
andsetuptools
are abstractions that used to be part of the std libs (still required for building any wheels).