Upgrade to Karaf 4.4.3 (#3252)

* Sync runtime dependencies with Karaf 4.4.3, most notably:
  * Jetty 9.4.50.v20221201
  * Pax Logging 2.2.0
  * Pax Web 8.0.15
* Use OSGi R8 as compile dependency
* Rework Servlets to use Http Whiteboard annotations in favor of proprietary `org.openhab.core.io.http.servlet` classes
* Resolve itest runbundles

Also-by: Jan N. Klug <github@klug.nrw>

Signed-off-by: Wouter Born <github@maindrain.net>
This commit is contained in:
Wouter Born 2023-03-01 13:09:07 +01:00 committed by GitHub
parent 5544945d48
commit ec3af50f11
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 604 additions and 750 deletions

View File

@ -18,7 +18,8 @@
<properties>
<californium.version>2.7.4</californium.version>
<jetty.version>9.4.46.v20220331</jetty.version>
<jetty.version>9.4.50.v20221201</jetty.version>
<pax.web.version>8.0.15</pax.web.version>
<swagger.version>2.1.9</swagger.version>
</properties>
@ -26,17 +27,37 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
<version>7.0.0</version>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.cmpn</artifactId>
<version>7.0.0</version>
<artifactId>org.osgi.service.cm</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.component</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.component.annotations</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.event</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.jaxrs</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>7.0.0</version>
<version>8.1.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
@ -148,6 +169,12 @@
<version>${jetty.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.websocket</groupId>
<artifactId>websocket-server</artifactId>
<version>${jetty.version}</version>
<scope>compile</scope>
</dependency>
<!-- JmDNS -->
<dependency>
@ -201,6 +228,44 @@
</exclusions>
</dependency>
<!-- Pax Web -->
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-api</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-extender-whiteboard</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-jetty</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-jsp</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-runtime</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-spi</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<!-- Serial Communication -->
<dependency>
<groupId>org.vesalainen.comm</groupId>

View File

@ -18,11 +18,10 @@
<properties>
<californium.version>2.7.4</californium.version>
<cxf.version>3.4.5</cxf.version>
<!-- revert version of jackson-databind to ${jackson.version} when versions are in-line again -->
<jackson.version>2.14.1</jackson.version>
<jetty.version>9.4.46.v20220331</jetty.version>
<pax.logging.version>2.0.16</pax.logging.version>
<pax.web.version>7.3.25</pax.web.version>
<jetty.version>9.4.50.v20221201</jetty.version>
<pax.logging.version>2.2.0</pax.logging.version>
<pax.web.version>8.0.15</pax.web.version>
<swagger.version>2.1.9</swagger.version>
</properties>
@ -56,10 +55,16 @@
</dependency>
<!-- Declarative Services -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.component</artifactId>
<version>1.5.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr</artifactId>
<version>2.1.30</version>
<version>2.2.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
@ -73,7 +78,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.configadmin</artifactId>
<version>1.9.24</version>
<version>1.9.26</version>
<scope>compile</scope>
</dependency>
@ -123,7 +128,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.http.servlet-api</artifactId>
<version>1.1.2</version>
<version>1.2.0</version>
<scope>compile</scope>
<exclusions>
<exclusion>
@ -315,7 +320,7 @@
<dependency>
<groupId>org.apache.aries.spifly</groupId>
<artifactId>org.apache.aries.spifly.dynamic.bundle</artifactId>
<version>1.3.2</version>
<version>1.3.4</version>
</dependency>
<!-- END: Slightly modified EnRoute implementation index artifacts -->
@ -331,7 +336,7 @@
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.webconsole.plugins.ds</artifactId>
<version>2.1.0</version>
<version>2.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
@ -574,6 +579,12 @@
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.web</groupId>
<artifactId>pax-web-tomcat-common</artifactId>
<version>${pax.web.version}</version>
<scope>compile</scope>
</dependency>
<!-- Jetty -->
<dependency>
@ -743,13 +754,13 @@
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-bundleutils</artifactId>
<version>4.21</version>
<version>4.22</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-finder</artifactId>
<version>4.21</version>
<version>4.22</version>
<scope>compile</scope>
</dependency>

View File

@ -25,7 +25,9 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -36,47 +38,39 @@ import org.openhab.core.audio.AudioFormat;
import org.openhab.core.audio.AudioHTTPServer;
import org.openhab.core.audio.AudioStream;
import org.openhab.core.audio.FixedLengthAudioStream;
import org.openhab.core.io.http.servlet.OpenHABServlet;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* A servlet that serves audio streams via HTTP.
*
* @author Kai Kreuzer - Initial contribution
*/
@Component(service = { AudioHTTPServer.class, Servlet.class })
@HttpWhiteboardServletName(AudioServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(AudioServlet.SERVLET_PATH + "/*")
@NonNullByDefault
@Component
public class AudioServlet extends OpenHABServlet implements AudioHTTPServer {
public class AudioServlet extends HttpServlet implements AudioHTTPServer {
private static final long serialVersionUID = -3364664035854567854L;
private static final List<String> WAV_MIME_TYPES = List.of("audio/wav", "audio/x-wav", "audio/vnd.wave");
private static final String SERVLET_NAME = "/audio";
static final String SERVLET_PATH = "/audio";
private final Logger logger = LoggerFactory.getLogger(AudioServlet.class);
private final Map<String, AudioStream> oneTimeStreams = new ConcurrentHashMap<>();
private final Map<String, FixedLengthAudioStream> multiTimeStreams = new ConcurrentHashMap<>();
private final Map<String, Long> streamTimeouts = new ConcurrentHashMap<>();
@Activate
public AudioServlet(final @Reference HttpService httpService, final @Reference HttpContext httpContext) {
super(httpService, httpContext);
}
@Activate
protected void activate() {
super.activate(SERVLET_NAME);
}
@Deactivate
protected synchronized void deactivate() {
super.deactivate(SERVLET_NAME);
multiTimeStreams.values().forEach(this::tryClose);
multiTimeStreams.clear();
streamTimeouts.clear();
@ -217,6 +211,6 @@ public class AudioServlet extends OpenHABServlet implements AudioHTTPServer {
}
private String getRelativeURL(String streamId) {
return SERVLET_NAME + "/" + streamId;
return SERVLET_PATH + "/" + streamId;
}
}

View File

@ -65,7 +65,7 @@ public abstract class AbstractAudioServletTest extends JavaTest {
@BeforeEach
public void setupServerAndClient() {
audioServlet = new AudioServlet(httpServiceMock, httpContextMock);
audioServlet = new AudioServlet();
ServletHolder servletHolder = new ServletHolder(audioServlet);

View File

@ -39,7 +39,6 @@ import org.openhab.core.auth.UsernamePasswordCredentials;
import org.openhab.core.i18n.LocaleProvider;
import org.osgi.framework.BundleContext;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -58,7 +57,6 @@ public abstract class AbstractAuthPageServlet extends HttpServlet {
private final Logger logger = LoggerFactory.getLogger(AbstractAuthPageServlet.class);
protected HttpService httpService;
protected UserRegistry userRegistry;
protected AuthenticationProvider authProvider;
protected LocaleProvider localeProvider;
@ -69,10 +67,8 @@ public abstract class AbstractAuthPageServlet extends HttpServlet {
protected String pageTemplate;
public AbstractAuthPageServlet(BundleContext bundleContext, @Reference HttpService httpService,
@Reference UserRegistry userRegistry, @Reference AuthenticationProvider authProvider,
@Reference LocaleProvider localeProvider) {
this.httpService = httpService;
public AbstractAuthPageServlet(BundleContext bundleContext, @Reference UserRegistry userRegistry,
@Reference AuthenticationProvider authProvider, @Reference LocaleProvider localeProvider) {
this.userRegistry = userRegistry;
this.authProvider = authProvider;
this.localeProvider = localeProvider;

View File

@ -17,6 +17,7 @@ import java.util.Map;
import java.util.Set;
import java.util.UUID;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -36,10 +37,9 @@ import org.openhab.core.i18n.LocaleProvider;
import org.osgi.framework.BundleContext;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -55,23 +55,21 @@ import org.slf4j.LoggerFactory;
*
*/
@NonNullByDefault
@Component(immediate = true)
@Component(immediate = true, service = Servlet.class)
@HttpWhiteboardServletName(AuthorizePageServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(AuthorizePageServlet.SERVLET_PATH + "/*")
public class AuthorizePageServlet extends AbstractAuthPageServlet {
public static final String SERVLET_PATH = "/auth";
private static final long serialVersionUID = 5340598701104679843L;
private final Logger logger = LoggerFactory.getLogger(AuthorizePageServlet.class);
@Activate
public AuthorizePageServlet(BundleContext bundleContext, @Reference HttpService httpService,
@Reference UserRegistry userRegistry, @Reference AuthenticationProvider authProvider,
@Reference LocaleProvider localeProvider) {
super(bundleContext, httpService, userRegistry, authProvider, localeProvider);
try {
httpService.registerServlet("/auth", this, null, null);
} catch (NamespaceException | ServletException e) {
logger.error("Error during authorization page registration: {}", e.getMessage());
}
public AuthorizePageServlet(BundleContext bundleContext, @Reference UserRegistry userRegistry,
@Reference AuthenticationProvider authProvider, @Reference LocaleProvider localeProvider) {
super(bundleContext, userRegistry, authProvider, localeProvider);
}
@Override
@ -281,9 +279,4 @@ public class AuthorizePageServlet extends AbstractAuthPageServlet {
private boolean isSignupMode() {
return userRegistry.getAll().isEmpty();
}
@Deactivate
public void deactivate() {
httpService.unregister("/auth");
}
}

View File

@ -15,6 +15,7 @@ package org.openhab.core.io.http.auth.internal;
import java.io.IOException;
import java.util.Map;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -29,12 +30,9 @@ import org.openhab.core.i18n.LocaleProvider;
import org.osgi.framework.BundleContext;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
/**
* A servlet serving a page allowing users to change their password, after confirming their identity by signing in.
@ -43,23 +41,19 @@ import org.slf4j.LoggerFactory;
*
*/
@NonNullByDefault
@Component(immediate = true)
@Component(immediate = true, service = Servlet.class)
@HttpWhiteboardServletName(ChangePasswordPageServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(ChangePasswordPageServlet.SERVLET_PATH + "/*")
public class ChangePasswordPageServlet extends AbstractAuthPageServlet {
public static final String SERVLET_PATH = "/changePassword";
private static final long serialVersionUID = 5340598701104679843L;
private final Logger logger = LoggerFactory.getLogger(ChangePasswordPageServlet.class);
@Activate
public ChangePasswordPageServlet(BundleContext bundleContext, @Reference HttpService httpService,
@Reference UserRegistry userRegistry, @Reference AuthenticationProvider authProvider,
@Reference LocaleProvider localeProvider) {
super(bundleContext, httpService, userRegistry, authProvider, localeProvider);
try {
httpService.registerServlet("/changePassword", this, null, null);
} catch (NamespaceException | ServletException e) {
logger.error("Error during change password page registration: {}", e.getMessage());
}
public ChangePasswordPageServlet(BundleContext bundleContext, @Reference UserRegistry userRegistry,
@Reference AuthenticationProvider authProvider, @Reference LocaleProvider localeProvider) {
super(bundleContext, userRegistry, authProvider, localeProvider);
}
@Override
@ -162,9 +156,4 @@ public class ChangePasswordPageServlet extends AbstractAuthPageServlet {
return hiddenFormFields;
}
@Deactivate
public void deactivate() {
httpService.unregister("/changePassword");
}
}

View File

@ -15,6 +15,7 @@ package org.openhab.core.io.http.auth.internal;
import java.io.IOException;
import java.util.Map;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -29,12 +30,9 @@ import org.openhab.core.i18n.LocaleProvider;
import org.osgi.framework.BundleContext;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
/**
* A servlet serving a page allowing users to create a new API token, after confirming their identity by signing in.
@ -43,23 +41,18 @@ import org.slf4j.LoggerFactory;
*
*/
@NonNullByDefault
@Component(immediate = true)
@Component(immediate = true, service = Servlet.class)
@HttpWhiteboardServletName(CreateAPITokenPageServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(CreateAPITokenPageServlet.SERVLET_PATH + "/*")
public class CreateAPITokenPageServlet extends AbstractAuthPageServlet {
private static final long serialVersionUID = 5340598701104679843L;
private final Logger logger = LoggerFactory.getLogger(CreateAPITokenPageServlet.class);
public static final String SERVLET_PATH = "/createApiToken";
@Activate
public CreateAPITokenPageServlet(BundleContext bundleContext, @Reference HttpService httpService,
@Reference UserRegistry userRegistry, @Reference AuthenticationProvider authProvider,
@Reference LocaleProvider localeProvider) {
super(bundleContext, httpService, userRegistry, authProvider, localeProvider);
try {
httpService.registerServlet("/createApiToken", this, null, null);
} catch (NamespaceException | ServletException e) {
logger.error("Error during create API token page registration: {}", e.getMessage());
}
public CreateAPITokenPageServlet(BundleContext bundleContext, @Reference UserRegistry userRegistry,
@Reference AuthenticationProvider authProvider, @Reference LocaleProvider localeProvider) {
super(bundleContext, userRegistry, authProvider, localeProvider);
}
@Override
@ -177,9 +170,4 @@ public class CreateAPITokenPageServlet extends AbstractAuthPageServlet {
return hiddenFormFields;
}
@Deactivate
public void deactivate() {
httpService.unregister("/createApiToken");
}
}

View File

@ -31,6 +31,7 @@ import org.osgi.service.component.annotations.Reference;
import org.osgi.service.component.annotations.ReferenceCardinality;
import org.osgi.service.component.annotations.ReferencePolicy;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardContext;
/**
* Default HTTP context implementation which groups all openHAB related HTTP elements into one logical application.
@ -41,8 +42,8 @@ import org.osgi.service.http.HttpContext;
*
* @author Łukasz Dywicki - Initial contribution
*/
@Component(service = { HttpContext.class, WrappingHttpContext.class }, property = {
"httpContext.id:String=oh-dfl-http-ctx" })
@Component(service = { HttpContext.class, WrappingHttpContext.class })
@HttpWhiteboardContext(path = "/", name = "oh-dfl-http-ctx")
public class OpenHABHttpContext implements WrappingHttpContext {
/**

View File

@ -1,67 +0,0 @@
/**
* Copyright (c) 2010-2023 Contributors to the openHAB project
*
* See the NOTICE file(s) distributed with this work for additional
* information.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.openhab.core.io.http.servlet;
import java.util.Hashtable;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Base class for HTTP servlets.
*
* @author Łukasz Dywicki - Initial contribution
*/
@NonNullByDefault
public abstract class BaseOpenHABServlet extends HttpServlet {
private static final long serialVersionUID = 6020752826735599455L;
/**
* Logger bound to child class.
*/
protected final Logger logger = LoggerFactory.getLogger(BaseOpenHABServlet.class);
/**
* Http service.
*/
protected final HttpService httpService;
public BaseOpenHABServlet(HttpService httpService) {
this.httpService = httpService;
}
protected void activate(String alias, HttpContext httpContext) {
try {
logger.debug("Starting up {} at {}", getClass().getSimpleName(), alias);
Hashtable<String, String> props = new Hashtable<>();
httpService.registerServlet(alias, this, props, httpContext);
} catch (NamespaceException e) {
logger.error("Error during servlet registration - alias {} already in use", alias, e);
} catch (ServletException e) {
logger.error("Error during servlet registration", e);
}
}
protected void deactivate(String alias) {
httpService.unregister(alias);
}
}

View File

@ -1,48 +0,0 @@
/**
* Copyright (c) 2010-2023 Contributors to the openHAB project
*
* See the NOTICE file(s) distributed with this work for additional
* information.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.openhab.core.io.http.servlet;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.openhab.core.io.http.HttpContextFactoryService;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleContext;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
/**
* Base class for servlets which host resources using framework bundles.
*
* @author Łukasz Dywicki - Initial contribution
*/
@NonNullByDefault
public abstract class OpenHABBundleServlet extends BaseOpenHABServlet {
protected final HttpContextFactoryService httpContextFactoryService;
public OpenHABBundleServlet(HttpService httpService, HttpContextFactoryService httpContextFactoryService) {
super(httpService);
this.httpContextFactoryService = httpContextFactoryService;
}
protected void activate(String alias, Bundle bundle) {
super.activate(alias, createHttpContext(bundle));
}
protected void activate(String alias, BundleContext bundleContext) {
this.activate(alias, bundleContext.getBundle());
}
protected final HttpContext createHttpContext(Bundle bundle) {
return httpContextFactoryService.createDefaultHttpContext(bundle);
}
}

View File

@ -1,42 +0,0 @@
/**
* Copyright (c) 2010-2023 Contributors to the openHAB project
*
* See the NOTICE file(s) distributed with this work for additional
* information.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.openhab.core.io.http.servlet;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
/**
* Base class for HTTP servlets which share certain {@link HttpContext} instance.
*
* @author Łukasz Dywicki - Initial contribution
*/
@NonNullByDefault
public abstract class OpenHABServlet extends BaseOpenHABServlet {
private static final long serialVersionUID = 6854521240046714164L;
/**
* Http context.
*/
protected final HttpContext httpContext;
public OpenHABServlet(HttpService httpService, HttpContext httpContext) {
super(httpService);
this.httpContext = httpContext;
}
protected void activate(String alias) {
super.activate(alias, httpContext);
}
}

View File

@ -18,10 +18,12 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.CopyOnWriteArraySet;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.jetty.websocket.server.WebSocketServerFactory;
import org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest;
import org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse;
import org.eclipse.jetty.websocket.servlet.WebSocketCreator;
@ -41,10 +43,10 @@ import org.openhab.core.events.EventSubscriber;
import org.openhab.core.items.ItemRegistry;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -55,35 +57,31 @@ import com.google.gson.Gson;
*
* @author Jan N. Klug - Initial contribution
*/
@Component(immediate = true, service = EventSubscriber.class)
@NonNullByDefault
@HttpWhiteboardServletName(EventWebSocketServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(EventWebSocketServlet.SERVLET_PATH + "/*")
@Component(immediate = true, service = { EventSubscriber.class, Servlet.class })
public class EventWebSocketServlet extends WebSocketServlet implements EventSubscriber {
private static final long serialVersionUID = 1L;
public static final String SERVLET_PATH = "/ws";
private final Gson gson = new Gson();
private final HttpService httpService;
private final UserRegistry userRegistry;
private final EventPublisher eventPublisher;
private final ItemEventUtility itemEventUtility;
private final Set<EventWebSocket> webSockets = new CopyOnWriteArraySet<>();
@SuppressWarnings("unused")
private @Nullable WebSocketServerFactory importNeeded;
@Activate
public EventWebSocketServlet(@Reference HttpService httpService, @Reference UserRegistry userRegistry,
@Reference EventPublisher eventPublisher, @Reference ItemRegistry itemRegistry)
throws ServletException, NamespaceException {
this.httpService = httpService;
public EventWebSocketServlet(@Reference UserRegistry userRegistry, @Reference EventPublisher eventPublisher,
@Reference ItemRegistry itemRegistry) throws ServletException, NamespaceException {
this.userRegistry = userRegistry;
this.eventPublisher = eventPublisher;
itemEventUtility = new ItemEventUtility(gson, itemRegistry);
httpService.registerServlet("/ws", this, null, null);
}
@Deactivate
public void deactivate() {
httpService.unregister("/ws");
}
@Override

View File

@ -19,24 +19,25 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.core.io.http.servlet.OpenHABServlet;
import org.openhab.core.ui.icon.IconProvider;
import org.openhab.core.ui.icon.IconSet.Format;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Modified;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.component.annotations.ReferenceCardinality;
import org.osgi.service.component.annotations.ReferencePolicy;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletAsyncSupported;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -45,15 +46,18 @@ import org.slf4j.LoggerFactory;
*
* @author Kai Kreuzer - Initial contribution
*/
@Component
@Component(service = Servlet.class)
@HttpWhiteboardServletAsyncSupported(asyncSupported = true)
@HttpWhiteboardServletName(IconServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(IconServlet.SERVLET_PATH + "/*")
@NonNullByDefault
public class IconServlet extends OpenHABServlet {
public class IconServlet extends HttpServlet {
private static final long serialVersionUID = 2880642275858634578L;
private final Logger logger = LoggerFactory.getLogger(IconServlet.class);
private static final String SERVLET_NAME = "/icon";
static final String SERVLET_PATH = "/icon";
static final String PARAM_ICONSET = "iconset";
static final String PARAM_FORMAT = "format";
static final String PARAM_ANY_FORMAT = "anyFormat";
@ -65,11 +69,6 @@ public class IconServlet extends OpenHABServlet {
private final List<IconProvider> iconProvider = new ArrayList<>();
@Activate
public IconServlet(final @Reference HttpService httpService, final @Reference HttpContext httpContext) {
super(httpService, httpContext);
}
@Reference(cardinality = ReferenceCardinality.AT_LEAST_ONE, policy = ReferencePolicy.DYNAMIC)
public void addIconProvider(IconProvider iconProvider) {
this.iconProvider.add(iconProvider);
@ -81,17 +80,10 @@ public class IconServlet extends OpenHABServlet {
@Activate
protected void activate(Map<String, Object> config) {
super.activate(SERVLET_NAME);
startupTime = System.currentTimeMillis();
modified(config);
}
@Deactivate
protected void deactivate() {
super.deactivate(SERVLET_NAME);
}
@Modified
protected void modified(Map<String, Object> config) {
Object iconSetId = config.get("default");
@ -109,7 +101,7 @@ public class IconServlet extends OpenHABServlet {
String category = getCategory(req);
if (category.isEmpty()) {
logger.debug("URI must start with '{}' but is '{}'", SERVLET_NAME, req.getRequestURI());
logger.debug("URI must start with '{}' but is '{}'", SERVLET_PATH, req.getRequestURI());
resp.sendError(400);
return;
}

View File

@ -36,8 +36,6 @@ import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
import org.openhab.core.ui.icon.IconProvider;
import org.openhab.core.ui.icon.IconSet.Format;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
/**
* Tests for {@link IconServlet}.
@ -49,7 +47,7 @@ import org.osgi.service.http.HttpService;
@NonNullByDefault
public class IconServletTest {
private class ByteArrayServletOutputStream extends ServletOutputStream {
private static class ByteArrayServletOutputStream extends ServletOutputStream {
private ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
@ -74,14 +72,11 @@ public class IconServletTest {
public void reset() {
outputStream.reset();
}
};
}
private @NonNullByDefault({}) IconServlet servlet;
private ByteArrayServletOutputStream responseOutputStream = new ByteArrayServletOutputStream();
private @Mock @NonNullByDefault({}) HttpContext httpContextMock;
private @Mock @NonNullByDefault({}) HttpService httpServiceMock;
private @Mock @NonNullByDefault({}) HttpServletRequest requestMock;
private @Mock @NonNullByDefault({}) HttpServletResponse responseMock;
@ -90,7 +85,7 @@ public class IconServletTest {
@BeforeEach
public void before() throws IOException {
servlet = new IconServlet(httpServiceMock, httpContextMock);
servlet = new IconServlet();
responseOutputStream.reset();
}

View File

@ -27,8 +27,10 @@ import java.util.concurrent.ConcurrentHashMap;
import javax.imageio.ImageIO;
import javax.imageio.stream.ImageOutputStream;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -36,19 +38,19 @@ import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.openhab.core.config.core.ConfigurableService;
import org.openhab.core.i18n.TimeZoneProvider;
import org.openhab.core.io.http.servlet.OpenHABServlet;
import org.openhab.core.items.ItemNotFoundException;
import org.openhab.core.ui.chart.ChartProvider;
import org.osgi.framework.Constants;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Modified;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.component.annotations.ReferenceCardinality;
import org.osgi.service.component.annotations.ReferencePolicy;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* This servlet generates time-series charts for a given set of items. It
@ -68,11 +70,13 @@ import org.osgi.service.http.HttpService;
* @author Chris Jackson - Initial contribution
* @author Holger Reichert - Support for themes, DPI, legend hiding
*/
@NonNullByDefault
@Component(immediate = true, service = ChartServlet.class, configurationPid = "org.openhab.chart", //
@Component(immediate = true, service = { ChartServlet.class, Servlet.class }, configurationPid = "org.openhab.chart", //
property = Constants.SERVICE_PID + "=org.openhab.chart")
@ConfigurableService(category = "system", label = "Charts", description_uri = ChartServlet.CONFIG_URI)
public class ChartServlet extends OpenHABServlet {
@HttpWhiteboardServletName(ChartServlet.SERVLET_PATH)
@HttpWhiteboardServletPattern(ChartServlet.SERVLET_PATH + "/*")
@NonNullByDefault
public class ChartServlet extends HttpServlet {
private static final long serialVersionUID = 7700873790924746422L;
@ -82,6 +86,8 @@ public class ChartServlet extends OpenHABServlet {
private static final String DATE_FORMAT = "yyyyMMddHHmm";
private static final DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern(DATE_FORMAT);
private final Logger logger = LoggerFactory.getLogger(ChartServlet.class);
private final TimeZoneProvider timeZoneProvider;
private String providerName = "default";
@ -91,7 +97,7 @@ public class ChartServlet extends OpenHABServlet {
private int maxWidth = -1;
// The URI of this servlet
public static final String SERVLET_NAME = "/chart";
public static final String SERVLET_PATH = "/chart";
private static final Duration DEFAULT_PERIOD = Duration.ofDays(1);
@ -108,9 +114,7 @@ public class ChartServlet extends OpenHABServlet {
protected static final Map<String, ChartProvider> CHART_PROVIDERS = new ConcurrentHashMap<>();
@Activate
public ChartServlet(final @Reference HttpService httpService, final @Reference HttpContext httpContext,
final @Reference TimeZoneProvider timeZoneProvider) {
super(httpService, httpContext);
public ChartServlet(final @Reference TimeZoneProvider timeZoneProvider) {
this.timeZoneProvider = timeZoneProvider;
}
@ -129,15 +133,9 @@ public class ChartServlet extends OpenHABServlet {
@Activate
protected void activate(Map<String, Object> config) {
super.activate(SERVLET_NAME);
applyConfig(config);
}
@Deactivate
protected void deactivate() {
super.deactivate(SERVLET_NAME);
}
@Modified
protected void modified(@Nullable Map<String, Object> config) {
applyConfig(config);

View File

@ -24,7 +24,6 @@ import java.util.Map;
import java.util.concurrent.CopyOnWriteArrayList;
import javax.servlet.Servlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
@ -44,13 +43,11 @@ import org.openhab.core.types.State;
import org.openhab.core.ui.items.ItemUIRegistry;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Deactivate;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.component.annotations.ReferenceCardinality;
import org.osgi.service.component.annotations.ReferencePolicy;
import org.osgi.service.http.HttpContext;
import org.osgi.service.http.HttpService;
import org.osgi.service.http.NamespaceException;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletName;
import org.osgi.service.http.whiteboard.propertytypes.HttpWhiteboardServletPattern;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -81,6 +78,8 @@ import org.slf4j.LoggerFactory;
*/
@NonNullByDefault
@Component(immediate = true, property = { "service.pid=org.openhab.proxy" })
@HttpWhiteboardServletName(ProxyServletService.PROXY_ALIAS)
@HttpWhiteboardServletPattern(ProxyServletService.PROXY_ALIAS + "/*")
public class ProxyServletService extends HttpServlet {
/** the alias for this servlet */
@ -96,14 +95,18 @@ public class ProxyServletService extends HttpServlet {
private @Nullable Servlet impl;
protected final HttpService httpService;
protected final ItemUIRegistry itemUIRegistry;
protected final List<SitemapProvider> sitemapProviders = new CopyOnWriteArrayList<>();
@Activate
public ProxyServletService(@Reference ItemUIRegistry itemUIRegistry, @Reference HttpService httpService) {
public ProxyServletService(@Reference ItemUIRegistry itemUIRegistry, Map<String, Object> config) {
this.itemUIRegistry = itemUIRegistry;
this.httpService = httpService;
Servlet servlet = getImpl();
logger.debug("Starting up '{}' servlet at /{}", servlet.getServletInfo(), PROXY_ALIAS);
Hashtable<String, @Nullable String> props = propsFromConfig(config);
}
@Reference(cardinality = ReferenceCardinality.MULTIPLE, policy = ReferencePolicy.DYNAMIC)
@ -155,38 +158,6 @@ public class ProxyServletService extends HttpServlet {
return props;
}
@Activate
protected void activate(Map<String, Object> config) {
try {
Servlet servlet = getImpl();
logger.debug("Starting up '{}' servlet at /{}", servlet.getServletInfo(), PROXY_ALIAS);
Hashtable<String, @Nullable String> props = propsFromConfig(config);
httpService.registerServlet("/" + PROXY_ALIAS, servlet, props, createHttpContext());
} catch (NamespaceException | ServletException e) {
logger.error("Error during servlet startup: {}", e.getMessage());
}
}
@Deactivate
protected void deactivate() {
try {
httpService.unregister("/" + PROXY_ALIAS);
} catch (IllegalArgumentException e) {
// ignore, had not been registered before
}
}
/**
* Creates a {@link HttpContext}
*
* @return a {@link HttpContext}
*/
protected HttpContext createHttpContext() {
return httpService.createDefaultHttpContext();
}
/**
* Encapsulate the HTTP status code and message in an exception.
*/

View File

@ -18,6 +18,7 @@ import static org.mockito.Mockito.*;
import java.net.URI;
import java.util.Base64;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
@ -84,7 +85,7 @@ public class ProxyServletServiceTest {
@BeforeEach
public void setUp() {
service = new ProxyServletService(itemUIRegistryMock, httpServiceMock);
service = new ProxyServletService(itemUIRegistryMock, Map.of());
service.sitemapProviders.add(sitemapProviderMock);
sitemapMock = mock(Sitemap.class);

View File

@ -79,14 +79,16 @@ public class ThreadPoolManager {
private static Map<String, Integer> configs = new ConcurrentHashMap<>();
private static final Set<String> OSGI_PROPERTY_NAMES = Set.of(Constants.SERVICE_PID,
ComponentConstants.COMPONENT_ID, ComponentConstants.COMPONENT_NAME, "osgi.ds.satisfying.condition.target");
protected void activate(Map<String, Object> properties) {
modified(properties);
}
protected void modified(Map<String, Object> properties) {
for (Entry<String, Object> entry : properties.entrySet()) {
if (Constants.SERVICE_PID.equals(entry.getKey()) || ComponentConstants.COMPONENT_ID.equals(entry.getKey())
|| ComponentConstants.COMPONENT_NAME.equals(entry.getKey())) {
if (OSGI_PROPERTY_NAMES.contains(entry.getKey())) {
continue;
}
String poolName = entry.getKey();

View File

@ -16,7 +16,8 @@
<description>openHAB Core Features</description>
<properties>
<jetty.version>9.4.46.v20220331</jetty.version>
<jetty.version>9.4.50.v20221201</jetty.version>
<jna.version>5.12.1</jna.version>
</properties>
<build>

View File

@ -180,6 +180,8 @@
<feature name="openhab-core-io-websocket" version="${project.version}">
<feature>openhab-core-base</feature>
<bundle>mvn:org.eclipse.jetty.websocket/websocket-servlet/${jetty.version}</bundle>
<bundle>mvn:org.eclipse.jetty.websocket/websocket-server/${jetty.version}</bundle>
<bundle>mvn:org.openhab.core.bundles/org.openhab.core.io.websocket/${project.version}</bundle>
</feature>

View File

@ -15,7 +15,7 @@
<name>openHAB Core :: Features :: Karaf :: Target Platform</name>
<properties>
<jetty.version>9.4.46.v20220331</jetty.version>
<jetty.version>9.4.50.v20221201</jetty.version>
<jna.version>5.12.1</jna.version>
</properties>

View File

@ -21,7 +21,7 @@
<feature>scr</feature>
<feature>eventadmin</feature>
<feature>log</feature>
<feature>pax-web-jetty-extras</feature>
<!-- Apache Commons -->
<bundle dependency="true">mvn:org.apache.commons/commons-lang3/3.12.0</bundle>
@ -97,14 +97,25 @@
<bundle dependency="true">mvn:org.yaml/snakeyaml/1.33</bundle>
</feature>
<feature name="openhab.tp-asm" description="ASM bundles" version="${project.version}">
<capability>openhab.tp;feature=asm;version=9.2.0</capability>
<bundle dependency="true">mvn:org.ow2.asm/asm/9.2</bundle>
<bundle dependency="true">mvn:org.ow2.asm/asm-analysis/9.2</bundle>
<bundle dependency="true">mvn:org.ow2.asm/asm-commons/9.2</bundle>
<bundle dependency="true">mvn:org.ow2.asm/asm-util/9.2</bundle>
<bundle dependency="true">mvn:org.ow2.asm/asm-tree/9.2</bundle>
</feature>
<feature name="openhab.tp-jax-rs-whiteboard" description="Aries JAX-RS Whiteboard" version="${project.version}">
<capability>openhab.tp;feature=jax-rs-whiteboard;version=2.0.0</capability>
<feature>http-whiteboard</feature>
<feature dependency="true">openhab.tp-asm</feature>
<feature dependency="true">openhab.tp-cxf</feature>
<feature dependency="true">openhab.tp-jaxb</feature>
<bundle dependency="true">mvn:org.osgi/org.osgi.util.function/1.1.0</bundle>
<bundle dependency="true">mvn:org.osgi/org.osgi.util.promise/1.1.1</bundle>
<bundle dependency="true">mvn:org.osgi/org.osgi.service.jaxrs/1.0.0</bundle>
<bundle dependency="true">mvn:org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle/1.3.4</bundle>
<bundle>mvn:org.apache.aries.component-dsl/org.apache.aries.component-dsl.component-dsl/1.2.2</bundle>
<bundle>mvn:org.apache.aries.jax.rs/org.apache.aries.jax.rs.whiteboard/2.0.0</bundle>
</feature>

View File

@ -2,4 +2,4 @@
# If we would like to use a storage at all, we will use the "volatile" storage.
-runblacklist.itest-common: \
bnd.identity;id='org.openhab.core.storage.json'
bnd.identity;id='org.openhab.core.storage.json'

View File

@ -13,7 +13,6 @@ Fragment-Host: org.openhab.core.addon
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -36,19 +35,9 @@ Fragment-Host: org.openhab.core.addon
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,4 +48,16 @@ Fragment-Host: org.openhab.core.addon
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.openhab.core.addon;version='[4.0.0,4.0.1)',\
org.openhab.core.addon.tests;version='[4.0.0,4.0.1)'
org.openhab.core.addon.tests;version='[4.0.0,4.0.1)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.auth.oauth2client
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -36,25 +35,10 @@ Fragment-Host: org.openhab.core.auth.oauth2client
net.bytebuddy.byte-buddy-agent;version='[1.12.1,1.12.2)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.api;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.common;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -64,4 +48,21 @@ Fragment-Host: org.openhab.core.auth.oauth2client
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)'
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.api;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.common;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.automation
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -34,17 +33,8 @@ Fragment-Host: org.openhab.core.automation
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,6 +49,17 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.automation
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -34,17 +33,8 @@ Fragment-Host: org.openhab.core.automation
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,6 +49,17 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.automation.module.script
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -34,17 +33,8 @@ Fragment-Host: org.openhab.core.automation.module.script
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -61,6 +51,17 @@ Fragment-Host: org.openhab.core.automation.module.script
org.openhab.core.transform;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.automation
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -34,17 +33,8 @@ Fragment-Host: org.openhab.core.automation
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,6 +49,17 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.automation
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -34,17 +33,8 @@ Fragment-Host: org.openhab.core.automation
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,6 +49,17 @@ Fragment-Host: org.openhab.core.automation
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -10,7 +10,6 @@ Fragment-Host: org.openhab.core.config.core
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -37,18 +36,9 @@ Fragment-Host: org.openhab.core.config.core
net.bytebuddy.byte-buddy-agent;version='[1.12.1,1.12.2)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -59,6 +49,17 @@ Fragment-Host: org.openhab.core.config.core
org.openhab.core.test;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
xstream;version='[1.4.19,1.4.20)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.config.discovery.mdns
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -32,26 +31,15 @@ Fragment-Host: org.openhab.core.config.discovery.mdns
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
net.bytebuddy.byte-buddy;version='[1.12.1,1.12.2)',\
net.bytebuddy.byte-buddy-agent;version='[1.12.1,1.12.2)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
javax.jmdns;version='[3.5.8,3.5.9)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -65,4 +53,17 @@ Fragment-Host: org.openhab.core.config.discovery.mdns
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -10,7 +10,6 @@ Fragment-Host: org.openhab.core.config.discovery
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -38,22 +37,11 @@ Fragment-Host: org.openhab.core.config.discovery
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -64,4 +52,17 @@ Fragment-Host: org.openhab.core.config.discovery
org.openhab.core.test;version='[4.0.0,4.0.1)',\
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)'
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)'

View File

@ -12,7 +12,6 @@ Fragment-Host: org.openhab.core.config.discovery.usbserial.linuxsysfs
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.hamcrest;version='[2.2.0,2.2.1)',\
org.opentest4j;version='[1.2.0,1.2.1)',\
com.sun.xml.bind.jaxb-osgi;version='[2.3.3,2.3.4)',\
@ -37,21 +36,10 @@ Fragment-Host: org.openhab.core.config.discovery.usbserial.linuxsysfs
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -65,4 +53,17 @@ Fragment-Host: org.openhab.core.config.discovery.usbserial.linuxsysfs
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,9 +9,9 @@ Fragment-Host: org.openhab.core.config.discovery.usbserial
# additionally blacklist the linuxsysfs bundle to ensure our one is preferred.
Provide-Capability: \
osgi.service;objectClass:List<String>="org.openhab.core.config.discovery.usbserial.UsbSerialDiscovery"
osgi.service;objectClass:List<String>="org.openhab.core.config.discovery.usbserial.UsbSerialDiscovery"
-runblacklist: \
bnd.identity;id='org.openhab.core.config.discovery.usbserial.linuxsysfs'
bnd.identity;id='org.openhab.core.config.discovery.usbserial.linuxsysfs'
-runrequires: bnd.identity;id='org.openhab.core.config.discovery.usbserial.tests'
@ -19,7 +19,6 @@ Provide-Capability: \
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -46,21 +45,10 @@ Provide-Capability: \
net.bytebuddy.byte-buddy-agent;version='[1.12.1,1.12.2)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -73,4 +61,17 @@ Provide-Capability: \
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.config.dispatch
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -32,21 +31,10 @@ Fragment-Host: org.openhab.core.config.dispatch
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
@ -54,4 +42,17 @@ Fragment-Host: org.openhab.core.config.dispatch
org.openhab.core.config.dispatch.tests;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)'
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)'

View File

@ -14,7 +14,6 @@ feature.openhab-config: \
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -39,18 +38,9 @@ feature.openhab-config: \
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
xstream;version='[1.4.19,1.4.20)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -62,5 +52,16 @@ feature.openhab-config: \
org.openhab.core.test;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)'

View File

@ -7,8 +7,8 @@ Fragment-Host: org.openhab.core.io.rest.core
bnd.identity;id='org.openhab.core.io.rest.core.tests'
-runblacklist: \
bnd.identity;id='jakarta.ws.rs-api'
bnd.identity;id='jakarta.ws.rs-api'
#
# done
#
@ -16,7 +16,6 @@ Fragment-Host: org.openhab.core.io.rest.core
com.jayway.jsonpath.json-path;version='[2.4.0,2.4.1)',\
net.minidev.accessors-smart;version='[1.2.0,1.2.1)',\
net.minidev.json-smart;version='[2.3.0,2.3.1)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.objectweb.asm;version='[5.0.4,5.0.5)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -29,15 +28,10 @@ Fragment-Host: org.openhab.core.io.rest.core
org.apache.servicemix.specs.activation-api-1.2.1;version='[1.2.1,1.2.2)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
org.apache.aries.javax.jax.rs-api;version='[1.0.1,1.0.2)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.xml.soap-api;version='[1.4.2,1.4.3)',\
jakarta.xml.ws-api;version='[2.3.3,2.3.4)',\
org.apache.aries.component-dsl.component-dsl;version='[1.2.2,1.2.3)',\
org.apache.aries.spifly.dynamic.bundle;version='[1.3.2,1.3.3)',\
org.apache.ws.xmlschema.core;version='[2.2.5,2.2.6)',\
org.objectweb.asm.tree.analysis;version='[9.0.0,9.0.1)',\
org.objectweb.asm.util;version='[9.0.0,9.0.1)',\
stax2-api;version='[4.2.1,4.2.2)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
@ -64,28 +58,11 @@ Fragment-Host: org.openhab.core.io.rest.core
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.aries.jax.rs.whiteboard;version='[2.0.0,2.0.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
junit-jupiter-params;version='[5.8.1,5.8.2)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.objectweb.asm;version='[9.4.0,9.4.1)',\
@ -105,4 +82,29 @@ Fragment-Host: org.openhab.core.io.rest.core
com.sun.jna;version='[5.12.1,5.12.2)',\
com.fasterxml.woodstox.woodstox-core;version='[6.4.0,6.4.1)',\
xstream;version='[1.4.19,1.4.20)',\
org.openhab.core.addon;version='[4.0.0,4.0.1)'
org.apache.aries.spifly.dynamic.bundle;version='[1.3.4,1.3.5)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.objectweb.asm.commons;version='[9.2.0,9.2.1)',\
org.objectweb.asm.tree;version='[9.2.0,9.2.1)',\
org.objectweb.asm.tree.analysis;version='[9.2.0,9.2.1)',\
org.objectweb.asm.util;version='[9.2.0,9.2.1)',\
org.openhab.core.addon;version='[4.0.0,4.0.1)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -4,8 +4,8 @@ Bundle-SymbolicName: ${project.artifactId}
Fragment-Host: org.openhab.core.model.item
-runrequires: \
bnd.identity;id='org.openhab.core.model.item.tests',\
bnd.identity;id='org.openhab.core.model.item.runtime'
bnd.identity;id='org.openhab.core.model.item.tests',\
bnd.identity;id='org.openhab.core.model.item.runtime'
#
# done
@ -16,7 +16,6 @@ Fragment-Host: org.openhab.core.model.item
org.glassfish.hk2.external.javax.inject;version='[2.4.0,2.4.1)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
com.google.guava.failureaccess;version='[1.0.1,1.0.2)',\
org.hamcrest;version='[2.2.0,2.2.1)',\
@ -31,12 +30,9 @@ Fragment-Host: org.openhab.core.model.item
org.eclipse.emf.ecore.xmi;version='[2.16.0,2.16.1)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
com.google.guava;version='[30.1.0,30.1.1)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
javax.measure.unit-api;version='[2.1.2,2.1.3)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
tech.units.indriya;version='[2.1.2,2.1.3)',\
uom-lib-common;version='[2.1.0,2.1.1)',\
si-units;version='[2.1.0,2.1.1)',\
@ -46,35 +42,14 @@ Fragment-Host: org.openhab.core.model.item
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.inject;version='[5.0.1,5.0.2)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.api;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.common;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-runtime;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
io.github.classgraph;version='[4.8.149,4.8.150)',\
org.apache.log4j;version='[1.2.19,1.2.20)',\
org.eclipse.equinox.common;version='[3.16.200,3.16.201)',\
org.eclipse.xtend.lib;version='[2.29.0,2.29.1)',\
org.eclipse.xtend.lib.macro;version='[2.29.0,2.29.1)',\
@ -92,7 +67,6 @@ Fragment-Host: org.openhab.core.model.item
org.openhab.core.config.core;version='[4.0.0,4.0.1)',\
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.http;version='[4.0.0,4.0.1)',\
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.model.core;version='[4.0.0,4.0.1)',\
org.openhab.core.model.item;version='[4.0.0,4.0.1)',\
@ -112,6 +86,28 @@ Fragment-Host: org.openhab.core.model.item
org.openhab.core.voice;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
xstream;version='[1.4.19,1.4.20)',\
org.openhab.core.model.thing.runtime;version='[4.0.0,4.0.1)'
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.api;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.common;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -4,8 +4,11 @@ Bundle-SymbolicName: ${project.artifactId}
Fragment-Host: org.openhab.core.model.rule.runtime
-runrequires: \
bnd.identity;id='org.openhab.core.model.rule.tests',\
bnd.identity;id='org.openhab.core.model.rule.runtime'
bnd.identity;id='org.openhab.core.model.rule.tests',\
bnd.identity;id='org.openhab.core.model.rule.runtime'
-runblacklist: \
bnd.identity;id='jakarta.activation-api'
#
# done
@ -18,7 +21,6 @@ Fragment-Host: org.openhab.core.model.rule.runtime
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
com.google.guava.failureaccess;version='[1.0.1,1.0.2)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
com.google.guava.failureaccess;version='[1.0.1,1.0.2)',\
org.hamcrest;version='[2.2.0,2.2.1)',\
org.opentest4j;version='[1.2.0,1.2.1)',\
@ -32,12 +34,9 @@ Fragment-Host: org.openhab.core.model.rule.runtime
org.eclipse.emf.ecore.xmi;version='[2.16.0,2.16.1)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
com.google.guava;version='[30.1.0,30.1.1)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
javax.measure.unit-api;version='[2.1.2,2.1.3)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
tech.units.indriya;version='[2.1.2,2.1.3)',\
uom-lib-common;version='[2.1.0,2.1.1)',\
si-units;version='[2.1.0,2.1.1)',\
@ -47,35 +46,14 @@ Fragment-Host: org.openhab.core.model.rule.runtime
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.inject;version='[5.0.1,5.0.2)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.api;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.common;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-runtime;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
io.github.classgraph;version='[4.8.149,4.8.150)',\
org.apache.log4j;version='[1.2.19,1.2.20)',\
org.eclipse.equinox.common;version='[3.16.200,3.16.201)',\
org.eclipse.xtend.lib;version='[2.29.0,2.29.1)',\
org.eclipse.xtend.lib.macro;version='[2.29.0,2.29.1)',\
@ -93,7 +71,6 @@ Fragment-Host: org.openhab.core.model.rule.runtime
org.openhab.core.config.core;version='[4.0.0,4.0.1)',\
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.http;version='[4.0.0,4.0.1)',\
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.model.core;version='[4.0.0,4.0.1)',\
org.openhab.core.model.item;version='[4.0.0,4.0.1)',\
@ -113,7 +90,28 @@ Fragment-Host: org.openhab.core.model.rule.runtime
org.openhab.core.voice;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
xstream;version='[1.4.19,1.4.20)',\
org.openhab.core.model.thing.runtime;version='[4.0.0,4.0.1)'
-runblacklist: bnd.identity;id='jakarta.activation-api'
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.api;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.common;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -15,7 +15,6 @@ Fragment-Host: org.openhab.core.model.script
#
-runbundles: \
org.antlr.runtime;version='[3.2.0,3.2.1)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.glassfish.hk2.external.aopalliance-repackaged;version='[2.4.0,2.4.1)',\
org.glassfish.hk2.external.javax.inject;version='[2.4.0,2.4.1)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
@ -34,8 +33,6 @@ Fragment-Host: org.openhab.core.model.script
org.eclipse.emf.ecore.xmi;version='[2.16.0,2.16.1)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
com.google.guava;version='[30.1.0,30.1.1)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
javax.measure.unit-api;version='[2.1.2,2.1.3)',\
@ -48,36 +45,14 @@ Fragment-Host: org.openhab.core.model.script
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
com.google.inject;version='[5.0.1,5.0.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.api;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.common;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-runtime;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
io.github.classgraph;version='[4.8.149,4.8.150)',\
org.apache.log4j;version='[1.2.19,1.2.20)',\
org.eclipse.equinox.common;version='[3.16.200,3.16.201)',\
org.eclipse.xtend.lib;version='[2.29.0,2.29.1)',\
org.eclipse.xtend.lib.macro;version='[2.29.0,2.29.1)',\
@ -95,7 +70,6 @@ Fragment-Host: org.openhab.core.model.script
org.openhab.core.config.core;version='[4.0.0,4.0.1)',\
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.http;version='[4.0.0,4.0.1)',\
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.model.core;version='[4.0.0,4.0.1)',\
org.openhab.core.model.item;version='[4.0.0,4.0.1)',\
@ -115,4 +89,26 @@ Fragment-Host: org.openhab.core.model.script
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
xstream;version='[1.4.19,1.4.20)',\
org.openhab.core.model.thing.runtime;version='[4.0.0,4.0.1)'
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.api;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.common;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -13,7 +13,6 @@ Fragment-Host: org.openhab.core.model.thing
#
-runbundles: \
org.antlr.runtime;version='[3.2.0,3.2.1)',\
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.glassfish.hk2.external.aopalliance-repackaged;version='[2.4.0,2.4.1)',\
org.glassfish.hk2.external.javax.inject;version='[2.4.0,2.4.1)',\
@ -32,12 +31,9 @@ Fragment-Host: org.openhab.core.model.thing
org.eclipse.emf.ecore.xmi;version='[2.16.0,2.16.1)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
com.google.guava;version='[30.1.0,30.1.1)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
javax.measure.unit-api;version='[2.1.2,2.1.3)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
tech.units.indriya;version='[2.1.2,2.1.3)',\
uom-lib-common;version='[2.1.0,2.1.1)',\
si-units;version='[2.1.0,2.1.1)',\
@ -53,36 +49,15 @@ Fragment-Host: org.openhab.core.model.thing
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
xstream;version='[1.4.19,1.4.20)',\
com.google.inject;version='[5.0.1,5.0.2)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.api;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.client;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.websocket.common;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-runtime;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
io.github.classgraph;version='[4.8.149,4.8.150)',\
org.apache.log4j;version='[1.2.19,1.2.20)',\
org.eclipse.equinox.common;version='[3.16.200,3.16.201)',\
org.eclipse.xtend.lib;version='[2.29.0,2.29.1)',\
org.eclipse.xtend.lib.macro;version='[2.29.0,2.29.1)',\
@ -100,7 +75,6 @@ Fragment-Host: org.openhab.core.model.thing
org.openhab.core.config.core;version='[4.0.0,4.0.1)',\
org.openhab.core.ephemeris;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.http;version='[4.0.0,4.0.1)',\
org.openhab.core.io.net;version='[4.0.0,4.0.1)',\
org.openhab.core.model.core;version='[4.0.0,4.0.1)',\
org.openhab.core.model.item;version='[4.0.0,4.0.1)',\
@ -122,4 +96,27 @@ Fragment-Host: org.openhab.core.model.thing
org.openhab.core.voice;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)'
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.api;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.client;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.websocket.common;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core.storage.json
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -32,17 +31,8 @@ Fragment-Host: org.openhab.core.storage.json
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -56,6 +46,17 @@ Fragment-Host: org.openhab.core.storage.json
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -9,7 +9,6 @@ Fragment-Host: org.openhab.core
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -37,17 +36,8 @@ Fragment-Host: org.openhab.core
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -57,5 +47,16 @@ Fragment-Host: org.openhab.core
org.openhab.core.tests;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)',\
org.osgi.service.cm;version='[1.6.0,1.6.1)'

View File

@ -13,7 +13,6 @@ Fragment-Host: org.openhab.core.thing
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -41,19 +40,9 @@ Fragment-Host: org.openhab.core.thing
org.mockito.junit-jupiter;version='[4.1.0,4.1.1)',\
org.mockito.mockito-core;version='[4.1.0,4.1.1)',\
org.objenesis;version='[3.2.0,3.2.1)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
@ -65,4 +54,16 @@ Fragment-Host: org.openhab.core.thing
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
org.openhab.core.thing.tests;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)'
com.sun.jna;version='[5.12.1,5.12.2)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -13,7 +13,6 @@ Fragment-Host: org.openhab.core.voice
# done
#
-runbundles: \
org.apache.felix.http.servlet-api;version='[1.1.2,1.1.3)',\
org.eclipse.equinox.event;version='[1.4.300,1.4.301)',\
org.osgi.service.event;version='[1.4.0,1.4.1)',\
org.apache.servicemix.specs.annotation-api-1.3;version='[1.3.0,1.3.1)',\
@ -23,8 +22,6 @@ Fragment-Host: org.openhab.core.voice
jakarta.xml.bind-api;version='[2.3.3,2.3.4)',\
org.apache.servicemix.specs.activation-api-1.2.1;version='[1.2.1,1.2.2)',\
org.glassfish.hk2.osgi-resource-locator;version='[1.0.3,1.0.4)',\
org.objectweb.asm.commons;version='[9.0.0,9.0.1)',\
org.objectweb.asm.tree;version='[9.0.0,9.0.1)',\
jakarta.annotation-api;version='[2.0.0,2.0.1)',\
jakarta.inject.jakarta.inject-api;version='[2.0.0,2.0.1)',\
javax.measure.unit-api;version='[2.1.2,2.1.3)',\
@ -39,40 +36,40 @@ Fragment-Host: org.openhab.core.voice
junit-platform-commons;version='[1.8.1,1.8.2)',\
junit-platform-engine;version='[1.8.1,1.8.2)',\
junit-platform-launcher;version='[1.8.1,1.8.2)',\
org.apache.felix.scr;version='[2.1.30,2.1.31)',\
org.osgi.util.function;version='[1.2.0,1.2.1)',\
org.osgi.util.promise;version='[1.2.0,1.2.1)',\
org.apache.felix.configadmin;version='[1.9.24,1.9.25)',\
org.apache.xbean.bundleutils;version='[4.21.0,4.21.1)',\
org.apache.xbean.finder;version='[4.21.0,4.21.1)',\
org.eclipse.jetty.http;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.io;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.security;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.server;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.servlet;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.util.ajax;version='[9.4.46,9.4.47)',\
org.eclipse.jetty.xml;version='[9.4.46,9.4.47)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.0.16,2.0.17)',\
org.ops4j.pax.web.pax-web-api;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-jetty;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-runtime;version='[7.3.25,7.3.26)',\
org.ops4j.pax.web.pax-web-spi;version='[7.3.25,7.3.26)',\
ch.qos.logback.classic;version='[1.2.11,1.2.12)',\
ch.qos.logback.core;version='[1.2.11,1.2.12)',\
biz.aQute.tester.junit-platform;version='[6.4.0,6.4.1)',\
com.google.gson;version='[2.9.1,2.9.2)',\
org.objectweb.asm;version='[9.4.0,9.4.1)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
org.openhab.core.audio;version='[4.0.0,4.0.1)',\
org.openhab.core;version='[4.0.0,4.0.1)',\
org.openhab.core.config.core;version='[4.0.0,4.0.1)',\
org.openhab.core.io.console;version='[4.0.0,4.0.1)',\
org.openhab.core.io.http;version='[4.0.0,4.0.1)',\
org.openhab.core.test;version='[4.0.0,4.0.1)',\
org.openhab.core.thing;version='[4.0.0,4.0.1)',\
org.openhab.core.voice;version='[4.0.0,4.0.1)',\
org.openhab.core.voice.tests;version='[4.0.0,4.0.1)',\
io.methvin.directory-watcher;version='[0.17.1,0.17.2)',\
com.sun.jna;version='[5.12.1,5.12.2)',\
xstream;version='[1.4.19,1.4.20)'
xstream;version='[1.4.19,1.4.20)',\
org.apache.felix.configadmin;version='[1.9.26,1.9.27)',\
org.apache.felix.http.servlet-api;version='[1.2.0,1.2.1)',\
org.apache.felix.scr;version='[2.2.4,2.2.5)',\
org.eclipse.jetty.http;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.io;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.jaas;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.security;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.server;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.servlet;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.util.ajax;version='[9.4.50,9.4.51)',\
org.eclipse.jetty.xml;version='[9.4.50,9.4.51)',\
org.ops4j.pax.logging.pax-logging-api;version='[2.2.0,2.2.1)',\
org.ops4j.pax.web.pax-web-api;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-jetty;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-runtime;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-spi;version='[8.0.15,8.0.16)',\
org.ops4j.pax.web.pax-web-tomcat-common;version='[8.0.15,8.0.16)',\
org.osgi.service.component;version='[1.5.0,1.5.1)'

View File

@ -72,8 +72,8 @@
<bnd.version>6.4.0</bnd.version>
<commons.net.version>3.7.2</commons.net.version>
<eea.version>2.3.0</eea.version>
<karaf.compile.version>4.3.0</karaf.compile.version>
<karaf.tooling.version>4.3.7</karaf.tooling.version>
<karaf.compile.version>4.4.0</karaf.compile.version>
<karaf.tooling.version>4.4.3</karaf.tooling.version>
<sat.version>0.13.0</sat.version>
<slf4j.version>1.7.32</slf4j.version>
<xtext.version>2.29.0</xtext.version>