Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare release 7.0.0rc1 #8814

Closed
wants to merge 1 commit into from
Closed

Prepare release 7.0.0rc1 #8814

wants to merge 1 commit into from

Conversation

github-actions[bot]
Copy link
Contributor

Created automatically from manual trigger.

Once all builds pass and it has been approved by one or more maintainers, the build
can be released by pushing a tag 7.0.0rc1 to this repository.

Copy link
Member

@nicoddemus nicoddemus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for managing the release @The-Compiler!

Left some comments.

@@ -28,6 +28,233 @@ with advance notice in the **Deprecations** section of releases.

.. towncrier release notes start

pytest 7.0.0rc1 (2021-06-28)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Strange, this should be:

Suggested change
pytest 7.0.0rc1 (2021-06-28)
pytest 7.0.0rc1 (2021-06-28)
============================

No idea, seems like a town crier problem? 🤔

cachedir: $PYTHON_PREFIX/.pytest_cache
rootdir: $REGENDOC_TMPDIR
cachedir: $PYTHON_PREFIX/.pytest_cache
--------------------------- cache values for '*' ---------------------------
cache/lastfailed contains:
{'test_50.py::test_num[17]': True,
{'a/test_db.py::test_a1': True,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmmm with the documentation moved we are getting cache data from other runs. @RonnyPfannschmidt can we use "regendoc wipe" to fix this?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indeed, i believe this one needs a wipe

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does that mean exactly?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm looking at it more carefully, we already have a regendoc:wipe in The new config.cache object a few lines above. Seems like regendoc:wipe might not be deleting the .pytest_cache directory?

========================= short test summary info ==========================
FAILED test_example.py::test_fail - assert 0
ERROR test_example.py::test_error - assert 0
Traceback (most recent call last):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh we missed a import sys in the code above it (I can't suggest a change because it is not part of the diff :/)

Copy link
Member

@The-Compiler The-Compiler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First pass over the diff... We have some stuff to take care of before we can proceed I'd say! Not sure how to best proceed here: Fix things in this PR, or abort the release, fix stuff, then go for it again? What do you think?


pytest 7.0.0rc1 has just been released to PyPI.

This is a bug-fix release, being a drop-in replacement. To upgrade::
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ugh, lies... This is because the release script does:

template_name = (
"release.minor.rst" if version.endswith(".0") else "release.patch.rst"
)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

time to parse it with packaging to manage th e parts better

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd rather just pass the --major flag we pass to prepare-release-pr.py already through to release.py instead of relying on parsing the version number to guess information we already have.

@@ -28,6 +28,233 @@ with advance notice in the **Deprecations** section of releases.

.. towncrier release notes start

pytest 7.0.0rc1 (2021-06-28)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

broken title?

- ``_pytest.config.argparsing.Parser``
- ``_pytest.config.argparsing.OptionGroup``

These have always been considered private, but now issue a deprecation warning, which may become a hard error in pytest 7.0.0.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
These have always been considered private, but now issue a deprecation warning, which may become a hard error in pytest 7.0.0.
These have always been considered private, but now issue a deprecation warning, which may become a hard error in pytest 8.0.0.

- `#8242 <https://github.com/pytest-dev/pytest/issues/8242>`_: Raising :class:`unittest.SkipTest` to skip collection of tests during the
pytest collection phase is deprecated. Use :func:`pytest.skip` instead.

Note: This deprecation only relates to using `unittest.SkipTest` during test
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Note: This deprecation only relates to using `unittest.SkipTest` during test
Note: This deprecation only relates to using :class:`unittest.SkipTest` during test



- `#8315 <https://github.com/pytest-dev/pytest/issues/8315>`_: Several behaviors of :meth:`Parser.addoption <pytest.Parser.addoption>` are now
scheduled for removal in pytest 7 (deprecated since pytest 2.4.0):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
scheduled for removal in pytest 7 (deprecated since pytest 2.4.0):
scheduled for removal in pytest 8 (deprecated since pytest 2.4.0):

- `#8503 <https://github.com/pytest-dev/pytest/issues/8503>`_: :meth:`pytest.MonkeyPatch.syspath_prepend` no longer fails when
``setuptools`` is not installed.
It now only calls :func:`pkg_resources.fixup_namespace_packages` if
``pkg_resources`` was previously imported, because it is not needed otherwise.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Internal or bugfix?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bugfix

see https://docs.pytest.org/en/latest/deprecations.html#node-fspath-in-favor-of-pathlib-and-node-path
return self.fspath, 0, f"usecase: {self.name}"

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

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like something we should fix in the example

see https://docs.pytest.org/en/latest/deprecations.html#node-fspath-in-favor-of-pathlib-and-node-path
return self.fspath, 0, f"usecase: {self.name}"

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

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above

cachedir: $PYTHON_PREFIX/.pytest_cache
rootdir: $REGENDOC_TMPDIR
cachedir: $PYTHON_PREFIX/.pytest_cache
--------------------------- cache values for '*' ---------------------------
cache/lastfailed contains:
{'test_50.py::test_num[17]': True,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, I don't understand those. Why is there suddenly so much more in there?

Traceback (most recent call last):
File "myinvoke.py", line 10, in <module>
sys.exit(pytest.main(["-qq"], plugins=[MyPlugin()]))
NameError: name 'sys' is not defined
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like #8800 broke this, cc @Srip

`#7767 <https://github.com/pytest-dev/pytest/issues/7767>`__ for details.

caplog
caplog -- ../../..$PYTHON_PREFIX/lib/python3.8/site-packages/_pytest/logging.py:476
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

those look broken

Copy link
Member

@The-Compiler The-Compiler Jun 28, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How so?

(edit: As in: I guess they could be cleaned up a bit, but they look as designed right now)

@RonnyPfannschmidt
Copy link
Member

@The-Compiler t first glance most things look minor, if its quickly finished, just push it here, else lets put it into extra prs

@The-Compiler
Copy link
Member

There's too much different stuff in here IMHO to fix it all as part of the release PR. I'm closing this (and removing the release branch), and instead opened new issues to track everything.

If there's a new contributor reading this: A couple of those would be a great first issue, and fixing it would accelerate the 7.0 release!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants