can-lehmann / owlkettle

A declarative user interface framework based on GTK 4
https://can-lehmann.github.io/owlkettle/README
MIT License
367 stars 14 forks source link

What broke the deployment pipeline for nimibook-docs? #77

Closed can-lehmann closed 8 months ago

can-lehmann commented 9 months ago

Discussed in https://github.com/can-lehmann/owlkettle/discussions/74

Originally posted by **PhilippMDoerner** September 13, 2023 As you may have guessed from discord, the nimibook-docs for a while didn't have some of the nim-files. I saw you [updating the pipeline](https://github.com/can-lehmann/owlkettle/commit/245fa428a0a8caa97cc45db7d2c605e9a92a081a) to nim 2.0.0 but I don't quite get how that lead to some of the pages not getting compiled/served on github pages. Do you have any deeper insight?

According to investigations by @PhilippMDoerner, the try/except statement on line 42 of the nimble file may be at fault, for not showing that the docs failed to build.

PhilippMDoerner commented 9 months ago

More specifically: It is likely that the current nimibook version relies on nim 2.0 to build, but the github build pipeline couldn't detect that the ./nbook build command was erroring out because nimble genBook didn't error out with a non-zero exitCode. That is because of the try-catch I think.

So it still would've failed to build, but not silently so and it would've been immediately obvious. The try-except just added to hiding the issue.

PhilippMDoerner commented 8 months ago

What exactly is supposed to happen as part of this PR? A quick commit to change

  try:
    exec "./nbook build --mm:refc --define:owlkettleNimiDocs --path:."
    echo "BUILT NIMIBOOK"
  except CatchableError:
    discard

to

    exec "./nbook build --mm:refc --define:owlkettleNimiDocs --path:."
    echo "BUILT NIMIBOOK"

?

can-lehmann commented 8 months ago

Yes, though it also requires doing some testing to make sure that that actually fixes the issue.