... | ... | @@ -26,7 +26,7 @@ cd kea |
|
|
|
|
|
# Working on an issue
|
|
|
|
|
|
- Once you start working on an issue, assign the issue to yourself. You should also assign Doing label. There are two ways of doing that. First, you can add the label manually when browsing an issue. Alternatively, you can go to https://gitlab.isc.org/isc-projects/kea/-/boards and move your issue to appropriate stage.
|
|
|
- Once you start working on an issue, assign the issue to yourself. You should also assign Doing label. There are two ways of doing that. First, you can add the label manually when browsing an issue. Alternatively, you can go to https://gitlab.isc.org/isc-projects/kea/-/boards and move your issue to appropriate stage.
|
|
|
|
|
|
- Open the issue page, e.g. https://gitlab.isc.org/isc-projects/kea/issues/3 and click create a MR. A good trick is to click on the triangle button to get the extended create MR menu. Start the title with `Draft:` or `WIP:` to prevent merging for now. In particular, you can use a shorter branch name. The branch name MUST start with the issue number.
|
|
|
|
... | ... | @@ -76,7 +76,7 @@ Commit logs should be descriptive. They are addressed at developers, so code fam |
|
|
|
|
|
Since we sometimes get code from places outside of our control (MRs on gitlab, PRs on github), we cannot assume the [#Issue number] information will always be available.
|
|
|
|
|
|
We don't do commit squashes in general. Sometimes the reviewer pushes fixes or we get commits from contributors (it's essential to get those preserved. Users being able to point to their code and brag about it is one of the reasons they submit patches).
|
|
|
We don't do commit squashes in general. Sometimes the reviewer pushes fixes or we get commits from contributors (it's essential to get those preserved. Users being able to point to their code and brag about it is one of the reasons they submit patches).
|
|
|
|
|
|
If you like, you can squash your own commits.
|
|
|
|
... | ... | @@ -142,14 +142,14 @@ To set that your local branch should trac a remote branch, use: |
|
|
git branch -u remote_repo/remote_branch local_branch
|
|
|
```
|
|
|
|
|
|
Fun fact: `git pull` is really a shortcut to `git pull origin`. You can do `git pull private` or `git pull github`. The pull itself does two commands: `git fetch origin` and `git merge master origin/master`.
|
|
|
Fun fact: `git pull` is really a shortcut to `git pull origin`. You can do `git pull private` or `git pull github`. The pull itself does two commands: `git fetch origin` and `git merge master origin/master`.
|
|
|
|
|
|
Finally, if you can't be bothered anymore and want to get rid of this multiple repos nonsense, do this:
|
|
|
`git remote remove trac`. It will unassociate your local copy with remote repo.
|
|
|
|
|
|
# Reopens
|
|
|
|
|
|
The usual issue life cycle is as follows: opened by a reporter, a dev looks at the problem and comes up with some code or doc changes, which are later reviewed. If reporter is part of ISC team, he/she is often also a reviewer, but these two roles in principles are different. Once reviewer and dev agree that the code is ready, the change is merged and ticket is closed. However, this process has one flaw: it doesn't take into consideration whether the proposed fix actually addressed the problem raised by the original reporter.
|
|
|
The usual issue life cycle is as follows: opened by a reporter, a dev looks at the problem and comes up with some code or doc changes, which are later reviewed. If reporter is part of ISC team, he/she is often also a reviewer, but these two roles in principles are different. Once reviewer and dev agree that the code is ready, the change is merged and ticket is closed. However, this process has one flaw: it doesn't take into consideration whether the proposed fix actually addressed the problem raised by the original reporter.
|
|
|
|
|
|
The alternative - to ask for confirmation that the original problem is addressed - has many flaws. The reporter may not be skilled enough to know how to pull a branch from git, may be unwilling or unable to compile it or more likely be simply unresponsive. This would leave us with many tickets stuck in almost-done state. So we chose to use the approach of merging and closing, with reopen as an escape clause. If the reporter didn't confirm that the fix working, it's good to add something like "We think this should fix the original problem. If it doesn't work or you disagree with the solution, please reopen". This covers 99% of the cases. The text below discusses the remaining 1%.
|
|
|
|
... | ... | @@ -246,4 +246,4 @@ kea-1.9.1 |
|
|
const int KEA_HOOKS_VERSION = 10901;
|
|
|
```
|
|
|
|
|
|
This means that up to 99 development versions will be supported before releasing a stable version. |
|
|
\ No newline at end of file |
|
|
This means that up to 99 development versions will be supported before releasing a stable version. |