You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: DEV_WORKFLOW.md
+23-23Lines changed: 23 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,20 @@
1
1
# **WaveDiff Development Plan**
2
2
3
3
## 1. **Define a Milestone**
4
-
4
+
5
5
6
6
***Purpose**: Milestones mark the completion of project cycles and achievement of predefined goals. A milestone is a timeline point marking the end of a project cycle, where a set of goals defined at the start of the cycle have been completed. Goals could be tasks associated with feature development, testing phase completion, etc. List & Open issues.
7
-
7
+
8
8
***Types of Milestones:** Differentiate between major, minor and patch release releases to track progress effectively.
9
-
9
+
10
10
11
11
Make a milestone related to a release on possibly a minor release schedule (e.g. monthly schedule). Differentiate between the different types of releases (minor, major, patch).
12
12
13
13
## 2. **Git Workflow Branching Model (Made with**[**mermaid**](https://mermaid.js.org)**)**
14
14

15
15
16
16
***main**: Stores official release history with tagged version numbers (see top row in the diagram above).
17
-
17
+
18
18
***develop**: This branch is the integration branch for features.
19
19
20
20
***feature**: Branch off of `develop` for new feature development. Features get merged to `develop` (never to main).
@@ -30,7 +30,7 @@ Make a milestone related to a release on possibly a minor release schedule (e.g.
30
30
31
31
32
32
## 3. **New Branch naming conventions**
33
-
33
+
34
34
35
35
Branches created for the purpose of a Pull Request should be directly related to an open issue within the project’s issue tracker. This ensures that all code changes are tied to specific tasks or features, facilitating better organisation and tracking of contributions. Below are the branch naming conventions:
36
36
@@ -51,41 +51,41 @@ Branches created for the purpose of a Pull Request should be directly related to
51
51
Replace with the corresponding issue number and provide a brief description of the changes in \`short\_description\`.
52
52
53
53
## 4. **Feature branch creation**
54
-
54
+
55
55
56
56
* Pull the latest changes from the remote repository
57
57
58
58
* Checkout `develop`
59
59
60
60
* Create a new feature branch
61
-
61
+
62
62
* Ensure the feature branch’s commits align with the defined scope
63
-
63
+
64
64
65
65
**Tip**: Keep feature branch development focused on the defined scope outlined in the corresponding issue. Avoid introducing unrelated changes. Instead, open a new issue for out-of-scope features or bugs, creating a separate branch for their development.
66
66
67
67
## 5. **Completion of development**
68
-
68
+
69
69
70
70
* Run training and metrics validation tests locally to confirm no breaking behaviour or errors were introduced. Include test reports as per the PR template.
71
71
72
72
* Open a Pull Request to start the review process, ensuring to map the branch correctly to the target branch (i.e. `feature` -> `develop` or `hotfix` -> `main`).
73
73
74
74
* In the description of the Pull Request, explicitly state whether the PR resolves or closes an open issue by using one of the following formats:
75
-
75
+
76
76
* "Solves #"
77
-
77
+
78
78
* "Closes #"
79
-
79
+
80
80
81
81
Example: "Solves #12345" or "Closes #8679".
82
82
83
83
* Ensure that the PR meets the defined requirements and passes Continuous Integration (CI) tests.
84
-
84
+
85
85
* Assign a reviewer, assign yourself as assignee, select the correct project, choose the correct label that describes the nature of the issue (e.g. bug, enhancement, etc), choose Milestone if applicable if the issue is associated with a specific milestone or target release.
86
-
86
+
87
87
* Address reviewer feedback in threads and iterate as needed, implementing the requested changes or explaining why the task is implemented in the manner it is. Respect the rule: Whoever opens the thread/conversation in the Pull Request is responsible for closing it.
88
-
88
+
89
89
90
90
## 6. **Merging Pull Requests**
91
91
@@ -126,9 +126,9 @@ This separation keeps release notes accurate and enables clean backports
126
126
## 8. **Preparing for a Release**
127
127
128
128
129
-
*Each milestone targets a release (feature, patch, etc).
129
+
* Each milestone targets a release (feature, patch, etc).
130
130
131
-
* Open a PR from `develop` to `release/vX.Y.Z` upon completing a milestone
131
+
*Create release branch with `git checkout -b release/vX.Y.Z develop` upon completing a milestone
132
132
133
133
* Collect changelog fragments and generate release notes using:
134
134
@@ -138,28 +138,28 @@ This separation keeps release notes accurate and enables clean backports
138
138
* Ensure all checklist items for the release are completed.
139
139
140
140
* Merge the PR into main and tag the release.
141
-
141
+
142
142
143
143
## 9. **Continuous Improvement**
144
144
145
145
146
146
* Regularly review and refine the workflow based on team feedback and lessons learned.
147
-
147
+
148
148
* Encourage collaboration and communication among team members to streamline processes and enhance productivity.
149
-
149
+
150
150
151
151
## 10. **Documentation and Training**
152
152
153
153
154
154
* Maintain up-to-date documentation outlining the development workflow and procedures.
155
-
155
+
156
156
* Provide training to new team members and ensure existing members are familiar with the workflow and best practices.
157
157
158
158
159
159
## 11. **Automation and Tooling**
160
160
161
161
162
162
* Explore automation tools to streamline repetitive tasks, such as testing, code formatting, and deployment.
163
-
163
+
164
164
* Integrate with CI/CD pipelines for automated testing and deployment processes.
- A differentiable PSF model entirely built in [Tensorflow](https://github.com/tensorflow/tensorflow).
14
14
- A [numpy-based PSF simulator](https://github.com/CosmoStat/wf-psf/tree/dummy_main/src/wf_psf/sims).
15
15
- All the scripts, jobs and notebooks required to reproduce the results in [arXiv:2203.04908](http://arxiv.org/abs/2203.04908) and [arXiv:2111.12541](https://arxiv.org/abs/2111.12541).
0 commit comments