Skip to content

Add affiliation field / Backcompatibility (?)#14

Draft
kferjaoui wants to merge 9 commits into
mainfrom
developer
Draft

Add affiliation field / Backcompatibility (?)#14
kferjaoui wants to merge 9 commits into
mainfrom
developer

Conversation

@kferjaoui

@kferjaoui kferjaoui commented Dec 10, 2025

Copy link
Copy Markdown
Contributor
  • Add space_group_number argument to latest version of jfjoch_client
  • Replace Experiment class with an Affiliation drop down menu
  • Treat measurement_tag as optional and omit it when empty to avoid double underscores

@kferjaoui kferjaoui requested a review from erikfrojdh December 10, 2025 09:27
@kferjaoui kferjaoui marked this pull request as draft December 10, 2025 10:43
@kferjaoui kferjaoui removed the request for review from erikfrojdh December 10, 2025 10:43
Khalil Daniel Ferjaoui added 2 commits December 10, 2025 11:59
- Update ConfigurationClient.fname to assemble the filename from a list of parts
- Treat measurement_tag as optional and omit it when empty to avoid double underscores
- Preserve existing structure: <file_id>_<project_id>[_<measurement_tag>]_<timestamp>_master.h5
@kferjaoui

Copy link
Copy Markdown
Contributor Author

This update of the epoc-utils relates to these issues in the GUI repo epoc-ed/GUI#208, epoc-ed/GUI#193

Khalil Daniel Ferjaoui and others added 3 commits December 10, 2025 15:06
Use 'affiliation' and eliminate 'experiment_class' from redis
fix: skip empty measurement_tag in generated filenames
@kferjaoui kferjaoui marked this pull request as ready for review December 11, 2025 08:58
@kferjaoui kferjaoui requested a review from erikfrojdh December 11, 2025 08:58
@kferjaoui

kferjaoui commented Dec 11, 2025

Copy link
Copy Markdown
Contributor Author

⚠️ This PR breaks backward compatibility.
If we absolutely want to maintain that, then experiment_class needs to be restored. This would require:

  1. revert 18922ae and a019c37 while keeping affiliation and usedAffiliations (look at the branch fix/keep-backcompat)
  2. Duplicate or expose methods that build data directories using experiment_class (similar to how affiliation works below):
@property
    def data_dir(self) -> Path:

        # Directory where the current experiment will be stored.
        # Computed from the configured experiment
        # TODO! Do we need the support for a custom directory

        path = Path(self.base_data_dir) / self.affiliation / self.PI_name / self.year / self.project_id / self.today
        return path
    

    @property
    def work_dir(self) -> Path:
        # Directory where output of data analysis will be stored
        path = Path(self.base_data_dir) / self.affiliation / self.PI_name / self.year / self.project_id
        return path

@erikfrojdh or may be you have a cleaner solution?

@kferjaoui kferjaoui marked this pull request as draft December 11, 2025 14:24
@kferjaoui kferjaoui changed the title Update JFJwrapper + add affiliation field Add affiliation field / Backcompaibility (?) Dec 12, 2025
@kferjaoui kferjaoui changed the title Add affiliation field / Backcompaibility (?) Add affiliation field / Backcompatibility (?) Dec 12, 2025
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