ionelmc / python-lazy-object-proxy

A fast and thorough lazy object proxy.
BSD 2-Clause "Simplified" License
247 stars 36 forks source link

1.5.0: test suite is failing #39

Closed kloczek closed 2 years ago

kloczek commented 4 years ago
+ tox --skip-missing-interpreters
GLOB sdist-make: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/setup.py
clean create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/clean
clean installdeps: coverage
clean installed: coverage==5.1
clean run-test-pre: PYTHONHASHSEED='381962429'
clean run-test: commands[0] | coverage erase
check create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/check
check installdeps: docutils, flake8, readme-renderer, pygments, isort
check installed: bleach==3.1.5,docutils==0.16,flake8==3.8.2,isort==4.3.21,mccabe==0.6.1,packaging==20.4,pycodestyle==2.6.0,pyflakes==2.2.0,Pygments==2.6.1,pyparsing==2.4.7,readme-renderer==26.0,six==1.15.0,webencodings==0.5.1
check run-test-pre: PYTHONHASHSEED='381962429'
check run-test: commands[0] | python setup.py check --strict --metadata --restructuredtext
running check
warning: Check: This command has been deprecated. Use `twine check` instead: https://packaging.python.org/guides/making-a-pypi-friendly-readme#validating-restructuredtext-markup

The project's long description is valid RST.
check run-test: commands[1] | flake8 src tests setup.py
check run-test: commands[2] | isort --verbose --check-only --diff --recursive src tests setup.py

/#######################################################################\

     `sMMy`
     .yyyy-                                                      `
    ##soos##                                                    ./o.
          `     ``..-..`         ``...`.``         `   ```` ``-ssso```
     .s:-y-   .+osssssso/.     ./ossss+:so+:`    :+o-`/osso:+sssssssso/
     .s::y-   osss+.``.``     -ssss+-.`-ossso`   ssssso/::..::+ssss:::.
     .s::y-   /ssss+//:-.`   `ssss+     `ssss+   sssso`       :ssss`
     .s::y-   `-/+oossssso/  `ssss/      sssso   ssss/        :ssss`
     .y-/y-       ````:ssss`  ossso.    :ssss:   ssss/        :ssss.
     `/so:`    `-//::/osss+   `+ssss+-/ossso:    /sso-        `osssso/.
       \/      `-/oooo++/-      .:/++:/++/-`      ..           `://++/.

         isort your Python imports for you so you don't have to

                            VERSION 4.3.21

\########################################################################/

from-type place_module for .utils returned LOCALFOLDER
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/__init__.py Everything Looks Good!
else-type place_module for sys returned STDLIB
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/compat.py Everything Looks Good!
else-type place_module for operator returned STDLIB
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .utils returned LOCALFOLDER
from-type place_module for .utils returned LOCALFOLDER
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/simple.py Everything Looks Good!
else-type place_module for operator returned STDLIB
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .compat returned LOCALFOLDER
from-type place_module for .utils returned LOCALFOLDER
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/slots.py Everything Looks Good!
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/utils.py Everything Looks Good!
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src/lazy_object_proxy/_version.py Everything Looks Good!
else-type place_module for sys returned STDLIB
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/tests/compat.py Everything Looks Good!
from-type place_module for __future__ returned FUTURE
else-type place_module for gc returned STDLIB
else-type place_module for imp returned STDLIB
else-type place_module for os returned STDLIB
else-type place_module for pickle returned STDLIB
else-type place_module for platform returned STDLIB
else-type place_module for sys returned STDLIB
else-type place_module for weakref returned STDLIB
from-type place_module for datetime returned STDLIB
from-type place_module for datetime returned STDLIB
from-type place_module for decimal returned STDLIB
from-type place_module for functools returned STDLIB
else-type place_module for pytest returned THIRDPARTY
from-type place_module for compat returned THIRDPARTY
from-type place_module for compat returned THIRDPARTY
from-type place_module for compat returned THIRDPARTY
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/tests/test_lazy_object_proxy.py Everything Looks Good!
from-type place_module for __future__ returned FUTURE
from-type place_module for __future__ returned FUTURE
else-type place_module for io returned STDLIB
else-type place_module for os returned STDLIB
else-type place_module for platform returned STDLIB
else-type place_module for re returned STDLIB
from-type place_module for glob returned STDLIB
from-type place_module for os.path returned STDLIB
from-type place_module for os.path returned STDLIB
from-type place_module for os.path returned STDLIB
from-type place_module for os.path returned STDLIB
from-type place_module for os.path returned STDLIB
from-type place_module for setuptools returned THIRDPARTY
from-type place_module for setuptools returned THIRDPARTY
from-type place_module for setuptools returned THIRDPARTY
from-type place_module for setuptools.command.build_ext returned THIRDPARTY
SUCCESS: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/setup.py Everything Looks Good!
docs create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/docs
SKIPPED: InterpreterNotFound: python3.6
py27-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py27-cover
SKIPPED: InterpreterNotFound: python2.7
py27-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py27-nocov
SKIPPED: InterpreterNotFound: python2.7
py35-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py35-cover
SKIPPED: InterpreterNotFound: python3.5
py35-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py35-nocov
SKIPPED: InterpreterNotFound: python3.5
py36-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py36-cover
SKIPPED: InterpreterNotFound: python3.6
py36-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py36-nocov
SKIPPED: InterpreterNotFound: python3.6
py37-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py37-cover
SKIPPED: InterpreterNotFound: python3.7
py37-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py37-nocov
SKIPPED: InterpreterNotFound: python3.7
py38-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-cover
py38-cover installdeps: pytest, pytest-benchmark, pytest-travis-fold, Django, objproxies==0.9.4, pytest-cov
py38-cover develop-inst: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0
py38-cover installed: asgiref==3.2.7,attrs==19.3.0,coverage==5.1,Django==3.0.7,# Editable install with no version control (lazy-object-proxy==1.5.0),-e /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/src,more-itertools==8.3.0,objproxies==0.9.4,packaging==20.4,pluggy==0.13.1,py==1.8.1,py-cpuinfo==5.0.0,pyparsing==2.4.7,pytest==5.4.3,pytest-benchmark==3.2.3,pytest-cov==2.9.0,pytest-travis-fold==1.3.0,pytz==2020.1,six==1.15.0,sqlparse==0.3.1,wcwidth==0.2.3
py38-cover run-test-pre: PYTHONHASHSEED='381962429'
py38-cover run-test: commands[0] | python setup.py clean --all build_ext --force --inplace
running clean
removing 'build/temp.linux-x86_64-3.8' (and everything under it)
removing 'build/lib.linux-x86_64-3.8' (and everything under it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.8' does not exist -- can't clean it
removing 'build'
running build_ext
building 'lazy_object_proxy.cext' extension
creating build
creating build/temp.linux-x86_64-3.8
creating build/temp.linux-x86_64-3.8/src
creating build/temp.linux-x86_64-3.8/src/lazy_object_proxy
gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -flto=auto -flto-partition=none -D_GNU_SOURCE -fPIC -fwrapv -ffat-lto-objects -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -flto=auto -flto-partition=none -D_GNU_SOURCE -fPIC -fwrapv -ffat-lto-objects -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -flto=auto -flto-partition=none -D_GNU_SOURCE -fPIC -fwrapv -ffat-lto-objects -fPIC -Isrc/lazy_object_proxy -I/usr/include/python3.8 -c src/lazy_object_proxy/cext.c -o build/temp.linux-x86_64-3.8/src/lazy_object_proxy/cext.o
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/lazy_object_proxy
gcc -pthread -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin build/temp.linux-x86_64-3.8/src/lazy_object_proxy/cext.o -L/usr/lib64 -o build/lib.linux-x86_64-3.8/lazy_object_proxy/cext.cpython-38-x86_64-linux-gnu.so
copying build/lib.linux-x86_64-3.8/lazy_object_proxy/cext.cpython-38-x86_64-linux-gnu.so -> src/lazy_object_proxy
py38-cover run-test: commands[1] | pytest --cov --cov-report=term-missing -vv
========================================================================================= test session starts ==========================================================================================
platform linux -- Python 3.8.3, pytest-5.4.3, py-1.8.1, pluggy-0.13.1 -- /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-cover/bin/python
cachedir: .tox/py38-cover/.pytest_cache
benchmark: 3.2.3 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
rootdir: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0, inifile: setup.cfg
plugins: benchmark-3.2.3, travis-fold-1.3.0, cov-2.9.0
collected 1503 items

tests/test_lazy_object_proxy.py::test_round[subclassed-slots] PASSED                                                                                                                             [  0%]
tests/test_lazy_object_proxy.py::test_attributes[subclassed-slots] PASSED                                                                                                                        [  0%]
tests/test_lazy_object_proxy.py::test_get_wrapped[subclassed-slots] PASSED                                                                                                                       [  0%]
tests/test_lazy_object_proxy.py::test_set_wrapped[subclassed-slots] PASSED                                                                                                                       [  0%]
tests/test_lazy_object_proxy.py::test_wrapped_attribute[subclassed-slots] PASSED                                                                                                                 [  0%]
tests/test_lazy_object_proxy.py::test_class_object_name[subclassed-slots] PASSED                                                                                                                 [  0%]

[..]

tests/test_lazy_object_proxy.py::test_perf[slots] PASSED                                                                                                                                         [ 99%]
tests/test_lazy_object_proxy.py::test_perf[cext] PASSED                                                                                                                                          [ 99%]
tests/test_lazy_object_proxy.py::test_perf[simple] PASSED                                                                                                                                        [ 99%]
tests/test_lazy_object_proxy.py::test_perf[django] PASSED                                                                                                                                        [ 99%]
tests/test_lazy_object_proxy.py::test_perf[objproxies] PASSED                                                                                                                                    [ 99%]
tests/test_lazy_object_proxy.py::test_proto[SimpleProxy] PASSED                                                                                                                                  [ 99%]
tests/test_lazy_object_proxy.py::test_proto[LocalsSimpleProxy] PASSED                                                                                                                            [ 99%]
tests/test_lazy_object_proxy.py::test_proto[CachedPropertyProxy] PASSED                                                                                                                          [ 99%]
tests/test_lazy_object_proxy.py::test_proto[LocalsCachedPropertyProxy] PASSED                                                                                                                    [100%]

=========================================================================================== warnings summary ===========================================================================================
tests/test_lazy_object_proxy.py:4
  /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/tests/test_lazy_object_proxy.py:4: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
    import imp

-- Docs: https://docs.pytest.org/en/latest/warnings.html

----------- coverage: platform linux, python 3.8.3-final-0 -----------
Name                                Stmts   Miss Branch BrPart     Cover   Missing
----------------------------------------------------------------------------------
src/lazy_object_proxy/__init__.py      17      4      0      0    76.47%   13-14, 20-21
src/lazy_object_proxy/_version.py       1      0      0      0   100.00%
src/lazy_object_proxy/compat.py         8      1      2      1    80.00%   6->9, 9
src/lazy_object_proxy/simple.py       172      9     22      4    93.30%   34, 42, 51, 88->91, 117->120, 173, 225->226, 226, 238->239, 239-241, 255
src/lazy_object_proxy/slots.py        269     20     16      3    91.93%   26, 34, 50, 113, 121, 125, 129, 137->141, 170->174, 196, 229, 271, 316-317, 370->371, 371-372, 378, 381, 402, 405, 408, 423
src/lazy_object_proxy/utils.py         10      0      2      0   100.00%
tests/compat.py                        18     11      8      1    30.77%   6->12, 12-24
tests/test_lazy_object_proxy.py      1200     33    455     28    96.19%   49-53, 56->59, 59, 110, 119, 132, 140->143, 151->154, 155, 163->exit, 169, 205-206, 268-269, 310->exit, 321->exit, 852->853, 853, 879, 888, 952->953, 953, 1042->1043, 1043-1044, 1476->exit, 1500, 1521, 1526->exit, 1547, 1549->exit, 1558, 1567-1568, 1586->exit, 1593->exit, 1600->exit, 1606->exit, 1613->exit, 1619->exit, 1625->exit, 1640->exit, 1675->1676, 1676-1678, 1839->exit, 1859->1860, 1860, 1871, 1884->1885, 1885, 1889->exit, 1896, 1907->exit, 1924->exit, 1944->exit
----------------------------------------------------------------------------------
TOTAL                                1695     78    505     37    94.41%

----------------------------------------------------------------------------------------------- benchmark: 5 tests ----------------------------------------------------------------------------------------------
Name (time in ns)              Min                       Max                  Mean                StdDev                Median                IQR            Outliers  OPS (Kops/s)            Rounds  Iterations
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
test_perf[cext]           125.8100 (1.0)          8,383.9300 (1.0)        132.7343 (1.0)         34.7414 (1.0)        128.9102 (1.0)       2.0908 (1.0)    1412;16472    7,533.8453 (1.0)       68744         100
test_perf[simple]         686.0355 (5.45)        17,396.0580 (2.07)       783.1230 (5.90)       283.5283 (8.16)       766.0128 (5.94)     44.0050 (21.05)    166;2035    1,276.9387 (0.17)     136351           1
test_perf[slots]          771.0187 (6.13)        22,081.0762 (2.63)       867.5089 (6.54)       369.9719 (10.65)      847.0379 (6.57)     36.0887 (17.26)    134;3739    1,152.7259 (0.15)      89994           1
test_perf[django]         784.0572 (6.23)        24,321.9547 (2.90)       889.1169 (6.70)       337.3535 (9.71)       867.9926 (6.73)     35.9723 (17.20)    253;8648    1,124.7115 (0.15)     181983           1
test_perf[objproxies]     971.9515 (7.73)     1,061,113.0856 (126.57)   1,095.5761 (8.25)     3,159.2123 (90.94)    1,061.0092 (8.23)     49.9422 (23.89)    191;2644      912.7618 (0.12)     114379           1
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------- benchmark 'prototypes': 4 tests --------------------------------------------------------------------------------------------
Name (time in ns)                              Min                    Max                Mean              StdDev              Median                IQR            Outliers  OPS (Mops/s)            Rounds  Iterations
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
test_proto[SimpleProxy]                   429.6482 (1.0)      56,862.1967 (3.30)     454.2737 (1.0)      193.3603 (1.01)     443.0010 (1.0)       7.7474 (1.70)   1289;18257        2.2013 (1.0)       94769          20
test_proto[LocalsSimpleProxy]             433.6005 (1.01)     57,108.3510 (3.32)     463.6487 (1.02)     191.1622 (1.0)      449.6484 (1.02)      4.5577 (1.0)    1355;23355        2.1568 (0.98)      98961          20
test_proto[CachedPropertyProxy]           556.9309 (1.30)     17,220.9693 (1.0)      654.9313 (1.44)     303.5365 (1.59)     643.0782 (1.45)     44.9363 (9.86)     180;2066        1.5269 (0.69)     159032           1
test_proto[LocalsCachedPropertyProxy]     563.9158 (1.31)     26,426.0452 (1.53)     659.9089 (1.45)     314.0606 (1.64)     647.9677 (1.46)     40.0469 (8.79)     184;3021        1.5154 (0.69)     172237           1
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Legend:
  Outliers: 1 Standard Deviation from Mean; 1.5 IQR (InterQuartile Range) from 1st Quartile and 3rd Quartile.
  OPS: Operations Per Second, computed as 1 / Mean
======================================================================================= short test summary info ========================================================================================
SKIPPED [324] /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/tests/test_lazy_object_proxy.py:1778: could not import 'cPickle': No module named 'cPickle'
SKIPPED [2] /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/tests/test_lazy_object_proxy.py:1931: Not possible.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_class[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_function[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
================================================================ 1099 passed, 326 skipped, 36 xfailed, 42 xpassed, 1 warning in 21.78s =================================================================
py38-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov
py38-nocov installdeps: pytest, pytest-benchmark, pytest-travis-fold, Django, objproxies==0.9.4
py38-nocov inst: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/.tmp/package/1/lazy-object-proxy-1.5.0.zip
ERROR: invocation failed (exit code 1), logfile: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/log/py38-nocov-2.log
============================================================================================== log start ===============================================================================================
Processing ./.tox/.tmp/package/1/lazy-object-proxy-1.5.0.zip
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/bin/python /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpidl4ddpg
       cwd: /tmp/pip-req-build-x2_go7hd
  Complete output (20 lines):
  Traceback (most recent call last):
    File "/home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 257, in <module>
      main()
    File "/home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 240, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 91, in get_requires_for_build_wheel
      return hook(config_settings)
    File "/tmp/pip-build-env-qlv4qu28/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 147, in get_requires_for_build_wheel
      return self._get_build_requires(
    File "/tmp/pip-build-env-qlv4qu28/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 128, in _get_build_requires
      self.run_setup()
    File "/tmp/pip-build-env-qlv4qu28/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 249, in run_setup
      super(_BuildMetaLegacyBackend,
    File "/tmp/pip-build-env-qlv4qu28/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 143, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 77, in <module>
      re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst'))
    File "setup.py", line 24, in read
      with io.open(
  FileNotFoundError: [Errno 2] No such file or directory: 'CHANGELOG.rst'
  ----------------------------------------
ERROR: Command errored out with exit status 1: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/bin/python /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpidl4ddpg Check the logs for full command output.
WARNING: You are using pip version 19.3.1; however, version 20.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

=============================================================================================== log end ================================================================================================
pypy-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/pypy-cover
SKIPPED: InterpreterNotFound: pypy
pypy-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/pypy-nocov
SKIPPED: InterpreterNotFound: pypy
pypy3-cover create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/pypy3-cover
SKIPPED: InterpreterNotFound: pypy3
pypy3-nocov create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/pypy3-nocov
SKIPPED: InterpreterNotFound: pypy3
report create: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/report
report installdeps: coverage
report installed: coverage==5.1
report run-test-pre: PYTHONHASHSEED='381962429'
report run-test: commands[0] | coverage report
Name                                Stmts   Miss Branch BrPart     Cover   Missing
----------------------------------------------------------------------------------
src/lazy_object_proxy/__init__.py      17      4      0      0    76.47%   13-14, 20-21
src/lazy_object_proxy/_version.py       1      0      0      0   100.00%
src/lazy_object_proxy/compat.py         8      1      2      1    80.00%   6->9, 9
src/lazy_object_proxy/simple.py       172      9     22      4    93.30%   34, 42, 51, 88->91, 117->120, 173, 225->226, 226, 238->239, 239-241, 255
src/lazy_object_proxy/slots.py        269     20     16      3    91.93%   26, 34, 50, 113, 121, 125, 129, 137->141, 170->174, 196, 229, 271, 316-317, 370->371, 371-372, 378, 381, 402, 405, 408, 423
src/lazy_object_proxy/utils.py         10      0      2      0   100.00%
tests/compat.py                        18     11      8      1    30.77%   6->12, 12-24
tests/test_lazy_object_proxy.py      1200     33    455     28    96.19%   49-53, 56->59, 59, 110, 119, 132, 140->143, 151->154, 155, 163->exit, 169, 205-206, 268-269, 310->exit, 321->exit, 852->853, 853, 879, 888, 952->953, 953, 1042->1043, 1043-1044, 1476->exit, 1500, 1521, 1526->exit, 1547, 1549->exit, 1558, 1567-1568, 1586->exit, 1593->exit, 1600->exit, 1606->exit, 1613->exit, 1619->exit, 1625->exit, 1640->exit, 1675->1676, 1676-1678, 1839->exit, 1859->1860, 1860, 1871, 1884->1885, 1885, 1889->exit, 1896, 1907->exit, 1924->exit, 1944->exit
----------------------------------------------------------------------------------
TOTAL                                1695     78    505     37    94.41%
report run-test: commands[1] | coverage html
_______________________________________________________________________________________________ summary ________________________________________________________________________________________________
  clean: commands succeeded
  check: commands succeeded
SKIPPED:  docs: InterpreterNotFound: python3.6
SKIPPED:  py27-cover: InterpreterNotFound: python2.7
SKIPPED:  py27-nocov: InterpreterNotFound: python2.7
SKIPPED:  py35-cover: InterpreterNotFound: python3.5
SKIPPED:  py35-nocov: InterpreterNotFound: python3.5
SKIPPED:  py36-cover: InterpreterNotFound: python3.6
SKIPPED:  py36-nocov: InterpreterNotFound: python3.6
SKIPPED:  py37-cover: InterpreterNotFound: python3.7
SKIPPED:  py37-nocov: InterpreterNotFound: python3.7
  py38-cover: commands succeeded
ERROR:   py38-nocov: InvocationError for command /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.5.0/.tox/py38-nocov/bin/python -m pip install --exists-action w .tox/.tmp/package/1/lazy-object-proxy-1.5.0.zip (exited with code 1)
SKIPPED:  pypy-cover: InterpreterNotFound: pypy
SKIPPED:  pypy-nocov: InterpreterNotFound: pypy
SKIPPED:  pypy3-cover: InterpreterNotFound: pypy3
SKIPPED:  pypy3-nocov: InterpreterNotFound: pypy3
  report: commands succeeded
ionelmc commented 4 years ago

That should not happen. Are you stripping the repository of any files like setup.cfg or pyproject.toml? What versions of pip/virtualenv/tox are available in the build env?

kloczek commented 4 years ago

I've been using git tag autogenerated tar ball from https://github.com/ionelmc/python-lazy-object-proxy/archive/v1.5.0.tar.gz

ionelmc commented 4 years ago

Ok what about the versions in the build env?

kloczek commented 4 years ago

Ok what about the versions in the build env?

All modules versions are reported by tox :) Look on top of what copied from test suite output :P

ionelmc commented 4 years ago

I don't see anywhere the 2 pip versions (one outside, one inside the tox env). I suspect that somewhere around that lies the problem (sdist being built without setuptools-scm, thus sdist lacks the manifest.in generated by setuptools-scm, thus changelog.rst is missing; or the checkout doesn't have a .git dir)

I think that last one might actually be the problem. Use the sdist from pypi not a tag from github - that's not how users install it.

kloczek commented 4 years ago
[root@barrel ~]# pip -V
pip 20.0.2 from /usr/lib/python3.8/site-packages/pip (python 3.8)

OK if it is that kind of problem from which you would suggest to start checking/diagnosing that issue? :P

ionelmc commented 4 years ago

Use the sdist from pypi. Pretty sure that will fix the problem.

kloczek commented 3 years ago

OK after add missing modules I'm able now execute pytest without errors. However there are some numbers of warnings. I'm not 100% are those warnings ok so better is to ask :)

+ PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-lazy-object-proxy-1.6.0-4.fc35.x86_64/usr/lib64/python3.8/site-packages:/home/tkloczko/rpmbuild/BUILDROOT/python-lazy-object-proxy-1.6.0-4.fc35.x86_64/usr/lib/python3.8/site-packages
+ /usr/bin/pytest -ra
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.11, pytest-6.2.4, py-1.10.0, pluggy-0.13.1
benchmark: 3.4.1 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
Using --randomly-seed=1845807367
rootdir: /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.6.0, configfile: setup.cfg, testpaths: tests
plugins: forked-1.3.0, shutil-1.7.0, virtualenv-1.7.0, expect-1.1.0, flake8-1.0.7, timeout-1.4.2, betamax-0.8.1, freezegun-0.4.2, aspectlib-1.5.2, toolbox-0.5, rerunfailures-9.1.1, requests-mock-1.9.3, cov-2.12.1, pyfakefs-4.5.0, flaky-3.7.0, benchmark-3.4.1, xdist-2.3.0, pylama-7.7.1, datadir-1.3.1, regressions-2.2.0, cases-3.6.3, xprocess-0.18.1, black-0.3.12, checkdocs-2.7.1, anyio-3.3.0, Faker-8.11.0, asyncio-0.15.1, trio-0.7.0, httpbin-1.0.0, subtests-0.5.0, isort-2.0.0, hypothesis-6.14.6, mock-3.6.1, profiling-1.7.0, randomly-3.8.0
collected 1983 items

tests/test_async_py3.py .............................................................................                                                                [  3%]
tests/test_lazy_object_proxy.py ...s.ss..s.s.xsss..ssx.x..s......s.s..s..ss.....s...s...........x.ss..s..........xX...ss....ss.s..ss......X..sss..............X...s. [ 10%]
........s..s......s...s.....s...........x..............ss..X.s...ss.s.Xs............s.sX..s.ss....ss.....s..s...x.....s...........sx...s...s..s...x.s....s....s..... [ 18%]
.ssss.s.....ss.xs..s.......s..........ss..s....X.........X.s..s...ss.s.x.s...sXxs....s......x.ss....s......s....s.s.........xsss.ss..sss.s......sxs......sx...s..... [ 27%]
......x....s.......s..s......s......s....s.s                                                                                                                         [ 29%]
tests/test_async_py3.py ............................................................................................................................................ [ 36%]
...........................................................................................                                                                          [ 40%]
tests/test_lazy_object_proxy.py ...s......ss.ss..ss..ss..s......s....s...Xs.ss.......s.s...s.s.s..x.s.......x....s....s..........s..s....X....ss....ss..ss.s..s.sX.. [ 47%]
s.Xs..sXs..s............s....s...s............s..X..Xss.......ss..........s...sx....s.....s....X.........s.s..s.....xX..                                             [ 53%]
tests/test_async_py3.py ............................................................................................................................................ [ 60%]
..............                                                                                                                                                       [ 61%]
tests/test_lazy_object_proxy.py xs....s.....s...X..s.....x....s.s.s..s........s..s....s.s...X................sssxs.....ss....................sss.................ss. [ 68%]
...s...Xs.....s..s..s..X.s.........Xsss..s......sss..s..X.....s...s...s....s....sXs....sXsss.ss..x.s.s.....s....s.X.s....s........ssXsx...s............Xs...s.X..... [ 76%]
s........s....X....sx......s..s............s.ss......s......sx....s..sX....s...s....s...s..............s....ss....s.X.ss.ss.s....s....s.s.s.s....s.......ss.s.s..... [ 84%]
s.ss..XsX........s..s.s...ss.s.xs..ss..X...................x.sX.....x..s..Xs......s...s..x...s..s..s....ss..s.....s........s.ss.s.s.xs..X.............s......ss...s. [ 92%]
s....ss.s.s.......x...s...............ss.........s...X.x.s...ss.sX..ss...s.....s.s..s........s....s....ss.s..s..s.X.s......s..ss.s.....sx....                        [100%]

============================================================================= warnings summary =============================================================================
tests/test_async_py3.py::test_func_11[normal-cext]
tests/test_async_py3.py::test_func_11[subclassed-cext]
tests/test_async_py3.py::test_func_11[normal-slots]
tests/test_async_py3.py::test_func_11[normal-simple]
tests/test_async_py3.py::test_func_11[subclassed-slots]
tests/test_async_py3.py::test_func_11[subclassed-simple]
  /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.6.0/tests/test_async_py3.py:259: RuntimeWarning: coroutine 'do_await' was never awaited
    assert '__iter__' in dir(coro.__await__())

tests/test_async_py3.py::test_func_11[normal-cext]
tests/test_async_py3.py::test_func_11[subclassed-cext]
tests/test_async_py3.py::test_func_11[normal-slots]
tests/test_async_py3.py::test_func_11[normal-simple]
tests/test_async_py3.py::test_func_11[subclassed-slots]
tests/test_async_py3.py::test_func_11[subclassed-simple]
  /home/tkloczko/rpmbuild/BUILD/python-lazy-object-proxy-1.6.0/tests/test_async_py3.py:260: RuntimeWarning: coroutine 'do_await' was never awaited
    assert 'coroutine_wrapper' in str(coro.__await__())

-- Docs: https://docs.pytest.org/en/stable/warnings.html

------------------------------------------------------------------------------------------ benchmark: 5 tests ------------------------------------------------------------------------------------------
Name (time in ns)              Min                    Max                Mean              StdDev              Median                IQR            Outliers  OPS (Mops/s)            Rounds  Iterations
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
test_perf[cext]           122.5344 (1.0)         960.4664 (1.0)      137.2509 (1.0)       32.7717 (1.0)      135.0927 (1.0)      12.7475 (1.0)     2687;5639        7.2859 (1.0)      195160          32
test_perf[simple]         623.9861 (5.09)     17,421.0873 (18.14)    765.3924 (5.58)     374.1035 (11.42)    740.0522 (5.48)     47.9631 (3.76)    237;11718        1.3065 (0.18)     154610           1
test_perf[slots]          681.0296 (5.56)     20,116.9169 (20.94)    772.7548 (5.63)     302.5033 (9.23)     764.0338 (5.66)     76.9505 (6.04)     158;1312        1.2941 (0.18)     120237           1
test_perf[django]         710.0170 (5.79)     43,993.0009 (45.80)    879.9933 (6.41)     549.5324 (16.77)    808.9701 (5.99)     77.0669 (6.05)   4429;10471        1.1364 (0.16)     138695           1
test_perf[objproxies]     864.9658 (7.06)     20,566.9785 (21.41)    997.7749 (7.27)     505.7010 (15.43)    974.0470 (7.21)     93.0158 (7.30)     636;2958        1.0022 (0.14)     120642           1
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------- benchmark 'prototypes': 4 tests --------------------------------------------------------------------------------------------
Name (time in ns)                              Min                    Max                Mean              StdDev              Median                IQR             Outliers  OPS (Mops/s)            Rounds  Iterations
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
test_proto[SimpleProxy]                   416.7960 (1.0)       2,471.9979 (1.0)      482.7428 (1.0)      102.3841 (1.0)      459.6019 (1.0)      36.1062 (1.0)      2012;3627        2.0715 (1.0)       95202          20
test_proto[LocalsCachedPropertyProxy]     483.0072 (1.16)     20,007.0208 (8.09)     553.7004 (1.15)     222.3472 (2.17)     546.1043 (1.19)     54.1331 (1.50)      188;2909        1.8060 (0.87)     179114           1
test_proto[CachedPropertyProxy]           488.0130 (1.17)     17,268.9324 (6.99)     564.7306 (1.17)     299.6552 (2.93)     552.9728 (1.20)     55.0644 (1.53)      169;4368        1.7708 (0.85)     175779           1
test_proto[LocalsSimpleProxy]             567.9904 (1.36)     19,953.0041 (8.07)     639.2256 (1.32)     308.7121 (3.02)     622.9384 (1.36)     64.0284 (1.77)      132;3174        1.5644 (0.76)     110633           1
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Legend:
  Outliers: 1 Standard Deviation from Mean; 1.5 IQR (InterQuartile Range) from 1st Quartile and 3rd Quartile.
  OPS: Operations Per Second, computed as 1 / Mean
========================================================================= short test summary info ==========================================================================
SKIPPED [324] tests/test_lazy_object_proxy.py:1713: could not import 'cPickle': No module named 'cPickle'
SKIPPED [2] tests/test_lazy_object_proxy.py:1867: Not possible.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_function[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_class[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-cext]
  This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-slots]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[normal-cext]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_is_callable[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_getattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_proxy_hasattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_callable_proxy_getattr_call[subclassed-simple]
  Don't know how to make this work. This tests the existence of the __call__ method.
XFAIL tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-simple]
  The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[subclassed-slots] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-slots] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_function[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_instance[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_vars_of_class[normal-cext] The lazy_object_proxy.simple.Proxy has some limitations.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[normal-cext] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_class_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_instance_module_name[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
XPASS tests/test_lazy_object_proxy.py::test_function_doc_string[subclassed-simple] This test can't work because subclassing disables certain features like __doc__ and __module__ proxying.
================================================= 1579 passed, 326 skipped, 36 xfailed, 42 xpassed, 12 warnings in 18.79s ==================================================
pytest-xprocess reminder::Be sure to terminate the started process by running 'pytest --xkill' if you have not explicitly done so in your fixture with 'xprocess.getinfo(<process_name>).terminate()'.

Feel free to close this thiocket if that output is OK.

Thank you for your help :)

ionelmc commented 3 years ago

Well I fixed those warnings. What else?

kloczek commented 3 years ago

Thank you. Will test that patch ASP :) I'm using below patch to be able use python-lazy-object-proxy with latest versions of some modules :P

--- a/pyproject.toml
+++ b/pyproject.toml
@@ -2,5 +2,5 @@
 requires = [
     "setuptools>=30.3.0",
     "wheel",
-    "setuptools_scm>=3.3.1,<6.0",
+    "setuptools_scm>=3.3.1",
 ]
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
 [options]
 setup_requires =
-  setuptools_scm>=3.3.1,<6.0
+  setuptools_scm>=3.3.1

 [flake8]
 max-line-length = 140

and I don't see any side effects with that partch :)

kloczek commented 3 years ago

Just checked and except XFAILS messages everything look clean :) I have yet another small thing .. On building my packages I'm building modules documentation as man page. Is it possible to add below patch?

--- a/docs/conf.py~     2021-03-22 15:06:24.000000000 +0000
+++ b/docs/conf.py      2021-08-26 21:57:06.637341728 +0100
@@ -20,7 +20,7 @@
 master_doc = 'index'
 project = 'lazy-object-proxy'
 year = '2014-2021'
-author = 'Ionel Cristian Mărieș'
+author = u'Ionel Cristian Mărieș'
 copyright = '{0}, {1}'.format(year, author)
 try:
     from pkg_resources import get_distribution
@@ -52,3 +52,14 @@
 napoleon_use_ivar = True
 napoleon_use_rtype = False
 napoleon_use_param = False
+
+# Man ------------------------------------------------------------------
+man_pages = [
+    (
+        'index',
+        'python-lazy-object-proxy',
+        u'lazy-object-proxy Python Module Documentation',
+        author,
+        3,
+    )
+]

Feel free to commit it or let me know that if I want to have that in next release of you module I should make PR.

With that patch is possible to have level 3 man page:

+ /usr/bin/python3 setup.py build_sphinx -b man --build-dir build/sphinx
running build_sphinx
Running Sphinx v4.1.2
making output directory... done
[autosummary] generating autosummary for: authors.rst, changelog.rst, contributing.rst, index.rst, installation.rst, readme.rst, usage.rst
building [mo]: targets for 0 po files that are out of date
building [man]: all manpages
updating environment: [new config] 7 added, 0 changed, 0 removed
reading sources... [100%] usage
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
writing... python-lazy-object-proxy.3 { readme installation usage contributing authors changelog } done
build succeeded.
ionelmc commented 2 years ago

I guess this is not longer relevant right?