Hi Michael,
Right in this moment I am writing an email to answer your previous email
with more details about my tests on recompiling Sextante. In few minutes I
will send it to you

Il giorno ven 19 mar 2021 alle ore 10:14 Michaud Michael <
m.michael.mich...@orange.fr> ha scritto:

> Hi Peppe,
>
> I found this mail dating from 2020, august 10th about Sextante migration.
>
> Can you tell me how far you have gone in your investigation/work about
> migrating Sextante. It seems to be a difficult but important part of our
> migration process. I'd like to upload all the necessary code in the new
> openjump-gis/sextante-extension project so that we can work together on
> this topic.
>
> Regards,
>
> Michaël
>
> *envoyé :* 10 août 2020 à 21:02
> *de :* Giuseppe Aruta <giuseppe.ar...@gmail.com>
> *à :* eric.openj...@thefactory.io, OpenJump develop and use <
> jump-pilot-devel@lists.sourceforge.net>
> *objet :* Re: [JPP-Devel] OJ 2.x Was:Re: JTS update: first experiments
>
> >>Less than a day of work should be required (if not less) to update all
> the plugins which do not rely on a dependency which relies itself on JTS.
> I'm going to test it, to see if it's the case.
>
> Possibly Sextante Will be a problem as we don't have the source code of
> the project (it is available on GvSig CE svn repository). And Sextante.jar,
> Sextante-gui.jar and Sextante-algorithms.jar partially rely on JTS.
> I gave a look at the source code: the versione available on GvSig CE is a
> bit different from the one embedded into Openjump: there are some
> enhancements and few depencies to GvSig class: nothing serious as I tested
> their version with Openjump and it works fine. Right now my tested version
> of Openjump for raster analysis  uses GvSig CE sextante.
>
> My idea is to download Sextante source code from GvSig CE and try to
> recompile it with new JTS. And prepare some tests following Sextante
> documentation and user's notes (Openjump with all raster tools is used in a
> couple of courses at the University of Padua) .
> I will also mail to GvSig CE folks. GVSIG CE (at least sextante) seems
> not have activity since a couple of years.
> Peppe
>
>
>
>
>
> Il lun 10 ago 2020, 15:52 Eric <eric.openj...@thefactory.io> ha scritto:
>
> Here is the list of all the SVN authors (and their number of
> contributions) according to the logs:
> beckerl 197
> bertazza 29
> bgudehus 6
> clark4444 6
> edso 1305
> elnico 54
> eric.lemesre 4
> infinityedge 2
> jammerhund 47
> javamap 10
> jratike80 22
> kdneufeld 2
> lreeder 1
> ma15569 602
> mentaer 465
> michaudm 1619
> paul_d_austin 38
> s-l-teichmann 1
> stranger 87
>
> If you want to keep track of them in the possible future Git repository, a
> conversion file needs to be created, for example (with one author per line):
> michaudm = Michael Michaud <em...@test.com> <em...@test.com>
>
> We should maybe do this outside this mailing list to avoid creating a list
> of public email addresses.
>
> For info, I easily managed to locally create a Git repository containing
> the 1.15 release of OpenJUMP, using the 6242 revision. I'm waiting for your
> different answers to move to the next step.
>
> Best,
> Eric
>
> On 10/08/2020 14:42, Eric wrote:
>
> Hi Ede,
>
> Thanks for your welcome and for your answers. See my inline replies for
> some of them (I deleted the other parts).
>
> On 09/08/2020 16:40, edgar.sol...@web.de wrote:
>
> hey Eric,
>
> welcome to the team! see my answers below
>
> On 07.08.2020 20:55, Eric wrote:
>
> Then I checked which OJ lib dependencies rely on JTS and it seems that
> there is only deegree 2,
> without considering here the plethora of extensions/plugins.
>
> which is the main obstacle. the only clean solution i see is to branch out
> a new OJ 2.x that initially will break compatibility to all external
> plugins. that's the bad news.
> the good news is that this forces us to retouch pretty much all of them
> and during this effort we might eventually come up with a working plugin
> manager after all.
>
>
> Less than a day of work should be required (if not less) to update all the
> plugins which do not rely on a dependency which relies itself on JTS. I'm
> going to test it, to see if it's the case.
> I tried with my plugins and I just needed a couple of seconds to do it.
>
> This is quite a good news because
> if the deegree dependency is updated to its latest version (3.x.x), which
> relies on JTS 1.15,
> then, theoretically, only the import statements and a few other
> com.vividsolutions directly used in the code
> need to be modified.
>
> yeah, probably not. deegree2 is afaics used primarily or exclusively for
> the WFS extension and i remember checking out deegree3 as a drop in for
> deegree2 but failing miserably. that's why i stuck with deegree2 happy to
> have at least a working WFS extension for the time being.
>
> but again, we can remove WFS from core for OJ 2.x and come up with a
> working extension later (if at all).
>
>
> It seems to be a good compromise for the time being as the migration from
> deegree-core 2 to deegree-core 3 isn't straightforward.
>
> - the GeoJSON part (com.vividsolutions.jump.io.geojson) is problematic due
> to the jts-io
> pom type only, but once imported, this part of the code will be functional
> again,
>
> how do you figure? com.vividsolutions.jump.io.geojson was written by
> myself from scratch utilizing google's json-simple . it holds no dependency
> apart from the jts geometry code. maybe myself placing it in this package
> has mislead you
>
>
> Have a look at the GeoJsonReader class for example, and the method
> MapGeoJsonGeometryReader (see the comment), or the
> GeoJSONFeatureCollectionWrapper class. You will see that there is a
> dependency to JTS io.
> It doesn't mean that there is a real dependency in the way it works, but
> JTS io (now jts-io-common which includes the GeoJSON code) is needed for
> the code to compile.
>
> - some classes have been deprecated, removed, or simply moved in the new
> JTS versions,
> such as com.vividsolutions.jts.geom.DefaultCoordinateSequenceFactory. New
> interfaces
> have been created in JTS. It shouldn't be too complex to find a solution
> or a workaround,
>
> agreed
>
>
> After the JTS upgrade, only two classes require some changes:
> - org.openjump.core.ui.plugin.tools.ReducePointsISAPlugIn -- relatively
> easy to solve,
> - another written by Michaël, com.vividsolutions.jump.geom.MakeValidOp.
> For this one, a few JTS constructors have evolved. The problem is linked to
> the 4th dimension, dimension that can't be retrieved any more with a simple
> getter. One temporary solution could consist in the creation of a class
> which extends the current JTS one with an additional getter / setter for
> the dimension.
>
> Once these problems of imports are solved, the JTS update should be
> relatively
> straightforward, and some work will probably be needed to update the code
> based on deegree. I tried to update one of my plugins, it took me seconds
> to do it, and I know that it would be exactly the same for the others,
> just by
> replacing com.vividsolutions.jts by org.locationtech.jts.
>
> sure. problem is not the port but gathering all plugin sources, setting up
> build env, porting and releasing the new modification for each and
> everyone. on the other hand, there is no alternative since locationtech
> forced our hand
>
> I answer this point later in the discussion, including a possible
> migration to Git.
>
> my maven-fu pretty much is compiled in the OJ pom. never needed it before
> or setting up the snapshot/release profiles. so you are on your own there.
> had to figure out some Ant for some finetuning but that's it. but it's
> pretty well documented, so we will get it into shape if something has to be
> changed.
>
> OK. Thanks.
>
> going forward i'd suggest you (Eric)
> 1. work with the stable OJ 1.15 check out
> 2. remove WFS, here is the adding commit from 2014
> https://sourceforge.net/p/jump-pilot/code/4219/
> essentially it is the package 'de.latlon.deejump.wfs'
> 3. fixup a running port to JTS 1.15+
>
> if that worked out you may holler and we can decide how to proceed. i
> could imagine
> 1. doing a "final" OJ 1.16 release only updated on critical issues
> 2. announcing and moving development focus over to OJ 2.x
> 3. branch OJ 2.x dev from the OJ 1.16 and apply the changes researched by
> Eric
> 3. extension fixup, extension fixup, ...
>
> bonusbonusbonus
> b1. maybe even finally porting the svn repo to git (to attract more
> comitters and make it easier to apply contributions), what's important to
> me here is to keep our commit history so we can still retrace changes after
> years and find out why they were done this way by the commit messages or by
> whom to ask them
> b2. tackling java's module system jigsaw, as classpath based loading looks
> like to become a thing of the past
>
> so far, so hot  ..ede
>
>
> My plan was nearly identical. Here it is:
> - Using OJ 1.15 core including trunk, tags and branches,
> - Migrating the code to Git based on something like this:
> https://www.atlassian.com/git/tutorials/svn-to-git-prepping-your-team-migration.
> It includes the preservation of the commit history (critical point)
> including the authors of these commits (more details here -- authors.txt
> --: https://www.atlassian.com/git/tutorials/migrating-prepare) -- I don't
> know yet if it's possible to link the authors to new Git accounts (this
> would be great). Note that this migration automatically recreates the tags
> and branches,
> - Creating a repository with this code on Github or Gitlab (see below for
> an open discussion about it),
> - At this stage, I would drop the WFS part of the code, including the
> package 'de.latlon.deejump.wfs' as Ede mentioned but also the 'org.deegree'
> one. I would also drop the deegree-core dependency in the pom.xml,
> - Removing the two Maven repositories mentioned in a previous message,
> adding the new one as mentioned too,
> - Updating JTS to a 1.15+ version, ideally the 1.17 as it doesn't change
> much between 1.15 and 1.17, both for JTS and JTS io common for the GeoJSON
> part. Replacing all com.vividsolutions.jts by org.locationtech.jts and
> working on a workaround for both ReducePointsISAPlugIn and MakeValidOp
> classes. Push the results once it compiles / works,
> - Creating a small document containing all the different undertaken steps.
> - (Bonus) Upgrading the Log4j dependency to v2 and therefore removing the
> current security issue in link with it.
>
>
> Open discussion:
> - Preliminary remark: I don't want at any point of this process, acting as
> if I was taking this project under my umbrella/name. As I wrote to Michaël,
> you're the drivers/guardians of this project, I'm just a passenger.
> Therefore, just let me know what you prefer, the way you want to do things,
> and I'll act accordingly. Thanks,
> - The idea is to create a temporary Git project/repository as Ede
> mentioned too. There are two main platforms for that, GitHub and GitLab.
> Let me know which one you prefer, knowing that it is possible to have both
> solutions, working only on one, with a mirroring for the other using this
> solution (this includes automated push/pull):
> https://docs.gitlab.com/ee/user/project/repository/repository_mirroring.html
> - Would you prefer an open or a private repository? Why do I consider the
> private option here? To avoid any confusion with the current OpenJUMP
> repository on sourceforge and to avoid some possible premature forks,
> - Where do I need to create this project? In my personal account, or an
> OpenJUMP organisation is created, and the project takes place there (I
> would personally prefer this option, in link with my preliminary remark)?
> If an OpenJUMP organisation is created, do you want to create it yourself
> or is it OK if I create it?
> - Have you already got some GitHub/GitLab accounts that I could use to let
> you access the project as administrators?
>
>
> So if I sum up the questions:
> - Github vs Gitlab,
> - Open vs private repository (just for the period of this test),
> - Where? Personal account vs OpenJUMP organisation,
> - GitHub/GitLab accounts for administration.
>
> About Ede's b2 point: I tested OJ with a Java 11 environment both with
> OpenJDK and an Oracle one. It works with both, as far as I tested it. I
> didn't try with Java 14. I prefer using OpenJDK as there is no commercial
> restriction with it.
>
> ps. "how hard can it be?" - https://dilbert.com/strip/2020-08-07
>
>
>
> Thanks a lot for your views on that Ede.
>
> Please let me know what you prefer and I'll act accordingly.
>
> Best,
> Eric
>
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to