@@ -87,6 +87,12 @@ running the following command inside it.
8787pixi run --frozen dev-setup
8888```
8989Follow the prompts to configure the set-up to your liking.
90+ Among other configurations, this set-up clones the other Auto-Mech repositories
91+ into the parent directory of your mechdriver repository.
92+ ```
93+ ls ..
94+ autochem autofile autoio mechanalyzer mechdriver
95+ ```
9096If you run into issues, see [Appendix C](#appendix-c-manual-developer-setup) for
9197manual set-up instructions.
9298
@@ -107,6 +113,22 @@ For more information on activating Pixi environments, see
107113You can then run any of the examples [in the `examples/` directory](./examples/)
108114as [described above](#run).
109115
116+ ### Git Helper Tasks
117+
118+ The following Pixi tasks are available to facilitate Git operations with your
119+ five local Auto-Mech repositories:
120+
121+ 1. `pixi run pull`. This does a `git pull --rebase upstream dev` on all five
122+ repositories to update them against the central Auto-Mech upstream.
123+ 2. `pixi run git <commands>`. This runs whatever `git` commands you pass it in
124+ all five repositories.
125+
126+ For example, a common operation you might wish to do is:
127+ ```
128+ pixi run pull # Rebase each repo against upstream
129+ pixi run git push origin dev # Push each repo to origin
130+ ```
131+
110132### Test
111133
112134> [!TIP]
@@ -178,7 +200,7 @@ override the commit hash check on GitHub Actions and allow your tests to pass.
178200
179201> [!WARNING]
180202> Versions are now automatically handled by the BumpVer versioning tool.
181- > Therefore, do not manually change the version of a given package in its
203+ > Therefore, ** do not** manually change the version of a given package in its
182204> `pyproject.toml`. Instead, the version will be automatically updated by
183205> triggering the release workflow as described below.
184206
@@ -195,22 +217,23 @@ This will (1.) bump the version number, (2.) publish the conda package to the
195217[`auto-mech` channel](https://anaconda.org/Auto-Mech/), and (3.) create an
196218associated GitHub release.
197219
198- For now, if you have updated the conda package for a lower-level module such as
199- `autoio` and want these changes to take effect in MechDriver, you will also need
200- to update the following two tables in the MechDriver `pyproject.toml`.
220+ If you have done this for one or more of the lower-level repositories, you will
221+ also need to update the MechDriver `pyproject.toml` file with their new version
222+ numbers.
223+ You can do so as follows:
201224```
202- [ tool.pixi.package.run-dependencies]
203- ...
204- autoio = "==<new version number >"
205-
206- [ tool.pixi.dependencies]
207- ...
208- autoio = "==<new version number >"
225+ pixi run pull # Pull the release commits from upstream
226+ pixi run update # Update the version numbers in pyproject.toml
209227```
210- These two dependency tables **must match exactly** to ensure that the packaged
211- version of the code matches the tested version.
228+ This will update the `package.run-dependencies` and `dependencies` tables in
229+ your `pyproject.toml` with the new version numbers of the lower-level
230+ repositories and update the lockfile.
231+ If you make any manual changes to these tables,
232+ **make sure that they match exactly**.
233+ This is necessary to ensure that the packaged version of the code matches the
234+ tested version.
212235
213- ## Subtask Parallelization
236+ ## Experimental Feature: Subtask Parallelization
214237
215238As an experimental feature in MechDriver, you can parallelize across subtasks in
216239your workflow with
0 commit comments