-
Notifications
You must be signed in to change notification settings - Fork 24.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add elasticsearch-nio jar for base nio classes #27801
Changes from 11 commits
88444a6
a82314a
31cdc9e
1f9d794
075d81c
00e19ba
b48f467
0afab48
7a30220
dcce8fb
71ddafa
58f6e40
adda661
4a4ee20
5d1800a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
/* | ||
* 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. | ||
*/ | ||
|
||
import org.elasticsearch.gradle.precommit.PrecommitTasks | ||
|
||
apply plugin: 'elasticsearch.build' | ||
apply plugin: 'nebula.maven-base-publish' | ||
apply plugin: 'nebula.maven-scm' | ||
|
||
targetCompatibility = JavaVersion.VERSION_1_8 | ||
sourceCompatibility = JavaVersion.VERSION_1_8 | ||
|
||
group = 'org.elasticsearch' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Same here, not necessary. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This shouldn't be necessary. |
||
archivesBaseName = 'elasticsearch-nio' | ||
|
||
publishing { | ||
publications { | ||
nebula { | ||
artifactId = archivesBaseName | ||
} | ||
} | ||
} | ||
|
||
// TODO: Currently disable licenses check as we rely on mocksocket | ||
dependencyLicenses.enabled = false | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What does the license check being disabled have to do with mocksocket? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Mocksocket would need the license, sha, and notice. The mocksocket repository does not currently have a “notice” which is why I disabled the license check for right now. I can add a notice, but I imagine we don’t want to actually release this depending on mocksocket. |
||
|
||
dependencies { | ||
compile "org.apache.logging.log4j:log4j-api:${versions.log4j}" | ||
compile "org.elasticsearch:mocksocket:${versions.mocksocket}" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This means mocksocket would need to be published and a production dependency of the transport-nio module right? That seems backwards to me. Why wouldn't the tie in to mocksocket be inside test framework? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is explained in this comment. Our permission code applies permissions to jars. I can give all of elasticsearch-nio socket permissions, but the IntelliJ test runner does not compile that to a jar. So we do not properly apply permissions and tests are broken in IntelliJ. I don’t think we want to release with this depending on mocksocket. I just did not see an immediate resolution for that issue in this PR. |
||
|
||
testCompile "com.carrotsearch.randomizedtesting:randomizedtesting-runner:${versions.randomizedrunner}" | ||
testCompile "junit:junit:${versions.junit}" | ||
testCompile "org.hamcrest:hamcrest-all:${versions.hamcrest}" | ||
testCompile("org.elasticsearch.test:framework:${version}") { | ||
exclude group: 'org.elasticsearch', module: 'elasticsearch-nio' | ||
} | ||
} | ||
|
||
forbiddenApisMain { | ||
//elasticsearch-nio does not depend on core, so only jdk and es-all signatures should be checked | ||
signaturesURLs = [PrecommitTasks.getResource('/forbidden/jdk-signatures.txt'), | ||
PrecommitTasks.getResource('/forbidden/es-all-signatures.txt')] | ||
} | ||
|
||
//JarHell is part of es core, which we don't want to pull in | ||
jarHell.enabled=false | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I will open a separate issue for this. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I opened #27933. |
||
|
||
thirdPartyAudit.excludes = [ | ||
'org/osgi/framework/AdaptPermission', | ||
'org/osgi/framework/AdminPermission', | ||
'org/osgi/framework/Bundle', | ||
'org/osgi/framework/BundleActivator', | ||
'org/osgi/framework/BundleContext', | ||
'org/osgi/framework/BundleEvent', | ||
'org/osgi/framework/SynchronousBundleListener', | ||
'org/osgi/framework/wiring/BundleWire', | ||
'org/osgi/framework/wiring/BundleWiring' | ||
] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
7a2999229464e7a324aa503c0a52ec0f05efe7bd |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shouldn't be necessary, it is the default set by
elasticsearch.build