Sorry to hit you with another 'critical' so fast. Hopefully you can work on them at the same time.
If you use the following checklist:
And you have a page that uses the 'featured' label AND has the same name in multiple spaces, you can have multiple rows that try to access the same peice of metadata. For example:
If you have three pages with the name "Home" in three spaces, A: B: and C:. If you edit the row for A:Home, you will immediately update the metadata for "why-featured.Home". This metadata is the same for A:Home, B:Home and C:Home.
Setting the comment for A: and B: results in this log:
Upon refresh, all three rows show the same value, "main help space"
Perculiarites
- if you change A and refresh, you see A B and C all changed. If you change A and don't refresh, B and C remain unchanged in the display.
- if you don't even have access to C (no edit pencil), you can still change the value since they use the same metadata key
- both of these are side effects that I think would be totally avoided if you had a unique key
Recommend
- use a unique key that incorporates the space. I.e. why-featured.A:Home
Note: Something to think about while you are making this change
- I think this will break the existing store=checklist metadata and perhaps the current 'checklist logs', so it should perhaps be considered a 'major' version update (1.3? 2.0?)
- What happens if I name one column A and another column A.B, and there is a page named B.C and a page named C?
Thanks! All all together awesome plugin.
This will mean that existing checklists will still show the existing data for non-duplicates, and after the next edit, even the duplicates should be stored properly.