Closed fiftydinar closed 3 weeks ago
IMO we shouldn’t deprecate what you call “literal name config” because:
* We just added it, deprecating it / calling it legacy immediately might be confusing for users and make the system feel less stable
I understand this, but it's better to fix the mistake now, rather than later.
* It works well for extensions where the names are unique and errors out for extensions where they aren’t, keeping it shouldn’t cause additional user frustration
It is a rare scenario, but it can happen that user's extension which he initially installed gets incompatible, while some other irrelevant extension with the same name is compatible & it gets installed without user knowing.
That's something that I'm not comfortable with.
* It produces more readable configuration files and has kind of a wow-effect (so you just install the extensions by typing their names there? cool), whereas IDs feel technical and produce unreadable configuration that basically requires comments
I agree with this, but see the point above where I'm uncomfortable.
Maybe that scenario realistically never happens, so we can keep both "literal-name" & "PK".
It is a rare scenario, but it can happen that user's extension which he initially installed gets incompatible, while some other irrelevant extension with the same name is compatible & it gets installed without user knowing.
That's something that I'm not comfortable with.
Can’t the module be made to error every time there are duplicate extensions names, even when the versions are different and one is incompatible?
The only scenario I see after that is an extension changing its name and another extension popping up with the same name as what that extension had previously, which would effectively make the user get something else than what they wanted. I find this unlikely too.
Can’t the module be made to error every time there are duplicate extensions names, even when the versions are different and one is incompatible?
I can do that too, while telling the user to input PK in recipe file instead if this happens.
@xynydev PR is now ready, please read the updated 1st post, especially "Status".
Subject
PK number ID config can be used now for recipe input, in case if any duplicated extensions exist. Module conveniently informs about this scenario & recommends the user to switch to PK ID in this case.
Mixed config in PK ID & "literal extension names" are supported for both install & uninstall entries.
Additionally not related to this PR's subject, I improved reliability of applying missing gschema.compiled workaround. I use UUID detetection now instead of "literal extension name".
Status
Apart from maybe some doc updates, it's ready to merge.
Wondering If I should add additional documentation besides module.yml or not.