[QGIS-Developer] QGIS Full Stack Web Developer Report

Tim Sutton tim at kartoza.com
Sat Nov 25 15:06:35 PST 2023


@Matthias Kuhn <matthias at opengis.ch> and @Julien Moura
<julien.moura at oslandia.com> I fixed the permissions, the board for Lova is
public now. Please feel free to add items to the backlog and mark them as
priority as needed.  I also asked Lova to try to work through all the old
issues and fix / close them as appropriate so we can try to get the number
of tickets down to a small number.

Regards

Tim

On Sat, Nov 25, 2023 at 8:37 AM Matthias Kuhn <matthias at opengis.ch> wrote:

> Hi,
>
> Thank you very much Lova for working on this application, it's a very
> important piece in the QGIS ecosystem!
>
> For the current discussion, I would also suggest making the license
> recommended for now and only start enforcing it on a schedule. And I was
> wondering if a license field in the metadata.txt would be even better (cmp.
> https://python-poetry.org/docs/pyproject/#license), that would be easier
> to show on the plugin page?
>
> Is there any way to help prioritizing the issues? I have some wishes that
> I would love to see land on the backlog
>
> Kind regards and thanks again for all the good work on this !
> Matthias
>
> On Fri, Nov 24, 2023 at 11:49 AM Julien Moura via QGIS-Developer <
> qgis-developer at lists.osgeo.org> wrote:
>
>> Dear Tim,
>>
>> Thanks for taking in account my thoughts and make the discussion possible.
>>
>> Regarding the second about change management, I totally agree and feel
>> really thankful that you make those changes. I can imagine the work it
>> represents for your teams maintaining a project like this one. So thank you
>> again.
>>
>> Regarding your proposal about the license requirements, why not starting
>> apply the change management to this? It's a breaking change, even for new
>> plugins, right? So, it should be lowered to a non blocking warning,
>> documented in PyQGIS cookbook and then deployed as a blocking error in a
>> known time windows. This way, in the meanwhile, the plugins ecosystem can
>> adapt to new rules (new versions for tools like minimal plugin,
>> qgis-plugin-ci, plugin builder...) and make this change more acceptable and
>> frictionless.
>>
>> Moreover, the rationale behind the required license file into the plugin
>> archive is still not solved.
>>
>> If you want, I can make a PR to change the warning but I'm pretty sure
>> that's not the question here.
>>
>> https://github.com/orgs/qgis/projects/6
>>
>> Just to let you know this hyperlink leads to a 404 (probably a Github
>> rights access setting somewhere).
>>
>> Regards
>> On 24/11/2023 10:50, Tim Sutton wrote:
>>
>> Dear Julien
>>
>> Thank you so much for your engagement and suggestions. Fully agreed that
>> breaking changes should be well communicated first. So splitting the
>> discussion in two:
>>
>>
>> 1) License requirements: for now I have chatted with Lova and we propose:
>>
>> a) Change the logic such that a license is required for newly registered
>> plugins
>> b) When updates are made to existing plugins that do not include a
>> license, the uploader will be shown a warning indicating that in future the
>> license will  be mandatory
>>
>> This is already implemented in
>> https://github.com/qgis/QGIS-Django/pull/311 and I propose we deploy
>> this today / ASAP to address the previously raised issues.
>>
>> 2) Change management:
>>
>> Yes I think we can introduce more rigour in the process.
>>
>> * breaking changes: discuss with the community first, implement, deploy
>> in a known time window
>> * non-breaking changes: for simple bug fixes, just fix, test and deploy
>> as needed
>> * non-breaking changes: for features etc. these will be managed on the
>> project board here, anyone who wants to be engaged in the process can see
>> the planned upcomming work and interact with Lova via the ticket queue.
>> https://github.com/orgs/qgis/projects/6
>> * requests to improvements: please file tickets here
>> https://github.com/qgis/QGIS-Django/issues
>>
>> Regarding a staging site, currently we do not run a staging environment,
>> developers have local test environments and I am on the fence as to whether
>> there is a lot of value in us maintaining a long running staging site.
>>
>> Regards
>>
>> Tim
>>
>>
>>
>>
>> On Fri, Nov 24, 2023 at 8:08 AM Lova Andriarimalala via QGIS-Developer <
>> qgis-developer at lists.osgeo.org> wrote:
>>
>>> Dear Julien,
>>>
>>>
>>>
>>> That’s well noted. Thank you.
>>>
>>> I will add a detailed description in each PR in the future.
>>>
>>> Regarding the issue of LICENSE file requirements, I totally agree with
>>> you. I will also ask Tim if he has suggestions about it.
>>>
>>>
>>>
>>> Best regards,
>>>
>>> Lova
>>>
>>>
>>>
>>>>>>
>>> [image: Image]
>>>
>>>
>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: +261(0)34 09 524 73 <+261340952473>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> *From: *Julien Moura <julien.moura at oslandia.com>
>>> *Date: *Friday, 24 November 2023 at 10:47 AM
>>> *To: *Lova Andriarimalala <lova at kartoza.com>,
>>> qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> *Subject: *Re: [QGIS-Developer] QGIS Full Stack Web Developer Report
>>>
>>> Thanks for your quick reply here Lova,
>>>
>>> I've no special legibility that my opinion would be greater than yours,
>>> so I can't tell if it has to be reverted or not. That's why I ask for
>>> discussion before deploying some breaking change, without any warning or
>>> information. After having looked to others PR, I would like to see more
>>> description about what a PR does exactly, especially when it breaks
>>> something.
>>>
>>> In this case, even after the last PR, this is a breaking and
>>> undocumented change. For now, a plugin developer has no way to see that a
>>> LICENSE file is now required in its plugin's zip. An error message in a log
>>> is not a suitable information, even it's well formulated and clear,
>>> especially in the era of automated CI/CD deployments.
>>>
>>> Regards,
>>> Julien
>>>
>>> On 24/11/2023 08:35, Lova Andriarimalala wrote:
>>>
>>> Dear Julien,
>>>
>>>
>>>
>>> Many thanks for your feedback.
>>>
>>>
>>>
>>> In the new PR, the license file is only required for new plugins. For
>>> existing plugin updates, it generates just a warning (but doesn't fail)
>>> when the license file is missing.
>>>
>>> However, I'm not sure if we should also just generate a warning for new
>>> plugin uploads for now. If so, I will also fix the new plugin upload.
>>>
>>>
>>>
>>> Kind regards.
>>>
>>>
>>>
>>>
>>>
>>>>>>
>>> [image: Image]
>>>
>>>
>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: +261(0)34 09 524 73 <+261340952473>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> *From: *QGIS-Developer <qgis-developer-bounces at lists.osgeo.org>
>>> <qgis-developer-bounces at lists.osgeo.org> on behalf of Julien Moura via
>>> QGIS-Developer <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Date: *Friday, 24 November 2023 at 10:30 AM
>>> *To: *qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Subject: *Re: [QGIS-Developer] QGIS Full Stack Web Developer Report
>>>
>>> Hello Lova,
>>>
>>> I cross post my comment to this issue
>>> <https://github.com/qgis/QGIS-Django/issues/38#issuecomment-1824010198>
>>> related to the PR mentioned below as "Make LICENSE file as required in
>>> plugin package <https://github.com/qgis/QGIS-Django/pull/309>", because
>>> I did not have any answer there but saw that some changes still have been
>>> applied without any comment.
>>>
>>> While trying to publish or update a plugin, we faced the new error
>>> message related to the deployment of this PR
>>> <https://github.com/qgis/QGIS-Django/pull/309>:
>>>
>>> > Fault string: <Fault 1: 'File upload must be a valid QGIS Python
>>> plugin compressed archive. Cannot find LICENSE in plugin package.'>
>>>
>>> See downstream issue on qgis-plugin-ci project (disclaimer: I'm one of
>>> the mainteners but speaking on my own here):
>>> https://github.com/opengisch/qgis-plugin-ci/issues/255
>>>
>>> I think this kind of change, which breaks the plugins'publication flow,
>>> should be discussed before to be implemented (an issue from 1 person seems
>>> to be too light to decide without any discussion), announced to the
>>> community, a warning campaign should be run and a transitional phase should
>>> be implemented (warning for 6 months, then error). This has a direct impact
>>> on hundreds (thousands?) of plugin developers on a community project with
>>> several million end users.
>>>
>>> I understand that this process may seem too cumbersome, and that since
>>> the QGIS Django project hasn't been so dynamic for a few years, it's nice
>>> to see it get a new lease of life, even if it means merging and deploying
>>> on an ongoing basis.
>>>
>>> As for the underlying principle, I'm generally in favor of strengthening
>>> the control mechanisms (automatic or otherwise) for extensions on the
>>> official repository, but I think it's really important to do this
>>> gradually, or at least to avoid unilateral change "descended from the skies
>>> of the developers".
>>>
>>> Concerning the idea of integrating the license in the plugin package,
>>> I'm not really convinced of the interest since most plugins are
>>> contaminated by the GPL2+ of QGIS <-- Qt and the license is never displayed
>>> to the end user. But why not. After all, it's always a good practice to
>>> include licence and spread the word about (re)usage rules.
>>>
>>> Reverting sounds maybe too rought so I suggest modyfing the behavior to
>>> lower the level and make it a simple warning and in the meanwhile starting
>>> a communication and preventive work upstream:
>>>
>>>    1. update documentation:
>>>    https://docs.qgis.org/3.28/en/docs/pyqgis_developer_cookbook/plugins/plugins.html
>>>    2. communicate on the QGIS Dev list **before** the implementation to
>>>    discuss the rationale
>>>    3. integrate a warning mechanism
>>>    4. manage the QGIS versions concerned (only applicable to new QGIS
>>>    released versions after this being merged)
>>>
>>> A last question: did you have some pre-production environment where to
>>> deploy new changes in order to evaluate them before publishing widely? Or
>>> some versioning logic, milestone workflow where PRs are grouped before
>>> being deployed?
>>>
>>> Regards,
>>> Julien
>>>
>>> On 17/11/2023 13:59, Lova Andriarimalala via QGIS-Developer wrote:
>>>
>>> Hello everyone,
>>>
>>>
>>>
>>> Please find below the report summarizing the progress on the feed and
>>> plugins website development for this week.
>>>
>>> *PRs open:*
>>>
>>> 1.       Add support for renaming plugin name
>>> <https://github.com/qgis/QGIS-Django/pull/302>
>>>
>>> 2.       Add command to fix none in search results
>>> <https://github.com/qgis/QGIS-Django/pull/304>
>>>
>>> 3.       Show more records, records items per page
>>> <https://github.com/qgis/QGIS-Django/pull/306>
>>>
>>> 4.       Specify tag page title and other plugin page title
>>> <https://github.com/qgis/QGIS-Django/pull/308>
>>>
>>> 5.       Make LICENSE file as required in plugin package
>>> <https://github.com/qgis/QGIS-Django/pull/309>
>>>
>>>
>>>
>>> *PR merged:*
>>>
>>> 6.       Update dockerfile and requirements for production
>>> <https://github.com/qgis/qgis-feed/pull/44>
>>>
>>> 7.       Update requirements according to production
>>> <https://github.com/qgis/qgis-feed/pull/47>
>>>
>>> 8.       Add geoip2 in production, setting up log
>>> <https://github.com/qgis/qgis-feed/pull/48>
>>>
>>> 9.       Use contry code when testing daily_visit.country
>>> <https://github.com/qgis/qgis-feed/pull/51>
>>>
>>>
>>>
>>> *Still working on:*
>>>
>>> 1.       Fresh plugin includes obsolete stuff
>>> <https://github.com/qgis/QGIS-Django/issues/46>
>>>
>>>
>>>
>>> Changes to the QGIS Feed website are now deployed and available at
>>> https://feed.qgis.org.
>>>
>>>
>>>
>>> Have a great weekend,
>>>
>>> Lova
>>>
>>>
>>>
>>>
>>>
>>>>>>
>>> [image: Image]
>>>
>>>
>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: +261(0)34 09 524 73 <+261340952473>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> *From: *Lova Andriarimalala <lova at kartoza.com> <lova at kartoza.com>
>>> *Date: *Friday, 10 November 2023 at 5:32 PM
>>> *To: *qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Subject: *Re: QGIS Full Stack Web Developer Report
>>>
>>> Hello everyone,
>>>
>>>
>>>
>>> Please find below the report summarizing the progress on the feed and
>>> plugins website development for this week.
>>>
>>> *PRs open:*
>>>
>>> 10.    Add support for renaming plugin name
>>> <https://github.com/qgis/QGIS-Django/pull/302>
>>>
>>> 11.    Update dockerfile and requirements for production
>>> <https://github.com/qgis/qgis-feed/pull/44>
>>>
>>>
>>>
>>> *PR merged:*
>>>
>>> 1.       Add web page UI on the root URL
>>> <https://github.com/qgis/qgis-feed/pull/43>
>>>
>>>
>>>
>>> *Still working on:*
>>>
>>> 2.       Deployment of the feed updates
>>>
>>>
>>>
>>> Have a great weekend,
>>>
>>> Lova
>>>
>>>>>>
>>> [image: Image]
>>>
>>>
>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: +261(0)34 09 524 73 <+261340952473>
>>>
>>>
>>>
>>>
>>>
>>> *From: *Lova Andriarimalala <lova at kartoza.com> <lova at kartoza.com>
>>> *Date: *Friday, 3 November 2023 at 5:05 PM
>>> *To: *qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Subject: *Re: QGIS Full Stack Web Developer Report
>>>
>>> Hello everyone,
>>>
>>>
>>>
>>> Please find below the report summarizing the progress on the feed site
>>> development for this week.
>>>
>>>
>>>
>>> *PRs open:*
>>>
>>>
>>>    1. Add web page UI on the root URL
>>>    <https://github.com/qgis/qgis-feed/pull/43>
>>>
>>> *PR merged:*
>>>
>>>
>>>    1. Using rich editor for content, check data validity
>>>    <https://github.com/qgis/qgis-feed/pull/42>
>>>
>>> *Still working on:*
>>>
>>>
>>>    1. Some checks and fixes on the entirety
>>>    <https://github.com/qgis/qgis-feed/issues/18>
>>>
>>> Have a great weekend,
>>>
>>> Lova
>>>
>>>
>>>
>>>>>>
>>> [image: Image]
>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Web Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: *+261(0)34 09 524 73*
>>>
>>>
>>>
>>>
>>>
>>> *From: *Lova Andriarimalala <lova at kartoza.com> <lova at kartoza.com>
>>> *Date: *Friday, 27 October 2023 at 4:53 PM
>>> *To: *qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Subject: *Re: QGIS Full Stack Web Developer Report
>>>
>>> Hello everyone,
>>>
>>>
>>>
>>> I'm grateful for your warm welcome, and I'm truly thrilled to join this
>>> wonderful community.
>>>
>>> Here is the report summarizing the progress on the feed site development
>>> for this week.
>>>
>>> *PRs open:*
>>>
>>>    1. Form submission management
>>>       <https://github.com/qgis/qgis-feed/pull/39>
>>>
>>> *PR merged:*
>>>
>>>    1. Feeds list page with filter and sorting
>>>       <https://github.com/qgis/qgis-feed/pull/30>
>>>       2. Feed item form with preview
>>>       <https://github.com/qgis/qgis-feed/pull/32>
>>>       3. Feed form review step
>>>       <https://github.com/qgis/qgis-feed/pull/33>
>>>       4. Implement webpack and use it for Bulma CSS
>>>       <https://github.com/qgis/qgis-feed/pull/34>
>>>
>>> *Still working on:*
>>>
>>>    1. Improve feed item form: Check data validity
>>>       <https://github.com/qgis/qgis-feed/issues/25>
>>>
>>>
>>>
>>> Have a great weekend,
>>>
>>> Lova
>>>
>>>
>>>
>>>>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Web Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: *+261(0)34 09 524 73*
>>>
>>>
>>>
>>>
>>>
>>> *From: *Lova Andriarimalala <lova at kartoza.com> <lova at kartoza.com>
>>> *Date: *Friday, 20 October 2023 at 2:54 PM
>>> *To: *qgis-developer at lists.osgeo.org <qgis-developer at lists.osgeo.org>
>>> <qgis-developer at lists.osgeo.org>
>>> *Subject: *QGIS Full Stack Web Developer Report
>>>
>>> Hello everyone,
>>>
>>>
>>>
>>> Currently, I am working on the website that administers the feeds
>>> displayed in the news area of QGIS. The website's repository is available
>>> on GitHub: https://github.com/qgis/qgis-feed
>>>
>>>
>>>
>>> Please find below the report for the past two weeks.
>>>
>>> *PRs open:*
>>>
>>>    1. Feeds list page with filter and sorting
>>>       <https://github.com/qgis/qgis-feed/pull/30>
>>>       2. Feed item form with preview
>>>       <https://github.com/qgis/qgis-feed/pull/32>
>>>       3. Feed form review step
>>>       <https://github.com/qgis/qgis-feed/pull/33>
>>>
>>> *PR merged:*
>>>
>>>    1. Create a login page, add test cases, configure GH actions
>>>       <https://github.com/qgis/qgis-feed/pull/28>
>>>
>>> *Still working on:*
>>>
>>>    1. Use web pack for bulma CSS
>>>       <https://github.com/qgis/qgis-feed/issues/29>
>>>
>>>
>>>
>>> Please do not hesitate to provide any feedback regarding the report
>>> structure or layout. Your suggestions are highly appreciated, as they will
>>> enable us to improve the report's quality and readability. Thank you for
>>> taking the time to review the report.
>>>
>>>
>>>
>>> Have a great weekend,
>>>
>>> Lova
>>>
>>>
>>>
>>>>>>
>>> *Lova Andriarimalala*
>>>
>>> *QGIS Full Stack Web Developer*
>>>
>>> Visit http://kartoza.com to find out about open source:
>>>
>>> * Desktop GIS programming services
>>>
>>> * Geospatial web development
>>>
>>> * GIS Training
>>>
>>> * Consulting Services
>>>
>>> Office: *+261(0)34 09 524 73*
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>>
>>> QGIS-Developer mailing list
>>>
>>> QGIS-Developer at lists.osgeo.org
>>>
>>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>>
>>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>>
>>> _______________________________________________
>>> QGIS-Developer mailing list
>>> QGIS-Developer at lists.osgeo.org
>>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>>
>>
>>
>> --
>>
>> ------------------------------------------------------------------------------------------
>>>>
>> Tim Sutton
>> Kartoza Co-Founder
>> Visit http://kartoza.com to find out about open source:
>>  * Desktop GIS programming services
>>  * Geospatial web development
>> * GIS Training
>> * Consulting Services
>> Tim is a member of the QGIS Project Steering Committee
>>
>> -------------------------------------------------------------------------------------------
>>
>> _______________________________________________
>> QGIS-Developer mailing list
>> QGIS-Developer at lists.osgeo.org
>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
>>
>

-- 
------------------------------------------------------------------------------------------
​

Tim Sutton
Kartoza Co-Founder
Visit http://kartoza.com to find out about open source:
 * Desktop GIS programming services
 * Geospatial web development
* GIS Training
* Consulting Services
Tim is a member of the QGIS Project Steering Committee
-------------------------------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20231125/4c711cc0/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 6123 bytes
Desc: not available
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20231125/4c711cc0/attachment-0001.jpg>


More information about the QGIS-Developer mailing list