GeoNode contrib apps should be considered like "extensions" allowing GeoNode to add some specific functionalities for specific purposes.
From another point of view, they could be considered like "plugins" that might be activated from the administrator of the system in order to extend it.
Alessio Fabiani GeoSolutions
2.10
Although GeoNode contrib apps should be treated as plugins, which means simply to install and configure as external libraries each one with its own specific documentation, most of them are not currently based on this concept. They are, instead, part of the core with several "if-else" statements around creating confusion and the impossibility to maintain them in the long term.
Also, they lack documentation and most of the time the few/outdated documentation is mixed with the core one and not having a dedicated section.
The aim of this proposal is to:
NOTE: for those apps listed below, we are proposing to first move them in their own repository and later on, if-and-only-if a volunteer/maintainer will be identified, work to transform them in a real pluggable Django apps instead of mixed stuff of "if-else" inside the GeoNode core.
I am voting for createlayer app to be a core app, it makes sense for me to be able to create empty layer in my SDI when i don't have shape file.
+1
would we use the GeoNode organization on GH? Or should we use a different space?
Extracted contribapps available here along with correctly formatted READMEs
@afabiani this is breaking WorldMap. My (uncorrect) assumption was that this change would have happened after 2.10. I wouldn't like to fork from master right now that we have the 2.10 release coming soon.
Can we for now backport worldmap and datastore_shards contrib apps in core? Otherwise I haven't the time in the next few days - before the release - to work on a new deployment procedure for this. Thanks!
@capooti nobody is chasing us after releasing at the summit, the goal is to get as close as possible. For sure there will be more need for documentation hence if you need some more time, that is not an issue, I believe.
@afabiani let's take this into account...
@capooti I have put the code along with the instruction on how to activate it again here
https://github.com/GeoNode/contribs/tree/master/geonode/contrib/worldmap
Could have a look at this?
@capooti by the way, I have made few changes in order to simplify the activation of hooksets from the settings and environment variables, see https://github.com/GeoNode/geonode/blob/master/geonode/settings.py#L1190
Try to follow the same approach, the GEONODE_CLIENT_LAYER_PREVIEW_LIBRARY instructs on which hookset activate
Thanks @afabiani and @simboss will have a look and let you know. For deployment should I consider the creation of a package on pypi?
@capooti absolutely yes, that would be ver good IMHO
@afabiani OK will try to work on this now.
Most helpful comment
I am voting for createlayer app to be a core app, it makes sense for me to be able to create empty layer in my SDI when i don't have shape file.