diff --git a/Documentation/config-options.md b/Documentation/config-options.md index 5651001bc..5ffe5d341 100644 --- a/Documentation/config-options.md +++ b/Documentation/config-options.md @@ -9,6 +9,13 @@ For details on native git options see also the official [git config documentation](https://git-scm.com/docs/git-config). +## __commitGraph__ options + +| option | default | git option | description | +|---------|---------|------------|-------------| +| `commitGraph.writeChangedPaths` | `false`| ⃞ | Whether bloom filter should be written to commit-graph. | +| `commitGraph.readChangedPaths` | `false` | ✅ | Whether to use the changed-path Bloom filters in the commit-graph file (if it exists, and they are present). | + ## __core__ options | option | default | git option | description | @@ -18,6 +25,7 @@ For details on native git options see also the official [git config documentatio | `core.bare` | set automatically on init or clone | ✅ | If true this repository is assumed to be bare and has no working directory associated with it. If this is the case a number of commands that require a working directory will be disabled | | `core.bigFileThreshold` | `50 MiB` | ✅ | Files larger than this size are stored deflated, without attempting delta compression. Storing large files without delta compression avoids excessive memory usage, at the slight expense of increased disk usage. Additionally files larger than this size are always treated as binary. | | `core.checkstat` | | ✅ | When missing or is set to `default`, many fields in the stat structure are checked to detect if a file has been modified since Git looked at it. Checks as much of the dircache stat info as possible (in JGit limited by Java filesystem API). When set to `minimum` only checks the size and whole second part of time stamp when comparing the stat info in the dircache with actual file stat info. | +| `core.commitGraph`| `false` | ✅ | Whether to read the commit-graph file (if it exists) to parse the graph structure of commits. | | `core.compression` | `-1` (zlib default) | ✅ | An integer `-1..9`, indicating a default compression level. `-1` is the zlib default. `0` means no compression, and `1..9` are various speed/size tradeoffs, `9` being slowest.| | `core.deltaBaseCacheLimit` | `10 MiB` | ✅ | Maximum number of bytes to reserve for caching base objects that multiple deltafied objects reference. By storing the entire decompressed base object in a cache Git is able to avoid unpacking and decompressing frequently used base objects multiple times. | | `core.dfs.blockLimit` | `30 MiB` | ⃞ | Maximum number bytes of heap memory to dedicate to caching pack file data in DFS block cache. | diff --git a/WORKSPACE b/WORKSPACE index 021d72ccf..652ceece0 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -178,8 +178,8 @@ maven_jar( maven_jar( name = "mockito", - artifact = "org.mockito:mockito-core:5.4.0", - sha1 = "30bcbe79f7bd51b53debfc4c6014d0bea4935e37", + artifact = "org.mockito:mockito-core:5.5.0", + sha1 = "1660ec3ce0af7f713af923817b225a37cc5cf965", ) maven_jar( @@ -188,18 +188,18 @@ maven_jar( sha1 = "ebbf338e33f893139459ce5df023115971c2786f", ) -BYTE_BUDDY_VERSION = "1.14.5" +BYTE_BUDDY_VERSION = "1.14.7" maven_jar( name = "bytebuddy", artifact = "net.bytebuddy:byte-buddy:" + BYTE_BUDDY_VERSION, - sha1 = "28a424c0c4f362568e904d992c239c996cf7adc7", + sha1 = "34efde5f0bb93afc94aaf9d400521899c4806873", ) maven_jar( name = "bytebuddy-agent", artifact = "net.bytebuddy:byte-buddy-agent:" + BYTE_BUDDY_VERSION, - sha1 = "20f4e9b9d0ffb953657bfa4b92c0cceb27907d58", + sha1 = "38b49d37e3e14793ef10977ba75f761c8678e20e", ) maven_jar( diff --git a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF index 34b424437..94263bcad 100644 --- a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF @@ -5,13 +5,13 @@ Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ant.test Bundle-SymbolicName: org.eclipse.jgit.ant.test Bundle-Vendor: %Bundle-Vendor -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: org.apache.tools.ant, - org.eclipse.jgit.ant.tasks;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.ant.tasks;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.hamcrest.core;version="[1.1.0,3.0.0)", org.junit;version="[4.13,5.0.0)" diff --git a/org.eclipse.jgit.ant.test/pom.xml b/org.eclipse.jgit.ant.test/pom.xml index c87aa5536..58751dbbb 100644 --- a/org.eclipse.jgit.ant.test/pom.xml +++ b/org.eclipse.jgit.ant.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ant.test diff --git a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF index a2e7bd0b5..e175108e3 100644 --- a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF @@ -3,13 +3,13 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ant Bundle-SymbolicName: org.eclipse.jgit.ant -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: org.apache.tools.ant, - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)" + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)" Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor -Export-Package: org.eclipse.jgit.ant;version="6.7.0", - org.eclipse.jgit.ant.tasks;version="6.7.0"; +Export-Package: org.eclipse.jgit.ant;version="6.7.1", + org.eclipse.jgit.ant.tasks;version="6.7.1"; uses:="org.apache.tools.ant, org.apache.tools.ant.types" diff --git a/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF index f6172015d..7b139500c 100644 --- a/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.ant - Sources Bundle-SymbolicName: org.eclipse.jgit.ant.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.ant;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.ant;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.ant/pom.xml b/org.eclipse.jgit.ant/pom.xml index 8621b5edb..39c8a2f25 100644 --- a/org.eclipse.jgit.ant/pom.xml +++ b/org.eclipse.jgit.ant/pom.xml @@ -15,7 +15,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ant diff --git a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF index 8bd898c18..a8ec4c97c 100644 --- a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.archive Bundle-SymbolicName: org.eclipse.jgit.archive -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -13,17 +13,17 @@ Import-Package: org.apache.commons.compress.archivers;version="[1.4,2.0)", org.apache.commons.compress.compressors.bzip2;version="[1.4,2.0)", org.apache.commons.compress.compressors.gzip;version="[1.4,2.0)", org.apache.commons.compress.compressors.xz;version="[1.4,2.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.osgi.framework;version="[1.3.0,2.0.0)" Bundle-ActivationPolicy: lazy Bundle-Activator: org.eclipse.jgit.archive.FormatActivator -Export-Package: org.eclipse.jgit.archive;version="6.7.0"; +Export-Package: org.eclipse.jgit.archive;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.api, org.apache.commons.compress.archivers, org.osgi.framework", - org.eclipse.jgit.archive.internal;version="6.7.0";x-internal:=true + org.eclipse.jgit.archive.internal;version="6.7.1";x-internal:=true diff --git a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF index 2f95928c9..b08cf2094 100644 --- a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.archive - Sources Bundle-SymbolicName: org.eclipse.jgit.archive.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.archive;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.archive;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.archive/pom.xml b/org.eclipse.jgit.archive/pom.xml index c93e3ad31..e94732bd4 100644 --- a/org.eclipse.jgit.archive/pom.xml +++ b/org.eclipse.jgit.archive/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.archive diff --git a/org.eclipse.jgit.benchmarks/pom.xml b/org.eclipse.jgit.benchmarks/pom.xml index fcab0a652..b3edc49d7 100644 --- a/org.eclipse.jgit.benchmarks/pom.xml +++ b/org.eclipse.jgit.benchmarks/pom.xml @@ -14,7 +14,7 @@ 4.0.0 org.eclipse.jgit - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.benchmarks jar @@ -175,7 +175,7 @@ org.apache.maven.plugins maven-site-plugin - 3.12.1 + 4.0.0-M9 org.apache.maven.wagon diff --git a/org.eclipse.jgit.coverage/pom.xml b/org.eclipse.jgit.coverage/pom.xml index afb8c3259..bed98fc5b 100644 --- a/org.eclipse.jgit.coverage/pom.xml +++ b/org.eclipse.jgit.coverage/pom.xml @@ -14,7 +14,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT 4.0.0 @@ -27,88 +27,88 @@ org.eclipse.jgit org.eclipse.jgit - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.ant - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.archive - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.http.apache - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.http.server - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.lfs - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.lfs.server - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.pgm - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.ui - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.ssh.apache - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.ant.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.http.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.pgm.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.lfs.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.lfs.server.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit org.eclipse.jgit.ssh.apache.test - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT diff --git a/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF index ab5a071ac..c58b5ceb8 100644 --- a/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.gpg.bc.test Bundle-SymbolicName: org.eclipse.jgit.gpg.bc.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -13,9 +13,9 @@ Import-Package: org.bouncycastle.jce.provider;version="[1.65.0,2.0.0)", org.bouncycastle.openpgp.operator;version="[1.65.0,2.0.0)", org.bouncycastle.openpgp.operator.jcajce;version="[1.65.0,2.0.0)", org.bouncycastle.util.encoders;version="[1.65.0,2.0.0)", - org.eclipse.jgit.gpg.bc.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.gpg.bc.internal.keys;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.sha1;version="[6.7.0,6.8.0)", + org.eclipse.jgit.gpg.bc.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.gpg.bc.internal.keys;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.sha1;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)", org.junit.runners;version="[4.13,5.0.0)" diff --git a/org.eclipse.jgit.gpg.bc.test/pom.xml b/org.eclipse.jgit.gpg.bc.test/pom.xml index 2561c1997..947994886 100644 --- a/org.eclipse.jgit.gpg.bc.test/pom.xml +++ b/org.eclipse.jgit.gpg.bc.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.gpg.bc.test diff --git a/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF b/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF index 6e2f643e2..c3657f7de 100644 --- a/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF @@ -3,10 +3,10 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.gpg.bc Bundle-SymbolicName: org.eclipse.jgit.gpg.bc;singleton:=true -Fragment-Host: org.eclipse.jgit;bundle-version="[6.7.0,6.8.0)" +Fragment-Host: org.eclipse.jgit;bundle-version="[6.7.1,6.8.0)" Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: org.bouncycastle.asn1;version="[1.69.0,2.0.0)", org.bouncycastle.asn1.cryptlib;version="[1.69.0,2.0.0)", @@ -29,9 +29,9 @@ Import-Package: org.bouncycastle.asn1;version="[1.69.0,2.0.0)", org.bouncycastle.util;version="[1.69.0,2.0.0)", org.bouncycastle.util.encoders;version="[1.69.0,2.0.0)", org.bouncycastle.util.io;version="[1.69.0,2.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", org.slf4j;version="[1.7.0,2.0.0)" -Export-Package: org.eclipse.jgit.gpg.bc;version="6.7.0", - org.eclipse.jgit.gpg.bc.internal;version="6.7.0";x-friends:="org.eclipse.jgit.gpg.bc.test", - org.eclipse.jgit.gpg.bc.internal.keys;version="6.7.0";x-friends:="org.eclipse.jgit.gpg.bc.test" +Export-Package: org.eclipse.jgit.gpg.bc;version="6.7.1", + org.eclipse.jgit.gpg.bc.internal;version="6.7.1";x-friends:="org.eclipse.jgit.gpg.bc.test", + org.eclipse.jgit.gpg.bc.internal.keys;version="6.7.1";x-friends:="org.eclipse.jgit.gpg.bc.test" diff --git a/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF index 03b4d8766..1215b8cfb 100644 --- a/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.gpg.bc - Sources Bundle-SymbolicName: org.eclipse.jgit.gpg.bc.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.gpg.bc;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.gpg.bc;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.gpg.bc/pom.xml b/org.eclipse.jgit.gpg.bc/pom.xml index e42d4e063..d822bdb74 100644 --- a/org.eclipse.jgit.gpg.bc/pom.xml +++ b/org.eclipse.jgit.gpg.bc/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.gpg.bc diff --git a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF index 54e5abf49..dbc394785 100644 --- a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.http.apache Bundle-SymbolicName: org.eclipse.jgit.http.apache -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-11 Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor @@ -25,11 +25,11 @@ Import-Package: org.apache.http;version="[4.3.0,5.0.0)", org.apache.http.impl.conn;version="[4.4.0,5.0.0)", org.apache.http.params;version="[4.3.0,5.0.0)", org.apache.http.ssl;version="[4.3.0,5.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)" -Export-Package: org.eclipse.jgit.transport.http.apache;version="6.7.0"; + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)" +Export-Package: org.eclipse.jgit.transport.http.apache;version="6.7.1"; uses:="org.apache.http.client, org.eclipse.jgit.transport.http, org.apache.http.entity, diff --git a/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF index 0c897b77d..d0decf5a5 100644 --- a/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.http.apache - Sources Bundle-SymbolicName: org.eclipse.jgit.http.apache.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.http.apache;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.http.apache;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.http.apache/pom.xml b/org.eclipse.jgit.http.apache/pom.xml index 1c1aa45b0..6820f6511 100644 --- a/org.eclipse.jgit.http.apache/pom.xml +++ b/org.eclipse.jgit.http.apache/pom.xml @@ -15,7 +15,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.http.apache diff --git a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF index f3f6fc3b2..f6044731e 100644 --- a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF @@ -3,13 +3,13 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.http.server Bundle-SymbolicName: org.eclipse.jgit.http.server -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor -Export-Package: org.eclipse.jgit.http.server;version="6.7.0", - org.eclipse.jgit.http.server.glue;version="6.7.0"; +Export-Package: org.eclipse.jgit.http.server;version="6.7.1", + org.eclipse.jgit.http.server.glue;version="6.7.1"; uses:="javax.servlet,javax.servlet.http", - org.eclipse.jgit.http.server.resolver;version="6.7.0"; + org.eclipse.jgit.http.server.resolver;version="6.7.1"; uses:="org.eclipse.jgit.transport.resolver, org.eclipse.jgit.lib, org.eclipse.jgit.transport, @@ -18,14 +18,14 @@ Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: javax.servlet;version="[2.5.0,5.0.0)", javax.servlet.http;version="[2.5.0,5.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.dfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.parser;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.resolver;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)" + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.dfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.parser;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.resolver;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)" diff --git a/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF index a9e4e2add..7f25f9b36 100644 --- a/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.http.server - Sources Bundle-SymbolicName: org.eclipse.jgit.http.server.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.http.server;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.http.server;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.http.server/pom.xml b/org.eclipse.jgit.http.server/pom.xml index 85e9c14c6..b3df6c7c1 100644 --- a/org.eclipse.jgit.http.server/pom.xml +++ b/org.eclipse.jgit.http.server/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.http.server diff --git a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF index 2fd919eaf..ae776dcad 100644 --- a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.http.test Bundle-SymbolicName: org.eclipse.jgit.http.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -28,26 +28,26 @@ Import-Package: javax.servlet;version="[2.5.0,5.0.0)", org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.thread;version="[10.0.0,11.0.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.http.server;version="[6.7.0,6.8.0)", - org.eclipse.jgit.http.server.glue;version="[6.7.0,6.8.0)", - org.eclipse.jgit.http.server.resolver;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.dfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.reftable;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http.apache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.resolver;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.http.server;version="[6.7.1,6.8.0)", + org.eclipse.jgit.http.server.glue;version="[6.7.1,6.8.0)", + org.eclipse.jgit.http.server.resolver;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.dfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.reftable;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http.apache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.resolver;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.rules;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)", diff --git a/org.eclipse.jgit.http.test/pom.xml b/org.eclipse.jgit.http.test/pom.xml index 2076bf5f9..8546be4da 100644 --- a/org.eclipse.jgit.http.test/pom.xml +++ b/org.eclipse.jgit.http.test/pom.xml @@ -18,7 +18,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.http.test diff --git a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF index 682057b86..df6934e35 100644 --- a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.junit.http Bundle-SymbolicName: org.eclipse.jgit.junit.http -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor Bundle-ActivationPolicy: lazy @@ -21,17 +21,17 @@ Import-Package: javax.servlet;version="[2.5.0,5.0.0)", org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.ssl;version="[10.0.0,11.0.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.http.server;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.resolver;version="[6.7.0,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.http.server;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.resolver;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.slf4j.helpers;version="[1.7.0,2.0.0)" -Export-Package: org.eclipse.jgit.junit.http;version="6.7.0"; +Export-Package: org.eclipse.jgit.junit.http;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.junit, javax.servlet.http, diff --git a/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF index 298534c9b..30be81fa8 100644 --- a/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.junit.http - Sources Bundle-SymbolicName: org.eclipse.jgit.junit.http.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.junit.http;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.junit.http;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.junit.http/pom.xml b/org.eclipse.jgit.junit.http/pom.xml index f4f4d7664..4684725e1 100644 --- a/org.eclipse.jgit.junit.http/pom.xml +++ b/org.eclipse.jgit.junit.http/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.junit.http diff --git a/org.eclipse.jgit.junit.ssh/.settings/.api_filters b/org.eclipse.jgit.junit.ssh/.settings/.api_filters deleted file mode 100644 index 796b64170..000000000 --- a/org.eclipse.jgit.junit.ssh/.settings/.api_filters +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF index 3cc5dbe73..6a9561ee2 100644 --- a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.junit.ssh Bundle-SymbolicName: org.eclipse.jgit.junit.ssh -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor Bundle-ActivationPolicy: lazy @@ -33,16 +33,16 @@ Import-Package: org.apache.sshd.common;version="[2.10.0,2.11.0)", org.apache.sshd.server.subsystem;version="[2.10.0,2.11.0)", org.apache.sshd.sftp;version="[2.10.0,2.11.0)", org.apache.sshd.sftp.server;version="[2.10.0,2.11.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.experimental.theories;version="[4.13,5.0.0)", org.slf4j;version="[1.7.0,2.0.0)" -Export-Package: org.eclipse.jgit.junit.ssh;version="6.7.0" +Export-Package: org.eclipse.jgit.junit.ssh;version="6.7.1" diff --git a/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF index 572ce0119..1b0a63c9a 100644 --- a/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.junit.ssh - Sources Bundle-SymbolicName: org.eclipse.jgit.junit.ssh.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.junit.ssh;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.junit.ssh;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.junit.ssh/pom.xml b/org.eclipse.jgit.junit.ssh/pom.xml index 801ad7393..40e128ceb 100644 --- a/org.eclipse.jgit.junit.ssh/pom.xml +++ b/org.eclipse.jgit.junit.ssh/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.junit.ssh diff --git a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF index 6280b251f..29410b42f 100644 --- a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF @@ -3,35 +3,35 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.junit Bundle-SymbolicName: org.eclipse.jgit.junit -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-11 -Import-Package: org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.dircache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.merge;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="6.7.0", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.time;version="[6.7.0,6.8.0)", +Import-Package: org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.dircache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.merge;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="6.7.1", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.time;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.rules;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)", org.junit.runners;version="[4.13,5.0.0)", org.junit.runners.model;version="[4.13,5.0.0)", org.slf4j;version="[1.7.0,2.0.0)" -Export-Package: org.eclipse.jgit.junit;version="6.7.0"; +Export-Package: org.eclipse.jgit.junit;version="6.7.1"; uses:="org.eclipse.jgit.dircache, org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, @@ -44,4 +44,4 @@ Export-Package: org.eclipse.jgit.junit;version="6.7.0"; org.junit.runners.model, org.junit.runner, org.eclipse.jgit.util.time", - org.eclipse.jgit.junit.time;version="6.7.0";uses:="org.eclipse.jgit.util.time" + org.eclipse.jgit.junit.time;version="6.7.1";uses:="org.eclipse.jgit.util.time" diff --git a/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF index 90b90ce8a..98554425f 100644 --- a/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.junit - Sources Bundle-SymbolicName: org.eclipse.jgit.junit.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.junit;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.junit;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.junit/pom.xml b/org.eclipse.jgit.junit/pom.xml index 044db8496..620325bc6 100644 --- a/org.eclipse.jgit.junit/pom.xml +++ b/org.eclipse.jgit.junit/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.junit diff --git a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF index 112a29197..79f0677a1 100644 --- a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.lfs.server.test Bundle-SymbolicName: org.eclipse.jgit.lfs.server.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -26,24 +26,24 @@ Import-Package: javax.servlet;version="[3.1.0,5.0.0)", org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.thread;version="[10.0.0,11.0.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.server;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.server.fs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.test;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.server;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.server.fs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.test;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.hamcrest.core;version="[1.1.0,3.0.0)", org.junit;version="[4.13,5.0.0)", org.junit.rules;version="[4.13,5.0.0)", diff --git a/org.eclipse.jgit.lfs.server.test/pom.xml b/org.eclipse.jgit.lfs.server.test/pom.xml index 46aa809c2..459299031 100644 --- a/org.eclipse.jgit.lfs.server.test/pom.xml +++ b/org.eclipse.jgit.lfs.server.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.lfs.server.test diff --git a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF index d444aa1dd..79d294728 100644 --- a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF @@ -3,19 +3,19 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.lfs.server Bundle-SymbolicName: org.eclipse.jgit.lfs.server -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor -Export-Package: org.eclipse.jgit.lfs.server;version="6.7.0"; +Export-Package: org.eclipse.jgit.lfs.server;version="6.7.1"; uses:="javax.servlet.http, org.eclipse.jgit.lfs.lib", - org.eclipse.jgit.lfs.server.fs;version="6.7.0"; + org.eclipse.jgit.lfs.server.fs;version="6.7.1"; uses:="javax.servlet, javax.servlet.http, org.eclipse.jgit.lfs.server, org.eclipse.jgit.lfs.lib", - org.eclipse.jgit.lfs.server.internal;version="6.7.0";x-internal:=true, - org.eclipse.jgit.lfs.server.s3;version="6.7.0"; + org.eclipse.jgit.lfs.server.internal;version="6.7.1";x-internal:=true, + org.eclipse.jgit.lfs.server.s3;version="6.7.1"; uses:="org.eclipse.jgit.lfs.server, org.eclipse.jgit.lfs.lib" Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -24,15 +24,15 @@ Import-Package: com.google.gson;version="[2.8.0,3.0.0)", javax.servlet.annotation;version="[3.1.0,5.0.0)", javax.servlet.http;version="[3.1.0,5.0.0)", org.apache.http;version="[4.3.0,5.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http.apache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http.apache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.slf4j;version="[1.7.0,2.0.0)" diff --git a/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF index 381e4b390..ed5b2e6ff 100644 --- a/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.lfs.server - Sources Bundle-SymbolicName: org.eclipse.jgit.lfs.server.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.lfs.server;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.lfs.server;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.lfs.server/pom.xml b/org.eclipse.jgit.lfs.server/pom.xml index 162b20397..74d3ae86d 100644 --- a/org.eclipse.jgit.lfs.server/pom.xml +++ b/org.eclipse.jgit.lfs.server/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.lfs.server diff --git a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF index 1366bcfef..a368244ee 100644 --- a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF @@ -3,27 +3,27 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.lfs.test Bundle-SymbolicName: org.eclipse.jgit.lfs.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 -Import-Package: org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.attributes;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.dfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", +Import-Package: org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.attributes;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.dfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.hamcrest.core;version="[1.1.0,3.0.0)", org.junit;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)", org.junit.runners;version="[4.13,5.0.0)" -Export-Package: org.eclipse.jgit.lfs.test;version="6.7.0";x-friends:="org.eclipse.jgit.lfs.server.test" +Export-Package: org.eclipse.jgit.lfs.test;version="6.7.1";x-friends:="org.eclipse.jgit.lfs.server.test" diff --git a/org.eclipse.jgit.lfs.test/pom.xml b/org.eclipse.jgit.lfs.test/pom.xml index 6cb0dbe63..680e1cab0 100644 --- a/org.eclipse.jgit.lfs.test/pom.xml +++ b/org.eclipse.jgit.lfs.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.lfs.test diff --git a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF index cd570f519..436b177ea 100644 --- a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF @@ -3,32 +3,32 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.lfs Bundle-SymbolicName: org.eclipse.jgit.lfs -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor -Export-Package: org.eclipse.jgit.lfs;version="6.7.0", - org.eclipse.jgit.lfs.errors;version="6.7.0", - org.eclipse.jgit.lfs.internal;version="6.7.0";x-friends:="org.eclipse.jgit.lfs.test,org.eclipse.jgit.lfs.server.fs,org.eclipse.jgit.lfs.server", - org.eclipse.jgit.lfs.lib;version="6.7.0" +Export-Package: org.eclipse.jgit.lfs;version="6.7.1", + org.eclipse.jgit.lfs.errors;version="6.7.1", + org.eclipse.jgit.lfs.internal;version="6.7.1";x-friends:="org.eclipse.jgit.lfs.test,org.eclipse.jgit.lfs.server.fs,org.eclipse.jgit.lfs.server", + org.eclipse.jgit.lfs.lib;version="6.7.1" Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: com.google.gson;version="[2.8.2,3.0.0)", com.google.gson.stream;version="[2.8.2,3.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)";resolution:=optional, - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.attributes;version="[6.7.0,6.8.0)", - org.eclipse.jgit.diff;version="[6.7.0,6.8.0)", - org.eclipse.jgit.dircache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.hooks;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)" + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)";resolution:=optional, + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.attributes;version="[6.7.1,6.8.0)", + org.eclipse.jgit.diff;version="[6.7.1,6.8.0)", + org.eclipse.jgit.dircache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.hooks;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)" diff --git a/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF index e1ea51e68..eca1e3a9d 100644 --- a/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.lfs - Sources Bundle-SymbolicName: org.eclipse.jgit.lfs.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.lfs;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.lfs;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.lfs/pom.xml b/org.eclipse.jgit.lfs/pom.xml index 9932c64a8..16931f25d 100644 --- a/org.eclipse.jgit.lfs/pom.xml +++ b/org.eclipse.jgit.lfs/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.lfs diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml index f58404c5c..1fce72013 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml @@ -2,7 +2,7 @@ diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml index 816782035..3d9949e5e 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml index ba3cb9f80..2291429ad 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml index 126b2ee15..7c1842031 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml index d515a669c..63aa2ccfe 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml @@ -2,7 +2,7 @@ @@ -24,7 +24,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml index 0dc62588a..df3a3f118 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml index 48e8593c5..503e14db7 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml @@ -2,7 +2,7 @@ @@ -35,9 +35,9 @@ version="0.0.0"/> - - - + + + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/category.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/category.xml index a5d2304ba..e0c790ad9 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/category.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/category.xml @@ -39,9 +39,6 @@ - - - @@ -228,6 +225,18 @@ + + + + + + + + + + + + Java implementation of Git diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml index 47feeba09..979dcae3d 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.repository diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml index 8bb62430e..2ba6d1803 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature @@ -30,7 +30,7 @@ org.eclipse.jgit.feature org.eclipse.jgit - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml index 204c0a5ee..1faa07d76 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml index c18b4f306..305b969f4 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml @@ -2,7 +2,7 @@ @@ -23,7 +23,7 @@ - + org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.feature diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF index 15446ddb4..5e3aacbad 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF @@ -2,4 +2,4 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: JGit Target Platform Bundle Bundle-SymbolicName: org.eclipse.jgit.target -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target index 0e0e829ac..3e515c549 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.17.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target index 7a02b25b8..c7ac6e79c 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.18.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target index 22a9bd892..1a9079938 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.19.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target index ec90b4023..8b10aa226 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.20.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target index b58372246..733f6084c 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.21.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.22.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.22.target index 3c6eff5ef..f24193748 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.22.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.22.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.23.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.23.target index f9adacd23..3468e1130 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.23.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.23.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target index 5811cf66e..2c1d9617f 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target index 5b58e1674..ed3cd4de7 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.26.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.26.target index 9feba5391..cfd906f71 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.26.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.26.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.27.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.27.target index dd347a185..0e63b9f47 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.27.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.27.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.28.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.28.target index 1f6b65f28..4d7d67fb1 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.28.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.28.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.29.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.29.target index 29d6087da..1fcfdbc1d 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.29.target +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.29.target @@ -1,7 +1,7 @@ - + @@ -25,6 +25,7 @@ + @@ -78,7 +79,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 jar @@ -186,13 +187,13 @@ net.bytebuddy byte-buddy - 1.14.5 + 1.14.7 jar net.bytebuddy byte-buddy-agent - 1.14.5 + 1.14.7 jar diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/maven/dependencies.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/maven/dependencies.tpd index 918d4904c..ec4adf99a 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/maven/dependencies.tpd +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/maven/dependencies.tpd @@ -87,12 +87,12 @@ maven bytebuddy dependency { groupId = "net.bytebuddy" artifactId = "byte-buddy" - version = "1.14.5" + version = "1.14.7" } dependency { groupId = "net.bytebuddy" artifactId = "byte-buddy-agent" - version = "1.14.5" + version = "1.14.7" } } @@ -210,7 +210,7 @@ maven mockito dependency { groupId = "org.mockito" artifactId = "mockito-core" - version = "5.4.0" + version = "5.5.0" } } diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/orbit-4.29.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/orbit-4.29.tpd index 1ae3a0c81..70a17a1dd 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/orbit-4.29.tpd +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/orbit-4.29.tpd @@ -23,4 +23,5 @@ location "https://download.eclipse.org/tools/orbit/simrel/orbit-aggregation/rele org.objenesis [3.3,3.3] org.objenesis.source [3.3,3.3] org.osgi.service.cm [1.6.1.202109301733,1.6.1.202109301733] + org.osgi.service.cm.source [1.6.1.202109301733,1.6.1.202109301733] } diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml index 75e64a186..666bca4bd 100644 --- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml +++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml @@ -16,7 +16,7 @@ org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.target diff --git a/org.eclipse.jgit.packaging/pom.xml b/org.eclipse.jgit.packaging/pom.xml index af5e4a287..63c2e4c43 100644 --- a/org.eclipse.jgit.packaging/pom.xml +++ b/org.eclipse.jgit.packaging/pom.xml @@ -16,7 +16,7 @@ org.eclipse.jgit jgit.tycho.parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT pom JGit Tycho Parent diff --git a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF index d2db2465b..dddf56040 100644 --- a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF @@ -3,30 +3,30 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.pgm.test Bundle-SymbolicName: org.eclipse.jgit.pgm.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-11 -Import-Package: org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.diff;version="[6.7.0,6.8.0)", - org.eclipse.jgit.dircache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.diffmergetool;version="6.7.0", - org.eclipse.jgit.internal.storage.file;version="6.7.0", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.merge;version="[6.7.0,6.8.0)", - org.eclipse.jgit.pgm;version="[6.7.0,6.8.0)", - org.eclipse.jgit.pgm.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.pgm.opt;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)", +Import-Package: org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.diff;version="[6.7.1,6.8.0)", + org.eclipse.jgit.dircache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.diffmergetool;version="6.7.1", + org.eclipse.jgit.internal.storage.file;version="6.7.1", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.merge;version="[6.7.1,6.8.0)", + org.eclipse.jgit.pgm;version="[6.7.1,6.8.0)", + org.eclipse.jgit.pgm.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.pgm.opt;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)", org.hamcrest.core;bundle-version="[1.1.0,3.0.0)", org.junit;version="[4.13,5.0.0)", org.junit.rules;version="[4.13,5.0.0)", diff --git a/org.eclipse.jgit.pgm.test/pom.xml b/org.eclipse.jgit.pgm.test/pom.xml index bc0ccf633..b19a7be8f 100644 --- a/org.eclipse.jgit.pgm.test/pom.xml +++ b/org.eclipse.jgit.pgm.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.pgm.test diff --git a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF index 9be1a395b..235c2fcfc 100644 --- a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.pgm Bundle-SymbolicName: org.eclipse.jgit.pgm -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -14,49 +14,49 @@ Import-Package: javax.servlet;version="[3.1.0,5.0.0)", org.eclipse.jetty.servlet;version="[10.0.0,11.0.0)", org.eclipse.jetty.util;version="[10.0.0,11.0.0)", org.eclipse.jetty.util.component;version="[10.0.0,11.0.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.archive;version="[6.7.0,6.8.0)", - org.eclipse.jgit.awtui;version="[6.7.0,6.8.0)", - org.eclipse.jgit.blame;version="[6.7.0,6.8.0)", - org.eclipse.jgit.diff;version="[6.7.0,6.8.0)", - org.eclipse.jgit.dircache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.gitrepo;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.diffmergetool;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.io;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.reftable;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.server;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.server.fs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs.server.s3;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.merge;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.notes;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revplot;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http.apache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.resolver;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.ssh.jsch;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.sshd;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.archive;version="[6.7.1,6.8.0)", + org.eclipse.jgit.awtui;version="[6.7.1,6.8.0)", + org.eclipse.jgit.blame;version="[6.7.1,6.8.0)", + org.eclipse.jgit.diff;version="[6.7.1,6.8.0)", + org.eclipse.jgit.dircache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.gitrepo;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.diffmergetool;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.io;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.reftable;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.server;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.server.fs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs.server.s3;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.merge;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.notes;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revplot;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http.apache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.resolver;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.ssh.jsch;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.sshd;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)", org.kohsuke.args4j;version="[2.33.0,3.0.0)", org.kohsuke.args4j.spi;version="[2.33.0,3.0.0)" -Export-Package: org.eclipse.jgit.console;version="6.7.0"; +Export-Package: org.eclipse.jgit.console;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.util", - org.eclipse.jgit.pgm;version="6.7.0"; + org.eclipse.jgit.pgm;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.util.io, org.eclipse.jgit.awtui, @@ -68,14 +68,14 @@ Export-Package: org.eclipse.jgit.console;version="6.7.0"; org.eclipse.jgit.treewalk, org.eclipse.jgit.api, javax.swing", - org.eclipse.jgit.pgm.debug;version="6.7.0"; + org.eclipse.jgit.pgm.debug;version="6.7.1"; uses:="org.eclipse.jgit.util.io, org.eclipse.jgit.pgm, org.eclipse.jetty.servlet", - org.eclipse.jgit.pgm.internal;version="6.7.0"; + org.eclipse.jgit.pgm.internal;version="6.7.1"; x-friends:="org.eclipse.jgit.pgm.test, org.eclipse.jgit.test", - org.eclipse.jgit.pgm.opt;version="6.7.0"; + org.eclipse.jgit.pgm.opt;version="6.7.1"; uses:="org.kohsuke.args4j, org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, diff --git a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF index ad00aef39..0755ae51e 100644 --- a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.pgm - Sources Bundle-SymbolicName: org.eclipse.jgit.pgm.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.pgm/pom.xml b/org.eclipse.jgit.pgm/pom.xml index 0cde5843b..c1916abbc 100644 --- a/org.eclipse.jgit.pgm/pom.xml +++ b/org.eclipse.jgit.pgm/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.pgm diff --git a/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF index 75172a7cb..fd3e97798 100644 --- a/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF @@ -2,16 +2,16 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.agent;singleton:=true -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor -Fragment-Host: org.eclipse.jgit.ssh.apache;bundle-version="[6.7.0,6.8.0)" +Fragment-Host: org.eclipse.jgit.ssh.apache;bundle-version="[6.7.1,6.8.0)" Bundle-ActivationPolicy: lazy Automatic-Module-Name: org.eclipse.jgit.ssh.apache.agent Bundle-RequiredExecutionEnvironment: JavaSE-11 -Import-Package: org.eclipse.jgit.transport.sshd;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)" +Import-Package: org.eclipse.jgit.transport.sshd;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)" Require-Bundle: com.sun.jna;bundle-version="[5.8.0,6.0.0)", com.sun.jna.platform;bundle-version="[5.8.0,6.0.0)" -Export-Package: org.eclipse.jgit.internal.transport.sshd.agent.connector;version="6.7.0";x-internal:=true +Export-Package: org.eclipse.jgit.internal.transport.sshd.agent.connector;version="6.7.1";x-internal:=true diff --git a/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF index 55a60b218..79f4f0546 100644 --- a/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.ssh.apache.agent - Sources Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.agent.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache.agent;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache.agent;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.ssh.apache.agent/pom.xml b/org.eclipse.jgit.ssh.apache.agent/pom.xml index 1d4e0094f..ef6262ce4 100644 --- a/org.eclipse.jgit.ssh.apache.agent/pom.xml +++ b/org.eclipse.jgit.ssh.apache.agent/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ssh.apache.agent diff --git a/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF index 309204dd1..567c3fef1 100644 --- a/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ssh.apache.test Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -22,16 +22,16 @@ Import-Package: org.apache.sshd.client.config.hosts;version="[2.10.0,2.11.0)", org.apache.sshd.core;version="[2.10.0,2.11.0)", org.apache.sshd.server;version="[2.10.0,2.11.0)", org.apache.sshd.server.forward;version="[2.10.0,2.11.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.sshd.proxy;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit.ssh;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.sshd;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.sshd.agent;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.sshd.proxy;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit.ssh;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.sshd;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.sshd.agent;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.experimental.theories;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)" diff --git a/org.eclipse.jgit.ssh.apache.test/pom.xml b/org.eclipse.jgit.ssh.apache.test/pom.xml index 90e3cb658..bda4294ed 100644 --- a/org.eclipse.jgit.ssh.apache.test/pom.xml +++ b/org.eclipse.jgit.ssh.apache.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ssh.apache.test diff --git a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF index 6bcbf4bcf..fa51dfb61 100644 --- a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF @@ -6,9 +6,9 @@ Bundle-SymbolicName: org.eclipse.jgit.ssh.apache Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-ActivationPolicy: lazy -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-11 -Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.7.0";x-internal:=true; +Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.7.1";x-internal:=true; uses:="org.apache.sshd.client, org.apache.sshd.client.auth, org.apache.sshd.client.auth.keyboard, @@ -23,18 +23,18 @@ Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.7.0";x-inter org.apache.sshd.common.signature, org.apache.sshd.common.util.buffer, org.eclipse.jgit.transport", - org.eclipse.jgit.internal.transport.sshd.agent;version="6.7.0";x-internal:=true, - org.eclipse.jgit.internal.transport.sshd.auth;version="6.7.0";x-internal:=true, - org.eclipse.jgit.internal.transport.sshd.pkcs11;version="6.7.0";x-internal:=true, - org.eclipse.jgit.internal.transport.sshd.proxy;version="6.7.0";x-friends:="org.eclipse.jgit.ssh.apache.test", - org.eclipse.jgit.transport.sshd;version="6.7.0"; + org.eclipse.jgit.internal.transport.sshd.agent;version="6.7.1";x-internal:=true, + org.eclipse.jgit.internal.transport.sshd.auth;version="6.7.1";x-internal:=true, + org.eclipse.jgit.internal.transport.sshd.pkcs11;version="6.7.1";x-internal:=true, + org.eclipse.jgit.internal.transport.sshd.proxy;version="6.7.1";x-friends:="org.eclipse.jgit.ssh.apache.test", + org.eclipse.jgit.transport.sshd;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.apache.sshd.client.config.hosts, org.apache.sshd.common.keyprovider, org.eclipse.jgit.util, org.apache.sshd.client.session, org.apache.sshd.client.keyverifier", - org.eclipse.jgit.transport.sshd.agent;version="6.7.0" + org.eclipse.jgit.transport.sshd.agent;version="6.7.1" Import-Package: net.i2p.crypto.eddsa;version="[0.3.0,0.4.0)", org.apache.sshd.agent;version="[2.10.0,2.11.0)", org.apache.sshd.client;version="[2.10.0,2.11.0)", @@ -87,12 +87,12 @@ Import-Package: net.i2p.crypto.eddsa;version="[0.3.0,0.4.0)", org.apache.sshd.sftp;version="[2.10.0,2.11.0)", org.apache.sshd.sftp.client;version="[2.10.0,2.11.0)", org.apache.sshd.sftp.common;version="[2.10.0,2.11.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.fnmatch;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.ssh;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.fnmatch;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.ssh;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.slf4j;version="[1.7.0,2.0.0)" diff --git a/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF index 5af0e06d9..7a432fa17 100644 --- a/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.ssh.apache - Sources Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.ssh.apache/pom.xml b/org.eclipse.jgit.ssh.apache/pom.xml index e283e7bfd..9702f556e 100644 --- a/org.eclipse.jgit.ssh.apache/pom.xml +++ b/org.eclipse.jgit.ssh.apache/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ssh.apache diff --git a/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF index d9d650771..46f5899e4 100644 --- a/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF @@ -3,19 +3,19 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ssh.jsch.test Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-RequiredExecutionEnvironment: JavaSE-11 Require-Bundle: org.hamcrest.core;bundle-version="[1.3.0,2.0.0)" Import-Package: com.jcraft.jsch;version="[0.1.54,0.2.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit.ssh;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.ssh.jsch;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit.ssh;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.ssh.jsch;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.experimental.theories;version="[4.13,5.0.0)", org.junit.runner;version="[4.13,5.0.0)" diff --git a/org.eclipse.jgit.ssh.jsch.test/pom.xml b/org.eclipse.jgit.ssh.jsch.test/pom.xml index ed1232795..9632a1a79 100644 --- a/org.eclipse.jgit.ssh.jsch.test/pom.xml +++ b/org.eclipse.jgit.ssh.jsch.test/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ssh.jsch.test diff --git a/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF index d015d7715..68b7f3f2f 100644 --- a/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF @@ -3,19 +3,19 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ssh.jsch Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch;singleton:=true -Fragment-Host: org.eclipse.jgit;bundle-version="[6.7.0,6.8.0)" +Fragment-Host: org.eclipse.jgit;bundle-version="[6.7.1,6.8.0)" Bundle-Vendor: %Bundle-Vendor Bundle-Localization: plugin Bundle-ActivationPolicy: lazy -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-RequiredExecutionEnvironment: JavaSE-11 -Export-Package: org.eclipse.jgit.transport.ssh.jsch;version="6.7.0" +Export-Package: org.eclipse.jgit.transport.ssh.jsch;version="6.7.1" Import-Package: com.jcraft.jsch;version="[0.1.37,0.2.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.ssh;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.ssh;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)", org.slf4j;version="[1.7.0,2.0.0)" diff --git a/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF index 7c962b1c7..67cc394a8 100644 --- a/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.ssh.jsch - Sources Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.ssh.jsch;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.ssh.jsch;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.ssh.jsch/pom.xml b/org.eclipse.jgit.ssh.jsch/pom.xml index 2525f1041..8962d848a 100644 --- a/org.eclipse.jgit.ssh.jsch/pom.xml +++ b/org.eclipse.jgit.ssh.jsch/pom.xml @@ -17,7 +17,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ssh.jsch diff --git a/org.eclipse.jgit.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.test/META-INF/MANIFEST.MF index 3ae2d6b5d..f9ace5187 100644 --- a/org.eclipse.jgit.test/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.test Bundle-SymbolicName: org.eclipse.jgit.test -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor Bundle-RequiredExecutionEnvironment: JavaSE-11 @@ -19,64 +19,64 @@ Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)", org.apache.commons.compress.compressors.gzip;version="[1.15.0,2.0)", org.apache.commons.compress.compressors.xz;version="[1.15.0,2.0)", org.assertj.core.api;version="[3.14.0,4.0.0)", - org.eclipse.jgit.annotations;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api;version="[6.7.0,6.8.0)", - org.eclipse.jgit.api.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.archive;version="[6.7.0,6.8.0)", - org.eclipse.jgit.attributes;version="[6.7.0,6.8.0)", - org.eclipse.jgit.awtui;version="[6.7.0,6.8.0)", - org.eclipse.jgit.blame;version="[6.7.0,6.8.0)", - org.eclipse.jgit.diff;version="[6.7.0,6.8.0)", - org.eclipse.jgit.dircache;version="[6.7.0,6.8.0)", - org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.events;version="[6.7.0,6.8.0)", - org.eclipse.jgit.fnmatch;version="[6.7.0,6.8.0)", - org.eclipse.jgit.gitrepo;version="[6.7.0,6.8.0)", - org.eclipse.jgit.hooks;version="[6.7.0,6.8.0)", - org.eclipse.jgit.ignore;version="[6.7.0,6.8.0)", - org.eclipse.jgit.ignore.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.diff;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.diffmergetool;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.fsck;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.commitgraph;version="6.7.0", - org.eclipse.jgit.internal.storage.dfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.io;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.memory;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.storage.reftable;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.connectivity;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.parser;version="[6.7.0,6.8.0)", - org.eclipse.jgit.internal.transport.ssh;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit;version="[6.7.0,6.8.0)", - org.eclipse.jgit.junit.time;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lfs;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.logging;version="[6.7.0,6.8.0)", - org.eclipse.jgit.merge;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.notes;version="[6.7.0,6.8.0)", - org.eclipse.jgit.patch;version="[6.7.0,6.8.0)", - org.eclipse.jgit.pgm;version="[6.7.0,6.8.0)", - org.eclipse.jgit.pgm.internal;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revplot;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.file;version="[6.7.0,6.8.0)", - org.eclipse.jgit.storage.pack;version="[6.7.0,6.8.0)", - org.eclipse.jgit.submodule;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.http;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport.resolver;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.treewalk.filter;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.io;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util.sha1;version="[6.7.0,6.8.0)", + org.eclipse.jgit.annotations;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api;version="[6.7.1,6.8.0)", + org.eclipse.jgit.api.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.archive;version="[6.7.1,6.8.0)", + org.eclipse.jgit.attributes;version="[6.7.1,6.8.0)", + org.eclipse.jgit.awtui;version="[6.7.1,6.8.0)", + org.eclipse.jgit.blame;version="[6.7.1,6.8.0)", + org.eclipse.jgit.diff;version="[6.7.1,6.8.0)", + org.eclipse.jgit.dircache;version="[6.7.1,6.8.0)", + org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.events;version="[6.7.1,6.8.0)", + org.eclipse.jgit.fnmatch;version="[6.7.1,6.8.0)", + org.eclipse.jgit.gitrepo;version="[6.7.1,6.8.0)", + org.eclipse.jgit.hooks;version="[6.7.1,6.8.0)", + org.eclipse.jgit.ignore;version="[6.7.1,6.8.0)", + org.eclipse.jgit.ignore.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.diff;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.diffmergetool;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.fsck;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.commitgraph;version="6.7.1", + org.eclipse.jgit.internal.storage.dfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.io;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.memory;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.storage.reftable;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.connectivity;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.parser;version="[6.7.1,6.8.0)", + org.eclipse.jgit.internal.transport.ssh;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit;version="[6.7.1,6.8.0)", + org.eclipse.jgit.junit.time;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lfs;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.logging;version="[6.7.1,6.8.0)", + org.eclipse.jgit.merge;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.notes;version="[6.7.1,6.8.0)", + org.eclipse.jgit.patch;version="[6.7.1,6.8.0)", + org.eclipse.jgit.pgm;version="[6.7.1,6.8.0)", + org.eclipse.jgit.pgm.internal;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revplot;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.file;version="[6.7.1,6.8.0)", + org.eclipse.jgit.storage.pack;version="[6.7.1,6.8.0)", + org.eclipse.jgit.submodule;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.http;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport.resolver;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.treewalk.filter;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.io;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util.sha1;version="[6.7.1,6.8.0)", org.junit;version="[4.13,5.0.0)", org.junit.experimental.theories;version="[4.13,5.0.0)", org.junit.function;version="[4.13.0,5.0.0)", diff --git a/org.eclipse.jgit.test/pom.xml b/org.eclipse.jgit.test/pom.xml index f7322596a..490f08950 100644 --- a/org.eclipse.jgit.test/pom.xml +++ b/org.eclipse.jgit.test/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.test @@ -73,7 +73,7 @@ org.mockito mockito-core - 5.4.0 + 5.5.0 diff --git a/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit.patch b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit.patch new file mode 100644 index 000000000..802fa1546 Binary files /dev/null and b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit.patch differ diff --git a/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit2.patch b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit2.patch new file mode 100644 index 000000000..03cacbaee Binary files /dev/null and b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/diff/dotgit2.patch differ diff --git a/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/.gitattributes b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/.gitattributes new file mode 100644 index 000000000..b38f87f9e --- /dev/null +++ b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/.gitattributes @@ -0,0 +1 @@ +*.patch -crlf diff --git a/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/dirtest.patch b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/dirtest.patch new file mode 100644 index 000000000..a275c8593 Binary files /dev/null and b/org.eclipse.jgit.test/tst-rsrc/org/eclipse/jgit/symlinks/dirtest.patch differ diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/DirCacheEntryTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/DirCacheEntryTest.java index 8e84dfa31..01d1e0282 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/DirCacheEntryTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/DirCacheEntryTest.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009, 2020 Google Inc. and others + * Copyright (C) 2009, 2023 Google Inc. and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -46,6 +46,16 @@ public void testIsValidPath() { assertFalse(isValidPath("a/")); assertFalse(isValidPath("ab/cd/ef/")); assertFalse(isValidPath("a\u0000b")); + assertFalse(isValidPath(".git")); + assertFalse(isValidPath(".GIT")); + assertFalse(isValidPath(".Git")); + assertFalse(isValidPath(".git/b")); + assertFalse(isValidPath(".GIT/b")); + assertFalse(isValidPath(".Git/b")); + assertFalse(isValidPath("x/y/.git/z/b")); + assertFalse(isValidPath("x/y/.GIT/z/b")); + assertFalse(isValidPath("x/y/.Git/z/b")); + assertTrue(isValidPath("git/b")); } @SuppressWarnings("unused") diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/InvalidPathCheckoutTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/InvalidPathCheckoutTest.java new file mode 100644 index 000000000..e3bc85a51 --- /dev/null +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/dircache/InvalidPathCheckoutTest.java @@ -0,0 +1,61 @@ +/* + * Copyright (C) 2023 Thomas Wolf and others + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Distribution License v. 1.0 which is available at + * https://www.eclipse.org/org/documents/edl-v10.php. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +package org.eclipse.jgit.dircache; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertThrows; + +import java.io.File; + +import org.eclipse.jgit.api.Git; +import org.eclipse.jgit.api.ResetCommand.ResetType; +import org.eclipse.jgit.junit.RepositoryTestCase; +import org.eclipse.jgit.junit.TestRepository; +import org.eclipse.jgit.lib.FileMode; +import org.eclipse.jgit.lib.Repository; +import org.eclipse.jgit.revwalk.RevBlob; +import org.eclipse.jgit.revwalk.RevCommit; +import org.junit.Test; + +/** + * Tests for checking out with invalid paths. + */ +public class InvalidPathCheckoutTest extends RepositoryTestCase { + + private DirCacheEntry brokenEntry(String fileName, RevBlob blob) { + DirCacheEntry entry = new DirCacheEntry("XXXX/" + fileName); + entry.path[0] = '.'; + entry.path[1] = 'g'; + entry.path[2] = 'i'; + entry.path[3] = 't'; + entry.setFileMode(FileMode.REGULAR_FILE); + entry.setObjectId(blob); + return entry; + } + + @Test + public void testCheckoutIntoDotGit() throws Exception { + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + // DirCacheEntry does not allow any path component to contain + // ".git". C git also forbids this. But what if somebody creates + // such an entry explicitly? + RevCommit base = repo + .commit(repo.tree(brokenEntry("b", repo.blob("test")))); + try (Git git = new Git(db)) { + assertThrows(InvalidPathException.class, () -> git.reset() + .setMode(ResetType.HARD).setRef(base.name()).call()); + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + } + } + } + +} diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsPackFileTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsPackFileTest.java index 82fc56347..77e5b7cb1 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsPackFileTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsPackFileTest.java @@ -139,6 +139,7 @@ private static class TestPackLoadListener implements PackLoadListener { int blockLoadCount; + @SuppressWarnings("boxing") @Override public void onIndexLoad(String packName, PackSource src, PackExt ext, long size, Object loadedIdx) { diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsReaderTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsReaderTest.java index 8fc9a0adf..eb8ceecd8 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsReaderTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsReaderTest.java @@ -229,6 +229,7 @@ public void packLoadListener_has_repeatedCalls_openMultipleIndices() throws IOEx private static class CounterPackLoadListener implements PackLoadListener { final Map callsPerExt = new HashMap<>(); + @SuppressWarnings("boxing") @Override public void onIndexLoad(String packName, PackSource src, PackExt ext, long size, Object loadedIdx) { @@ -238,6 +239,7 @@ public void onIndexLoad(String packName, PackSource src, PackExt ext, long size, @Override public void onBlockLoad(String packName, PackSource src, PackExt ext, long size, DfsBlockData dfsBlockData) { + // empty } } diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchApplierTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchApplierTest.java index e2637257c..92d47c296 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchApplierTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchApplierTest.java @@ -24,6 +24,7 @@ import java.io.OutputStream; import java.nio.charset.StandardCharsets; import java.nio.file.Files; + import org.eclipse.jgit.annotations.Nullable; import org.eclipse.jgit.api.Git; import org.eclipse.jgit.attributes.FilterCommand; @@ -892,5 +893,30 @@ public void testFiltering() throws Exception { FilterCommandRegistry.unregister("jgit://builtin/a2e/smudge"); } } + + private void dotGitTest(String fileName) throws Exception { + init(fileName, false, false); + Result result = null; + IOException ex = null; + try { + result = applyPatch(); + } catch (IOException e) { + ex = e; + } + assertTrue(ex != null + || (result != null && !result.getErrors().isEmpty())); + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + } + + @Test + public void testDotGit() throws Exception { + dotGitTest("dotgit"); + } + + @Test + public void testDotGit2() throws Exception { + dotGitTest("dotgit2"); + } } } diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/symlinks/DirectoryTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/symlinks/DirectoryTest.java new file mode 100644 index 000000000..490c45b55 --- /dev/null +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/symlinks/DirectoryTest.java @@ -0,0 +1,259 @@ +/* + * Copyright (C) 2023 Thomas Wolf and others + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Distribution License v. 1.0 which is available at + * https://www.eclipse.org/org/documents/edl-v10.php. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +package org.eclipse.jgit.symlinks; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.LinkOption; +import java.nio.file.Path; + +import org.eclipse.jgit.api.Git; +import org.eclipse.jgit.api.ResetCommand.ResetType; +import org.eclipse.jgit.junit.RepositoryTestCase; +import org.eclipse.jgit.junit.TestRepository; +import org.eclipse.jgit.lib.ConfigConstants; +import org.eclipse.jgit.lib.Repository; +import org.eclipse.jgit.lib.StoredConfig; +import org.eclipse.jgit.patch.Patch; +import org.eclipse.jgit.patch.PatchApplier; +import org.eclipse.jgit.revwalk.RevCommit; +import org.eclipse.jgit.util.FS; +import org.eclipse.jgit.util.FileUtils; +import org.junit.Assume; +import org.junit.BeforeClass; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.junit.runners.Parameterized.Parameter; +import org.junit.runners.Parameterized.Parameters; + +@RunWith(Parameterized.class) +public class DirectoryTest extends RepositoryTestCase { + + @BeforeClass + public static void checkPrecondition() throws Exception { + Assume.assumeTrue(FS.DETECTED.supportsSymlinks()); + Path tempDir = Files.createTempDirectory("jgit"); + try { + Path a = tempDir.resolve("a"); + Files.writeString(a, "test"); + Path b = tempDir.resolve("A"); + Assume.assumeTrue(Files.exists(b)); + } finally { + FileUtils.delete(tempDir.toFile(), + FileUtils.RECURSIVE | FileUtils.IGNORE_ERRORS); + } + } + + @Parameters(name = "core.symlinks={0}") + public static Boolean[] parameters() { + return new Boolean[] { Boolean.TRUE, Boolean.FALSE }; + } + + @Parameter(0) + public boolean useSymlinks; + + private void checkFiles() throws Exception { + File a = new File(trash, "a"); + assertTrue("a should be a directory", + Files.isDirectory(a.toPath(), LinkOption.NOFOLLOW_LINKS)); + File b = new File(a, "b"); + assertTrue("a/b should exist", b.isFile()); + File x = new File(trash, "x"); + assertTrue("x should be a directory", + Files.isDirectory(x.toPath(), LinkOption.NOFOLLOW_LINKS)); + File y = new File(x, "y"); + assertTrue("x/y should exist", y.isFile()); + } + + @Test + public void testCheckout() throws Exception { + StoredConfig config = db.getConfig(); + config.setBoolean(ConfigConstants.CONFIG_CORE_SECTION, null, + ConfigConstants.CONFIG_KEY_SYMLINKS, useSymlinks); + config.save(); + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + // Create links directly in the git repo, then use a hard reset + // to get them into the workspace. + RevCommit base = repo.commit( + repo.tree( + repo.link("A", repo.blob(".git")), + repo.file("a/b", repo.blob("test")), + repo.file("x/y", repo.blob("test2")))); + try (Git git = new Git(db)) { + git.reset().setMode(ResetType.HARD).setRef(base.name()).call(); + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + checkFiles(); + } + } + } + + @Test + public void testCheckout2() throws Exception { + StoredConfig config = db.getConfig(); + config.setBoolean(ConfigConstants.CONFIG_CORE_SECTION, null, + ConfigConstants.CONFIG_KEY_SYMLINKS, useSymlinks); + config.save(); + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + RevCommit base = repo.commit( + repo.tree( + repo.link("A/B", repo.blob("../.git")), + repo.file("a/b/a/b", repo.blob("test")), + repo.file("x/y", repo.blob("test2")))); + try (Git git = new Git(db)) { + boolean testFiles = true; + try { + git.reset().setMode(ResetType.HARD).setRef(base.name()) + .call(); + } catch (Exception e) { + if (!useSymlinks) { + // There is a file in the middle of the path where we'd + // expect a directory. This case is not handled + // anywhere. What would be a better reply than an IOE? + testFiles = false; + } else { + throw e; + } + } + File a = new File(new File(trash, ".git"), "a"); + assertFalse(".git/a should not exist", a.exists()); + if (testFiles) { + a = new File(trash, "a"); + assertTrue("a should be a directory", Files.isDirectory( + a.toPath(), LinkOption.NOFOLLOW_LINKS)); + File b = new File(a, "b"); + assertTrue("a/b should be a directory", Files.isDirectory( + a.toPath(), LinkOption.NOFOLLOW_LINKS)); + a = new File(b, "a"); + assertTrue("a/b/a should be a directory", Files.isDirectory( + a.toPath(), LinkOption.NOFOLLOW_LINKS)); + b = new File(a, "b"); + assertTrue("a/b/a/b should exist", b.isFile()); + File x = new File(trash, "x"); + assertTrue("x should be a directory", Files.isDirectory( + x.toPath(), LinkOption.NOFOLLOW_LINKS)); + File y = new File(x, "y"); + assertTrue("x/y should exist", y.isFile()); + } + } + } + } + + @Test + public void testMerge() throws Exception { + StoredConfig config = db.getConfig(); + config.setBoolean(ConfigConstants.CONFIG_CORE_SECTION, null, + ConfigConstants.CONFIG_KEY_SYMLINKS, useSymlinks); + config.save(); + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + RevCommit base = repo.commit( + repo.tree(repo.file("q", repo.blob("test")))); + RevCommit side = repo.commit( + repo.tree( + repo.link("A", repo.blob(".git")), + repo.file("a/b", repo.blob("test")), + repo.file("x/y", repo.blob("test2")))); + try (Git git = new Git(db)) { + git.reset().setMode(ResetType.HARD).setRef(base.name()).call(); + git.merge().include(side) + .setMessage("merged").call(); + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + checkFiles(); + } + } + } + + @Test + public void testMerge2() throws Exception { + StoredConfig config = db.getConfig(); + config.setBoolean(ConfigConstants.CONFIG_CORE_SECTION, null, + ConfigConstants.CONFIG_KEY_SYMLINKS, useSymlinks); + config.save(); + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + RevCommit base = repo.commit( + repo.tree( + repo.file("q", repo.blob("test")), + repo.link("A", repo.blob(".git")))); + RevCommit side = repo.commit( + repo.tree( + repo.file("a/b", repo.blob("test")), + repo.file("x/y", repo.blob("test2")))); + try (Git git = new Git(db)) { + git.reset().setMode(ResetType.HARD).setRef(base.name()).call(); + git.merge().include(side) + .setMessage("merged").call(); + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + checkFiles(); + } + } + } + + @Test + public void testApply() throws Exception { + StoredConfig config = db.getConfig(); + config.setBoolean(ConfigConstants.CONFIG_CORE_SECTION, null, + ConfigConstants.CONFIG_KEY_SYMLINKS, useSymlinks); + config.save(); + // PatchApplier doesn't do symlinks yet. + try (TestRepository repo = new TestRepository<>(db)) { + db.incrementOpen(); + RevCommit base = repo.commit( + repo.tree( + repo.file("x", repo.blob("test")), + repo.link("A", repo.blob(".git")))); + try (Git git = new Git(db)) { + git.reset().setMode(ResetType.HARD).setRef(base.name()).call(); + Patch patch = new Patch(); + try (InputStream patchStream = this.getClass() + .getResourceAsStream("dirtest.patch")) { + patch.parse(patchStream); + } + boolean testFiles = true; + try { + PatchApplier.Result result = new PatchApplier(db) + .applyPatch(patch); + assertNotNull(result); + } catch (IOException e) { + if (!useSymlinks) { + // There is a file there, so the patch won't apply. + // Unclear whether an IOE is the correct response, + // though. Probably some negative PatchApplier.Result is + // more appropriate. + testFiles = false; + } else { + throw e; + } + } + File b = new File(new File(trash, ".git"), "b"); + assertFalse(".git/b should not exist", b.exists()); + if (testFiles) { + File a = new File(trash, "a"); + assertTrue("a should be a directory", + Files.isDirectory(a.toPath(), LinkOption.NOFOLLOW_LINKS)); + b = new File(a, "b"); + assertTrue("a/b should exist", b.isFile()); + } + } + } + } +} diff --git a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF index c0dc99e0a..90fb486a7 100644 --- a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF @@ -4,14 +4,14 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit.ui Bundle-SymbolicName: org.eclipse.jgit.ui -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Vendor: %Bundle-Vendor Bundle-RequiredExecutionEnvironment: JavaSE-11 -Export-Package: org.eclipse.jgit.awtui;version="6.7.0" -Import-Package: org.eclipse.jgit.errors;version="[6.7.0,6.8.0)", - org.eclipse.jgit.lib;version="[6.7.0,6.8.0)", - org.eclipse.jgit.nls;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revplot;version="[6.7.0,6.8.0)", - org.eclipse.jgit.revwalk;version="[6.7.0,6.8.0)", - org.eclipse.jgit.transport;version="[6.7.0,6.8.0)", - org.eclipse.jgit.util;version="[6.7.0,6.8.0)" +Export-Package: org.eclipse.jgit.awtui;version="6.7.1" +Import-Package: org.eclipse.jgit.errors;version="[6.7.1,6.8.0)", + org.eclipse.jgit.lib;version="[6.7.1,6.8.0)", + org.eclipse.jgit.nls;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revplot;version="[6.7.1,6.8.0)", + org.eclipse.jgit.revwalk;version="[6.7.1,6.8.0)", + org.eclipse.jgit.transport;version="[6.7.1,6.8.0)", + org.eclipse.jgit.util;version="[6.7.1,6.8.0)" diff --git a/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF index 9439debed..94b8bc58c 100644 --- a/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit.ui - Sources Bundle-SymbolicName: org.eclipse.jgit.ui.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit.ui;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit.ui;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit.ui/pom.xml b/org.eclipse.jgit.ui/pom.xml index 0170c7d44..930fc73e3 100644 --- a/org.eclipse.jgit.ui/pom.xml +++ b/org.eclipse.jgit.ui/pom.xml @@ -19,7 +19,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit.ui diff --git a/org.eclipse.jgit/.settings/.api_filters b/org.eclipse.jgit/.settings/.api_filters deleted file mode 100644 index 253ef3768..000000000 --- a/org.eclipse.jgit/.settings/.api_filters +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/org.eclipse.jgit/META-INF/MANIFEST.MF b/org.eclipse.jgit/META-INF/MANIFEST.MF index 0b5e8bf16..6f0debda9 100644 --- a/org.eclipse.jgit/META-INF/MANIFEST.MF +++ b/org.eclipse.jgit/META-INF/MANIFEST.MF @@ -3,12 +3,12 @@ Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Automatic-Module-Name: org.eclipse.jgit Bundle-SymbolicName: org.eclipse.jgit -Bundle-Version: 6.7.0.qualifier +Bundle-Version: 6.7.1.qualifier Bundle-Localization: plugin Bundle-Vendor: %Bundle-Vendor Eclipse-ExtensibleAPI: true -Export-Package: org.eclipse.jgit.annotations;version="6.7.0", - org.eclipse.jgit.api;version="6.7.0"; +Export-Package: org.eclipse.jgit.annotations;version="6.7.1", + org.eclipse.jgit.api;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.notes, org.eclipse.jgit.dircache, @@ -23,18 +23,18 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.revwalk.filter, org.eclipse.jgit.blame, org.eclipse.jgit.merge", - org.eclipse.jgit.api.errors;version="6.7.0"; + org.eclipse.jgit.api.errors;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.errors", - org.eclipse.jgit.attributes;version="6.7.0"; + org.eclipse.jgit.attributes;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.treewalk", - org.eclipse.jgit.blame;version="6.7.0"; + org.eclipse.jgit.blame;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, org.eclipse.jgit.treewalk.filter, org.eclipse.jgit.diff", - org.eclipse.jgit.diff;version="6.7.0"; + org.eclipse.jgit.diff;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.attributes, org.eclipse.jgit.revwalk, @@ -42,53 +42,53 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.treewalk.filter, org.eclipse.jgit.treewalk, org.eclipse.jgit.util", - org.eclipse.jgit.dircache;version="6.7.0"; + org.eclipse.jgit.dircache;version="6.7.1"; uses:="org.eclipse.jgit.events, org.eclipse.jgit.lib, org.eclipse.jgit.attributes, org.eclipse.jgit.treewalk, org.eclipse.jgit.util", - org.eclipse.jgit.errors;version="6.7.0"; + org.eclipse.jgit.errors;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.dircache, org.eclipse.jgit.lib, org.eclipse.jgit.internal.storage.pack", - org.eclipse.jgit.events;version="6.7.0"; + org.eclipse.jgit.events;version="6.7.1"; uses:="org.eclipse.jgit.lib", - org.eclipse.jgit.fnmatch;version="6.7.0", - org.eclipse.jgit.gitrepo;version="6.7.0"; + org.eclipse.jgit.fnmatch;version="6.7.1", + org.eclipse.jgit.gitrepo;version="6.7.1"; uses:="org.xml.sax.helpers, org.eclipse.jgit.api, org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, org.xml.sax", - org.eclipse.jgit.gitrepo.internal;version="6.7.0";x-internal:=true, - org.eclipse.jgit.hooks;version="6.7.0";uses:="org.eclipse.jgit.lib", - org.eclipse.jgit.ignore;version="6.7.0", - org.eclipse.jgit.ignore.internal;version="6.7.0"; + org.eclipse.jgit.gitrepo.internal;version="6.7.1";x-internal:=true, + org.eclipse.jgit.hooks;version="6.7.1";uses:="org.eclipse.jgit.lib", + org.eclipse.jgit.ignore;version="6.7.1", + org.eclipse.jgit.ignore.internal;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal;version="6.7.0"; + org.eclipse.jgit.internal;version="6.7.1"; x-friends:="org.eclipse.jgit.test, org.eclipse.jgit.http.test", - org.eclipse.jgit.internal.diff;version="6.7.0"; + org.eclipse.jgit.internal.diff;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.diffmergetool;version="6.7.0"; + org.eclipse.jgit.internal.diffmergetool;version="6.7.1"; x-friends:="org.eclipse.jgit.test, org.eclipse.jgit.pgm.test, org.eclipse.jgit.pgm, org.eclipse.egit.ui", - org.eclipse.jgit.internal.fsck;version="6.7.0"; + org.eclipse.jgit.internal.fsck;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.revwalk;version="6.7.0"; + org.eclipse.jgit.internal.revwalk;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.storage.commitgraph;version="6.7.0"; + org.eclipse.jgit.internal.storage.commitgraph;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.storage.dfs;version="6.7.0"; + org.eclipse.jgit.internal.storage.dfs;version="6.7.1"; x-friends:="org.eclipse.jgit.test, org.eclipse.jgit.http.server, org.eclipse.jgit.http.test, org.eclipse.jgit.lfs.test", - org.eclipse.jgit.internal.storage.file;version="6.7.0"; + org.eclipse.jgit.internal.storage.file;version="6.7.1"; x-friends:="org.eclipse.jgit.test, org.eclipse.jgit.junit, org.eclipse.jgit.junit.http, @@ -97,35 +97,35 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.pgm, org.eclipse.jgit.pgm.test, org.eclipse.jgit.ssh.apache", - org.eclipse.jgit.internal.storage.io;version="6.7.0"; + org.eclipse.jgit.internal.storage.io;version="6.7.1"; x-friends:="org.eclipse.jgit.junit, org.eclipse.jgit.test, org.eclipse.jgit.pgm", - org.eclipse.jgit.internal.storage.memory;version="6.7.0"; + org.eclipse.jgit.internal.storage.memory;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.storage.pack;version="6.7.0"; + org.eclipse.jgit.internal.storage.pack;version="6.7.1"; x-friends:="org.eclipse.jgit.junit, org.eclipse.jgit.test, org.eclipse.jgit.pgm", - org.eclipse.jgit.internal.storage.reftable;version="6.7.0"; + org.eclipse.jgit.internal.storage.reftable;version="6.7.1"; x-friends:="org.eclipse.jgit.http.test, org.eclipse.jgit.junit, org.eclipse.jgit.test, org.eclipse.jgit.pgm", - org.eclipse.jgit.internal.submodule;version="6.7.0";x-internal:=true, - org.eclipse.jgit.internal.transport.connectivity;version="6.7.0"; + org.eclipse.jgit.internal.submodule;version="6.7.1";x-internal:=true, + org.eclipse.jgit.internal.transport.connectivity;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.transport.http;version="6.7.0"; + org.eclipse.jgit.internal.transport.http;version="6.7.1"; x-friends:="org.eclipse.jgit.test", - org.eclipse.jgit.internal.transport.parser;version="6.7.0"; + org.eclipse.jgit.internal.transport.parser;version="6.7.1"; x-friends:="org.eclipse.jgit.http.server, org.eclipse.jgit.test", - org.eclipse.jgit.internal.transport.ssh;version="6.7.0"; + org.eclipse.jgit.internal.transport.ssh;version="6.7.1"; x-friends:="org.eclipse.jgit.ssh.apache, org.eclipse.jgit.ssh.jsch, org.eclipse.jgit.test", - org.eclipse.jgit.internal.util;version="6.7.0";x-internal:=true, - org.eclipse.jgit.lib;version="6.7.0"; + org.eclipse.jgit.internal.util;version="6.7.1";x-internal:=true, + org.eclipse.jgit.lib;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.util.sha1, org.eclipse.jgit.dircache, @@ -139,12 +139,12 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.util, org.eclipse.jgit.submodule, org.eclipse.jgit.util.time", - org.eclipse.jgit.lib.internal;version="6.7.0"; + org.eclipse.jgit.lib.internal;version="6.7.1"; x-friends:="org.eclipse.jgit.test, org.eclipse.jgit.pgm, org.eclipse.egit.ui", - org.eclipse.jgit.logging;version="6.7.0", - org.eclipse.jgit.merge;version="6.7.0"; + org.eclipse.jgit.logging;version="6.7.1", + org.eclipse.jgit.merge;version="6.7.1"; uses:="org.eclipse.jgit.dircache, org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, @@ -153,40 +153,40 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.util, org.eclipse.jgit.api, org.eclipse.jgit.attributes", - org.eclipse.jgit.nls;version="6.7.0", - org.eclipse.jgit.notes;version="6.7.0"; + org.eclipse.jgit.nls;version="6.7.1", + org.eclipse.jgit.notes;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.revwalk, org.eclipse.jgit.treewalk, org.eclipse.jgit.merge", - org.eclipse.jgit.patch;version="6.7.0"; + org.eclipse.jgit.patch;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.diff", - org.eclipse.jgit.revplot;version="6.7.0"; + org.eclipse.jgit.revplot;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.revwalk", - org.eclipse.jgit.revwalk;version="6.7.0"; + org.eclipse.jgit.revwalk;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.diff, org.eclipse.jgit.treewalk.filter, org.eclipse.jgit.revwalk.filter, org.eclipse.jgit.treewalk", - org.eclipse.jgit.revwalk.filter;version="6.7.0"; + org.eclipse.jgit.revwalk.filter;version="6.7.1"; uses:="org.eclipse.jgit.revwalk, org.eclipse.jgit.lib, org.eclipse.jgit.util", - org.eclipse.jgit.storage.file;version="6.7.0"; + org.eclipse.jgit.storage.file;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.util", - org.eclipse.jgit.storage.pack;version="6.7.0"; + org.eclipse.jgit.storage.pack;version="6.7.1"; uses:="org.eclipse.jgit.lib", - org.eclipse.jgit.submodule;version="6.7.0"; + org.eclipse.jgit.submodule;version="6.7.1"; uses:="org.eclipse.jgit.lib, org.eclipse.jgit.diff, org.eclipse.jgit.treewalk.filter, org.eclipse.jgit.treewalk, org.eclipse.jgit.util", - org.eclipse.jgit.transport;version="6.7.0"; + org.eclipse.jgit.transport;version="6.7.1"; uses:="javax.crypto, org.eclipse.jgit.util.io, org.eclipse.jgit.lib, @@ -199,21 +199,21 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.transport.resolver, org.eclipse.jgit.storage.pack, org.eclipse.jgit.errors", - org.eclipse.jgit.transport.http;version="6.7.0"; + org.eclipse.jgit.transport.http;version="6.7.1"; uses:="javax.net.ssl", - org.eclipse.jgit.transport.resolver;version="6.7.0"; + org.eclipse.jgit.transport.resolver;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.lib", - org.eclipse.jgit.treewalk;version="6.7.0"; + org.eclipse.jgit.treewalk;version="6.7.1"; uses:="org.eclipse.jgit.dircache, org.eclipse.jgit.lib, org.eclipse.jgit.attributes, org.eclipse.jgit.revwalk, org.eclipse.jgit.treewalk.filter, org.eclipse.jgit.util", - org.eclipse.jgit.treewalk.filter;version="6.7.0"; + org.eclipse.jgit.treewalk.filter;version="6.7.1"; uses:="org.eclipse.jgit.treewalk", - org.eclipse.jgit.util;version="6.7.0"; + org.eclipse.jgit.util;version="6.7.1"; uses:="org.eclipse.jgit.transport, org.eclipse.jgit.hooks, org.eclipse.jgit.revwalk, @@ -226,12 +226,12 @@ Export-Package: org.eclipse.jgit.annotations;version="6.7.0", org.eclipse.jgit.treewalk, javax.net.ssl, org.eclipse.jgit.util.time", - org.eclipse.jgit.util.io;version="6.7.0"; + org.eclipse.jgit.util.io;version="6.7.1"; uses:="org.eclipse.jgit.attributes, org.eclipse.jgit.lib, org.eclipse.jgit.treewalk", - org.eclipse.jgit.util.sha1;version="6.7.0", - org.eclipse.jgit.util.time;version="6.7.0" + org.eclipse.jgit.util.sha1;version="6.7.1", + org.eclipse.jgit.util.time;version="6.7.1" Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)", javax.crypto, diff --git a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF index 70b3520ee..5c5f67eec 100644 --- a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF +++ b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF @@ -3,5 +3,5 @@ Bundle-ManifestVersion: 2 Bundle-Name: org.eclipse.jgit - Sources Bundle-SymbolicName: org.eclipse.jgit.source Bundle-Vendor: Eclipse.org - JGit -Bundle-Version: 6.7.0.qualifier -Eclipse-SourceBundle: org.eclipse.jgit;version="6.7.0.qualifier";roots="." +Bundle-Version: 6.7.1.qualifier +Eclipse-SourceBundle: org.eclipse.jgit;version="6.7.1.qualifier";roots="." diff --git a/org.eclipse.jgit/pom.xml b/org.eclipse.jgit/pom.xml index 366d37089..eb9e237d2 100644 --- a/org.eclipse.jgit/pom.xml +++ b/org.eclipse.jgit/pom.xml @@ -20,7 +20,7 @@ org.eclipse.jgit org.eclipse.jgit-parent - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT org.eclipse.jgit diff --git a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties index c73d85f07..80a65b226 100644 --- a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties +++ b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties @@ -20,6 +20,8 @@ applyBinaryPatchTypeNotSupported=Couldn't apply binary patch of type {0} applyTextPatchCannotApplyHunk=Hunk cannot be applied applyTextPatchSingleClearingHunk=Expected a single hunk for clearing all content applyBinaryResultOidWrong=Result of binary patch for file {0} has wrong OID +applyPatchDestInvalid=Destination path in patch is invalid +applyPatchSourceInvalid==Source path in patch is invalid applyPatchWithoutSourceOnAlreadyExistingSource=Cannot perform {0} action on an existing file applyPatchWithCreationOverAlreadyExistingDestination=Cannot perform {0} action which overrides an existing file applyPatchWithSourceOnNonExistentSource=Cannot perform {0} action on a non-existent file diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java index 7e06a5688..2bc14ff72 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java @@ -1,6 +1,6 @@ /* * Copyright (C) 2010, Chris Aniszczyk - * Copyright (C) 2011, 2020 Matthias Sohn and others + * Copyright (C) 2011, 2023 Matthias Sohn and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -28,6 +28,7 @@ import org.eclipse.jgit.api.errors.JGitInternalException; import org.eclipse.jgit.api.errors.RefAlreadyExistsException; import org.eclipse.jgit.api.errors.RefNotFoundException; +import org.eclipse.jgit.dircache.Checkout; import org.eclipse.jgit.dircache.DirCache; import org.eclipse.jgit.dircache.DirCacheCheckout; import org.eclipse.jgit.dircache.DirCacheCheckout.CheckoutMetadata; @@ -55,7 +56,6 @@ import org.eclipse.jgit.revwalk.RevTree; import org.eclipse.jgit.revwalk.RevWalk; import org.eclipse.jgit.treewalk.TreeWalk; -import org.eclipse.jgit.treewalk.WorkingTreeOptions; import org.eclipse.jgit.treewalk.filter.PathFilterGroup; /** @@ -413,8 +413,7 @@ public CheckoutCommand setAllPaths(boolean all) { protected CheckoutCommand checkoutPaths() throws IOException, RefNotFoundException { actuallyModifiedPaths = new HashSet<>(); - WorkingTreeOptions options = repo.getConfig() - .get(WorkingTreeOptions.KEY); + Checkout checkout = new Checkout(repo).setRecursiveDeletion(true); DirCache dc = repo.lockDirCache(); try (RevWalk revWalk = new RevWalk(repo); TreeWalk treeWalk = new TreeWalk(repo, @@ -423,10 +422,10 @@ protected CheckoutCommand checkoutPaths() throws IOException, if (!checkoutAllPaths) treeWalk.setFilter(PathFilterGroup.createFromStrings(paths)); if (isCheckoutIndex()) - checkoutPathsFromIndex(treeWalk, dc, options); + checkoutPathsFromIndex(treeWalk, dc, checkout); else { RevCommit commit = revWalk.parseCommit(getStartPointObjectId()); - checkoutPathsFromCommit(treeWalk, dc, commit, options); + checkoutPathsFromCommit(treeWalk, dc, commit, checkout); } } finally { try { @@ -444,7 +443,7 @@ protected CheckoutCommand checkoutPaths() throws IOException, } private void checkoutPathsFromIndex(TreeWalk treeWalk, DirCache dc, - WorkingTreeOptions options) + Checkout checkout) throws IOException { DirCacheIterator dci = new DirCacheIterator(dc); treeWalk.addTree(dci); @@ -470,7 +469,7 @@ public void apply(DirCacheEntry ent) { if (stage > DirCacheEntry.STAGE_0) { if (checkoutStage != null) { if (stage == checkoutStage.number) { - checkoutPath(ent, r, options, + checkoutPath(ent, r, checkout, path, new CheckoutMetadata(eolStreamType, filterCommand)); actuallyModifiedPaths.add(path); @@ -481,7 +480,7 @@ public void apply(DirCacheEntry ent) { throw new JGitInternalException(e.getMessage(), e); } } else { - checkoutPath(ent, r, options, + checkoutPath(ent, r, checkout, path, new CheckoutMetadata(eolStreamType, filterCommand)); actuallyModifiedPaths.add(path); @@ -495,7 +494,7 @@ public void apply(DirCacheEntry ent) { } private void checkoutPathsFromCommit(TreeWalk treeWalk, DirCache dc, - RevCommit commit, WorkingTreeOptions options) throws IOException { + RevCommit commit, Checkout checkout) throws IOException { treeWalk.addTree(commit.getTree()); final ObjectReader r = treeWalk.getObjectReader(); DirCacheEditor editor = dc.editor(); @@ -517,7 +516,7 @@ public void apply(DirCacheEntry ent) { } ent.setObjectId(blobId); ent.setFileMode(mode); - checkoutPath(ent, r, options, + checkoutPath(ent, r, checkout, path, new CheckoutMetadata(eolStreamType, filterCommand)); actuallyModifiedPaths.add(path); } @@ -527,10 +526,9 @@ public void apply(DirCacheEntry ent) { } private void checkoutPath(DirCacheEntry entry, ObjectReader reader, - WorkingTreeOptions options, CheckoutMetadata checkoutMetadata) { + Checkout checkout, String path, CheckoutMetadata checkoutMetadata) { try { - DirCacheCheckout.checkoutEntry(repo, entry, reader, true, - checkoutMetadata, options); + checkout.checkout(entry, checkoutMetadata, reader, path); } catch (IOException e) { throw new JGitInternalException(MessageFormat.format( JGitText.get().checkoutConflictWithFile, diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/StashApplyCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/StashApplyCommand.java index 17036a9cd..e4157286f 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/StashApplyCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/StashApplyCommand.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012, 2021 GitHub Inc. and others + * Copyright (C) 2012, 2023 GitHub Inc. and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -23,6 +23,7 @@ import org.eclipse.jgit.api.errors.NoHeadException; import org.eclipse.jgit.api.errors.StashApplyFailureException; import org.eclipse.jgit.api.errors.WrongRepositoryStateException; +import org.eclipse.jgit.dircache.Checkout; import org.eclipse.jgit.dircache.DirCache; import org.eclipse.jgit.dircache.DirCacheBuilder; import org.eclipse.jgit.dircache.DirCacheCheckout; @@ -48,7 +49,6 @@ import org.eclipse.jgit.treewalk.AbstractTreeIterator; import org.eclipse.jgit.treewalk.FileTreeIterator; import org.eclipse.jgit.treewalk.TreeWalk; -import org.eclipse.jgit.treewalk.WorkingTreeOptions; /** * Command class to apply a stashed commit. @@ -383,8 +383,7 @@ private void resetIndex(RevTree tree) throws IOException { private void resetUntracked(RevTree tree) throws CheckoutConflictException, IOException { Set actuallyModifiedPaths = new HashSet<>(); - WorkingTreeOptions options = repo.getConfig() - .get(WorkingTreeOptions.KEY); + Checkout checkout = new Checkout(repo).setRecursiveDeletion(true); // TODO maybe NameConflictTreeWalk ? try (TreeWalk walk = new TreeWalk(repo)) { walk.addTree(tree); @@ -408,17 +407,17 @@ private void resetUntracked(RevTree tree) throws CheckoutConflictException, FileTreeIterator fIter = walk .getTree(1, FileTreeIterator.class); + String gitPath = entry.getPathString(); if (fIter != null) { if (fIter.isModified(entry, true, reader)) { // file exists and is dirty - throw new CheckoutConflictException( - entry.getPathString()); + throw new CheckoutConflictException(gitPath); } } - checkoutPath(entry, reader, options, + checkoutPath(entry, gitPath, reader, checkout, new CheckoutMetadata(eolStreamType, null)); - actuallyModifiedPaths.add(entry.getPathString()); + actuallyModifiedPaths.add(gitPath); } } finally { if (!actuallyModifiedPaths.isEmpty()) { @@ -428,11 +427,11 @@ private void resetUntracked(RevTree tree) throws CheckoutConflictException, } } - private void checkoutPath(DirCacheEntry entry, ObjectReader reader, - WorkingTreeOptions options, CheckoutMetadata checkoutMetadata) { + private void checkoutPath(DirCacheEntry entry, String gitPath, + ObjectReader reader, + Checkout checkout, CheckoutMetadata checkoutMetadata) { try { - DirCacheCheckout.checkoutEntry(repo, entry, reader, true, - checkoutMetadata, options); + checkout.checkout(entry, checkoutMetadata, reader, gitPath); } catch (IOException e) { throw new JGitInternalException(MessageFormat.format( JGitText.get().checkoutConflictWithFile, diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/Checkout.java b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/Checkout.java new file mode 100644 index 000000000..accf732dc --- /dev/null +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/Checkout.java @@ -0,0 +1,238 @@ +/* + * Copyright (C) 2023, Thomas Wolf and others + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Distribution License v. 1.0 which is available at + * https://www.eclipse.org/org/documents/edl-v10.php. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +package org.eclipse.jgit.dircache; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.LinkOption; +import java.nio.file.StandardCopyOption; +import java.text.MessageFormat; + +import org.eclipse.jgit.annotations.NonNull; +import org.eclipse.jgit.dircache.DirCacheCheckout.CheckoutMetadata; +import org.eclipse.jgit.internal.JGitText; +import org.eclipse.jgit.lib.FileMode; +import org.eclipse.jgit.lib.FileModeCache; +import org.eclipse.jgit.lib.ObjectLoader; +import org.eclipse.jgit.lib.ObjectReader; +import org.eclipse.jgit.lib.Repository; +import org.eclipse.jgit.lib.CoreConfig.EolStreamType; +import org.eclipse.jgit.lib.CoreConfig.SymLinks; +import org.eclipse.jgit.lib.FileModeCache.CacheItem; +import org.eclipse.jgit.treewalk.WorkingTreeOptions; +import org.eclipse.jgit.util.FS; +import org.eclipse.jgit.util.FileUtils; +import org.eclipse.jgit.util.RawParseUtils; + +/** + * An object that can be used to check out many files. + * + * @since 6.6.1 + */ +public class Checkout { + + private final FileModeCache cache; + + private final WorkingTreeOptions options; + + private boolean recursiveDelete; + + /** + * Creates a new {@link Checkout} for checking out from the given + * repository. + * + * @param repo + * the {@link Repository} to check out from + */ + public Checkout(@NonNull Repository repo) { + this(repo, null); + } + + /** + * Creates a new {@link Checkout} for checking out from the given + * repository. + * + * @param repo + * the {@link Repository} to check out from + * @param options + * the {@link WorkingTreeOptions} to use; if {@code null}, + * read from the {@code repo} config when this object is + * created + */ + public Checkout(@NonNull Repository repo, WorkingTreeOptions options) { + this.cache = new FileModeCache(repo); + this.options = options != null ? options + : repo.getConfig().get(WorkingTreeOptions.KEY); + } + + /** + * Retrieves the {@link WorkingTreeOptions} of the repository that are + * used. + * + * @return the {@link WorkingTreeOptions} + */ + public WorkingTreeOptions getWorkingTreeOptions() { + return options; + } + + /** + * Defines whether directories that are in the way of the file to be checked + * out shall be deleted recursively. + * + * @param recursive + * whether to delete such directories recursively + * @return {@code this} + */ + public Checkout setRecursiveDeletion(boolean recursive) { + this.recursiveDelete = recursive; + return this; + } + + /** + * Ensure that the given parent directory exists, and cache the information + * that gitPath refers to a file. + * + * @param gitPath + * of the file to be written + * @param parentDir + * directory in which the file shall be placed, assumed to be the + * parent of the {@code gitPath} + * @param makeSpace + * whether to delete a possibly existing file at + * {@code parentDir} + * @throws IOException + * if the directory cannot be created, if necessary + */ + public void safeCreateParentDirectory(String gitPath, File parentDir, + boolean makeSpace) throws IOException { + cache.safeCreateParentDirectory(gitPath, parentDir, makeSpace); + } + + /** + * Checks out the gitlink given by the {@link DirCacheEntry}. + * + * @param entry + * {@link DirCacheEntry} to check out + * @param gitPath + * the git path of the entry, if known already; otherwise + * {@code null} and it's read from the entry itself + * @throws IOException + * if the gitlink cannot be checked out + */ + public void checkoutGitlink(DirCacheEntry entry, String gitPath) + throws IOException { + FS fs = cache.getRepository().getFS(); + File workingTree = cache.getRepository().getWorkTree(); + String path = gitPath != null ? gitPath : entry.getPathString(); + File gitlinkDir = new File(workingTree, path); + File parentDir = gitlinkDir.getParentFile(); + CacheItem cachedParent = cache.safeCreateDirectory(path, parentDir, + false); + FileUtils.mkdirs(gitlinkDir, true); + cachedParent.insert(path.substring(path.lastIndexOf('/') + 1), + FileMode.GITLINK); + entry.setLastModified(fs.lastModifiedInstant(gitlinkDir)); + } + + /** + * Checks out the file given by the {@link DirCacheEntry}. + * + * @param entry + * {@link DirCacheEntry} to check out + * @param metadata + * {@link CheckoutMetadata} to use for CR/LF handling and + * smudge filtering + * @param reader + * {@link ObjectReader} to use + * @param gitPath + * the git path of the entry, if known already; otherwise + * {@code null} and it's read from the entry itself + * @throws IOException + * if the file cannot be checked out + */ + public void checkout(DirCacheEntry entry, CheckoutMetadata metadata, + ObjectReader reader, String gitPath) throws IOException { + if (metadata == null) { + metadata = CheckoutMetadata.EMPTY; + } + FS fs = cache.getRepository().getFS(); + ObjectLoader ol = reader.open(entry.getObjectId()); + String path = gitPath != null ? gitPath : entry.getPathString(); + File f = new File(cache.getRepository().getWorkTree(), path); + File parentDir = f.getParentFile(); + CacheItem cachedParent = cache.safeCreateDirectory(path, parentDir, + true); + if (entry.getFileMode() == FileMode.SYMLINK + && options.getSymLinks() == SymLinks.TRUE) { + byte[] bytes = ol.getBytes(); + String target = RawParseUtils.decode(bytes); + if (recursiveDelete && Files.isDirectory(f.toPath(), + LinkOption.NOFOLLOW_LINKS)) { + FileUtils.delete(f, FileUtils.RECURSIVE); + } + fs.createSymLink(f, target); + cachedParent.insert(f.getName(), FileMode.SYMLINK); + entry.setLength(bytes.length); + entry.setLastModified(fs.lastModifiedInstant(f)); + return; + } + + String name = f.getName(); + if (name.length() > 200) { + name = name.substring(0, 200); + } + File tmpFile = File.createTempFile("._" + name, null, parentDir); //$NON-NLS-1$ + + DirCacheCheckout.getContent(cache.getRepository(), path, metadata, ol, + options, + new FileOutputStream(tmpFile)); + + // The entry needs to correspond to the on-disk file size. If the + // content was filtered (either by autocrlf handling or smudge + // filters) ask the file system again for the length. Otherwise the + // object loader knows the size + if (metadata.eolStreamType == EolStreamType.DIRECT + && metadata.smudgeFilterCommand == null) { + entry.setLength(ol.getSize()); + } else { + entry.setLength(tmpFile.length()); + } + + if (options.isFileMode() && fs.supportsExecute()) { + if (FileMode.EXECUTABLE_FILE.equals(entry.getRawMode())) { + if (!fs.canExecute(tmpFile)) + fs.setExecute(tmpFile, true); + } else { + if (fs.canExecute(tmpFile)) + fs.setExecute(tmpFile, false); + } + } + try { + if (recursiveDelete && Files.isDirectory(f.toPath(), + LinkOption.NOFOLLOW_LINKS)) { + FileUtils.delete(f, FileUtils.RECURSIVE); + } + FileUtils.rename(tmpFile, f, StandardCopyOption.ATOMIC_MOVE); + cachedParent.remove(f.getName()); + } catch (IOException e) { + throw new IOException( + MessageFormat.format(JGitText.get().renameFileFailed, + tmpFile.getPath(), f.getPath()), + e); + } finally { + if (tmpFile.exists()) { + FileUtils.delete(tmpFile); + } + } + entry.setLastModified(fs.lastModifiedInstant(f)); + } +} \ No newline at end of file diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java index 20b27375b..6ae5153c1 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java @@ -5,7 +5,7 @@ * Copyright (C) 2006, Shawn O. Pearce * Copyright (C) 2010, Chrisian Halstrick * Copyright (C) 2019, 2020, Andre Bossert - * Copyright (C) 2017, 2022, Thomas Wolf and others + * Copyright (C) 2017, 2023, Thomas Wolf and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -19,11 +19,9 @@ import static org.eclipse.jgit.treewalk.TreeWalk.OperationType.CHECKOUT_OP; import java.io.File; -import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.nio.file.StandardCopyOption; import java.text.MessageFormat; import java.time.Instant; import java.util.ArrayList; @@ -49,7 +47,6 @@ import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.CoreConfig.AutoCRLF; import org.eclipse.jgit.lib.CoreConfig.EolStreamType; -import org.eclipse.jgit.lib.CoreConfig.SymLinks; import org.eclipse.jgit.lib.FileMode; import org.eclipse.jgit.lib.NullProgressMonitor; import org.eclipse.jgit.lib.ObjectChecker; @@ -69,9 +66,7 @@ import org.eclipse.jgit.treewalk.filter.PathFilter; import org.eclipse.jgit.util.FS; import org.eclipse.jgit.util.FS.ExecutionResult; -import org.eclipse.jgit.util.FileUtils; import org.eclipse.jgit.util.IntList; -import org.eclipse.jgit.util.RawParseUtils; import org.eclipse.jgit.util.SystemReader; import org.eclipse.jgit.util.io.EolStreamTypeUtil; import org.slf4j.Logger; @@ -146,7 +141,7 @@ public CheckoutMetadata(EolStreamType eolStreamType, private boolean performingCheckout; - private WorkingTreeOptions options; + private Checkout checkout; private ProgressMonitor monitor = NullProgressMonitor.INSTANCE; @@ -509,9 +504,8 @@ private boolean doCheckout() throws CorruptObjectException, IOException, MissingObjectException, IncorrectObjectTypeException, CheckoutConflictException, IndexWriteException, CanceledException { toBeDeleted.clear(); - options = repo.getConfig() - .get(WorkingTreeOptions.KEY); try (ObjectReader objectReader = repo.getObjectDatabase().newReader()) { + checkout = new Checkout(repo, null); if (headCommitTree != null) preScanTwoTrees(); else @@ -578,10 +572,9 @@ private boolean doCheckout() throws CorruptObjectException, IOException, CheckoutMetadata meta = e.getValue(); DirCacheEntry entry = dc.getEntry(path); if (FileMode.GITLINK.equals(entry.getRawMode())) { - checkoutGitlink(path, entry); + checkout.checkoutGitlink(entry, path); } else { - checkoutEntry(repo, entry, objectReader, false, meta, - options); + checkout.checkout(entry, meta, objectReader, path); } e = null; @@ -616,8 +609,8 @@ private boolean doCheckout() throws CorruptObjectException, IOException, break; } if (entry.getStage() == DirCacheEntry.STAGE_3) { - checkoutEntry(repo, entry, objectReader, false, - null, options); + checkout.checkout(entry, null, objectReader, + conflict); break; } ++entryIdx; @@ -640,14 +633,6 @@ private boolean doCheckout() throws CorruptObjectException, IOException, return toBeDeleted.isEmpty(); } - private void checkoutGitlink(String path, DirCacheEntry entry) - throws IOException { - File gitlinkDir = new File(repo.getWorkTree(), path); - FileUtils.mkdirs(gitlinkDir, true); - FS fs = repo.getFS(); - entry.setLastModified(fs.lastModifiedInstant(gitlinkDir)); - } - private static ArrayList filterOut(ArrayList strings, IntList indicesToRemove) { int n = indicesToRemove.size(); @@ -1251,10 +1236,11 @@ private void keep(String path, DirCacheEntry e, WorkingTreeIterator f) if (force) { if (f == null || f.isModified(e, true, walk.getObjectReader())) { kept.add(path); - checkoutEntry(repo, e, walk.getObjectReader(), false, + checkout.checkout(e, new CheckoutMetadata(walk.getEolStreamType(CHECKOUT_OP), walk.getFilterCommand( - Constants.ATTR_FILTER_TYPE_SMUDGE)), options); + Constants.ATTR_FILTER_TYPE_SMUDGE)), + walk.getObjectReader(), path); } } } @@ -1523,83 +1509,16 @@ public static void checkoutEntry(Repository repo, DirCacheEntry entry, * @throws java.io.IOException * if an IO error occurred * @since 6.3 + * @deprecated since 6.6.1; use {@link Checkout} instead */ + @Deprecated public static void checkoutEntry(Repository repo, DirCacheEntry entry, ObjectReader or, boolean deleteRecursive, CheckoutMetadata checkoutMetadata, WorkingTreeOptions options) throws IOException { - if (checkoutMetadata == null) { - checkoutMetadata = CheckoutMetadata.EMPTY; - } - ObjectLoader ol = or.open(entry.getObjectId()); - File f = new File(repo.getWorkTree(), entry.getPathString()); - File parentDir = f.getParentFile(); - if (parentDir.isFile()) { - FileUtils.delete(parentDir); - } - FileUtils.mkdirs(parentDir, true); - FS fs = repo.getFS(); - WorkingTreeOptions opt = options != null ? options - : repo.getConfig().get(WorkingTreeOptions.KEY); - if (entry.getFileMode() == FileMode.SYMLINK - && opt.getSymLinks() == SymLinks.TRUE) { - byte[] bytes = ol.getBytes(); - String target = RawParseUtils.decode(bytes); - if (deleteRecursive && f.isDirectory()) { - FileUtils.delete(f, FileUtils.RECURSIVE); - } - fs.createSymLink(f, target); - entry.setLength(bytes.length); - entry.setLastModified(fs.lastModifiedInstant(f)); - return; - } - - String name = f.getName(); - if (name.length() > 200) { - name = name.substring(0, 200); - } - File tmpFile = File.createTempFile( - "._" + name, null, parentDir); //$NON-NLS-1$ - - getContent(repo, entry.getPathString(), checkoutMetadata, ol, opt, - new FileOutputStream(tmpFile)); - - // The entry needs to correspond to the on-disk filesize. If the content - // was filtered (either by autocrlf handling or smudge filters) ask the - // filesystem again for the length. Otherwise the objectloader knows the - // size - if (checkoutMetadata.eolStreamType == EolStreamType.DIRECT - && checkoutMetadata.smudgeFilterCommand == null) { - entry.setLength(ol.getSize()); - } else { - entry.setLength(tmpFile.length()); - } - - if (opt.isFileMode() && fs.supportsExecute()) { - if (FileMode.EXECUTABLE_FILE.equals(entry.getRawMode())) { - if (!fs.canExecute(tmpFile)) - fs.setExecute(tmpFile, true); - } else { - if (fs.canExecute(tmpFile)) - fs.setExecute(tmpFile, false); - } - } - try { - if (deleteRecursive && f.isDirectory()) { - FileUtils.delete(f, FileUtils.RECURSIVE); - } - FileUtils.rename(tmpFile, f, StandardCopyOption.ATOMIC_MOVE); - } catch (IOException e) { - throw new IOException( - MessageFormat.format(JGitText.get().renameFileFailed, - tmpFile.getPath(), f.getPath()), - e); - } finally { - if (tmpFile.exists()) { - FileUtils.delete(tmpFile); - } - } - entry.setLastModified(fs.lastModifiedInstant(f)); + Checkout checkout = new Checkout(repo, options) + .setRecursiveDeletion(deleteRecursive); + checkout.checkout(entry, checkoutMetadata, or, null); } /** diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java index 91d53220a..1da1de441 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java @@ -46,6 +46,8 @@ public static JGitText get() { /***/ public String applyBinaryOidTooShort; /***/ public String applyBinaryPatchTypeNotSupported; /***/ public String applyBinaryResultOidWrong; + /***/ public String applyPatchDestInvalid; + /***/ public String applyPatchSourceInvalid; /***/ public String applyPatchWithoutSourceOnAlreadyExistingSource; /***/ public String applyPatchWithCreationOverAlreadyExistingDestination; /***/ public String applyPatchWithSourceOnNonExistentSource; diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java index 715c0c76b..ecbfa74e6 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsPackFile.java @@ -156,6 +156,7 @@ public PackIndex getPackIndex(DfsReader ctx) throws IOException { return idx(ctx); } + @SuppressWarnings("boxing") private PackIndex idx(DfsReader ctx) throws IOException { if (index != null) { return index; @@ -205,6 +206,7 @@ final boolean isGarbage() { * @throws java.io.IOException * the bitmap index is not available, or is corrupt. */ + @SuppressWarnings("boxing") public PackBitmapIndex getBitmapIndex(DfsReader ctx) throws IOException { if (invalid || isGarbage() || !desc.hasFileExt(BITMAP_INDEX)) { return null; @@ -243,6 +245,7 @@ public PackBitmapIndex getBitmapIndex(DfsReader ctx) throws IOException { * @throws java.io.IOException * the Commit Graph is not available, or is corrupt. */ + @SuppressWarnings("boxing") public CommitGraph getCommitGraph(DfsReader ctx) throws IOException { if (invalid || isGarbage() || !desc.hasFileExt(COMMIT_GRAPH)) { return null; @@ -280,6 +283,7 @@ public CommitGraph getCommitGraph(DfsReader ctx) throws IOException { * @throws java.io.IOException * the pack index is not available, or is corrupt */ + @SuppressWarnings("boxing") public PackReverseIndex getReverseIdx(DfsReader ctx) throws IOException { if (reverseIndex != null) { return reverseIndex; @@ -304,6 +308,7 @@ public PackReverseIndex getReverseIdx(DfsReader ctx) throws IOException { return reverseIndex; } + @SuppressWarnings("boxing") private PackObjectSizeIndex getObjectSizeIndex(DfsReader ctx) throws IOException { if (objectSizeIndex != null) { @@ -1046,11 +1051,11 @@ boolean hasObjectSizeIndex(DfsReader ctx) throws IOException { * no object size index or a problem loading it. */ int getObjectSizeIndexThreshold(DfsReader ctx) throws IOException { - PackObjectSizeIndex index = getObjectSizeIndex(ctx); - if (index == null) { + PackObjectSizeIndex idx = getObjectSizeIndex(ctx); + if (idx == null) { throw new IOException("Asking threshold of non-existing obj-size"); //$NON-NLS-1$ } - return index.getThreshold(); + return idx.getThreshold(); } /** @@ -1169,6 +1174,7 @@ private void setCorrupt(long offset) { } } + @SuppressWarnings("boxing") private DfsBlockCache.Ref loadPackIndex( DfsReader ctx, DfsStreamKey idxKey) throws IOException { try { @@ -1198,6 +1204,7 @@ private DfsBlockCache.Ref loadPackIndex( } } + @SuppressWarnings("boxing") private DfsBlockCache.Ref loadReverseIdx( DfsReader ctx, DfsStreamKey revKey, PackIndex idx) { ctx.stats.readReverseIdx++; @@ -1213,6 +1220,7 @@ private DfsBlockCache.Ref loadReverseIdx( revidx); } + @SuppressWarnings("boxing") private DfsBlockCache.Ref loadObjectSizeIndex( DfsReader ctx, DfsStreamKey objectSizeIndexKey) throws IOException { ctx.stats.readObjectSizeIndex++; diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/FileModeCache.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/FileModeCache.java new file mode 100644 index 000000000..073bf7a0c --- /dev/null +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/FileModeCache.java @@ -0,0 +1,309 @@ +/* + * Copyright (C) 2023, Thomas Wolf and others + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Distribution License v. 1.0 which is available at + * https://www.eclipse.org/org/documents/edl-v10.php. + * + * SPDX-License-Identifier: BSD-3-Clause + */ +package org.eclipse.jgit.lib; + +import java.io.File; +import java.io.IOException; +import java.nio.file.InvalidPathException; +import java.nio.file.LinkOption; +import java.nio.file.Path; +import java.nio.file.attribute.BasicFileAttributeView; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.HashMap; +import java.util.Map; + +import org.eclipse.jgit.annotations.NonNull; +import org.eclipse.jgit.util.FS; +import org.eclipse.jgit.util.FileUtils; + +/** + * A hierarchical cache of {@link FileMode}s per git path. + * + * @since 6.6.1 + */ +public class FileModeCache { + + @NonNull + private final CacheItem root = new CacheItem(FileMode.TREE); + + @NonNull + private final Repository repo; + + /** + * Creates a new {@link FileModeCache} for a {@link Repository}. + * + * @param repo + * {@link Repository} this cache is for + */ + public FileModeCache(@NonNull Repository repo) { + this.repo = repo; + } + + /** + * Retrieves the {@link Repository}. + * + * @return the {@link Repository} this {@link FileModeCache} was created for + */ + @NonNull + public Repository getRepository() { + return repo; + } + + /** + * Obtains the {@link CacheItem} for the working tree root. + * + * @return the {@link CacheItem} + */ + @NonNull + public CacheItem getRoot() { + return root; + } + + /** + * Ensure that the given parent directory exists, and cache the information + * that gitPath refers to a file. + * + * @param gitPath + * of the file to be written + * @param parentDir + * directory in which the file shall be placed, assumed to be the + * parent of the {@code gitPath} + * @param makeSpace + * whether to delete a possibly existing file at + * {@code parentDir} + * @throws IOException + * if the directory cannot be created, if necessary + */ + public void safeCreateParentDirectory(String gitPath, File parentDir, + boolean makeSpace) throws IOException { + CacheItem cachedParent = safeCreateDirectory(gitPath, parentDir, + makeSpace); + cachedParent.remove(gitPath.substring(gitPath.lastIndexOf('/') + 1)); + } + + /** + * Ensures the given directory {@code dir} with the given git path exists. + * + * @param gitPath + * of a file to be written + * @param dir + * directory in which the file shall be placed, assumed to be the + * parent of the {@code gitPath} + * @param makeSpace + * whether to remove a file that already at that name + * @return A {@link CacheItem} describing the directory, which is guaranteed + * to exist + * @throws IOException + * if the directory cannot be made to exist at the given + * location + */ + public CacheItem safeCreateDirectory(String gitPath, File dir, + boolean makeSpace) throws IOException { + FS fs = repo.getFS(); + int i = gitPath.lastIndexOf('/'); + String parentPath = null; + if (i >= 0) { + if ((makeSpace && dir.isFile()) || fs.isSymLink(dir)) { + FileUtils.delete(dir); + } + parentPath = gitPath.substring(0, i); + deleteSymlinkParent(fs, parentPath, repo.getWorkTree()); + } + FileUtils.mkdirs(dir, true); + CacheItem cachedParent = getRoot(); + if (parentPath != null) { + cachedParent = add(parentPath, FileMode.TREE); + } + return cachedParent; + } + + private void deleteSymlinkParent(FS fs, String gitPath, File workingTree) + throws IOException { + if (!fs.supportsSymlinks()) { + return; + } + String[] parts = gitPath.split("/"); //$NON-NLS-1$ + int n = parts.length; + CacheItem cached = getRoot(); + File p = workingTree; + for (int i = 0; i < n; i++) { + p = new File(p, parts[i]); + CacheItem cachedChild = cached != null ? cached.child(parts[i]) + : null; + boolean delete = false; + if (cachedChild != null) { + if (FileMode.SYMLINK.equals(cachedChild.getMode())) { + delete = true; + } + } else { + try { + Path nioPath = FileUtils.toPath(p); + BasicFileAttributes attributes = nioPath.getFileSystem() + .provider() + .getFileAttributeView(nioPath, + BasicFileAttributeView.class, + LinkOption.NOFOLLOW_LINKS) + .readAttributes(); + if (attributes.isSymbolicLink()) { + delete = p.isDirectory(); + } else if (attributes.isRegularFile()) { + break; + } + } catch (InvalidPathException | IOException e) { + // If we can't get the attributes the path does not exist, + // or if it does a subsequent mkdirs() will also throw an + // exception. + break; + } + } + if (delete) { + // Deletes the symlink + FileUtils.delete(p, FileUtils.SKIP_MISSING); + if (cached != null) { + cached.remove(parts[i]); + } + break; + } + cached = cachedChild; + } + } + + /** + * Records the given {@link FileMode} for the given git path in the cache. + * If an entry already exists for the given path, the previously cached file + * mode is overwritten. + * + * @param gitPath + * to cache the {@link FileMode} for + * @param finalMode + * {@link FileMode} to cache + * @return the {@link CacheItem} for the path + */ + @NonNull + private CacheItem add(String gitPath, FileMode finalMode) { + if (gitPath.isEmpty()) { + throw new IllegalArgumentException(); + } + String[] parts = gitPath.split("/"); //$NON-NLS-1$ + int n = parts.length; + int i = 0; + CacheItem curr = getRoot(); + while (i < n) { + CacheItem next = curr.child(parts[i]); + if (next == null) { + break; + } + curr = next; + i++; + } + if (i == n) { + curr.setMode(finalMode); + } else { + while (i < n) { + curr = curr.insert(parts[i], + i + 1 == n ? finalMode : FileMode.TREE); + i++; + } + } + return curr; + } + + /** + * An item from a {@link FileModeCache}, recording information about a git + * path (known from context). + */ + public static class CacheItem { + + @NonNull + private FileMode mode; + + private Map children; + + /** + * Creates a new {@link CacheItem}. + * + * @param mode + * {@link FileMode} to cache + */ + public CacheItem(@NonNull FileMode mode) { + this.mode = mode; + } + + /** + * Retrieves the cached {@link FileMode}. + * + * @return the {@link FileMode} + */ + @NonNull + public FileMode getMode() { + return mode; + } + + /** + * Retrieves an immediate child of this {@link CacheItem} by name. + * + * @param childName + * name of the child to get + * @return the {@link CacheItem}, or {@code null} if no such child is + * known + */ + public CacheItem child(String childName) { + if (children == null) { + return null; + } + return children.get(childName); + } + + /** + * Inserts a new cached {@link FileMode} as an immediate child of this + * {@link CacheItem}. If there is already a child with the same name, it + * is overwritten. + * + * @param childName + * name of the child to create + * @param childMode + * {@link FileMode} to cache + * @return the new {@link CacheItem} created for the child + */ + public CacheItem insert(String childName, @NonNull FileMode childMode) { + if (!FileMode.TREE.equals(mode)) { + throw new IllegalArgumentException(); + } + if (children == null) { + children = new HashMap<>(); + } + CacheItem newItem = new CacheItem(childMode); + children.put(childName, newItem); + return newItem; + } + + /** + * Removes the immediate child with the given name. + * + * @param childName + * name of the child to remove + * @return the previously cached {@link CacheItem}, if any + */ + public CacheItem remove(String childName) { + if (children == null) { + return null; + } + return children.remove(childName); + } + + void setMode(@NonNull FileMode mode) { + this.mode = mode; + if (!FileMode.TREE.equals(mode)) { + children = null; + } + } + } + +} diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java b/org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java index 2b2ab023b..6eea7b88d 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/merge/ResolveMerger.java @@ -3,8 +3,8 @@ * Copyright (C) 2010-2012, Matthias Sohn * Copyright (C) 2012, Research In Motion Limited * Copyright (C) 2017, Obeo (mathieu.cartaud@obeo.fr) - * Copyright (C) 2018, 2022 Thomas Wolf - * Copyright (C) 2022, Google Inc. and others + * Copyright (C) 2018, 2023 Thomas Wolf + * Copyright (C) 2023, Google Inc. and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -47,6 +47,7 @@ import org.eclipse.jgit.diff.RawText; import org.eclipse.jgit.diff.RawTextComparator; import org.eclipse.jgit.diff.Sequence; +import org.eclipse.jgit.dircache.Checkout; import org.eclipse.jgit.dircache.DirCache; import org.eclipse.jgit.dircache.DirCacheBuildIterator; import org.eclipse.jgit.dircache.DirCacheBuilder; @@ -79,7 +80,6 @@ import org.eclipse.jgit.treewalk.WorkingTreeIterator; import org.eclipse.jgit.treewalk.WorkingTreeOptions; import org.eclipse.jgit.treewalk.filter.TreeFilter; -import org.eclipse.jgit.util.FS; import org.eclipse.jgit.util.LfsFactory; import org.eclipse.jgit.util.LfsFactory.LfsInputStream; import org.eclipse.jgit.util.TemporaryBuffer; @@ -204,6 +204,12 @@ public List getModifiedFiles() { */ private boolean indexChangesWritten; + /** + * {@link Checkout} to use for actually checking out files if + * {@link #inCore} is {@code false}. + */ + private Checkout checkout; + /** * @param repo * the {@link Repository}. @@ -223,6 +229,7 @@ private WorkTreeUpdater(Repository repo, DirCache dirCache) { this.inCoreFileSizeLimit = getInCoreFileSizeLimit(config); this.checkoutMetadataByPath = new HashMap<>(); this.cleanupMetadataByPath = new HashMap<>(); + this.checkout = new Checkout(nonNullRepo(), workingTreeOptions); } /** @@ -350,9 +357,8 @@ public void writeWorkTreeChanges(boolean shouldCheckoutTheirs) } // All content operations are successfully done. If we can now write - // the - // new index we are on quite safe ground. Even if the checkout of - // files coming from "theirs" fails the user can work around such + // the new index we are on quite safe ground. Even if the checkout + // of files coming from "theirs" fails the user can work around such // failures by checking out the index again. if (!builder.commit()) { revertModifiedFiles(); @@ -517,14 +523,14 @@ private void checkout() throws NoWorkTreeException, IOException { for (Map.Entry entry : toBeCheckedOut .entrySet()) { DirCacheEntry dirCacheEntry = entry.getValue(); + String gitPath = entry.getKey(); if (dirCacheEntry.getFileMode() == FileMode.GITLINK) { - new File(nonNullRepo().getWorkTree(), entry.getKey()) - .mkdirs(); + checkout.checkoutGitlink(dirCacheEntry, gitPath); } else { - DirCacheCheckout.checkoutEntry(repo, dirCacheEntry, reader, - false, checkoutMetadataByPath.get(entry.getKey()), - workingTreeOptions); - result.modifiedFiles.add(entry.getKey()); + checkout.checkout(dirCacheEntry, + checkoutMetadataByPath.get(gitPath), reader, + gitPath); + result.modifiedFiles.add(gitPath); } } } @@ -549,9 +555,8 @@ public void revertModifiedFiles() throws IOException { for (String path : result.modifiedFiles) { DirCacheEntry entry = dirCache.getEntry(path); if (entry != null) { - DirCacheCheckout.checkoutEntry(repo, entry, reader, false, - cleanupMetadataByPath.get(path), - workingTreeOptions); + checkout.checkout(entry, cleanupMetadataByPath.get(path), + reader, path); } } } @@ -585,6 +590,8 @@ public void updateFileWithContent(StreamSupplier inputStream, if (inCore) { return; } + checkout.safeCreateParentDirectory(path, file.getParentFile(), + false); CheckoutMetadata metadata = new CheckoutMetadata(streamType, smudgeCommand); @@ -1593,15 +1600,11 @@ private File writeMergedFile(TemporaryBuffer rawMerged, Attributes attributes) throws IOException { File workTree = nonNullRepo().getWorkTree(); - FS fs = nonNullRepo().getFS(); - File of = new File(workTree, tw.getPathString()); - File parentFolder = of.getParentFile(); + String gitPath = tw.getPathString(); + File of = new File(workTree, gitPath); EolStreamType eol = workTreeUpdater.detectCheckoutStreamType(attributes); - if (!fs.exists(parentFolder)) { - parentFolder.mkdirs(); - } workTreeUpdater.updateFileWithContent(rawMerged::openInputStream, - eol, tw.getSmudgeCommand(attributes), of.getPath(), of); + eol, tw.getSmudgeCommand(attributes), gitPath, of); return of; } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/patch/PatchApplier.java b/org.eclipse.jgit/src/org/eclipse/jgit/patch/PatchApplier.java index e9c119279..7cfc162d7 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/patch/PatchApplier.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/patch/PatchApplier.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2022, Google Inc. and others + * Copyright (C) 2023, Google Inc. and others * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0 which is available at @@ -52,6 +52,7 @@ import org.eclipse.jgit.dircache.DirCacheCheckout.StreamSupplier; import org.eclipse.jgit.dircache.DirCacheEntry; import org.eclipse.jgit.dircache.DirCacheIterator; +import org.eclipse.jgit.errors.CorruptObjectException; import org.eclipse.jgit.errors.IndexWriteException; import org.eclipse.jgit.internal.JGitText; import org.eclipse.jgit.lib.Config; @@ -59,6 +60,7 @@ import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.CoreConfig.EolStreamType; import org.eclipse.jgit.lib.FileMode; +import org.eclipse.jgit.lib.FileModeCache; import org.eclipse.jgit.lib.ObjectId; import org.eclipse.jgit.lib.ObjectInserter; import org.eclipse.jgit.lib.ObjectLoader; @@ -81,6 +83,7 @@ import org.eclipse.jgit.util.LfsFactory.LfsInputStream; import org.eclipse.jgit.util.RawParseUtils; import org.eclipse.jgit.util.StringUtils; +import org.eclipse.jgit.util.SystemReader; import org.eclipse.jgit.util.TemporaryBuffer; import org.eclipse.jgit.util.TemporaryBuffer.LocalFile; import org.eclipse.jgit.util.io.BinaryDeltaInputStream; @@ -259,6 +262,7 @@ public Result applyPatch(Patch p) throws IOException { DirCache dirCache = inCore() ? DirCache.read(reader, beforeTree) : repo.lockDirCache(); + FileModeCache directoryCache = new FileModeCache(repo); DirCacheBuilder dirCacheBuilder = dirCache.builder(); Set modifiedPaths = new HashSet<>(); for (FileHeader fh : p.getFiles()) { @@ -271,7 +275,8 @@ public Result applyPatch(Patch p) throws IOException { switch (type) { case ADD: { if (dest != null) { - FileUtils.mkdirs(dest.getParentFile(), true); + directoryCache.safeCreateParentDirectory(fh.getNewPath(), + dest.getParentFile(), false); FileUtils.createNewFile(dest); } apply(fh.getNewPath(), dirCache, dirCacheBuilder, dest, fh, result); @@ -296,7 +301,8 @@ public Result applyPatch(Patch p) throws IOException { * apply() will write a fresh stream anyway, which will * overwrite if there were hunks in the patch. */ - FileUtils.mkdirs(dest.getParentFile(), true); + directoryCache.safeCreateParentDirectory(fh.getNewPath(), + dest.getParentFile(), false); FileUtils.rename(src, dest, StandardCopyOption.ATOMIC_MOVE); } @@ -307,7 +313,8 @@ public Result applyPatch(Patch p) throws IOException { } case COPY: { if (!inCore()) { - FileUtils.mkdirs(dest.getParentFile(), true); + directoryCache.safeCreateParentDirectory(fh.getNewPath(), + dest.getParentFile(), false); Files.copy(src.toPath(), dest.toPath()); } apply(fh.getOldPath(), dirCache, dirCacheBuilder, dest, fh, result); @@ -402,9 +409,27 @@ private boolean verifyExistence(FileHeader fh, File src, File dest, fh.getPatchType()), fh.getNewPath(), null); isValid = false; } + if (srcShouldExist && !validGitPath(fh.getOldPath())) { + result.addError(JGitText.get().applyPatchSourceInvalid, + fh.getOldPath(), null); + isValid = false; + } + if (destShouldNotExist && !validGitPath(fh.getNewPath())) { + result.addError(JGitText.get().applyPatchDestInvalid, + fh.getNewPath(), null); + isValid = false; + } return isValid; } + private boolean validGitPath(String path) { + try { + SystemReader.getInstance().checkPath(path); + return true; + } catch (CorruptObjectException e) { + return false; + } + } private static final int FILE_TREE_INDEX = 1; /** diff --git a/pom.xml b/pom.xml index c26d9f216..3304587c6 100644 --- a/pom.xml +++ b/pom.xml @@ -18,7 +18,7 @@ org.eclipse.jgit org.eclipse.jgit-parent pom - 6.7.0-SNAPSHOT + 6.7.1-SNAPSHOT JGit - Parent ${jgit-url} @@ -150,7 +150,7 @@ 11 ${project.build.directory}/META-INF/MANIFEST.MF - 6.5.0.202303070854-r + 6.6.0.202305301015-r 1.10.12 2.10.0 0.1.55 @@ -337,7 +337,7 @@ org.apache.maven.plugins maven-site-plugin - 3.12.1 + 4.0.0-M9 org.apache.maven.wagon @@ -468,7 +468,7 @@ to check javadoc on tests. We can reconsider to configure this on javadoc when it starts supporting access specifiers so that we can set -Xdoclint:all,-missing/private --> - -Xdoclint:none--> + -Xdoclint:none ${project.build.sourceEncoding} true true @@ -610,7 +610,32 @@ - true + false + -Xdoclint:none + ${project.build.sourceEncoding} + true + false + org.eclipse.jgit.http.test + + https://docs.oracle.com/en/java/javase/11/docs/api + + + + apiNote + a + API Note: + + + implSpec + a + Implementation Requirements: + + + implNote + a + Implementation Note: + +