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

Suggestions for online documentation of manual setup #285

Merged
merged 1 commit into from
Jan 10, 2025

Conversation

mrhardman
Copy link
Collaborator

To try address the problems encountered in #275, here I have tried to update the online documentation for the manual install, to reflect the current state of the machine setup scripts.

@mrhardman mrhardman requested a review from johnomotani October 15, 2024 13:19
@mrhardman mrhardman mentioned this pull request Oct 15, 2024
@johnomotani
Copy link
Collaborator

We could maybe simplify a bit for the dependency packages. Things like StatsBase are already dependencies of moment_kinetics, so we could import them via moment_kinetics to avoid needing to add them to the 'top-level' requirements. It's slightly uglier in the test/precompile scripts, but probably worth it in terms of making setup simpler. We can add a paragraph in the developer docs to explain why we handle some dependencies that way. If that sounds like a good idea, I can push changes to this PR (since those changes would also need changes to the docs, it seems reasonable to do it this way).

Are you sure that Test needs to be added explicitly? I think it's part of the stdlib that's bundled with Julia, so it'd be a bit surprising if we need to explicitly add it.

@mrhardman
Copy link
Collaborator Author

I am sure that Test needs to be added explicitly. Without it, I found faults with the loading of extensions of dependency modules. I think you can see this in this post #275 (comment). Although in that case I had pinned enough modules to make things work, it turned out that I could get runs with no errors and precompilation if I just used the version independent recipe in #275 (comment).

As to loading modules like StatsBase and SpecialFunctions via moment_kinetics for moment_kinetics/test/*.jl, I am in favour of this solution, as it avoids having to load modules just for the test routines that we would like to just work for new users. The test_scripts/*.jl files do tend to need modules that we should not load (like Plots) -- but since all these files are my precursor test experiments (and Fokker-Planck error plot generators), I am happy to keep loading the modules for those manually.

@johnomotani johnomotani merged commit c0300e9 into master Jan 10, 2025
20 of 21 checks passed
@johnomotani johnomotani deleted the manual-install-docs-update branch January 10, 2025 23:52
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.

2 participants