Skip to content
This repository has been archived by the owner on Nov 8, 2024. It is now read-only.

Compat bounds in Project.toml #24

Closed
tlienart opened this issue Aug 13, 2021 · 2 comments · Fixed by #25
Closed

Compat bounds in Project.toml #24

tlienart opened this issue Aug 13, 2021 · 2 comments · Fixed by #25

Comments

@tlienart
Copy link

tlienart commented Aug 13, 2021

Hello,

I stumbled upon this repo after reading your issue with Pkg compats on Slack. I feel your pain, these clashes can be super annoying. One q: (1) did you try putting Franklin in your toml? and if that failed (2) did you try putting compat bounds explicitly in the Project.toml of your site folder instead of putting those in the deploy script?

The chain of dependencies that cause the problems described on Slack is

Franklin -> Literate ->  JSON -> Parsers

and then that clashes with CSV which requires Parsers 1, I think. But when you put everything in your Project.toml file (including Franklin), it should get the right versions for everything.

PS: pretty cool website, I wasn't aware of it :)

@storopoli
Copy link
Owner

Thanks @tlienart for the compliment.

(1) did you try putting Franklin in your toml

Nope I haven´t. Maybe I could add it to the toml and instead of

 - run: julia -e '
            using Pkg; Pkg.add([Pkg.PackageSpec("Franklin"), Pkg.PackageSpec("NodeJS"), Pkg.PackageSpec(name="Parsers", version="1.1.2"), Pkg.PackageSpec(name="JSON", version="0.21.1")]);
            using NodeJS; run(`$(npm_cmd()) install highlight.js`);
            using Franklin;
            Pkg.activate("."); Pkg.instantiate();
            optimize(); verify_links();' > build.log

I could do

 - run: julia -e '
            using Pkg;
            Pkg.activate("."); Pkg.instantiate();
            using NodeJS; run(`$(npm_cmd()) install highlight.js`);
            using Franklin;
            optimize(); verify_links();' > build.log

And add a compat entry to toml

[compat]
Parsers = "1"

Was this what you've intended?

@tlienart
Copy link
Author

tlienart commented Aug 13, 2021

Could you try:

- run: julia -e '
            using Pkg;
            Pkg.activate("."); Pkg.instantiate();
            using NodeJS; run(`$(npm_cmd()) install highlight.js`);
            using Franklin;
            optimize(); verify_links();' > build.log

with Project.toml as you have it now but add Franklin NodeJS

the thing is that you shouldn't have to specify a bound for Parsers explicitly given you don't use it, it's just a dependency, so I'm just trying to figure out what would have been the easy way with no clash :)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants