vmprof / vmprof-python

vmprof - a statistical program profiler
http://vmprof.com
Other
433 stars 54 forks source link

upgrade action cibuild wheel to latest version #250

Closed dand-oss closed 8 months ago

dand-oss commented 1 year ago

upgrade action cibuild wheel to latest version

mattip commented 1 year ago

Travis CI is failing with

=================================== FAILURES ===================================

__________________________ TestNative.test_gzip_call ___________________________

self = <vmprof.test.test_run.TestNative object at 0xffff9a3c86d8>

    @py.test.mark.skipif("PY3K and PPC64LE")

    def test_gzip_call(self):

        p = vmprof.Profiler()

        with p.measure(native=True):

            for i in range(1000):

                self.lib.native_gzipgzipgzip();

        stats = p.get_stats()

        top = stats.get_top(stats.profiles)

        pp = PrettyPrinter()

        pp._print_tree(stats.get_tree())

        def walk(parent):

            if parent is None or len(parent.children) == 0:

                return False

            if 'n:native_gzipgzipgzip:' in parent.name:

                return True

            for child in parent.children.values():

                if 'n:native_gzipgzipgzip:' in child.name:

                    p = float(child.count) / parent.count

                    assert p >= 0.3 # usually bigger than 0.4

                    return True

                else:

                    found = walk(child)

                    if found:

                        return True

        parent = stats.get_tree()

>       assert walk(parent)

E       assert None

E        +  where None = <function TestNative.test_gzip_call.<locals>.walk at 0xffff9a428ae8>(<Node: py:<module>:3:/tmp/tmp.H95Whf0EfE/venv/bin/pytest (19) [(19, py:console_main:181:/tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/config/__init__.py)]>)

vmprof/test/test_run.py:536: AssertionError

---------------------------- Captured stdout setup -----------------------------

generating ./vmprof/test/_test_native_gzip.c

the current directory is '/project'

running build_ext

building 'vmprof.test._test_native_gzip' extension

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -D_CFFI_USE_EMBEDDING=1 -D_PY_TEST=1 -Isrc -I/tmp/tmp.H95Whf0EfE/venv/include -I/opt/python/cp36-cp36m/include/python3.6m -c vmprof/test/_test_native_gzip.c -o ./vmprof/test/_test_native_gzip.o -Werror -g -O0

gcc -pthread -shared ./vmprof/test/_test_native_gzip.o -lz -o ./vmprof/test/_test_native_gzip.cpython-36m-aarch64-linux-gnu.so

----------------------------- Captured stdout call -----------------------------

100.0%  <module>  100.0%  /tmp/tmp.H95Whf0EfE/venv/bin/pytest:3

100.0% |. console_main  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/config/__init__.py:181

100.0% |.|. main  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/config/__init__.py:133

100.0% |.|.|. __call__  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_hooks.py:244

100.0% |.|.|.|. _hookexec  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_manager.py:77

100.0% |.|.|.|.|. _multicall  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_callers.py:9

100.0% |.|.|.|.|.|. pytest_cmdline_main  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/main.py:314

100.0% |.|.|.|.|.|.|. wrap_session  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/main.py:255

100.0% |.|.|.|.|.|.|.|. _main  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/main.py:318

100.0% |.|.|.|.|.|.|.|.|. __call__  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_hooks.py:244

100.0% |.|.|.|.|.|.|.|.|.|. _hookexec  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_manager.py:77

100.0% |.|.|.|.|.|.|.|.|.|.|. _multicall  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_callers.py:9

100.0% |.|.|.|.|.|.|.|.|.|.|.|. pytest_runtestloop  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/main.py:335

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|. __call__  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_hooks.py:244

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|. _hookexec  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_manager.py:77

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|. _multicall  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_callers.py:9

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. pytest_runtest_protocol  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:110

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. runtestprotocol  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:118

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. call_and_report  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:218

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. call_runtest_hook  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:246

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. from_call  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:317

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. <lambda>  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:261

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. __call__  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_hooks.py:244

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. _hookexec  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_manager.py:77

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. _multicall  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_callers.py:9

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. pytest_runtest_call  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/runner.py:159

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. runtest  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/python.py:1716

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. __call__  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_hooks.py:244

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. _hookexec  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_manager.py:77

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. _multicall  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/pluggy/_callers.py:9

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. pytest_pyfunc_call  100.0%  /tmp/tmp.H95Whf0EfE/venv/lib/python3.6/site-packages/_pytest/python.py:185

100.0% |.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|. test_gzip_call  100.0%  /project/vmprof/test/test_run.py:508

=============================== warnings summary ===============================

jitlog/marks.py:103

  /project/jitlog/marks.py:103: DeprecationWarning: invalid escape sequence \(

    TOKEN_REGEX = re.compile("TargetToken\((\d+)\)")

vmprof/test/test_config.py::test_parser_config

vmprof/test/test_config.py::test_parser_arg_precedence

vmprof/test/test_config.py::test_parser_without_section

  /project/vmprof/cli.py:115: DeprecationWarning: This method will be removed in future versions.  Use 'parser.read_file()' instead.

    self.ini_parser.readfp(f)

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

=========================== short test summary info ============================

FAILED vmprof/test/test_run.py::TestNative::test_gzip_call - assert None

============= 1 failed, 36 passed, 2 skipped, 4 warnings in 14.38s =============
dand-oss commented 1 year ago

thanks mattip will look into it my goal is to get newer wheels building figured first step was to get up to latest revs

dand-oss commented 1 year ago

/home/travis/.travis/functions: line 109: cd: vmprof/vmprof-python: No such file or directory

Ok, I changed the commit to simply add a comment line to the yml, nothing else to see if we can get anything to pass CI

but we still have an error - unable to clone vmprof repo into the CI

Should we reduce the clone depth from 50, or any other suggestion to get the vmprof CI working again?

mattip commented 1 year ago

I see other test failures but not unable to clone vmprof repo into the CI.

mattip commented 1 year ago

Removing more from this PR is not going to make those tests pass. They are failing since this project is not well maintained. We need to figure out how to either skip or fix the falling tests. Do tests pass for you locally?

dand-oss commented 1 year ago

Looks like maybe the py.test API changed?

vmprof/test/test_c_symboltable.py:69: in @py.test.mark.skipif("sys.platform == 'win32'") E AttributeError: module 'py' has no attribute 'test'

mattip commented 1 year ago

I think that should be changed, possibly with an added import pytest at the top of the file:

- @py.test.mark.skipif("sys.platform == 'win32'")
+ @pytest.mark.skipif("sys.platform == 'win32'")
mattip commented 8 months ago

Closing. We moved to github actions, so travis is not used