Commit Graph

428 Commits

Author SHA1 Message Date
Kevin Watters 890f570bf5
LUCENE-9659 inequality support in payload check query (#2185)
Changes from SOLR-14787 supporting inequalities in SpanPayloadCheckQuery
2021-02-17 09:48:50 -05:00
Tobias Kaessmann f142bf9c54
SOLR-15038: Add elevateOnlyDocsMatchingQuery and collectElevatedDocsWhenCollapsing parameters to query elevation.
Closes #2134
2021-02-17 10:54:17 +01:00
Robert Muir dd91f5ca82
LUCENE-9773: upgrade icu to 68.2 (#2372)
Upgrade from icu 62.2 to 68.2, with Unicode 13 support.

Modify GenerateUTR30DataFiles to take the release tag as a program
argument. Gradle populates this automatically, removing a manual step
from regeneration process.
2021-02-15 14:56:13 -05:00
Dawid Weiss 8f56ae0a4b
LUCENE-9767: infrastructure for icu regeneration in place. (#2362) 2021-02-14 21:07:39 +01:00
Dawid Weiss f7e42bdb35
LUCENE-9768: Add source sets for src/tools, clean up forbidden API and formatting errors (#2361) 2021-02-12 17:03:54 +01:00
Dawid Weiss d89cb72fa7 Remove leftover debug statement. 2021-02-12 17:02:30 +01:00
Dawid Weiss 903782d756
LUCENE-9727: build side support for running Hunspell tests. (#2313) 2021-02-08 10:50:25 +01:00
Peter Gromov 82f8d7ba1d
LUCENE-9728: Hunspell: add a performance test (#2296) 2021-02-05 09:47:02 +01:00
Peter Gromov 84aa683b6b
LUCENE-9723: Hunspell: update sanity tests that load all dictionaries (#2290) 2021-02-03 10:45:35 +01:00
Peter Gromov b48d5beb34
LUCENE-9707: Hunspell: check Lucene's implementation against Hunspel's test data (#2267) 2021-02-02 10:46:14 +01:00
Peter Gromov 8a34cc7afd
LUCENE-9701: Hunspell: implement simple REP-based suggestion algorithm (#2251) 2021-02-01 10:23:54 +01:00
Eric Pugh 6d71a0aced
SOLR-14067: v4 Create /contrib/scripting module with ScriptingUpdateProcessor (#2257)
* Creating Scripting contrib module to centralize the less secure code related to scripts.

* tweak the changelog and update notice to explain why the name changed and the security posture thinking

* the test script happens to be a currency.xml, which made me think we were doing something specific to currency types, but instead any xml formatted file will suffice for the test.

* Update solr/contrib/scripting/src/java/org/apache/solr/scripting/update/ScriptUpdateProcessorFactory.java

* Update solr/contrib/scripting/src/java/org/apache/solr/scripting/update/package-info.java

* drop the ing, and be more specific on the name of the ref guide page

* comment out the script update chain.

The sample techproducts configSet is used by many of the solr unit tests, and by default doesn't have access to the jar file in the contrib module.   This is commented out, similar to how the lang contrib is.

* using a Mock for the script processor in order to keep the trusted configSets tests all together.

* tweak since we are using a mock script processor

Co-authored-by: David Smiley <dsmiley@apache.org>
2021-01-29 12:27:36 -05:00
Mike Drob b335034615
Require Thread Names in Solr (#2264)
When we are creating a new thread we should give it a descriptive name and enforce this via ForbiddenAPIs. This doesn't apply to Runnable or Callable objects that we pass to an executor, since those should be getting named by the executor itself.

We don't require this in tests because the tests should be more self contained and there is less benefit in descriptive names. If somebody is already profiling a test, then they likely have the context to understand what the unnamed threads are doing, whereas a thread dump from a running Solr instance should have good thread names for everything. This is especially helpful when doing profiling, otherwise we end up with a bunch of Thread-# that are hard to tell apart and search on.
2021-01-28 15:04:15 -06:00
Houston Putman 2b8d7bcd6a
SOLR-15075: Solr docker gradle improvements (#2197)
* Removed docker plugin from gradle builds.
* Removed package docker image.
* Tasks now have correct inputs/outputs/dependencies.
* Move gradle help text to docker folder.
* Reduce duplicated Docker layer by doing file removal and chmod in another stage.

Co-authored-by: David Smiley <dsmiley@apache.org>
2021-01-26 10:22:50 -05:00
epugh@opensourceconnections.com ce1bba6d66 Revert "SOLR-14067: v3 Create /contrib/scripting module with ScriptingUpdateProcessor (#2215)"
This reverts commit cf5db8d651.
2021-01-25 09:53:36 -05:00
Eric Pugh cf5db8d651
SOLR-14067: v3 Create /contrib/scripting module with ScriptingUpdateProcessor (#2215)
* Creating Scripting contrib module to centralize the less secure code related to scripts.

* tweak the changelog and update notice to explain why the name changed and the security posture thinking

* the test script happens to be a currency.xml, which made me think we were doing something specific to currency types, but instead any xml formatted file will suffice for the test.

* drop the ing, and be more specific on the name of the ref guide page

* use the same name everywhere

Co-authored-by: David Smiley <dsmiley@apache.org>
2021-01-21 13:32:46 -05:00
András Salamon 83e0397c42
SOLR-14297: Replace commons-codec Base64 with JDK8 Base64 (#2222) 2021-01-21 13:10:33 -05:00
Dawid Weiss 053060b925 LUCENE-9670: Workaround for gradle not liking the same stream for stdout and stderr sinks. 2021-01-21 09:51:56 +01:00
Peter Gromov 939699f550
LUCENE-9667: Hunspell: add spellchecker API, support BREAK and FORBIDDENWORD affix rules (#2207) 2021-01-20 10:57:27 +01:00
zacharymorn a7747b63b4
LUCENE-8982: Make NativeUnixDirectory pure java with FileChannel direct IO flag, and rename to DirectIODirectory (#2052)
LUCENE-8982: Make NativeUnixDirectory pure java with FileChannel direct IO flag, and rename to DirectIODirectory
2021-01-17 23:57:56 +01:00
Dawid Weiss 5b734fb94a
Make :localSettings always available, even if it's a noop on subsequent runs. (#2190) 2021-01-08 20:26:35 +01:00
Dawid Weiss 0ab9cb8079 LUCENE-9658: temporarily hook up spotlessCheck to precommit. 2021-01-07 10:57:57 +01:00
Dawid Weiss 2cbf261032 LUCENE-9570: code reformatting [final]. 2021-01-05 13:44:05 +01:00
Dawid Weiss 7f8b7ffbca LUCENE-9570: code reformatting [partial]. 2021-01-03 21:46:01 +01:00
Dawid Weiss 38c9d2ab76
LUCENE-9650: disable errorprone on jdk16+ (#2171) 2020-12-28 23:20:52 +01:00
Dawid Weiss 8ef6a0da56 LUCENE-9570: code reformatting [partial]. 2020-12-28 12:26:13 +01:00
Dawid Weiss 2d6ad2fee6 LUCENE-9570: code reformatting [partial]. 2020-12-23 12:41:23 +01:00
Dawid Weiss 6faa4f98e0 LUCENE-9570: code reformatting [partial]. 2020-12-18 13:02:08 +01:00
Dawid Weiss c94b035df8
LUCENE-9564: add spotless and gjf (automatic code formatter) 2020-12-17 13:11:54 +01:00
Przemek Bruski ccf3e60453
LUCENE-9021 QueryParser: re-use the LookaheadSuccess exception (#962)
* LUCENE-9021 QueryParser: re-use the LookaheadSuccess exception
Authored-by: Przemek Bruski <pbruski@atlassian.com>
2020-12-12 06:05:46 -08:00
David Smiley 021de9f45f
SOLR-14915: Prometheus-exporter should not depend on Solr-core (#1972)
* Reduced dependencies from Solr server down to just SolrJ.  Don't add WEB-INF/lib.
* Was missing some dependencies in lib/; now has all except SolrJ & logging.
* Can run via gradle, "gradlew run"
* Has own log4j2.xml now

Has own CHANGES.md now.
2020-11-27 15:08:33 -05:00
Dawid Weiss fd3ffd0d38 LUCENE-8982: make native builds disabled by default (CI complains). 2020-11-16 17:23:21 +01:00
zacharymorn ebc87a8a27
LUCENE-8982: Separate out native code to another module to allow cpp build with gradle (#2068)
* LUCENE-8982: Separate out native code to another module to allow cpp build with gradle
2020-11-16 09:40:03 +01:00
Robert Muir 52f581e351
LUCENE-9605: update snowball to d8cf01ddf37a, adds Yiddish (#2077) 2020-11-14 09:27:08 -05:00
Tomoko Uchida 8bac4e7f74 LUCENE-9499: javadoc split package workaroud should be applied only to test-framework. 2020-11-13 21:31:37 +09:00
Houston Putman 212b0f8657
SOLR-14949: Ability to customize Solr Docker build (#2020)
Also added a gradlew helpDocker page.
2020-11-10 10:42:38 -05:00
Tomoko Uchida 426a9c25c2
LUCENE-9499: migrate package.html files into package-info.java (#2072) 2020-11-10 23:57:09 +09:00
Tomoko Uchida d1110394e9
LUCENE-9600: Clean up package name conflicts between misc and core modules (#2064) 2020-11-10 22:24:48 +09:00
Dawid Weiss 22296f28a2
SOLR-14912: Unify solr-contrib-extraction with the artifact it produces (#2060) 2020-11-03 14:15:26 +01:00
Dawid Weiss a29d7c70d5
LUCENE-9597: checkWorkingCopyClean shouldn't complain about untracked empty folders (similar to git status). Piggybacking jgit update. (#2061) 2020-11-03 12:50:05 +01:00
Dawid Weiss 63c4dfa454 LUCENE-9596: Reproduce line for failed tests should have method-level accuracy 2020-11-03 10:56:05 +01:00
Tomoko Uchida 6a7131ee24
LUCENE-9319: Clean up package name conflicts for sandbox module (#2023) 2020-11-03 12:01:02 +09:00
Uwe Schindler 9ce4b98af2
LUCENE-9587: Add '--illegal-access=deny' to test runner (#2039) 2020-10-27 23:28:25 +01:00
Tomoko Uchida 44c1bd42c5
LUCENE-9318: Clean up package name conflicts for backward-codecs (#2000) 2020-10-19 21:32:06 +09:00
Robert Muir 4c42cbc5c9
LUCENE-9576: give solr back its getFileStoreAttributes permission
Solr apparently needs this for its IndexFetcher.
2020-10-18 12:30:47 -04:00
Michael Sokolov c02f07f2d5 LUCENE-9322: Add Lucene90 codec, including VectorFormat
This commit adds support for dense floating point VectorFields.
The new VectorValues class provides access to the indexed vectors.
2020-10-18 07:49:36 -04:00
Robert Muir 85b58c262a
LUCENE-9576: nuke SSD detection, modernize CMS defaults 2020-10-17 10:55:35 -04:00
gezapeti cf6e831394
SOLR-14887 Upgrade JQuery to 3.5.1 (#1947) 2020-10-13 19:41:57 -04:00
Dawid Weiss e444df1435
SOLR-14922: Include solr-ref-guide tasks in sourceSets for IntelliJ (#1973) 2020-10-12 12:25:13 +02:00
Dawid Weiss c5cf13259e
LUCENE-9562: All binary analysis packages (and corresponding Maven artifacts) with names containing '-analyzers-' have been renamed to '-analysis-'. (#1968) 2020-10-12 09:15:56 +02:00
Uwe Schindler 6acb7b4293 LUCENE-9577: move the checkBrokenLinks task to the documentation subprojects 2020-10-09 16:44:36 +02:00
Uwe Schindler f97208a790 LUCENE-9577: fix changed task name 2020-10-09 16:18:59 +02:00
Uwe Schindler 2329423e5c
LUCENE-9577: Move Lucene/Solr Documentation assembly to subproject (#1967) 2020-10-09 14:56:44 +02:00
Mike Drob 08e38d3452
LUCENE-9488 Create Release Artifacts with Gradle (#1905)
* Build Lucene binary distribution using Gradle
* Generate SHA-512 checksums for all release artifacts
* Update documentation artifacts included in binaries
* Delete some additional Ant relics

Co-authored-by: Dawid Weiss <dawid.weiss@carrotsearch.com>
Co-authored-by: Uwe Schindler <uschindler@apache.org>
2020-10-08 14:25:51 -05:00
Tomoko Uchida b70eaeee5a
LUCENE-9558: Clean up package name conflicts for analyzers-icu. (#1946) 2020-10-05 17:52:23 +09:00
Dawid Weiss 34776ed640 LUCENE-9561: workaround for POMs that have superfluous dependencyManagement section. 2020-10-04 21:39:58 +02:00
Timothy Potter e879a52291
SOLR-14659: Remove restlet as dependency for the ManagedResource API (#1938)
Co-authored-by: noblepaul <noble.paul@gmail.com>
2020-10-04 11:21:49 -06:00
Dawid Weiss d9a410920a
LUCENE-9548: Apache repository publishing (#1929) 2020-10-04 19:18:29 +02:00
Robert Muir 7eee4fd102
LUCENE-9557: regeneration should use python3, not python2
python2 will change the DFA, but using python3 re-generates the sources
as they exist today. plus, we don't want to depend on EOL python2.
2020-10-03 12:30:22 -04:00
Erick Erickson f6c4f8a755 SOLR-14910: Use in-line tags for logger declarations in Gradle ValidateLogCalls that are non-standard, change //logok to //nowarn 2020-10-03 09:47:37 -04:00
Adrien Grand f8b7a60562
LUCENE-9550: Upgrade to Gradle 6.6.1. (#1933) 2020-09-30 11:17:55 +02:00
Dawid Weiss 9bfaca0606 LUCENE-9549: add command-line quotes for 'reproduce with'. 2020-09-30 09:49:52 +02:00
Dawid Weiss 2b692ccb71 LUCENE-9547: Race condition in maven artifact configuration results in wrong group/ artifact name 2020-09-29 10:24:17 +02:00
Dawid Weiss 3ae0b50646 LUCENE-9546: Configure Nori and Kuromoji generation lazily when java plugin is applied to the projects 2020-09-29 10:24:17 +02:00
Namgyu Kim 00d7f5ea68
LUCENE-9544: Port Nori dictionary compilation (#1926) 2020-09-28 20:28:21 +09:00
Dawid Weiss 6b0149ec1a Revert "add regenerate gradle script for nori dictionary (#1924)"
This reverts commit e28e8c0e0c.
2020-09-28 09:52:34 +02:00
Tomoko Uchida 5e617ccc33
LUCENE-9317: Clean up split package in analyzers-common (#1836) 2020-09-28 16:49:28 +09:00
Namgyu Kim e28e8c0e0c
add regenerate gradle script for nori dictionary (#1924) 2020-09-28 08:54:27 +02:00
Dawid Weiss 5ec2bac91c
LUCENE-9531: Consolidate duplicated generated classes CharStream and FastCharStream (#1886) 2020-09-18 08:53:30 +02:00
Erik Hatcher 2364a7aded SOLR-14792: Remove VelocityResponseWriter 2020-09-17 08:45:13 -04:00
Dawid Weiss 6c9d7adf79
LUCENE-9527: upgrade javacc to 7.0.4 (#1884) 2020-09-17 13:29:18 +02:00
Dawid Weiss 4f344cb0d4
LUCENE-9530: cleaned up javacc gradle generation scripts. (#1883)
* LUCENE-9530: cleaned up gradle javacc generation/ tweaks script so that it's consistent across runs. Removed ant remnants.
2020-09-17 10:53:02 +02:00
Uwe Schindler 8debc9d0c2
LUCENE-9517: Don't subclass Deflater and instead create a patch for setDictionary() using a functional interface (#1850) 2020-09-10 11:12:59 +02:00
Dawid Weiss a05a055d9d
LUCENE-9518: Add sanity to gradle archiving tasks (predictable order, default permissions, fail on duplicates) (#1851) 2020-09-10 09:48:04 +02:00
Uwe Schindler f0d3bab321
LUCENE-9512: Move LockFactory stress test to be a unit/integration test (#1842)
Co-authored-by: Dawid Weiss <dawid.weiss@carrotsearch.com>
2020-09-09 18:42:30 +02:00
Dawid Weiss b988d557d7
LUCENE-9506: Gradle: split validateSourcePatterns into per-project an… (#1830)
* LUCENE-9506: Gradle: split validateSourcePatterns into per-project and root-specific tasks (allow parallelism)

Co-authored-by: Uwe Schindler <uschindler@apache.org>
2020-09-08 10:08:51 +02:00
Varun Thacker 121b262389
LUCENE-9497: Integerate Error Prone ( Static Analysis Tool ) during compilation (#1816)
LUCENE-9497:  Integrate Error Prone, a static analysis tool during compilation
2020-09-07 14:42:48 -07:00
Erick Erickson 8c5ce090dd LUCENE-9475: Enhance the Gradle build as necessary after removing Ant support, some minor text changes to solr/README.md and help.gradle 2020-09-06 17:16:08 -04:00
Dawid Weiss e3437a467e LUCENE-9475: remove obsolete ant-only jar sha's from Solr. 2020-09-06 22:42:28 +02:00
Dawid Weiss d31a42763b
LUCENE-9505: add dummy outputs. (#1829) 2020-09-04 11:11:57 +02:00
Uwe Schindler 469d742384 Remove the explicit dependency to "check", as fobiddenapis installs it automatically (especially for all source sets; if we want this explicit dependency, it should depend on 'forbiddenApis' not each task). In addition precommit, also adds it. 2020-09-03 17:50:57 +02:00
Adrien Grand 7f68272575 LUCENE-9438: Add resources to the Eclipse classpath. 2020-09-03 09:46:54 +02:00
Robert Muir 784ede4eda
LUCENE-9215: replace checkJavaDocs.py with doclet (#1802)
This has the same logic as the previous python, but no longer relies
upon parsing HTML output, instead using java's doclet processor.

The errors are reported like "normal" javadoc errors with source file
name and line number and happen when running "gradlew javadoc"

Although the "rules" are the same as the previous python, the python had
some bugs where the checker didn't quite do exactly what we wanted, so
some fixes were applied throughout.

Co-authored-by: Dawid Weiss <dawid.weiss@carrotsearch.com>
Co-authored-by: Uwe Schindler <uschindler@apache.org>
2020-09-02 08:29:17 -04:00
Uwe Schindler f8329378af
LUCENE-9492: Fix beasting to accept also task names in form ":project:beast"; fix bug with default value rejected by Integer.parseInt (#1808) 2020-08-31 18:09:21 +02:00
Dawid Weiss 9445d2c10e Move Solr-specific config. 2020-08-31 15:43:56 +02:00
Dawid Weiss 3e47bfb7b4 Cleanup remaining scripts to use script-relative resource location. 2020-08-31 15:35:14 +02:00
Dawid Weiss 66eb9f7f3d LUCENE-9438: moved eclipse template files under corresponding gradle's script. 2020-08-31 15:23:35 +02:00
Dawid Weiss 4a2a2da462 LUCENE-9435: revert Solr's packaging stuff for now. 2020-08-31 14:55:59 +02:00
Uwe Schindler bbf3aec38e
LUCENE-9475: Switch validateSourcePatterns away from Ant legacy (#1806) 2020-08-31 12:52:04 +02:00
Dawid Weiss 5e8bb7922b
LUCENE-9491: Consolidate test options and improve support for dynamic… (#1807)
* LUCENE-9491: Consolidate test options and improve support for dynamically computed values.
2020-08-31 12:20:30 +02:00
Robert Muir 4129daa6dd
master is on java 11! 2020-08-31 04:53:44 -04:00
Uwe Schindler 14df77295d LUCENE-9490: Disable both tasks in :lucene:core on Java 15+ 2020-08-31 02:09:13 +02:00
Dawid Weiss d847f40237 LUCENE-9474: make externalTool a function and add a build-stopping message on Windows for snowball generator. 2020-08-30 17:10:18 +02:00
Dawid Weiss def82ab556
LUCENE-9435: Clean up ant compatability remnants in Gradle build
* Removing ant-only unused tasks.
* Correct message in TestVersion.java
* Remove unused file.
* Removing forbidden API rules for ant.
* Remove 'resolve' emulation.
* Move ecj-lint to task-definition-relative folder.
* Remove 'packaging' specification. It'll have to wait until proper new packaging is implemented for Solr distribution.
* Move render-javadoc tasks's files to task-relative location.
* Moved security manager policies and default JDK logging file to gradle's task relative locations.
* Removing obsolete ant tools. Moving check source patterns under gradle's folder.
* Correct paths.
* Correct property name in task selector.
2020-08-30 14:01:04 +02:00
Dawid Weiss 346dde3395 LUCENE-9490: skip checkMissingDocsDefault on runtime Java > 14. 2020-08-29 17:17:24 +02:00
Alexandre Rafalovitch a57ba25400
SOLR-14783: Remove DIH from 9.0 (#1794)
* Remove DIH example directory

* Remove contrib code directories

* Remove contrib package related configurations for build tools

* Remove mention of DIH example

* remove dih as build dependencies and no-longer needed version pins

* Remove README references to DIH

* Remove dih mention from the script that probably does need to exist at all

* More build artifact references

* More removed dependencies leftovers (licenses/versions)

* No need to smoke exclude DIH anymore

* Remove Admin UI's DIH integration

* Remove DIH from shortname package list

* Remove unused DIH (related? not?) dataset
Unclear what is happening here, but there is no reference to that directory anywhere else
The other parallel directories ARE referenced in a TestConfigSetsAPI.java

* Hidden Idea files references

* No DIH to ignore anymore

* Remove last Derby DB references

* Remove DIH from documentation
Add the information in Major Changes document with the link to the external repo

* Added/updated a mention to CHANGES

* Fix leftover library mentions

* Fix Spellings
2020-08-29 10:52:04 -04:00
Tomoko Uchida c11d32faed LUCENE-9441: Fix ant-specific Javadoc links in accordance with Gradle build 2020-08-29 22:28:03 +09:00
Uwe Schindler 6abce32a3e
LUCENE-9479: Forbiddenapis & Gradle: Add commons-io bundled signatures (#1780) 2020-08-25 09:05:06 +02:00
Uwe Schindler 42d07d878e LUCENE-9474: Add back tests.haltonfailure for jenkins compatibility (use boolean as default) - type fix 2020-08-24 01:01:38 +02:00
Uwe Schindler 863d544378 LUCENE-9474: Add back tests.haltonfailure for jenkins compatibility 2020-08-24 00:52:51 +02:00
Uwe Schindler 5c2e96b585 LUCENE-9474: Property "tests.badapples" is missing in Gradle, which is needed for Hoss's statistics. Also Jenkins does not run BadApple tests by default 2020-08-23 23:37:54 +02:00
Uwe Schindler 79f3a1783f LUCENE-9474: Easier Jenkins automation, by allowing to pass test JVM args as environment variable (this goes inline with RUNTIME_JAVA_HOME) 2020-08-23 22:10:32 +02:00
Uwe Schindler 59736814b6 LUCENE-9474: Remove bad warning (we sometimes have non-existing directories in classpaths during compile). This warnings is not source-code related so shouldn't be enforced (Java 14) 2020-08-23 21:31:44 +02:00
Uwe Schindler 494a8a8e04 LUCENE-9474: Make external tools configurable like in ant through those sysprops: perl.exe, python3.exe, python2.exe 2020-08-23 20:16:22 +02:00
Dawid Weiss b1e2d0c890
LUCENE-9438: Eclipse IDE support with gradle build system (#1761) 2020-08-21 21:47:11 +02:00
Dawid Weiss 581e836569
LUCENE-9471: clean up task and global temporary junk files (workaround). (#1767) 2020-08-20 13:49:24 +02:00
Dawid Weiss 83ed210fd0
LUCENE-9465: 'beast' task from within gradle (#1757) 2020-08-18 09:28:50 +02:00
Tomoko Uchida 5d46361024
LUCENE-9321: Fix offline link base url for snapshot build (#1695) 2020-07-28 08:04:21 +09:00
Dawid Weiss 8ebf2d0b21 LUCENE-9312: Allow builds against arbitrary JVMs (squashed
jira/LUCENE-9312)
2020-07-21 09:19:38 +02:00
Dawid Weiss 1d143744bd SOLR-14523: moved logger message to info so that it doesn't pollute console on regular runs. 2020-07-20 12:47:14 +02:00
Dawid Weiss f9fff6e1ed LUCENE-9436: use release flag for javac rather than source and target. 2020-07-20 12:35:29 +02:00
Erick Erickson 294caa8154 LUCENE-9411: Fail complation on warnings, 9x gradle-only. Explicitly list warnings to check for 2020-07-08 15:51:59 -04:00
Erick Erickson 743234ed83 SOLR-14523: Enhance gradle logging calls validation: eliminate getMessage(). Added Gradle validation check. 2020-07-04 09:38:41 -04:00
Erick Erickson 76e1d901cb SOLR-14592: Upgrade Zookeeper to 3.6.1 2020-07-01 19:47:16 -04:00
Erick Erickson 9c1772f094 LUCENE-9411: Fail complation on warnings, 9x gradle-only 2020-06-23 16:21:10 -04:00
Erick Erickson c8f48d4701 SOLR-14547: Fix or suppress warnings in solr/client/solrj/io/stream 2020-06-09 19:21:36 -04:00
Dawid Weiss 3e8e5d8cf6
LUCENE-9382: update gradle to 6.4.1. (#1549)
* LUCENE-9382: update gradle to 6.4.1. Requires minor changes around log call validation by restructuring the code around switches to a series of ifs. Piggybacking: apply log validation to :solr modules. Add inputs declaration so that task is not re-run on unmodified files.
2020-06-02 13:49:57 +02:00
Dawid Weiss da3dbb1921 LUCENE-9301: include build time and user name only in non-snapshot builds so that jars are not recompiled on each build in development. 2020-06-01 10:09:44 +02:00
Tomoko Uchida 84ea0cb87d
LUCENE-9374: Add checkBrokenLinks gradle task (#1522) 2020-05-20 23:23:24 +09:00
Tomoko Uchida 51c15b8660 LUCENE-9333: Use DirectoryProperty instead of directly having Provider; move script file to input field. 2020-05-19 21:26:38 +09:00
Tomoko Uchida 10d1ecb431 LUCENE-9333: lazily evaluate for 'docroot' property 2020-05-18 23:36:15 +09:00
Uwe Schindler b7c60e53eb LUCENE-9321: Lazy evaluate project properties in the render-javadocs / changes2html task, also make URL (as its passed on command line) an input of task 2020-05-18 09:03:25 +02:00
Uwe Schindler 06df50e759
LUCENE-9321: Port markdown task to Gradle (#1477) 2020-05-17 14:46:26 +02:00
Uwe Schindler c2b59f16bf LUCENE-9321: Use @CompileClasspath annotation instead of @ClassPath, as only signatures are relevant for Javadocs 2020-05-16 00:14:05 +02:00
Uwe Schindler 010168c57b
LUCENE-9321, LUCENE-9278: Refactor renderJavadoc to allow relative links with multiple Gradle tasks (#1488)
This also automatically collects linked projects by its dependencies, so we don't need to maintain all inter-project javadocs links.

Co-authored-by: Dawid Weiss <dweiss@apache.org>
2020-05-14 13:16:16 +02:00
Erick Erickson 08841b634f Mistakenly checked in gradle/defaults-java.gradle with warning limit of 10000 2020-05-13 19:39:05 -04:00
Erick Erickson 687dd42f57 SOLR-14475: Fix deprecation warnings resulting from upgrading commons cli to 1.4 2020-05-13 19:30:57 -04:00
Uwe Schindler 9ee8aa61de LUCENE-9278: Fix passing of Java properties for locale: The arguments must be separated. 2020-05-05 12:10:38 +02:00
Uwe Schindler 951efc95be
LUCENE-9278: Improved options file creation: All parameters are escaped automatically, arguments don't need to be strings (they are converted during building options file) (#1479) 2020-05-02 09:53:51 +02:00
Philippe Ouellet 7a849f6943
LUCENE-9354: Sync French stop words with latest version from Snowball. (#1474)
* Sync French stop words with latest version from Snowball.

This new version removed some French homonyms from the list

* Use latest master commit from snowball-website

* LUCENE-9354: regenerate with 'gradle snowball

* LUCENE-9354: add CHANGES.txt entry
2020-05-01 21:11:35 -04:00
Erick Erickson 217c2faa2c LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-05-01 13:06:57 -04:00
Uwe Schindler 26b0b54bd3
LUCENE-9278: Fix javadocs task to work on windows and with whitespace in project folder (#1476) 2020-05-01 17:49:47 +02:00
Erick Erickson 9ae05e9b4f LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-30 19:50:31 -04:00
Dawid Weiss 26c9fce5db LUCENE-9278: concatenate paths for sourcepath using path separator rather than whitespace (which causes invalid option to be passed to javadoc). 2020-04-30 10:24:23 +02:00
Tomoko Uchida 5354f7e88e
LUCENE-9333: Add gradle task to compile changes.txt to a html (#1468) 2020-04-30 17:21:53 +09:00
Erick Erickson 6e96d01efc LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-29 10:56:54 -04:00
Erick Erickson 960610a615 LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-27 20:45:57 -04:00
Erick Erickson ff4363675e LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-27 08:34:10 -04:00
Tomoko Uchida f03e6aac59
SOLR-14429: Convert .txt files to properly formatted .md files (#1450) 2020-04-27 08:43:04 +09:00
Erick Erickson 8867f465dc LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-26 09:15:21 -04:00
Erick Erickson ecc98e8698 LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-24 13:34:03 -04:00
Erick Erickson e43b17962a LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-22 22:32:49 -04:00
Erick Erickson c94770c2b9 LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-20 21:08:15 -04:00
Erick Erickson f01c040ab3 LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-19 15:58:50 -04:00
Erick Erickson 1f1cdbffdf LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-18 19:08:15 -04:00
Erick Erickson 3af165b32a LUCENE-7788: fail precommit on unparameterised log messages and examine for wasted work/objects 2020-04-17 20:40:32 -04:00
Shalin Shekhar Mangar 13f19f6555 SOLR-9906: SolrjNamedThreadFactory is deprecated in favor of SolrNamedThreadFactory. DefaultSolrThreadFactory is removed from solr-core in favor of SolrNamedThreadFactory in solrj package and all solr-core classes now use SolrNamedThreadFactory 2020-04-13 08:16:35 +05:30
Dawid Weiss 7279190c89 LUCENE-9316: Incorporate all :precommit tasks into :check 2020-04-12 13:32:54 +02:00
Dawid Weiss 9244558752 LUCENE-9201: remove javadoc task remnants. Make javadoc depend on renderJavadoc and skip the default gradle's implementation. 2020-04-12 12:55:56 +02:00
Dawid Weiss fea1ce0062 LUCENE-9278: move declaration calling getTemporaryDir inside the execution block closure so that gradlew clean renderJavadoc doesn't wipe out the temporary directory before the task has a chance to run. 2020-04-12 12:27:14 +02:00
Dawid Weiss 2437f3f56c
LUCENE-9311: detect intellij reimport and modify sourceset to exclude solr-ref-guide/tools (#1422) 2020-04-09 13:55:42 +02:00
Tomoko Uchida 4f92cd414c
LUCENE-9278: Use -linkoffline instead of relative paths to make links to other projects (#1388) 2020-04-09 08:44:07 +09:00
Dawid Weiss dbb4be1ca9 LUCENE-9310: workaround for IntelliJ gradle import 2020-04-08 19:46:35 +02:00
Erick Erickson e1e2085e94 SOLR-14386: Update Jetty to 9.4.27 and dropwizard-metrics version to 4.1.5 2020-04-04 16:14:57 -04:00
Dawid Weiss d32858b127
LUCENE-9301: add manifest entries to JARs (gradle build). 2020-04-04 20:56:35 +02:00
Mike Drob e25ab4204f LUCENE-9266 remove gradle wrapper jar from source
ASF Release Policy states that we cannot have binary JAR files checked
in to our source releases, a few other projects have solved this by
modifying their generated gradlew scripts to download a copy of the
wrapper jar.

We now have a version and checksum file in ./gradle/wrapper directory
used for verifying the wrapper jar, and will take advantage of single
source java execution to verify and download.

The gradle wrapper jar will continue to be available in the git
repository, but will be excluded from src tarball generation. This
should not change workflows for any users, since we expect the gradlew
script to get the jar when it is missing.

Co-authored-by: Dawid Weiss <dweiss@apache.org>
2020-04-02 11:30:01 -05:00
Tomoko Uchida d4a137d2b6
LUCENE-9242: generate javadocs by calling Ant javadoc task (#1304) 2020-03-12 00:09:26 +09:00
Tomoko Uchida 312d6b2a0d LUCENE-9201: Add an equivalent to "check missing javadocs" task to gradle build
Co-Authored-By: Dawid Weiss <dawid.weiss@carrotsearch.com>
2020-02-24 11:05:35 +09:00
Dawid Weiss cb68d7d2c5 LUCENE-9232: add a script-hack check so that in case somebody upgrades the scripts automatically they'll know they need to add the hack. 2020-02-21 10:40:27 +01:00
Dawid Weiss f8a2c39906 LUCENE-9155: add missing naist dictionary generation, clean up the code a bit. 2020-02-21 10:24:05 +01:00
Robert Muir 9302eee1e0
LUCENE-9235: upgrade all python to python3
Die, python2, die.

Some generated .java files change (parameterized automata for
spell-correction).

This is because the order of python dictionaries was not well-defined
previously. A sort() was added so that the python code now generates
reproducible output (Thanks @mikemccand).

So we'll suffer a change once, but the automata are equivalent. If you
run the script again you should not see source code changes.

The relevant unit tests are exhaustive (if you trust the paper!), so we can
be confident it does not break things, even though it looks very scary.
2020-02-20 21:27:38 -05:00
Anshum Gupta cb18586ea0
LUCENE-9155: Add Apache License header to the Kuromoji dictionary compilation (#1271) 2020-02-20 14:59:06 -08:00
Dawid Weiss 62662e477a LUCENE-9155: Port Kuromoji dictionary compilation (regenerate). 2020-02-20 19:00:56 +01:00
Dawid Weiss 7604639b59 Move jgit version declaration to scriptDepVersions. 2020-02-20 13:54:07 +01:00
Robert Muir b9a569e7be
LUCENE-9230: explicitly call python version we want from builds
On newer linux distros, at least, 'python' now means python3. So
we can't rely on what version of python it will invoke (at least for a
few years).

For example in Fedora Linux:

https://fedoraproject.org/wiki/Changes/Python_means_Python3

For python2.x code, explicitly call 'python2.7' and for python3.x code,
explicitly call 'python3'.

Ant variable names are cleaned up, e.g. 'python.exe' is renamed to
'python2.exe' and 'python32.exe' is renamed to 'python3.exe'. This also
makes it easy to identify remaining python 2.x code that should be
migrated to python 3.x
2020-02-18 18:58:17 -05:00
Dawid Weiss 491c99a3de LUCENE-9232: tone down daemon defaults in generated local settings. 2020-02-18 19:43:39 +01:00
Dawid Weiss 2a88aa9d0f LUCENE-9219: Port ECJ-based linter to gradle
Co-authored-by: Tomoko Uchida <tomoko@apache.org>
2020-02-19 02:43:47 +09:00
Robert Muir ccb390d4a6
LUCENE-9220: prevent zip file reproducibility issues based on users umask 2020-02-17 13:34:00 -05:00
Robert Muir 0203815ab2
LUCENE-9220: regenerate all stemmers/stopwords/test data from snowball 2.0 (#1262)
Previous situation:

* The snowball base classes (Among, SnowballProgram, etc) had accumulated local performance-related changes. There was a task that would also "patch" generated classes (e.g. GermanStemmer) after-the-fact.
* Snowball classes had many "non-changes" from the original such as removal of tabs addition of javadocs, license headers, etc.
* Snowball test data (inputs and expected stems) was incorporated into lucene testing, but this was maintained manually. Also files had become large, making the test too slow (Nightly).
* Snowball stopwords lists from their website were manually maintained. In some cases encoding fixes were manually applied.
* Some generated stemmers (such as Estonian and Armenian) exist in lucene, but have no corresponding `.sbl` file in snowball sources at all.

Besides this mess, snowball project is "moving along" and acquiring new languages, adding non-BSD-licensed test data, huge test data, and other complexity. So it is time to automate the integration better.

New situation:

* Lucene has a `gradle snowball` regeneration task. It works on Linux or Mac only. It checks out their repos, applies the `snowball.patch` in our repository, compiles snowball stemmers, regenerates all java code, applies any adjustments so that our build is happy.
* Tests data is automatically regenerated from the commit hash of the snowball test data repository. Not all languages are tested from their data: only where the license is simple BSD. Test data is also (deterministically) sampled, so that we don't have huge files. We just want to make sure our integration works.
* Randomized tests are still set to test every language with generated fake words. The regeneration task ensures all languages get tested (it writes a simple text file list of them).
* Stopword files are automatically regenerated from the commit hash of the snowball website repository.
* The regeneration procedure is idempotent. This way when stuff does change, you know exactly what happened. For example if test data changes to a different license, you may see a git deletion. Or if a new language/stopwords/test data gets added, you will see git additions.
2020-02-17 12:38:01 -05:00
Dawid Weiss dcf448efeb LUCENE-9134: Minor cleanups. 2020-02-13 11:18:01 +01:00
Erick Erickson f9357ab0d2
LUCENE-9134: Port ant-regenerate tasks to Gradle build (util and packed) (#1251)
* LUCENE-9134: Port ant-regenerate tasks to Gradle build
2020-02-11 18:56:11 -05:00
Robert Muir f41eabdc5f
LUCENE-8279: fix javadocs wrong header levels and accessibility issues
Java 13 adds a new doclint check under "accessibility" that the html
header nesting level isn't crazy.

Many are incorrect because the html4-style javadocs had horrible
font-sizes, so developers used the wrong header level to work around it.
This is no issue in trunk (always html5).

Java recommends against using such structured tags at all in javadocs,
but that is a more involved change: this just "shifts" header levels
in documents to be correct.
2020-02-08 10:00:00 -05:00
Robert Muir a77bb1e6f5
LUCENE-9201: add overview.html from correct location to the javadocs in gradle build 2020-02-07 00:18:20 -05:00
Robert Muir 0d339043e3
LUCENE-9209: fix javadocs to be html5, enable doclint html checks, remove jtidy
Current javadocs declare an HTML5 doctype: !DOCTYPE HTML. Some HTML5
features are used, but unfortunately also some constructs that do not
exist in HTML5 are used as well.

Because of this, we have no checking of any html syntax. jtidy is
disabled because it works with html4. doclint is disabled because it
works with html5. our docs are neither.

javadoc "doclint" feature can efficiently check that the html isn't
crazy. we just have to fix really ancient removed/deprecated stuff
(such as use of tt tag).

This enables the html checking in both ant and gradle. The docs are
fixed via straightforward transformations.

One exception is table cellpadding, for this some helper CSS classes
were added to make the transition easier (since it must apply padding
to inner th/td, not possible inline). I added TODOs, we should clean
this up. Most problems look like they may have been generated from a
GUI or similar and not a human.
2020-02-06 22:30:52 -05:00
Tomoko Uchida f3cd1dbde3 LUCENE-9077: Force locale en_US on Javadoc task (workaroud for JDK-8222793) 2020-02-07 01:36:45 +09:00
Erick Erickson b0bb299dc4
LUCENE-9134: Port ant-regenerate tasks to Gradle build (#1230)
LUCENE-9134: Port ant-regenerate tasks to Gradle build (Solr javacc)
2020-02-04 09:16:38 -05:00
Erick Erickson 5253c0cb74
LUCENE-9134 Port ant-regenerate tasks to Gradle build (#1226)
LUCENE-9134: Port ant-regenerate tasks to Gradle build Javacc sub-task. Closes #1226
2020-01-31 17:04:10 -05:00
Robert Muir 4b5105e167
LUCENE-9193: heap allocations for tests.profile
Can be a bit noisier than cpu sampling, due to how threads are allocated
in tests... maybe we can improve that in the future.
2020-01-30 08:29:10 -05:00
Dawid Weiss 3a8ed5e8ed LUCENE-9134: add python-based regeneration of HTMLCharacterEntities.jflex inside jflexHTMLStripCharFilter. 2020-01-30 13:48:16 +01:00
Dawid Weiss e25dac085f LUCENE-9134: this adds initial javacc support (without follow-up tweaks required to make the sources identical as those generated by ant). 2020-01-29 17:02:59 +01:00
Robert Muir e504798a44
LUCENE-9185: add "tests.profile" to gradle build to aid fixing slow tests
Run test(s) with -Ptests.profile=true to print a histogram at the end of
the build.
2020-01-28 11:27:18 -05:00
Jan Høydahl 53f7b394e4 SOLR-11207: Mute warnings for owasp false positives 2020-01-27 21:03:20 +01:00
Dawid Weiss ff635cf701 LUCENE-9184, LUCENE-9183: allow skipping git status check in precommit with -Pvalidation.git.failOnModified=false (or place this in gradle.properties to make it permanent). 2020-01-27 20:47:02 +01:00
Uwe Schindler 7dc35e3a62 Let precommit depend on generic forbiddenApis task 2020-01-27 19:47:54 +01:00
Robert Muir fd5a0ce7c2
LUCENE-9182: the rat-sources.gradle was the one .gradle file already with a license header, we don't need it twice 2020-01-27 12:11:44 -05:00
Robert Muir 975df9ddd3
LUCENE-9182: add apache license headers to all .gradle files and enforce in rat task 2020-01-27 12:05:34 -05:00
Dawid Weiss b420ef8f77 LUCENE-9179: don't invoke the same build recursively upon first run, just continue. Seems like gradle bug but let's not cry about it - it just happens once and CI defaults can be passed independently on command-line. 2020-01-27 17:34:13 +01:00
Robert Muir 8e357b167b
LUCENE-9180: dos2unix files that don't need dos line endings 2020-01-27 11:29:59 -05:00
Dawid Weiss 6bde0f3ec8 LUCENE-9134: UAX29URLEmailTokenizerImpl regeneration. This requires TONS
of memory and time... insane compared to the size of the input. None of my
machines pass it without at least 12 gigs of heap (!).
2020-01-27 12:36:13 +01:00
Jan Høydahl 39df74de37 SOLR-11207: Exclude configuration 'unifiedClasspath'
It is generated by consistent-versions plugin and triggers owasp warnings for deps even for excluded projects
2020-01-27 12:17:31 +01:00
Robert Muir 2bb63afdaf
LUCENE-9166: gradle build: test failures need stacktraces 2020-01-27 06:09:04 -05:00
Jan Høydahl 9ddd05cd14 SOLR-11207: Exclude solr-ref-guide from owasp check
It picked up log4j1 dependency only used during build
2020-01-27 09:55:12 +01:00
Dawid Weiss ae95f0ab68 LUCENE-9134: lucene:core:jflexStandardTokenizerImpl 2020-01-27 09:03:19 +01:00
Dawid Weiss 6f85ec0460 LUCENE-9174: Bump default gradle memory to 2g 2020-01-26 18:27:41 +01:00
Dawid Weiss 5ab59f59ac SOLR-11207: minor changes:
- added 'owasp' task to the root project. This depends on
dependencyCheckAggregate which seems to be a better fit for multi-module
projects than dependencyCheckAnalyze (the difference is vague to me
from plugin's documentation).

- you can run the "gradlew owasp" task explicitly and it'll run the
validation without any flags.

- the owasp task is only added to check if validation.owasp property
is true. I think this should stay as the default on non-CI systems
(developer defaults) because it's a significant chunk of time it takes
to download and validate dependencies.

- I'm not sure *all* configurations should be included in the check...
perhaps we should only limit ourselves to actual runtime dependencies
 not build dependencies, solr-ref-guide, etc.
2020-01-26 10:45:05 +01:00
Jan Høydahl 74a8d6d5ac SOLR-11207: Add OWASP dependency checker to gradle build (#1121)
* SOLR-11207: Add OWASP dependency checker to gradle build
2020-01-26 10:01:51 +01:00
Robert Muir f5e9bb9493
LUCENE-9165: explicitly cast with the horrible groovy language so that numbers above 9 don't fail 2020-01-24 09:53:47 -05:00
Robert Muir 4d61e4aaab
change generate-defaults.gradle not to cap testsJvms at 4 2020-01-24 08:49:17 -05:00
Robert Muir 9dae566ee7
LUCENE-9160: add params/docs to override jvm params in gradle build, default C2 off in tests.
Adds some build parameters to tune how tests run. There is an example
shown by "gradle helpLocalSettings"

Default C2 off in tests as it is wasteful locally and causes slowdown of
tests runs. You can override this by setting tests.jvmargs for gradle,
or args for ant.

Some crazy lucene stress tests may need to be toned down after the
change, as they may have been doing too many iterations by default...
but this is not a new problem.
2020-01-22 09:58:30 -05:00
Robert Muir 3ecd7a03aa
LUCENE-9159: merge gradle/ant test security policies (main file) 2020-01-21 23:43:31 -05:00