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 [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to