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

Tracking develop branch issues: #135

Open
5 tasks done
tacaswell opened this issue Jan 24, 2025 · 4 comments
Open
5 tasks done

Tracking develop branch issues: #135

tacaswell opened this issue Jan 24, 2025 · 4 comments

Comments

@tacaswell
Copy link
Collaborator

tacaswell commented Jan 24, 2025

  • ~~ pixi run install-editable does not place compiled programs convcell & LATTIC into .pixi/envs//bin; (N.B. pixi run install does do this)~~ (moved below)

  • comment in GSASIIphsGUI.py: "XXX I suspect this is Unix-specific -- need porting help!". Is this still relevant?

  • Best way to read & write configuration info to an external file?

    • will use configparser. Has r/w capabilities in stdlib; Don't need more sophisticated features of toml, etc.
  • running tests/test_scripting.py fails due to "path hacking"; problem seems to be within pytest, but is not seen with the other self-tests.

    • Tom will make path-hacking test "opt in" via a PR (done in ca6402f, BHT)
  • can pixi install & install-editable run the GSAS-II/install/save_versions.py script (before copying files) or perhaps this should be made into a git smudge activity?

    Image

Originally posted by @briantoby in #134 (comment)

@tacaswell
Copy link
Collaborator Author

I made a new issue for this rather than using a comment is a merged PR.

@briantoby
Copy link
Collaborator

briantoby commented Jan 28, 2025

Installation tasks @briantoby:

  • Build old-style binary .tar files (BHT)

  • Build gsas2full style self-updating self-installer w/develop branch (BHT)

  • confirm that switching branches does not break gsas2full installation (BHT)

    • win
    • Mac
    • linux
  • Implement tradition version numbering (X.Y.Z type) for GSAS-II; saving version #s as tags (BHT)

    • read https://jacobtomlinson.dev/effver/ and think about versioning concepts
    • linear # tagging script revised to also increment minor version # & new script written to increment mini #.
    • X.Y.Z version now in the importable file (though not accessed yet by code).
  • Test the binary self-installers (gitstrap & in main code) with develop & 3.12 or 3.13 & new binaries.

    • win
    • Mac

Self-tests @briantoby:

  • scriptref.py not producing same results on Windows as in MacOS & Linux
  • should tests be made faster?
  • Add test for texture

@briantoby
Copy link
Collaborator

@tacaswell Here is stuff that I'd like your help with:

  • pixi run install-editable does not place compiled programs convcell & LATTIC into path (.pixi/envs/bin) could that be fixed?

  • Implement a conda package for GSAS-II develop branch; N.B. at some future point this will be renamed to main

More long range, but for people who have a traditionally-installed (non self-updating) version of GSAS-II, I'd like still generate a message that shows how far the installed version is behind from the current version. Any thoughts on how to find this out?

Low priority: It is not clear to me how pixi would use one python environment for building and installing GSAS-II and another for running it, but I have left some comments on how different conda environments might be deployed in the TODO comment in pixi.toml,

@briantoby
Copy link
Collaborator

@tacaswell

  • Change needed for pixi install: Need to build windows binaries with gfortran

    I now understand why the smoke test fails on Windows (only). The pixi install on windows is using clang (perhaps OK) and flang-new (llvm-flang 19.1.6 -- not OK). We have only used gfortran with GSAS-II. The binaries produced by clang/flang are definitely more convenient, in that no non-system .dlls are needed, but they fail spectacularly when computing a powder pattern. I really don't want to debug that.

    There is an example for how I build the GSAS-II binaries with gfortran with this messy GH action (which is called by this), but I really don't see where the build configuration for windows is set. Your help is needed.

  • pyproject.toml change: add PyCifRW

    The develop branch now requires module PyCifRW (imported as CifFile) for all use (scripting & GUI). This is required in pixi.toml, but I think is needed in pyproject.toml

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

No branches or pull requests

2 participants