Skip to content
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

"The preview server is not enabled in the version of Hakyll" #1022

Open
tomjaguarpaw opened this issue Mar 30, 2024 · 5 comments
Open

"The preview server is not enabled in the version of Hakyll" #1022

tomjaguarpaw opened this issue Mar 30, 2024 · 5 comments
Labels

Comments

@tomjaguarpaw
Copy link

When using site --watch under hakyll==4.16.2.0 I am getting

The preview server is not enabled in the version of Hakyll. To
enable it, set the flag to True and recompile Hakyll.
Alternatively, use an external tool to serve your site directory.

As a workaround I can set the previewserver flag explicitly, for example

cabal run --constraint="hakyll +previewserver" -- site watch

Firstly, according to #298 (comment) I shouldn't need to do this, it should be the default. Does anyone know what's going on?

Secondly, it was really hard to discover the above workaround! Could it be explicitly be added to the error message to give users a clue about what they should do? "set the flag to True and recompile Hakyll" doesn't explain much at all.

@Minoru
Copy link
Collaborator

Minoru commented Apr 2, 2024

Firstly, according to #298 (comment) I shouldn't need to do this, it should be the default. Does anyone know what's going on?

I don't. Is your site's code available anywhere so I can try to reproduce this locally?

Secondly, it was really hard to discover the above workaround! Could it be explicitly be added to the error message to give users a clue about what they should do? "set the flag to True and recompile Hakyll" doesn't explain much at all.

Agreed on that. Do you have a specific wording in mind? I'd review a PR that improves this message.

@Minoru Minoru added the docs label Apr 2, 2024
@tomjaguarpaw
Copy link
Author

Is your site's code available anywhere so I can try to reproduce this locally?

Yes, it's https://github.com/tomjaguarpaw/H2, but if you prefer to wait until I submit a minimal example of the problem that's fine too.

Do you have a specific wording in mind?

At the very least I suggest adding this message or linking to one of these GitHub issues that mentions the problem and the fix.

You can set the preview server by running cabal with, e.g. --constraint="hakyll +previewserver"

@jaspervdj
Copy link
Owner

I also think this is confusing -- I guess the problem is that cabal toggles the flags when it can't find a resolution. Should we set previewServer (and probably watchServer) to Manual: True in the cabal file?

The disadvantage is that instead of seeing this error, the user will see an error that cabal failed to resolve the dependencies...

@tomjaguarpaw
Copy link
Author

But in this case cabal can find a resolution, because if I manually set +previewserver then it succeeds.

jaspervdj added a commit that referenced this issue Apr 4, 2024
 -  Make these flags manual so they can't be turned off by cabal without the
    user knowing about it.
 -  Improve error message to mention how to override them in `cabal.project`.

See #1022
@jstolarek
Copy link

I've run into the same problem - preview server stopped working after rebuilding my website dependencies. Workaround from the first post works, but it isn't an easy thing to figure out. Having this documented would be helpful.

jstolarek added a commit to jstolarek/jstolarek.github.io that referenced this issue May 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants