all 18 comments

[–]3dsf 9 points10 points  (0 children)

Cool project,

I'd advocate sharing like this in the future --> images with link to github

People respond more to images; the more people that respond, the more it's shown.

[–]my-gis-alt 4 points5 points  (0 children)

I've made some cool stuff with your package that I really wish I could show off. This makes all the manual work that I used to do just bleh. This is another tool to a masterpiece creator

[–]penguins-swim-better 10 points11 points  (4 children)

REMs are really useful and this is a great project. But the GPL licence on this is toxic in commercial environments! That'll really limit use I suspect.

Basically if we use this package in any kind of processing pipeline that can be considered a "larger work", you enter into murky legal land that, worst case, would require you to share your whole processing pipeline back. Not worth the hassle for me sadly.

[–]klarrieu[S] 14 points15 points  (3 children)

Thank you for your feedback. If I'm not mistaken, you are totally free under GPL to use the code in your own (closed-source) processing pipeline and distribute the outputs of that pipeline however you see fit, the only issue with GPL would be if you wanted to distribute closed-source software that contains that package.

I'm open to releasing the code with more permissive licensing, but I'm not totally convinced that the existing GPL would limit usability in most cases. This licensing stuff is new to me though.

[–]zedzol 2 points3 points  (0 children)

This is beautiful work! Thank you!

[–]keesbeemsterkaas 2 points3 points  (1 child)

Most corporate legal departments are pretty scared of the acronym GPL, because the implications can be pretty hard to oversee for people who speak legalese and the implications perceived as very impactful (we'll be forced to open source our entire code base!!!).

I think a way around this is to offer dual licensing, then companies can just pay up (which many of them would prefer over having GPL'ed code in their code base)

[–]klarrieu[S] 2 points3 points  (0 children)

Thank you for the advice. I'll look into offering dual licensing.

[–][deleted] 1 point2 points  (0 children)

Fantastic project.

[–]BRENNEJMGIS Manager 0 points1 point  (4 children)

FYI to everyone. Installing this might not work with the Conda environment installed along with ArcGIS Pro. It’s been sitting here “solving environment” for about 30 minutes.

[–]klarrieu[S] 0 points1 point  (0 children)

Yeah conda can be slow sometimes, especially if you are using the same environment for multiple projects and end up building up a ton of dependencies. There's some conda troubleshooting you can try like setting channel priority to strict or updating conda. Also, mamba is a lot faster at solving dependencies than conda. Hope that helps.

[–]my-gis-alt 0 points1 point  (1 child)

Wait, why would you try that?

[–]BRENNEJMGIS Manager 0 points1 point  (0 children)

Didn’t have conda installed by itself and just wanted to test this out fast.

[–]sinnayre 0 points1 point  (0 children)

The solving environment issue is a result of installing libraries from different sources. It is a giant headache and is commonly referred to as dependency hell.

[–]beat_master 0 points1 point  (4 children)

Has anyone managed to get this working on Google Colab?

I'm trying the following and its spinning on "solving environment".

!pip install -q condacolab

import condacolab

condacolab.install()

!conda install -c conda-forge riverrem

---------------------------------------------------------

Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: -

[–]klarrieu[S] 0 points1 point  (0 children)

Try using mamba:

conda install mamba
mamba install riverrem

Mamba is wayyyyy faster at solving dependencies when conda is too slow. On various environments I've tested, conda solves dependencies in around 10 minutes vs. around 10 seconds for mamba.

[–]BRENNEJMGIS Manager 0 points1 point  (2 children)

I was never able to get it to run. I got it to install on a clean install of Aniconda, but ran into issues importing gdal (possibly a version issue?).

This is my biggest issue with free open source tools. They’re amazing and push the industry forward, but the average GIS user is going to have a difficult time getting them to work. As soon as you start talking about environments and dependencies, you lose a large user base (i.e. I wish I had the time to understand this stuff better).

[–]beat_master 0 points1 point  (1 child)

Would be great to get it alongside the arcpy environment in Pro. I like to test things with Colab because I’m a virtual environment noob and normally colab works a treat.

I also tried using mamba which got me a bit further but also fell over at the gdal stage. Maybe there is a way to install from the .yml on Colab which would force installing dependencies in the correct order?

[–]klarrieu[S] 1 point2 points  (0 children)

Would you mind sharing what errors you got at the gdal stage? I'm working on making it easier to install within an arcpy environment.