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: _overviews/contribute/bug-reporting-guide.md
+15-14Lines changed: 15 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ partof: scala-contribution
6
6
overview-name: Contributing to Scala
7
7
---
8
8
9
-
The Scala compiler and standard library bug tracker is located at [https://github.com/scala/bug](https://github.com/scala/bug). Before you submit a bug make sure that it is certainly a bug by following instructions in *Is it a Bug?*.
9
+
The Scala compiler and standard library bug tracker is located at [https://github.com/scala/bug](https://github.com/scala/bug), and for Scala 3, it is located at [github.com/lampepfl/dotty](https://github.com/lampepfl/dotty/issues). Before you submit a bug make sure that it is certainly a bug by following instructions in *Is it a Bug?*.
10
10
11
11
## Is it a Bug?
12
12
@@ -22,7 +22,6 @@ If your issue is related to any of the following external projects, make sure to
The following are generally considered to be bugs:
@@ -53,10 +52,10 @@ In general, if you find yourself stuck on any of these steps, asking on [Scala C
53
52
- For compiler bugs use the [Compiler Category](https://contributors.scala-lang.org/c/compiler).
54
53
55
54
* Examples of exceptions reported by the compiler which usually are not bugs:
56
-
1.`StackOverflowError` is typically not a bug unless the stacktrace involves the internal packages of the compiler (like `scala.tools.nsc...`). Try to increase the Java stack size (`-Xss`), in most of the cases it helps.
55
+
1.`StackOverflowError` is typically not a bug unless the stacktrace involves the internal packages of the compiler (like `scala.tools.nsc...`, or `dotty.tools.dotc...`). Try to increase the Java stack size (`-Xss`), in most of the cases it helps.
57
56
2.`AbstractMethodError` can occur when you did not recompile all the necessary Scala files (build tools, like `sbt`, can prevent that from happening) or you are mixing external libraries compiled for different Scala versions (for example one uses `2.10.x` and the other `2.11.x`).
58
57
59
-
## Reporting Confirmed Bugs is a Sin
58
+
## Please Check Before Reporting a Bug
60
59
61
60
Before reporting your bug, make sure to check the issue tracker for other similar bugs. The exception name or a compiler phase are the best keywords to search for. If you are experiencing unexpected behavior search for method/class names where it happens. Your issue might already be reported, and a workaround might already be available for you take advantage of. If your issue *is* reported, be sure to add your test case as a comment if it is different from any of the existing ones.
62
61
@@ -68,7 +67,7 @@ If you cannot find your issue in the issue tracker, create a new bug. The detail
68
67
69
68
Please make sure to fill in as many fields as possible. Make sure you've indicated the following:
70
69
71
-
1.**Exact Scala version** that you are using. For example, `2.10.1` or `2.11.0-RC`. If the bug happens in multiple versions indicate all of them.
70
+
1.**Exact Scala version** that you are using. For example, `2.13.8` or `3.1.2-RC1`. If the bug happens in multiple versions indicate all of them.
72
71
2.**The component** that is affected by the bug. For example, the Standard Library, Scaladoc, etc.
73
72
3.**Labels** related to your issue. For example, if you think your issue is related to the typechecker, and if you have successfully minimized your issue, label your bug as "typechecker" and "minimized". Issue tracker will suggest names for existing labels as you type them so try not to create duplicates.
74
73
4.**Running environment**. Are you running on Linux? Windows? What JVM version are you using?
@@ -78,12 +77,14 @@ In order for us to quickly triage the bug that you've found, it's important that
78
77
### Description
79
78
80
79
In the description of your issue, be as detailed as you can. Bug reports which have the following information included are typically understood, triaged, and fixed very quickly:
81
-
82
-
1. Include a test case (minimized if possible) enabling us to reproduce the problematic behavior. Include your test case (and output) in proper formatting `{code}` blocks:
83
-
84
-
{code}Here you put your classes{code}
85
-
86
-
2. The expected output.
87
-
3. The actual output, including the stacktrace.
88
-
4. Related discussion on the mailing lists, if applicable.
89
-
5. If you have already looked into the issue provide interesting insights or proposals for fixing the issue.
80
+
1. Include a test case (minimized if possible) enabling us to reproduce the problematic behavior. Include your test
81
+
case (and output) in properly formatted code blocks:
82
+
~~~
83
+
```scala
84
+
List(1, 2, 3).map(x => x + 1)
85
+
```
86
+
~~~
87
+
2. The expected output.
88
+
3. The actual output, including the stacktrace.
89
+
4. Related discussion on the mailing lists, if applicable.
90
+
5. If you have already looked into the issue provide interesting insights or proposals for fixing the issue.
|[Scala Contributors][contrib-forum]| Get a peek into the inners of the Scala compiler. |
12
+
|[Report an Issue][bug-reporting-guide]| File a bug report or a feature request. |
13
+
|[Community Issues][community-tickets]| Get cracking on some easy to approach issues. |
14
+
|[Scala 2 Hacker's Guide][hackers]| Learn to write good code and improve your chances of contributing to the Scala galaxy. |
15
+
|[Scala 3 Contributing Guide][scala3-hackers]| Walkthrough contributing to the Scala 3 compiler, along with a guide to compiler internals. |
32
16
33
17
34
18
@@ -52,11 +36,13 @@ which allows us to ensure that all code submitted to the project is
52
36
unencumbered by copyrights or patents.
53
37
54
38
### Bug-fix Check List
39
+
> Originally these steps cover the [Scala 2 compiler](https://github.com/scala/scala), but they also are relevant to
40
+
> the [Scala 3 compiler](https://github.com/lampepfl/dotty).
55
41
56
42
This is the impatient developer's checklist for the steps to submit a bug-fix pull request to the Scala project. For more information, description and justification for the steps, follow the links in that step. Further specific instructions for the release of Scala you are targeting can be found in the `CONTRIBUTING.md` file for that [GitHub branch](https://github.com/scala/scala)
57
43
58
44
1.[Select a bug to fix from GitHub](/overviews/contribute/index.html#community-tickets), or if you found the bug yourself and want to fix it, [create a GitHub issue](/overviews/contribute/bug-reporting-guide.html) (but please
59
-
[make sure it's not a duplicate](/overviews/contribute/bug-reporting-guide.html#reporting-confirmed-bugs-is-a-sin)).
45
+
[make sure it's not a duplicate](/overviews/contribute/bug-reporting-guide.html#please-check-before-reporting-a-bug)).
60
46
2. Optional ([but recommended](/overviews/contribute/scala-internals.html/#why-its-a-good-idea)), announce your intention to work on the bug on [Scala Contributors](https://contributors.scala-lang.org/). After all, don't you want to work on a team with
61
47
[these friendly people](/overviews/contribute/hacker-guide.html#1-connect) - it's one of the perks of contributing.
62
48
3.[Fork the Scala repository](/overviews/contribute/hacker-guide.html#fork) and clone your fork (if you haven't already).
@@ -70,7 +56,7 @@ https://github.com/scala/scala#git-hygiene). For bug fixes, a single commit is r
70
56
10.[Work with a reviewer](https://github.com/scala/scala#reviewing) to [get your pull request merged in](/overviews/contribute/hacker-guide.html#review).
71
57
11. Celebrate!
72
58
73
-
Need more information or a little more hand-holding for the first one? We got you covered: take a read through the entire [Hacker Guide](/overviews/contribute/hacker-guide.html) for an example of implementing a new feature (some of the steps can be skipped for bug fixes, this will be obvious from reading it, but many of the steps here will help with bug fixes too).
59
+
Need more information or a little more hand-holding for the first one? We got you covered: take a read through the entire [Hacker Guide][hackers] (or the [equivalent Scala 3 Contributing Guide][scala3-hackers]) for an example of implementing a new feature (some of the steps can be skipped for bug fixes, this will be obvious from reading it, but many of the steps here will help with bug fixes too).
74
60
75
61
### Larger Changes, New Features
76
62
@@ -79,4 +65,10 @@ and on the implementation plan. Announce the change
79
65
on the [Scala Contributors](https://contributors.scala-lang.org/) mailing list and get developer feedback. For really complex changes, a [Scala Improvement Process (SIP)](https://docs.scala-lang.org/sips/) document might be required, but the first step is always to discuss it on the mailing list and if a SIP is required, that will be discussed on the mailing list.
80
66
81
67
Contributions, big or small, simple or complex, controversial or undisputed, need to materialize as patches against
82
-
the Scala project source tree. The [hacker guide](/overviews/contribute/hacker-guide.html) will explain how to materialize your idea into a full-fledged pull request against the Scala code base.
68
+
the Scala project source tree. The hacker's guides ([Scala 2][hackers], or [Scala 3][scala3-hackers]) will explain how to materialize your idea into a full-fledged pull request against the Scala code base.
Copy file name to clipboardExpand all lines: _overviews/contribute/index.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ When contributing, please follow:
37
37
38
38
### Community Tickets
39
39
40
-
All issues can be found in the [Scala bug tracker](https://github.com/scala/bug). Most issues are labeled
40
+
All issues can be found in the [Scala bug tracker](https://github.com/scala/bug), or the [Scala 3 issue tracker](https://github.com/lampepfl/dotty/issues). Most issues are labeled
41
41
to make it easier to find issues you are interested in.
0 commit comments