-
Notifications
You must be signed in to change notification settings - Fork 638
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
Added net6.0 target to Lucene.Net.Analysis.OpenNLP and changed to using MavenReference #892
Merged
NightOwl888
merged 27 commits into
apache:master
from
NightOwl888:opennlp-dotnet-core-support-mavenreference
Feb 1, 2024
Merged
Added net6.0 target to Lucene.Net.Analysis.OpenNLP and changed to using MavenReference #892
NightOwl888
merged 27 commits into
apache:master
from
NightOwl888:opennlp-dotnet-core-support-mavenreference
Feb 1, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…61 is selected and net7.0 when net5.0 is selected. In CI, we set IsTestProject=false and IsPublishable=false to skip these tests.
…and net6.0 for Lucene.Net.Tests.Analysis.OpenNLP tests.
…Lucene.Net.Tests.Analysis.OpenNLP
…afe to 6.0.0 to match IKVM 8.5.0
…Services.Unsafe for netstandard2.0 and net462 to ensure the version will work with any combination of Lucene.Net components. This is a transitive dependency in a few 3rd party DLLs, but there may be version conflicts if this isn't done on .NET Framework.
…or netstandard2.0 and net462, since it is being used in Lucene.Net.Facet.
… to pin the version so it matches the reference of IKVM 8.5.0 (6.0.6).
…d to use <MavenReference> to build opennlp-tools instead of using the pre-built OpenNLP.NET NuGet package.
… minimum supported by IKVM.
…ly compile with IKVM in the mix, both on .NET Framework and .NET Core
… can be managed with the other packages
…to eliminate build warnings (at least 1 type is referenced in opennlp-tools)
NightOwl888
force-pushed
the
opennlp-dotnet-core-support-mavenreference
branch
from
January 20, 2024 09:06
bfbe2e7
to
57df67c
Compare
I'm not entirely sure why from reviewing the code, but this build is failing on macOS arm64, and the error is in the net472 target:
I don't see a corresponding change that would obviously cause it to try to run a .NET FX build on macOS, but something is amiss. |
… on Windows due to lack of non-Windows build support in IKVM 8.7.3 (see: ikvmnet/ikvm-maven#49).
paulirwin
approved these changes
Jan 26, 2024
Update from my prior comment: this now builds with skipping the netfx target on macOS. Approved. |
…build issues with opennlp-uima on 1.9.4. This aligns with Lucene 8.2.0.
…ne and link to MavenReference demo. Fixes apache#890.
… from Lucene 8.2.0 because it is called out in the docs as part of the process of configuring Lucene.Net.Analysis.OpenNLP. Changed CannedTokenStream to set ITypeAttribute.Type because it is required by the tests for TypeAsSynonymFilter.
…ed comment with lucene version compatibility level (to indicate we ported it from Lucene 8.2.0)
…which filters are included in the package (there is no NER filter in the box)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary of the changes (Less than 80 chars)
Added net6.0 target to Lucene.Net.Analysis.OpenNLP and changed to using MavenReference
Closes #852, closes #460, related: #890
Description
This supersedes and closes #852. It drops the package dependency on OpenNLP.NET, and instead uses
<MavenReference>
to add a dependency on opennlp-tools.<MavenReference>
does not add a binary to our distribution (except for IKVM and its dependencies). Instead, it transitively gets added to any SDK-style project that depends on Lucene.Net.Analysis.OpenNLP. Each dependency from Maven is downloaded and converted from bytecode into IL on the user's build machine.This allows the user to add additional
<MavenReference>
dependencies, which will use Maven to resolve any versioning conflicts between common dependencies. More importantly, this ensures that only one copy of each data type exists in the project, which wouldn't be the case with a dependency on OpenNLP.NET. It also allows adding other OpenNLP components as required by the project, rather than having one binary that incorporates all of them.The documentation from Lucene 8.2.0 was also brought over and a MavenReference demo was created to demonstrate how it can be used to pull in libraries from Maven to build analyzers that are compatible with Lucene.NET.
This PR also includes a new feature -
Lucene.Net.Analysis.Miscellaneous.TypeAsSynonymFilter
which is helpful for working with the filters inLucene.Net.Analysis.OpenNLP
.