lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From NightOwl888 <...@git.apache.org>
Subject [GitHub] lucenenet issue #174: Ported over Lucene.Net.Spatial
Date Wed, 05 Oct 2016 08:34:45 GMT
Github user NightOwl888 commented on the issue:

    https://github.com/apache/lucenenet/pull/174
  
    @eladmarg - Since an older version of spatial4n already exists at https://github.com/synhershko/spatial4n,
it would be much less work to upgrade it than to port anew. If you have a text comparison
tool like [Beyond Compare](http://www.scootersoftware.com/) (a free trial is available here(http://download.cnet.com/Beyond-Compare/3000-2242_4-10015731.html))
and some help from Git, you can easily determine the lines that have *changed* between the
2 versions and only port those lines into spatial4n.
    
    I used the following procedure to upgrade BoboBrowse.Net. A project that took 3 weeks
to port, took only 2 days to upgrade.
    
    1. Clone the spatial4j repo (note it helps to name the folder the version that you will
checkout).
    2. Copy the whole spatial4j repo and all of its folders into another folder (note it helps
to name the folder the version that you will checkout).
    3. In one copy, checkout the original branch (in Java) that this is based on. 
    4. In the other, check out the branch that we are porting to.
    5. Using explorer, find all of the files that no longer exist in the new version and in
the .NET version, move them into a folder outside of the repository folder (they may come
in handy for code that moved from one class to another).
    6. Using explorer, right click on a file in the old Java version, and click "`select left
file for compare`".
    7. Using explorer, go to the folder with the updated Java version and on the same file,
right click and select "`compare to <filename>`".
    8. Filter out all of the unimportant changes (line breaks and comments) in Beyond Compare
and port only the diff of the two into the corresponding file in spatial4n.
    9. Remove the unimportant differences filter, and choose "*" to view the entire file and
go back through to get the latest documentation comments and change them in spatial4n accordingly.
    10. Repeat 6-9 for each file.
    11. In explorer, locate all of the *new* files that didn't exist in the old version and
port them to spatial4n.
    
    Let us know if you will be working on this - I was thinking about taking it up after working
on the failing tests in Lucene.Net and missing tests in Lucene.Net.Codecs.
    
    @synhershko - You should also seriously consider using this approach to get to the next
version of Lucene.Net after 4.8.0 is released. It might shave a couple of years off of the
process :).


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message