blob: 126d2fcc335fa78d18cc73272f5dbeccf78f96b2 [file] [log] [blame]
<?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">
<import-control pkg="com.puppycrawl.tools.checkstyle">
<allow pkg="antlr"/>
<allow pkg="com.puppycrawl.tools.checkstyle.api"/>
<allow pkg="com.puppycrawl.tools.checkstyle.checks"/>
<allow pkg="java.io"/>
<allow pkg="java.net"/>
<allow pkg="java.util"/>
<allow pkg="javax.xml.parsers"/>
<allow pkg="org.apache.commons.beanutils"/>
<allow pkg="org.apache.commons.logging"/>
<allow pkg="org.xml.sax"/>
<!--Disallowed till https://github.com/mojohaus/cobertura-maven-plugin/issues/29-->
<disallow class="java.util.stream.Stream"/>
<disallow class="java.util.stream.Stream.Builder"/>
<disallow class="java.util.stream.DoubleStream"/>
<disallow class="java.util.stream.DoubleStream.Builder"/>
<disallow class="java.util.stream.IntStream"/>
<disallow class="java.util.stream.IntStream.Builder"/>
<disallow class="java.util.stream.LongStream"/>
<disallow class="java.util.stream.LongStream.Builder"/>
<disallow class="java.util.stream.BaseStream"/>
<disallow class="java.util.stream.Collector"/>
<disallow class="java.util.Comparator"/>
<!-- The local ones -->
<allow pkg="java.lang.reflect" local-only="true" />
<allow pkg="java.nio" local-only="true" />
<allow class="java.security.MessageDigest" local-only="true"/>
<allow class="java.security.NoSuchAlgorithmException" local-only="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.utils" local-only="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.grammars" local-only="true"/>
<allow pkg="org.apache.commons.cli" local-only="true"/>
<allow pkg="org.antlr.v4.runtime" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.JavadocDetailNodeParser.+"
local-only="true" regex="true"/>
<allow class="java.lang.annotation.ElementType" local-only="true"/>
<allow class="java.lang.annotation.Inherited" local-only="true"/>
<allow class="java.lang.annotation.Retention" local-only="true"/>
<allow class="java.lang.annotation.RetentionPolicy" local-only="true"/>
<allow class="java.lang.annotation.Target" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.FileStatefulCheck"/>
<allow class="com.puppycrawl.tools.checkstyle.StatelessCheck"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.base.CaseFormat" local-only="true"/>
<allow class="com.google.common.io.BaseEncoding" local-only="true"/>
<allow class="com.google.common.io.Closeables" local-only="true"/>
<allow class="com.google.common.io.Flushables" local-only="true"/>
<allow class="com.google.common.collect.HashMultimap" local-only="true"/>
<allow class="com.google.common.collect.ImmutableCollection" local-only="true"/>
<allow class="com.google.common.collect.ImmutableList" local-only="true"/>
<allow class="com.google.common.collect.ImmutableMap" local-only="true"/>
<allow class="com.google.common.collect.Multimap" local-only="true"/>
<allow class="com.google.common.io.ByteStreams" local-only="true"/>
<subpackage name="utils">
<allow pkg="java.lang.reflect" local-only="true" />
<allow pkg="java.nio" local-only="true" />
<allow class="com.puppycrawl.tools.checkstyle.TreeWalkerFilter"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.collect.ImmutableMap" local-only="true"/>
<allow class="com.google.common.reflect.ClassPath" local-only="true"/>
</subpackage>
<subpackage name="ant">
<allow pkg="org.apache.tools.ant" local-only="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle"/>
<disallow pkg="com.puppycrawl.tools.checkstyle.checks"/>
<disallow pkg="com.puppycrawl.tools.checkstyle.filters"/>
<disallow pkg="com.puppycrawl.tools.checkstyle.doclets"/>
<disallow pkg="com.puppycrawl.tools.checkstyle.gui"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.io.Closeables" local-only="true"/>
</subpackage>
<subpackage name="api">
<allow pkg="com.puppycrawl.tools.checkstyle.grammars"/>
<allow pkg="java.lang.reflect" local-only="true"/>
<allow pkg="java.nio.charset" local-only="true"/>
<allow class="java.beans.PropertyDescriptor" local-only="true"/>
<allow class="java.text.MessageFormat" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.grammars.CommentListener"
local-only="true"/>
<!-- AccessModifier is in util package (should be moved to api package) to disallow
its usage by API clients till https://github.com/checkstyle/checkstyle/issues/3511-->
<allow class="com.puppycrawl.tools.checkstyle.checks.naming.AccessModifier"
local-only="true"/>
<allow pkg="org.antlr.v4.runtime" local-only="true"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.io.Closeables" local-only="true"/>
<allow class="com.google.common.collect.ImmutableCollection" local-only="true"/>
<allow class="com.google.common.collect.ImmutableMap" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.Checker" local-only="true"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3817 -->
<allow pkg="com.puppycrawl.tools.checkstyle.utils"/>
</subpackage>
<subpackage name="checks">
<allow pkg="java.math"/>
<allow pkg="com.puppycrawl.tools.checkstyle.utils"/>
<allow class="java.nio.charset.StandardCharsets" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.Definitions" local-only="true"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.io.Closeables" local-only="true"/>
<allow class="com.google.common.collect.HashMultiset" local-only="true"/>
<allow class="com.google.common.collect.HashMultimap" local-only="true"/>
<allow class="com.google.common.collect.ImmutableMultiset" local-only="true"/>
<allow class="com.google.common.collect.Multiset" local-only="true"/>
<allow class="com.google.common.collect.Multiset.Entry" local-only="true"/>
<allow class="com.google.common.collect.SetMultimap" local-only="true"/>
<subpackage name="indentation">
<allow pkg="java.lang.reflect"/>
</subpackage>
<subpackage name="header">
<allow class="java.nio.charset.Charset" local-only="true"/>
<allow class="java.nio.charset.StandardCharsets" local-only="true" />
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.io.Closeables" local-only="true"/>
</subpackage>
<subpackage name="javadoc">
<allow pkg="com.puppycrawl.tools.checkstyle.grammars.javadoc"/>
<allow pkg="java.lang.reflect"/>
<allow class="com.puppycrawl.tools.checkstyle.JavadocDetailNodeParser"
local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.JavadocDetailNodeParser.+"
regex="true" local-only="true"/>
<!-- allowed till https://github.com/checkstyle/checkstyle/issues/3455 -->
<allow class="com.google.common.base.CharMatcher" local-only="true"/>
</subpackage>
</subpackage>
<subpackage name="doclets" strategyOnMismatch="disallowed">
<allow class="java.nio.charset.StandardCharsets"/>
<allow pkg="com.sun.javadoc"/>
<allow pkg="java.io"/>
<allow pkg="java.util"/>
</subpackage>
<subpackage name="filters">
<allow pkg="net.sf.saxon"/>
<allow class="java.lang.ref.WeakReference" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.TreeWalkerAuditEvent" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.TreeWalkerFilter" local-only="true"/>
<disallow pkg="com\.puppycrawl\.tools\.checkstyle\.checks\.[^.]+" regex="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.utils"/>
<allow pkg="com.puppycrawl.tools.checkstyle.xpath"/>
</subpackage>
<subpackage name="gui" strategyOnMismatch="disallowed">
<allow pkg="antlr"/>
<allow pkg="java.awt"/>
<allow pkg="java.io"/>
<allow pkg="javax.swing"/>
<allow pkg="java.util" exact-match="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.api" local-only="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.utils" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.TreeWalker" local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.gui.MainFrameModel.ParseMode"
local-only="true"/>
<allow class="com.puppycrawl.tools.checkstyle.JavadocDetailNodeParser" local-only="true"/>
<allow class="com.google.common.collect.ImmutableList" local-only="true"/>
<allow class="java.nio.charset.StandardCharsets" local-only="true" />
</subpackage>
<subpackage name="xpath">
<allow pkg="net.sf.saxon"/>
<allow class="java.lang.reflect.Field"/>
<allow class="java.nio.charset.StandardCharsets" local-only="true"/>
<allow pkg="com.puppycrawl.tools.checkstyle.utils" local-only="true"/>
</subpackage>
</import-control>