Skip to content

Debug ff-matrix gha workflow #12989

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

Merged
merged 34 commits into from
Jul 9, 2025
Merged

Debug ff-matrix gha workflow #12989

merged 34 commits into from
Jul 9, 2025

Conversation

cderv
Copy link
Collaborator

@cderv cderv commented Jun 26, 2025

  • Update to fix issues
  • Update to new version of its initial inspirations smoke-tests workflow

@posit-snyk-bot
Copy link
Collaborator

posit-snyk-bot commented Jun 26, 2025

🎉 Snyk checks have passed. No issues have been found so far.

security/snyk check is complete. No issues have been found. (View Details)

license/snyk check is complete. No issues have been found. (View Details)

@gordonwoodhull
Copy link
Contributor

Thanks @cderv! With this fix I do see mostly the same failures on the Windows run in CI as I saw locally.

25 mins is not bad, but we probably don't want to add these to the smoke tests.

The timeouts on Linux are troubling.... IIRC we had similar trouble before.

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

The timeouts on Linux are troubling.... IIRC we had similar trouble before.

Yes I recall now this was the main problem. Something related to anything with mermaid and required chrome printing by quarto. I'll check the setup

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

This is interesting because running a single doc that fails previously works

So this means the hanging has to do with multiple calls one after the other somehow

@cderv cderv changed the title Update ff-matrix gha workflow Debug ff-matrix gha workflow Jun 27, 2025
@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

So running all crossref test fails:

./run-tests.sh ../dev-docs/feature-format-matrix/qmd-files/crossref/**/*.qmd

And running all floats too

./run-tests.sh ../dev-docs/feature-format-matrix/qmd-files/crossref/float/**/*.qmd

However, running two tests with Mermaid only works

./run-tests.sh ../dev-docs/feature-format-matrix/qmd-files/crossref/float/custom/document.qmd ../dev-docs/feature-format-matrix/qmd-files/crossref/float/figure/document.qmd

So still haven't found the pattern that creates the issue

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

And strangely this works

./run-tests.sh \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/caption-location-bottom/document.qmd \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/caption-location-top/document.qmd \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/code-listing/document.qmd \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/code-listing/executable/document.qmd \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/custom/document.qmd \
../dev-docs/feature-format-matrix/qmd-files/crossref/float/figure/document.qmd

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

So adding the table feature file makes the thing fail... Let's investigate on that.

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

So it seems ../dev-docs/feature-format-matrix/qmd-files/crossref/float/table/document.qmd is failing. But I don't see how it could create the hang... 🤔

Let's see if this is the problem.

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

It is passing ! Let's try full tests.

But there is something about this test failing that makes the all process hang. Still don't know what

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

No that is not the case... Not related to this specific test file. I am now thinking there is a flow somewhere in how testing works ... Won't be easy to debug 😭

@cderv
Copy link
Collaborator Author

cderv commented Jun 27, 2025

So I can reproduce by running interactively on the CI runners directly. This is really puzzling.

This is only something when running inside CI runners, non interactively. Like if the stream does not get back information anymore (and not really quarto hanging).

I ran all feature-matrix test locally and got to the end with the failures. Here are the 9 failing test

[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/crossref/float/table/document.qmd --to revealjs => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/crossref/float/table/document.qmd --to typst => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/code-python-label.qmd --to typst => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/code-python-nocaption.qmd --to typst => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/code-r-nocaption.qmd --to typst => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/toplevel-id-caption.qmd --to latex => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/toplevel-id-nocaption.qmd --to latex => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/layout/fig-align/toplevel-noid-nocaption.qmd --to typst => ./test.ts:346:8
[smoke] > quarto render ../dev-docs/feature-format-matrix/qmd-files/raw-blocks/interpreted/pandoc-native/document.qmd --to typst => ./test.ts:346:8

FAILED | 259 passed | 9 failed (5m32s)

@cderv cderv marked this pull request as draft June 27, 2025 17:57
@gordonwoodhull
Copy link
Contributor

Thanks @cderv for this thorough investigation! This is really weird.

It seems like maybe we should just remove mermaid from some tests until it's working. I don't think it's essential here.

I think I know what the six Typst failures are; Pandoc output has changed for figures. The reveal and latex failures are probably churn as well.

cderv added 7 commits July 8, 2025 16:23
except table one which is currently hidden
````
_quarto:
  tests-on-ci: false
````

`smoke-all.test.ts` should skip tests when this metadata is set to false inside a CI context

This can be useful for mermaid test for example
@cderv cderv marked this pull request as ready for review July 9, 2025 13:31
[skip-ci]
@cderv cderv merged commit fad85eb into main Jul 9, 2025
5 of 53 checks passed
@cderv cderv deleted the gha/ff-matrix branch July 9, 2025 14:00
cderv added a commit that referenced this pull request Jul 10, 2025
revealjs link can work to id anchor inside slide now

follow up on #12989 fixes
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.

3 participants