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

BUG: Fix compare and continuous #1421

Merged
merged 4 commits into from
Aug 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
fail-fast: false
matrix:
os: ["ubuntu-latest"]
python-version: ["3.7", "3.12", "pypy-3.8", "pypy-3.9"]
python-version: ["3.7", "3.12", "pypy-3.9"]
r-version: ['release']
timeout-minutes: 60
steps:
Expand Down
9 changes: 9 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
0.6.4 (TBD)
------------------

Other Changes and Additions
^^^^^^^^^^^^^^^^^^^^^^^^^^^

- ``asv`` defaults to ``--force-reinstall`` now to facilitate ``compare`` and ``continuous`` for manually versioned projects (#1421)


0.6.3 (2024-02-25)
------------------

Expand Down
4 changes: 3 additions & 1 deletion asv/environment.py
Original file line number Diff line number Diff line change
Expand Up @@ -890,7 +890,9 @@ def _install_project(self, repo, commit_hash, build_dir):
# Run pip via python -m pip, avoids shebang length limit on Linux.
# Don't run it in build directory, because it may contain Python packages
# that pip believes to be already installed.
cmd = ["in-dir={env_dir} python -mpip install {wheel_file}"]
# --force-reinstall is needed since versions may not change between
# asv runs (esp. for compare), e.g. gh-1421
cmd = ["in-dir={env_dir} python -mpip install {wheel_file} --force-reinstall"]
Copy link
Member Author

Choose a reason for hiding this comment

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

--force-reinstall (basically the same as pip uninstall && pip install is used here, but -I might also be the "right thing to do" for testing commits as long as the files have not changed.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'd have also been open to simply documenting the fix described in #1417 (comment) but it seems like an issue a lot of people might have.


if cmd:
commit_name = repo.get_decorated_hash(commit_hash, 8)
Expand Down
46 changes: 46 additions & 0 deletions docs/source/using.rst
Original file line number Diff line number Diff line change
Expand Up @@ -612,3 +612,49 @@ are color coded). The threshold can be set with the
into ones that have improved, stayed the same, and worsened, using the
same threshold using the ``--split`` option.
See :ref:`cmd-asv-compare` for more.

ASV also has a compare column which can be used to get a quick (and colorless)
visual summary of benchmark results. This consists of a single ``mark`` where
each of its symbolic states can be understood as:

.. list-table:: ASV Change column states, ``before`` is the first commit ID, ``after`` is the second commit ID
:widths: 15 25 15 15 15
:header-rows: 1

* - Change
- Color
- Description
- After
- Before
* - ``x``
- Light Gray
- Not comparable
-
-
* - ``!``
- Red
- Introduced a failure
- Failed
- Succeeded
* -
- Green
- Fixed failure
- Succeeded
- Failed
* -
-
- Both failed or either was skipped or no significant change
-
-
* - ``-``
- Green
- Relative improvement
- Better
- Worse
* - ``+``
- Red
- Relatively worse
- Worse
- Better

Additionally, statistically insignificant results have ``~`` in the ratio column as well.
Loading