Closed aplteam closed 6 years ago
Initial thoughts: Obviously what I'm describing is the way acre happens to be at 2018-07-25 10.04 and none of it is set in stone.
startup
in the project space if the project is to be tracked and is the top level project opened by ⎕SE.UCMD
rather than as a dependency of another project.init
could not be executed before 0. Were it executed any time before 3 there is still a chance that acre could give up at a later stage.
At what point do you imagine before acre does anything in terms of opening a project?
Would init
be executed conditionally with the same provisos as startup
?
In what way would this differ from enhancing the dependency code to recognise "packages" vs "projects" along lines proposed by @PaulMansour and @e9gille?
That would allow to load stuff, for example via a packet manager, the project to be opened depends on, It might be a useful feature for other purposes as well.
Package dependencies must be resolved upfront before Acre loads anything. Given a project that defines its dependencies in a metadata file, the package manager is asked to build up a dependency tree and download any missing dependencies. Acre is then used to load the code into the active workspace. I don't think the feature you are requesting is required for package support.
I was intrigued by the idea to have that Init
function available which would allow me to do it one way now and a different way later.
However, I realize that I can execute as well my own user command ]foo
doing als the prep upfront and then call ]acre.OpenProject, therefore I withdraw my request,
We already have a kind of
⎕LX
function in acre. That function is executed after acre has done its job.I am proposing an additional
Init
. If that is found in the acre config file it should be executed before acre does anything in terms of opening a project,That would allow to load stuff, for example via a packet manager, the project to be opened depends on, It might be a useful feature for other purposes as well.