[jenkins] 02/32: Remove old patches

James Downing Page jamespage at alioth.debian.org
Tue Aug 13 11:46:53 UTC 2013


This is an automated email from the git hooks/post-receive script.

jamespage pushed a commit to branch master
in repository jenkins.

commit 1c5bdca6493573c241df68bea29ee783a0b3a6e2
Author: James Page <james.page at ubuntu.com>
Date:   Sun Aug 11 10:46:26 2013 +0100

    Remove old patches
---
 debian/patches/build/apt-stapler-processing.patch  |   37 --
 debian/patches/build/build.patch                   |   46 --
 debian/patches/build/disable-plugins.patch         |   85 ----
 debian/patches/build/fileupload-compat.patch       |   31 --
 debian/patches/build/ignore-plugin-pom.xml         |   14 -
 debian/patches/build/io-compat.pach                |   28 --
 debian/patches/build/jenkins-version-number.patch  |  499 --------------------
 debian/patches/build/openjdk6.patch                |   38 --
 debian/patches/build/remove-findbugs.patch         |  112 -----
 debian/patches/build/remove-licensing-report.patch |   34 --
 debian/patches/build/use-debian-jbcrypt.patch      |   18 -
 debian/patches/build/use-stock-asm3.patch          |   45 --
 debian/patches/build/use-stock-jmdns.patch         |   29 --
 .../dependency-upgrades/jnr-posix-upgrade.patch    |   75 ---
 .../filter-native-integrations.patch               |   25 -
 .../native-integration/purge-embedded-su4j.patch   |   36 --
 .../native-integration/purge-windows-support.patch |   24 -
 debian/patches/native-integration/purge-winp.patch |  115 -----
 .../windows-service-disable.patch                  |   39 --
 debian/patches/ubuntu/ubuntu-font.patch            |   24 -
 20 files changed, 1354 deletions(-)

diff --git a/debian/patches/build/apt-stapler-processing.patch b/debian/patches/build/apt-stapler-processing.patch
deleted file mode 100644
index 52424b5..0000000
--- a/debian/patches/build/apt-stapler-processing.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Description: Jenkins 1.409.x upstream uses an older version of stapler and
- the maven-stapler-plugin that those present in Debian and Ubuntu.  As a result
- the packaging for Jenkins core needs to be updated to be a straight jar as the
- newer version of stapler uses JSR-269 for annotation processing and hooks into
- the standard compile phase of maven.
- .
- This patch can be dropped when Jenkins release their next LTS release.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -652,6 +652,24 @@ THE SOFTWARE.
-         </executions>
-       </plugin>
-       <plugin>
-+        <groupId>org.apache.maven.plugins</groupId>
-+        <artifactId>maven-compiler-plugin</artifactId>
-+        <version>2.3.2</version>
-+        <configuration>
-+          <excludes>
-+             <exclude>**/os/solaris/*</exclude>
-+             <exclude>**/os/windows/*</exclude>
-+             <exclude>**/DCOMSandbox.java</exclude>
-+             <exclude>**/DotNet.java</exclude>
-+             <exclude>**/WindowsSlaveInstaller.java</exclude>
-+             <exclude>**/WindowsInstallerLink.java</exclude>
-+          </excludes>
-+          <testExcludes>
-+             <exclude>**/DCOMSandbox.java</exclude>
-+          </testExcludes>
-+        </configuration>
-+      </plugin>
-+      <plugin>
-         <groupId>org.kohsuke.stapler</groupId>
-         <artifactId>maven-stapler-plugin</artifactId>
-         <version>1.16</version>
diff --git a/debian/patches/build/build.patch b/debian/patches/build/build.patch
deleted file mode 100644
index 405ace2..0000000
--- a/debian/patches/build/build.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Description: Misc patches to main POM file to disable some modules
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/pom.xml
-+++ b/pom.xml
-@@ -48,10 +48,7 @@ THE SOFTWARE.
- 
-   <modules>
-     <module>core</module>
--    <module>maven-plugin</module>
--    <module>ui-samples-plugin</module>
-     <module>war</module>
--    <module>test</module>
-     <module>cli</module>
-     <module>plugins</module>
-   </modules>
-@@ -581,9 +578,6 @@ THE SOFTWARE.
-                 <requireJavaVersion>
-                   <version>1.6.0-18</version>
-                 </requireJavaVersion>
--                <requireMavenVersion>
--                  <version>3.0</version>
--                </requireMavenVersion>
-               </rules>
-             </configuration>
-           </execution>
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -326,6 +326,16 @@ THE SOFTWARE.
-       <groupId>commons-jelly</groupId>
-       <artifactId>commons-jelly-tags-fmt</artifactId>
-       <version>1.0</version>
-+      <exclusions>
-+        <exclusion>
-+          <groupId>commons-jelly</groupId>
-+          <artifactId>commons-jelly</artifactId>
-+        </exclusion>
-+        <exclusion>
-+          <groupId>commons-jexl</groupId>
-+          <artifactId>commons-jexl</artifactId>
-+        </exclusion>
-+      </exclusions>
-     </dependency>
-     <dependency>
-       <groupId>commons-jelly</groupId>
diff --git a/debian/patches/build/disable-plugins.patch b/debian/patches/build/disable-plugins.patch
deleted file mode 100644
index d8f5aac..0000000
--- a/debian/patches/build/disable-plugins.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-Description: Disables packagaging of plugins with core Jenkins
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/war/pom.xml
-+++ b/war/pom.xml
-@@ -174,6 +174,11 @@ THE SOFTWARE.
-       <scope>system</scope>
-       <systemPath>/usr/local/yjp/lib/yjp.jar</systemPath>
-     </dependency-->
-+    <dependency>
-+      <groupId>commons-httpclient</groupId>
-+      <artifactId>commons-httpclient</artifactId>
-+      <version>3.1-rc1</version>
-+    </dependency>
-   </dependencies>
- 
-   <build>
-@@ -261,66 +266,6 @@ THE SOFTWARE.
-                   <outputDirectory>${project.build.directory}/${project.build.finalName}</outputDirectory>
-                   <destFileName>winstone.jar</destFileName>
-                 </artifactItem>
--                <!-- bundled plugins -->
--                <artifactItem>
--                  <groupId>${project.groupId}</groupId>
--                  <artifactId>maven-plugin</artifactId>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>ssh-slaves</artifactId>
--                  <version>0.21</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>subversion</artifactId>
--                  <version>1.39</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>cvs</artifactId>
--                  <version>1.6</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>ant</artifactId>
--                  <version>1.1</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>javadoc</artifactId>
--                  <version>1.0</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>translation</artifactId>
--                  <version>1.8</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>external-monitor-job</artifactId>
--                  <version>1.1</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>ldap</artifactId>
--                  <version>1.1</version>
--                  <type>hpi</type>
--                </artifactItem>
--                <artifactItem>
--                  <groupId>org.jenkins-ci.plugins</groupId>
--                  <artifactId>pam-auth</artifactId>
--                  <version>1.0</version>
--                  <type>hpi</type>
--                </artifactItem>
-               </artifactItems>
-               <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/plugins</outputDirectory>
-               <stripVersion>true</stripVersion>
diff --git a/debian/patches/build/fileupload-compat.patch b/debian/patches/build/fileupload-compat.patch
deleted file mode 100644
index 76107df..0000000
--- a/debian/patches/build/fileupload-compat.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Description: Compatibility patch for Commons FileUpload
- Debian/Ubuntu ships a later version of commons-fileupload
- .
- This patch provides compatibility only.
-Author: james.page at ubuntu.com
-Forwarded: no
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/core/src/main/java/hudson/model/FileParameterValue.java
-+++ b/core/src/main/java/hudson/model/FileParameterValue.java
-@@ -40,6 +40,7 @@ import javax.servlet.ServletException;
- 
- import org.apache.commons.fileupload.FileItem;
- import org.apache.commons.fileupload.disk.DiskFileItem;
-+import org.apache.commons.fileupload.FileItemHeaders;
- import org.apache.commons.io.FilenameUtils;
- import org.apache.commons.io.IOUtils;
- import org.apache.commons.lang.StringUtils;
-@@ -277,5 +278,12 @@ public class FileParameterValue extends
-         public OutputStream getOutputStream() throws IOException {
-             return new FileOutputStream(file);
-         }
-+
-+        public void setHeaders(FileItemHeaders headers) {
-+        }
-+
-+        public FileItemHeaders getHeaders() {
-+            return null;
-+        }
-     }
- }
diff --git a/debian/patches/build/ignore-plugin-pom.xml b/debian/patches/build/ignore-plugin-pom.xml
deleted file mode 100644
index d52c6d0..0000000
--- a/debian/patches/build/ignore-plugin-pom.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-Description: Disable upstream plugin pom
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/pom.xml
-+++ b/pom.xml
-@@ -50,7 +50,6 @@ THE SOFTWARE.
-     <module>core</module>
-     <module>war</module>
-     <module>cli</module>
--    <module>plugins</module>
-   </modules>
- 
-   <scm>
diff --git a/debian/patches/build/io-compat.pach b/debian/patches/build/io-compat.pach
deleted file mode 100644
index e3b53c9..0000000
--- a/debian/patches/build/io-compat.pach
+++ /dev/null
@@ -1,28 +0,0 @@
-Description: Compatibility patch with commons-io >= 2.4
-Author: James Page <james.page at ubuntu.com>
-Forwarded: no
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/core/src/main/java/hudson/util/IOUtils.java
-+++ b/core/src/main/java/hudson/util/IOUtils.java
-@@ -76,16 +76,18 @@ public class IOUtils extends org.apache.
-      *
-      * @since 1.349
-      */
--    public static InputStream skip(InputStream in, long size) throws IOException {
-+    public static long skip(InputStream in, long size) throws IOException {
-         DataInputStream di = new DataInputStream(in);
-+        long skipped = 0;
- 
-         while (size>0) {
-             int chunk = (int)Math.min(SKIP_BUFFER.length,size);
-             di.readFully(SKIP_BUFFER,0,chunk);
-             size -= chunk;
-+            skipped += chunk;
-         }
- 
--        return in;
-+        return skipped;
-     }
- 
-     /**
diff --git a/debian/patches/build/jenkins-version-number.patch b/debian/patches/build/jenkins-version-number.patch
deleted file mode 100644
index a3dfd88..0000000
--- a/debian/patches/build/jenkins-version-number.patch
+++ /dev/null
@@ -1,499 +0,0 @@
-Description: This is provided by upstream as a separate package.
- As it is actually just a single Java file and has limited re-use
- outside of Jenkins providing as a patch instead.
- .
- Might package this later if a) it changes alot or b) something else
- needs it outside of Jenkins core.
-Author: James Page <james.page at ubuntu.com>
-Origin: https://github.com/jenkinsci/lib-version-number
-Forwarded: not-needed
-
---- /dev/null
-+++ b/core/src/main/java/hudson/util/VersionNumber.java
-@@ -0,0 +1,486 @@
-+package hudson.util;
-+
-+/*
-+ * Licensed to the Apache Software Foundation (ASF) under one
-+ * or more contributor license agreements.  See the NOTICE file
-+ * distributed with this work for additional information
-+ * regarding copyright ownership.  The ASF licenses this file
-+ * to you under the Apache License, Version 2.0 (the
-+ * "License"); you may not use this file except in compliance
-+ * with the License.  You may obtain a copy of the License at
-+ *
-+ *     http://www.apache.org/licenses/LICENSE-2.0
-+ *
-+ * Unless required by applicable law or agreed to in writing,
-+ * software distributed under the License is distributed on an
-+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-+ * KIND, either express or implied.  See the License for the
-+ * specific language governing permissions and limitations
-+ * under the License.
-+ */
-+
-+import java.math.BigInteger;
-+import java.util.ArrayList;
-+import java.util.Arrays;
-+import java.util.Comparator;
-+import java.util.Iterator;
-+import java.util.List;
-+import java.util.ListIterator;
-+import java.util.Locale;
-+import java.util.Properties;
-+import java.util.Stack;
-+
-+/**
-+ * Immutable representation of a version number based on the Mercury version numbering scheme.
-+ *
-+ * {@link VersionNumber}s are {@link Comparable}.
-+ *
-+ * <h2>Special tokens</h2>
-+ * <p>
-+ * We allow a component to be not just a number, but also "ea", "ea1", "ea2".
-+ * "ea" is treated as "ea0", and eaN < M for any M > 0.
-+ *
-+ * <p>
-+ * '*' is also allowed as a component, and '*' > M for any M > 0.
-+ *
-+ * <p>
-+ * 'SNAPSHOT' is also allowed as a component, and "N.SNAPSHOT" is interpreted as "N-1.*"
-+ *
-+ * <pre>
-+ * 2.0.* > 2.0.1 > 2.0.1-SNAPSHOT > 2.0.0.99 > 2.0.0 > 2.0.ea > 2.0
-+ * </pre>
-+ *
-+ * This class is re-implemented in 1.415. The class was originally introduced in 1.139
-+ *
-+ * @since 1.139
-+ * @author Stephen Connolly (stephenc at apache.org)
-+ * @author Kenney Westerhof (kenney at apache.org)
-+ * @author Hervé Boutemy (hboutemy at apache.org)
-+ */
-+public class VersionNumber implements Comparable<VersionNumber> {
-+    private String value;
-+
-+    private String canonical;
-+
-+    private ListItem items;
-+
-+    private interface Item {
-+        public static final int INTEGER_ITEM = 0;
-+
-+        public static final int STRING_ITEM = 1;
-+
-+        public static final int LIST_ITEM = 2;
-+
-+        public static final int WILDCARD_ITEM = 3;
-+
-+        public int compareTo(Item item);
-+
-+        public int getType();
-+
-+        public boolean isNull();
-+    }
-+
-+    /**
-+     * Represents a wild-card item in the version item list.
-+     */
-+    private static class WildCardItem implements Item {
-+
-+        public int compareTo(Item item) {
-+            if (item==null) // 1.* ( > 1.99) > 1
-+                return 1;
-+            switch (item.getType()) {
-+                case INTEGER_ITEM:
-+                case LIST_ITEM:
-+                case STRING_ITEM:
-+                    return 1;
-+                case WILDCARD_ITEM:
-+                    return 0;
-+                default:
-+                    return 1;
-+            }
-+        }
-+
-+        public int getType() {
-+            return WILDCARD_ITEM;
-+        }
-+
-+        public boolean isNull() {
-+            return false;
-+        }
-+
-+        @Override
-+        public String toString() {
-+            return "*";
-+        }
-+    }
-+
-+    /**
-+     * Represents a numeric item in the version item list.
-+     */
-+    private static class IntegerItem
-+            implements Item {
-+        private static final BigInteger BigInteger_ZERO = new BigInteger("0");
-+
-+        private final BigInteger value;
-+
-+        public static final IntegerItem ZERO = new IntegerItem();
-+
-+        private IntegerItem() {
-+            this.value = BigInteger_ZERO;
-+        }
-+
-+        public IntegerItem(String str) {
-+            this.value = new BigInteger(str);
-+        }
-+
-+        public int getType() {
-+            return INTEGER_ITEM;
-+        }
-+
-+        public boolean isNull() {
-+            return BigInteger_ZERO.equals(value);
-+        }
-+
-+        public int compareTo(Item item) {
-+            if (item == null) {
-+                return BigInteger_ZERO.equals(value) ? 0 : 1; // 1.0 == 1, 1.1 > 1
-+            }
-+
-+            switch (item.getType()) {
-+                case INTEGER_ITEM:
-+                    return value.compareTo(((IntegerItem) item).value);
-+
-+                case STRING_ITEM:
-+                    return 1; // 1.1 > 1-sp
-+
-+                case LIST_ITEM:
-+                    return 1; // 1.1 > 1-1
-+
-+                case WILDCARD_ITEM:
-+                    return 0;
-+
-+                default:
-+                    throw new RuntimeException("invalid item: " + item.getClass());
-+            }
-+        }
-+
-+        public String toString() {
-+            return value.toString();
-+        }
-+    }
-+
-+    /**
-+     * Represents a string in the version item list, usually a qualifier.
-+     */
-+    private static class StringItem implements Item {
-+        private final static String[] QUALIFIERS = {"snapshot", "alpha", "beta", "milestone", "rc", "", "sp"};
-+
-+        private final static List<String> _QUALIFIERS = Arrays.asList(QUALIFIERS);
-+
-+        private final static Properties ALIASES = new Properties();
-+
-+        static {
-+            ALIASES.put("ga", "");
-+            ALIASES.put("final", "");
-+            ALIASES.put("cr", "rc");
-+            ALIASES.put("ea", "rc");
-+        }
-+
-+        /**
-+         * A comparable for the empty-string qualifier. This one is used to determine if a given qualifier makes the
-+         * version older than one without a qualifier, or more recent.
-+         */
-+        private static String RELEASE_VERSION_INDEX = String.valueOf(_QUALIFIERS.indexOf(""));
-+
-+        private String value;
-+
-+        public StringItem(String value, boolean followedByDigit) {
-+            if (followedByDigit && value.length() == 1) {
-+                // a1 = alpha-1, b1 = beta-1, m1 = milestone-1
-+                switch (value.charAt(0)) {
-+                    case 'a':
-+                        value = "alpha";
-+                        break;
-+                    case 'b':
-+                        value = "beta";
-+                        break;
-+                    case 'm':
-+                        value = "milestone";
-+                        break;
-+                }
-+            }
-+            this.value = ALIASES.getProperty(value, value);
-+        }
-+
-+        public int getType() {
-+            return STRING_ITEM;
-+        }
-+
-+        public boolean isNull() {
-+            return (comparableQualifier(value).compareTo(RELEASE_VERSION_INDEX) == 0);
-+        }
-+
-+        /**
-+         * Returns a comparable for a qualifier.
-+         * <p/>
-+         * This method both takes into account the ordering of known qualifiers as well as lexical ordering for unknown
-+         * qualifiers.
-+         * <p/>
-+         * just returning an Integer with the index here is faster, but requires a lot of if/then/else to check for -1
-+         * or QUALIFIERS.size and then resort to lexical ordering. Most comparisons are decided by the first character,
-+         * so this is still fast. If more characters are needed then it requires a lexical sort anyway.
-+         *
-+         * @param qualifier
-+         * @return
-+         */
-+        public static String comparableQualifier(String qualifier) {
-+            int i = _QUALIFIERS.indexOf(qualifier);
-+
-+            return i == -1 ? _QUALIFIERS.size() + "-" + qualifier : String.valueOf(i);
-+        }
-+
-+        public int compareTo(Item item) {
-+            if (item == null) {
-+                // 1-rc < 1, 1-ga > 1
-+                return comparableQualifier(value).compareTo(RELEASE_VERSION_INDEX);
-+            }
-+            switch (item.getType()) {
-+                case INTEGER_ITEM:
-+                    return -1; // 1.any < 1.1 ?
-+
-+                case STRING_ITEM:
-+                    return comparableQualifier(value).compareTo(comparableQualifier(((StringItem) item).value));
-+
-+                case LIST_ITEM:
-+                    return -1; // 1.any < 1-1
-+
-+                case WILDCARD_ITEM:
-+                    return -1;
-+
-+                default:
-+                    throw new RuntimeException("invalid item: " + item.getClass());
-+            }
-+        }
-+
-+        public String toString() {
-+            return value;
-+        }
-+    }
-+
-+    /**
-+     * Represents a version list item. This class is used both for the global item list and for sub-lists (which start
-+     * with '-(number)' in the version specification).
-+     */
-+    private static class ListItem extends ArrayList<Item> implements Item {
-+        public int getType() {
-+            return LIST_ITEM;
-+        }
-+
-+        public boolean isNull() {
-+            return (size() == 0);
-+        }
-+
-+        void normalize() {
-+            for (ListIterator iterator = listIterator(size()); iterator.hasPrevious(); ) {
-+                Item item = (Item) iterator.previous();
-+                if (item.isNull()) {
-+                    iterator.remove(); // remove null trailing items: 0, "", empty list
-+                } else {
-+                    break;
-+                }
-+            }
-+        }
-+
-+        public int compareTo(Item item) {
-+            if (item == null) {
-+                if (size() == 0) {
-+                    return 0; // 1-0 = 1- (normalize) = 1
-+                }
-+                Item first = (Item) get(0);
-+                return first.compareTo(null);
-+            }
-+
-+            switch (item.getType()) {
-+                case INTEGER_ITEM:
-+                    return -1; // 1-1 < 1.0.x
-+
-+                case STRING_ITEM:
-+                    return 1; // 1-1 > 1-sp
-+
-+                case LIST_ITEM:
-+                    Iterator left = iterator();
-+                    Iterator right = ((ListItem) item).iterator();
-+
-+                    while (left.hasNext() || right.hasNext()) {
-+                        Item l = left.hasNext() ? (Item) left.next() : null;
-+                        Item r = right.hasNext() ? (Item) right.next() : null;
-+
-+                        // if this is shorter, then invert the compare and mul with -1
-+                        int result = l == null ? -1 * r.compareTo(l) : l.compareTo(r);
-+
-+                        if (result != 0) {
-+                            return result;
-+                        }
-+                    }
-+
-+                    return 0;
-+
-+                case WILDCARD_ITEM:
-+                    return -1;
-+
-+                default:
-+                    throw new RuntimeException("invalid item: " + item.getClass());
-+            }
-+        }
-+
-+        public String toString() {
-+            StringBuilder buffer = new StringBuilder("(");
-+            for (Iterator<Item> iter = iterator(); iter.hasNext(); ) {
-+                buffer.append(iter.next());
-+                if (iter.hasNext()) {
-+                    buffer.append(',');
-+                }
-+            }
-+            buffer.append(')');
-+            return buffer.toString();
-+        }
-+    }
-+
-+    public VersionNumber(String version) {
-+        parseVersion(version);
-+    }
-+
-+    private void parseVersion(String version) {
-+        this.value = version;
-+
-+        items = new ListItem();
-+
-+        version = version.toLowerCase(Locale.ENGLISH);
-+
-+        ListItem list = items;
-+
-+        Stack<Item> stack = new Stack<Item>();
-+        stack.push(list);
-+
-+        boolean isDigit = false;
-+
-+        int startIndex = 0;
-+
-+        for (int i = 0; i < version.length(); i++) {
-+            char c = version.charAt(i);
-+
-+            if (c == '.') {
-+                if (i == startIndex) {
-+                    list.add(IntegerItem.ZERO);
-+                } else {
-+                    list.add(parseItem(isDigit, version.substring(startIndex, i)));
-+                }
-+                startIndex = i + 1;
-+            } else if (c == '-') {
-+                if (i == startIndex) {
-+                    list.add(IntegerItem.ZERO);
-+                } else {
-+                    list.add(parseItem(isDigit, version.substring(startIndex, i)));
-+                }
-+                startIndex = i + 1;
-+
-+                if (isDigit) {
-+                    list.normalize(); // 1.0-* = 1-*
-+
-+                    if ((i + 1 < version.length()) && Character.isDigit(version.charAt(i + 1))) {
-+                        // new ListItem only if previous were digits and new char is a digit,
-+                        // ie need to differentiate only 1.1 from 1-1
-+                        list.add(list = new ListItem());
-+
-+                        stack.push(list);
-+                    }
-+                }
-+            } else if (c == '*') {
-+                list.add(new WildCardItem());
-+                startIndex = i + 1;
-+            } else if (Character.isDigit(c)) {
-+                if (!isDigit && i > startIndex) {
-+                    list.add(new StringItem(version.substring(startIndex, i), true));
-+                    startIndex = i;
-+                }
-+
-+                isDigit = true;
-+            } else if (Character.isWhitespace(c)) {
-+                if (i > startIndex) {
-+                    if (isDigit) {
-+                        list.add(parseItem(true, version.substring(startIndex, i)));
-+                    } else {
-+                        list.add(new StringItem(version.substring(startIndex, i), true));
-+                    }
-+                    startIndex = i;
-+                }
-+
-+                isDigit = false;
-+            } else {
-+                if (isDigit && i > startIndex) {
-+                    list.add(parseItem(true, version.substring(startIndex, i)));
-+                    startIndex = i;
-+                }
-+
-+                isDigit = false;
-+            }
-+        }
-+
-+        if (version.length() > startIndex) {
-+            list.add(parseItem(isDigit, version.substring(startIndex)));
-+        }
-+
-+        while (!stack.isEmpty()) {
-+            list = (ListItem) stack.pop();
-+            list.normalize();
-+        }
-+
-+        canonical = items.toString();
-+    }
-+
-+    private static Item parseItem(boolean isDigit, String buf) {
-+        return isDigit ? (Item) new IntegerItem(buf) : (Item) new StringItem(buf, false);
-+    }
-+
-+    public int compareTo(VersionNumber o) {
-+        return items.compareTo(o.items);
-+    }
-+
-+    public String toString() {
-+        return value;
-+    }
-+
-+    public boolean equals(Object o) {
-+        return (o instanceof VersionNumber) && canonical.equals(((VersionNumber) o).canonical);
-+    }
-+
-+    public int hashCode() {
-+        return canonical.hashCode();
-+    }
-+
-+    public boolean isOlderThan(VersionNumber rhs) {
-+        return compareTo(rhs) < 0;
-+    }
-+
-+    public boolean isNewerThan(VersionNumber rhs) {
-+        return compareTo(rhs) > 0;
-+    }
-+
-+    public int digit(int idx) {
-+        Iterator i = items.iterator();
-+        Item item = (Item) i.next();
-+        while (idx > 0 && i.hasNext()) {
-+            if (item instanceof IntegerItem) {
-+                idx--;
-+            }
-+            i.next();
-+        }
-+        return ((IntegerItem) item).value.intValue();
-+    }
-+
-+    public static final Comparator<VersionNumber> DESCENDING = new Comparator<VersionNumber>() {
-+        public int compare(VersionNumber o1, VersionNumber o2) {
-+            return o2.compareTo(o1);
-+        }
-+    };
-+}
diff --git a/debian/patches/build/openjdk6.patch b/debian/patches/build/openjdk6.patch
deleted file mode 100644
index 96eddbd..0000000
--- a/debian/patches/build/openjdk6.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Description: Misc patches to get Jenkins to compile using OpenJDK 6. This
- should not be required and points to an issue with generics compilation in 
- OpenJDK - reported as such.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/716959
-
---- a/core/src/main/java/hudson/model/AbstractBuild.java
-+++ b/core/src/main/java/hudson/model/AbstractBuild.java
-@@ -1276,6 +1276,15 @@ public abstract class AbstractBuild<P ex
-     }
- 
-     private static final Logger LOGGER = Logger.getLogger(AbstractBuild.class.getName());
-+
-+    /**
-+     * The project this build is for.
-+     */
-+    public P getParent() {
-+        return (P)super.getParent();
-+    }
-+
-+
- }
- 
- 
---- a/core/src/main/java/hudson/DescriptorExtensionList.java
-+++ b/core/src/main/java/hudson/DescriptorExtensionList.java
-@@ -81,8 +81,9 @@ public class DescriptorExtensionList<T e
-      * @deprecated as of 1.416
-      *      Use {@link #create(Jenkins, Class)}
-      */
--    public static <T extends Describable<T>,D extends Descriptor<T>>
--    DescriptorExtensionList<T,D> createDescriptorList(Hudson hudson, Class<T> describableType) {
-+    @SuppressWarnings({"unchecked", "rawtypes"})
-+    public static /*<T extends Describable<T>,D extends Descriptor<T>>*/
-+    DescriptorExtensionList/*<T,D>*/ createDescriptorList(Hudson hudson, Class/*<T>*/ describableType) {
-         return createDescriptorList((Jenkins)hudson,describableType);
-     }
- 
diff --git a/debian/patches/build/remove-findbugs.patch b/debian/patches/build/remove-findbugs.patch
deleted file mode 100644
index 757e39a..0000000
--- a/debian/patches/build/remove-findbugs.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-Description: The Debian build process does not run findbugs as
- this is not packaged for Debian.
- .
- This patch removes all calls to the findbugs annotations package
- as this is not packaged either.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/logging/LogRecorderManager.java
-+++ b/core/src/main/java/hudson/logging/LogRecorderManager.java
-@@ -112,7 +112,6 @@ public class LogRecorderManager extends
-     /**
-      * Configure the logging level.
-      */
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings("LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE")
-     public HttpResponse doConfigLogger(@QueryParameter String name, @QueryParameter String level) {
-         Jenkins.getInstance().checkPermission(Jenkins.ADMINISTER);
-         Level lv;
---- a/core/src/main/java/hudson/util/PluginServletFilter.java
-+++ b/core/src/main/java/hudson/util/PluginServletFilter.java
-@@ -58,7 +58,6 @@ public class PluginServletFilter impleme
-     public PluginServletFilter() {
-     }
- 
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings("ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD")
-     public void init(FilterConfig filterConfig) throws ServletException {
-     	PluginServletFilter.filterConfig = filterConfig;
-     	synchronized (LIST)  {
---- a/core/src/main/java/hudson/WebAppMain.java
-+++ b/core/src/main/java/hudson/WebAppMain.java
-@@ -251,7 +251,6 @@ public final class WebAppMain implements
- 	/**
-      * Installs log handler to monitor all Hudson logs.
-      */
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings("LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE")
-     private void installLogger() {
-         Jenkins.logRecords = handler.getView();
-         Logger.getLogger("hudson").addHandler(handler);
---- a/core/src/main/java/jenkins/model/Jenkins.java
-+++ b/core/src/main/java/jenkins/model/Jenkins.java
-@@ -730,7 +730,6 @@ public class Jenkins extends AbstractCIB
-      * @param pluginManager
-      *      If non-null, use existing plugin manager.  create a new one.
-      */
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings("SC_START_IN_CTOR") // bug in FindBugs. It flags UDPBroadcastThread.start() call but that's for another class
-     protected Jenkins(File root, ServletContext context, PluginManager pluginManager) throws IOException, InterruptedException, ReactorException {
-         long start = System.currentTimeMillis();
-         
-@@ -3019,7 +3018,6 @@ public class Jenkins extends AbstractCIB
-     /**
-      * For debugging. Expose URL to perform GC.
-      */
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings("DM_GC")
-     public void doGc(StaplerResponse rsp) throws IOException {
-         checkPermission(Jenkins.ADMINISTER);
-         System.gc();
---- a/maven-plugin/src/main/java/hudson/maven/MavenUtil.java
-+++ b/maven-plugin/src/main/java/hudson/maven/MavenUtil.java
-@@ -53,7 +53,6 @@ import org.apache.maven.artifact.version
- import org.apache.maven.project.MavenProject;
- import org.apache.maven.project.ProjectBuildingException;
- 
--import edu.umd.cs.findbugs.annotations.SuppressWarnings;
- 
- /**
-  * @author Kohsuke Kawaguchi
-@@ -140,7 +139,6 @@ public class MavenUtil {
-      * Creates a fresh {@link MavenEmbedder} instance.
-      *
-      */
--    @SuppressWarnings("RV_RETURN_VALUE_IGNORED_BAD_PRACTICE")
-     public static MavenEmbedder createEmbedder(MavenEmbedderRequest mavenEmbedderRequest) throws MavenEmbedderException, IOException {
-         
-         
---- a/maven-plugin/src/main/java/hudson/maven/reporters/SurefireArchiver.java
-+++ b/maven-plugin/src/main/java/hudson/maven/reporters/SurefireArchiver.java
-@@ -170,7 +170,6 @@ public class SurefireArchiver extends Ma
-         return true;
-     }
-     
--    @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD", justification="It's okay to write to static fields here, as each Maven build is started in its own VM")
-     private void markBuildAsSuccess(Throwable mojoError, MavenBuildInformation buildInfo) {
-         if(mojoError == null // in the success case we don't get any exception in Maven 3.0.2+; Maven < 3.0.2 returns no exception anyway
-            || mojoError instanceof MojoFailureException) {
---- a/core/src/main/java/hudson/cli/GroovyshCommand.java
-+++ b/core/src/main/java/hudson/cli/GroovyshCommand.java
-@@ -87,7 +87,6 @@ public class GroovyshCommand extends CLI
-             private static final long serialVersionUID = 1L;
- 
-             @SuppressWarnings("unused")
--            @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS",justification="Closure invokes this via reflection")
-             public Object doCall(Object[] args) {
-                 assert(args.length == 1);
-                 assert(args[0] instanceof Shell);
-@@ -110,7 +109,6 @@ public class GroovyshCommand extends CLI
-             private static final long serialVersionUID = 1L;
- 
-             @SuppressWarnings("unused")
--            @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS",justification="Closure invokes this via reflection")
-             public Object doCall(Object[] args) throws ChannelClosedException {
-                 if (args.length == 1 && args[0] instanceof ChannelClosedException) {
-                     throw (ChannelClosedException)args[0];
---- a/core/src/main/java/jenkins/util/ProgressiveRendering.java
-+++ b/core/src/main/java/jenkins/util/ProgressiveRendering.java
-@@ -24,7 +24,6 @@
- 
- package jenkins.util;
- 
--import edu.umd.cs.findbugs.annotations.SuppressWarnings;
- import hudson.model.Computer;
- import java.util.concurrent.ExecutorService;
- import java.util.logging.Level;
diff --git a/debian/patches/build/remove-licensing-report.patch b/debian/patches/build/remove-licensing-report.patch
deleted file mode 100644
index a005c86..0000000
--- a/debian/patches/build/remove-licensing-report.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Description: Upstream generates a licensing report for Jenkins deps.
- Not generated during debian build so excluding from About Jenkins page.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/resources/hudson/AboutJenkins/index.jelly
-+++ b/core/src/main/resources/hudson/AboutJenkins/index.jelly
-@@ -31,13 +31,6 @@ THE SOFTWARE.
-       <p>
-         ${%blurb}
-       </p>
--
--      <p>
--        ${%dependencies}
--      </p>
--      <t:thirdPartyLicenses>
--        <st:include page="/META-INF/licenses.xml" optional="true" />
--      </t:thirdPartyLicenses>
-     </l:main-panel>
-   </l:layout>
- </j:jelly>
---- a/core/src/main/resources/hudson/AboutJenkins/index.properties
-+++ b/core/src/main/resources/hudson/AboutJenkins/index.properties
-@@ -20,7 +20,7 @@
- # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- # THE SOFTWARE.
- 
--about=About Jenkins {0}
-+about=About Jenkins {0} (Debian/Ubuntu distribution)
- blurb=<a href="http://jenkins-ci.org/">Jenkins</a> is a community-developed open-source continuous integration server.
- 
--dependencies=Jenkins depends on the following 3rd party libraries.
-\ No newline at end of file
-+dependencies=Jenkins depends on the following 3rd party libraries.
diff --git a/debian/patches/build/use-debian-jbcrypt.patch b/debian/patches/build/use-debian-jbcrypt.patch
deleted file mode 100644
index 9b34a9b..0000000
--- a/debian/patches/build/use-debian-jbcrypt.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Description: Alter package name for Debian
- The debian JBCrypt package has a difference package name to
- the one present in the central maven repository; this updates
- jenkins to use the one in Debian.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java
-+++ b/core/src/main/java/hudson/security/HudsonPrivateSecurityRealm.java
-@@ -59,7 +59,7 @@ import org.kohsuke.stapler.HttpResponses
- import org.kohsuke.stapler.Stapler;
- import org.kohsuke.stapler.StaplerRequest;
- import org.kohsuke.stapler.StaplerResponse;
--import org.mindrot.jbcrypt.BCrypt;
-+import org.mindrot.BCrypt;
- import org.springframework.dao.DataAccessException;
- 
- import javax.servlet.Filter;
diff --git a/debian/patches/build/use-stock-asm3.patch b/debian/patches/build/use-stock-asm3.patch
deleted file mode 100644
index ef777f8..0000000
--- a/debian/patches/build/use-stock-asm3.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-Description: Upstream use a remapped version of asm3 to ensure
- that it does not conflict with asm2 elsewhere in the Jenkins
- dependency tree.
- .
- In Debian/Ubuntu we have a consistent version in the tree (unlike
- upstream) so we don't need todo this.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/util/SubClassGenerator.java
-+++ b/core/src/main/java/hudson/util/SubClassGenerator.java
-@@ -25,13 +25,13 @@ package hudson.util;
- 
- import hudson.PluginManager.UberClassLoader;
- import jenkins.model.Jenkins;
--import org.kohsuke.asm3.ClassWriter;
--import org.kohsuke.asm3.MethodVisitor;
--import org.kohsuke.asm3.Type;
-+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.MethodVisitor;
-+import org.objectweb.asm.Type;
- 
- import java.lang.reflect.Constructor;
- 
--import static org.kohsuke.asm3.Opcodes.*;
-+import static org.objectweb.asm.Opcodes.*;
- 
- /**
-  * Generates a new class that just defines constructors into the super types.
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -584,6 +584,13 @@ THE SOFTWARE.
-     </dependency>
- 
-     <dependency>
-+      <!-- with this, stapler can load parameter names from the debug info -->
-+      <groupId>asm</groupId>
-+      <artifactId>asm-commons</artifactId>
-+      <version>2.2.3</version>
-+    </dependency>
-+
-+    <dependency>
-       <groupId>org.kohsuke</groupId>
-       <artifactId>access-modifier-annotation</artifactId>
-       <version>1.0</version>
diff --git a/debian/patches/build/use-stock-jmdns.patch b/debian/patches/build/use-stock-jmdns.patch
deleted file mode 100644
index 0d946d9..0000000
--- a/debian/patches/build/use-stock-jmdns.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Description: Jenkins upstream ships with a forked version of
- JmDNS which has a patched in abort method with shuts down
- uncleanly without blocking.
- .
- Unit this feature ships in JmDNS upstream we will live with a
- blocking shutdown in Debian and Ubuntu.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/DNSMultiCast.java
-+++ b/core/src/main/java/hudson/DNSMultiCast.java
-@@ -66,12 +66,12 @@ public class DNSMultiCast implements Clo
- 
-     public void close() {
-         if (jmdns!=null) {
--//            try {
--                jmdns.abort();
-+            try {
-+                jmdns.close();
-                 jmdns = null;
--//            } catch (final IOException e) {
--//                LOGGER.log(Level.WARNING,"Failed to close down JmDNS instance!",e);
--//            }
-+            } catch (final IOException e) {
-+                LOGGER.log(Level.WARNING,"Failed to close down JmDNS instance!",e);
-+            }
-         }
-     }
- 
diff --git a/debian/patches/dependency-upgrades/jnr-posix-upgrade.patch b/debian/patches/dependency-upgrades/jnr-posix-upgrade.patch
deleted file mode 100644
index 4d45427..0000000
--- a/debian/patches/dependency-upgrades/jnr-posix-upgrade.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-Description: Transitional patch from jna-posix to jnr-posix as
- currently packaged in Debian and Ubuntu.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/os/PosixAPI.java
-+++ b/core/src/main/java/hudson/os/PosixAPI.java
-@@ -1,10 +1,9 @@
- package hudson.os;
- 
--import org.jruby.ext.posix.JavaPOSIX;
- import org.jruby.ext.posix.POSIX;
- import org.jruby.ext.posix.POSIXFactory;
- import org.jruby.ext.posix.POSIXHandler;
--import org.jruby.ext.posix.POSIX.ERRORS;
-+import com.kenai.constantine.platform.Errno;
- 
- import java.io.File;
- import java.io.InputStream;
-@@ -35,11 +34,11 @@ public class PosixAPI {
-      * used a fallback java implementation which does not support many operations.
-      */
-     public static boolean supportsNative() {
--        return !(posix instanceof JavaPOSIX);
-+        return posix.isNative();
-     }
-     
-     private static final POSIX posix = POSIXFactory.getPOSIX(new POSIXHandler() {
--        public void error(ERRORS errors, String s) {
-+        public void error(Errno errors, String s) {
-             throw new PosixException(s,errors);
-         }
- 
---- a/core/src/main/java/hudson/os/PosixException.java
-+++ b/core/src/main/java/hudson/os/PosixException.java
-@@ -1,6 +1,6 @@
- package hudson.os;
- 
--import org.jruby.ext.posix.POSIX.ERRORS;
-+import com.kenai.constantine.platform.Errno;
- 
- /**
-  * Indicates an error during POSIX API call.
-@@ -8,14 +8,14 @@ import org.jruby.ext.posix.POSIX.ERRORS;
-  * @author Kohsuke Kawaguchi
-  */
- public class PosixException extends RuntimeException {
--    private final ERRORS errors;
-+    private final Errno errors;
- 
--    public PosixException(String message, ERRORS errors) {
-+    public PosixException(String message, Errno errors) {
-         super(message);
-         this.errors = errors;
-     }
- 
--    public ERRORS getErrorCode() {
-+    public Errno getErrorCode() {
-         return errors;
-     }
- 
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -118,6 +118,11 @@ THE SOFTWARE.
-       <version>1.0.3</version>
-     </dependency>
-     <dependency>
-+      <groupId>org.jruby.extras</groupId>
-+      <artifactId>jffi</artifactId>
-+      <version>0.6.5</version>
-+    </dependency>
-+    <dependency>
-       <groupId>org.kohsuke</groupId>
-       <artifactId>trilead-putty-extension</artifactId>
-       <version>1.2</version>
diff --git a/debian/patches/native-integration/filter-native-integrations.patch b/debian/patches/native-integration/filter-native-integrations.patch
deleted file mode 100644
index 6709eff..0000000
--- a/debian/patches/native-integration/filter-native-integrations.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Description: Filter non-Linux based native integrations from
- compliation using stapler.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -677,6 +677,17 @@ THE SOFTWARE.
-         <configuration>
-           <fork>${staplerFork}</fork><!-- the source code is big enough now that otherwise it fails with OutOfMemoryError -->
-           <maxmem>128m</maxmem>
-+          <excludes>
-+             <exclude>**/os/solaris/*</exclude>
-+             <exclude>**/os/windows/*</exclude>
-+             <exclude>**/DCOMSandbox.java</exclude>
-+             <exclude>**/DotNet.java</exclude>
-+             <exclude>**/WindowsSlaveInstaller.java</exclude>
-+             <exclude>**/WindowsInstallerLink.java</exclude>
-+          </excludes>
-+          <testExcludes>
-+             <exclude>**/DCOMSandbox.java</exclude>
-+          </testExcludes>
-         </configuration>
-       </plugin>
-       <plugin>
diff --git a/debian/patches/native-integration/purge-embedded-su4j.patch b/debian/patches/native-integration/purge-embedded-su4j.patch
deleted file mode 100644
index 18458db..0000000
--- a/debian/patches/native-integration/purge-embedded-su4j.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Description: Purge embeddedsu4j from Jenkins - only required for Solaris
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/os/SU.java
-+++ b/core/src/main/java/hudson/os/SU.java
-@@ -23,7 +23,6 @@
-  */
- package hudson.os;
- 
--import com.sun.solaris.EmbeddedSu;
- import hudson.Launcher.LocalLauncher;
- import hudson.Util;
- import hudson.model.Computer;
-@@ -94,21 +93,6 @@ public abstract class SU {
-                 }
-             }.start(listener,rootPassword);
- 
--        if(os.equals("SunOS"))
--            return new UnixSu() {
--                protected String sudoExe() {
--                    return "/usr/bin/pfexec";
--                }
--
--                protected Process sudoWithPass(ArgumentListBuilder args) throws IOException {
--                    listener.getLogger().println("Running with embedded_su");
--                    ProcessBuilder pb = new ProcessBuilder(args.prepend(sudoExe()).toCommandArray());
--                    return EmbeddedSu.startWithSu(rootUsername, rootPassword, pb);
--                }
--            // in solaris, pfexec never asks for a password, so username==null means
--            // we won't be using password. this helps disambiguate empty password
--            }.start(listener,rootUsername==null?null:rootPassword);
--
-         // TODO: Mac?
- 
-         // unsupported platform, take a chance
diff --git a/debian/patches/native-integration/purge-windows-support.patch b/debian/patches/native-integration/purge-windows-support.patch
deleted file mode 100644
index 79aa9cf..0000000
--- a/debian/patches/native-integration/purge-windows-support.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Description: Purges native windows integration for slave from Jenkins.
- Although this may be useful in some deployments the requirements in terms
- of additional packages are not insignificant and contain a number of forks.
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/slaves/SlaveComputer.java
-+++ b/core/src/main/java/hudson/slaves/SlaveComputer.java
-@@ -36,7 +36,6 @@ import hudson.util.NullStream;
- import hudson.util.RingBufferLogHandler;
- import hudson.util.Futures;
- import hudson.FilePath;
--import hudson.lifecycle.WindowsSlaveInstaller;
- import hudson.Util;
- import hudson.AbortException;
- import hudson.remoting.Launcher;
-@@ -389,7 +388,6 @@ public class SlaveComputer extends Compu
-         channel.pinClassLoader(getClass().getClassLoader());
- 
-         channel.call(new SlaveInitializer());
--//        channel.call(new WindowsSlaveInstaller(remoteFs));
-         for (ComputerListener cl : ComputerListener.all())
-             cl.preOnline(this,channel,root,taskListener);
- 
diff --git a/debian/patches/native-integration/purge-winp.patch b/debian/patches/native-integration/purge-winp.patch
deleted file mode 100644
index 1a9611f..0000000
--- a/debian/patches/native-integration/purge-winp.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-Description: Purges windows process integration from Jenkins
- not needed on Debian based systems
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/src/main/java/hudson/util/ProcessTree.java
-+++ b/core/src/main/java/hudson/util/ProcessTree.java
-@@ -37,8 +37,6 @@ import hudson.util.ProcessTree.OSProcess
- import hudson.util.ProcessTreeRemoting.IOSProcess;
- import hudson.util.ProcessTreeRemoting.IProcessTree;
- import org.apache.commons.io.FileUtils;
--import org.jvnet.winp.WinProcess;
--import org.jvnet.winp.WinpException;
- 
- import java.io.BufferedReader;
- import java.io.ByteArrayOutputStream;
-@@ -331,9 +329,6 @@ public abstract class ProcessTree implem
-             return DEFAULT;
- 
-         try {
--            if(File.pathSeparatorChar==';')
--                return new Windows();
--
-             String os = Util.fixNull(System.getProperty("os.name"));
-             if(os.equals("Linux"))
-                 return new Linux();
-@@ -390,81 +385,6 @@ public abstract class ProcessTree implem
-         }
-     };
- 
--
--    private static final class Windows extends Local {
--        Windows() {
--            for (final WinProcess p : WinProcess.all()) {
--                int pid = p.getPid();
--                super.processes.put(pid,new OSProcess(pid) {
--                    private EnvVars env;
--                    private List<String> args;
--
--                    public OSProcess getParent() {
--                        // windows process doesn't have parent/child relationship
--                        return null;
--                    }
--
--                    public void killRecursively() {
--                        LOGGER.finer("Killing recursively "+getPid());
--                        p.killRecursively();
--                    }
--
--                    public void kill() throws InterruptedException {
--                        LOGGER.finer("Killing "+getPid());
--                        p.kill();
--                        killByKiller();
--                    }
--
--                    @Override
--                    public synchronized List<String> getArguments() {
--                        if(args==null)  args = Arrays.asList(QuotedStringTokenizer.tokenize(p.getCommandLine()));
--                        return args;
--                    }
--
--                    @Override
--                    public synchronized EnvVars getEnvironmentVariables() {
--                        if(env==null)   env = new EnvVars(p.getEnvironmentVariables());
--                        return env;
--                    }
--                });
--
--            }
--        }
--
--        @Override
--        public OSProcess get(Process proc) {
--            return get(new WinProcess(proc).getPid());
--        }
--
--        public void killAll(Map<String, String> modelEnvVars) throws InterruptedException {
--            for( OSProcess p : this) {
--                if(p.getPid()<10)
--                    continue;   // ignore system processes like "idle process"
--
--                LOGGER.finest("Considering to kill "+p.getPid());
--
--                boolean matched;
--                try {
--                    matched = p.hasMatchingEnvVars(modelEnvVars);
--                } catch (WinpException e) {
--                    // likely a missing privilege
--                    LOGGER.log(FINEST,"  Failed to check environment variable match",e);
--                    continue;
--                }
--
--                if(matched)
--                    p.killRecursively();
--                else
--                    LOGGER.finest("Environment variable didn't match");
--
--            }
--        }
--
--        static {
--            WinProcess.enableDebugPrivilege();
--        }
--    }
--
-     static abstract class Unix extends Local {
-         @Override
-         public OSProcess get(Process proc) {
-@@ -1227,4 +1147,4 @@ public abstract class ProcessTree implem
-      */
-     public static boolean enabled = !Boolean.getBoolean(ProcessTreeKiller.class.getName()+".disable")
-                                  && !Boolean.getBoolean(ProcessTree.class.getName()+".disable");
--}
-\ No newline at end of file
-+}
diff --git a/debian/patches/native-integration/windows-service-disable.patch b/debian/patches/native-integration/windows-service-disable.patch
deleted file mode 100644
index 32a911a..0000000
--- a/debian/patches/native-integration/windows-service-disable.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Description: Removes depenedency on windows specific components for Linux build
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/core/pom.xml
-+++ b/core/pom.xml
-@@ -734,32 +734,6 @@ THE SOFTWARE.
-           </execution>
-         </executions>
-       </plugin>
--      <plugin>
--        <artifactId>maven-dependency-plugin</artifactId>
--        <executions>
--          <execution>
--            <id>winsw</id>
--            <phase>generate-resources</phase>
--            <goals>
--              <!-- we use copy as this is a dependency from outside the reactor -->
--              <goal>copy</goal>
--            </goals>
--            <configuration>
--              <artifactItems>
--                <artifactItem>
--                  <groupId>com.sun.winsw</groupId>
--                  <artifactId>winsw</artifactId>
--                  <version>1.10</version>
--                  <classifier>bin</classifier>
--                  <type>exe</type>
--                  <outputDirectory>${project.build.outputDirectory}/windows-service</outputDirectory>
--                  <destFileName>jenkins.exe</destFileName>
--                </artifactItem>
--              </artifactItems>
--            </configuration>
--          </execution>
--        </executions>
--      </plugin>
-       <plugin><!-- set main class -->
-         <artifactId>maven-jar-plugin</artifactId>
-         <!-- version specified in grandparent pom -->
diff --git a/debian/patches/ubuntu/ubuntu-font.patch b/debian/patches/ubuntu/ubuntu-font.patch
deleted file mode 100644
index c2c4423..0000000
--- a/debian/patches/ubuntu/ubuntu-font.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Description: Add 'Ubuntu' font to styling for Jenkins
-Author: James Page <james.page at ubuntu.com>
-Forwarded: not-needed
-
---- a/war/src/main/webapp/css/style.css
-+++ b/war/src/main/webapp/css/style.css
-@@ -29,7 +29,7 @@ body {
- 
- body, table, form, input, td, th, p, textarea, select
- {
--  font-family: Verdana, Helvetica, sans serif;
-+  font-family: Ubuntu, Verdana, Helvetica, sans serif;
-   font-size: 11px;
- }
- 
-@@ -357,7 +357,7 @@ th.pane {
-   padding: 4px 0;
-   margin-left: 0;
-   border-bottom: 1px solid #090;
--  font: bold 12px Verdana, sans-serif;
-+  font: bold 12px Ubuntu, Verdana, sans-serif;
- }
- 
- #foldertab li {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jenkins.git



More information about the pkg-java-commits mailing list