Initial combined news for Kepler
diff --git a/platform/4.3/final/eclipse-news-part1.html b/platform/4.3/final/eclipse-news-part1.html
index d359321..afb54d7 100644
--- a/platform/4.3/final/eclipse-news-part1.html
+++ b/platform/4.3/final/eclipse-news-part1.html
@@ -12,7 +12,7 @@
 table.news tr td.title {vertical-align: top; width: 30%; font-weight: bold;}

 table.news tr td.content {vertical-align: top; width: 70%;}

 </style>

-<title>Eclipse Kepler - New and Noteworthy</title>

+<title>Eclipse Project Kepler - New and Noteworthy</title>

 </head>

 <body>

 <h2>Platform and Equinox</h2>

@@ -20,9 +20,173 @@
 <!-- ****************** START OF N&N TABLE ****************** -->

 <table class="news" cellpadding="10" cellspacing="0">

 

-  <!-- ******************** Platform ********************** -->

-  <tr>

-    <td id="Platform" class="section" colspan="2"><h2>Platform Changes</h2></td>

+  <tr id="detached-sash">

+    <td class="title">Detached windows with sash</td>

+    <td class="content">

+      When you detach a view or editor into its own separate window, it now

+      has all the capabilities of a normal workbench window. They now support multiple stacks of

+      views separated by sashes with arbitrary layouts. The detached parts will remain synchronized

+      with the master window that they were detached from. This is especially handy for people developing

+      with two or more monitors, so they can spread views across several monitors and keep them synchronized.

+		<p><img src="images/detached-sash.png" alt="Detached window with multiple views separated by sash."/></p>

+    </td>

+  </tr>

+

+   <tr id="detect-shared-install-change">

+    <td class="title">Detection of shared install changes</td>

+    <td class="content">

+	  When running in a read-only folder (also known as shared install) and the read-only

+	  installation has changed (e.g. new plugins installed, new version of Eclipse installed), Eclipse 

+	  will now detect this change and warn that your personal additional plugins have been uninstalled.

+	  A migration wizard will then guide you through the steps to re-install your plug-ins, if they are

+	  still compatible with your other installed software.

+	 <p>This wizard is presented in two situations. First, when a read-only installation is being 

+	 changed (i.e. your application is being updated or plugins are added or removed), second when a new read-only 

+	 installation is run for the first time.</p>

+     <p><img src="images/migration-wizard.png" alt=""/></p>

+    </td>

+  </tr>

+  

+  <tr id="remediation"> 

+    <td class="title">Installation Remediation</td>

+    <td class="content">

+	 In order to help you deal with dependency errors while installing software, the various installation wizards now contain 

+	 a new wizard page. This page, called <b>remediation</b>, proposes various solutions in order to help you proceed 

+	 with the installation, even when the exact change you requested is not possible.

+	 <p>

+	 The picture below shows a screenshot of this page in action. In this particular case the user is trying to install something

+	 that is conflicting with what is installed, and the wizard gives the option to update what is installed so that the installation

+	 can proceed.

+	 </p>

+     <p><img src="images/remediation.png" alt=""/></p>

+    </td>

+  </tr>

+

+  <tr id="gtk3">

+    <td class="title">SWT for GTK3</td>

+    <td class="content">

+      32-bit and 64-bit GTK3 have joined the lineup of supported configurations for which SWT and Eclipse are routinely built. This implementation is currently early access. Everyone is encouraged to download and test these new builds, and to log bugs in <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Platform">bugzilla</a>.

+      <p>Note to load the SWT GTK3 libraries, you must set an environment variable SWT_GTK3 prior to starting Eclipse. (ex. export SWT_GTK3=1)</p>

+      <p><img src="images/gtk3.png" alt="GTK3 Control Example"/></p>  

+	</td>

+  </tr>

+

+   <tr id="performance">

+    <td class="title">Performance enhancements</td>

+    <td class="content">

+      Significant performance enhancements have been made in the Platform user interface in this release. In particular, some applications

+      that were experiencing slow editor opening, closing, and switching are now much faster. Editor selection changes and the <b>Open Resource</b>

+      dialog have also been made faster. A number of leaks have been addressed to ensure

+      long-running applications don't run out of memory.

+      <p><img src="images/speed.jpg" alt="Speedometer"/><br/>

+	  <small>Photographer: YtseJam Photography / Creative Commons Attribution 2.0</small>

+	  </p>

+	</td>

+  </tr>

+

+  <tr id="trim-drag">

+    <td class="title">Trim dragging</td>

+    <td class="content">

+      You can now drag toolbars to reposition them. 

+      <p><img src="images/trim-drag.png" alt="Dragging a toolbar."/></p>

+      <p>The perspective switcher can also be dragged to the left or right of the window and it will switch to a 

+        vertical orientation.</p>

+	  <p><img src="images/vertical-switcher.png" alt="Dragging perspective switcher to vertical orientation."/></p>

+    </td>

+  </tr>

+

+  <tr id="import-nested">

+    <td class="title">Import nested projects</td>

+    <td class="content">

+      The <b>Import Projects</b> wizard now has an option to continue searching for projects to import

+      recursively within any project it finds. This allows you to import physically nested projects

+      at the same time.

+      <p><img src="images/import-nested.png" alt="Import nested projects."/></p>

+    </td>

+  </tr>

+

+  <tr id="open-resource-buttons">

+    <td class="title">Open Resource dialog enhancements</td>

+    <td class="content">

+      The <b>Open Resource</b> (<b>Ctrl+Shift+R</b>) dialog now offers direct access to the

+      <b>Show In</b> and <b>Open With</b> menus via drop-down buttons. On platforms that

+      support mnemonics, the buttons are also accessible via <b>Alt+W</b> and <b>Alt+H</b>.

+      <p><img src="images/open-resource-buttons.png" alt=""/></p>

+    </td>

+  </tr>

+  

+  <tr id="whole-word-option">

+    <td class="title">Whole word option on File Search page</td>

+    <td class="content">

+     The <b>File Search</b> page now allows to search for words via a new option:

+     <p><img src="images/whole-word-option.png" alt=""/></p>

+    </td>

+  </tr>

+  

+  <tr id="use-last-page-option">

+    <td class="title">Open Search dialog on last used page</td>

+    <td class="content">

+     The Search dialog can now be configured to open on the last used page, instead of 

+     computing the best matching page based on the current selection:

+     <p><img src="images/use-last-page-option.png" alt=""/></p>

+    </td>

+  </tr>

+

+  <tr id="only-include-exported-entries">

+    <td class="title">Global preference to include exported entries during launching</td>

+    <td class="content">

+      A new global preference has been added so you can only allow exported classpath entries to be used during launching. Previously, this 

+      was only customizable per launch configuration on the default classpath entry on the Java Classpath tab. The new preference does not affect 

+      launch configuration data, so no migration is needed.

+      

+      <p>

+      The new preference can be found on the <b>Java &gt; Debug</b> preference page.</p>

+      <p><img src="images/only-include-exported.png" alt="New global preference to only include exported classpath entries"/></p>

+      

+    </td>

+  </tr>

+  

+  <tr id="launch-dialog-warnings">

+    <td class="title">Launch configuration dialog can show warnings</td>

+    <td class="content">

+      Previously, contributors could only set an 'ok' or an 'error' state in their launch configuration tags / groups. Now,

+      contributors can set a warning state with a message for their tabs / groups - possibly warning users about set options

+      that might be problematic, but do not necessarily need to prevent launching.

+      <p><img src="images/lcd-warnings.png" alt="Launch configuration dialog showing warning message / state"/></p>

+    </td>

+  </tr>

+  

+  <tr id="x-start-on-first-thread">

+    <td class="title">Option to omit <span style="letter-spacing:-0.05em;">-XstartOnFirstThread</span></td>

+    <td class="content">

+      If you are launching an SWT program on Mac OS X, you can now selectively add / remove the <code>-XstartOnFirstThread</code> VM argument

+      in the event your VM does not support it. This option can be configured per launch configuration and is available on the standard Arguments

+      tab for Java configurations (Java Application, Eclipse, etc.).

+      <p><img src="images/x-start-on-first-thread.png" alt="New VM preference allowing users to selectively add the -XstartOnFirstThread argument per-configuration"/></p>

+    </td>

+  </tr>

+

+  <tr id="ant-augment">

+    <td class="title">Support for the Ant augment task</td>

+    <td class="content">

+      The Ant editor now has support for the Ant

+      <a href="http://ant.apache.org/manual/Tasks/augment.html">

+      <code>augment</code></a> task.  

+    </td>

+  </tr>

+  

+  <tr id="stop-thread">

+    <td class="title">Stop thread from OSGi console</td>

+    <td class="content">

+      If a bad plug-in runs into an endless loop, then you usually had to kill the whole Eclipse process.

+      Now, you can launch Eclipse with <code>-console [[host:]port]</code> to get a safety ring.

+      If you're then stuck in an endless loop and Eclipse doesn't respond any more, you can just execute

+      <pre>osgi&gt; threads stop main</pre>

+      at the OSGi prompt. This will send an IllegalStateException to the "main" thread.

+      This is usually enough to stop the endless loop, but keep the Eclipse workbench running.

+      <p>If you don't want to keep a console window around, you can pass a port number (e.g. 12345) after

+      the <code>-console</code> command line argument and later use <code>telnet localhost:12345</code> to connect.</p>

+    </td>

   </tr>

 

   <!-- ****************** END OF N&N TABLE ****************** -->

diff --git a/platform/4.3/final/eclipse-news-part2.html b/platform/4.3/final/eclipse-news-part2.html
index e638fce..a521593 100644
--- a/platform/4.3/final/eclipse-news-part2.html
+++ b/platform/4.3/final/eclipse-news-part2.html
@@ -12,7 +12,7 @@
 table.news tr td.title {vertical-align: top; width: 30%; font-weight: bold;}

 table.news tr td.content {vertical-align: top; width: 70%;}

 </style>

-<title>Eclipse Kepler - New and Noteworthy</title>

+<title>Eclipse Project Kepler - New and Noteworthy</title>

 </head>

 <body>

 <h2>Java development tools</h2>

@@ -21,18 +21,441 @@
 

 <table class="news" cellpadding="10" cellspacing="0">

 

-  <tbody>

-  

   <!-- ******************* Java Editor ************************************* -->

   <tr>

     <td id="JavaEditor" class="section" colspan="2">

     <h2>Java Editor </h2>

     </td>

   </tr>

+  

+  <tr id="convert-if-else-to-switch">

+    <td class="title">New 'Convert if-else to switch' Quick Assist</td>

+    <td class="content">

+      The new <b>Convert 'if-else' to 'switch'</b> quick assist (<b>Ctrl+1</b>) allows you to convert an if-else statement to 

+      an equivalent switch statement:

+      <p><img src="images/convert-if-else-to-switch.png" alt=""/></p>

+      

+      This quick assist is the reverse of the existing <b>Convert 'switch' to 'if-else'</b> quick assist.

+    </td>

+  </tr>  

+    

+  <tr id="convert-to-if-return">

+    <td class="title">'Convert to if-!-return' Quick Assist</td>

+    <td class="content">

+     Ever encountered a long <code>if</code> statement that can be safely inverted to an early return, so that you can ignore the code that follows, and make it easier to understand? 

+     Now, you can just use a quick assist <b>(Ctrl+1)</b> on the <code>if</code> statement to do this refactoring:

+     <p><img src="images/convert-to-if-!-return.png" alt=""/></p>

+    </td>

+  </tr>

+  

+  <tr id="create-loop-variable">

+    <td class="title">Quick Fix to create 'for' loop variable</td>

+    <td class="content">

+      The new <b>Create loop variable</b> quick fix corrects an incomplete 'for' loop

+      by adding the type of the loop variable:

+      <p><img src="images/create-loop-variable.png" alt="Corrects 'for (e: elements) {}' to 'for (ElementType e: elements) {}'"/></p>

+    </td>

+  </tr>

+          

+  <tr id="combine-strings">

+    <td class="title">Quick Assist to combine Strings</td>

+    <td class="content">

+      The new <b>Combine to single String</b> quick assist (<b>Ctrl+1</b>) replaces String concatenations

+      with a single String literal:

+      <p>

+        <img src="images/combine-strings.png" alt="String s = &quot;Delete &quot; + &quot;two&quot; + &quot; files?&quot; // becomes: String s = &quot;Delete two files?&quot;"/>

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="Quick-Assist-for-unused-type-parameters">

+    <td class="title">Quick Assist for unused type parameters</td>

+    <td class="content">

+      The Java editor now provides a quick assist (<b>Ctrl+1</b>) to remove or document unused type parameters:

+      <p><img src="images/quickassist-for-unused-type-parameter-example.png" alt=""/></p>

+    </td>

+  </tr>

+  

+  <tr id="proposals-without-prefix">

+    <td class="title">Template and keyword proposals without prefix</td>

+    <td class="content">

+      Content assist now proposes templates and keywords without needing a prefix first:

+      <p><img src="images/content-assist.png" alt=""/></p>

+    </td>

+  </tr>

+       

+  <tr id="remove-type-arguments">

+    <td class="title">Remove type arguments after content assist</td>

+    <td class="content">

+     Ever encountered a case where content assist added type arguments for a generic type, but you do not want them

+     because you need the <code>.class</code> literal or you want to invoke a static method?

+     Now, rather than deleting all the arguments manually, 

+     you can just delete the '<code>&lt;</code>' and that will remove the entire text up to '<code>&gt;</code>'.

+    </td>

+  </tr>

+  

+  <tr id="semicolon-appended-for-void-methods">

+    <td class="title">Content assist appends ';' to void methods</td>

+    <td class="content">

+    If a void method is selected during content assist, then a semicolon is now automatically

+    appended at the end of the method invocation.

+    </td>

+  </tr>

+  

+  <tr id="semicolon-key-inserts-method">

+    <td class="title">Use ';' key to insert method invocation</td>

+    <td class="content">

+    Irrespective of the return type of a method, you can now use the semicolon (<b>;</b>) key to select any method invocation proposal

+    from the content assist popup. The '<code>;</code>' will be appended at the end of the method invocation.

+    </td>

+  </tr>  

+  

+  <!-- ******************* Java Compiler ************************************* -->

+  <tr>

+    <td id="JavaCompiler" class="section" colspan="2">

+    <h2>Java Compiler</h2>

+    </td>

+  </tr>

+  

+  <tr id="content-assist-TL_CONSTRUCTOR_START">

+    <td class="title">New API to indicate content assist requested on the start of a constructor</td>

+    <td class="content">

+      org.eclipse.jdt.core.CompletionContext.TL_CONSTRUCTOR_START:

+      <pre>

+	  /**

+	   * The completed token is the first token of a constructor

+	   * invocation expression.

+	   * e.g.

+	   * 

+	   * public class X {

+	   *   public void bar() {

+	   *     new Foo| // completion occurs at |

+	   *   }

+	   * }

+	   */

+	</pre>

+    </td>

+  </tr>

+  

+   <tr id="tolerateIllegalAmbiguousVarargsInvocation">

+    <td class="title">Force Eclipse to compile (illegal) ambiguous varargs code</td>

+    <td class="content"> JDK 6 and below had a bug and considered the code below legal.

+	However, this bug was fixed in JDK 7 and the code now reports an ambiguous invocation error at the call site for test(..).

+	Eclipse Juno followed and fixed this across all compliance levels:

+	<p><a href="images/illegal-ambiguous-varargs-error.txt"><img src="images/illegal-ambiguous-varargs-error.png" alt="follow link for source"/></a></p>

+	<p>If you still want the above code to compile in compliance &lt; 1.7, to mimic JDK 6 or below, you can use the

+	system property <b>tolerateIllegalAmbiguousVarargsInvocation</b> to force Eclipse to tolerate such ambiguous varargs cases.

+	This property can e.g. be set in the eclipse.ini file after the -vmargs setting:</p>

+	<pre><code>...

+        	 -vmargs

+			-DtolerateIllegalAmbiguousVarargsInvocation=true

+			...</code></pre>

+	<p><i>Note</i>: With this setting, Eclipse also	mimics JDK 6 and below in raising an error in other cases that are legal in both JDK 7 and Eclipse:</p>

+	<p><a href="images/illegal-ambiguous-varargs-error2.txt"><img src="images/illegal-ambiguous-varargs-error2.png" alt="follow link for source"/></a></p>

+	</td>

+  </tr>

 

+  <tr id="new-batch-compiler-options">

+    <td class="title">New batch compiler options</td>

+    <td class="content"> If you use the ECJ batch compiler using the command line or Ant tasks, you can now configure the following options which previously could only be set through

+	the <b>Preferences &gt; Java &gt; Compiler &gt; Errors/Warnings</b> page:

+	<ul>

+      <li>invalidJavadoc: set all warnings for malformed Javadoc tags</li>

+      <li>invalidJavadocTag: validate Javadoc tag arguments</li>

+      <li>invalidJavadocTagDep: validate deprecated references in Javadoc tag args</li>

+      <li>invalidJavadocTagNotVisible: validate non-visible references in Javadoc tag args</li>

+      <li>invalidJavadocVisibility(&lt;visibility&gt;): specify visibility modifier for malformed Javadoc tag warnings</li>

+      <li>missingJavadocTags: enable detection of missing Javadoc tags</li>

+      <li>missingJavadocTagsOverriding: detect missing Javadoc tags in overriding methods</li>

+      <li>missingJavadocTagsMethod: detect missing Javadoc tags for method type parameter</li>

+      <li>missingJavadocTagsVisibility(&lt;visibility&gt;): specify visibility modifier for missing Javadoc tags warnings</li>

+      <li>missingJavadocComments: detect missing Javadoc comments</li>

+      <li>missingJavadocCommentsOverriding: detect missing Javadoc tags in overriding methods</li>

+      <li>missingJavadocCommentsVisibility(&lt;visibility&gt;): specify visibility modifier for missing Javadoc comments warnings</li>

+      <li>nullAnnotConflict: detect conflict between null annotation specified and nullness inferred. Is effective only with nullAnnot option enabled</li>

+      <li>nullAnnotRedundant: detect redundant specification of null annotation. Is effective only with nullAnnot option enabled</li>

+      <li>nullUncheckedConversion: detect unchecked conversion from non-annotated type to @NonNull type. Is effective only with nullAnnot option enabled</li>

+      <li>unusedParam: detect unused parameter</li>

+      <li>unusedParamOverriding: detect unused parameter for overriding method</li>

+      <li>unusedParamImplementing: detect unused parameter for implementing method</li>

+      <li>unusedParamIncludeDoc: detect unused parameter documented in comment tag</li>

+      <li>unusedThrownWhenOverriding: detect unused declared thrown exception in overriding method</li>

+      <li>unusedThrownIncludeDocComment: detect unused declared thrown exception, documented in a comment tag</li>

+      <li>unusedThrownExemptExceptionThrowable: detect unused declared thrown exception, exempt Exception and Throwable</li>

+	</ul>

+	<p> For more information on using batch compiler options, please refer to <b>Help &gt; Java Development User Guide &gt; Tasks &gt; Compiling Java Code &gt; Using the batch compiler</b>.</p>

+    </td>

+  </tr>

+      

+  <tr id="unused-type-parameter">

+    <td class="title">Option to omit @Override for interface methods</td>

+    <td class="content">

+      Eclipse can add <code>@Override</code> annotations for overriding methods:

+      <p>

+        <img src="images/override-annotation-code-style.png" alt="Code Style preference page"/>

+      </p>

+      <p>

+        If your code uses Java 1.6 or higher, the <code>@Override</code> annotation is also added to

+        methods that override an interface method. If you don't want to use <code>@Override</code>

+        in this case, then follow the link and disable the corresponding compiler option:

+      </p>

+      <p>

+        <img src="images/override-annotation-compiler.png" alt="Errors/Warnings preference page, checkbox 'Include implementations of interface methods (1.6 or higher)'"/>

+      </p>

+      <p>

+        You may also want to enable the diagnostic for Missing '@Override' annotation.   

+      </p>

+    </td>

+  </tr>

+    

+  <tr id="detection-unused-type-parameter">

+    <td class="title">Detection of unused type parameters</td>

+    <td class="content">

+      The compiler can now detect unused type parameters:

+      <p>

+        <img src="images/unused-type-parameter.png" alt=""/>

+      </p>

+      <p>

+        The <b>Unused type parameter</b> diagnostic is set to Ignore by default and can be enabled on the 

+		<b>Java &gt; Compiler &gt; Errors/Warnings</b>

+		preference page.

+      </p>

+    </td>

+  </tr>  

+  

+  <tr id="inherit-null-annotations">

+    <td class="title">Option to inherit null annotations</td>

+    <td class="content">

+        JDT has a new option controlling how to interpret null annotations in the presence of inheritance.

+        This should facilitate the migration towards null annotations in projects with

+        mixed code ownership.

+      <p>For the sake of code readability, JDT expects null annotations of an overridden

+        method to be repeated in overriding methods. In the following example the analysis

+        normally complains that <code>arg</code> is not annotated in <code>ClientClass</code>,

+        which means, this class doesn't formally conform to the contract of its super-interface:

+      </p>

+      <p><img title="Example for inheritance of null annotations" src="images/inherit-null-annotations-example.png" 

+          alt="Example for inheritance of null annotations"/></p>

+      <p>Starting with 4.3M4 this behavior can be changed by selecting the option

+        <strong>Inherit null annotations</strong>:

+      </p>

+      <p><img title="Option for inheritance of null annotations" src="images/inherit-null-annotations-option.png"

+           alt="Option for inheritance of null annotations"/></p>

+      <p>In this new mode the analysis implicitly fills in all missing annotations

+        in overriding methods and uses the annotations from the overridden method.

+        In the above example the error will go away, and analysis concludes that the

+        code is actually safe, which is likely when the contract had already been

+        defined in the javadoc comment and the implementor actually adheres to that

+        contract. If, on the other hand, the implementation does not comply with the

+        inherited specification, new errors will be reported as shown below:

+      </p>

+      <p><img title="Negative example for inheritance of null annotations" src="images/inherit-null-annotations-example2.png"

+          alt="Negative example for inheritance of null annotations"/></p>

+      <p>If inheritance of null annotations encounters any ambiguity or conflict

+        the analysis falls back to requiring explicit annotations.

+      </p>

+    </td>

+  </tr>

 

+  <tr id="null-annotations-for-fields">

+    <td class="title">Null annotations for fields</td>

+    <td class="content">

+      The annotation-based null analysis &mdash; first released with Eclipse Indigo &mdash; has been extended

+      to apply also to fields. If enabled, this analysis will now detect the following problems

+      concerning any field annotated with <code>@NonNull</code>:

+      <ul>

+      <li>If the field is not properly initialized to a non-null value.</li>

+      <li>If a value is assigned to the field that is not known to be non-null.</li>

+      </ul>

+      <p>In return to these obligations, dereferencing a <code>@NonNull</code> field is regarded as always safe.

+      </p>

+      <p>If a field is marked as <code>@Nullable</code>, generally every direct dereference

+        of the field is flagged as a potential null pointer access. Even a null check for such a field is not

+        a perfect protection due to dangers of side effects, effects via aliased references, and concurrency.</p>

+      <p>As a compromise between safety and convenience, the compiler can be configured to apply

+        <strong>"syntactic null analysis for fields"</strong>.

+        With this option enabled, the compiler syntactically recognizes

+        a narrow range of code patterns where a null-check of a field is <em>directly</em> followed by

+        a dereference or an assignment to a <code>@NonNull</code> variable. For these particular situations,

+        no problem will be reported.</p>

+      <p>In the following example, the check in line 12 properly protects the access in line 13, whereas

+        the knowledge that field <code>nullable</code> holds a non-null value (in line 15) is spoiled by

+        the intermediate statement in line 16:</p>

+	  <p><a href="images/null-annotations-for-fields-examples.txt"><img src="images/null-annotations-for-fields-examples.png" alt=""/></a></p>

+      <p>This is the option that enables the syntactic analysis (under the heading <strong>Java Compiler &gt; Errors/Warnings</strong>):</p>

+	  <p><img src="images/option-syntactic-null-analysis-for-fields.png" alt=""/></p>

+	</td>

+  </tr>   

+ 

+  <tr id="close-quietly">

+    <td class="title">Leak analysis respects well-known utilities</td>

+    <td class="content">

+        JDT's analysis for resource leaks has been made aware of well known utilities

+        from google and apache libraries.

+      <p>Generally, this analysis looks for <code>close()</code> method calls

+        directly on a resource (any value of type <code>Closeable</code>).

+        However, in order to reduce boilerplate exception handling, several libraries

+        are providing methods like <code>closeQuietly(Closeable)</code>.

+        Previously, the analysis would complain about the missing call to <code>close()</code>

+        as shown below:

+      </p>

+      <p><img title="Example for close quietly" src="images/close-quietly-example.png"

+          alt="Example for close quietly"/></p>

+      <p>This warning is not relevant and will no longer be reported.

+        To achieve this, JDT now hardcodes a (short) white list of functions that

+        are known to safely close a given resource.

+      </p>

+    </td>

+  </tr>

+  

+  <!-- ******************* Java Views and Dialogs ************************************* -->

+  <tr>

+    <td id="JavaViews" class="section" colspan="2">

+    <h2>Java Views and Dialogs</h2>

+    </td>

+  </tr>

+  

+  <tr id="pre-fill-package-name">

+	<td class="title">Pre-filling package name in creation wizards</td>

+	<td class="content">

+      All the type and package creation wizards now pre-fill the package name

+      if a suitable package name can be suggested for the selected project or source folder:

+      <p><img src="images/pre-fill-package-name.png" alt=""/></p>

+      <p>The suggested package name is the name of the project if the source folder does not contain any package

+      and if the project name is a valid package name.

+      In case of type creation wizards, if the source folder contains exactly one package then the name of that package

+      is used as the suggested package name.</p>

+   </td>

+  </tr>

+  

+   <tr id="content-assist-additional-info-in-debug-views">

+    <td class="title">Content assist shows Javadoc in Display, Expressions and Variables view</td>

+    <td class="content">

+        Content assist in the Display, Expressions and Variables view now shows Javadoc:

+		<p><img src="images/additional-info.png" alt="Screenshot showing Javadoc when doing content assist"/></p>

+	</td>

+  </tr>

+  

+  <tr id="javadoc-view-target">

+    <td class="title">Javadoc view resolves enclosing method call and keeps last target</td>

+    <td class="content">

+      The <b>Javadoc</b> and <b>Declaration</b> views now try to find the enclosing method call

+      if the selection or caret position doesn't resolve to a valid Java element:

+      <p>

+        <img src="images/javadoc-view-target.png" alt="'String.copyValueOf(data, offset, count)', with 'data' selected."/>

+      </p>

+      Furthermore, they keep the last resolved target element even if no new target can be resolved.

+    </td>

+  </tr>

+  

+  <tr id="Support-for-package-Javadoc-in-Javadoc-hover-and-view">

+    <td class="title">Support for package Javadoc in Javadoc hover and view</td>

+    <td class="content">

+      The Javadoc hover and view now display package Javadoc from either the

+      <code style="white-space:nowrap;">package-info.java</code> or the <code>package.html</code> file:

+      <p><img src="images/package-javadoc-hover-examples.png" alt=""/></p>

+    </td>

+  </tr>

+    

+  <tr id="linked-Javadoc-package-names">

+   <td class="title">Package names are linked in Javadoc hover and view</td>

+   <td class="content">

+     You can now click individual package names displayed in the header of the Javadoc hover or the Javadoc view to see the package Javadoc:

+     <p><img src="images/javadoc-package-names-linked.png" alt=""/></p>

+   </td>

+  </tr>  

+  

+   <tr id="InfoViews-should-indicate-when-linking-is-outOfSync">

+   <td class="title">Javadoc and Declaration view indicate when out of sync</td>

+   <td class="content">

+     The Javadoc and Declaration view now indicate when their content is no longer in sync with the current selection:

+     <p><img src="images/declaration-view-indicating-outofsync.png" alt=""/></p>

+   </td>

+  </tr>

+  

+  <!-- *********************** Debug ******************************** -->

+  <tr>

+    <td id="Debug" class="section" colspan="2">

+    <h2>Debug</h2>

+    </td>

+  </tr>  

+     

+  <tr id="debug-improved-generics-eval">

+   <td class="title">Improved evaluation of generics while debugging</td>

+   <td class="content">

+     Significant improvements have been made in the debug evaluation engine to support the use of

+     generics. This impacts the use of conditional breakpoints, the display view, the expressions view,

+     and the inspect/display/execute actions. Previously, evaluations acting on classes with generics

+     would sometimes encounter compilation errors.

+   </td>

+  </tr>

+   

+  <tr id="debug-ext-source-api">

+   <td class="title">API to contribute location information for non-standard JRE / JDK libraries</td>

+   <td class="content">

+     JDT Debug now provides an extension point <code>org.eclipse.jdt.launching.libraryLocationResolvers</code>

+     that you can use to contribute location information for non-standard JRE / JDK libraries.  For example,

+     this extension point can be used to provide Javadoc and source locations for JARs in the ext location

+     of a JRE.

+     <p>

+     Extenders must provide an implementation of <code>org.eclipse.jdt.launching.ILibraryLocationResolver</code>

+     which can provide package roots, source paths, Javadoc locations and index locations for a library.

+     </p> 

+   </td>

+  </tr>  

+  

+  <tr id="xml-dom-structure">

+    <td class="title">XML DOM logical structures</td>

+    <td class="content">

+      JDT now provides a default logical structure for XML DOMs, which can be used during debugging to view the children and attributes of a node as simple arrays:

+      <p>

+      <img src="images/dom-structure.png" alt="Variables view showing the XML DOM logical structure"/>

+      </p>

+    </td>

+  </tr>

+ 

+  <!-- ******************* JUnit ************************************* -->

+  <tr>

+    <td id="JUnit" class="section" colspan="2">

+    <h2>JUnit</h2>

+    </td>

+  </tr>

+    

+  <tr id="junit-4-11">

+    <td class="title">Only one JUnit (4.11)</td>

+    <td class="content">

+        The org.junit bundle has been updated to

+        <a href="http://htmlpreview.github.com/?https://github.com/junit-team/junit/blob/master/doc/ReleaseNotes4.11.html">JUnit 4.11</a>.

+      <p>

+        At the same time, our good old friend org.junit_3.8.2 has been retired, and the org.junit4 compatibility bundle

+        has also been removed. Your <code>Require-Bundle:</code> entries should just point to

+        <code>org.junit;bundle-version="4.11.0"</code> (or an earlier version, if you like).

+      </p>

+      <p>Note that JUnit 4 still contains the JUnit 3 APIs. If you need org.junit_3.8.2 back for

+        whatever reason, you can still get it from <a href="http://download.eclipse.org/tools/orbit/downloads/">Orbit</a>.

+      </p>

+    </td>

+  </tr>

+

+  <tr id="test-templates">

+    <td class="title">JUnit test templates</td>

+    <td class="content">

+      The JUnit test templates have been renamed to show the JUnit 4 template before the JUnit 3 template:

+      <p><img src="images/junit-templates.png" alt="'test' for JUnit 4; 'test3' for JUnit 3"/></p>

+    </td>

+  </tr>

+  

+  <tr id="junit-view-assumptions">

+    <td class="title">JUnit view shows assumption failures</td>

+    <td class="content">

+      The JUnit view now counts <code>@Ignore</code>d tests and tests that didn't meet

+      an assumption as "skipped' tests. The skipped tests also got new icons, and

+      tests with an assumption failure no longer get the 'passed' checkmark:

+      <p><img src="images/junit-view-assumptions.png" alt="Test cases using @Ignore and Assume.assumeFalse(true)"/></p>

+    </td>

+  </tr>

+ 

     <!-- ****************** END OF N&N TABLE ****************** -->

-  </tbody>

 </table>

 

 <p align="center"><a href="eclipse-news-part1.html">Previous</a>&nbsp;&nbsp;&nbsp;&nbsp; <a href="eclipse-news-part3.html">Next</a></p>

diff --git a/platform/4.3/final/eclipse-news-part3.html b/platform/4.3/final/eclipse-news-part3.html
index 22440e9..7ff7277 100644
--- a/platform/4.3/final/eclipse-news-part3.html
+++ b/platform/4.3/final/eclipse-news-part3.html
@@ -12,7 +12,7 @@
 table.news tr td.title {vertical-align: top; width: 30%; font-weight: bold;}

 table.news tr td.content {vertical-align: top; width: 70%;}

 </style>

-<title>Eclipse Kepler - New and Noteworthy</title>

+<title>Eclipse Project Kepler - New and Noteworthy</title>

 </head>

 <body>

 

@@ -25,7 +25,113 @@
   <tr>

     <td id="Platform" class="section" colspan="2"><h2>Platform Changes</h2></td>

   </tr>

+  

+  <tr id="e4-api">

+    <td class="title">Initial Eclipse 4 API released</td>

+    <td class="content">

+      The first set of official API based on the new Eclipse Platform 4 architecture is now available. 

+      This is the first step in allowing developers to use the new simpler and more powerful mechanisms 

+      to build Eclipse plug-ins and applications.

+    <p>

+      This API is comprised of two basic concepts:

+    </p><p>

+      <b>The user interface model</b>: The content of this model describes the structure of the user interface.

+      The Eclipse Platform reacts to changes in this model by updating the presentation, and the complete

+      model is now available through the new API.

+    </p><p>

+      Note that the model represents everything on the screen and these elements can be modified

+      by your code (see the example below).

+    </p><p>

+      <b>IEclipseContext / Dependency Injection (DI)</b>: Contexts are containers of UI runtime state

+      including all the available services. The typical Eclipse Platform 4 pattern is that contributions

+      are created and configured through dependency injection based on state and services found in the local

+      context for that model element.

+    </p><p>

+      Here are a few links to more information about the UI Model, the services and DI (the Javadoc and supporting

+      Eclipse documentation will be available before Kepler is released):

+    </p>

+    <ul>

+      <li><a href="http://www.eclipsecon.org/2013/sites/eclipsecon.org.2013/files/FormalAPI.pdf">EclipseCon 2013 API Slides</a></li>

+      <li><a href="http://www.vogella.com/articles/EclipseRCP/article.html">Lars' RCP Tutorial</a></li>

+      <li><a href="http://www.vogella.com/articles/Eclipse4Services/article.html">Lars' Services Tutorial</a></li>

+      <li><a href="http://eclipsesource.com/blogs/2013/04/18/eclipse-4-e4-tutorial-behavior-annotations/">Jonas Helming's DI Tutorials</a></li>

+    </ul>

+    <p>

+      There is quite a lot of information already available for Eclipse Platform 4. While parts of the API are just being

+      formalized now, most of the concepts and API existed in provisional form in previous Eclipse 4 releases.

+    </p><p>

+      Just to give a taste of what working in a modeled UI is all about, here's a code snippet showing

+      how to get a 'standard' Command handler to toggle the visibility of the 'Quick Access' text field

+      that appears in the top trim. First we gain access to the model by getting the MApplication as a

+      'service'. Form there we can access the EModelService and use it to find the model element

+      representing the search in the UI. Then it's just a simple matter of toggling the element's

+      'toBeRendered' flag to get it to (dis)appear.

+    </p>

+    <pre>

+public Object execute(ExecutionEvent e) throws ExecutionException {

+  IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(e);

+  MApplication theApp = (MApplication) window.getService(MApplication.class);

+  MWindow activeWin = theApp.getSelectedElement();

+  EModelService ms = activeWin.getContext().get(EModelService.class);

+  EPartService ps = activeWin.getContext().get(EPartService.class);

+  MToolControl search = (MToolControl) ms.find("SearchField", activeWin);

+  if (search != null) {

+    search.setToBeRendered(!search.isToBeRendered());

+    window.getShell().layout(true, true);

+  }

+  return null;

+}

+      </pre>

+    </td>

+  </tr>

 

+  <tr id="ua-lucene">

+    <td class="title">Migrated to Lucene 3.5</td>

+    <td class="content">

+      The Eclipse platform help system has migrated from Lucene 2.9.1 to Lucene 3.5.

+      This change brings improved performance and many bug fixes in help search.

+      Some old help system API related to Lucene has been changed or removed as part

+      of this fix. Refer to the platform 4.3 migration guide for more details.

+    </td>

+  </tr>  

+  

+  <tr id="ant184">

+    <td class="title">Platform updated to Ant 1.8.4</td>

+    <td class="content">

+      The platform has been updated to use Apache Ant version 1.8.4. To see what is new in version 1.8.4 you can

+      check the <a href="http://apache.mirrors.tds.net/ant/README.html">Apache Ant what's new</a>.

+    </td>

+  </tr> 

+

+

+  <!-- *********************** SWT *********************** -->

+  <tr>

+    <td id="SWT" class="section" colspan="2"><h2>SWT Changes</h2></td>

+  </tr>

+

+  <tr id="xulrunner64">

+    <td class="title">XULRunner on 64-bit Windows</td>

+    <td class="content">The browser widget now supports the embedding of XULRunner on Windows x86_64.</td>

+  </tr> 

+

+  <tr id="bidi">

+    <td class="title">New SWT color constant for hyperlinks</td>

+    <td class="content">

+     A new constant (SWT_COLOR_LINK_FOREGROUND) has been added that returns the native color of hyperlinks on all platforms.

+     <p><img src="images/linkColor.png" alt=""/></p>

+    </td>

+  </tr>

+    

+  <tr id="linkColor">

+    <td class="title">BIDI Text Direction</td>

+    <td class="content">

+     New API has been added to allow text direction to be set independent of the widget orientation.

+     Note that this API is currently only implemented on Windows. 

+     <p>For more info see <a href="http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet364.java">Snippet 364</a>.

+     </p>

+     <p><img src="images/bidi.png" alt=""/></p>

+    </td>

+  </tr>

 

   </tbody>

 <!-- ****************** END OF N&N TABLE ****************** -->

diff --git a/platform/4.3/final/eclipse-news-part4.html b/platform/4.3/final/eclipse-news-part4.html
index 5ed832d..e174ab3 100644
--- a/platform/4.3/final/eclipse-news-part4.html
+++ b/platform/4.3/final/eclipse-news-part4.html
@@ -12,23 +12,313 @@
 table.news tr td.title {vertical-align: top; width: 30%; font-weight: bold;}

 table.news tr td.content {vertical-align: top; width: 70%;}

 </style>

-<title>Eclipse Kepler - New and Noteworthy</title>

+<title>Eclipse Project Kepler - New and Noteworthy</title>

 </head>

 <body>

 <div style="font-size: 20px; font-weight: bold;">Plug-in Development Environment</div>

 

 <!-- ****************** START OF N&N TABLE ****************** -->

 <table class="news" cellpadding="10" cellspacing="0">

-      <!-- ******************* Views/Editors ******************** -->

+  <tbody>

+  

+  <!-- ******************** APITools ********************** -->

   <tr>

-    <td id="ViewsAndEditors" class="section" colspan="2">

-      <h2>

-        Views and editors

-      </h2>

-    </td>

+    <td id="APITools" class="section" colspan="2"><h2>API Tools</h2></td>

   </tr>

 

-    <!-- ****************** END OF N&N TABLE ****************** -->

+  <tr id="ee-desc-feature">

+    <td class="title">New API Tools EE descriptions feature</td>

+    <td class="content">

+      The API Tools Execution Environment descriptions are now supplied on the Eclipse update sites as a single

+      installable feature.  The feature includes the descriptions for all supported execution environments.

+      

+       <p><img src="images/eedescfeature.png" alt="New EE Desc feature on update sites"/></p> 

+    </td>

+  </tr>

+  

+    <tr id="noreference-types">

+    <td class="title">API Tools allows @noreference Javadoc tag on types</td>

+    <td class="content">

+      API Tools now allows the use of the <code>@noreference</code> Javadoc tag on types (classes, interfaces,

+      annotations and enums).

+      <p><img src="images/no-reference.png" alt="Type defining noreference Javadoc tag"/></p>

+      <p>Placing this tag restricts the API so that any reference to that type or its members

+      will be flagged as invalid API use.</p>

+      <p><img src="images/using-no-reference.png" alt="Class trying to reference a type marked as noreference"/></p>

+      <p>

+      To mark a type in an API package as not being API, tag it as <code>@noreference</code>,

+      <code>@noextend</code> and <code>@noinstantiate</code> (or <code>@noimplement</code>).  This ensures that

+      no client can access it via valid API and the type could later be removed.

+      </p>

+    </td>

+  </tr>

+  

+    <tr id="api-tags-check-visibility">

+    <td class="title">API Tools Javadoc tags check visibility</td>

+    <td class="content">

+      A member that is not publicly visible, such as a method or field marked private, is not part 

+      of API.  Any API Tools Javadoc tags on it are invalid.  Now, API Tools will also check if a

+      member is not visible because of the visibility of an enclosing type.  If the member is not visible,

+      any tags on it will be considered invalid.

+      <p><img src="images/api-parent-not-visible.png" alt="Javadoc tag flagged as invalid because member is not visible"/></p>

+      <p>

+      Tag validation is turned off by default.  To turn it on for your API Tools enabled project, open 

+      <b>Project Properties > Plug-in Development > API Errors/Warnings</b>.  Set 

+      <b>API Use > General > Unsupported use of API Javadoc tags</b> to <code>Warning</code> or <code>Error</code>.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="support-pre-osgi-bundles">

+    <td class="title">API Tools has limited support for pre-OSGi Eclipse plug-ins</td>

+    <td class="content">

+      Eclipse plug-ins created before 3.1 did not contain an OSGi bundle manifest.  API Tools

+      can now convert the pre-OSGi plug-ins to valid components in an API baseline.  This allows

+      analysis, use and freeze scans to process plug-ins that depend on pre-OSGi plug-ins instead

+      of failing to resolve.

+      <p><img src="images/use-scan.png" alt="Use scan launch configuration with pre-OSGi plug-ins"/></p>

+      <p>

+      An OSGi runtime is required to do the conversion.  Tasks run using Eclipse AntRunner

+      or the API Use Report external tools launch configuration can convert the plug-ins.  Tasks

+      run from the command line Ant runner will skip pre-OSGi plug-ins.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="api-unresolved-bundles">

+   <td class="title">API Tools Analysis and Freeze tasks can run with unresolved bundles</td>

+   <td class="content">

+	 The API Tools <b>Analysis</b> and <b>API Freeze</b> Ant tasks will now process bundles

+	 with resolver errors such as missing dependencies.  This means you can now get analysis results

+	 for an incomplete product.

+	 <p>

+     The Ant tasks produce reports based on a reference baseline and a profile.  Previously both 

+     the baseline and the profile had to describe complete products.  Any bundle that had resolver 

+     errors due to missing dependencies would be skipped.  Now these bundles will be processed.

+     </p>

+     <p>

+     Resolver errors can affect the results, therefore a list of resolver errors is included in the XML output

+     and warnings are added to the HTML report. To return to the old behavior of skipping

+     unresolved bundles, you can set <code>processunresolvedbundles="false"</code> on your Ant task.

+     </p>

+     <p>

+     <img src="images/unresolved-analysis.png" alt="Unresolved bundle in the analysis task"/>

+     </p>

+   </td>

+  </tr>

+  

+  <tr id="api-use-filters">

+    <td class="title">Problem filters apply to API Tools use scans</td>

+    <td class="content">

+      Problem filter files (.api_filter) can be used to filter problems reported by the API Tools analysis

+      task and the workspace analysis builder.  These filter files can now be applied to API Tools use scans.

+      Reference problems that are filtered out of the analysis results can also be filtered from the results

+      of use scans.

+      <p>

+      Filters are specified in the task using the same property as the analysis task.  Set the <em>filters</em>

+      attribute on the <em>apitooling.apiuse</em> task, specifying the root directory of API filter files.  Each

+      filter file must be in a folder with a filename matching the component name the filter file applies to.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="missing-filters-on-tasks">

+    <td class="title">API Tools tasks warn about missing include or exclude files</td>

+    <td class="content">

+      Many of the API Tools tasks, including Analysis, API Use, and API Freeze, provide <em>includelist</em> and

+      <em>excludelist</em> attributes which can be used to limit the reported problems. Previously,

+      if you set an include or exclude list, but the file wasn't found, the task would continue without warning

+      about the incorrect filtering.  Now a missing include or exclude list will result in the task failing with

+      an explanation.

+      <p>

+      <img src="images/missing-include.png" alt="Example console output for missing include"/>

+      </p>

+    </td>

+  </tr>

+  

+  <!-- ******************** Views and Editors ********************** -->

+  <tr>

+    <td id="ViewsAndEditors" class="section" colspan="2"><h2>Views and Editors</h2></td>

+  </tr>

+

+  <tr id="improved-feature-selection">

+    <td class="title">Improved feature selection dialog</td>

+    <td class="content">

+      The feature selection dialog used in wizards and editors has been enhanced with better wildcard support

+      and filtering options.

+      

+       <p><img src="images/featureselection.png" alt="Improved feature selection dialog"/></p> 

+    </td>

+  </tr>

+      

+  <tr id="additional-type-info">

+    <td class="title">Javadoc hover available in plug-in manifest editor</td>

+    <td class="content">

+      When editing the plugin.xml or manifest.mf files using the <b>Plug-in Manifest Editor</b>, 

+      opening content assist for type proposals will now display additional Javadoc information.

+      <p>

+        <img src="images/additional-type-info.png" alt="Additional info Javadoc hover for type proposals"/>

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="import-package">

+    <td class="title">New import package quick fixes</td>

+    <td class="content">

+      New quick fixes are available when you have an unresolved type in a Java file.  If the unresolved type

+      can be found in a package exported by a plug-in, a quick fix will be available to add an import

+      package entry to your plug-in manifest.  There is also a quick fix to add the exporting plug-in to

+      your manifest's require bundle header.

+      <p>

+      <img src="images/import-package.png" alt="Import package quick fix on an unresolved type"/>

+      </p>

+      <p>

+      If a package providing the type is available but the package is not exported by its plug-in, a quick fix will

+      offer to fix the providing plug-in's manifest. Only plug-ins in the workspace can be modified this

+      way.

+      </p>

+      <p>

+      <img src="images/export-package.png" alt="Export package quick fix on an unresolved type that is not exported"/>

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="bundles-in-category-editor">

+    <td class="title">Bundles in the category editor</td>

+    <td class="content">

+      The category editor now supports putting individual bundles into categories.

+      <p>      

+      The category editor creates a category.xml that can define categories that the contents of

+      a p2 repository should be organized into.  Previously only features could be specified as belonging

+      to a category and be visible to users.  Now individual bundles can be added to the category.xml.

+      </p>

+      <p>

+      <img src="images/category-editor.png" alt="Category editor can include individual bundles"/>

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="plugin-image-view">

+    <td class="title">Plug-in image browser view</td>

+    <td class="content">

+      A new view has been added to PDE.  The <b>Plug-in Image Browser</b> view displays icons and other

+      images from your target platform, running application or current workspace. 

+      <p>

+      	When an image is selected, additional information is displayed at the bottom of the view.  The

+        reference text can be used in plug-in extensions to refer to images in other bundles.

+      </p>

+      <p>

+        <img src="images/plugin-image-view.png" alt="The plug-in image browser view"/>

+      </p>

+    </td>

+  </tr>

+  

+  <!-- ******************** Misc ********************** -->

+  <tr>

+    <td id="Misc" class="section" colspan="2"><h2>Misc</h2></td>

+  </tr>

+

+  <tr id="default-launch-ee">

+    <td class="title">Launch configurations choose default execution environment</td>

+    <td class="content">

+      New PDE launch configurations (Eclipse Application, JUnit Plug-in Test, OSGi Framework) will

+      use a default execution environment to determine which Java runtime environment to launch with.

+      The launch configuration can be changed to use a different execution environment or a specific

+      JRE on the <b>Main</b> tab.

+      <p>

+        To find a valid execution environment, all known environments are checked against each bundle 

+        or plug-in that will be launched. Only an execution environment that is valid for all

+        plug-ins and bundles will be selected.  If no valid environment is found, a default JRE

+        will be chosen as before.

+      </p>

+      <p>

+        <img src="images/default-launch-ee.png" alt="Java runtime settings on the Main tab of PDE launch configurations"/>

+      </p>

+      <p>

+      	The JRE associated with the selected execution environment will be used to launch. To change 

+      	which JRE is associated with an execution environment, use the <b>Preferences > Java > Installed JREs > 

+      	Execution Environments</b> preference page.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="pde-5-bree">

+    <td class="title">PDE UI requires a 1.5 EE</td>

+    <td class="content">

+      The bundle required execution environment for the PDE UI bundles org.eclipse.pde.core and

+      org.eclipse.pde.ui is now J2SE-1.5.

+    </td>

+  </tr>

+  

+  <tr id="plugin-classpath-contributors">

+    <td class="title">New API to contribute to the classpath of plug-in projects</td>

+    <td class="content">

+      New API in PDE allows you to add additional classpath entries to a plug-in project.  Contribute a 

+      <em>Plug-in Classpath Contributor</em> via the <em>org.eclipse.pde.core.pluginClasspathContributors</em>

+      extension point.  Whenever the PDE classpath is computed or a new plug-in dependency is added, your classpath

+      contributor will be queried for additional entries.

+      <p>

+      If you are using Equinox Adapter hooks to load additional libraries at runtime you can use this API to add 

+      the correct libraries to the classpath at build time.

+      </p>

+      <p>

+      <img src="images/classpath-contributor.png" alt="An example classpath contributor extension"/>

+      </p>

+      </td>

+  </tr>

+  

+  <tr id="update-classpath-workspace">

+    <td class="title">Updating the classpath requires a workspace lock</td>

+    <td class="content">

+      When a change is made to a plug-in that forces a classpath update, an update job is created that

+      modifies the Plug-in Dependencies classpath container in the background. This job now acquires a workspace lock

+      to prevent other operations such as builders from running on a stale classpath.

+      <p>

+      This behaviour can be enabled in 4.2.2 by setting the system property <em>pde.lockWorkspaceForClasspath</em> to 

+      true.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="auto-start-all-plugins">

+    <td class="title">Default start level settings apply to all plug-ins</td>

+    <td class="content">

+      When editing the <b>Plug-ins</b> tab of an <b>Eclipse Application</b> launch configuration, the <b>Default

+      Start level</b> and <b>Default Auto-start</b> settings chosen at the top of the tab will be used when launching with

+      all workspace and enabled target plug-ins.  Previously this setting would only be used when launching a

+      specific list of plug-ins.

+      <p><img src="images/autostart-all-plugins.png" alt="All plug-ins selected on the tab"/></p>

+      <p><img src="images/autostart-levels.png" alt="Different default start level settings"/></p>

+    </td>

+  </tr>

+  

+  <tr id="pde-run-remembers-selection">

+    <td class="title">Running from PDE editors remembers previous launch</td>

+    <td class="content">

+      The PDE editors allow applications to be launched from the top toolbar of the <b>Manifest</b>, <b>Plug-in</b>

+      and <b>Product</b> editors.  By default PDE only provides one type of application to launch.  However, if you have additional tooling

+      installed such as RAP Tools, different application launches will be available in a drop down menu.

+      <p><img src="images/launch-order.png" alt="Ordering of launches in editor"/></p>

+      <p>

+      This menu now remembers which application was launched most recently and puts it at the top of the list.  The most

+      recent choice will be launched if the run button is pressed.  The order is saved between workbench

+      restarts.

+      </p>

+    </td>

+  </tr>

+  

+  <tr id="pde-junit-e4">

+    <td class="title">JUnit plug-in tests can run on Eclipse platform 4 workbench</td>

+    <td class="content">

+      Applications that use the Eclipse Platform 4 workbench API can now

+      use <b>JUnit Plug-in Test</b> launch configurations to test their plug-ins. Previously 

+      the tests would require the 3.x workbench API from the <code>org.eclipse.ui</code> bundle to 

+      hook into the workbench lifecycle.

+    </td>

+  </tr>

+  

+  <!-- ****************** END OF N&N TABLE ****************** -->

+  </tbody>

 </table>

 

 <p align="center"><a href="eclipse-news-part3.html">Previous</a>&nbsp;&nbsp;&nbsp;&nbsp; <font color="#808080">Next</font></p>

diff --git a/platform/4.3/final/images/additional-info.png b/platform/4.3/final/images/additional-info.png
new file mode 100644
index 0000000..c8b741b
--- /dev/null
+++ b/platform/4.3/final/images/additional-info.png
Binary files differ
diff --git a/platform/4.3/final/images/additional-type-info.png b/platform/4.3/final/images/additional-type-info.png
new file mode 100644
index 0000000..3f24504
--- /dev/null
+++ b/platform/4.3/final/images/additional-type-info.png
Binary files differ
diff --git a/platform/4.3/final/images/api-parent-not-visible.png b/platform/4.3/final/images/api-parent-not-visible.png
new file mode 100644
index 0000000..1003977
--- /dev/null
+++ b/platform/4.3/final/images/api-parent-not-visible.png
Binary files differ
diff --git a/platform/4.3/final/images/autostart-all-plugins.png b/platform/4.3/final/images/autostart-all-plugins.png
new file mode 100644
index 0000000..3858413
--- /dev/null
+++ b/platform/4.3/final/images/autostart-all-plugins.png
Binary files differ
diff --git a/platform/4.3/final/images/autostart-levels.png b/platform/4.3/final/images/autostart-levels.png
new file mode 100644
index 0000000..4f00f01
--- /dev/null
+++ b/platform/4.3/final/images/autostart-levels.png
Binary files differ
diff --git a/platform/4.3/final/images/bidi.png b/platform/4.3/final/images/bidi.png
new file mode 100644
index 0000000..4aa20af
--- /dev/null
+++ b/platform/4.3/final/images/bidi.png
Binary files differ
diff --git a/platform/4.3/final/images/category-editor.png b/platform/4.3/final/images/category-editor.png
new file mode 100644
index 0000000..9c49163
--- /dev/null
+++ b/platform/4.3/final/images/category-editor.png
Binary files differ
diff --git a/platform/4.3/final/images/classpath-contributor.png b/platform/4.3/final/images/classpath-contributor.png
new file mode 100644
index 0000000..67e2913
--- /dev/null
+++ b/platform/4.3/final/images/classpath-contributor.png
Binary files differ
diff --git a/platform/4.3/final/images/close-quietly-example.png b/platform/4.3/final/images/close-quietly-example.png
new file mode 100644
index 0000000..6c29f05
--- /dev/null
+++ b/platform/4.3/final/images/close-quietly-example.png
Binary files differ
diff --git a/platform/4.3/final/images/combine-strings.png b/platform/4.3/final/images/combine-strings.png
new file mode 100644
index 0000000..7765407
--- /dev/null
+++ b/platform/4.3/final/images/combine-strings.png
Binary files differ
diff --git a/platform/4.3/final/images/content-assist.png b/platform/4.3/final/images/content-assist.png
new file mode 100644
index 0000000..a3b003c
--- /dev/null
+++ b/platform/4.3/final/images/content-assist.png
Binary files differ
diff --git a/platform/4.3/final/images/convert-if-else-to-switch.png b/platform/4.3/final/images/convert-if-else-to-switch.png
new file mode 100644
index 0000000..be3ea31
--- /dev/null
+++ b/platform/4.3/final/images/convert-if-else-to-switch.png
Binary files differ
diff --git "a/platform/4.3/final/images/convert-to-if-\041-return.png" "b/platform/4.3/final/images/convert-to-if-\041-return.png"
new file mode 100644
index 0000000..5cd0b93
--- /dev/null
+++ "b/platform/4.3/final/images/convert-to-if-\041-return.png"
Binary files differ
diff --git a/platform/4.3/final/images/create-loop-variable.png b/platform/4.3/final/images/create-loop-variable.png
new file mode 100644
index 0000000..c23d4de
--- /dev/null
+++ b/platform/4.3/final/images/create-loop-variable.png
Binary files differ
diff --git a/platform/4.3/final/images/declaration-view-indicating-outofsync.png b/platform/4.3/final/images/declaration-view-indicating-outofsync.png
new file mode 100644
index 0000000..4e5e98d
--- /dev/null
+++ b/platform/4.3/final/images/declaration-view-indicating-outofsync.png
Binary files differ
diff --git a/platform/4.3/final/images/default-launch-ee.png b/platform/4.3/final/images/default-launch-ee.png
new file mode 100644
index 0000000..bd17db6
--- /dev/null
+++ b/platform/4.3/final/images/default-launch-ee.png
Binary files differ
diff --git a/platform/4.3/final/images/detached-sash.png b/platform/4.3/final/images/detached-sash.png
new file mode 100644
index 0000000..d904dee
--- /dev/null
+++ b/platform/4.3/final/images/detached-sash.png
Binary files differ
diff --git a/platform/4.3/final/images/dom-structure.png b/platform/4.3/final/images/dom-structure.png
new file mode 100644
index 0000000..dc19e15
--- /dev/null
+++ b/platform/4.3/final/images/dom-structure.png
Binary files differ
diff --git a/platform/4.3/final/images/eedescfeature.png b/platform/4.3/final/images/eedescfeature.png
new file mode 100644
index 0000000..fe8e9f1
--- /dev/null
+++ b/platform/4.3/final/images/eedescfeature.png
Binary files differ
diff --git a/platform/4.3/final/images/export-package.png b/platform/4.3/final/images/export-package.png
new file mode 100644
index 0000000..ec50bb7
--- /dev/null
+++ b/platform/4.3/final/images/export-package.png
Binary files differ
diff --git a/platform/4.3/final/images/featureselection.png b/platform/4.3/final/images/featureselection.png
new file mode 100644
index 0000000..cf9dc8c
--- /dev/null
+++ b/platform/4.3/final/images/featureselection.png
Binary files differ
diff --git a/platform/4.3/final/images/gtk3.png b/platform/4.3/final/images/gtk3.png
new file mode 100644
index 0000000..a9468b4
--- /dev/null
+++ b/platform/4.3/final/images/gtk3.png
Binary files differ
diff --git a/platform/4.3/final/images/illegal-ambiguous-varargs-error-Juno.png b/platform/4.3/final/images/illegal-ambiguous-varargs-error-Juno.png
new file mode 100644
index 0000000..5d4aac9
--- /dev/null
+++ b/platform/4.3/final/images/illegal-ambiguous-varargs-error-Juno.png
Binary files differ
diff --git a/platform/4.3/final/images/illegal-ambiguous-varargs-error.png b/platform/4.3/final/images/illegal-ambiguous-varargs-error.png
new file mode 100644
index 0000000..22290a0
--- /dev/null
+++ b/platform/4.3/final/images/illegal-ambiguous-varargs-error.png
Binary files differ
diff --git a/platform/4.3/final/images/illegal-ambiguous-varargs-error.txt b/platform/4.3/final/images/illegal-ambiguous-varargs-error.txt
new file mode 100644
index 0000000..9630ec5
--- /dev/null
+++ b/platform/4.3/final/images/illegal-ambiguous-varargs-error.txt
@@ -0,0 +1,11 @@
+    public static void test(int... a) {
+        System.out.println(Arrays.toString(a));
+    }
+    
+    public static void test(Object... a) {
+        System.out.println(Arrays.toString(a));
+    }
+    
+    public static void main(String[] args) {
+        test(1); // 'test' flagged ambiguous
+    }
diff --git a/platform/4.3/final/images/illegal-ambiguous-varargs-error2.png b/platform/4.3/final/images/illegal-ambiguous-varargs-error2.png
new file mode 100644
index 0000000..27f715e
--- /dev/null
+++ b/platform/4.3/final/images/illegal-ambiguous-varargs-error2.png
Binary files differ
diff --git a/platform/4.3/final/images/illegal-ambiguous-varargs-error2.txt b/platform/4.3/final/images/illegal-ambiguous-varargs-error2.txt
new file mode 100644
index 0000000..4a990bd
--- /dev/null
+++ b/platform/4.3/final/images/illegal-ambiguous-varargs-error2.txt
@@ -0,0 +1,6 @@
+    public static void foo(int... i) { }
+    public static void foo(double... d) { }
+    
+    public static void main(String[] args) {
+        foo(1, 2, 3); // foo flagged ambiguous
+    }
diff --git a/platform/4.3/final/images/import-nested.png b/platform/4.3/final/images/import-nested.png
new file mode 100644
index 0000000..271a2ad
--- /dev/null
+++ b/platform/4.3/final/images/import-nested.png
Binary files differ
diff --git a/platform/4.3/final/images/import-package.png b/platform/4.3/final/images/import-package.png
new file mode 100644
index 0000000..7d13527
--- /dev/null
+++ b/platform/4.3/final/images/import-package.png
Binary files differ
diff --git a/platform/4.3/final/images/inherit-null-annotations-example.png b/platform/4.3/final/images/inherit-null-annotations-example.png
new file mode 100644
index 0000000..a51a9da
--- /dev/null
+++ b/platform/4.3/final/images/inherit-null-annotations-example.png
Binary files differ
diff --git a/platform/4.3/final/images/inherit-null-annotations-example2.png b/platform/4.3/final/images/inherit-null-annotations-example2.png
new file mode 100644
index 0000000..5f41dd9
--- /dev/null
+++ b/platform/4.3/final/images/inherit-null-annotations-example2.png
Binary files differ
diff --git a/platform/4.3/final/images/inherit-null-annotations-option.png b/platform/4.3/final/images/inherit-null-annotations-option.png
new file mode 100644
index 0000000..322f055
--- /dev/null
+++ b/platform/4.3/final/images/inherit-null-annotations-option.png
Binary files differ
diff --git a/platform/4.3/final/images/javadoc-package-names-linked.png b/platform/4.3/final/images/javadoc-package-names-linked.png
new file mode 100644
index 0000000..52d6137
--- /dev/null
+++ b/platform/4.3/final/images/javadoc-package-names-linked.png
Binary files differ
diff --git a/platform/4.3/final/images/javadoc-view-target.png b/platform/4.3/final/images/javadoc-view-target.png
new file mode 100644
index 0000000..25305da
--- /dev/null
+++ b/platform/4.3/final/images/javadoc-view-target.png
Binary files differ
diff --git a/platform/4.3/final/images/junit-templates.png b/platform/4.3/final/images/junit-templates.png
new file mode 100644
index 0000000..00a9a62
--- /dev/null
+++ b/platform/4.3/final/images/junit-templates.png
Binary files differ
diff --git a/platform/4.3/final/images/junit-view-assumptions.png b/platform/4.3/final/images/junit-view-assumptions.png
new file mode 100644
index 0000000..4f29f91
--- /dev/null
+++ b/platform/4.3/final/images/junit-view-assumptions.png
Binary files differ
diff --git a/platform/4.3/final/images/launch-order.png b/platform/4.3/final/images/launch-order.png
new file mode 100644
index 0000000..d85ca91
--- /dev/null
+++ b/platform/4.3/final/images/launch-order.png
Binary files differ
diff --git a/platform/4.3/final/images/lcd-warnings.png b/platform/4.3/final/images/lcd-warnings.png
new file mode 100644
index 0000000..2ade3b5
--- /dev/null
+++ b/platform/4.3/final/images/lcd-warnings.png
Binary files differ
diff --git a/platform/4.3/final/images/linkColor.png b/platform/4.3/final/images/linkColor.png
new file mode 100644
index 0000000..c6f4381
--- /dev/null
+++ b/platform/4.3/final/images/linkColor.png
Binary files differ
diff --git a/platform/4.3/final/images/migration-wizard.png b/platform/4.3/final/images/migration-wizard.png
new file mode 100644
index 0000000..d19bee9
--- /dev/null
+++ b/platform/4.3/final/images/migration-wizard.png
Binary files differ
diff --git a/platform/4.3/final/images/missing-include.png b/platform/4.3/final/images/missing-include.png
new file mode 100644
index 0000000..304a810
--- /dev/null
+++ b/platform/4.3/final/images/missing-include.png
Binary files differ
diff --git a/platform/4.3/final/images/no-reference.png b/platform/4.3/final/images/no-reference.png
new file mode 100644
index 0000000..45d52bc
--- /dev/null
+++ b/platform/4.3/final/images/no-reference.png
Binary files differ
diff --git a/platform/4.3/final/images/null-annotations-for-fields-examples.png b/platform/4.3/final/images/null-annotations-for-fields-examples.png
new file mode 100644
index 0000000..4276694
--- /dev/null
+++ b/platform/4.3/final/images/null-annotations-for-fields-examples.png
Binary files differ
diff --git a/platform/4.3/final/images/null-annotations-for-fields-examples.txt b/platform/4.3/final/images/null-annotations-for-fields-examples.txt
new file mode 100644
index 0000000..648bc94
--- /dev/null
+++ b/platform/4.3/final/images/null-annotations-for-fields-examples.txt
@@ -0,0 +1,26 @@
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
+
+public class NullAnnotatedFields {
+    @NonNull Letter nonNull;
+    @Nullable Letter nullable;
+    String test() {
+        nonNull.print();
+        nullable.print();
+        nonNull = null;
+
+        if (nullable != null)
+            nullable.print(); // protected
+
+        nullable = new Letter();
+        bar();     // spoils protection
+        return nullable.toString();
+    }
+    void bar() {
+       
+    }
+}
+// --- not shown in the screenshot: --- 
+class Letter {
+    void print() {}
+}
\ No newline at end of file
diff --git a/platform/4.3/final/images/only-include-exported.png b/platform/4.3/final/images/only-include-exported.png
new file mode 100644
index 0000000..e6cacc2
--- /dev/null
+++ b/platform/4.3/final/images/only-include-exported.png
Binary files differ
diff --git a/platform/4.3/final/images/open-resource-buttons.png b/platform/4.3/final/images/open-resource-buttons.png
new file mode 100644
index 0000000..a741513
--- /dev/null
+++ b/platform/4.3/final/images/open-resource-buttons.png
Binary files differ
diff --git a/platform/4.3/final/images/option-syntactic-null-analysis-for-fields.png b/platform/4.3/final/images/option-syntactic-null-analysis-for-fields.png
new file mode 100644
index 0000000..fbe2422
--- /dev/null
+++ b/platform/4.3/final/images/option-syntactic-null-analysis-for-fields.png
Binary files differ
diff --git a/platform/4.3/final/images/override-annotation-code-style.png b/platform/4.3/final/images/override-annotation-code-style.png
new file mode 100644
index 0000000..6da2b0a
--- /dev/null
+++ b/platform/4.3/final/images/override-annotation-code-style.png
Binary files differ
diff --git a/platform/4.3/final/images/override-annotation-compiler.png b/platform/4.3/final/images/override-annotation-compiler.png
new file mode 100644
index 0000000..3b0516c
--- /dev/null
+++ b/platform/4.3/final/images/override-annotation-compiler.png
Binary files differ
diff --git a/platform/4.3/final/images/package-javadoc-hover-examples.png b/platform/4.3/final/images/package-javadoc-hover-examples.png
new file mode 100644
index 0000000..8a580c9
--- /dev/null
+++ b/platform/4.3/final/images/package-javadoc-hover-examples.png
Binary files differ
diff --git a/platform/4.3/final/images/plugin-image-view.png b/platform/4.3/final/images/plugin-image-view.png
new file mode 100644
index 0000000..bf7815d
--- /dev/null
+++ b/platform/4.3/final/images/plugin-image-view.png
Binary files differ
diff --git a/platform/4.3/final/images/pre-fill-package-name.png b/platform/4.3/final/images/pre-fill-package-name.png
new file mode 100644
index 0000000..230704e
--- /dev/null
+++ b/platform/4.3/final/images/pre-fill-package-name.png
Binary files differ
diff --git a/platform/4.3/final/images/quickassist-for-unused-type-parameter-example.png b/platform/4.3/final/images/quickassist-for-unused-type-parameter-example.png
new file mode 100644
index 0000000..5c63e66
--- /dev/null
+++ b/platform/4.3/final/images/quickassist-for-unused-type-parameter-example.png
Binary files differ
diff --git a/platform/4.3/final/images/remediation.png b/platform/4.3/final/images/remediation.png
new file mode 100644
index 0000000..72101c3
--- /dev/null
+++ b/platform/4.3/final/images/remediation.png
Binary files differ
diff --git a/platform/4.3/final/images/speed.jpg b/platform/4.3/final/images/speed.jpg
new file mode 100644
index 0000000..f42c47e
--- /dev/null
+++ b/platform/4.3/final/images/speed.jpg
Binary files differ
diff --git a/platform/4.3/final/images/trim-drag.png b/platform/4.3/final/images/trim-drag.png
new file mode 100644
index 0000000..9c79b41
--- /dev/null
+++ b/platform/4.3/final/images/trim-drag.png
Binary files differ
diff --git a/platform/4.3/final/images/unresolved-analysis.png b/platform/4.3/final/images/unresolved-analysis.png
new file mode 100644
index 0000000..b92b1a6
--- /dev/null
+++ b/platform/4.3/final/images/unresolved-analysis.png
Binary files differ
diff --git a/platform/4.3/final/images/unused-type-parameter.png b/platform/4.3/final/images/unused-type-parameter.png
new file mode 100644
index 0000000..0e6df20
--- /dev/null
+++ b/platform/4.3/final/images/unused-type-parameter.png
Binary files differ
diff --git a/platform/4.3/final/images/use-last-page-option.png b/platform/4.3/final/images/use-last-page-option.png
new file mode 100644
index 0000000..806f02e
--- /dev/null
+++ b/platform/4.3/final/images/use-last-page-option.png
Binary files differ
diff --git a/platform/4.3/final/images/use-scan.png b/platform/4.3/final/images/use-scan.png
new file mode 100644
index 0000000..f91028e
--- /dev/null
+++ b/platform/4.3/final/images/use-scan.png
Binary files differ
diff --git a/platform/4.3/final/images/using-no-reference.png b/platform/4.3/final/images/using-no-reference.png
new file mode 100644
index 0000000..51518c8
--- /dev/null
+++ b/platform/4.3/final/images/using-no-reference.png
Binary files differ
diff --git a/platform/4.3/final/images/vertical-switcher.png b/platform/4.3/final/images/vertical-switcher.png
new file mode 100644
index 0000000..8798efa
--- /dev/null
+++ b/platform/4.3/final/images/vertical-switcher.png
Binary files differ
diff --git a/platform/4.3/final/images/whole-word-option.png b/platform/4.3/final/images/whole-word-option.png
new file mode 100644
index 0000000..ec15556
--- /dev/null
+++ b/platform/4.3/final/images/whole-word-option.png
Binary files differ
diff --git a/platform/4.3/final/images/x-start-on-first-thread.png b/platform/4.3/final/images/x-start-on-first-thread.png
new file mode 100644
index 0000000..76ecce0
--- /dev/null
+++ b/platform/4.3/final/images/x-start-on-first-thread.png
Binary files differ