blob: f20d0c41bafee2947bfb4b86008dd3346205bbba [file] [log] [blame]
Stephan Herrmann7b7062f2010-04-01 19:56:59 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
4 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5 <meta name="Author" content="IBM">
6 <title>JDT/Core Release Notes 3.6</title>
7 <link rel="stylesheet" href="jdt_core_style.css" charset="iso-8859-1" type="text/css">
9<body text="#000000" bgcolor="#FFFFFF">
10<table border=0 cellspacing=5 cellpadding=2 width="100%" >
11 <tr>
12 <td align="left" width="72%" class="title1">
13 <font size="+3"><b>jdt core - build notes 3.6 stream</b></font>
14 </td>
15 </tr>
16 <tr><td align="left" width="72%" class="title2"><font size="-2">Java development tools core</font></td></tr>
17 <tr><td>&nbsp;</td></tr>
18 <tr>
19 <td class="title3">
20 <font size="-1">
21 Here are the build notes for the Eclipse JDT/Core plug-in project
22 <a href=""><b>org.eclipse.jdt.core</b></a>,
23 describing <a href="" target=new>bug</a> resolution and substantial changes in the <a href=""><b>HEAD</b></a> branch.
24 For more information on 3.6 planning, please refer to <a href="">JDT/Core release plan</a>,
25 the next <a href="">milestone plan</a>,
26 the overall <a href="">official plan</a>,
27 or the <a href="">build schedule</a>.
28 This present document covers all changes since Release 3.5 (also see a summary of <a href="">API changes</a>).
29 <br>Maintenance of previous releases of JDT/Core is performed in parallel branches:
30 <a href="">R3.5.x</a>,
31 <a href="">R3.4.x</a>,
32 <a href="">R3.3.x</a>,
33 <a href="">R3.2.x</a>,
34 <a href="">R3.1.x</a>,
35 <a href="">R3.0.x</a>,
36 <a href="">R2.1.x</a>,
37 <a href="">R2.0.x</a>,
38 <a href="">R1.0.x</a>.
39 </font>
40 </td>
41 </tr>
Stephan Herrmannd5c3cc62010-05-30 17:34:25 +000043<a name="v_A56"></a>
45Eclipse Platform Build Notes<br>
46Java development tools core</h1>
47Eclipse SDK 3.6RC3 - May 27, 2010 - 3.6.0 RC3
48<br>Project org.eclipse.jdt.core v_A56
49(<a href="">cvs</a>).
50<h2>What's new in this drop</h2>
52<h3>Problem Reports Fixed</h3>
53<a href="">313890</a>
54Migration guide to 3.6 for containers with MANIFEST-referred entries
55<br><a href="">313965</a>
56Breaking change in classpath container API
58<a name="v_A55"></a>
60Eclipse Platform Build Notes<br>
61Java development tools core</h1>
62Eclipse SDK 3.6RC3 - May 25, 2010
63<br>Project org.eclipse.jdt.core v_A55
64(<a href="">cvs</a>).
65<h2>What's new in this drop</h2>
67<h3>Problem Reports Fixed</h3>
68<a href="">313706</a>
69Replace ie. with i.e. in jdt.core documentation
Stephan Herrmann8f4b3212010-05-22 16:38:56 +000071<a name="v_A54"></a>
73Eclipse Platform Build Notes<br>
74Java development tools core</h1>
75Eclipse SDK 3.6RC2 - May 20, 2010 - 3.6.0 RC2
76<br>Project org.eclipse.jdt.core v_A54
77(<a href="">cvs</a>).
78<h2>What's new in this drop</h2>
81Added a new preference to force the formatter to try to keep nested expressions on one line.
83This new preference is controlled with the option:</p>
87 * FORMATTER / Option to wrap outer expressions in nested expressions
88 * - option id: "org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested"
89 * - possible values: { TRUE, FALSE }
90 * - default: TRUE
91 *
92 * This option changes the formatter behavior when nested method calls are encountered.
93 * Since 3.6, the formatter tries to wrap outermost method calls first to have a better output.
94 * For example, let's say we are using the Eclipse built-in profile with a max line width=40+space for tab policy.
95 * Then consider the following snippet:
96 *
97 * public class X01 {
98 * void test() {
99 * foo(bar(1, 2, 3, 4), bar(5, 6, 7, 8));
100 * }
101 * }
102 *
103 * With this new strategy, the formatter will wrap the line earlier, between the arguments of the message call
104 * for this example, and then it will allow to keep each nested call on a single line.
105 * Hence, the output will be:
106 *
107 * public class X01 {
108 * void test() {
109 * foo(bar(1, 2, 3, 4),
110 * bar(5, 6, 7, 8));
111 * }
112 * }
113 *
114 * Important notes:
Stephan Herrmannd5c3cc62010-05-30 17:34:25 +0000115 * 1. This new behavior is automatically activated (i.e. the default value for this preference is {@link #TRUE}).
116 * If the backward compatibility regarding previous versions' formatter behavior (i.e. before 3.6 version) is necessary,
Stephan Herrmann8f4b3212010-05-22 16:38:56 +0000117 * then the preference needs to be set to {@link #FALSE} to retrieve the previous formatter behavior.
118 * 2. The new strategy currently only applies to nested method calls, but might be extended to other nested expressions in future versions
119 *
120 * @see #TRUE
121 * @see #FALSE
122 * @since 3.6
123 */
125See bug <a href="">313524</a> for more details.
129<h3>Problem Reports Fixed</h3>
130<a href="">313524</a>
131[formatter] Add preference for improved lines wrapping in nested method calls
132<br><a href="">313109</a>
133@SuppressWarnings on multiple locals is marked unnecessary if any local is never used
Stephan Herrmann99004722010-05-17 20:32:50 +0000135<a name="v_A53"></a>
137Eclipse Platform Build Notes<br>
138Java development tools core</h1>
139Eclipse SDK 3.6RC1 - May 12, 2010 - 3.6.0 RC1
140<br>Project org.eclipse.jdt.core v_A53
141(<a href="">cvs</a>).
142<h2>What's new in this drop</h2>
144<h3>Problem Reports Fixed</h3>
145<a href="">312326</a>
146IllegalArgumentException using open type dialog
147<br><a href="">310159</a>
148Hang in JavaModel.getExternalTarget(
150<a name="v_A52"></a>
152Eclipse Platform Build Notes<br>
153Java development tools core</h1>
154Eclipse SDK 3.6RC1 - May 11, 2010
155<br>Project org.eclipse.jdt.core v_A52
156(<a href="">cvs</a>).
157<h2>What's new in this drop</h2>
159<h3>Problem Reports Fixed</h3>
160<a href="">157847</a>
161NPE in WildcardBinding.computeUniqueKey during code assist
162<br><a href="">311849</a>
163[quick fix] @SuppressWarnings does not work as expected inside a for loop
165<a name="v_A51"></a>
167Eclipse Platform Build Notes<br>
168Java development tools core</h1>
169Eclipse SDK 3.6RC1 - May 8, 2010
170<br>Project org.eclipse.jdt.core v_A51
171(<a href="">cvs</a>).
172<h2>What's new in this drop</h2>
174<h3>Problem Reports Fixed</h3>
175<a href="">306170</a>
176[perfs] Regression for FullSourceWorkspaceTypeHierarchyTests#testPerfAllTypes()
177<br><a href="">298844</a>
178[formatter] New lines in empty method body wrong behavior
179<br><a href="">311864</a>
180[formatter] NPE with empty {@code }
182<a name="v_A50"></a>
184Eclipse Platform Build Notes<br>
185Java development tools core</h1>
186Eclipse SDK 3.6RC1 - May 6, 2010
187<br>Project org.eclipse.jdt.core v_A50
188(<a href="">cvs</a>).
189<h2>What's new in this drop</h2>
192Added a new preference to switch on/off the usage of the disabling/enabling tags of the formatter.
194This new preference is controlled with the option:</p>
198 * FORMATTER / Option to use the disabling and enabling tags defined respectively by the {@link #FORMATTER_DISABLING_TAG} and the {@link #FORMATTER_ENABLING_TAG} options.
199 * - option id: "org.eclipse.jdt.core.formatter.use_on_off_tags"
200 * - possible values: TRUE / FALSE
201 * - default: FALSE
202 *
203 * @since 3.6
204 */
206See bug <a href="">311582</a> for more details.
210<h3>Problem Reports Fixed</h3>
211<a href="">311617</a>
212[formatter] provide default tags to enable/disable formatter
213<br><a href="">311582</a>
214[formatter] Master switch to enable/disable on/off tags
215<br><a href="">307040</a>
216Search Job with HierarchyScope on Object does not cancel
217<br><a href="">302295</a>
218After associating source folder with rt.jar project refresh takes exceedingly long time.
219<br><a href="">311048</a>
220AbortCompilation propagated from CompilationUnitProblemFinder.process()
222<a name="v_A49"></a>
224Eclipse Platform Build Notes<br>
225Java development tools core</h1>
226Eclipse SDK 3.6RC1 - May 4, 2010
227<br>Project org.eclipse.jdt.core v_A49
228(<a href="">cvs</a>).
229<h2>What's new in this drop</h2>
231<h3>Problem Reports Fixed</h3>
232<a href="">310811</a>
233[perfs] Big regression on FullSourceWorkspaceFormatterTests#testFormatDefaultBigFile()
Stephan Herrmann6c186a42010-04-27 23:21:41 +0000235<a name="v_A48"></a>
Stephan Herrmann3961b992010-04-27 12:01:30 +0000236<hr><h1>
237Eclipse Platform Build Notes<br>
238Java development tools core</h1>
239Eclipse SDK 3.6M7 - April 25, 2010 - 3.6.0 M7
Stephan Herrmann6c186a42010-04-27 23:21:41 +0000240<br>Project org.eclipse.jdt.core v_A48
241(<a href="">cvs</a>).
242<h2>What's new in this drop</h2>
244<h3>Problem Reports Fixed</h3>
245<a href="">310330</a>
246Add multiple encoding support for the batch compiler
Stephan Herrmann6c186a42010-04-27 23:21:41 +0000247
248<a name="v_A47"></a>
250Eclipse Platform Build Notes<br>
251Java development tools core</h1>
252Eclipse SDK 3.6M7 - April 25, 2010
Stephan Herrmann3961b992010-04-27 12:01:30 +0000253<br>Project org.eclipse.jdt.core v_A47
254(<a href="">cvs</a>).
255<h2>What's new in this drop</h2>
257<h3>Problem Reports Fixed</h3>
258<a href="">309835</a>
259[formatter] adds blank lines on each run
260<br><a href="">310213</a>
261AIOOBE in IndexSelector.initializeIndexLocations()
262<br><a href="">309966</a>
263IType#getKey() does not work for unresolved local ITypes
Stephan Herrmanna55c3412010-04-24 14:26:14 +0000265<a name="v_A46"></a>
267Eclipse Platform Build Notes<br>
268Java development tools core</h1>
Stephan Herrmann3961b992010-04-27 12:01:30 +0000269Eclipse SDK 3.6M7 - April 23, 2010
Stephan Herrmanna55c3412010-04-24 14:26:14 +0000270<br>Project org.eclipse.jdt.core v_A46
271(<a href="">cvs</a>).
272<h2>What's new in this drop</h2>
274<h3>Problem Reports Fixed</h3>
275<a href="">59891</a>
276[formatter] improve lines wrapping in nested method calls
277<br><a href="">306172</a>
278[perfs] Invalid test duration for FullSourceWorkspaceTypeHierarchyTests#testPerSuperTypes()
279<br><a href="">267091</a>
280[content assist] After 'implements' interface members are not proposed
281<br><a href="">261534</a>
282content assist after instanceof should also work after &amp;&amp;
283<br><a href="">308980</a>
284[content assist]An initializer inside a non-array field declaration confuses content assist
285<br><a href="">310002</a>
286ToolFactory.createScanner(..) should use workspace compliance
287<br><a href="">291528</a>
288Synchronize project warning/error settings to
289<br><a href="">309787</a>
290Extension point &quot;org.eclipse.jdt.core.codeFormatter&quot; is ignored
291<br><a href="">244820</a>
292Content assist after 'instanceof' should also work in assignment
293<br><a href="">309706</a>
294[formatter] doesn't work when code has three semicolons side by side
Stephan Herrmannf3e60b32010-04-21 21:24:15 +0000296<a name="v_A45"></a>
298Eclipse Platform Build Notes<br>
299Java development tools core</h1>
Stephan Herrmanna55c3412010-04-24 14:26:14 +0000300Eclipse SDK 3.6M7 - April 20, 2010
Stephan Herrmannf3e60b32010-04-21 21:24:15 +0000301<br>Project org.eclipse.jdt.core v_A45
302(<a href="">cvs</a>).
303<h2>What's new in this drop</h2>
305<h3>Problem Reports Fixed</h3>
306<a href="">305037</a>
307missing story for attributes of referenced JARs in classpath containers
308<br><a href="">305116</a>
309[index] Improve performance of indexes results tables
310<br><a href="">236306</a>
311[content assist] for method invocation in variable initializer should not guess variable
312<br><a href="">302865</a>
313Issue with &quot;import&quot; a class and &quot;import static&quot; a method with the same name
314<br><a href="">309022</a>
315[ImportRewrite] Add Import wrongly removes import for nested type
317<a name="v_A44"></a>
319Eclipse Platform Build Notes<br>
320Java development tools core</h1>
321Eclipse SDK 3.6M7 - April 13, 2010
322<br>Project org.eclipse.jdt.core v_A44
323(<a href="">cvs</a>).
324<h2>What's new in this drop</h2>
326<h3>Problem Reports Fixed</h3>
327<a href="">308754</a>
328CompilationUnit.rewrite messes up .class-literal in annotation instead of changing class to interface
329<br><a href="">306519</a>
330JavaCore#getReferencedClasspathEntries(IClasspathEntry, IJavaProject) should allow null project
331<br><a href="">308428</a>
332Possible problem to get corrections with surrogate characters
333<br><a href="">307295</a>
334Task tags and task priorities
335<br><a href="">308476</a>
336Test ClasspathTests#testBug308150 fails on all platforms
337<br><a href="">305043</a>
338Internal error during classpath init
339<br><a href="">307486</a>
340DBCS3.6: Fail to propose Ext-B labels with content assist in Java Editor
341<br><a href="">308256</a>
342DiagnosticListener always supplies Diagnostic.getSource()==null
343<br><a href="">308356</a>
344codeSelect(..) doesn't work for local variable with surrogate in name
345<br><a href="">308245</a>
346Valid code fails to compile in 3.6
347<br><a href="">307885</a>
348Error message for instanceof &lt;parameterized type&gt; wrong arguments
349<br><a href="">249704</a>
350[code assist] autocomplete with anonymous classes does stop working
351<br><a href="">308150</a>
352JAR with invalid Class-Path entry in MANIFEST.MF crashes the project
354<a name="v_A43"></a>
356Eclipse Platform Build Notes<br>
357Java development tools core</h1>
358Eclipse SDK 3.6M7 - April 6, 2010
359<br>Project org.eclipse.jdt.core v_A43
360(<a href="">cvs</a>).
361<h2>What's new in this drop</h2>
363<h3>Problem Reports Fixed</h3>
364<a href="">306223</a>
365[search] Searching for annotation references report all type references
366<br><a href="">292087</a>
367anonymous class in array member initializer confuses content assist
368<br><a href="">307337</a>
369[content assist] Default constructor should not be proposed for anonymous types
370<br><a href="">306568</a>
371[ImportRewrite] Add Import does not work for nested type when package is on-demand imported
373<a name="v_A42"></a>
375Eclipse Platform Build Notes<br>
376Java development tools core</h1>
377Eclipse SDK 3.6M7 - March 30, 2010
378<br>Project org.eclipse.jdt.core v_A42
379(<a href="">cvs</a>).
380<h2>What's new in this drop</h2>
382<h3>Problem Reports Fixed</h3>
383<a href="">202634</a>
384[codeassist] missing super proposal in specific source
385<br><a href="">304394</a>
386IJavaElement#getAttachedJavadoc(IProgressMonitor) should support referenced entries
387<br><a href="">305122</a>
388FUP of 302949
389<br><a href="">306917</a>
390Exception occurred during compilation unit conversion:
391<br><a href="">306196</a>
392[search] NPE while searching for annotation references in rt.jar of JRE 6.0
393<br><a href="">288658</a>
394[compiler][1.5] Annotations visibility issues
396<a name="v_A41"></a>
398Eclipse Platform Build Notes<br>
399Java development tools core</h1>
400Eclipse SDK 3.6M7 - March 23, 2010
401<br>Project org.eclipse.jdt.core v_A41
402(<a href="">cvs</a>).
403<h2>What's new in this drop</h2>
405<h3>Problem Reports Fixed</h3>
406<a href="">305518</a>
407[formatter] Line inside &lt;pre&gt; tag is wrongly indented by one space when starting just after the star
408<br><a href="">295825</a>
409[formatter] Commentaries are running away after formatting are used
410<br><a href="">306477</a>
411Indexer(?) fails to recognise enum as a type
412<br><a href="">305830</a>
413[formatter] block comment should not be formatted when a non-nls tag is on the same line
414<br><a href="">300031</a>
415The deprecation warning for a type should not include the package name
416<br><a href="">306078</a>
417Navigate to Inaccessible Field
418<br><a href="">209479</a>
419infinite loop in BindingKey when signatures are invalid
420<br><a href="">293558</a>
421[quick assist] &quot;Invert if statement&quot; fails when comment follows
422<br><a href="">182459</a>
423[compiler] Inconsistent error range for unresolved field
424<br><a href="">192233</a>
425[AST] CompilationUnit.rewrite() removes whitespace between return type and method name
426<br><a href="">306073</a>
427ASTRewrite Javadoc wrongly talks about getTargetSourceRangeComputer
428<br><a href="">305001</a>
429Exception occurred in listener of Java element change notification
430<br><a href="">305590</a>
431Redundant null check false-positive
432<br><a href="">305755</a>
433Remove deprecated API that has been added for 3.6
435<a name="v_A40"></a>
437Eclipse Platform Build Notes<br>
438Java development tools core</h1>
439Eclipse SDK 3.6M7 - March 16, 2010
440<br>Project org.eclipse.jdt.core v_A40
441(<a href="">cvs</a>).
442<h2>What's new in this drop</h2>
444<h3>Problem Reports Fixed</h3>
445<a href="">305371</a>
446[formatter] Unexpected indentation of line comment
447<br><a href="">305281</a>
448[formatter] Turning off formatting changes comment's formatting
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000450<a name="v_A39"></a>
452Eclipse Platform Build Notes<br>
453Java development tools core</h1>
454Eclipse SDK 3.6M6 - March 9, 2010 - 3.6.0 M6
455<br>Project org.eclipse.jdt.core v_A39
456(<a href="">cvs</a>).
457<h2>What's new in this drop</h2>
459<h3>Problem Reports Fixed</h3>
460<a href="">289057</a>
461Java Content Assist taking too long
462<br><a href="">303830</a>
463&quot;X cannot be resolved or is not a field&quot; erroneously reported
464<br><a href="">235658</a>
465Valid identifier unrecognized.
466<br><a href="">304841</a>
467[search] NPE in IndexSelector.initializeIndexLocations
468<br><a href="">295866</a>
469FormalParameter in JDT DOM/AST documentation
470<br><a href="">304817</a>
471Review documentation of ASTParser class
473<a name="v_A38"></a>
475Eclipse Platform Build Notes<br>
476Java development tools core</h1>
477Eclipse SDK 3.6M6 - March 5, 2010
478<br>Project org.eclipse.jdt.core v_A38
479(<a href="">cvs</a>).
480<h2>What's new in this drop</h2>
483Added two new preferences to allow to disable the formatter in a section of the code.
484These two preference define respectively the tag which disables the formatting
485and the tag which re-enable it.
487These new preferences are controlled with the options:</p>
492 * FORMATTER / Option to define the tag to put in a comment to disable the formatting.
493 * See the {@link #FORMATTER_ENABLING_TAG} option to re-enable it.
494 * - option id: "org.eclipse.jdt.core.formatter.disabling_tag"
495 * - possible values: String, with constraints mentioned below
496 * - default: &quot;&quot;
497 *
498 * Note that:
499 *
500 * 1. The tag name will be trimmed. Hence if it does contain white spaces
501 * at the beginning or at the end, they will not be taken into account while
502 * searching for the tag in the comments
503 * 2. If a tag is starting with a letter or digit, then it cannot be leaded by
504 * another letter or digit to be recognized
505 * (<b><i>"ToDisableFormatter"</i></b> will not be recognized as a disabling tag
506 * <b><i>"DisableFormatter"</i></b>, but <b><i>"Re:DisableFormatter"</i></b>
507 * will be detected for either tag <b><i>"DisableFormatter"</i></b> or
508 * <b><i>":DisableFormatter"</i></b>).
509 * Respectively, a tag ending with a letter or digit cannot be followed by a letter
510 * or digit to be recognized (<b><i>"DisableFormatter1"</i></b> will not be
511 * recognized as a disabling tag <b><i>"DisableFormatter"</i></b>, but
512 * <b><i>"DisableFormatter:1"</i></b> will be detected either for tag
513 * <b><i>"DisableFormatter"</i></b> or <b><i>"DisableFormatter:"</i></b>)
514 * 3. As soon as the formatter encounters the defined disabling tag, it stops to
515 * format the code from the beginning of the comment including this tag. If it
516 * was already disabled, the tag has no special effect.
517 * For example, the second defined enabling tag &quot;<b>disable-formatter</b>&quot;
518 * in the following snippet is not necessary as the formatter was already disabled
519 * since the first one:
520 * class X {
521 * // disable-formatter
522 * void foo1() {}
523 * // disable-formatter
524 * void foo2() {}
525 * void bar1() {}
526 * void bar2() {}
527 * }
528 *
529 * 4. If no enabling tag is found by the formatter after the disabling tag, then
530 * the end of the snippet won't be formatted.
531 * For example, when a disabling tag is put at the beginning of the code, then
532 * the entire content of a compilation unit is not formatted:
533 * // disable-formatter
534 * class X {
535 * void foo1() {}
536 * void foo2() {}
537 * void bar1() {}
538 * void bar2() {}
539 * }
540 *
541 * 5. If a mix of disabling and enabling tags is done in the same comment, then
542 * the formatter will only take into account the last encountered tag in the
543 * comment.
544 * For example, in the following snippet, the formatter will be disabled after
545 * the comment:
546 * class X {
Stephan Herrmann8f4b3212010-05-22 16:38:56 +0000547 * /*
548 * &nbsp;* This is a comment with a mix of disabling and enabling tags:
549 * &nbsp;* - <b>disable-formatter</b>
550 * &nbsp;* - <b>enable-formatter</b>
551 * &nbsp;* - <b>disable-formatter</b>
552 * &nbsp;* The formatter will stop to format from the beginning of this comment...
553 * &nbsp;*/
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000554 * void foo() {}
555 * void bar() {}
556 * }
557 *
Stephan Herrmann8f4b3212010-05-22 16:38:56 +0000558 * 6. The tag cannot include newline character (i.e. '\n') but it can have white spaces.
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000559 * E.g. "<b>format: off</b>" is a valid disabling tag
560 * In the future, newlines may be used to support multiple disabling tags.
561 *
562 * @since 3.6
563 */
566 * FORMATTER / Option to define the tag to put in a comment to re-enable the
567 * formatting after it has been disabled (see {@link #FORMATTER_DISABLING_TAG})
568 * - option id: "org.eclipse.jdt.core.formatter.enabling_tag"
569 * - possible values: String, with constraints mentioned below
570 * - default: &quot;&quot;
571 *
572 * Note that:
573 *
574 * 1. The tag name will be trimmed. Hence if it does contain white spaces
575 * at the beginning or at the end, they will not be taken into account while
576 * searching for the tag in the comments
577 * 2. If a tag is starting with a letter or digit, then it cannot be leaded by
578 * another letter or digit to be recognized
579 * (<b>"ReEnableFormatter"</b> will not be recognized as an enabling tag
580 * <b><i>"EnableFormatter"</i></b>, but <b><i>"Re:EnableFormatter"</i></b>
581 * will be detected for either tag <b><i>"EnableFormatter"</i></b> or
582 * <b><i>":EnableFormatter"</i></b>).
583 * Respectively, a tag ending with a letter or digit cannot be followed by a letter
584 * or digit to be recognized (<b><i>"EnableFormatter1"</i></b> will not be
585 * recognized as an enabling tag <b><i>"EnableFormatter"</i></b>, but
586 * <b><i>"EnableFormatter:1"</i></b> will be detected either for tag
587 * <b><i>"EnableFormatter"</i></b> or <b><i>"EnableFormatter:"</i></b>)
588 * 3. As soon as the formatter encounters the defined enabling tag, it re-starts
589 * to format the code just after the comment including this tag. If it was already
590 * active, i.e. already re-enabled or never disabled, the tag has no special effect.
591 * For example, the defined enabling tag &quot;<b>enable-formatter</b>&quot;
592 * in the following snippet is not necessary as the formatter has never been
593 * disabled:
594 * class X {
595 * void foo1() {}
596 * void foo2() {}
597 * // enable-formatter
598 * void bar1() {}
599 * void bar2() {}
600 * }
601 *
602 * Or, in the following other snippet, the second enabling tag is not necessary as
603 * the formatting will have been re-enabled by the first one:
604 * class X {
605 * // disable-formatter
606 * void foo1() {}
607 * void foo2() {}
608 * // enable-formatter
609 * void bar1() {}
610 * // enable-formatter
611 * void bar2() {}
612 * }
613 *
614 * 4. If a mix of disabling and enabling tags is done in the same comment, then
615 * the formatter will only take into account the last encountered tag in the
616 * comment.
617 * For example, in the following snippet, the formatter will be re-enabled after
618 * the comment:
619 * // disable-formatter
620 * class X {
Stephan Herrmann8f4b3212010-05-22 16:38:56 +0000621 * /*
622 * &nbsp;* This is a comment with a mix of disabling and enabling tags:
623 * &nbsp;* - <b>enable-formatter</b>
624 * &nbsp;* - <b>disable-formatter</b>
625 * &nbsp;* - <b>enable-formatter</b>
626 * &nbsp;* The formatter will restart to format after this comment...
627 * &nbsp;*/
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000628 * void foo() {}
629 * void bar() {}
630 * }
631 *
Stephan Herrmann8f4b3212010-05-22 16:38:56 +0000632 * 5. The tag cannot include newline character (i.e. '\n') but it can have white spaces.
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000633 * E.g. "<b>format: on</b>" is a valid enabling tag
634 * In the future, newlines may be used to support multiple enabling tags.
635 *
636 * @since 3.6
637 */
639<p>For example, the following snippet:</p>
641public class Test {
642/* disable-formatter */
643void foo( ) {
644 // unformatted area
646/* enable-formatter */
647void bar( ) {
648 // formatted area
652formatted with disabling tags = &quot;disable-formatter&quot; and enabling tags
653= &quot;enable-formatter&quot; produces the following output:
655public class Test {
657/* disable-formatter *
658void foo( ) {
659 // unformatted area
661/* enable-formatter *
662 void bar() {
663 // formatted area
664 }
667See bug <a href="">27079</a> for more details.
671<h3>Problem Reports Fixed</h3>
672<a href="">129804</a>
673[dom] Local variable bindings from ASTParser#createASTs(.., String[], .., ..) have no declaring method
674<br><a href="">304705</a>
675[formatter] Unexpected indentation of wrapped line comments when 'Never indent line comment on first column' preference is checked
676<br><a href="">304656</a>
677StringIndexOutOfBoundsException when using JDT dom methods to process sourcefile
678<br><a href="">304506</a>
679Task descriptions always have a space after the tag
680<br><a href="">304081</a>
681IJavaProject#isOnClasspath(IJavaElement) returns false for type from referenced JAR
682<br><a href="">304122</a>
683TypeBindings.getAnnotations() breaks interface
684<br><a href="">304416</a>
685VerifyError after compiling without preserve all locals
686<br><a href="">304529</a>
687[formatter] NPE when either the disabling or the enabling tag is not defined
688<br><a href="">27079</a>
689Tags for disabling/enabling code formatter (feature)
690<br><a href="">304316</a>
691NPE when javadoc URL is invalid
693<a name="v_A37"></a>
695Eclipse Platform Build Notes<br>
696Java development tools core</h1>
697Eclipse SDK 3.6M6 - March 2, 2010
698<br>Project org.eclipse.jdt.core v_A37
699(<a href="">cvs</a>).
700<h2>What's new in this drop</h2>
702<li>Added new configurable option to fix bug <a href="">295551</a>:<br>
705 * Compiler option ID: Further Determining the Effect of @SuppressWarnings if also
707 * When enabled, the @SuppressWarnings annotation can additionally be used to suppress
708 * optional compiler diagnostics that have been configured as ERROR.
709 * When disabled, all @SuppressWarnings annotations only affects warnings.
710 *
711 * Option id: "org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors"
712 * Possible values: { "enabled", "disabled" }
713 * Default: "disabled"
714 *
715 * @since 3.6
716 * @category CompilerOptionID
717 */
718public static final String COMPILER_PB_SUPPRESS_OPTIONAL_ERRORS = PLUGIN_ID + ".compiler.problem.suppressOptionalErrors";
722Added a new formatter preferences to align method declaration.
724This new preference is controlled with the option:</p>
728 * FORMATTER / Option for alignment of method declaration
729 * - option id: "org.eclipse.jdt.core.formatter.alignment_for_method_declaration"
730 * - possible values: values returned by <code>createAlignmentValue(boolean, int, int)</code> call
731 * - default: createAlignmentValue(false, WRAP_NO_SPLIT, INDENT_DEFAULT)
732 *
733 * @see #createAlignmentValue(boolean, int, int)
734 * @since 3.6
735 */
737<p>For example, the following snippet:</p>
739public class Test {
740public final synchronized java.lang.String a_method_which_has_a_very_long_name() {
741return null;
745formatted with this preference activated as 'Wrap only when necessary', will
746produce the following output:
748public class Test {
749 public final synchronized java.lang.String
750 a_method_which_has_a_very_long_name() {
751 return null;
752 }
755See bug <a href="">284789</a> for more details.
757<li>New API to fix bug <a href="">246594</a>. See the bug for details.
759 /**
760 * Returns the signatures for this type parameter's bounds. The type parameter may have
761 * been declared as part of a type or a method. The signatures represent only the individual
762 * bounds and do not include the type variable name or the <code>extends</code> keyword.
763 * The signatures may be either unresolved (for source types) or resolved (for binary types).
764 * See {@link Signature} for details.
765 *
766 * @return the signatures for the bounds of this formal type parameter
767 * @throws JavaModelException
768 * if this element does not exist or if an exception occurs while accessing its corresponding resource.
769 * @see Signature
770 * @since 3.6
771 */
772 String[] getBoundsSignatures() throws JavaModelException;
776Added a new formatter preference to enable or disable the formatting of line
777comments that start on the first column.<br>
778Note that the indentation of line comments will also be disabled when activating
779this option, as otherwise the formatter could not produce stable outputs...
781The default is to format these comments to have a backward compatible behavior.
783This new preferences is controlled with the options:</p>
787 * FORMATTER / Option to format line comments that start on the first column
788 * - option id: "org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column"
789 * - possible values: { TRUE, FALSE }
790 * - default: TRUE
791 *
792 * Note that this option is ignored if either the
793 * {@link #FORMATTER_COMMENT_FORMAT_LINE_COMMENT} option has been set to
794 * {@link #FALSE} or the formatter is created with the mode
795 * {@link ToolFactory#M_FORMAT_NEW}.
796 *
797 * @see #TRUE
798 * @see #FALSE
799 * @see ToolFactory#createCodeFormatter(Map, int)
800 * @since 3.6
801 */
803<p>For example, the following snippet:</p>
805public class X01 {
806// int a = 1;
807// int b = 2;
810will be untouched by the formatter if both options are activated.
811See bug <a href="">251133</a> for more details.
813<li>New API to fix bug <a href="">252431</a>. See the bug for details.
816 /**
817 * Returns the classpath entry that is making a reference to this classpath entry. For entry kinds
818 * {@link #CPE_LIBRARY}, the return value is the entry that is representing the JAR that includes
819 * <code>this</code> in the MANIFEST.MF file's Class-Path section. For entry kinds other than
820 * {@link #CPE_LIBRARY}, this returns <code>null</code>. For those entries that are on the raw classpath already,
821 * this returns <code>null</code>.
822 *
823 * It is possible that multiple library entries refer to the same entry
824 * via the MANIFEST.MF file. In those cases, this method returns the first classpath entry
825 * that appears in the raw classpath. However, this does not mean that the other referencing
826 * entries do not relate to their referenced entries.
827 * See {@link JavaCore#getReferencedClasspathEntries(IClasspathEntry, IJavaProject)} for
828 * more details.
829 *
830 * @return the classpath entry that is referencing this entry or <code>null</code> if
831 * not applicable.
832 * @since 3.6
833 */
834 IClasspathEntry getReferencingEntry();
838 /**
839 * Works similar to {@link #setRawClasspath(IClasspathEntry[], IPath, IProgressMonitor)} and
840 * additionally allows persisting the given array of referenced entries for this project.
841 * The referenced entries and their attributes are stored in the .classpath file of this
842 * project. For details on referenced entries, see
843 * {@link JavaCore#getReferencedClasspathEntries(IClasspathEntry, IJavaProject)}
844 * and {@link IClasspathEntry#getReferencingEntry()}.
845 *
846 * Since the referenced entries are stored in the .classpath file, clients can store additional
847 * information that belong to these entries and retrieve them across sessions, though the referenced
848 * entries themselves may not be present in the raw classpath. By passing a <code>null</code>
849 * referencedEntries, clients can choose not to modify the already persisted referenced entries,
850 * which is fully equivalent to {@link #setRawClasspath(IClasspathEntry[], IPath, IProgressMonitor)}.
851 * If an empty array is passed as referencedEntries, the already persisted referenced entries,
852 * if any, will be cleared.
853 *
854 * If there are duplicates of a referenced entry or if any of the <code>referencedEntries</code>
855 * is already present in the raw classpath(<code>entries</code>) those referenced entries will
856 * be excluded and not be persisted.
857 *
858 * @param entries a list of classpath entries
859 * @param referencedEntries the list of referenced classpath entries to be persisted
860 * @param outputLocation the default output location
861 * @param monitor the given progress monitor
862 * @exception JavaModelException if the classpath could not be set. Reasons include:
863 * This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
864 * The classpath is being modified during resource change event notification (CORE_EXCEPTION)
865 * The classpath failed the validation check as defined by {@link JavaConventions#validateClasspath(IJavaProject, IClasspathEntry[], IPath)}
866 * @see IClasspathEntry
867 * @see #getReferencedClasspathEntries()
868 * @since 3.6
869 */
870 void setRawClasspath(IClasspathEntry[] entries, IClasspathEntry[] referencedEntries, IPath outputLocation,
871 IProgressMonitor monitor) throws JavaModelException;
873 /**
874 * Returns the list of referenced classpath entries stored in the .classpath file of <code>this</code>
875 * java project. Clients can store the referenced classpath entries using
876 * {@link #setRawClasspath(IClasspathEntry[], IClasspathEntry[], IPath, IProgressMonitor)}
877 * If the client has not stored any referenced entries for this project, an empty array is returned.
878 *
879 * @throws JavaModelException
880 * @return an array of referenced classpath entries stored for this java project or an empty array if none
881 * stored earlier.
882 * @since 3.6
883 */
884 IClasspathEntry[] getReferencedClasspathEntries() throws JavaModelException;
888 /**
889 * Returns the first resolved classpath entry that corresponds to this package fragment root.
890 * A resolved classpath entry is said to correspond to a root if the path of the resolved
891 * entry is equal to the root's path.
892 *
893 * @return the first resolved classpath entry that corresponds to this package fragment root
894 * @throws JavaModelException if this element does not exist or if an
895 * exception occurs while accessing its corresponding resource.
896 * @since 3.6
897 */
898 IClasspathEntry getResolvedClasspathEntry() throws JavaModelException;
902 /**
903 * Returns an array of classpath entries that are referenced directly or indirectly
904 * by a given classpath entry. For the entry kind {@link IClasspathEntry#CPE_LIBRARY},
905 * the method returns the libraries that are included in the Class-Path section of
906 * the MANIFEST.MF file. If a referenced JAR file has further references to other library
907 * entries, they are processed recursively and added to the list. For entry kinds other
908 * than {@link IClasspathEntry#CPE_LIBRARY}, this method returns an empty array.
909 *
910 * If a referenced entry has already been stored
911 * in the given project's .classpath, the stored attributes are populated in the corresponding
912 * referenced entry. For more details on storing referenced entries see
913 * see {@link IJavaProject#setRawClasspath(IClasspathEntry[], IClasspathEntry[], IPath,
914 * IProgressMonitor)}.
915 *
916 * @param libraryEntry the library entry whose referenced entries are sought
917 * @param project project where the persisted referenced entries to be retrieved from
918 * @return an array of classpath entries that are referenced directly or indirectly by the given entry.
919 * If not applicable, returns an empty array.
920 * @since 3.6
921 */
922 public static IClasspathEntry[] getReferencedClasspathEntries(IClasspathEntry libraryEntry, IJavaProject project);
927<h3>Problem Reports Fixed</h3>
928<a href="">252431</a>
929New API is needed to better identify referenced jars in the Class-Path: entry
930<br><a href="">251133</a>
931[formatter] Automatic formatting single line comments is incoherent among tools
932<br><a href="">248897</a>
933[1.5][compiler] Wrong warning 'The local variable 'var' is never read'.
934<br><a href="">304031</a>
935Unused @SuppressWarnings(..) not flagged when suppressed problem is set to Error
936<br><a href="">295551</a>
937Add option to automatically promote all warnings to errors
938<br><a href="">303810</a>
939Compact boolean fields on FlowContext
940<br><a href="">251227</a>
941[compiler] Fup of bug 115814, comparing doubles should not be flagged
942<br><a href="">268798</a>
943[1.5][compiler] Eclipse 3.5M5/6 produces new compiler errors with generics
944<br><a href="">303448</a>
945Wrong code generation optimization when assert condition is false
946<br><a href="">303776</a>
947Member types imports are removed too aggressively
948<br><a href="">302949</a>
949JavaModelManager hangs accessing the nonChainingJars set
950<br><a href="">246594</a>
951[model] API request: ITypeParameter#getBoundsSignatures() or #getSignature()
952<br><a href="">253896</a>
953[compiler][null] wrong &quot;Null comparison always yields false&quot; problem for auto-unboxing
954<br><a href="">284789</a>
955[formatter] Does not line-break method declaration exception with parameters
956<br><a href="">303480</a>
957[1.5][compiler] CCE: org.eclipse.jdt.internal.compiler.parser.RecoveredBlock cannot be cast to org.eclipse.jdt.internal.compiler.parser.RecoveredType
959<a name="v_A36"></a>
961Eclipse Platform Build Notes<br>
962Java development tools core</h1>
963Eclipse SDK 3.6M6 - February 23, 2010
964<br>Project org.eclipse.jdt.core v_A36
965(<a href="">cvs</a>).
966<h2>What's new in this drop</h2>
Stephan Herrmannd5c3cc62010-05-30 17:34:25 +0000969Added a new formatter preferences to align annotation arguments (i.e. element-value pairs).
Stephan Herrmanne5d6be82010-04-02 03:29:32 +0000970<p>
971This new preference is controlled with the option:</p>
975 * FORMATTER / Option for alignment of arguments in annotation
976 * - option id: "org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation"
977 * - possible values: values returned by <code>createAlignmentValue(boolean, int, int)</code> call
978 * - default: createAlignmentValue(false, WRAP_NO_SPLIT, INDENT_DEFAULT)
979 *
980 * @see #createAlignmentValue(boolean, int, int)
981 * @since 3.6
982 */
984<p>For example, the following snippet:</p>
986@MyAnnot(value1 = "this is an example", value2 = "of an annotation", value3 = "with several arguments", value4 = "which may need to be wrapped")
987public class Test {
990formatted with this preference activated, will produce the following output
991while using the <code>Eclipse [built-in]</code> profile:
993@MyAnnot(value1 = "this is an example", value2 = "of an annotation",
994 value3 = "with several arguments",
995 value4 = "which may need to be wrapped")
996public class Test {
999See bug <a href="">282030</a> for more details.
1001<li>In order to get bindings outside of the Eclipse environment, the following method has been added on the ASTParser class.
1002<br>See bug <a href="">206391</a> for details.<br>
1004 /**
1005 * Set the environment that can be used when no IJavaProject are available.
1006 *
1007 * The user has to be sure to include all required types on the classpaths for binary types
1008 * or on the sourcepaths for source types to resolve the given source code.
1009 * All classpath and sourcepath entries are absolute paths.
1010 * If sourcepaths contain units using a specific encoding (not the platform encoding), then the
1011 * given encodings must be set. If the given encodings is set, its length must
1012 * match the length of the sourcepaths parameter or an IllegalArgumentException will be thrown.
1013 * If encodings is not null, the given sourcepathEntries must not be null.
1014 *
1015 * @param classpathEntries the given classpath entries to be used to resolve bindings
1016 * @param sourcepathEntries the given sourcepath entries to be used to resolve bindings
1017 * @param encodings the encodings of the corresponding sourcepath entries or null if the platform encoding
1018 * can be used.
1019 * @param includeRunningVMBootclasspath true if the bootclasspath of the running VM must be prepended to the
1020 * given classpath and false if the bootclasspath of the running VM should be ignored.
1021 * @throws IllegalArgumentException if the size of the given encodings is not equals to the size of the given
1022 * sourcepathEntries
1023 * @since 3.6
1024 */
1025 public void setEnvironment(String[] classpathEntries, String[] sourcepathEntries, String[] encodings, boolean includeRunningVMBootclasspath);
1029Added two new formatter preferences to condense block and javadoc comments.
1031These new preferences are controlled respectively with the options:</p>
1036 * FORMATTER / Option to control whether block comments will have new lines at boundaries
1037 * - option id: "org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries"
1038 * - possible values: { TRUE, FALSE }
1039 * - default: TRUE
1040 *
1041 * @see #TRUE
1042 * @see #FALSE
1043 * @since 3.6
1044 */
1047 * FORMATTER / Option to control whether javadoc comments will have new lines at boundaries
1048 * - option id: "org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries"
1049 * - possible values: { TRUE, FALSE }
1050 * - default: TRUE
1051 *
1052 * @see #TRUE
1053 * @see #FALSE
1054 * @since 3.6
1055 */
1056 </pre>
1057<p>For example, when both of these options are used, the following snippet:</p>
1059public class X {
1060 /*
1061 * This block comment after formatting will no longer use a new line
1062 * at the beginning and at the end of the comment...
1063 */
1064 void foo() {
1065 }
1066 /**
1067 * This javadoc comment after formatting will no longer use a new line
1068 * at the beginning and at the end of the comment...
1069 */
1070 void bar() {
1071 }
1074formatted with this preference activated, will produce the following output:
1076public class X {
1077 /* This block comment after formatting will no longer use a new line at the
1078 * beginning and at the end of the comment... */
1079 void foo() {
1080 }
1082 /** This javadoc comment after formatting will no longer use a new line at
1083 * the beginning and at the end of the comment... */
1084 void bar() {
1085 }
1088See bug <a href="">270209</a> for more details.
1091The <code>CodeFormatter.F_INCLUDE_COMMENT</code> flag now works for all kind
1092of snippet while using the formatter.<br>
1093See bug <a href="">236406</a> for more details.
1096Added a new formatter preferences to insert a new line after a label.
1098This new preference is controlled with the option:</p>
1102 * FORMATTER / Option to insert a new line after a label
1103 * - option id: "org.eclipse.jdt.core.formatter.insert_new_line_after_label"
1104 * - possible values: { INSERT, DO_NOT_INSERT }
1105 * - default: DO_NOT_INSERT
1106 *
1107 * @see JavaCore#INSERT
1108 * @see JavaCore#DO_NOT_INSERT
1109 * @since 3.6
1110 */
1112<p>For example, the following snippet:</p>
1114public class X {
1115 void foo() {
1116 LABEL:for (int i = 0; i &lt; 10; i++) {
1117 }
1118 }
1121formatted with this preference activated, will produce the following output:
1123public class X {
1124 void foo() {
1125 LABEL:
1126 for (int i = 0; i &lt; 10; i++) {
1127 }
1128 }
1131See bug <a href="">150741</a> for more details.
1135<h3>Problem Reports Fixed</h3>
1136<a href="">298362</a>
1137[1.5][compiler] Compiler returns java.lang.Object instead of generic type T when javac returns T
1138<br><a href="">281655</a>
1139[formatter] &quot;Never join lines&quot; does not work for annotations.
1140<br><a href="">282030</a>
1141[formatter] Java annotation formatting
1142<br><a href="">270209</a>
1143[format] Condensed block comment formatting
1144<br><a href="">236406</a>
1145[formatter] The comments flags should work for all kind of snippet
1146<br><a href="">294360</a>
1147Duplicate entries in Classpath Resolution when importing dependencies from parent project
1148<br><a href="">206391</a>
1149[DOM] Binding Resolutions for projects outside of Eclipse workspace
1150<br><a href="">150409</a>
1151[compiler] AST does not expose method bindings for non-visible inherited field
1152<br><a href="">302358</a>
1153Compiler finds wrong method for method invocation with generics
1154<br><a href="">302919</a>
1155misreported cast Error when mixing generic and raw class in nested class
1156<br><a href="">150741</a>
1157[formatter] Add option: &quot;add new line after label&quot;
1158<br><a href="">287939</a>
1159[code assist] The instanceof and the auto cast feature should also work for an assignment
1160<br><a href="">303108</a>
1161[import rewrite] ImportRewrite#removeImport(String) does not work with setUseContextToFilterImplicitImports(true)
1162<br><a href="">295619</a>
1163Test failure caused by a timing issue in M20091118-0800
1165<a name="v_A35"></a>
1167Eclipse Platform Build Notes<br>
1168Java development tools core</h1>
1169Eclipse SDK 3.6M6 - February 16, 2010
1170<br>Project org.eclipse.jdt.core v_A35
1171(<a href="">cvs</a>).
1172<h2>What's new in this drop</h2>
1174<li>In order to fix bugs <a href="">235253</a> and
1175<a href="">194358</a>, a new API was added to preserve the existing pre-3.6 behavior for existing clients:<br>
1177 /**
1178 * Sets whether a context should be used to properly filter implicit imports.
1179 *
1180 * By default, the option is disabled to preserve pre-3.6 behavior.
1181 *
1182 *
1183 * When this option is set, the context passed to the addImport*(...) methods is used to determine
1184 * whether an import can be filtered because the type is implicitly visible. Note that too many imports
1185 * may be kept if this option is set and addImport*(...) methods are called without a context.
1186 *
1187 *
1188 * @param useContextToFilterImplicitImports the given setting
1189 *
1190 * @see #setFilterImplicitImports(boolean)
1191 * @since 3.6
1192 */
1193 public void setUseContextToFilterImplicitImports(boolean useContextToFilterImplicitImports);
1198<h3>Problem Reports Fixed</h3>
1199<a href="">302455</a>
1200java.lang.ClassCastException in secondary types removal
1201<br><a href="">102279</a>
1202[search] method reference performance depends on method name
1203<br><a href="">236814</a>
1204[jsr199] EclipseCompiler#getTask does not respect its contract when its first argument is null
1205<br><a href="">302552</a>
1206[formatter] Formatting qualified invocations can be broken when the Line Wrapping policy forces element to be on a new line
1207<br><a href="">302587</a>
1208Encoding/decoding of problem arguments in Marker fails if argument contains #
1209<br><a href="">301438</a>
1210Eclipse hangs when attempting to refactor using the &quot;change method signature&quot;
1211<br><a href="">260381</a>
1212[formatter] Javadoc formatter breaks {@code ...} tags.
1213<br><a href="">302446</a>
1214[compiler] Regression in if statement flow analysis related to null checks
1215<br><a href="">194358</a>
1216[import rewrite] Organize Imports produces wrong order of imports
1217<br><a href="">235253</a>
1218[organize imports] Organize imports removes needed import statement.
1219<br><a href="">302379</a>
1220[search] JavaSearchTests.testZIPArchive2() test failed in I20100209-0800
1222<a name="v_A34"></a>
1224Eclipse Platform Build Notes<br>
1225Java development tools core</h1>
1226Eclipse SDK 3.6M6 - February 9, 2010
1227<br>Project org.eclipse.jdt.core v_A34
1228(<a href="">cvs</a>).
1229<h2>What's new in this drop</h2>
1231<h3>Problem Reports Fixed</h3>
1232<a href="">302123</a>
1233[formatter] AssertionFailedException occurs while formatting a source containing the specific javadoc comment /** ***/
1234<br><a href="">300379</a>
1235[formatter] Fup of bug 287833
1236<br><a href="">250056</a>
1237[compiler][null] Another assert and &quot;Redundant null check&quot;
1238<br><a href="">301683</a>
1239Annotations are broken when native methods are present in a class
1240<br><a href="">300734</a>
1241Extract temp misses duplicate occurrence.
1242<br><a href="">289560</a>
1243Eclipse hangs after modifying user libraries
1244<br><a href="">301562</a>
1245[JSR269] Error in EclipseFileManager.collectAllMatchingFiles
1246<br><a href="">298637</a>
1247Could not retrieve declared methods (NPE in ParameterizedTypeBinding.resolve)
1248<br><a href="">294057</a>
1249[1.5][compiler] Imports not resolved correctly with generics and inner interfaces
1251<a name="v_A33"></a>
1253Eclipse Platform Build Notes<br>
1254Java development tools core</h1>
1255Eclipse SDK 3.6M6 - February 2, 2010
1256<br>Project org.eclipse.jdt.core v_A33
1257(<a href="">cvs</a>).
1258<h2>What's new in this drop</h2>
1260<h3>Problem Reports Fixed</h3>
1261<a href="">300136</a>
1262classpathentry OPTIONAL attribute not honored for var entries
1263<br><a href="">300723</a>
1264Fup of bug 235783
Stephan Herrmann7b7062f2010-04-01 19:56:59 +00001266<a name="v_A32a"></a>
1268Eclipse Platform Build Notes<br>
1269Java development tools core</h1>
1270Eclipse SDK 3.6M5 - January 21, 2010 - 3.6.0 M5
1271<br>Project org.eclipse.jdt.core v_A32a
1272(<a href="">cvs</a>).
1273<h2>What's new in this drop</h2>
1275<h3>Problem Reports Fixed</h3>
1276<a href="">300133</a>
1277[1.5][compiler] Local classes inside enum constants generate default constructor without implicit constructor call
1278<br><a href="">300440</a>
1279icu dependency needs to be udpated
1280<br><a href="">299900</a>
1281[null]Missing potential null warnings for variable on the right of an OR conditional expression
1282<br><a href="">293917</a>
1283Invalid 'potential null access' warning reports
1284<br><a href="">252379</a>
1285Organize imports deletes needed static import.
1287<a name="v_A31"></a>
1289Eclipse Platform Build Notes<br>
1290Java development tools core</h1>
1291Eclipse SDK 3.6M5 - January 18, 2010
1292<br>Project org.eclipse.jdt.core v_A31
1293(<a href="">cvs</a>).
1294<h2>What's new in this drop</h2>
1296<li>New API to fix bug <a href="">295894</a>. See the bug for details.
1299 * Returns a Java search scope limited to the hierarchy of the given type and to a given project.
1300 * The Java elements resulting from a search with this scope will be types in this hierarchy.
1301 *
1302 * Unlike the createHierarchyScope methods, this method creates strict
1303 * scopes that only contain types that actually span the hierarchy of the focus
1304 * type, but do not include additional enclosing or member types.
1305 *
1306 *
1307 * By default, hierarchy scopes include all direct and indirect supertypes and subtypes of the
1308 * focus type. This method, however, allows to restrict the hierarchy to true subtypes,
1309 * not including supertypes. Also inclusion of the focus type itself is controled by a parameter.
1310 *
1311 *
1312 * @param project the project to which to constrain the search, or null if
1313 * search should consider all types in the workspace
1314 * @param type the focus of the hierarchy scope
1315 * @param onlySubtypes if true only subtypes of type are considered
1316 * @param includeFocusType if true the focus type type is included in the resulting scope,
1317 * otherwise it is excluded
1318 * @param owner the owner of working copies that take precedence over original compilation units,
1319 * or null if the primary working copy owner should be used
1320 * @return a new hierarchy scope
1321 * @exception JavaModelException if the hierarchy could not be computed on the given type
1322 * @since 3.6
1323 */
1324public static IJavaSearchScope createStrictHierarchyScope(IJavaProject project, IType type, boolean onlySubtypes, boolean includeFocusType, WorkingCopyOwner owner) throws JavaModelException;
1327<li>New API added to report a compiler warning when object allocations are unused:
1332 * Compiler option ID: Reporting Allocation of an Unused Object.
1333 * When enabled, the compiler will issue an error or a warning if an object is allocated but never used,
1334 * neither by holding a reference nor by invoking one of the object's methods.
1335 *
1336 * Option id:"org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation"
1337 * Possible values:{ "error", "warning", "ignore" }
1338 * Default:"ignore"
1339 *
1340 * @since 3.6
1341 * @category CompilerOptionID
1342 */
1343public static final String COMPILER_PB_UNUSED_OBJECT_ALLOCATION = PLUGIN_ID + ".compiler.problem.unusedObjectAllocation";
1348<h3>Problem Reports Fixed</h3>
1349<a href="">245007</a>
1350[compiler] Should not completely ignore anonymous type with missing super type
1351<br><a href="">295894</a>
1352[search] Search shows focus type implementation for nested types even though the scope is restricted to subtypes.
1353<br><a href="">236385</a>
1354[compiler] Warn for potential programming problem if an object is created but not used
1356<a name="v_A30"></a>
1358Eclipse Platform Build Notes<br>
1359Java development tools core</h1>
1360Eclipse SDK 3.6M5 - January 12, 2010
1361<br>Project org.eclipse.jdt.core v_A30
1362(<a href="">cvs</a>).
1363<h2>What's new in this drop</h2>
1365<li>New API added to expose the reconcile flags used in the reconcile context:
1368 * Returns the reconcile flag of this context. This flag is a bitwise value of the constant defined
1369 * in ICompilationUnit.
1370 *
1371 * @return the reconcile flag of this context
1372 * @since 3.6
1373 *
1374 * @see ICompilationUnit#ENABLE_BINDINGS_RECOVERY
1375 * @see ICompilationUnit#ENABLE_STATEMENTS_RECOVERY
1376 * @see ICompilationUnit#IGNORE_METHOD_BODIES
1377 */
1378public int getReconcileFlags();
1383<h3>Problem Reports Fixed</h3>
1384<a href="">243917</a>
1385[compiler] should not warn about unused field when native method present
1386<br><a href="">296343</a>
1387OOM error caused by java indexing referencing classloader from threadLocal
1388<br><a href="">130000</a>
1389[API] ReconcileContext API: Does getAST3 return AST with bindings?
1390<br><a href="">298238</a>
1391Unresolved import in superclass causes 'Cannot reduce the visibility of the inherited method' in subclass
1393<a name="v_A29a"></a>
1395Eclipse Platform Build Notes<br>
1396Java development tools core</h1>
1397Eclipse SDK 3.6M5 - January 5, 2010
1398<br>Project org.eclipse.jdt.core v_A29a
1399(<a href="">cvs</a>).
1400<h2>What's new in this drop</h2>
1402<h3>Problem Reports Fixed</h3>
1403<a href="">293861</a>
1404Problem with refactoring when existing jar with invalid package names
1405<br><a href="">264112</a>
1406[Formatter] Wrap when necessary too aggressive on short qualifiers
1407<br><a href="">298250</a>
1408[1.6][compiler] NegativeArraySizeException in StackMapFrame.duplicate
1409<br><a href="">296998</a>
1410Unused imports should not prevent execution
1411<br><a href="">298243</a>
1412[formatter] Removing empty lines between import groups
1413<br><a href="">297546</a>
1414[formatter] Formatter removes blank after @see if reference is wrapped
1415<br><a href="">235781</a>
1416[compiler] difference to javac in definite unassignment analysis involving an exception within a constructor
1417<br><a href="">235783</a>
1418[eval] CodeSnippetParser and some 'CodeSnippet*' ast node does not seem up to date
1420<a name="v_A28"></a>
1422Eclipse Platform Build Notes<br>
1423Java development tools core</h1>
1424Eclipse SDK 3.6M5 - December 14, 2009
1425<br>Project org.eclipse.jdt.core v_A28
1426(<a href="">cvs</a>).
1427<h2>What's new in this drop</h2>
1429<h3>Problem Reports Fixed</h3>
1430<a href="">196714</a>
1431[comment] InvalidInputException prevents the AbstractCommentMapper to retrieve tag element
1432<br><a href="">297757</a>
1433Cannot get bindings for IType corresponding to parameterized anonymous type
1434<br><a href="">255640</a>
1435[spec] Methods Signature.toCharArray(..) have unclear precondition
1436<br><a href="">262898</a>
1437BufferChangedEvent must not have @noinstantiate
1438<br><a href="">181682</a>
1439JavaConventions.validateJavaTypeName should list valid constants
1440<br><a href="">108784</a>
1441SourceMapper doesn't find name range of inner class constructors
1443<a name="v_A27"></a>
1445Eclipse Platform Build Notes<br>
1446Java development tools core</h1>
1447Eclipse SDK 3.6M4 - December 8, 2009 - 3.6.0 M4
1448<br>Project org.eclipse.jdt.core v_A27
1449(<a href="">cvs</a>).
1450<h2>What's new in this drop</h2>
1452<h3>Problem Reports Fixed</h3>
1453<a href="">297225</a>
1454[formatter] Indentation may be still wrong in certain circumstances after formatting
1455<br><a href="">293697</a>
1456JavaSearchBugTests.testBug286379c is failing randomly
1458<a name="v_A26"></a>
1460Eclipse Platform Build Notes<br>
1461Java development tools core</h1>
1462Eclipse SDK 3.6M4 - December 7, 2009
1463<br>Project org.eclipse.jdt.core v_A26
1464(<a href="">cvs</a>).
1465<h2>What's new in this drop</h2>
1467<h3>Problem Reports Fixed</h3>
1468<a href="">297045</a>
1469Weird tests failures in N20091204-2000 and N20091205-2000 builds
1470<br><a href="">293300</a>
1471[formatter] The formatter is still unstable in certain circumstances
1473<a name="v_A25"></a>
1475Eclipse Platform Build Notes<br>
1476Java development tools core</h1>
1477Eclipse SDK 3.6M4 - December 4, 2009
1478<br>Project org.eclipse.jdt.core v_A25
1479(<a href="">cvs</a>).
1480<h2>What's new in this drop</h2>
1482<li>Match result can now report the access rules through a new API added on <code>TypeNameMatch</code>:
1485 * Returns the accessibility of the type name match
1486 *
1487 * @see IAccessRule
1488 *
1489 * @return the accessibility of the type name which may be
1490 * {@link IAccessRule#K_ACCESSIBLE}, {@link IAccessRule#K_DISCOURAGED}
1491 * or {@link IAccessRule#K_NON_ACCESSIBLE}.
1492 * The default returned value is {@link IAccessRule#K_ACCESSIBLE}.
1493 *
1494 * @since 3.6
1495 */
1496public abstract int getAccessibility();
1498See bug <a href="">296277</a> for more details.
1502<h3>Problem Reports Fixed</h3>
1503<a href="">296277</a>
1504[search] SearchEngine#searchAllTypeNames(.., TypeNameMatchRequestor,..) should report access rules
1505<br><a href="">296708</a>
1506[DOM/AST] clarify setters when createASTs(..) is used
1507<br><a href="">296629</a>
1508[quick fix] Cast quick fix not offered for method-local classes
1509<br><a href="">295948</a>
1510ElementImpl.hashCode throws an NPE
1511<br><a href="">296660</a>
1512[compiler] Incorrect unused method warning from compiler
1514<a name="v_A24"></a>
1516Eclipse Platform Build Notes<br>
1517Java development tools core</h1>
1518Eclipse SDK 3.6M4 - December 1, 2009
1519<br>Project org.eclipse.jdt.core v_A24
1520(<a href="">cvs</a>).
1521<h2>What's new in this drop</h2>
1523<li>New API added to ignore method bodies inside AST tree. The new APIs are tagged as 3.5.2 as this code
1524will be backported to 3.5.2:
1527 /**
1528 * Requests an abstract syntax tree without method bodies.
1529 *
1530 * When ignore method bodies is enabled, all method bodies are discarded.
1531 * This has no impact on the binding resolution.
1532 *
1533 * If a method contains local types, its method body will be retained.
1534 * This settings is not used if the kind used in setKind(int) is either
1536 * @since 3.5.2
1537 */
1538 public void setIgnoreMethodBodies(boolean enabled);
1541 /**
1542 * Constant indicating that a reconcile operation could ignore to parse the method bodies.
1543 * @see ASTParser#setIgnoreMethodBodies(boolean)
1544 * @since 3.5.2
1545 */
1546 public static final int IGNORE_METHOD_BODIES = 0x08;
1552<h3>Problem Reports Fixed</h3>
1553<a href="">288174</a>
1554[search] NullPointerException when searching for type references
1555<br><a href="">277643</a>
1556Generics compile error
1557<br><a href="">288211</a>
1558APT uses a lot of memory
1560<a name="v_A23"></a>
1562Eclipse Platform Build Notes<br>
1563Java development tools core</h1>
1564Eclipse SDK 3.6M4 - November 24, 2009
1565<br>Project org.eclipse.jdt.core v_A23
1566(<a href="">cvs</a>).
1567<h2>What's new in this drop</h2>
1569<h3>Problem Reports Fixed</h3>
1570<a href="">295698</a>
1571[1.5][compiler] ClassCastException in unchecked warning report
1572<br><a href="">295260</a>
1573Wrong warnings on Java.Compiler.Errors/Warnings &quot;Redundant null check&quot;
1574<br><a href="">190737</a>
1575[compiler][null] missing 'cannot be null' warning within for loop
1577<a name="v_A22"></a>
1579Eclipse Platform Build Notes<br>
1580Java development tools core</h1>
1581Eclipse SDK 3.6M4 - November 16, 2009
1582<br>Project org.eclipse.jdt.core v_A22
1583(<a href="">cvs</a>).
1584<h2>What's new in this drop</h2>
1586<h3>Problem Reports Fixed</h3>
1587<a href="">153429</a>
1588JUnit4 in Eclipse Testing Framework
1589<br><a href="">295238</a>
1590[formatter] The comment formatter add an unexpected new line in block comment
1591<br><a href="">295175</a>
1592[formatter] Missing space before a string at the beginning of a line in a javadoc comment
1593<br><a href="">294529</a>
1594The Scanner sometimes ignores the given offset if larger than the EOF.
1595<br><a href="">294662</a>
1596ClassCastException while invoking quick assist
1597<br><a href="">294404</a>
1598-target jsr14 flags error on foreach over Collection that does not implement Iterable
1599<br><a href="">293955</a>
1600valid javadoc url set on user library, but still says no javadoc
1601<br><a href="">293443</a>
1602AbortCompilation when invoking content assist
1603<br><a href="">293711</a>
1604Clarify ICompilationUnit#getOwner() javadoc
1605<br><a href="">293615</a>
1606error message since v3.6.0M2: name clash by overriding generic methods
1607<br><a href="">294618</a>
1608[formatter] The formatter fails to format a compilation unit with deep nesting of html tags
1609<br><a href="">248312</a>
1610[model] IMemberValuePair#getValue() should also work for negative numerals
1611<br><a href="">294731</a>
1614<a name="v_A21"></a>
1616Eclipse Platform Build Notes<br>
1617Java development tools core</h1>
1618Eclipse SDK 3.6M4 - November 10, 2009
1619<br>Project org.eclipse.jdt.core v_A21
1620(<a href="">cvs</a>).
1621<h2>What's new in this drop</h2>
1623<h3>Problem Reports Fixed</h3>
1624<a href="">294631</a>
1625[formatter] The formatter takes two passes to format a common sequence of html tags
1626<br><a href="">294500</a>
1627[formatter] MalformedTreeException when formatting an invalid sequence of &lt;code&gt; tags in a javadoc comment
1628<br><a href="">294488</a>
1629Javadoc of ISourceReference#getSourceRange() should link to SourceRange#isAvailable(..)
1630<br><a href="">199265</a>
1631[formatter] 3.3 Code Formatter mis-places commented-out import statements
1632<br><a href="">241549</a>
1633[spec] IType#getFields/Initializers/Methods() should define order from class file
1634<br><a href="">275805</a>
1635creating a non-primary working copy causes typeHierarchyChanged event
1636<br><a href="">292510</a>
1637FUP of 292364: Error messages don't identify partial types precisely.
1639<a name="v_A20"></a>
1641Eclipse Platform Build Notes<br>
1642Java development tools core</h1>
1643Eclipse SDK 3.6M4 - November 3, 2009
1644<br>Project org.eclipse.jdt.core v_A20
1645(<a href="">cvs</a>).
1646<h2>What's new in this drop</h2>
1648<h3>Problem Reports Fixed</h3>
1649<a href="">293384</a>
1650Eclipse erroneously reports method &quot;is ambiguous for type&quot;
1651<br><a href="">285002</a>
1652[compiler] visibility error for package private method
1654<a name="v_A19"></a>
1656Eclipse Platform Build Notes<br>
1657Java development tools core</h1>
1658Eclipse SDK 3.6M3 - October 29, 2009 - 3.6M3
1659<br>Project org.eclipse.jdt.core v_A19
1660(<a href="">cvs</a>).
1661<h2>What's new in this drop</h2>
1662This version was created to tentatively fix bug <a href="">293697</a>
1663but it occurs again in subsequent build. So, it has been reopened and moved to next version...
1665<h3>Problem Reports Fixed</h3>
1667<a name="v_A18"></a>
1669Eclipse Platform Build Notes<br>
1670Java development tools core</h1>
1671Eclipse SDK 3.6M3 - October 28, 2009
1672<br>Project org.eclipse.jdt.core v_A18
1673(<a href="">cvs</a>).
1674<h2>What's new in this drop</h2>
1676<h3>Problem Reports Fixed</h3>
1677<a href="">293496</a>
1678Adding the serialVersionUID field doesn't work when tab size is 0
1680<a name="v_A17"></a>
1682Eclipse Platform Build Notes<br>
1683Java development tools core</h1>
1684Eclipse SDK 3.6M3 - October 26, 2009
1685<br>Project org.eclipse.jdt.core v_A17
1686(<a href="">cvs</a>).
1687<h2>What's new in this drop</h2>
1689<li>Reverted change for bug <a href="">263564</a>.</li>
1691<h3>Problem Reports Fixed</h3>
1693<a name="v_A16"></a>
1695Eclipse Platform Build Notes<br>
1696Java development tools core</h1>
1697Eclipse SDK 3.6M3 - October 25, 2009
1698<br>Project org.eclipse.jdt.core v_A16
1699(<a href="">cvs</a>).
1700<h2>What's new in this drop</h2>
1702<li>New API added in <code>org.eclipse.jdt.core.JavaCore</code> in order to fix bug <a href="">263564</a>:
1704 /**
1705 * Returns an immutable map of all known configurable options with their original default values
1706 * as defined by JDT/Core.
1707 *
1708 * The values of these options might be different from the values returned by getDefaultOptions()
1709 * as getDefaultOptions() returned the default options defined by an installation/product/configuration
1710 * (i.e. modified by the usage of a plugin_customization.ini file for example).
1711 *
1712 * These options allow to configure the behaviour of the underlying components.
1713 * If the map is being modified, an UnsupportedOperationException> exception is thrown.
1714 * Helper constants have been defined on JavaCore for each of the option IDs
1715 * (categorized in Code assist option ID, Compiler option ID and Core option ID)
1716 * and some of their acceptable values (categorized in Option value). Some
1717 * options accept open value sets beyond the documented constant values.
1718 * Note: each release may add new options.
1719 *
1720 * @return an immutable map of all known configurable options with their original default values
1721 * as defined by JDT/Core
1722 * @since 3.6
1723 */
1724 public static Map getOriginalDefaultOptions();
1729<h3>Problem Reports Fixed</h3>
1730<a href="">293240</a>
1731[formatter] 'insert_space_before_opening_brace_in_array_initializer' preference may be reset in certain circumstances
1732<br><a href="">263564</a>
1733API to know when default compiler preference settings have been altered
1734<br><a href="">289385</a>
1735Investigate comment in performance tests
1736<br><a href="">286379</a>
1737[search] Problem while searching class
1739<a name="v_A15"></a>
1741Eclipse Platform Build Notes<br>
1742Java development tools core</h1>
1743Eclipse SDK 3.6M3 - October 20, 2009
1744<br>Project org.eclipse.jdt.core v_A15
1745(<a href="">cvs</a>).
1746<h2>What's new in this drop</h2>
1748<h3>Problem Reports Fixed</h3>
1749<a href="">292350</a>
1750[1.5][compiler] Compiler error: ambiguous method since 3.5.1 using generics and interface inheritance
1751<br><a href="">292364</a>
1752[internal] Type name in CastExpression not treated as Type name.
1753<br><a href="">292428</a>
1754Internal compiler error: NullPointerException at org.eclipse.jdt.internal.compiler.ast.CastExpression.checkUnsafeCast(
1755<br><a href="">291985</a>
1756[compiler][jsr14] Translating Enum with jsr14 target: ECJ causes a runtime error while Sun compiler works fine
1757<br><a href="">292240</a>
1758Compiler error on implementation of raw sub interface
1760<a name="v_A14"></a>
1762Eclipse Platform Build Notes<br>
1763Java development tools core</h1>
1764Eclipse SDK 3.6M3 - October 13, 2009
1765<br>Project org.eclipse.jdt.core v_A14
1766(<a href="">cvs</a>).
1767<h2>What's new in this drop</h2>
1769<h3>Problem Reports Fixed</h3>
1770<a href="">291391</a>
1771update the Bundle-Version of the JDT Core Batch Compiler (ecj) from 3.3.0 to 3.6.*
1772<br><a href="">284280</a>
1773[1.5][compiler] Error on use generic interface in abstract super class
1774<br><a href="">286228</a>
1775[1.5][compiler] Generics inconsistencies possible regression
1776<br><a href="">286601</a>
1777[formatter] Code formatter formats anonymous inner classes wrongly when 'Never join lines' is on
1778<br><a href="">215139</a>
1779[search] More options for HierarchyScope
1780<br><a href="">291472</a>
1781[1.5][compiler] Access to a generic method is compiled incorrectly
1782<br><a href="">283539</a>
1783NamingConventions.suggestVariableNames doesn't work if name contains '_'
1784<br><a href="">280784</a>
1785[batch] Allow access restrictions to be reported as errors
1787<a name="v_A13"></a>
1789Eclipse Platform Build Notes<br>
1790Java development tools core</h1>
1791Eclipse SDK 3.6M3 - October 6, 2009
1792<br>Project org.eclipse.jdt.core v_A13
1793(<a href="">cvs</a>).
1794<h2>What's new in this drop</h2>
1796<li>Reverted fix for <a href="">106478</a>.</li>
1799<h3>Problem Reports Fixed</h3>
1800<a href="">291322</a>
1801Test errors when running JDT Core tests on Windows 7
1802<br><a href="">282770</a>
1803[compiler] Dead code detection should have specific @SuppressWarnings
1804<br><a href="">290028</a>
1805Use IResource#setDerived(boolean, IProgressMonitor) instead of IResource#setDerived(boolean)
1806<br><a href="">287607</a>
1807[1.5][compiler] cast of inner of generic enclosing type are not reported as unsafe
1808<br><a href="">288749</a>
1809Redundant superinterface not flagged inside one declaration
1810<br><a href="">290905</a>
1811[formatter] Certain formatter pref constellation cause endless loop ==&gt; OOME
1812<br><a href="">285124</a>
1813serialVersionUID still causes error/warning
1814<br><a href="">290877</a>
1815[DOM] If using a tag named '@enum' the ASTParser ignores this
1816<br><a href="">281575</a>
1817Eclipse hangs in SourceMapper while doing java proposals
1818<br><a href="">290470</a>
1819[JSR199][compiler] JDT compiler not jsr199 compatible.
1820<br><a href="">290730</a>
1821Rewriting SwitchStatement throws NPE
1823<a name="v_A12"></a>
1825Eclipse Platform Build Notes<br>
1826Java development tools core</h1>
1827Eclipse SDK 3.6M3 - September 29, 2009
1828<br>Project org.eclipse.jdt.core v_A12
1829(<a href="">cvs</a>).
1830<h2>What's new in this drop</h2>
1832<h3>Problem Reports Fixed</h3>
1833<a href="">287676</a>
1834[1.5][compiler] Useless cast warning not emited
1835<br><a href="">290563</a>
1836add specification for fine grain search flags
1837<br><a href="">290376</a>
1838Errant &quot;Comparing identical expressions&quot; warning with assignment
1839<br><a href="">287592</a>
1840[1.5][compiler] Wrong ambiguous compilation error
1841<br><a href="">290049</a>
1842Reconciling a compilation unit does not return an AST with bindings when it should (probably)
1843<br><a href="">290034</a>
1844Effects of @SuppressWarnings(&quot;unchecked&quot;) are broader in Eclipse than in javac
1845<br><a href="">267561</a>
1846[evaluation] LocalEvaluationEngine does not accept primitive types
1847<br><a href="">163194</a>
1848[1.6] compiler should warn about missing @Override annotation for interface method
1850<a name="v_A11"></a>
1852Eclipse Platform Build Notes<br>
1853Java development tools core</h1>
1854Eclipse SDK 3.6M3 - September 22, 2009
1855<br>Project org.eclipse.jdt.core v_A11
1856(<a href="">cvs</a>).
1857<h2>What's new in this drop</h2>
1859<h3>Problem Reports Fixed</h3>
1860<a href="">289892</a>
1861[compiler] NPE during binaryTypeBinding field initialization
1862<br><a href="">287833</a>
1863[formatter] Formatter removes the first character after the * in the &lt;pre&gt; tag
1864<br><a href="">238943</a>
1865SortElementsOperation doesn't use project specific settings
1866<br><a href="">288621</a>
1867[1.5][compiler] Creating type hierarchy failed when pressing F4
1868<br><a href="">289538</a>
1869[1.5][compiler] compiler fails to generate correct code for private constructor in inner class
1870<br><a href="">289639</a>
1871Problems opening perspective JavaPerspective, NPE on JavaModelManager.containersReset()
1872<br><a href="">289516</a>
1873Annotations (visible and invisible) should be preserved with target jsr14
1874<br><a href="">289576</a>
1875[1.5][compiler] Compiler changes 'private' modifier on methods with annotated parameter
1877<a name="v_A10"></a>
1879Eclipse Platform Build Notes<br>
1880Java development tools core</h1>
1881Eclipse SDK 3.6M2 - September 14, 2009 - 3.6M2
1882<br>Project org.eclipse.jdt.core v_A10
1883(<a href="">cvs</a>).
1884<h2>What's new in this drop</h2>
1886<h3>Problem Reports Fixed</h3>
1887<a href="">288148</a>
1888[perfs] Comments applied for performance tests may be obsolete
1889<br><a href="">289247</a>
1890[1.5][compiler]Detecting duplicate methods should not consider return type
1891<br><a href="">288920</a>
1892[compiler] NPE renaming run() method
1893<br><a href="">288698</a>
1894Cannot create type hierarchy for abstract types when they have inline descendants and *.class* in project name
1896<a name="v_A09"></a>
1898Eclipse Platform Build Notes<br>
1899Java development tools core</h1>
1900Eclipse SDK 3.6M2 - September 1, 2009
1901<br>Project org.eclipse.jdt.core v_A09
1902(<a href="">cvs</a>).
1903<h2>What's new in this drop</h2>
1905<h3>Problem Reports Fixed</h3>
1906<a href="">287009</a>
1907Inner Annotation Checks are Missing
1908<br><a href="">287701</a>
1909[dom] Length of Assignment should not include whitespace
1910<br><a href="">285230</a>
1911[performance] Duplicate buffers created for internal classes
1912<br><a href="">286391</a>
1913[compiler] jsr14 target behavior changed between ECJ 3.4.2 and ECJ 3.5
1915<a name="v_A08"></a>
1917Eclipse Platform Build Notes<br>
1918Java development tools core</h1>
1919Eclipse SDK 3.6M2 - August 25, 2009
1920<br>Project org.eclipse.jdt.core v_A08
1921(<a href="">cvs</a>).
1922<h2>What's new in this drop</h2>
1924<h3>Problem Reports Fixed</h3>
1925<a href="">287462</a>
1926[formatter] new failures in last 2 nightly builds
1927<br><a href="">285565</a>
1928[inline] Inlining constant or local variables causes exceptions with tab width 0
1929<br><a href="">285799</a>
1930HashtableOfObject rehashes and grows buffer on removeKey()
1931<br><a href="">286912</a>
1932[formatter] Never join lines preferences makes the formatter unstable in certain circumstances
1933<br><a href="">286668</a>
1934[formatter] 'Never Join Lines' joins lines that are split on method invocation
1935<br><a href="">248661</a>
1936Axis2: Missing required libraries in Axis 2 WS Client Projects
1937<br><a href="">286918</a>
1938[javadoc] Compiler should warn when @see and @link tag references in don't have fully qualified names
1939<br><a href="">285466</a>
1940[3.5 regression] fails to build IcedTea, works with 3.4.x
1941<br><a href="">286956</a>
1942NPE when asking to externalize constant
1943<br><a href="">281609</a>
1944[javadoc] &quot;Javadoc: Invalid reference&quot; warning for @link to Java package
1946<a name="v_A07"></a>
1948Eclipse Platform Build Notes<br>
1949Java development tools core</h1>
1950Eclipse SDK 3.6M2 - August 18, 2009
1951<br>Project org.eclipse.jdt.core v_A07
1952(<a href="">cvs</a>).
1953<h2>What's new in this drop</h2>
1955<h3>Problem Reports Fixed</h3>
1956<a href="">286840</a>
1957ClasspathJar getPath() should return a unique path
1958<br><a href="">254738</a>
1959NPE in HierarchyResolver.setFocusType
1960<br><a href="">276294</a>
1961Error does not go away after it is resolved
1962<br><a href="">284785</a>
1963[1.5][compiler] Eclipse compiler shows error on javac-valid construct: varargs plus overload
1964<br><a href="">286405</a>
1965Default value character of annotations in ClassFileEditor are badly printed
1966<br><a href="">286407</a>
1967[Model] IMemberValuePair don't return the right value for java.lang.annotation.RetentionPolicy annotations
1968<br><a href="">285701</a>
1969[1.5][compiler] Internal Compiler Error - ArrayIndexOutOfBoundsException
1971<a name="v_A06"></a>
1973Eclipse Platform Build Notes<br>
1974Java development tools core</h1>
1975Eclipse SDK 3.6M1 - August 3, 2009 - 3.6M1
1976<br>Project org.eclipse.jdt.core v_A06
1977(<a href="">cvs</a>).
1978<h2>What's new in this drop</h2>
1980<h3>Problem Reports Fixed</h3>
1981<a href="">284948</a>
1982[1.6][compiler] Java annotations are broken in editor when used on interface methods
1984<a name="v_A05"></a>
1986Eclipse Platform Build Notes<br>
1987Java development tools core</h1>
1988Eclipse SDK 3.6M1 - July 30, 2009
1989<br>Project org.eclipse.jdt.core v_A05
1990(<a href="">cvs</a>).
1991<h2>What's new in this drop</h2>
1993<h3>Problem Reports Fixed</h3>
1994<a href="">276526</a>
1995[content assist] Error - Type Duplicate interface Iterable for the type TestClass
1996<br><a href="">191176</a>
1997JavaProject#getOption optimizations
1999<a name="v_A04"></a>
2001Eclipse Platform Build Notes<br>
2002Java development tools core</h1>
2003Eclipse SDK 3.6M1 - July 28, 2009
2004<br>Project org.eclipse.jdt.core v_A04
2005(<a href="">cvs</a>).
2006<h2>What's new in this drop</h2>
2008<h3>Problem Reports Fixed</h3>
2009<a href="">261909</a>
2010ClassFileReader.getModifiers() answers funny bits
2011<br><a href="">283225</a>
2012[1.6][compiler] classfile versus source conformance check too strict
2013<br><a href="">284679</a>
2014[formatter] empty single semi statement prevent enum elements format
2015<br><a href="">284482</a>
2016[compiler] Collision cases not detected
2017<br><a href="">284431</a>
2018Different inherited thrown exception clauses are not properly handled
2019<br><a href="">133911</a>
2020type.move() returns unclear exception &quot;invalid destination&quot;
2021<br><a href="">270436</a>
2022[assist] Interface type proposed where only class is legal
2023<br><a href="">210385</a>
2024[compiler] ProblemReporter#getProblemCategory misbehaves when passed ProblemSeverities.Ignore as severity parameter
2025<br><a href="">282891</a>
2026[compiler] "Comparing identical expressions" warning sometimes invalid
2027<br><a href="">282869</a>
2028[compiler] Unnecessary cast warning for cast from char to int
2029<br><a href="">270437</a>
2030[assist] Completion proposal leads to cycle detected error
2031<br><a href="">217443</a>
2032Documentation for JavaCore#CORE_ENCODING does not match the observed behavior
2034<a name="v_A03"></a>
2036Eclipse Platform Build Notes<br>
2037Java development tools core</h1>
2038Eclipse SDK 3.6M1 - July 21, 2009
2039<br>Project org.eclipse.jdt.core v_A03
2040(<a href="">cvs</a>).
2041<h2>What's new in this drop</h2>
2043<h3>Problem Reports Fixed</h3>
2044<a href="">283467</a>
2045[formatter] wrong indentation with 'Never join lines' selected
2046<br><a href="">281776</a>
2047Should not warn for comparison of identical expression with float type
2048<br><a href="">282768</a>
2049[compiler] Dead code detection should ignore trivial case for ternary if operator
2050<br><a href="">283133</a>
2051[formatter] IAE when pasting a snippet
2052<br><a href="">283299</a>
2053Complete SourceRange API
2055<a name="v_A02"></a>
2057Eclipse Platform Build Notes<br>
2058Java Development Tooling Core</h1>
2059Eclipse SDK 3.6M1 - July 13, 2009
2060<br>Project org.eclipse.jdt.core v_A02
2061(<a href="">cvs</a>).
2062<h2>What's new in this drop</h2>
2064<li>Added new API type org.eclipse.jdt.core.SourceRange</li>
2067<h3>Problem Reports Fixed</h3>
2068<a href="">271296</a>
2069[assist] void typed proposal may not be appropriate in many contexts
2070<br><a href="">281871</a>
2071[content assist] The extension took too long to return from the 'computeCompletionProposals()' operation
2072<br><a href="">281598</a>
2073[assist] Problems during content assist - if project has empty zip file in classpath
2074<br><a href="">235294</a>
2075[formatter] javadoc for DefaultCodeFormatterConstants#FORMATTER_ALIGNMENT_FOR_ASSIGNMENT cites a non-API constant
2076<br><a href="">280497</a>
2077Incorrect null result for IJavaProject.getClasspathEntryFor(IPath)
2078<br><a href="">204777</a>
2079Clarify documentation for ITypeHierarchy created on interface types
2080<br><a href="">88265</a>
2081Make SourceRange API
2083<a name="v_A01"></a>
2085Eclipse Platform Build Notes<br>
2086Java development tools core</h1>
2087Eclipse SDK 3.6M1 - July 7, 2009
2088<br>Project org.eclipse.jdt.core v_A01
2089(<a href="">cvs</a>).
2090<h2>What's new in this drop</h2>
2092<h3>Problem Reports Fixed</h3>
2093<a href="">260968</a>
2094Deadlock in UserLibraryManager
2096<a name="v_A00"></a>
2098Eclipse Platform Build Notes<br>
2099Java development tools core</h1>
2100Eclipse SDK 3.6M1 - June 30, 2009
2101<br>Project org.eclipse.jdt.core v_A00
2102(<a href="">cvs</a>).
2103<h2>What's new in this drop</h2>
2105<li>New API added to handle the new <code>invokedynamic</code> bytecode:
2108 public void _invokedynamic(
2109 int pc,
2110 int index,
2111 IConstantPoolEntry nameEntry,
2112 IConstantPoolEntry descriptorEntry) {
2113 // default behavior is to do nothing
2114 }
2116<pre>org.eclipse.jdt.core.util.IBytecodeVisitor#_invokedynamic(int, int, IConstantPoolEntry, IConstantPoolEntry)</pre>
2121<h3>Problem Reports Fixed</h3>
2122<a href="">277450</a>
2123[1.5][compiler] Problems with += and Autoboxing/Unboxing
2124<br><a href="">206498</a>
2125[1.7][compiler] Remove fix for bug 206483 once 1.7 VMS can handle .class files with version 51.0
2126<br><a href="">191176</a>
2127JavaProject#getOption optimizations
2128<br><a href="">201762</a>
2129Content Assist has no proposals with certain CU structure
2130<br><a href="">281681</a>
2131Stale code in CompilerOptions
2132<br><a href="">231796</a>
2133[formatter] @throws tag description is not indented using @param preference when there's a syntax error
2134<br><a href="">255142</a>
2135[select] Codeselect should not omit cast
2136<br><a href="">235295</a>
2137[formatter] javadoc of CodeFormatter#F_INCLUDE_COMMENTS needs improvement
2138<br><a href="">280134</a>
2139[1.5][compiler] Requesting Java AST from selection has encountered a problem
2140<br><a href="">281317</a>
2141[search] An internal error occurred during: "Java Search".
2142<br><a href="">276373</a>
2143Incorrect resource comparison with IJavaProject.isOnClasspath(IResource)
2144<br><a href="">275518</a>
2145[assist] Content assist does not provide proposals if invoked right after a method's opening brace
2146<br><a href="">280888</a>
2147change a java file in one plug-in will compile all related plugin projects
2148<br><a href="">274466</a>
2149[assist] Assert expressions should be proposed with high relevance
2150<br><a href="">277382</a>
2151NPE and other failures in Parser
2152<br><a href="">275330</a>
2153NPE from org.eclipse.jdt.internal.core.ClasspathChange.requestIndexing
2154<br><a href="">273385</a>
2155[model] NPE while closing project
2156<br><a href="">280079</a>
2158<br><a href="">280063</a>
2159org.eclipse.jdt.internal.compiler.parser.Parser.parseClassBodyDeclarations(char[], int, int, CompilationUnitDeclaration) should return consistent results
2160<br><a href="">267046</a>
2161SourceMapper infinite loop on primitive type in generic
2162<br><a href="">240934</a>
2163Add support for the invokedynamic bytecode into the disassembler
2164<br><a href="">267551</a>
2165[formatter] Wrong spacing in default array parameter for annotation type
2166<br><a href="">277965</a>
2167[compiler] NPE in canBeSeenBy due to illegal protected toplevel class
2168<br><a href="">273990</a>
2169[compiler] FUP of 269388: Eclipse accepts code rejected by javac
2170<br><a href="">279183</a>
2171[1.6][compiler] Inconsistent stackmap frames generated by JDT cause VerifyError
2172<br><a href="">209778</a>
2173[search] TypeReferenceMatch#getOtherElements() fails for match in annotation
2174<br><a href="">221065</a>
2175[search] Search still finds overridden method
2176<br><a href="">279836</a>
2177[1.5][compiler] Eclipse compiler shows error on javac-valid construct: raw types on overridden methods
2178<br><a href="">280616</a>
2179[formatter] Valid 1.5 code is not formatted inside &lt;pre&gt; tag
2180<br><a href="">280255</a>
2181[formatter] Format edited lines adds two new lines on each save
2182<br><a href="">280061</a>
2183[formatter] AIOOBE while formatting javadoc comment
2184<br><a href="">276938</a>
2185Remove unreachable removes reachable logic in case statement.
2186<br><a href="">274898</a>
2187[recovery] IllegalArgumentException in ASTNode#setSourceRange()
2188<br><a href="">277204</a>
2189IAE in SharedASTProvider for generic local class.
2190<br><a href="">276741</a>
2191comparing identical value detection does not work for this
2192<br><a href="">276740</a>
2193comparing identical value detection does not work for primitive types
2194<br><a href="">278745</a>
2195Methods overloaded with unavailable types worked in 3.4 but give "indirectly referenced.." error in 3.5
2196<br><a href="">278305</a>
2197[1.5][compiler] JDT accepts supertype parameterized with wildcard
2198<br><a href="">196308</a>
2199[formatter] Don't escape entity when formatting in &lt;pre&gt; tags within javadoc comments
2200<br><a href="">279359</a>
2201[formatter] Formatter with 'never join lines' produces extra level of indent
2202<br><a href="">273619</a>
2203[formatter] Formatting repeats *} in javadoc
2206<p>For earlier build notes, also see <a href="">build notes up to Release 3.5</a>.</p>
2208 <p>
2209 <a href=""><img
2210 src=""
2211 alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>
2212 </p>