html5lib / html5lib-python

Standards-compliant library for parsing and serializing HTML documents and fragments in Python
MIT License
1.13k stars 284 forks source link

tests: drop dependency on external mock module for newer python #574

Closed eli-schwartz closed 10 months ago

eli-schwartz commented 1 year ago

Starting python 3.3, this is in the stdlib.

Fixes #541

cclauss commented 10 months ago

Please rebase so the tests pass.

eli-schwartz commented 10 months ago

All things considered I'd rather wait until I have core maintainer review and then rebase once instead of potentially many times.

cclauss commented 10 months ago

If you were a core maintainer, would you feel more comfortable about reviewing a PR with failing tests (current state) or passing tests? https://ci.appveyor.com/project/gsnedders/html5lib-python/history

eli-schwartz commented 10 months ago

If I were a maintainer, and:

I would not appreciate external drive-by contributors pressuring other external contributors to feel guilty about my project which doesn't have passing tests in the first place.

But also, as it happens, yes, I absolutely would review PRs with failing tests! Even if the failing test is a flaw in the contribution itself.

I do this all the time. Then I offer suggestions to the contributors, who may not be fully aware of deeply hidden quirks of the codebase that require specialized knowledge to handle correctly, knowledge which I can provide in order to aid those contributors in getting their PR into a mergeable state.

Sometimes I, gasp, merge PRs with failing CI because the PR fixes one CI error but not all the errors, and CI will never be fixed if you're not willing to fix issues one by one and instead expect it all to be fixed in one fell swoop and the task becomes so intimidating that everyone just gives up and it never gets fixed.

Sometimes I review a PR and say "lgtm as soon as CI passes, please rebase", so that contributors can feel confident that they're not being ignored, and that if they rebase the PR now then they won't be asked to rebase it once a month for the next year only to have it never merged.

In short, yes, I review PRs without regard to whether they have passing CI, because I do not see what passing CI has to do with anything at the review stage.