MichaelHatherly / Publish.jl

A universal document authoring package for Julia.
Other
97 stars 9 forks source link

Inconsistency between julia version in Publish.yml and version used in the package #55

Open rambunctiousapple opened 2 years ago

rambunctiousapple commented 2 years ago

The version of julia used in the Publish.yml file was 1.5 and the version I used to write my code was 1.7.2. This caused very confusing dependency errors when executing the Publish.yml action on github, presumably because there were packages I was using that were not compatible with v1.5. When I changed the version in Publish.yml to 1.7 the errors went away. The error messages from the github action are hard to connect to the root problem.

This will be an endless source of errors and user frustration. One could argue that a smart user would know to check all the github actions to make sure there are no version incompatibilities but many users (me for instance) will either not know this or forget to check (me) and get a nearly useless error message from github. These sorts of errors are what soured me on Documenter.jl, which became a seemingly endless maintenance problem on my other repos.

Perhaps it would make sense to have an enforce_compatibility() function, or check_for_errors() that the user would be encouraged to execute before attempting to deploy on github, that would check the Publish.yml file and the Manifest.toml file and rewrite the Publish.yml file so the julia versions are compatible. Or at least warn the user to change the Publish.yml file.

Or a section in the documentation called "Essential checks to make before running Publish" that would warn people about this error source.

I'm happy to add a section to the documentation "Essential things to check before running Publish" or write an error check/diagnostic program. @MichaelHatherly what do you think?

So far I have not succeeded in getting Publish to correctly deploy documentation to gh-pages. It deploys locally fine but something always goes wrong on github. I want to track down whatever is causing these problems and make the process more robust for the beginner user.