[Piglit] [PATCH 0/5] Python 3 port, again
Dylan Baker
baker.dylan.c at gmail.com
Thu Jul 16 15:53:15 PDT 2015
On Thu, Jul 09, 2015 at 02:25:40PM -0700, Dylan Baker wrote:
> This series ports the python framework to python 3. This is an updated
> version of the previous incarnations of this series, rebased on master.
>
> So what does python3 buy us?
> First, it buys us new features, and new features in the future. Python
> 2.x is in maintenance mode, so no new features. Features that this
> series takes advantage of:
> - builtin xz support. Everyone gets xz, no modules required, no xz
> binary required, it "just works"
> - subprocess timeouts. Finally, a reliable, cross platform method for
> allowing tests to time out
> - 'raise from' gives better error reporting
> - no argument super(), which is, admittedly probably not very
> interesting to most people, but it's awesome to me.
>
> I have an additional series that can land after these land that take
> advantage of these features:
> - a new spinner-less, lock-less Log class. With timeouts we don't need to
> worry about tests running forever, they'll be killed automatically.
> This allows us to simplify the Log class significantly, and since
> it's now lock-less we don't spend time in lock contention.
>
>
> But there are still users that don't have the option of python 3!
> Here's my idea for handling this:
> Before I push python3 to master, I'll create a new branch,
> python2-master. The idea would be that any non framework change could be
> cherry picked over to this branch as long as there are uses that need
> it, and they will work. Obviously any framework changes that are needed
> to make this work will get backported.
>
> This is available at my github:
> https://github.com/dcbaker/piglit submit/python3
>
> Dylan Baker (5):
> framework: Port framework to python3
> framework: Improve test timeouts
> framework/test: allow tests to set per instance timeouts from
> initializer
> framework: Simplify super calls as python3 allows
> framework: make exception reporting better using `raise from`
>
> CMakeLists.txt | 2 +-
> framework/backends/__init__.py | 2 +-
> framework/backends/abstract.py | 11 +-
> framework/backends/compression.py | 103 ++---------------
> framework/backends/json.py | 15 ++-
> framework/backends/junit.py | 14 +--
> framework/core.py | 20 ++--
> framework/dmesg.py | 8 +-
> framework/grouptools.py | 2 +-
> framework/log.py | 17 ++-
> framework/profile.py | 32 +++---
> framework/programs/run.py | 10 +-
> framework/programs/summary.py | 3 +-
> framework/results.py | 3 +-
> framework/status.py | 24 ++--
> framework/summary.py | 17 ++-
> framework/test/__init__.py | 2 +-
> framework/test/base.py | 160 +++++++--------------------
> framework/test/deqp.py | 6 +-
> framework/test/gleantest.py | 12 +-
> framework/test/glsl_parser_test.py | 7 +-
> framework/test/gtest.py | 2 +-
> framework/test/oclconform.py | 2 +-
> framework/test/opencv.py | 2 +-
> framework/test/piglit_test.py | 24 ++--
> framework/test/shader_test.py | 3 +-
> framework/tests/backends_tests.py | 4 +-
> framework/tests/base_tests.py | 23 +++-
> framework/tests/core_tests.py | 10 +-
> framework/tests/deqp_tests.py | 2 +-
> framework/tests/dmesg_tests.py | 16 +--
> framework/tests/gleantest_tests.py | 2 +-
> framework/tests/glsl_parser_test_tests.py | 8 +-
> framework/tests/grouptools_tests.py | 2 -
> framework/tests/gtest_tests.py | 2 +-
> framework/tests/integration_tests.py | 2 +-
> framework/tests/json_backend_tests.py | 5 +-
> framework/tests/json_results_update_tests.py | 7 +-
> framework/tests/json_tests.py | 4 +-
> framework/tests/junit_backends_tests.py | 15 ++-
> framework/tests/log_tests.py | 4 +-
> framework/tests/opencv_tests.py | 2 +-
> framework/tests/piglit_test_tests.py | 2 +-
> framework/tests/profile_tests.py | 1 -
> framework/tests/results_tests.py | 1 -
> framework/tests/run_parser_tests.py | 2 +-
> framework/tests/shader_test_tests.py | 2 +-
> framework/tests/status_tests.py | 4 +-
> framework/tests/summary_tests.py | 3 +-
> framework/tests/test_lists.py | 2 +-
> framework/tests/utils.py | 22 ++--
> piglit | 4 +-
> piglit-print-commands.py | 4 +-
> piglit-resume.py | 2 +-
> piglit-run.py | 2 +-
> piglit-summary-html.py | 2 +-
> piglit-summary.py | 2 +-
> templates/index.mako | 2 +-
> templates/testrun_info.mako | 4 +-
> tests/all.py | 9 +-
> tests/cl.py | 2 +-
> tests/deqp_gles3.py | 2 +-
> tests/es3conform.py | 6 +-
> tests/igt.py | 6 +-
> tests/oglconform.py | 4 +-
> tests/quick.py | 1 +
> tests/xts.py | 5 +-
> 67 files changed, 276 insertions(+), 431 deletions(-)
>
> --
> 2.4.5
>
bump
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20150716/3d39186c/attachment.sig>
More information about the Piglit
mailing list