Giter VIP home page Giter VIP logo

Comments (4)

Anthchirp avatar Anthchirp commented on July 26, 2024

image
this now exists. The regression test fails when tests that used to pass on Python 3 no longer do so. Python 2 testing remains in place as a separate build job.

from dxtbx.

jbeilstenedmands avatar jbeilstenedmands commented on July 26, 2024

I think this all sounds good, I like the sound of the separate feature branches - I'm hoping to learn a bit through this process as I'm not yet up to speed with all of the differences between python 2&3. For the python3-regression test branch, will we receive emails if this one fails or does it rely on checking the github page?

from dxtbx.

Anthchirp avatar Anthchirp commented on July 26, 2024

I was going to reply "no, we can't have emails because Jenkins can't distinguish between expected and unexpected test failures", but pytest actually makes it really easy to keep a list of conditionally expected test failures, so I've just committed f3daa9c and we now should have Python3 test regression emails.

(The same logic will also apply when you run tests locally.)

from dxtbx.

Anthchirp avatar Anthchirp commented on July 26, 2024

This work has now been completed.

  • All tests pass on Python 2.7 and 3.6 in Jenkins and Travis
  • 2 tests were disabled on Python 3 in 54113e8
    This is due to .pickle format files not being loadable. To fix this would require a substantial amount of time and changes in cctbx and libtbx for a use case that is unclear to me. If these files are actually used then someone will have to put the effort in, otherwise I suggest the relevant formats should be retired.
  • We have achieved A+ rating on LGTM with 11 remaining warnings. This should go down to 3 very soon since
    • 1 was just fixed with f0f5b00
    • 3 will be fixed by #61
    • 4 will be fixed by #63
  • There are 51 remaining flake8 warnings, they break down as follows:
    • 28x E402 module level import not at top of file. These are caused by Python2/3 cross-compatibility work and should be ignored
    • 7xF401, 3x F403, 13x F405 - these are covered by #62 and subject to the DIALS conventions in dials/dials#838
  • Code coverage has slightly decreased in terms of files and classes (81%) and conditionals (44%). This is not entirely unexpected given that over the course of the work approximately 6% of dxtbx was removed (1500 lines), with the refactoring attention having been biased towards tested code rather than untested code.
  • Project closed 10 day ahead of schedule.

Thanks to everyone involved.

from dxtbx.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.