Skip to content

[Merged by Bors] - feat(CI): bench-after-CI#21414

Closed
adomani wants to merge 7 commits intomasterfrom
adomani/bench_after_CI
Closed

[Merged by Bors] - feat(CI): bench-after-CI#21414
adomani wants to merge 7 commits intomasterfrom
adomani/bench_after_CI

Conversation

@adomani
Copy link
Copy Markdown
Contributor

@adomani adomani commented Feb 4, 2025

Adds a CI step that checks if the bench-after-CI label is present. If so, it adds a comment !bench once CI passes, triggering a benchmarking run.

The management is as follow:

  • the label bench-after-CI is applied manually while CI is running;
  • once CI passes the lint phase, if the label is present, a bot comments !bench, starting the bench process;
  • when the bench process terminates, it posts the report;
  • this triggers the bench-summary bot to post the summary and to remove the label.

Meanwhile, the label bench-after-CI is in the list of labels that bors rejects.

Zulip

I added the label to this PR, but I am not sure whether the workflow will act on it, since the code is not in master and the automation worked.


Open in Gitpod

@github-actions github-actions bot added the CI Modifies the continuous integration setup or other automation label Feb 4, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 4, 2025

PR summary 8dd1468fd7

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

No declarations were harmed in the making of this PR! 🐙

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@alreadydone alreadydone added awaiting-bench This PR needs to be benchmarked before merging bench-after-CI and removed awaiting-bench This PR needs to be benchmarked before merging bench-after-CI labels Feb 4, 2025
@adomani adomani marked this pull request as ready for review February 4, 2025 11:12
@ghost
Copy link
Copy Markdown

ghost commented Feb 4, 2025

!bench

@leanprover-bot
Copy link
Copy Markdown
Collaborator

Here are the benchmark results for commit 86620ea.
There were no significant changes against commit 79ad6ef.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 4, 2025

No benchmark entry differed by at least +1.0⬝10⁹ instructions.
CI run

@bryangingechen bryangingechen self-assigned this Feb 4, 2025
Copy link
Copy Markdown
Contributor

@bryangingechen bryangingechen left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!
bors d+

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Feb 4, 2025

✌️ adomani can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@ghost ghost added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Feb 4, 2025
@ghost
Copy link
Copy Markdown

ghost commented Feb 4, 2025

!bench

@leanprover-bot
Copy link
Copy Markdown
Collaborator

Here are the benchmark results for commit 8dd1468.
There were significant changes against commit 79ad6ef:

  Benchmark   Metric                 Change
  =========================================
+ build       .olean serialization    -5.6%

@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 4, 2025

No benchmark entry differed by at least +1.0⬝10⁹ instructions.
CI run

@adomani
Copy link
Copy Markdown
Contributor Author

adomani commented Feb 4, 2025

This second test did not remove the label, since the bench-summary is running the action on master! 🤦

@bryangingechen
Copy link
Copy Markdown
Contributor

As usual, PRs will need to merge master to use this, I guess.

Thanks!
bors r+

@ghost ghost added the ready-to-merge This PR has been sent to bors. label Feb 4, 2025
mathlib-bors bot pushed a commit that referenced this pull request Feb 4, 2025
Adds a CI step that checks if the `bench-after-CI` label is present.  If so, it adds a comment `!bench` once CI passes, triggering a benchmarking run.

The management is as follow:
* the label `bench-after-CI` is applied manually while CI is running;
* once CI passes the lint phase, if the label is present, a bot comments `!bench`, starting the bench process;
* when the bench process terminates, it posts the report;
* this triggers the bench-summary bot to post the summary *and* to remove the label.

Meanwhile, the label `bench-after-CI` is in the list of labels that `bors` rejects.

[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60bench-after-CI.60.3F)

I added the label to this PR, ~~but I am not sure whether the workflow will act on it, since the code is not in `master`~~ and the automation worked.
@adomani
Copy link
Copy Markdown
Contributor Author

adomani commented Feb 4, 2025

As usual, PRs will need to merge master to use this, I guess.

Thanks! bors r+

Since the code in the main build workflow already worked in this PR, I suspect that only the label-removing part will depend on current master: that should not be a great problem.

@bryangingechen
Copy link
Copy Markdown
Contributor

I might be confused again, but I think workflows triggered by push use the version of the workflow on the PR, not master -- that's why the label-addition worked on this PR.

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Feb 4, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(CI): bench-after-CI [Merged by Bors] - feat(CI): bench-after-CI Feb 4, 2025
@mathlib-bors mathlib-bors bot closed this Feb 4, 2025
@mathlib-bors mathlib-bors bot deleted the adomani/bench_after_CI branch February 4, 2025 22:18
Julian added a commit that referenced this pull request Feb 5, 2025
* origin/master: (103 commits)
  chore(PresheafedSpace): remove `mk_coe` and some comments from porting  (#21382)
  refactor(CategoryTheory): `ConcreteCategory` instance for `FintypeCat` (#21466)
  refactor(Algebra/Category): clean up remaining uses of `HasForget` (#21460)
  chore(Algebra/Field/Basic): make some arguments implicit (#21453)
  chore(LinearAlgebra/TensorProduct): upgrade `TensorProduct.prodRight` (#21432)
  docs(Logic/Function/Defs): missing backticks (#21459)
  style(Logic/Embedding/Set): unindent (#21457)
  doc: document design choice of (AE)StronglyMeasurable.enorm and `edist` (#21423)
  perf(RingTheory/Artinian): reorder arguments in `IsArtinianRing.isMaximal_of_isPrime` (#21449)
  feat(Probability): first two derivatives of `cgf` (#21223)
  feat(RingTheory): `Ring.KrullDimLE` type class (#21452)
  chore(Probability/ProbabilityMassFunction/Binomial): typo "bernoulli" (#21455)
  chore: remove unused argument (#21393)
  feat(MeasureTheory/Integral/RieszMarkovKakutani) prove that the Riesz content is regular and define the Riesz measure (#20040)
  chore(Topology/Algebra/ContinuousMonoidHom): do not depend on `ContinuousLinearMap` (#21443)
  doc(CategoryTheory/Monoidal/Category): fix expression in docs (#21445)
  refactor(Order/CompleteBooleanAlgebra): a complete lattice which is a Heyting algebra is automatically a frame (#21391)
  chore: cleanup porting notes in TuringMachine (#20821)
  chore: remove @[simp] when the discr_key is a lambda (#21395)
  feat/doc: split files, add documentation (#21421)
  feat(Data/Set/Lattice): iUnion + insertion  (#21322)
  feat(Factorial): k! divides the product of any k successive integers (#21332)
  feat(CI): bench-after-CI (#21414)
  feat: primitive group actions (#12052)
  feat(Algebra/GroupWithZero/Int): add lemmas about Zm0 (#21370)
  feat(CategoryTheory): small classes of morphisms (#21411)
  feat(CategoryTheory): (co)limits of constant functors (#21412)
  chore: rename isUnit_ofPowEqOne (#21407)
  chore: split mapDomain out of MonoidAlgebra.Defs (#21398)
  chore: generalise lemmas to `ENorm` spaces, part 1 (#21380)
  chore: add `simp` to `Setoid.refl` (#21107)
  chore: tidy various files (#21406)
  chore(Geometry/Manifold/IsManifold): split out material on extended charts (#21219)
  refactor: introduce `Ideal.IsTwoSided` class for quotients of noncommutative rings (#17930)
  chore(Algebra/Category/ModuleCat): delete `ModuleCat.hasForgetModuleCat` (#21425)
  feat(RingTheory): unramified iff `κ(q)/κ(p)` is separable and `pS_q = qS_q` (#20690)
  doc(Order/Heyting/Basic): Coheyting difference is not right adjoint but left adjoint (#21418)
  chore: move ProofWidgets to v0.0.51 (#21416)
  chore: rename mem_nonZeroDivisor_of_injective and comap_nonZeroDivisor_le_of_injective (#21408)
  feat: drop ordering assumption in `RootPairing.coxeterWeight_mem_set_of_isCrystallographic` (#21122)
  feat(AlgebraicGeometry): the diagonal of an unramified morphism is an open immersion (#21386)
  feat(Data/LinearIndependent): iff versions of smul action on independent sets (#21383)
  chore(Combinatorics/SimpleGraph): Fix `hadj` naming (#21389)
  chore: rename AnalyticAt.order_neq_top_iff (#21388)
  fix: bug in daily.yml (#21401)
  chore: remove `@[simp]` from `CategoryTheory.Discrete.functor_map` (#21392)
  chore(Algebra/PUnitInstances): generalise universes (#21381)
  feat(RingTheory/PowerSeries): describe when power series map is zero (#21379)
  feat(Tactic/Linter): options to in/exclude definitions and private decls (#21374)
  feat: the prime spectrum is quasi-separated (#21362)
  ...
pfaffelh pushed a commit that referenced this pull request Feb 7, 2025
Adds a CI step that checks if the `bench-after-CI` label is present.  If so, it adds a comment `!bench` once CI passes, triggering a benchmarking run.

The management is as follow:
* the label `bench-after-CI` is applied manually while CI is running;
* once CI passes the lint phase, if the label is present, a bot comments `!bench`, starting the bench process;
* when the bench process terminates, it posts the report;
* this triggers the bench-summary bot to post the summary *and* to remove the label.

Meanwhile, the label `bench-after-CI` is in the list of labels that `bors` rejects.

[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60bench-after-CI.60.3F)

I added the label to this PR, ~~but I am not sure whether the workflow will act on it, since the code is not in `master`~~ and the automation worked.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Modifies the continuous integration setup or other automation delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). ready-to-merge This PR has been sent to bors.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants