/* * Licensed to Elasticsearch under one or more contributor * license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright * ownership. Elasticsearch licenses this file to you under * the Apache License, Version 2.0 (the "License"); you may * not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ esplugin { description 'The Python language plugin allows to have python as the language of scripts to execute.' classname 'org.elasticsearch.plugin.python.PythonPlugin' } dependencies { compile 'org.python:jython-standalone:2.7.0' } compileJava.options.compilerArgs << "-Xlint:-unchecked" compileTestJava.options.compilerArgs << "-Xlint:-unchecked" integTest { cluster { systemProperty 'es.script.inline', 'on' systemProperty 'es.script.indexed', 'on' } } // classes are missing, e.g. org.tukaani.xz.FilterOptions thirdPartyAudit.missingClasses = true thirdPartyAudit.excludes = [ // uses internal java api: sun.security.x509 (X509CertInfo, X509CertImpl, X500Name) 'org.python.netty.handler.ssl.util.OpenJdkSelfSignedCertGenerator', // uses internal java api: sun.misc.Cleaner 'org.python.netty.util.internal.Cleaner0', // uses internal java api: sun.misc.Signal 'jnr.posix.JavaPOSIX', 'jnr.posix.JavaPOSIX$SunMiscSignalHandler', // uses internal java api: sun.misc.Unsafe 'com.kenai.jffi.MemoryIO$UnsafeImpl', 'com.kenai.jffi.MemoryIO$UnsafeImpl32', 'com.kenai.jffi.MemoryIO$UnsafeImpl64', 'org.python.google.common.cache.Striped64', 'org.python.google.common.cache.Striped64$1', 'org.python.google.common.cache.Striped64$Cell', 'org.python.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator', 'org.python.google.common.primitives.UnsignedBytes$LexicographicalComparatorHolder$UnsafeComparator$1', 'org.python.netty.util.internal.chmv8.ForkJoinPool$2', 'org.python.netty.util.internal.PlatformDependent0', 'org.python.netty.util.internal.UnsafeAtomicIntegerFieldUpdater', 'org.python.netty.util.internal.UnsafeAtomicLongFieldUpdater', 'org.python.netty.util.internal.UnsafeAtomicReferenceFieldUpdater', 'org.python.netty.util.internal.chmv8.ConcurrentHashMapV8', 'org.python.netty.util.internal.chmv8.ConcurrentHashMapV8$1', 'org.python.netty.util.internal.chmv8.ConcurrentHashMapV8$TreeBin', 'org.python.netty.util.internal.chmv8.CountedCompleter', 'org.python.netty.util.internal.chmv8.CountedCompleter$1', 'org.python.netty.util.internal.chmv8.ForkJoinPool', 'org.python.netty.util.internal.chmv8.ForkJoinPool$WorkQueue', 'org.python.netty.util.internal.chmv8.ForkJoinTask', 'org.python.netty.util.internal.chmv8.ForkJoinTask$1', // "uberjaring" (but not shading) classes that have been in the JDK since 1.5 // nice job python. 'javax.xml.XMLConstants', 'javax.xml.datatype.DatatypeConfigurationException', 'javax.xml.datatype.DatatypeConstants$1', 'javax.xml.datatype.DatatypeConstants$Field', 'javax.xml.datatype.DatatypeConstants', 'javax.xml.datatype.DatatypeFactory', 'javax.xml.datatype.Duration', 'javax.xml.datatype.FactoryFinder', 'javax.xml.datatype.SecuritySupport$1', 'javax.xml.datatype.SecuritySupport$2', 'javax.xml.datatype.SecuritySupport$3', 'javax.xml.datatype.SecuritySupport$4', 'javax.xml.datatype.SecuritySupport$5', 'javax.xml.datatype.SecuritySupport', 'javax.xml.datatype.XMLGregorianCalendar', 'javax.xml.namespace.NamespaceContext', 'javax.xml.namespace.QName$1', 'javax.xml.namespace.QName', 'javax.xml.parsers.DocumentBuilder', 'javax.xml.parsers.DocumentBuilderFactory', 'javax.xml.parsers.FactoryConfigurationError', 'javax.xml.parsers.FactoryFinder', 'javax.xml.parsers.ParserConfigurationException', 'javax.xml.parsers.SAXParser', 'javax.xml.parsers.SAXParserFactory', 'javax.xml.parsers.SecuritySupport$1', 'javax.xml.parsers.SecuritySupport$2', 'javax.xml.parsers.SecuritySupport$3', 'javax.xml.parsers.SecuritySupport$4', 'javax.xml.parsers.SecuritySupport$5', 'javax.xml.parsers.SecuritySupport', 'javax.xml.stream.EventFilter', 'javax.xml.stream.FactoryConfigurationError', 'javax.xml.stream.FactoryFinder', 'javax.xml.stream.Location', 'javax.xml.stream.SecuritySupport$1', 'javax.xml.stream.SecuritySupport$2', 'javax.xml.stream.SecuritySupport$3', 'javax.xml.stream.SecuritySupport$4', 'javax.xml.stream.SecuritySupport$5', 'javax.xml.stream.SecuritySupport', 'javax.xml.stream.StreamFilter', 'javax.xml.stream.XMLEventFactory', 'javax.xml.stream.XMLEventReader', 'javax.xml.stream.XMLEventWriter', 'javax.xml.stream.XMLInputFactory', 'javax.xml.stream.XMLOutputFactory', 'javax.xml.stream.XMLReporter', 'javax.xml.stream.XMLResolver', 'javax.xml.stream.XMLStreamConstants', 'javax.xml.stream.XMLStreamException', 'javax.xml.stream.XMLStreamReader', 'javax.xml.stream.XMLStreamWriter', 'javax.xml.stream.events.Attribute', 'javax.xml.stream.events.Characters', 'javax.xml.stream.events.Comment', 'javax.xml.stream.events.DTD', 'javax.xml.stream.events.EndDocument', 'javax.xml.stream.events.EndElement', 'javax.xml.stream.events.EntityDeclaration', 'javax.xml.stream.events.EntityReference', 'javax.xml.stream.events.Namespace', 'javax.xml.stream.events.NotationDeclaration', 'javax.xml.stream.events.ProcessingInstruction', 'javax.xml.stream.events.StartDocument', 'javax.xml.stream.events.StartElement', 'javax.xml.stream.events.XMLEvent', 'javax.xml.stream.util.EventReaderDelegate', 'javax.xml.stream.util.StreamReaderDelegate', 'javax.xml.stream.util.XMLEventAllocator', 'javax.xml.stream.util.XMLEventConsumer', 'javax.xml.transform.ErrorListener', 'javax.xml.transform.FactoryFinder', 'javax.xml.transform.OutputKeys', 'javax.xml.transform.Result', 'javax.xml.transform.SecuritySupport$1', 'javax.xml.transform.SecuritySupport$2', 'javax.xml.transform.SecuritySupport$3', 'javax.xml.transform.SecuritySupport$4', 'javax.xml.transform.SecuritySupport$5', 'javax.xml.transform.SecuritySupport', 'javax.xml.transform.Source', 'javax.xml.transform.SourceLocator', 'javax.xml.transform.Templates', 'javax.xml.transform.Transformer', 'javax.xml.transform.TransformerConfigurationException', 'javax.xml.transform.TransformerException', 'javax.xml.transform.TransformerFactory', 'javax.xml.transform.TransformerFactoryConfigurationError', 'javax.xml.transform.URIResolver', 'javax.xml.transform.dom.DOMLocator', 'javax.xml.transform.dom.DOMResult', 'javax.xml.transform.dom.DOMSource', 'javax.xml.transform.sax.SAXResult', 'javax.xml.transform.sax.SAXSource', 'javax.xml.transform.sax.SAXTransformerFactory', 'javax.xml.transform.sax.TemplatesHandler', 'javax.xml.transform.sax.TransformerHandler', 'javax.xml.transform.stax.StAXResult', 'javax.xml.transform.stax.StAXSource', 'javax.xml.transform.stream.StreamResult', 'javax.xml.transform.stream.StreamSource', 'javax.xml.validation.Schema', 'javax.xml.validation.SchemaFactory', 'javax.xml.validation.SchemaFactoryFinder$1', 'javax.xml.validation.SchemaFactoryFinder$2', 'javax.xml.validation.SchemaFactoryFinder', 'javax.xml.validation.SchemaFactoryLoader', 'javax.xml.validation.SecuritySupport$1', 'javax.xml.validation.SecuritySupport$2', 'javax.xml.validation.SecuritySupport$3', 'javax.xml.validation.SecuritySupport$4', 'javax.xml.validation.SecuritySupport$5', 'javax.xml.validation.SecuritySupport$6', 'javax.xml.validation.SecuritySupport$7', 'javax.xml.validation.SecuritySupport$8', 'javax.xml.validation.SecuritySupport', 'javax.xml.validation.TypeInfoProvider', 'javax.xml.validation.Validator', 'javax.xml.validation.ValidatorHandler', 'javax.xml.xpath.SecuritySupport$1', 'javax.xml.xpath.SecuritySupport$2', 'javax.xml.xpath.SecuritySupport$3', 'javax.xml.xpath.SecuritySupport$4', 'javax.xml.xpath.SecuritySupport$5', 'javax.xml.xpath.SecuritySupport$6', 'javax.xml.xpath.SecuritySupport$7', 'javax.xml.xpath.SecuritySupport$8', 'javax.xml.xpath.SecuritySupport', 'javax.xml.xpath.XPath', 'javax.xml.xpath.XPathConstants', 'javax.xml.xpath.XPathException', 'javax.xml.xpath.XPathExpression', 'javax.xml.xpath.XPathExpressionException', 'javax.xml.xpath.XPathFactory', 'javax.xml.xpath.XPathFactoryConfigurationException', 'javax.xml.xpath.XPathFactoryFinder$1', 'javax.xml.xpath.XPathFactoryFinder$2', 'javax.xml.xpath.XPathFactoryFinder', 'javax.xml.xpath.XPathFunction', 'javax.xml.xpath.XPathFunctionException', 'javax.xml.xpath.XPathFunctionResolver', 'javax.xml.xpath.XPathVariableResolver', 'org.w3c.dom.Attr', 'org.w3c.dom.CDATASection', 'org.w3c.dom.CharacterData', 'org.w3c.dom.Comment', 'org.w3c.dom.DOMConfiguration', 'org.w3c.dom.DOMError', 'org.w3c.dom.DOMErrorHandler', 'org.w3c.dom.DOMException', 'org.w3c.dom.DOMImplementation', 'org.w3c.dom.DOMImplementationList', 'org.w3c.dom.DOMImplementationSource', 'org.w3c.dom.DOMLocator', 'org.w3c.dom.DOMStringList', 'org.w3c.dom.Document', 'org.w3c.dom.DocumentFragment', 'org.w3c.dom.DocumentType', 'org.w3c.dom.Element', 'org.w3c.dom.Entity', 'org.w3c.dom.EntityReference', 'org.w3c.dom.NameList', 'org.w3c.dom.NamedNodeMap', 'org.w3c.dom.Node', 'org.w3c.dom.NodeList', 'org.w3c.dom.Notation', 'org.w3c.dom.ProcessingInstruction', 'org.w3c.dom.Text', 'org.w3c.dom.TypeInfo', 'org.w3c.dom.UserDataHandler', 'org.w3c.dom.bootstrap.DOMImplementationRegistry$1', 'org.w3c.dom.bootstrap.DOMImplementationRegistry$2', 'org.w3c.dom.bootstrap.DOMImplementationRegistry$3', 'org.w3c.dom.bootstrap.DOMImplementationRegistry$4', 'org.w3c.dom.bootstrap.DOMImplementationRegistry', 'org.w3c.dom.css.CSS2Properties', 'org.w3c.dom.css.CSSCharsetRule', 'org.w3c.dom.css.CSSFontFaceRule', 'org.w3c.dom.css.CSSImportRule', 'org.w3c.dom.css.CSSMediaRule', 'org.w3c.dom.css.CSSPageRule', 'org.w3c.dom.css.CSSPrimitiveValue', 'org.w3c.dom.css.CSSRule', 'org.w3c.dom.css.CSSRuleList', 'org.w3c.dom.css.CSSStyleDeclaration', 'org.w3c.dom.css.CSSStyleRule', 'org.w3c.dom.css.CSSStyleSheet', 'org.w3c.dom.css.CSSUnknownRule', 'org.w3c.dom.css.CSSValue', 'org.w3c.dom.css.CSSValueList', 'org.w3c.dom.css.Counter', 'org.w3c.dom.css.DOMImplementationCSS', 'org.w3c.dom.css.DocumentCSS', 'org.w3c.dom.css.ElementCSSInlineStyle', 'org.w3c.dom.css.RGBColor', 'org.w3c.dom.css.Rect', 'org.w3c.dom.css.ViewCSS', 'org.w3c.dom.events.DocumentEvent', 'org.w3c.dom.events.Event', 'org.w3c.dom.events.EventException', 'org.w3c.dom.events.EventListener', 'org.w3c.dom.events.EventTarget', 'org.w3c.dom.events.MouseEvent', 'org.w3c.dom.events.MutationEvent', 'org.w3c.dom.events.UIEvent', 'org.w3c.dom.html.HTMLAnchorElement', 'org.w3c.dom.html.HTMLAppletElement', 'org.w3c.dom.html.HTMLAreaElement', 'org.w3c.dom.html.HTMLBRElement', 'org.w3c.dom.html.HTMLBaseElement', 'org.w3c.dom.html.HTMLBaseFontElement', 'org.w3c.dom.html.HTMLBodyElement', 'org.w3c.dom.html.HTMLButtonElement', 'org.w3c.dom.html.HTMLCollection', 'org.w3c.dom.html.HTMLDListElement', 'org.w3c.dom.html.HTMLDOMImplementation', 'org.w3c.dom.html.HTMLDirectoryElement', 'org.w3c.dom.html.HTMLDivElement', 'org.w3c.dom.html.HTMLDocument', 'org.w3c.dom.html.HTMLElement', 'org.w3c.dom.html.HTMLFieldSetElement', 'org.w3c.dom.html.HTMLFontElement', 'org.w3c.dom.html.HTMLFormElement', 'org.w3c.dom.html.HTMLFrameElement', 'org.w3c.dom.html.HTMLFrameSetElement', 'org.w3c.dom.html.HTMLHRElement', 'org.w3c.dom.html.HTMLHeadElement', 'org.w3c.dom.html.HTMLHeadingElement', 'org.w3c.dom.html.HTMLHtmlElement', 'org.w3c.dom.html.HTMLIFrameElement', 'org.w3c.dom.html.HTMLImageElement', 'org.w3c.dom.html.HTMLInputElement', 'org.w3c.dom.html.HTMLIsIndexElement', 'org.w3c.dom.html.HTMLLIElement', 'org.w3c.dom.html.HTMLLabelElement', 'org.w3c.dom.html.HTMLLegendElement', 'org.w3c.dom.html.HTMLLinkElement', 'org.w3c.dom.html.HTMLMapElement', 'org.w3c.dom.html.HTMLMenuElement', 'org.w3c.dom.html.HTMLMetaElement', 'org.w3c.dom.html.HTMLModElement', 'org.w3c.dom.html.HTMLOListElement', 'org.w3c.dom.html.HTMLObjectElement', 'org.w3c.dom.html.HTMLOptGroupElement', 'org.w3c.dom.html.HTMLOptionElement', 'org.w3c.dom.html.HTMLParagraphElement', 'org.w3c.dom.html.HTMLParamElement', 'org.w3c.dom.html.HTMLPreElement', 'org.w3c.dom.html.HTMLQuoteElement', 'org.w3c.dom.html.HTMLScriptElement', 'org.w3c.dom.html.HTMLSelectElement', 'org.w3c.dom.html.HTMLStyleElement', 'org.w3c.dom.html.HTMLTableCaptionElement', 'org.w3c.dom.html.HTMLTableCellElement', 'org.w3c.dom.html.HTMLTableColElement', 'org.w3c.dom.html.HTMLTableElement', 'org.w3c.dom.html.HTMLTableRowElement', 'org.w3c.dom.html.HTMLTableSectionElement', 'org.w3c.dom.html.HTMLTextAreaElement', 'org.w3c.dom.html.HTMLTitleElement', 'org.w3c.dom.html.HTMLUListElement', 'org.w3c.dom.ls.DOMImplementationLS', 'org.w3c.dom.ls.LSException', 'org.w3c.dom.ls.LSInput', 'org.w3c.dom.ls.LSLoadEvent', 'org.w3c.dom.ls.LSOutput', 'org.w3c.dom.ls.LSParser', 'org.w3c.dom.ls.LSParserFilter', 'org.w3c.dom.ls.LSProgressEvent', 'org.w3c.dom.ls.LSResourceResolver', 'org.w3c.dom.ls.LSSerializer', 'org.w3c.dom.ls.LSSerializerFilter', 'org.w3c.dom.ranges.DocumentRange', 'org.w3c.dom.ranges.Range', 'org.w3c.dom.ranges.RangeException', 'org.w3c.dom.stylesheets.DocumentStyle', 'org.w3c.dom.stylesheets.LinkStyle', 'org.w3c.dom.stylesheets.MediaList', 'org.w3c.dom.stylesheets.StyleSheet', 'org.w3c.dom.stylesheets.StyleSheetList', 'org.w3c.dom.traversal.DocumentTraversal', 'org.w3c.dom.traversal.NodeFilter', 'org.w3c.dom.traversal.NodeIterator', 'org.w3c.dom.traversal.TreeWalker', 'org.w3c.dom.views.AbstractView', 'org.w3c.dom.views.DocumentView', 'org.w3c.dom.xpath.XPathEvaluator', 'org.w3c.dom.xpath.XPathException', 'org.w3c.dom.xpath.XPathExpression', 'org.w3c.dom.xpath.XPathNSResolver', 'org.w3c.dom.xpath.XPathNamespace', 'org.w3c.dom.xpath.XPathResult', 'org.xml.sax.AttributeList', 'org.xml.sax.Attributes', 'org.xml.sax.ContentHandler', 'org.xml.sax.DTDHandler', 'org.xml.sax.DocumentHandler', 'org.xml.sax.EntityResolver', 'org.xml.sax.ErrorHandler', 'org.xml.sax.HandlerBase', 'org.xml.sax.InputSource', 'org.xml.sax.Locator', 'org.xml.sax.Parser', 'org.xml.sax.SAXException', 'org.xml.sax.SAXNotRecognizedException', 'org.xml.sax.SAXNotSupportedException', 'org.xml.sax.SAXParseException', 'org.xml.sax.XMLFilter', 'org.xml.sax.XMLReader', 'org.xml.sax.ext.Attributes2', 'org.xml.sax.ext.Attributes2Impl', 'org.xml.sax.ext.DeclHandler', 'org.xml.sax.ext.DefaultHandler2', 'org.xml.sax.ext.EntityResolver2', 'org.xml.sax.ext.LexicalHandler', 'org.xml.sax.ext.Locator2', 'org.xml.sax.ext.Locator2Impl', 'org.xml.sax.helpers.AttributeListImpl', 'org.xml.sax.helpers.AttributesImpl', 'org.xml.sax.helpers.DefaultHandler', 'org.xml.sax.helpers.LocatorImpl', 'org.xml.sax.helpers.NamespaceSupport$Context', 'org.xml.sax.helpers.NamespaceSupport', 'org.xml.sax.helpers.NewInstance', 'org.xml.sax.helpers.ParserAdapter$AttributeListAdapter', 'org.xml.sax.helpers.ParserAdapter', 'org.xml.sax.helpers.ParserFactory', 'org.xml.sax.helpers.SecuritySupport$1', 'org.xml.sax.helpers.SecuritySupport$2', 'org.xml.sax.helpers.SecuritySupport$3', 'org.xml.sax.helpers.SecuritySupport$4', 'org.xml.sax.helpers.SecuritySupport', 'org.xml.sax.helpers.XMLFilterImpl', 'org.xml.sax.helpers.XMLReaderAdapter$AttributesAdapter', 'org.xml.sax.helpers.XMLReaderAdapter', 'org.xml.sax.helpers.XMLReaderFactory', ]