From: Kent Gibson <warthog618@gmail.com>
To: brgl@bgdev.pl
Cc: linux-gpio@vger.kernel.org
Subject: Re: [libgpiod][PATCH 0/2] support casting line.Value to bool
Date: Thu, 23 May 2024 07:57:12 +0800 [thread overview]
Message-ID: <20240522235712.GA5330@rigel> (raw)
In-Reply-To: <CAMRc=Mfd_i7uBBJnxkVbuZkiudxcb2N3rM8RmZGZAG-85iAYoA@mail.gmail.com>
On Wed, May 22, 2024 at 09:22:50AM -0700, brgl@bgdev.pl wrote:
> On Wed, 22 May 2024 02:46:41 +0200, Kent Gibson <warthog618@gmail.com> said:
> > While writing a gpiod plugin for gpiozero (Python), I had to map line.Value
> > to its bool equivalent. Casting seemed the obvious way to go, as it is
> > essentially a boolean, but that didn't work as I expected - it always
> > returned True. This is the case for any Python type that does not provide
> > a suitable conversion operator.
> >
> > This series adds support for casting line.Value to bool.
> >
>
> Ha! Interesting. Do you think we may need it anywhere else too?
>
I guess the same applies to the C++ and Rust bindings - I'll have to
check.
> > Patch 1 adds a test that comfirms the existing behaviour.
> > Patch 2 adds the __bool__() operator to make the Value behave as one
> > might expect.
> >
> > As an aside, I couldn't for the life of me work out how to run the complete
> > python test suite. There are no hints in the documentation.
> >
> > There is a python-tests-run target in the Makefile, but that didn't work:
> >
> > ~/libgpiod/bindings/python$ make python-tests-run
> > PYTHONPATH=/home/kent/libgpiod/bindings/python
> > LD_LIBRARY_PATH=/home/kent/libgpiod/lib/.libs/:\
> > /home/kent/libgpiod/tests/gpiosim/.libs/ \
> > python3 -B -m tests
> > /bin/bash: line 2: /home/kent/libgpiod/tests/gpiosim/.libs/: Is a directory
> > make: *** [Makefile:677: python-tests-run] Error 126
> >
> > I tried fixing that but I still couldn't satisfy ld wrt the gpiosim
> > (I don't have libgpiod installed - just using the local build),
> > so gave up and called this particular test directly with
> >
>
> I typically run it like this:
>
> PYTHONPATH=./bindings/python
> LD_LIBRARY_PATH=./lib/.libs/:./tests/gpiosim/.libs/:bindings/python/
> python -B -m tests
>
So a one-liner?
That gives me:
$ PYTHONPATH=./bindings/python LD_LIBRARY_PATH=./lib/.libs/:./tests/gpiosim/.libs/:bindings/python/ python3 -B -m tests
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/home/kent/libgpiod/bindings/python/tests/__main__.py", line 7, in <module>
from .tests_chip import *
File "/home/kent/libgpiod/bindings/python/tests/tests_chip.py", line 8, in <module>
from . import gpiosim
File "/home/kent/libgpiod/bindings/python/tests/gpiosim/__init__.py", line 4, in <module>
from .chip import Chip
File "/home/kent/libgpiod/bindings/python/tests/gpiosim/chip.py", line 4, in <module>
from . import _ext
FileNotFoundError: [Errno 2] No such file or directory
That might also be as far as I got previously - I may've been mis-remembering
that the final hurdle was an import error, not an ld issue, though both are
looking for a module they can't find, so basically the same thing.
Cheers,
Kent.
next prev parent reply other threads:[~2024-05-22 23:57 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-22 0:46 [libgpiod][PATCH 0/2] support casting line.Value to bool Kent Gibson
2024-05-22 0:46 ` [libgpiod][PATCH 1/2] bindings: python: tests: add test for " Kent Gibson
2024-05-22 0:46 ` [libgpiod][PATCH 2/2] bindings: python: support " Kent Gibson
2024-05-22 16:22 ` [libgpiod][PATCH 0/2] " brgl
2024-05-22 23:57 ` Kent Gibson [this message]
2024-05-23 0:32 ` Kent Gibson
2024-05-23 7:50 ` Bartosz Golaszewski
2024-05-23 7:55 ` Bartosz Golaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240522235712.GA5330@rigel \
--to=warthog618@gmail.com \
--cc=brgl@bgdev.pl \
--cc=linux-gpio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).