Skip to content
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

Highlight new from_bytes() context manager usage #287

Open
diego-plan9 opened this issue May 31, 2022 · 5 comments
Open

Highlight new from_bytes() context manager usage #287

diego-plan9 opened this issue May 31, 2022 · 5 comments

Comments

@diego-plan9
Copy link

Hello,

if my understanding is correct, in #285 the from_bytes() signature was changed so it now returns a context manager, requiring users to update their usage, ie:

addressBook = addressbook.AddressBook.from_bytes(msg_bytes)

should now be:

with addressbook.AddressBook.from_bytes(msg_bytes) as addressBook:
    ...

Would it be possible to highlight this change more prominently in the documentation? It seems it was not mentioned explicitly in the changelog and the quickstart seems to be suggesting the pre-1.1.1 form: for context, we were depending on ~1.1.0 on another project, and it took a bit of time to find out the cause of it breaking when the newest pycapnp version was pulled in.

@haata
Copy link
Collaborator

haata commented May 31, 2022

Thanks for bringing this up!
I'm very sorry about this, I'll try to fix up the documentation over the next couple weeks (I'm also happy to accept PRs in the meantime).

@diego-plan9
Copy link
Author

Thanks to you for the prompt response and for being open to addressing it - it's not critical, the goal is "just" to make it easier for other users to update their code to match the latest release. I'll look into the possibility of submitting a PR myself in the upcoming days 🤞

@elagil
Copy link

elagil commented Jul 5, 2022

How about calling the current version 1.1.1 version 2.0.0? This is a breaking change and should be reflected in the version number, as per https://semver.org/.

Automatic updates that pull any version but the next major release, will break existing code (as in my case).

@rmelick-muon
Copy link
Contributor

I've created a PR for the quick documentation update (#295). I'm also curious why this change didn't affect the from_bytes_packed function.

haata added a commit that referenced this issue Jul 12, 2022
Update documentation about from_bytes to use context manager. #287
@haata
Copy link
Collaborator

haata commented Jul 12, 2022

I'm sorry for being so slow with this, things are crazy for me during the summer.
I can try to squeeze in a new release, but it seems the windows CI build is failing now... (I use the CI builds for the PyPi artifacts so that will need to be fixed first). Not sure I'll have time to work on that until late August (I'll have limited internet access in a couple weeks, but I'll have enough to do the occasional PR review).

MMetelko added a commit to RIAPS/riaps-pycom that referenced this issue Oct 11, 2023
… change in how the `from_bytes` call is used. Issue found on the subject is capnproto/pycapnp#287. The suggestion resolution is in a pull request that updates the documentation: https://github.com/capnproto/pycapnp/pull/295/files.
MMetelko added a commit to RIAPS/riaps-pycom that referenced this issue Jan 3, 2024
* Update apparmor to include "/opt/riaps" folder

* Fixes for double-start and dc / leader election problem.

* Remove ctrl.py from deplo folder (duplication)

* Move from Python 3.8 to 3.10
Commented out unused capnp code (was for C++ efforts)

* Include "/opt/riaps" in environment setup

* When moving capnproto to v0.8.1 (for a security update), found that a change in how the `from_bytes` call is used.  Issue found on the subject is capnproto/pycapnp#287. The suggestion resolution is in a pull request that updates the documentation: https://github.com/capnproto/pycapnp/pull/295/files.

* Remove StandardOutput from service definition

* fix: disco crashes (related to opendht)

* fix: dht late joiner leads to undue delay

* Fix: multiple bootstraps for the same node (dbase_dht/peermon)

* Reverse merge is dev-capnp-0-8-1 branch

* Update version.sh

---------

Co-authored-by: Gabor Karsai <gkarsai@users.noreply.github.com>
MMetelko added a commit to RIAPS/riaps-pycom that referenced this issue Jan 3, 2024
* Fix disco regs (#220)

* Fix: disco caching problems (causing invalid updates), checks on dc group parameters, increase timeout on devicereq (to allow slow device startups), j(oin) command in ctrl cli

* Set default riaps-log.conf to not include the riaps_logger setting of socketHandler, example of use available in a commented out line

* Revert previous changes to riaps-log.conf.  Testing proved it works as it was with the correct application setup.

* Remove older riaps logger instructions from the logging test and reference the source file readme section.

---------

Co-authored-by: Gabor Karsai <gkarsai@users.noreply.github.com>

* Correct peerTimeout comparison

* Update version.sh

* Dev package refactor (#223)

* Initial edit to move towards developer specific package for all archs

* Update from testing

* Remove unused DEBIAN/<arch> folders

* Move apparmor profile to use @multiarch variable to allow creating a package for all archs. For controller system, install riaps-pycom and riaps-pycom-dev packages

* Move from package.sh -d (for -dev) option to -c (for -ctrl)

* Move towards using pyproject.toml file instead of setup.py.
mk-release.sh seems to be leftover from older build method, so removed

* first cut making script files into entrypoints for 6 files - not tested yet

* tested and updated debian package files, create files for the 6 scripts that included code and placed them within the src/riaps folder appropriate to their function, updated riaps_logger documentation

* Update package and script setups

* move back to -dev package name and adjust pyproject.toml for package data

* Updates per feedback

* Move to riaps-pycom and riaps-pycom-dev packages being independent and mutually exclusive
Added dependencies to pyproject.toml (note: setup for testing on VM, current BBB/RPi images do not have all pip packages)
Removed install of riaps-mn file in /usr/local/bin setup (debian)

* Updates after testing on VM and fresh BBB (EOF does matter)

* Removed dependencies from pyproject (otherwise package could not be installed).
TODO: deb package removal/purge does not uninstall pip package.

* Update riaps_fab for new pycom package naming

* Update to package files to save of current keys in /tmp directory
Remove -dev conf file from regular package

* Move debian security keys save back to /home/riaps/.ssh directory
Don't allow riaps packages to be removed from development system, only remote nodes.

* add full path for key save location

* Update Debian package setup to provide common dirs as variables

* package issue grabbing src conf files

* Adjusted debian package setup to address install issues

* Fix: default to turning off password access to remote nodes when rekeying the nodes (updateNodeKey)

* Update version.sh

* * Set "/etc/riaps/riaps.conf" nic_name to "enp0s8" when "riaps-pycom-dev" is installed.  Default favors remote node setup ("riaps_pycom" package).
* Default to having the "/etc/riaps/riaps-hosts.conf" entry for "nodes =" to be empty, user must either manually set it up or use the VM "connect_remote_nodes.sh" script with the "-H" option to automatically add a comma separated list of hostnames.

* Set default control host name to match released VM

* Update riaps-rpyc-registry.service

Remove StandardOutput, will be necessary when working in Debian Bullseye and Bookworm later

* Update version.sh

---------

Co-authored-by: Gabor Karsai <gkarsai@users.noreply.github.com>

* Prepare for v1.1.22 release

* Merge fix-start-dc branch into develop (#227)

* Update apparmor to include "/opt/riaps" folder

* Fixes for double-start and dc / leader election problem.

* Remove ctrl.py from deplo folder (duplication)

* Move from Python 3.8 to 3.10
Commented out unused capnp code (was for C++ efforts)

* Include "/opt/riaps" in environment setup

* When moving capnproto to v0.8.1 (for a security update), found that a change in how the `from_bytes` call is used.  Issue found on the subject is capnproto/pycapnp#287. The suggestion resolution is in a pull request that updates the documentation: https://github.com/capnproto/pycapnp/pull/295/files.

* Remove StandardOutput from service definition

* fix: disco crashes (related to opendht)

* fix: dht late joiner leads to undue delay

* Fix: multiple bootstraps for the same node (dbase_dht/peermon)

* Reverse merge is dev-capnp-0-8-1 branch

* Update version.sh

---------

Co-authored-by: Gabor Karsai <gkarsai@users.noreply.github.com>

* Update version number for 1.1.23 release

---------

Co-authored-by: Gabor Karsai <gkarsai@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants