McStasMcXtrace / McCode

The home of the McStas (neutrons) and McXtrace (x-rays) Monte-Carlo ray-tracing instrument simulation codes.
https://github.com/McStasMcXtrace/McCode/wiki
GNU General Public License v3.0
78 stars 54 forks source link

McStas: Component-package / tool solution to retrieve comps via git #806

Open willend opened 5 years ago

willend commented 5 years ago

Since we often don't touch the code-generator that much, it would be good to have the possibility of sticking e.g. with the future 2.5.1 or 2.6 and be able to update the components "alone".

One way to do this would be to

  1. Let the comps package be more or less 'empty' but with a postinst script to check out the comps tree via git - preferably with a branch pr. release
  2. Give the gui / mcrun a hook to do this e.g. on first run
  3. Give the gui an option to always do this when starting
  4. The gui should then use the repo tag / status to identify the component library "version", currently identified in the file MCSTAS/revision, shown below for 2.5
    - Component library: McStas-2.5, built Dec. 12, 2018
willend commented 5 years ago

"Nice" platforms like rpm and deb would of course allow this already by a simple update of the repo-based comps-package, but macOS and Windows lacks this feature...

And I was thinking git was a nice, simple and transparent way to do this?

climbcat commented 5 years ago

On the other hand, an option to easily build and run the code generator would also be very useful if we are to release V3. It has a bunch of advantages, for example it would be much easier to get people to test the new version if it was easy to build.

willend commented 5 years ago

@climbcat agreed, but solves a different issue (more developer- or super-user than user-oriented). Perhaps we should create a dedicated ticket for that one?

willend commented 5 years ago

This approach may work: https://nezhar.com/blog/git-sparse-checkout-partial-checkout/

Further thinking necessary