-
Notifications
You must be signed in to change notification settings - Fork 328
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
New gate for stdlib API check #12223
Conversation
And not from built-distribution. The error message is then better.
So that it is regenerated in a directory that is not under VCS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great:
- I am glad the description of the PR contains information about what to do when the CI fails
- Why don't you invoke
git diff --no-index
on the whole directories?
Engine / Files Changed / Changed Standard libs API docs files correctly recognizes that distribution/lib/Standard/Base/0.0.0-dev/docs/api/Widget_Helpers.md was modified. Which enables Engine / Append Standard library API change label and that has successfully appended |
- make_regex_text_widget -> Standard.Base.Any.Any | ||
- make_regex_text_widget display:Standard.Base.Metadata.Display= -> Standard.Base.Any.Any |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if we could indicate the presence of PRIVATE
tag?
From GUI perspective an API change of a fully visible component VS of a component that is exported but is not displayed in Component Browser, have slightly different 'severity' - so it could be easier to judge the changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is theoretically possible. However, I would like to integrate this PR as is, as soon as I fix all the tests. Let's keep your suggestions for some follow-ups.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool!
This reverts commit 471c0b5.
They are causing some weird issues on the CI.
Closes #10507
Standard Library API Check job
Introduces a new command
./run backend stdlib-api-check
that compares the current API ofStandard.Base
to the old one. The old API will be inside the directorydistribution/lib/Standard/Base/0.0.0-dev/docs/api
, after #12203 is merged. The new API is generated inside the directorybuilt-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/docs
that is not under VCS. The command compares these two directories. It usesgit-diff
under the hood.Introduces a new workflow job to Engine checks - 'Standard Library API check'. Defined inside
enso/.github/workflows/engine-checks.yml
Line 212 in 18616b4
What happens if the API is changed?
Let's modify
Vector.enso
with:and run
./run --skip-version-check backend stdlib-api-check
. The command fails with:After running the suggested command, the
api-stdlib-check
succeeds.Example failure of the job: https://github.com/enso-org/enso/actions/runs/13157161601/job/36716899929?pr=12223
Standard Library API changed label
distribution/lib/Standard/**/docs/api/*.md
was changed, and if so, automatically appends the-libs-API-changed
label to the PR.Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:
Scala,
Java,
TypeScript,
and
Rust
style guides. In case you are using a language not listed above, follow the Rust style guide.
or the Snowflake database integration, a run of the Extra Tests has been scheduled.