- Issue created by @wim leers
- π¬π§United Kingdom f.mazeikis Brighton
Wim Leers β credited f.mazeikis β .
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
tests/src/Kernel/ComponentTest.php
will need to have theβ¦ 'sdc_test:my-banner' => TRUE, 'xb_test_sdc:props-no-slots' => FALSE, 'xb_test_sdc:props-slots' => FALSE, β¦
expectations updated to something like:
β¦ 'sdc_test:my-banner' => 'fails requirement FOO', 'xb_test_sdc:props-no-slots' => 'fails requirement BAR', 'xb_test_sdc:props-slots' => 'fails requirement BAZ', β¦
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
This is in the critical path for π± Milestone 0.1.0: Experience Builder Demo Active β see #3454125-53: Implement temporary design system for the DrupalCon Barcelona demo β .1.2.
- πΊπΈUnited States Kristen Pol Santa Cruz, CA, USA
This will be fantastic π
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
FYI: @f.mazeikis landed π Component config entities are incomplete: missing entries for optional props, causing errors in ComponentPropsForm Fixed earlier today, he's now pushing this forward π
- Merge request !259#3469684: Surface the REASON for an SDC not being made available in XB (i.e. not meeting criteria) β (Merged) created by Unnamed author
- Status changed to Needs review
3 months ago 9:54am 5 September 2024 - π¬π§United Kingdom f.mazeikis Brighton
Pushed the changes so far, don't want to polish this too much before we agree it's going in the right direction.
- Status changed to Needs work
3 months ago 10:24am 5 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
Definitely on the right track! π€©π
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
One post-review thought: we need to verify that the
state
service remains in sync with the SDC discovery cache. Otherwise, we risk that the state key-value pair is deleted while the SDCs already are discovered. That'd result in zero incompatible SDCs getting listed, while we know that's not the case. - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
This blocks π [PP-2] Add ComponentAuditabilityTest Active .
- Status changed to Needs review
3 months ago 3:53pm 6 September 2024 - π¬π§United Kingdom f.mazeikis Brighton
I think I've addressed all of the feedback.
- πΊπΈUnited States Kristen Pol Santa Cruz, CA, USA
This is so great! Tested the MR branch and one thing that seems to be wrong is that if you disable=>enable a component then it still shows up in the disabled list. Should it be removed? You can see in the video:
- Assigned to wim leers
- Assigned to f.mazeikis
- Status changed to Needs work
3 months ago 7:48am 9 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
Issue summary
- β tests now assert the expected reason for an SDC being incompatible β no more
- π
Bonus idea: a "Refresh" button that calls
::clearCachedDefinitions()
+::getDefinitions()
, to force a refresh :)@f.mazeikis, you haven't mentioned this at all, I think it'd take you <5 minutes to implement this and it'd help https://www.drupal.org/project/demo_design_system a lot? ππ€
- π tag: Screenshots are missing from the issue summary.
Review
I know that you've chosen the pragmatic route to unblock/accelerate @kristen pol ASAP. And I support that.
But then we need to explicitly acknowledge/document those pragmatic choices that we already know are not the right long-term ones. IOW: I'm missing many documentation bits and many
@todo
s. See review threads on the MR for details.Finally: I previously already said the "reason" strings should be optimized for actionability. It's far better now, but this is still a problem:
π That does not match the contents of the
*.component.yml
files due to different encoding β in the YAML files it is:$ref: json-schema-definitions://experience_builder.module/shoe-icon
So let's ensure those schema definition URIs can be copy/pasted and grepped π
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
WRT my remark on the MR about
@state
possibly getting wiped: that possibility for inconsistent state is already demonstrated by @kristen pol in https://youtu.be/5xsS7enWvSA?feature=shared&t=36 AFAICTβ¦ π - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
#15: hah, I think I predicted that bug while reviewing the code: https://git.drupalcode.org/project/experience_builder/-/merge_requests/2... π
- Status changed to Needs review
3 months ago 11:18am 9 September 2024 - π¬π§United Kingdom f.mazeikis Brighton
Bonus idea: a "Refresh" button that calls ::clearCachedDefinitions() + ::getDefinitions(), to force a refresh :)
This already happens on every page load for the "Disabled components" page. Would you prefer that not to happen and introduce a separate "refresh" button to trigger this behaviour manually?
Other than that, I've addressed (or at least replied to) the feedback on the MR. - Status changed to Needs work
3 months ago 12:44pm 9 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
#20: oh, I see, I missed that! That's probably better still π We'll have to wait and see if this reveals performance issues down the line.
@f.mazeikis posted screenshots in the MR on Friday, I missed those: https://git.drupalcode.org/project/experience_builder/-/merge_requests/2...
This MR still has merge conflicts that need to be resolved, plus there are some loose ends that should be addressed prior to merging π (See detailed feedback on MR.)
- Status changed to Needs review
3 months ago 4:49pm 9 September 2024 - π¬π§United Kingdom f.mazeikis Brighton
Addressed additional feedback, waiting on more feedback on 2 unresolved threads in MR.
- Status changed to Needs work
3 months ago 7:50am 10 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
The problems/challenges that were identified while working on this and that were discussed should be captured both as:
- actually existing follow-up issues in the issue queue, because it A) creates a backlog, B) helps get a sense of remaining work, C) empowers new contributors to start contributing on less complicated issues
@todo
s in the codebase pointing to those follow-up issues
Once that's done, this will be RTBC :)
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
Follow-ups exist now:
- π XB Component config entity's `status` may only be `true` iff it meets all of XB's requirements Active
- π Capture all reasons why particular SDC is incompatible Active
π
Posted one last round of review, found some nits/incorrect suggestion in the
*.schema.yml
, and a bit of dead code. Once addressed, this will be RTBC π - Status changed to Needs review
3 months ago 11:22am 10 September 2024 - π¬π§United Kingdom f.mazeikis Brighton
Applied suggestions, converted controller into a service, added comments.
- Status changed to Needs work
3 months ago 12:50pm 10 September 2024 - Issue was unassigned.
- Status changed to RTBC
3 months ago 2:03pm 10 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
On the verge of landing π₯³ β slightly delayed because @f.mazeikis decided to actually implement my very optional suggestion of using invokable services as controllers β , which does make for a nicer, cleaner end result, and it'll be a good pattern for other controllers to copy π
-
wim leers β
committed 5c1c0664 on 0.x authored by
f.mazeikis β
Issue #3469684 by f.mazeikis, wim leers, kristen pol: Surface the REASON...
-
wim leers β
committed 5c1c0664 on 0.x authored by
f.mazeikis β
- Status changed to Fixed
3 months ago 2:15pm 10 September 2024 - π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
And updating the issue summary to simplify future git archeology: visualize the change + capture what the decisions ended up being :)
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
- This helps/accelerates π Implement temporary design system for the DrupalCon Barcelona demo Needs work .
- This unblocks π [PP-2] Add ComponentAuditabilityTest Active .
- And, we could start working on the two follow-ups mentioned in #24 at any time now π
Automatically closed - issue fixed for 2 weeks with no activity.