Skip to main content
AgeCommit message (Collapse)AuthorFilesLines
2020-01-17Only format changed linesY20200204-0035Y20200130-0045Y20200127-1055Y20200126-2245Y20200121-0055Y20200120-2315Y20200120-0020I20200206-1805I20200205-1800I20200205-0030I20200204-1800I20200203-1800I20200202-1800I20200201-1800I20200131-1800I20200130-1800I20200129-1800I20200129-0935I20200129-0100I20200128-1805I20200127-1800I20200126-1800I20200126-0250I20200125-1805I20200124-1800I20200123-1800I20200123-0525I20200123-0430I20200122-1805I20200121-2225I20200121-1805I20200120-1800I20200120-0715I20200120-0530I20200120-0445I20200120-0355I20200120-0115I20200119-2330I20200119-1800I20200118-1800I20200117-1800Thomas Watson1-0/+16
With the recent change to the formatter we are getting lots of noise on the save action Change-Id: I872a53725229a24318c2f30ddb2a67273946eb0b Signed-off-by: Thomas Watson <>
2020-01-14Bug 559118 - Add testcase and fix reexport uses constraint checkI20200116-1800I20200116-0930I20200116-0330I20200116-0310I20200115-1800Thomas Watson2-41/+122
This is a testcase that reproduces the issue found in bug 558895. When an exporter of a split package requires multiple bundles that also export the split package and that bundle does a reexport on one of the parts it can cause resolution issues for uses constraints. The actual problem is with reexport itself. The reexporting bundle does not have to also export the package to cause the issue. The problem is that each part of the package pulled in from the require-reexport is checked in isolation with the using bundles wire to the same package name. This is incorrect because that is only a subset of the actual used package from the perspective of the exported package that is using the split package. The fix is to record all the package parts for the split used package from the wiring of the bundle exporting the package that uses the split package. That way during the compatibility check we can accurately use the set of sources for the split package that the exporting bundle is using. Change-Id: I5d6194adabc7c04fe990d663ad1dd6bb77f2ac39 Signed-off-by: Thomas Watson <>
2020-01-14Remove redundant type arguments in osgi.tests.I20200114-1805Alexander Kurtakov38-284/+320
Change-Id: I192d24bf559330e059993971c662aac11f1c2cf6 Signed-off-by: Alexander Kurtakov <>
2020-01-13Bug 559097 - Compile warnings in I20200113-0130Y20200114-0045I20200113-1800Alexander Kurtakov4-97/+233
Fix rt.equinox.framework warnings. Had to change formatter for org.eclipse.osgi to eclipse as there is no "core" shipped to everyone and it can vary from user to user in case one created his own. Change-Id: I67be4f9c749598506011023428005a775f673178 Signed-off-by: Alexander Kurtakov <>
2020-01-10Bug 559036 - [log] add configuration to avoid capturing log entryI20200113-0130I20200112-1800I20200111-1800I20200111-0325I20200111-0230I20200110-1805Thomas Watson7-24/+75
location Change-Id: Id605511bca7f6a00cbcab26c27cbf851fce36ff0 Signed-off-by: Thomas Watson <>
2020-01-10Bug 558929 - Must handle relative FilePermission pathsThomas Watson4-67/+190
Both ConditionalPermissionAdmin and PermissionAdmin must handle relative paths be relative to a bundles data area. Change-Id: Ic9565bf368d9cad8b2676e0b2a1bb6d1b1d77cec Signed-off-by: Thomas Watson <>
2020-01-09filter: Improvements to FilterImplBJ Hargrave1-408/+248
The implementation is updated to better exploit the String type of value. We don't need to pass it as a parameter since it is a final field in the object. We also don't need to cast it to String since it is already known to be a String. This then leads to refactoring of the FilterImpl sub-type hierarchy. Change-Id: I57c94dd772f776fb6d7cbbbc12eb3d3f129c6386 Signed-off-by: BJ Hargrave <>
2020-01-07Bug 558612 - The tests for canWrite have the undesirable side-effect ofY20200108-0435S4_15_0_M1I20200110-0905I20200110-0200I20200109-2350I20200108-2240I20200108-0600I20200108-0025I20200107-1800Ed Merks4-40/+5
changing File.lastModified Change-Id: I9491069acd200cc8a7e9063d753c04a0ffb0fa1b Signed-off-by: Ed Merks <>
2020-01-06Silence empty block warning in osgi.tests.I20200107-0600Alexander Kurtakov1-1/+18
This creates only noise in the workbench. Change-Id: Icec52e2cef7d365b25d1a1a36f5389f8d804504d Signed-off-by: Alexander Kurtakov <>
2019-12-18Bug 558371 - Avoid use of MethodHandleY20200103-2350I20200106-1805I20200106-0600I20200105-1800I20200105-0955I20200105-0600I20200104-1800I20200104-0625I20200104-0600I20200103-1800I20200102-1800I20200101-1800I20191231-1800I20191230-1800I20191229-2200I20191229-1800I20191228-1800I20191227-1800I20191226-1800I20191225-1800I20191224-1800I20191223-1800I20191222-1800I20191221-2205I20191221-1800I20191220-1805I20191219-1800I20191218-1805Thomas Watson1-6/+2
Use of method handles does not seem to improve performance. In my testing it actually makes things slower on Java 8. Particularly the use of MethodHandle for calling the constructor for the value to match against. Substrate also doesn't like the use of MethodHandles in the FilterImpl. For now I think we should avoid using them unless they show a clear performance win. Change-Id: I220cb2cde0a7c5bf948db6e34f8d337e3a4ce0f8 Signed-off-by: Thomas Watson <>
2019-12-16Bug 558380 - Augmenting existing capability attributes and directivesY20191217-0600I20191218-0015I20191217-1800I20191216-1805Thomas Watson4-18/+51
Change-Id: I6fcfc7679cc68bbbcd496fc37dc344141a5dd9dd Signed-off-by: Thomas Watson <>
2019-12-16Bug 558371: Update FilterImplbug558371BJ Hargrave1-1153/+1131
Replace old implementation with a more modern implementation using method handles and subtyping to avoid repeated checks for operand type.
2019-12-12Add test to ensure FrameworkUtil always uses Equinox FilterImplI20191215-1800I20191214-1800I20191213-1805I20191213-0155I20191212-1800Thomas Watson1-1/+12
Change-Id: I9e37414c60d7f36dd339fb1819f819b3678226ba Signed-off-by: Thomas Watson <>
2019-12-11Bug 553294 - Use StandardCharsetsI20191211-1805Alexander Kurtakov9-40/+113
Change-Id: Id3d98b332c49de8a98990d7026611963b717e761 Signed-off-by: Alexander Kurtakov <>
2019-12-11Version bump of o.e.osgi.compatibility.state for 4.15.Alexander Kurtakov2-2/+2
Change-Id: I28e2c4c217758ca18fef48ef718083ff509a61e6 Signed-off-by: Alexander Kurtakov <>
2019-12-10Bug 553540 - Verification mechanism consumes a lot of memory when itI20191211-0135I20191210-1800Thomas Watson1-2/+13
verifies large resources Change-Id: Ia86ec549dbe55ff93047e5ffe51b57b3c1bb2c8a Signed-off-by: Thomas Watson <>
2019-12-10Bug 553540 - Update version of org.eclipse.osgiThomas Watson6-6/+6
Change-Id: Ide6fe3dad965446b5e20ca821c077cad0a4b4788 Signed-off-by: Thomas Watson <>
2019-12-06Bug 553742 - POM and product version change for 4.15 releaseY20191208-2315I20191210-0230I20191209-2205I20191209-1600I20191209-1310I20191209-1130I20191209-1110Niraj Modi16-17/+17
Change-Id: I6cd44e3c17769bb2644d5da9d7e95ada0904b979 Signed-off-by: Niraj Modi <>
2019-12-06Bug 553748: Update version number in mac's for 4.15Noopur Gupta1-3/+3
Change-Id: I0a90d5c0a7b173a6583e2701ad16c32da30919ad Signed-off-by: Noopur Gupta <>
2019-11-20Bug 553222 - Equinox should support reading from new-style PKCS12 formatY20191127-0140Y20191126-0500S4_14_0_RC2aS4_14_0_RC2S4_14_0_RC1R4_14I20191210-0610I20191204-1800I20191204-0600I20191203-1800I20191203-0600I20191202-1800I20191202-0600I20191201-1800I20191201-0600I20191130-1800I20191130-0600I20191129-1800I20191127-1800I20191127-0600I20191126-2315I20191126-1800I20191126-0600I20191125-1800I20191125-0600I20191124-1800I20191124-0600I20191123-1800I20191123-1115I20191123-0600I20191123-0100I20191122-1800R4_14_maintenanceAlexander Kurtakov1-34/+34
keystores Slightly more modern code while familiarizing with codebase. Change-Id: Idafff44981e42799ed32a20ef76c5136b99cb1a5 Signed-off-by: Alexander Kurtakov <>
2019-11-14Bug 552594 - Fix framework extensions with built-in Java 9 app loaderI20191120-2335I20191120-1800I20191120-0840I20191120-0600I20191119-2200I20191119-1800I20191119-1250I20191119-1235I20191119-1215I20191119-1155I20191119-0850I20191119-0725I20191119-0510I20191119-0315I20191119-0020I20191118-2230I20191118-1800I20191118-0600I20191117-1800I20191117-0600I20191116-1800I20191116-0600I20191115-1800I20191114-1800Thomas Watson2-22/+45
In Java 9 the application class loader changed from a URLClassLoader to an internal type jdk.internal.loader.ClassLoaders.AppClassLoader. The new AppClassLoader no longer has the addURL method that we used to add framework extension content to the class loader when the framework is loaded from the java class path. This fix uses the method appendToClassPathForInstrumentation(String) on the new AppClassLoader class. To do this extra work is needed to allow reflection on the AppClassLoader class. This is not ideal, but will allow the framework extensions to work when the framework is launched from the java application class path. Note that Eclipse launcher uses its own class loader which still has addURL method available. This new approach is only attempted if the class loader used to launch the framework does not have an available addURL method. Change-Id: I0a4195307db6fb87dbab08933584e1a798ccf34a Signed-off-by: Thomas Watson <>
2019-11-07Bug 552766 - Fix testJavadocLogs in releng testsY20191112-0030Y20191107-0440I20191114-0410I20191113-2315I20191113-1800I20191112-1800I20191111-1800I20191111-0920I20191111-0655I20191111-0435I20191111-0145I20191110-1800I20191109-1800I20191109-0650I20191109-0330I20191108-1800I20191107-1800Vikas Chandra1-1/+1
Change-Id: Ib8b5c9a65a579fc014e5836edf8b18a049061027 Signed-off-by: Vikas Chandra <>
2019-11-06Bug 527175 - Storage#getSystemContent() should first make the fileY20191107-0420I20191106-1805Christoph Läubrich1-2/+3
absolute Change-Id: I05446e0484b5a5a60defae3019f46c05ed5a062e Signed-off-by: Christoph Läubrich <>
2019-10-14Remove gtk aix launcher makefile.I20191105-1800I20191105-0025I20191104-1800I20191103-1800I20191102-1800I20191101-1800I20191101-0300I20191031-1800I20191031-1325I20191030-1800I20191030-0010I20191029-1800I20191028-1800I20191027-1800I20191026-1800I20191025-1805I20191024-1800I20191023-1810I20191022-1800I20191022-0405I20191020-1800I20191019-1800I20191018-1800I20191018-0720I20191016-1800I20191015-1800I20191014-1800Alexander Kurtakov1-115/+0
Change-Id: I3acc57f2b1c984fa84413c1edb38e039af9cd2c0 Signed-off-by: Alexander Kurtakov <>
2019-10-14Remove unneeded NON-NLSAlexander Kurtakov1-2/+2
Change-Id: I8383a6d642bafe2c8a5808aaac271aefc39b21bc Signed-off-by: Alexander Kurtakov <>
2019-10-14Improve CDT project files.Alexander Kurtakov3-129/+382
Pointing to gtk2 and other ancient things is not helping anyone. Change-Id: I115ff81c2d7aafaa2431484254e6f9a129723093 Signed-off-by: Alexander Kurtakov <>
2019-10-14Bug 552093 - Remove 32bit launcher codeAlexander Kurtakov4-20/+5
Drop support in code. Change-Id: I91823ac9c762b9e4211b3ea5356f54ac56154675 Signed-off-by: Alexander Kurtakov <>
2019-10-14Bug 552093 - Remove 32bit launcher codeAlexander Kurtakov3-109/+2
Drop support in build scripts. Change-Id: I4fe2e2cd4e1480666aa428f2d0972ed8921f1bde Signed-off-by: Alexander Kurtakov <>
2019-10-14Bug 552093 - Remove 32bit launcher codeAlexander Kurtakov12-242/+0
Remove fragments. Change-Id: I00de67b0c06fd3c829bf06ec8ad9339c75aa7988 Signed-off-by: Alexander Kurtakov <>
2019-10-14Report target directory when Main's getBootPath could not find frameworkMykola Nikishov3-6/+6
... and throw FileNotFoundException, per method's signature, instead of RuntimeException. Change-Id: If6a31b24e0c74af0eb4f80fcc92d2ef8e8dcfe7b Signed-off-by: Mykola Nikishov <>
2019-10-14Bug 552088 - Allow framework to continue even when factories are not set on URLThomas Watson1-10/+22
Graal substrate native images do not support setting the factories on the URL classes. This change allows the framework to continue to launch even if it fails to set the factories. This implies the OSGi URL Handlers Service specification will not be supported when this happens. Change-Id: Id18883dd12072e0b9f4a57c1e9c3cdb9ffdf8c99 Signed-off-by: Thomas Watson <>
2019-10-14Bug 552087 - Avoid creating class loaders in static initializersThomas Watson6-38/+54
This becomes problematic when trying to create a substrate VM native image. We can easily avoid this but finding the boot loader in the constructor of EquionoxContainer Change-Id: Ibfcf974de69772cf585a4495d4d2fa0903dcf7a3 Signed-off-by: Thomas Watson <>
2019-10-14Bug 552085 - never fail out of calls to registerAsParallelCapableThomas Watson2-3/+20
Handle the failure case for substrate native images Change-Id: I933cec84a2e0d6db9d05f551d9bc61556997338d Signed-off-by: Thomas Watson <>
2019-10-08Use StandardCharsets.S4_14_0_M1I20191013-1800I20191012-1800I20191011-1800I20191009-1800I20191009-0600I20191009-0300I20191008-1800I20191008-0600Alexander Kurtakov3-16/+35
Instead of string name "UTF-8". Change-Id: I724c60e5c074e7593b17bd24385a5e40023fcf94 Signed-off-by: Alexander Kurtakov <>
2019-10-01Minor - Use Boolean.parseBoolean instead of Boolean.valueOfI20191007-1800I20191007-0625I20191007-0430I20191006-1800I20191006-0600I20191003-1800I20191002-1800I20191002-0100I20191001-1800Lars Vogel1-2/+3
This is more efficient and fixes a Sonar warning Change-Id: Id6fe50b7e2162c823f2ff320121d7ebfd4b6d7ea Signed-off-by: Lars Vogel <>
2019-09-30Bug 551576 - BundleURLConnection.getContentLengthLong() always returns 0I20190930-1800Thomas Watson1-2/+2
Change-Id: I3d781b1f805f2c75b65bb56fe156f0f6e48750ef Signed-off-by: Thomas Watson <>
2019-09-24Bug 551431 - NPE when system content is null on a restart from cacheI20190929-1800I20190928-1800I20190928-0515I20190928-0205I20190928-0000I20190927-1800I20190927-1530I20190927-0255I20190927-0225I20190927-0145I20190926-1800I20190926-0625Thomas Watson1-3/+1
Change-Id: I8efdec5dc7d60354b655da727763e5a8deb2fbfe Signed-off-by: Thomas Watson <>
2019-09-24Bug 551396 - Fix files that have ended up with CRLF in the gitI20190924-1800Ed Merks1-52/+52
repository Change-Id: I0b7bb7493a422086f6272f17b73358891bb8cf2b Signed-off-by: Ed Merks <>
2019-09-24Bug 550648 - The /org.eclipse.equinox.executable.feature/feature.xmlEd Merks1-0/+1
should specify a provider Change-Id: Id9b594cc89b9fae22bc15f165ada87ad32ccdf46 Signed-off-by: Ed Merks <>
2019-09-23Log a warning when bundles get discarded by a hook.I20190923-1800Thomas Watson1-1/+1
Change-Id: I54503da163df76c211326a1a70dc7136a41d6d50 Signed-off-by: Thomas Watson <>
2019-09-23Bug 551380 - StorageHookFactory.createStorageHook method returns nullThomas Watson3-2/+45
The framework must handle when creeateStorageHook returns null when installing a bundle, saving persistent hook data and loading persistent hook data. A new test is added to test all three cases. Change-Id: I941491e8759b659ea97b129fbab0aa01c84edf5a Signed-off-by: Thomas Watson <>
2019-09-23Bug 551376 - Add getWrappedType to BundleFileWrapperChainThomas Watson3-21/+31
Remove some duplicate code that walks the wrapper chain looking for a specific type of bundle file wrapped in the chain Change-Id: I308ad1b6966c857a81154226952590e255e2e9f2 Signed-off-by: Thomas Watson <>
2019-09-18Bug 551174 - Comparator errors in 4.14 I build - I20190917-1800I20190923-0615I20190922-1800I20190921-1800I20190920-1800I20190919-1800I20190919-0850I20190918-1800I20190918-0300Alexander Kurtakov1-0/+1
Change-Id: I0d37f0de41bf849ce20e33357a86486a704b4adc Signed-off-by: Alexander Kurtakov <>
2019-09-16Bug 475071 - Data race inside LoggingTestsI20190917-1800I20190916-1800Thomas Watson1-13/+28
Change-Id: Ic6f3b441167ec3e88c37bc656557caf69be6d5ee Signed-off-by: Thomas Watson <>
2019-09-13Bug 550605 - StackOverflowError in CDSBundleFileEntryI20190915-1800I20190914-1800I20190913-1800Thomas Watson2-7/+11
The method CDSBundleEntry.getEntry() ended up calling CDSBundleFile.getEntry(path) which ends up returning another CDSBundleEntry object. The intention was to get the wrapped entry from the next BundleFile in the chain. The result of getting another CDSBundleEntry is that we endless recurse when calling methods like CDSBundleEntry.getInputStream() Change-Id: I0c684eb63987797cd9e092a405274ccb1d4eae71 Signed-off-by: Thomas Watson <>
2019-09-12Bug 550605 - Check class cache before wrapped bundle fileI20190912-1800Thomas Watson2-23/+29
If a class exists in the j9 class cache for a given bundle content URL then just use it and do not first check for an entry from the wrapped bundle file. This avoids doing an unneeded zip file lookup each class load Change-Id: I0f34305fa9e2f88c089d0888db732e8d3647dc9d Signed-off-by: Thomas Watson <>
2019-09-11Use HashMap in ManifestElement instead of HashTableI20190911-1805Lars Vogel1-13/+17
Change-Id: I69caf7992433e438c69a1178f38920dcf43b8ff3 Signed-off-by: Lars Vogel <>
2019-09-10Bug 550645 - Cache common keys for CaseInsensitiveDictionaryMapI20190910-1800Thomas Watson2-10/+164
Adds a static cache for common keys that uses a hardcoded switch statement for quick lookup of a common key during keyWrap. This reduces the penalty for non-common keys to be more manageable such that the performance benefit of the common key cache can be realized. Change-Id: I9a4ad5609cd0f07ebdc4a358b341a00232df17d4 Signed-off-by: Thomas Watson <>
2019-09-10Bug 550645 - Performance improvements to CaseInsensitiveDictionaryMapThomas Watson5-21/+239
Improve hashCode calculation to avoid Character.toUpper/LowerCase calls for ASCII chars and make hashCode final for CaseInsensitiveKey Improve put operations by not interning the key on every put. It is now up to the client to intern if necessary. Updated ManifestElement to do that for bundle manifest keys while parsing the bundle manifest. Also improved performance for keys that are not already present in the Map by avoiding a call to remove first. With these optimizations put together we should see ~4x perforamance improvement in the usage of the CaseInsensitiveDictionaryMap by the framework. Change-Id: Ibe21780b2be95cecab994fa2ca2e817d7bab112c Signed-off-by: Thomas Watson <>
2019-09-10Update org.eclipse.osgi version for next release.Thomas Watson6-6/+6
Change-Id: Ie64108ca23c1eb2cc8d6ee6c23f69b7686e1d510 Signed-off-by: Thomas Watson <>

Back to the top