@@ -20,25 +20,45 @@ based only on the basic mechanisms provided in the main Cantera repository.
2020
2121## Adding files for new examples
2222
23- To implement an example requiring a new input file, the following steps should be
24- followed:
23+ To implement an example requiring a new input file, make sure to have forked both
24+ ` Cantera/cantera ` and ` Cantera/cantera-example-data ` repositories. Using the local Git
25+ checkouts of your personal fork, the following steps should be followed:
2526
27+ ### Create example and input file(s)
28+
29+ - Create a new feature branch in your personal fork of the ` cantera ` repository.
2630- Create your new example in your local Git checkout of Cantera.
27- - Create the new input file in the ` data/example_data ` subdirectory.
28- - Commit the example to a new feature branch.
29- * :warning : Make sure you _ do not_ add the input file or an update of the
31+ - In the ` data/example_data ` subdirectory (a Git submodule), configure your fork of
32+ ` cantera-example-data ` as a remote and create a feature branch for your input file.
33+ - Create the new input file(s) in the ` data/example_data ` subdirectory.
34+ - Test that your example performs as expected locally.
35+
36+ ### Commit new files to your forks
37+
38+ - From within the ` data/example_data ` subdirectory, commit the input file(s) to your
39+ feature branch in the ` cantera-example-data ` repository.
40+ - From the root folder, commit the example to a new feature branch and push to your
41+ feature branch in the ` cantera ` repository.
42+ * :warning : Make sure you _ do not_ add the input file(s) or an update of the
3043 ` example_data ` submodule to this branch.
31- - Commit the input file to a feature branch in the ` example_data ` submodule.
32- - Create a pull request for your example in the main Cantera repository
44+
45+ ### Create pull requests on GitHub
46+
47+ - Create a pull request for your example in the main Cantera repository.
48+ * You should see multiple failing jobs. For new Python examples, descriptions start
49+ with ` CI / Run Python 3.XX examples on ubuntu-YY.ZZ ` for tests with different
50+ Python and ubuntu versions. For examples using other Cantera APIs, multiple other CI
51+ jobs may fail.
3352- Create a pull request in the ` cantera-example-data ` repository which includes the
3453 reference ` Cantera/cantera#XYZ ` in the title where ` XYZ ` is the number of your PR in
3554 the main repository.
36- * The CI process in the main repository will automatically check out this submodule
37- PR so the new input file is available for those jobs that run the examples.
38- * You should see one failing job, with the description `Linters / Check for unmerged
39- example-data pull request (pull_request)`. This is a reminder for maintainers for
40- the remaining steps that need to be completed before merging the PR.
41- - Once PR reviews are completed and all expected tests pass, the PR on the
42- ` cantera-example-data ` can be merged.
55+ - Subsequent pushes to your feature branch on the main PR will result in the following:
56+ * You should see one additional failing CI job, with the description `Linters / Check
57+ for unmerged example-data pull request (pull_request)`. This is a reminder for
58+ maintainers for the remaining steps that need to be completed before merging the PR.
59+ - Once the PR review of the ` cantera-example-data ` branch is completed, it will be
60+ merged by maintainers.
4361- Finally, the PR branch for the main repository can be updated to include the update
44- of the ` example_data ` submodule, and this PR can be merged.
62+ of the ` example_data ` submodule, which should be reset to the official Cantera
63+ ` cantera-example-data ` repository. At this point, all CI jobs should pass. Once the
64+ PR review is completed, the PR is ready to be merged.
0 commit comments