Skip to content
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 reference to ICU.NET native libraries to fix tests #1

Merged
merged 2 commits into from
Aug 7, 2017
Merged

Add reference to ICU.NET native libraries to fix tests #1

merged 2 commits into from
Aug 7, 2017

Conversation

conniey
Copy link

@conniey conniey commented Aug 7, 2017

icu.net requires an additional reference to the native libraries. I've added it here to fix the tests.

@NightOwl888 NightOwl888 merged commit ff8a0cf into NightOwl888:benchmark Aug 7, 2017
@NightOwl888
Copy link
Owner

Thanks Connie.

This fixed all of the problems on the .NET Framework side. But on the .NET Standard side, after upgrading Lucene.Net.ICU and the projects that depend on it to .NET Standard 1.6, NUnit doesn't discover the tests. Strangely, before it was compiling on .NET Standard 1.5 when referencing this package but now it does not.

For the time being, I have reverted back to the icu.net 54.1.1-alpha package on the master branch.

I am planning to upgrade to the new .csproj format and new NUnit tools soon, so it might not make sense to spend the time to fix this yet.

I was hoping to reference this so I could start working on seeing if I can make the RuleBasedBreakIterator work in place of IcuBreakIterator. But there is also some other functionality in the Lucene.Net.Analysis.ICU folder that is not yet compiling because the icu.net dependencies are not there, and was wondering if you would like to help with some of it.

  1. All of the functionality in the Segmentation namespace is inter-related and it seems pretty useful to be able to separate text that is written in multiple language scripts into tokens. I took a look and although .NET can identify what a script is with the Regex class, it has no concept of "script inheritance", which that functionality is based upon. It looks like we may need some more icu.net functionality ported to get it working. I figured you might be interested in this because it depends on the icu4j RuleBasedBreakIterator. Would you like to take this on?
  2. The Normalizer2 class is not ported in icu.net, and 6 of the 8 main Analysis.ICU classes depend on it. I was thinking about taking a crack at this one myself. I opened an issue about it, but if you beat me to it, that is okay too.
  3. Transliterator - this one seems to have limited usefulness. Basically, it translates a script phonetically into another script. I can see this working for a search feature in language-language dictionaries, but that seems to be about the extent of its utility. So, I would say we should only port this if there is time, otherwise we can probably skip it.

BTW - I am keeping a similar folder structure as was in Java, but this functionality should all be added to the Lucene.Net.ICU project as linked files and the tests should be added to Lucene.Net.Tests.ICU as linked files.

NightOwl888 pushed a commit that referenced this pull request Mar 31, 2020
Related Work Items: #1
NightOwl888 pushed a commit that referenced this pull request May 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants