Hi Marius/all,
On 30 Jan 2019, at 15:45, Marius Dumitru Florea
<mariusdumitru.florea(a)xwiki.com> wrote:
Hi devs,
I'm working on
https://jira.xwiki.org/browse/XWIKI-1660 (I need it for
https://jira.xwiki.org/browse/XWIKI-13352) and I'd like to change the page
rename job (from refactoring module) to update the existing objects when a
class is renamed *if the "Update links" options is checked*.
Of course, we could add a new option (e.g. "Update objects") but:
* it complicates the rename UI (too many options)
* I think most of the users understand the current "Update links" option as
"update the places where this page is *used*". I don't think it makes
sense
to have separate options (at least at the UI level) for things like "Update
macro calls" or "Update image includes".
* I don't see why you would want to update the back-links but not the
objects (or the other way around).
Sounds good to me in general.
If we agree on using a single option ("Update
links") then the next
questions are:
* Is there a better name? I think "Update links" is a good name for simple
users so I would keep it. Another option is "Update references" but it has
a special meaning for XWiki developers.
Maybe "Update other pages” with a hint saying “Ensure that other pages using the
renamed pages continue to work after the rename”.
?
* Should we update the hint for the "Update links" option? I think we
should, but only for advanced users, since they should be aware of the
implications of renaming a class. Simple users are not aware of the
existence of objects, most probably, so I wouldn't complicate their lives.
Would be nicer to find a single message that work for everyone but I agree it’s not easy
if we wish to provide details.
I feel a nicer option would be to NOT show “Update other pages” for simple users since
that should always be checked. Only offer the ability to uncheck it for advanced users and
this solves the hint issue too :)
The final question is whether we should keep the
rename job question about
classes. I think we should. The reason we added it is because renaming a
class is currently dangerous. Updating the objects makes it a bit less
dangerous because the data is preserved, but classes are often used in
scripts (e.g. a live table) and those scripts are not updated so there's a
high chance that something will not work correctly after the class rename.
Sounds good.
Thanks
-Vincent
WDYT?
Thanks,
Marius