WhereGroup / profile-manager

https://plugins.qgis.org/plugins/profile-manager/
MIT License
3 stars 5 forks source link

Profile Manager x QGIS Deployment Toolbelt: an impacting contribution proposal #10

Open Guts opened 5 months ago

Guts commented 5 months ago

Hello,

I am the main contributor to the QGIS Deployment Toolbelt (QDT) project, a large part of whose functional scope is based on QGIS profiles.
In particular, the tool introduces the concept of a profile descriptor in the form of a profile.json file.

As already mentioned in a mailing list, thank you for your plugin, which we recommend to QDT customers for preparing their profiles.

QDT is still a young project and by now we've reached the point where the need to facilitate profile editing is now paramount.

Developing a QGIS "QDT" plugin seems natural, but at Oslandia our rule is to give priority to existing projects before reinventing the wheel, even if it means making the effort to find a consensus and make compromises.

Would you agree to us investing in your plugin and integrating mechanisms linked to our development standards and QDT?

In concrete terms, this would involve :

This list is not exhaustive, and the idea is not to do everything at once, but to work with atomic PRs (as far as possible since formatting/lint related work always impact a bunch of files).

This implies a consequent workload for you in reviewing PRs and discussing implementations details.


Roadmap

kannes commented 5 months ago

This sounds very nice and I will try to get the OK for it next week. QDT is a fantastic initiative and we are honored that this plugin is useful for you too. :)

Would you have resources to "take over" my old unfinished PR https://github.com/WhereGroup/profile-manager/pull/8 ? Otherwise I would prefer to find time to get that in a mergeable state first and merge it. It contains some substantial refactoring and fixed many bugs iirc. Unfortunately I had to jump into other projects before getting it done. If I had known that, I would have worked in more sane and atomic small steps... For us that would be enough to drop the experimental flag.

License: Oh ouch, I guess the MIT license is too "open" for a QGIS plugin and we must always stay with the GPL?

kannes commented 3 months ago

Sorry for the late reply! We are happy to collaborate :) Your proposed chances and additions sound fantastic.

Guts commented 3 weeks ago

Hello @kannes

It's my turn to apologize for the delay in responding.

First of all, my bandwidth was completely eaten up by other projects. I wanted to wait until I had some idea of how to proceed and how to finance all this.

We've now isolated a small budget and some functional requirements. We're about to get started.

My colleague @jmkerloch and I are about to create some PR in next days/weeks.

QDT is a fantastic initiative and we are honored that this plugin is useful for you too. :)

Thanks!

Would you have resources to "take over" my old unfinished PR https://github.com/WhereGroup/profile-manager/pull/8 ? Otherwise I would prefer to find time to get that in a mergeable state first and merge it. It contains some substantial refactoring and fixed many bugs iirc. Unfortunately I had to jump into other projects before getting it done. If I had known that, I would have worked in more sane and atomic small steps... For us that would be enough to drop the experimental flag.

Is this branch functional or really far from a mergeable state? I would prefer to start from your more recent work because I don't like tue idea to throw it. It has been produced, so let use it. For example, I've changed the base branch to clean2023 for the first PR (introducing git hooks).

If you prefer, we can start from main and cherry-pick some interesting commits only from clean2023.

jmkerloch commented 3 weeks ago

Hello @kannes

I will work with @Guts to make profile-manager the perfect match with QDT for a set of perfect tools for QGIS profile deployment.

I just checked the #8 MR and I think this should be merged before. This is a nice refactoring work.

I will start from this branch and the first think I want to introduce is CI/CD for automatic release creation.

I will then add documentation generation for GitHub Pages.

kannes commented 3 weeks ago

Awesome!

I will check that old #8 branch of mine on Wednesday and get it merged. It's definitely a better base than what is in the main branch so basing the PR on it is perfect.

Guts commented 2 weeks ago

Hey @kannes,

How was it in Bratislava? Not too rainy :umbrella:?

@jmkerloch has started working on, see his first PR: https://github.com/jmkerloch/profile-manager/pull/2.

I've updated this issue description to list roadmap items.

kannes commented 1 week ago

Sorry for the late reply. Unfortunately had I found that #8 is more of a mess than I remembered...

In my tests it did not actually transfer data sources or bookmarks (and probably more) between profiles anymore. I tried to fix it but quickly ran into QGIS-profiles-are-a-mess fatique again and am not sure when I will have proper time and focus for fixing. I remember why I started collecting profile data for automating testing back then. :]

If it is ok with you, I would still be fine with merging it into the main branch anyways so anything you do is already based on it.

That would mean that main would not be usable for a while. The current main version also has its issues (silently failing, not discovering many things, etc) so it is not thaaat much worse. It definitely needs work before a new release and especially before removing the experimental flag. I wish this would have had more rigorous testing and QC when it was initially developed.

I might be able to dedicated two full days on this end of October but can't promise.

Guts commented 1 week ago

No worries @kannes, thanks for taking time to review and follow our work.

After discussion with @jmkerloch, we are Ok to merge your branch into main and start working from it. Don't worry about the "mess", we have :soap: and :broom:!

I might be able to dedicated two full days on this end of October but can't promise.

Is it time dedicated to review our PRs and merge it or to develop?

kannes commented 1 week ago

Done! :partying_face:

I might be able to dedicated two full days on this end of October but can't promise.

Is it time dedicated to review our PRs and merge it or to develop?

For fixing those bugs if they are still alive then. My goal for your PRs is to merge them asap so that you are not held back. I will only have time for cursorily reviewing so please don't rely on me for quality assurance ;)

Guts commented 1 week ago

Ok noted. It's really cool from you to trust us. We'll try to do our best!

kannes commented 1 day ago

I have now given @Guts Maintainer and @jmkerloch Writer rights to the repo to accelerate you :)

Thank you for working on this and all the great improvements you have added so far!

I will try to keep checking PRs roughly and at least every other day, but feel welcome to decide on your own that "this is good and it should get in". There probably isn't anything you could do that would go against my/our intentions, so :rocket: !

Guts commented 1 day ago

Woa thanks @kannes for trusting us :pray:.