v1.8.1 - 10 Jun 2020
- Fix: Allow
/
incargo bench
benchmark name (#26) - New: Add an example with Criterion.rs for Rust projects
v1.8.0 - 17 Mar 2020
- New: Added
comment-always
option to leave a comment of benchmarking results at the commit always. Thanks @pksunkara - New: Added
save-data-file
option to skip saving data file. Settingfalse
to this value is useful when you don't want to update Git repository. Thanks @pksunkara - Improve:
+/-
is now replaced with±
- Improve: Better formatting for floating point numbers
v1.7.1 - 23 Feb 2020
- Fix: Benchmark output parser could not parse
\r\n
as newline correctly (#16) - Improve: Prefer
@actions/github.GitHub
wrapper to@octokit/rest.Octokit
v1.7.0 - 21 Jan 2020
- New: Add Catch2 support. Please read the example for more details. Thanks @bernedom
- Fix: Deploying to GitHub Pages did not work when checking out the repository with
actions/checkout@v2
- Improve: Update several dependencies including
@actions/*
packages
v1.6.7 - 01 Jan 2020
- Fix: Extracting the benchmark result value from
go test -bench
did not assume float numbers (Fixed #5) - Fix: Running this action on
pull_request
event caused an error sincehead_commit
payload is not set at the event. In the case, now this action tries to extract the commit information frompull_request
payload
v1.6.6 - 23 Dec 2019
- Fix: Parse floating numbers in the benchmark results from Benchmark.js. (Thanks @Bnaya)
v1.6.5 - 19 Dec 2019
- Fix: Titles are set to empty in auto-generated default
index.html
. To apply this fix, please remove currentindex.html
in your GitHub Pages branch and run this action again - Fix: Skip fetching GitHub Pages branch before switching to the branch when
skip-fetch-gh-pages
is set to true - Improve: Explicitly note no action output from this action in README.md
v1.6.4 - 16 Dec 2019
- Fix: Supported actions/checkout@v2
- Improve: Refactored
index.html
automatically generated when it does not exist - Improve: Update dependencies (
actions/github
v2)
v1.6.3 - 08 Dec 2019
- Improve: Tweak number of retries for more robust automatic
git push
v1.6.2 - 07 Dec 2019
- Fix: Retry logic for
git push
did not work properly since stderr output was not included in error message
v1.6.1 - 07 Dec 2019
- Fix: Time unit of mean time in
pytest
benchmark results were alwayssec
. Now time units are converted tomsec
,usec
andnsec
if necessary - Fix: Detecting rejection by remote on
git push
was not sufficient - Improve: Add a small link at right bottom of dashboard page to show this action provided the page
- Improve: Showed at least 1 significant digit for threshold float values like
2.0
- Improve: Updated dependencies
v1.6.0 - 04 Dec 2019
- New:
fail-threshold
input was added. Format is the same asalert-threshold
, but you can give different thresholds to sending a commit comment and making the workflow fail by giving different value tofail-threshold
fromalert-threshold
. This value is optional. If omitted,fail-threshold
value is the same asalert-threshold
- Improve: Retry logic was improved on
git push
failed due to remote branch updates aftergit pull
. Now this action retries entire process to updategh-pages
branch when the remote rejected automaticgit push
. Previously this action tried to rebase the local onto the remote but it sometimes failed due to conflicts
v1.5.0 - 30 Nov 2019
- New: Added
max-items-in-chart
input was added to limit the number of data points in a graph chart. - New: Supported Google C++ Benchmark Framework for C++ projects. Please check the example project and the example workflow to know the setup
- Fix: Fix the order of graphs in the default
index.html
. To apply this fix, please removeindex.html
in your GitHub Pages branch and run your benchmark workflow again - Improve: Use the actions marketplace URL for the link to this action in commit comment
- Improve: Updated dependencies
- Dev: Added Many tests for checking the updates on a new benchmark result
- Dev: Changed directory structure. Sources are now put in
src/
directory
v1.4.0 - 23 Nov 2019
- New:
external-data-json-path
input was added to support to put benchmark data externally rather than Git branch- By using this input and actions/cache, you no longer need to use Git branch for this action if you only want performance alerts. Benchmark data is stored as workflow cache.
- By this input, minimal setup for this action is much easier. Please read 'How to use' section in README.md.
v1.3.2 - 23 Nov 2019
- Improve: Styles in alert commit comment were improved
- Fix: When benchmark name (with
name
input) contained spaces, URL for the workflow which detected performance regression was broken
v1.3.1 - 21 Nov 2019
- Fix:
git push
sometimes failed in the situation whereprepush
hook is set and runs unexpectedly. Nowgit push
is run with--no-verify
for pushing auto generated commit to remote.
v1.3.0 - 21 Nov 2019
- New: Alert feature was added 🎉
- With this feature enabled, you can get alert commit comment or make workflow fail when possible performance regression is detected like this
comment-on-alert
input was added to enable commit comment on alert.github-token
input is necessary as well to use GitHub API. Unlike deploying GitHub Pages,secrets.GITHUB_TOKEN
is sufficient for this purpose (if you don't use GitHub Pages). The input is set tofalse
by default.fail-on-alert
input was added to mark running workflow fail on alert. The input is set tofalse
by default.alert-threshold
input was added to specify the threshold to check alerts. When current result gets worse than previous exceeding the threshold. Value is ratio such as"200%"
. For example, when benchmark gets result 230 ns/iter and previous one was 100ns/iter, it means 230% worse and an alert will happen.- Please read documentation for setup
- New:
alert-comment-cc-users
input was added to specify users mentioned in an alert commit comment so that they can easily notice it via GitHub notification - New:
skip-fetch-gh-pages
input was added to skipgit pull
which is automatically executed on public repo or when you setgithub-token
on private repo. - Improve: E2E checks on CI were added
- Improve: Updated dependencies
v1.2.0 - 17 Nov 2019
- New: Support pytest-benchmark for Python projects which use pytest
- Benchmark value is how long one iteration takes (seconds/iter)
- Improve: Show more extra data in tooltip which are specific to tools
- Go
- Iterations
- Number of CPUs used
- Benchmark.js
- Number of samples
- pytest-benchmark
- Mean time
- Number of rounds
- Go
For reflecting the extra data improvement, please refresh your index.html
. Remove current index.html
in GitHub Pages branch and push the change to remote, then re-run your benchmark workflow.
v1.1.4 - 16 Nov 2019
- Improve: Title styles in default
index.html
which is generated when noindex.html
is in your GitHub Pages branch. If you want to update yourindex.html
to the latest, please remove it and push to remote at first then re-run your workflow which will invoke github-action-benchmark - Improve: More metadata in
action.yml
. Now icon and its color are set.
v1.1.3 - 16 Nov 2019
- Fix: Retry failed when no Git user config is provided. Ensure to give bot user info to each
git
command invocations
v1.1.2 - 16 Nov 2019
- Improve: Added retry for
git push
. When remote GitHub Pages branch is updated after the current workflow had fetched the branch,git push
will fail because the remote branch is not up-to-date. In the case this action will try to rebase onto the latest remote bygit pull --rebase
andgit push
again. This is useful when your multiple workflows may be trying to push GitHub Pages branch at the same timing.auto-push
input must be set totrue
for this. - Fix: Description for
auto-push
was missing inaction.yml
v1.1.1 - 14 Nov 2019
- Improve: More strict check for
auto-push
input. Now the value must be one oftrue
,false
(default value isfalse
)
v1.1.0 - 14 Nov 2019
- New: Added
auto-push
input- If this value is set to
true
, this action pushes GitHub Pages branch to remote automatically. You no longer need to push the branch by yourself. - Below
github-token
input must be set for this - This input is optional. You can still push the branch by yourself if you want
- Please read documentation for more details
- If this value is set to
- New: Added
github-token
input- For doing some operations which requires GitHub API token, this input is necessary
- pull from remote branch when your repository is private
- push to remote branch
- deploy and trigger GitHub Pages build
- This input is optional. When you do none of above operations, this input is not necessary
- For doing some operations which requires GitHub API token, this input is necessary
README.md
was updated to avoid the issue on public repository (#1)
e.g.
- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
name: My Project Go Benchmark
tool: 'go'
output-file-path: output.txt
github-token: ${{ secrets.PERSONAL_GITHUB_TOKEN }}
auto-push: true
Note that you need to make a personal access token for deploying GitHub Pages from GitHub Action workflow. Please read RADME.md
for more details.
v1.0.2 - 10 Nov 2019
First release 🎉
Please read documentation for getting started:
https://github.com/benchmark-action/github-action-benchmark#readme