lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shad Storhaug <s...@shadstorhaug.com>
Subject RE: lucene.search.highlight conversion
Date Wed, 03 May 2017 20:54:20 GMT
Matt,

I don’t believe that it will work. You can open the project and edit the code, but it won’t
build or run tests. Certainly, it would work well for fixing up XML documentation comments.
Both the .NET Framework and .NET Core sides have been setup to use some of the newer tooling
in the .NET Core SDK to restore and build with, which requires VS 2015 to work.

That said, it is works fine with VS 2015 Community Edition, which has a free license for open
source projects such as Lucene.Net. It also works in VS 2017 Community Edition. In both cases,
you will need the NUnit 3 Test Adapter in order to run the tests in Test Explorer.

The Lucene.Net.sln file is for .NET Framework, and Lucene.Net.Portable.sln is for .NET Core.
Normally, I get everything working in .NET Framework first, get the tests passing, etc., then
add the project.json, .xproj, and other bits that are required to get it working in .NET Core.

Shad

From: Matt Diehl [mailto:matt@etnstudio.com]
Sent: Thursday, May 4, 2017 3:21 AM
To: Shad Storhaug
Cc: dev@lucenenet.apache.org
Subject: Re: lucene.search.highlight conversion

Thanks Shad.

I will wait to see the beta when it is released. I'm not sure how useful I will be yet since
I only have VisualStudio 2013; I see the basic requirements are VS 2015. Does anyone else
successfully use 2013 with this endeavor?

Matt

On Wed, May 3, 2017 at 11:19 AM, Shad Storhaug <shad@shadstorhaug.com<mailto:shad@shadstorhaug.com>>
wrote:
Matt,

This is one of the interesting things with working on a Java port such as this - you pick
up a few things about .NET that you didn't already know.

String interning is an optimization that minimizes the memory needed to store strings. It
essentially ensures that if you have 2 or more strings with the same value, they only appear
once in RAM. https://msdn.microsoft.com/en-us/library/system.string.intern(v=vs.110).aspx

As for why they are used in .NET but not Java, I suspect that someone saw an opportunity to
make an optimization by using interning. That said, you might want to review to make sure
it is doing what it is supposed to do.

FYI - Highlighter was ported several months ago on pull request #191 (https://github.com/apache/lucenenet/pull/191),
which was merged to master last week. If you need to use it, it is available now on our CI
feed (https://www.myget.org/gallery/lucene-net-ci). Pending a release vote, we will have a
beta up on NuGet in a couple of days.

That said, we still have some missing pieces - see our contributing page for the current status:
https://github.com/apache/lucenenet/blob/master/CONTRIBUTING.md. If you want to help out we
certainly would appreciate it. The most pressing issues are some flakey tests and fixing documentation
comments - and of course we could use some help getting it setup to generate the documentation.
But there are also some modules to port and command-line tools to build into executables,
if you are interested.

Thanks,
Shad Storhaug (NightOwl888)


-----Original Message-----
From: Matt Diehl [mailto:matt@etnstudio.com.INVALID<mailto:matt@etnstudio.com.INVALID>]
Sent: Wednesday, May 3, 2017 11:19 PM
To: dev@lucenenet.apache.org<mailto:dev@lucenenet.apache.org>
Subject: lucene.search.highlight conversion

Hi,

Has anyone converted this yet? I pulled from the latest checked-in branch and was working
on getting this compiling. Most of the conversion is adding/removing "()" and changing 'count'
to 'size' and removing 'get' from function names. I've not worked with this before, and I
have a question.

if (fieldName != null)
{
    fieldName = StringHelper.Intern(fieldName); }

I keep seeing the the above call. It seems like some sort of sanity-cleaning funciton that
takes a string and returns a string. It doesn't really exist though (and doesn't exist in
Java Lucene from my searching). Can someone help me?

Thanks,
Matt

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message