All of lore.kernel.org
 help / color / mirror / Atom feed
* [master][PATCH] python3-inotify: add ptest
@ 2022-11-25 17:10 Zheng Qiu
  2022-11-25 19:02 ` [master][PATCH] python3-inotify: add ptest -> v2 please Randy MacLeod
  0 siblings, 1 reply; 5+ messages in thread
From: Zheng Qiu @ 2022-11-25 17:10 UTC (permalink / raw)
  To: openembedded-devel; +Cc: zheng.qiu, randy.macleod

Add ptest provided from the source code, and run it using pytest.

Since the tarball provided with pypi does not include ptest, switch the
source to be its git repo.

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
---
 .../python/python3-inotify/run-ptest          |  3 +++
 .../python/python3-inotify_0.2.10.bb          | 23 ++++++++++++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 meta-python/recipes-devtools/python/python3-inotify/run-ptest

diff --git a/meta-python/recipes-devtools/python/python3-inotify/run-ptest b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
new file mode 100644
index 000000000..3385d6893
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}'
diff --git a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
index 524c3a0d2..3306438a1 100644
--- a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
+++ b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
@@ -6,9 +6,30 @@ LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginli
 
 SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
 
-inherit pypi setuptools3
+SRC_URI = " \
+    git://github.com/dsoprea/pyinotify.git;branch=master;protocol=https \
+    file://run-ptest \
+"
+
+SRCREV = "f77596ae965e47124f38d7bd6587365924dcd8f7"
+
+S = "${WORKDIR}/git"
+
+inherit setuptools3 ptest
+PIP_INSTALL_PACKAGE = "inotify"
+PIP_INSTALL_DIST_PATH = "${S}/dist"
+
 
 RDEPENDS:${PN} += " \
     python3-ctypes \
     python3-logging \
 "
+
+RDEPENDS:${PN}-ptest += " \
+    ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+    install -d ${D}${PTEST_PATH}/tests
+    cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
-- 
2.33.0



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [master][PATCH] python3-inotify: add ptest -> v2 please
  2022-11-25 17:10 [master][PATCH] python3-inotify: add ptest Zheng Qiu
@ 2022-11-25 19:02 ` Randy MacLeod
  2022-11-25 19:55   ` Qiu, Zheng
  0 siblings, 1 reply; 5+ messages in thread
From: Randy MacLeod @ 2022-11-25 19:02 UTC (permalink / raw)
  To: Zheng Qiu, openembedded-devel

On 2022-11-25 12:10, Zheng Qiu wrote:
> Add ptest provided from the source code, and run it using pytest.
Super, can you add the ptest result summary in this log.
If any of the tests are failing also add upstream issue links.
>
> Since the tarball provided with pypi does not include ptest, switch the
s/does not include ptest/does not include the test code/
> source to be its git repo.
>
> Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
> ---
>   .../python/python3-inotify/run-ptest          |  3 +++
>   .../python/python3-inotify_0.2.10.bb          | 23 ++++++++++++++++++-
This should be renamed from python3-inotify_0.2.10.bb to
something like python3-inotify_git.bb
>   2 files changed, 25 insertions(+), 1 deletion(-)
>   create mode 100644 meta-python/recipes-devtools/python/python3-inotify/run-ptest
>
> diff --git a/meta-python/recipes-devtools/python/python3-inotify/run-ptest b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
> new file mode 100644
> index 000000000..3385d6893
> --- /dev/null
> +++ b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
> @@ -0,0 +1,3 @@
> +#!/bin/sh
> +
> +pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}'
> diff --git a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
> index 524c3a0d2..3306438a1 100644
> --- a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
> +++ b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
> @@ -6,9 +6,30 @@ LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginli
>   
>   SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
>   
> -inherit pypi setuptools3
> +SRC_URI = " \
> +    git://github.com/dsoprea/pyinotify.git;branch=master;protocol=https \
> +    file://run-ptest \
> +"
> +
> +SRCREV = "f77596ae965e47124f38d7bd6587365924dcd8f7"
This is the current head, which is fine but add a note in the  long log
about that choice. It's
$ git log --oneline 0.2.10... | wc -l

14

commits ahead of 0.2.10


> +
> +S = "${WORKDIR}/git"
> +
> +inherit setuptools3 ptest
> +PIP_INSTALL_PACKAGE = "inotify"
> +PIP_INSTALL_DIST_PATH = "${S}/dist"
Mostly harmless, I suppose. Any pippy pythonistas want to comment/explain?
> +
>   
>   RDEPENDS:${PN} += " \
>       python3-ctypes \
>       python3-logging \
>   "
> +
> +RDEPENDS:${PN}-ptest += " \
> +    ${PYTHON_PN}-pytest \
> +"
> +
> +do_install_ptest() {
> +    install -d ${D}${PTEST_PATH}/tests
> +    cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
> +}

v2 please.

-- 
# Randy MacLeod
# Wind River Linux



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [master][PATCH] python3-inotify: add ptest -> v2 please
  2022-11-25 19:02 ` [master][PATCH] python3-inotify: add ptest -> v2 please Randy MacLeod
@ 2022-11-25 19:55   ` Qiu, Zheng
  2022-11-25 21:43     ` Randy MacLeod
  0 siblings, 1 reply; 5+ messages in thread
From: Qiu, Zheng @ 2022-11-25 19:55 UTC (permalink / raw)
  To: MacLeod, Randy; +Cc: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 3209 bytes --]


On Nov 25, 2022, at 2:02 PM, MacLeod, Randy <Randy.MacLeod@windriver.com> wrote:

On 2022-11-25 12:10, Zheng Qiu wrote:
Add ptest provided from the source code, and run it using pytest.
Super, can you add the ptest result summary in this log.
If any of the tests are failing also add upstream issue links.

Sure.


Since the tarball provided with pypi does not include ptest, switch the
s/does not include ptest/does not include the test code/

Okay.


source to be its git repo.

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com<mailto:zheng.qiu@windriver.com>>
---
 .../python/python3-inotify/run-ptest          |  3 +++
 .../python/python3-inotify_0.2.10.bb          | 23 ++++++++++++++++++-
This should be renamed from python3-inotify_0.2.10.bb to
something like python3-inotify_git.bb

OK.

 2 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 meta-python/recipes-devtools/python/python3-inotify/run-ptest

diff --git a/meta-python/recipes-devtools/python/python3-inotify/run-ptest b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
new file mode 100644
index 000000000..3385d6893
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}'
diff --git a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
index 524c3a0d2..3306438a1 100644
--- a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
+++ b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
@@ -6,9 +6,30 @@ LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginli
   SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
 -inherit pypi setuptools3
+SRC_URI = " \
+    git://github.com/dsoprea/pyinotify.git;branch=master;protocol=https \
+    file://run-ptest \
+"
+
+SRCREV = "f77596ae965e47124f38d7bd6587365924dcd8f7"
This is the current head, which is fine but add a note in the  long log
about that choice. It's
$ git log --oneline 0.2.10... | wc -l

14

commits ahead of 0.2.10


Will change it to the head of 0.2.10


+
+S = "${WORKDIR}/git"
+
+inherit setuptools3 ptest
+PIP_INSTALL_PACKAGE = "inotify"
+PIP_INSTALL_DIST_PATH = "${S}/dist"
Mostly harmless, I suppose. Any pippy pythonistas want to comment/explain?

Since this recipe does not inherit pypi anymore, setting this would help wheel build.

+
   RDEPENDS:${PN} += " \
     python3-ctypes \
     python3-logging \
 "
+
+RDEPENDS:${PN}-ptest += " \
+    ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+    install -d ${D}${PTEST_PATH}/tests
+    cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}

v2 please.

--
# Randy MacLeod
# Wind River Linux


[-- Attachment #2: Type: text/html, Size: 19941 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [master][PATCH] python3-inotify: add ptest -> v2 please
  2022-11-25 19:55   ` Qiu, Zheng
@ 2022-11-25 21:43     ` Randy MacLeod
  2022-11-25 22:28       ` Qiu, Zheng
  0 siblings, 1 reply; 5+ messages in thread
From: Randy MacLeod @ 2022-11-25 21:43 UTC (permalink / raw)
  To: Qiu, Zheng; +Cc: openembedded-devel

On 2022-11-25 14:55, Qiu, Zheng wrote:
>>>
>>> +
>>> +SRCREV = "f77596ae965e47124f38d7bd6587365924dcd8f7"
>> This is the current head, which is fine but add a note in the  long log
>> about that choice. It's
>> $ git log --oneline 0.2.10... | wc -l
>>
>> 14
>>
>> commits ahead of 0.2.10
>>
> 
> Will change it to the head of 0.2.10

Hmmm, here are the commits, most of which don't affect runtime:

$ git log --oneline 0.2.10...
f77596a (HEAD -> master, origin/master, origin/HEAD) Add Dockerfile
9be6a51 Fix constant in adapter to match with DELETE events
    ^^^^^-------- seems like a bug fix that we should pick up. <<----
269d541 etup.cfg: Add missing newline
8e79335 tests/test_inotify.py: Canonicalize import
f844ea2 Added setup.cfg option to make bdist_wheel create
         a universal wheel.
53fd4ea Increase test coverage of Inotify initializer (#76)
0d802dc Update README.rst
f0d5b98 Update README.rst
9075acc Fix for issue #66, removing 'nose' as a production requirement.
82d1439 .travis.yml: Use 4.x version of coverage package
ebffda0 .travis.yml: Drop 3.3 support. Add 3.6, 3.7, 3.8
983049a .gitignore: Add ignore
cd7b276 requirements.txt: Remove nose from requirements
7202fc4 Propagate superficial parameter to remove_watch_with_id


Here's that one, reformatted, patch:

commit 9be6a51d1660991562eefaaddefa757ca0e0e00f
Author: Raphaël Beamonte <raphael.beamonte@gmail.com>
Date:   Sun Jul 29 01:24:52 2018

     Fix constant in adapter to match with DELETE events

     The previous behavior was duplicating a block of code and making
     one of the two useless. This fixes that by replacing the constant to
     IN_DELETE instead of IN_MOVED_FROM in one of the two blocks.

     Signed-off-by: Raphaël Beamonte <raphael.beamonte@gmail.com>

diff --git a/inotify/adapters.py b/inotify/adapters.py
index 7f3f708..e8301da 100644
--- a/inotify/adapters.py
+++ b/inotify/adapters.py
@@ -299,7 +299,7 @@ class _BaseTree(object):

                   self._i.add_watch(full_path, self._mask)

-             if header.mask & inotify.constants.IN_MOVED_FROM:
+             if header.mask & inotify.constants.IN_DELETE:
                   _LOGGER.debug("A directory has been removed. We're "
                                 "being recursive, but it would have "
                                 "automatically been deregistered: [%s]",



What's the impact to users of not having this fix?
It seems like a bug fix that we should pick up by backport of
user _git and HEAD.


-- 
# Randy MacLeod
# Wind River Linux



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [master][PATCH] python3-inotify: add ptest -> v2 please
  2022-11-25 21:43     ` Randy MacLeod
@ 2022-11-25 22:28       ` Qiu, Zheng
  0 siblings, 0 replies; 5+ messages in thread
From: Qiu, Zheng @ 2022-11-25 22:28 UTC (permalink / raw)
  To: MacLeod, Randy; +Cc: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 2816 bytes --]


On Nov 25, 2022, at 4:43 PM, MacLeod, Randy <Randy.MacLeod@windriver.com> wrote:

On 2022-11-25 14:55, Qiu, Zheng wrote:

+
+SRCREV = "f77596ae965e47124f38d7bd6587365924dcd8f7"
This is the current head, which is fine but add a note in the  long log
about that choice. It's
$ git log --oneline 0.2.10... | wc -l

14

commits ahead of 0.2.10

Will change it to the head of 0.2.10

Hmmm, here are the commits, most of which don't affect runtime:

$ git log --oneline 0.2.10...
f77596a (HEAD -> master, origin/master, origin/HEAD) Add Dockerfile
9be6a51 Fix constant in adapter to match with DELETE events
  ^^^^^-------- seems like a bug fix that we should pick up. <<----
269d541 etup.cfg: Add missing newline
8e79335 tests/test_inotify.py: Canonicalize import
f844ea2 Added setup.cfg option to make bdist_wheel create
       a universal wheel.
53fd4ea Increase test coverage of Inotify initializer (#76)
0d802dc Update README.rst
f0d5b98 Update README.rst
9075acc Fix for issue #66, removing 'nose' as a production requirement.
82d1439 .travis.yml: Use 4.x version of coverage package
ebffda0 .travis.yml: Drop 3.3 support. Add 3.6, 3.7, 3.8
983049a .gitignore: Add ignore
cd7b276 requirements.txt: Remove nose from requirements
7202fc4 Propagate superficial parameter to remove_watch_with_id


Here's that one, reformatted, patch:

commit 9be6a51d1660991562eefaaddefa757ca0e0e00f
Author: Raphaël Beamonte <raphael.beamonte@gmail.com>
Date:   Sun Jul 29 01:24:52 2018

   Fix constant in adapter to match with DELETE events

   The previous behavior was duplicating a block of code and making
   one of the two useless. This fixes that by replacing the constant to
   IN_DELETE instead of IN_MOVED_FROM in one of the two blocks.

   Signed-off-by: Raphaël Beamonte <raphael.beamonte@gmail.com>

diff --git a/inotify/adapters.py b/inotify/adapters.py
index 7f3f708..e8301da 100644
--- a/inotify/adapters.py
+++ b/inotify/adapters.py
@@ -299,7 +299,7 @@ class _BaseTree(object):

                 self._i.add_watch(full_path, self._mask)

-             if header.mask & inotify.constants.IN_MOVED_FROM:
+             if header.mask & inotify.constants.IN_DELETE:
                 _LOGGER.debug("A directory has been removed. We're "
                               "being recursive, but it would have "
                               "automatically been deregistered: [%s]",



What's the impact to users of not having this fix?
It seems like a bug fix that we should pick up by backport of
user _git and HEAD.

I will submit another patch for this…because I am worried about if some commit in between will produce further bugs.
This package seems like have very limited support right now.



--
# Randy MacLeod
# Wind River Linux



[-- Attachment #2: Type: text/html, Size: 5290 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-11-25 22:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-25 17:10 [master][PATCH] python3-inotify: add ptest Zheng Qiu
2022-11-25 19:02 ` [master][PATCH] python3-inotify: add ptest -> v2 please Randy MacLeod
2022-11-25 19:55   ` Qiu, Zheng
2022-11-25 21:43     ` Randy MacLeod
2022-11-25 22:28       ` Qiu, Zheng

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.