diff options
Diffstat (limited to 'buildscripts/import-control.xml')
-rw-r--r-- | buildscripts/import-control.xml | 252 |
1 files changed, 252 insertions, 0 deletions
diff --git a/buildscripts/import-control.xml b/buildscripts/import-control.xml new file mode 100644 index 00000000..d545878a --- /dev/null +++ b/buildscripts/import-control.xml @@ -0,0 +1,252 @@ +<?xml version="1.0"?> +<!DOCTYPE import-control PUBLIC + "-//Puppy Crawl//DTD Import Control 1.3//EN" + "http://checkstyle.sourceforge.net/dtds/import_control_1_3.dtd"> + +<!-- + +General guidelines on imports: + +- 'stats' depends on 'tags', but 'tags' shouldn't depend on 'stats' or 'trace'. + 'stats'/'tags' and 'trace' should remain independent, where possible. + +- Packages should not be split between artifacts. + +- 'internal' packages should only be imported by packages within the same + artifact. + +- Since we are trying to remove dependencies on Guava (issue #1113), we should + avoid adding any new Guava imports here, especially in the API. + +--> + +<import-control pkg="io.opencensus"> + <allow pkg="com.google.auto.value"/> + <allow pkg="com.google.errorprone.annotations"/> + <allow pkg="java"/> + <allow pkg="javax"/> + <allow class="io.grpc.Context"/> + <subpackage name="common"> + <allow pkg="io.opencensus.common"/> + </subpackage> + <subpackage name="internal"> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.internal"/> + </subpackage> + <subpackage name="tags"> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.internal"/> + <allow pkg="io.opencensus.tags"/> + </subpackage> + <subpackage name="metrics"> + <allow pkg="io.opencensus.internal"/> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.metrics"/> + </subpackage> + <subpackage name="stats"> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.internal"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + </subpackage> + <subpackage name="trace"> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.internal"/> + <allow pkg="io.opencensus.trace"/> + + <!-- These dependencies on impl/implcore are only needed by --> + <!-- io.opencensus.trace.TraceComponentImpl and io.opencensus.trace.TraceComponentImplLite, --> + <!-- which are deprecated. --> + <allow class="io.opencensus.impl.internal.DisruptorEventQueue"/> + <allow class="io.opencensus.impl.trace.internal.ThreadLocalRandomHandler"/> + <allow class="io.opencensus.implcore.common.MillisClock"/> + <allow class="io.opencensus.implcore.internal.SimpleEventQueue"/> + <allow class="io.opencensus.implcore.trace.TraceComponentImplBase"/> + <allow class="io.opencensus.implcore.trace.internal.RandomHandler.SecureRandomHandler"/> + </subpackage> + <subpackage name="contrib"> + <allow pkg="com.google.common"/> + <allow pkg="io.opencensus.common"/> + <subpackage name="agent"> + <allow pkg="com.google.auto"/> + <allow pkg="com.typesafe.config"/> + <allow pkg="edu.umd.cs.findbugs.annotations"/> + <allow pkg="io.opencensus.contrib.agent"/> + <allow pkg="io.opencensus.trace"/> + <allow pkg="net.bytebuddy"/> + </subpackage> + <subpackage name="appengine.standard.util"> + <allow pkg="com.google.apphosting"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="exemplar.util"> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="grpc.metrics"> + <allow pkg="io.opencensus.contrib.grpc.metrics"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + </subpackage> + <subpackage name="http.util"> + <allow pkg="io.opencensus.contrib.http.util"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="logcorrelation.log4j2"> + <allow pkg="io.opencensus.contrib.logcorrelation.log4j2"/> + <allow pkg="io.opencensus.trace"/> + <disallow pkg="org.apache.logging.log4j.core.impl"/> + <allow pkg="org.apache.logging.log4j"/> + </subpackage> + <subpackage name="logcorrelation.stackdriver"> + <allow pkg="com.google.cloud"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="spring"> + <allow pkg="io.opencensus.trace"/> + <allow pkg="org.aspectj.lang"/> + <allow pkg="org.aspectj.lang.annotation"/> + <allow pkg="org.aspectj.lang.reflect"/> + <allow pkg="org.springframework.beans.factory.annotation"/> + <subpackage name="sleuth"> + <allow pkg="io.opencensus.trace"/> + <allow pkg="org.apache.commons.logging"/> + <allow pkg="org.springframework.beans.factory.annotation"/> + <allow pkg="org.springframework.beans.factory.config"/> + <allow pkg="org.springframework.boot.autoconfigure"/> + <allow pkg="org.springframework.boot.context"/> + <allow pkg="org.springframework.context.annotation"/> + <allow pkg="org.springframework.boot.context.properties"/> + <allow pkg="org.springframework.cloud.sleuth"/> + <allow pkg="org.springframework.core"/> + </subpackage> + </subpackage> + <subpackage name="zpages"> + <allow pkg="com.sun.net.httpserver"/> + <allow pkg="io.opencensus.contrib.grpc.metrics"/> + <allow pkg="io.opencensus.contrib.zpages"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="monitoredresource.util"> + <allow pkg="io.opencensus.contrib.monitoredresource.util"/> + </subpackage> + <subpackage name="dropwizard"> + <allow pkg="io.opencensus.contrib.dropwizard"/> + <allow pkg="io.opencensus.metrics"/> + <allow pkg="io.opencensus.implcore"/> + <allow pkg="io.opencensus.internal"/> + <allow pkg="com.codahale.metrics"/> + </subpackage> + </subpackage> + <subpackage name="exporter"> + <allow pkg="com.google.common"/> + <allow pkg="io.opencensus.common"/> + <subpackage name="stats"> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <subpackage name="prometheus"> + <allow pkg="io.opencensus.exporter.stats.prometheus"/> + <allow pkg="io.opencensus.trace"/> + <allow pkg="io.prometheus.client"/> + </subpackage> + <subpackage name="signalfx"> + <allow pkg="com.signalfx"/> + <allow pkg="io.opencensus.exporter.stats.signalfx"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="stackdriver"> + <allow pkg="com.google"/> + <allow pkg="io.opencensus.exporter.stats.stackdriver"/> + <allow pkg="io.opencensus.trace"/> + <allow pkg="io.opencensus.contrib.monitoredresource.util"/> + </subpackage> + </subpackage> + <subpackage name="trace"> + <allow pkg="io.opencensus.trace"/> + <subpackage name="instana"> + <allow pkg="io.opencensus.exporter.trace.instana"/> + </subpackage> + <subpackage name="jaeger"> + <allow pkg="com.uber.jaeger"/> + <allow pkg="io.opencensus.exporter.trace.jaeger"/> + <allow pkg="org.apache.thrift"/> + </subpackage> + <subpackage name="ocagent"> + <allow pkg="com.google.protobuf"/> + <allow pkg="io.grpc"/> + <allow pkg="io.opencensus.contrib.monitoredresource.util"/> + <allow pkg="io.opencensus.contrib.opencensus.proto.util"/> + <allow pkg="io.opencensus.exporter.trace.ocagent"/> + <allow pkg="io.opencensus.proto"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="stackdriver"> + <allow pkg="com.google"/> + <allow pkg="io.opencensus.exporter.trace.stackdriver"/> + <allow pkg="io.opencensus.contrib.monitoredresource.util"/> + </subpackage> + <subpackage name="zipkin"> + <allow pkg="io.opencensus.exporter.trace.zipkin"/> + <allow pkg="zipkin2"/> + </subpackage> + </subpackage> + </subpackage> + <subpackage name="implcore"> + <allow pkg="com.google.common"/> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.implcore"/> + <allow pkg="io.opencensus.metrics"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="impl"> + <allow pkg="com.lmax.disruptor"/> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.impl"/> + <allow pkg="io.opencensus.implcore"/> + <allow pkg="io.opencensus.metrics"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="impllite"> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.implcore"/> + <allow pkg="io.opencensus.impllite"/> + <allow pkg="io.opencensus.metrics"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + <subpackage name="testing"> + <allow pkg="com.google.common"/> + <allow pkg="io.opencensus.common"/> + <subpackage name="common"> + <allow pkg="io.opencensus.testing.common"/> + </subpackage> + <subpackage name="export"> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.testing.export"/> + <allow pkg="io.opencensus.trace"/> + </subpackage> + </subpackage> + <subpackage name="examples"> + <allow pkg="com.google.common"/> + <allow pkg="io.grpc"/> + <allow pkg="io.opencensus.common"/> + <allow pkg="io.opencensus.contrib"/> + <allow pkg="io.opencensus.examples"/> + <allow pkg="io.opencensus.exporter"/> + <allow pkg="io.opencensus.stats"/> + <allow pkg="io.opencensus.tags"/> + <allow pkg="io.opencensus.testing.export"/> + <allow pkg="io.opencensus.trace"/> + <allow pkg="io.prometheus"/> + </subpackage> +</import-control> |