Skip to content

Conversation

@stephane-cea
Copy link
Collaborator

Explanation suggestion for compatibility mode and standard mode, which will later be referenced throughout the documentation.

@minijackson
Copy link
Collaborator

minijackson commented Jul 18, 2025

I'm a bit wary of calling it a "mode". It's not like EPNix has a compatibility mode, and a standard mode. It might give the impression that you can only be either in "Compatibility mode" and not be able to use the "Standard mode", and vice versa, but in reality, you can mix and match Apps and tops, without any issue.

In my head, it's more like "you have an App in IEE-style, here's how to integrate it in an EPNix top".

As a side note, since the great refactoring, eregen-git doesn't exist anymore (eregen-git in my opinion was a mistake, due to me being new to EPICS).

From a quick read of "EPNix pour les gens simples", we have:

  • Documenting how to integrate an existing IEE-style App ☑️
  • How to convert an IEE-style App to an EPICS top ☑️
  • How to --override-input ☑️
    • It's a useful skill for any flake input, I think it can be re-said specifically for IEE-style apps
  • How to create an IEE-style App. ❎
    • I'm not sure we should encourage people to do this. But maybe sometimes we have to? I'm not sure…
  • How to edit an IEE-style App to add EPICS support modules to IEE-style apps ❎
    • Usually when an IEE-style app exists, it's already done
    • Apart from having to commit, push the app, and nix flake update the top (which you have to do for any change to the app), the integration should be the same

Last note: Did you ever see IEE-style apps anywhere in the EPICS community? In my experience it's either tops, or something completely different, like E3, etc.
If it's only in IEE, I think it's better to own it and call it IEE-style, else people outside the CEA will read "compatibility mode" in another EPNix article, and not have the context to figure out what that means.

@minijackson minijackson added the documentation Improvements or additions to documentation label Jul 18, 2025
@stephane-cea
Copy link
Collaborator Author

Last note: Did you ever see IEE-style apps anywhere in the EPICS community? In my experience it's either tops, or something completely different, like E3, etc. If it's only in IEE, I think it's better to own it and call it IEE-style, else people outside the CEA will read "compatibility mode" in another EPNix article, and not have the context to figure out what that means.

If I remember correctly, then at least SPIRAL2 (at GANIL) and IFMIF (at Rokkasho) are using App based projects.

@stephane-cea
Copy link
Collaborator Author

stephane-cea commented Dec 8, 2025

I'm a bit wary of calling it a "mode". It's not like EPNix has a compatibility mode, and a standard mode. It might give the impression that you can only be either in "Compatibility mode" and not be able to use the "Standard mode", and vice versa, but in reality, you can mix and match Apps and tops, without any issue.

In my head, it's more like "you have an App in IEE-style, here's how to integrate it in an EPNix top".

There is a specific note to adrress this, in this merge request:

Note: You can develop a Top in standard mode
and import independently versioned Apps and Sups
(which were developed in compatibility mode).
Conversely, you can also develop in compatibility mode and import standard Tops.

Isn't it enough?

Maybe we can also replace mode by style, Compatibility mode by App-project style, Standard mode by Top-project style, etc?

@stephane-cea
Copy link
Collaborator Author

As a side note, since the great refactoring, eregen-git doesn't exist anymore (eregen-git in my opinion was a mistake, due to me being new to EPICS).

There is no reference of eregen in this merge request, so OK

@stephane-cea
Copy link
Collaborator Author

From a quick read of "EPNix pour les gens simples", we have:

* Documenting how to integrate an existing IEE-style App ☑️

* How to convert an IEE-style App to an EPICS top ☑️

* How to `--override-input` ☑️
  
  * It's a useful skill for any flake input, I think it can be re-said specifically for IEE-style apps

* How to create an IEE-style App. ❎
  
  * I'm not sure we should encourage people to do this. But maybe sometimes we have to? I'm not sure…

* How to edit an IEE-style App to add EPICS support modules to IEE-style apps ❎
  
  * Usually when an IEE-style app exists, it's already done
  * Apart from having to commit, push the app, and `nix flake update` the top (which you have to do for any change to the app), the integration should be the same

I'm not what you are saying here and how it relates to this merge request. Are you saying we should drop App style altogether?

@minijackson minijackson added this to the 25.11 milestone Dec 9, 2025
@minijackson
Copy link
Collaborator

Sorry, I definitely wasn't clear in my response.

What do you think, instead of documenting the "compatibility mode" and "standard mode" as a special feature of EPNix, we write a user guide on how to package an IEE-style App in an EPNix top.

I'm not what you are saying here and how it relates to this merge request. Are you saying we should drop App style altogether?

Kinda, yes. I was doing a survey of the "EPNix pour les gens simples" documentation to see what we need to document for IEE-style Apps. I think there's not much IEE-specific content, so we can put everything in one or two guides. This way, we don't need to create a new "compatibility mode" concept, and users that have IEE apps still get to have their documentation.

What do you think?

@minijackson minijackson removed this from the 25.11 milestone Jan 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants