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: CONTRIBUTING.md
+13-5Lines changed: 13 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,24 +50,25 @@ If you've never submitted a pull request before, it can take a little while to b
50
50
51
51
* Create a [GitHub account](https://github.com/signup/free).
52
52
53
+
* Fork whatever repository you plan to commit to by clicking on the "Fork" button at the upper-right of the home page.
54
+
53
55
* If you plan to fix a bug, feel free to first report the bug as an issue on its own.
54
56
In the text, you can mention whether you're planning on addressing it yourself.
55
-
*Pro tip*: if you do submit a pull request to fix it, put "Fixes #<issuenumber>" in the commit message and it will close automatically when your pull request is merged.
56
57
57
58
If you're concerned your change might be controversial, you can also use an issue to propose your change in general terms and discuss it before implementation.
58
59
59
-
* Fork whatever repository you plan to commit to by clicking on the "Fork" button at the upper-right of the home page.
60
-
61
60
* If you haven't already implemented your changes, check the package out for development: hit `]` in the Julia REPL and then type (for example) `dev Images`.
62
61
You'll get a copy of the full repository in your `~/.julia/dev` folder. See the [package manager documentation](https://julialang.github.io/Pkg.jl/v1/) for further details.
63
62
64
63
* Make your changes. Generally you should be working on a branch, so your work doesn't conflict with ongoing development in the `master` branch. Ensure you follow the [Julia style guide](https://docs.julialang.org/en/v1/manual/style-guide/index.html) for your contribution.
65
64
66
65
* Test your changes. We aspire to have test coverage for every bit of "user visible" functionality. Tests are stored, appropriately, in the `test/` folder of each package. You can run existing tests yourself and add new ones. Sometimes testing is more work than the actual change itself, but having tests ensures that no well-meaning future developer will accidentally mess up your functionality---it's worth it! *"A fix is for today. A test is forever."*
67
66
67
+
**Pro tip*: if your change fixes a bug, put "Fixes #<issuenumber>" in the commit message and it will close automatically when your pull request is merged.
68
+
68
69
* Submit your changes up to your fork and then submit a pull request---whoopee!
69
70
70
-
* See what happens to the automated tests that run on Travis and/or AppVeyor. If there are errors, check the logs and see whether they look like they are related to your changes; if so, try to fix the problem by adding new commits to your pull request. Once the tests pass, hooray! :tada:
71
+
* See what happens to the automated tests that run via GitHub Actions. If there are errors, check the logs and see whether they look like they are related to your changes; if so, try to fix the problem by adding new commits to your pull request. Once the tests pass, hooray! :tada:
71
72
72
73
* Relax and wait for feedback. We try to review contributions quickly and courteously. But we are human, and sometimes we get busy with other things or fail to notice an email; if it's been a while since you submitted your pull request, try posting a polite reminder about the existence of your pull request.
73
74
@@ -77,6 +78,14 @@ You'll get a copy of the full repository in your `~/.julia/dev` folder. See the
77
78
78
79
From the whole team, thanks in advance for your contribution!
79
80
81
+
### Making a breaking release
82
+
83
+
- delete the old tests in `test/deprecated.jl`
84
+
- delete the code in `src/deprecations.jl` that is marked as being from the previous release (there should be a section marked, e.g., `## v0.26 deprecations`)
85
+
- ensure that any new deprecations (including deprecated tests) are in place. Note that tests that generate depwarns should be in `test/deprecated.jl`, as these are skipped if `--depwarn=error`.
86
+
- run the existing tests with `--depwarn=error` and check that tests pass. If they don't, consider running with `--depwarn=yes` and follow the hints about fixing the deprecations.
87
+
- update NEWS.md
88
+
80
89
### Contribution tips
81
90
82
91
*[Revise](https://github.com/timholy/Revise.jl) is a package that
@@ -88,5 +97,4 @@ your changes.
88
97
* Debuggers can help you get to the root of a problem. There are many choices and interfaces:
89
98
+[VSCode](https://code.visualstudio.com/docs/languages/julia#_debugging) has a polished GUI for debugging
90
99
+[Debugger](https://github.com/JuliaDebug/Debugger.jl) has a polished command-line interface
91
-
+[Rebugger](https://github.com/timholy/Rebugger.jl) has an innovative but somewhat less-polished command-line interface
92
100
+[Infiltrator](https://github.com/JuliaDebug/Infiltrator.jl) offers more limited debugging, but often it's precisely what you need while avoiding the performance penalties that some of the other options suffer from.
0 commit comments