Remove unnecessary dependencies before DrupalCon Barcelona

Created on 31 July 2024, about 2 months ago
Updated 12 September 2024, 6 days ago

Problem/Motivation

Right now, since SDDS is based on CivicTheme which requires a number of contributed modules, those modules need to be installed to install SDDS. We want to minimize the dependency requirements to make it easier to install SDDS for the demo and for people testing.

Steps to reproduce

Proposed resolution

Figure out which modules can be removed from the dependencies.

Remaining tasks

  • Go through all modules separately and analyze which can be removed
  • Consider how these could be added optionally
  • Test without those modules
  • Update docs to reflect these changes

Current dependencies that are currently in Starshot

  1. drupal:block_content
  2. drupal:config
  3. drupal:content_moderation
  4. drupal:focal_point
  5. drupal:help
  6. drupal:image
  7. drupal:inline_form_errors
  8. drupal:media
  9. drupal:media_library
  10. drupal:node
  11. drupal:options
  12. drupal:shortcut
  13. drupal:system
  14. drupal:taxonomy
  15. drupal:user
  16. drupal:views
  17. linkit:linkit
  18. pathauto:pathauto
  19. redirect:redirect
  20. webform:webform

Current dependencies that are currently in Starshot but will be replaced by XB

  1. drupal:layout_builder (replaced by XB)
  2. drupal:layout_discovery (replaced by XB)

Current dependencies that need analysis

  1. components:components (replaced by SDC)
  2. drupal:datetime_range
  3. drupal:ckeditor (replaced by ckeditor5, current config is actually for ckeditor5)
  4. drupal:rest
  5. field_group:field_group
  6. layout_builder_restrictions:layout_builder_restrictions (replaced by XB)
  7. menu_block:menu_block
  8. paragraphs:paragraphs (replaced by XB)
  9. search_api:search_api (optional config)
  10. search_api:search_api_db (optional config)

User interface changes

Some of the CivicTheme functionality like search or page building via paragraphs won't be available in the demo. If possible, we can make these an optional feature that could be turned on separately.

API changes

Data model changes

πŸ“Œ Task
Status

Fixed

Version

1.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @Kristen Pol
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Add the dependencies to the summary.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Add more clarification.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Currently Starshot adds these out-of-the-box:

    1. Core Announcements (announcements_feed) Enabled 10.3.1
    2. Core Automated Cron (automated_cron) Enabled 10.3.1
    3. Core BigPipe (big_pipe) Enabled 10.3.1
    4. Core Block (block) Enabled 10.3.1
    5. Core Block Content (block_content) Enabled 10.3.1
    6. Core Breakpoint (breakpoint) Enabled 10.3.1
    7. Core CKEditor 5 (ckeditor5) Enabled 10.3.1
    8. Core Comment (comment) Enabled 10.3.1
    9. Core Configuration Manager (config) Enabled 10.3.1
    10. Core Content Moderation (content_moderation) Enabled 10.3.1
    11. Core Contextual Links (contextual) Enabled 10.3.1
    12. Field types Datetime (datetime) Enabled 10.3.1
    13. Core Database Logging (dblog) Enabled 10.3.1
    14. Core Internal Dynamic Page Cache (dynamic_page_cache) Enabled 10.3.1
    15. Core Text Editor (editor) Enabled 10.3.1
    16. Core Field (field) Enabled 10.3.1
    17. Core Field UI (field_ui) Enabled 10.3.1
    18. Field types File (file) Enabled 10.3.1
    19. Core Filter (filter) Enabled 10.3.1
    20. Core Help (help) Enabled 10.3.1
    21. Core History (history) Enabled 10.3.1
    22. Field types Image (image) Enabled 10.3.1
    23. Core Inline Form Errors (inline_form_errors) Enabled 10.3.1
    24. Core Layout Builder (layout_builder) Enabled 10.3.1
    25. Core Layout Discovery (layout_discovery) Enabled 10.3.1
    26. Field types Link (link) Enabled 10.3.1
    27. Core Media (media) Enabled 10.3.1
    28. Core Media Library (media_library) Enabled 10.3.1
    29. Core Custom Menu Links (menu_link_content) Enabled 10.3.1
    30. Core Menu UI (menu_ui) Enabled 10.3.1
    31. Core MySQL (mysql) Enabled 10.3.1
    32. Core (Experimental) Navigation (navigation) Enabled 10.3.1
    33. Core Node (node) Enabled 10.3.1
    34. Field types Options (options) Enabled 10.3.1
    35. Core Internal Page Cache (page_cache) Enabled 10.3.1
    36. Core Path (path) Enabled 10.3.1
    37. Core Path alias (path_alias) Enabled 10.3.1
    38. Core Search (search) Enabled 10.3.1
    39. Core Shortcut (shortcut) Enabled 10.3.1
    40. Core System (system) Enabled 10.3.1
    41. Core Taxonomy (taxonomy) Enabled 10.3.1
    42. Field types Text (text) Enabled 10.3.1
    43. Core Toolbar (toolbar) Enabled 10.3.1
    44. Core Update Manager (update) Enabled 10.3.1
    45. Core User (user) Enabled 10.3.1
    46. Core Views (views) Enabled 10.3.1
    47. Core Views UI (views_ui) Enabled 10.3.1
    48. Core Workflows (workflows) Enabled 10.3.1
    49. Field types Address (address) Enabled 2.0.2
    50. Spam control Antibot (antibot) Enabled 2.0.3
    51. Other Automatic Updates (automatic_updates) Enabled
    52. Other Automatic Updates Extensions (automatic_updates_extensions) Enabled
    53. Other Package Manager (package_manager) Enabled
    54. Other Coffee (coffee) Enabled 8.x-1.4
    55. Media Crop API (crop) Enabled 8.x-2.4
    56. Other Diff (diff) Enabled 8.x-1.7
    57. Navigation Easy Breadcrumb (easy_breadcrumb) Enabled 2.0.7
    58. ECA ECA Core (eca) Enabled 2.0.1
    59. ECA ECA Base (eca_base) Enabled 2.0.1
    60. ECA ECA Content (eca_content) Enabled 2.0.1
    61. ECA ECA UI (eca_ui) Enabled 2.0.1
    62. Media Focal Point (focal_point) Enabled 2.1.1
    63. Geocoding Geocoder (geocoder) Enabled 8.x-4.25
    64. Geocoding Geocoder Address (geocoder_address) Enabled 8.x-4.25
    65. Geocoding Geocoder Field (geocoder_field) Enabled 8.x-4.25
    66. Geocoding Geocoder Geofield (geocoder_geofield) Enabled 8.x-4.25
    67. Geofield Geofield (geofield) Enabled 8.x-1.60
    68. Other Gin Toolbar (gin_toolbar) Enabled 8.x-1.0-rc6
    69. Spam control Honeypot (honeypot) Enabled 2.1.3
    70. Geofield Leaflet (leaflet) Enabled 10.2.22
    71. Geofield Leaflet More Maps (leaflet_more_maps) Enabled 2.2.1
    72. User interface Linkit (linkit) Enabled 6.1.4
    73. Media Media entity download (media_entity_download) Enabled 8.x-2.3
    74. Other Media File Delete (media_file_delete) Enabled 1.3.1
    75. SEO Metatag (metatag) Enabled 2.0.0
    76. SEO Metatag: Open Graph (metatag_open_graph) Enabled 2.0.0
    77. Other Pathauto (pathauto) Enabled 8.x-1.12
    78. Other Project Browser (project_browser) Enabled
    79. Other Quick Node Clone (quick_node_clone) Enabled 8.x-1.18
    80. Other Redirect (redirect) Enabled 8.x-1.9
    81. Fields Simple Add More (sam) Enabled 1.3.1
    82. Other Scheduler (scheduler) Enabled 2.0.4
    83. SEO Simple XML Sitemap (simple_sitemap) Enabled 4.1.9
    84. Field types Smart Date (smart_date) Enabled 4.1.3
    85. Other Token (token) Enabled 8.x-1.15
    86. Other Type Tray (type_tray) Enabled 1.3.0
    87. Other ULI Custom Workflow (uli_custom_workflow) Enabled 1.0.0
    88. Administration Upgrade Status (upgrade_status) Enabled 4.3.4
    89. Webform Webform UI (webform_ui) Enabled 6.2.7
    90. Webform Webform (webform) Enabled 6.2.7
    91. Core Claro (claro) Enabled 10.3.1
    92. Core Olivero (olivero) Enabled 10.3.1
    93. Core Stark (stark) Enabled 10.3.1
    94. Gin (gin) Enabled 8.x-3.0-rc13
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Update summary to pull out ones that are already in the Starshot install.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Update to include dependencies that aren't listed in the composer.json file.

    ddev drush components block_content ckeditor5 config content_moderation datetime_range focal_point help image inline_form_errors layout_builder layout_discovery media media_library options rest shortcut taxonomy user views field_group layout_builder_restrictions linkit menu_block paragraphs pathauto redirect webform system node search_api search_api_db
    
  • Assigned to RichardGaunt
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Assigning to Richard to review and we can discuss.

  • Assigned to Kristen Pol
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    I need to look at this because XB doesn't work with Drupal CMS (Starshot) right now so I want to see if I can remove some dependencies to help with the installation process.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    I'm going to check which of these have Drupal 11 versions for now since maybe we can worry about the dependency removal in a week or two after things have settled down more.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    D11 analysis:

    Core (enabled with standard profile)

    • drupal:block_content
    • drupal:ckeditor5
    • drupal:config
    • drupal:help
    • drupal:image
    • drupal:node
    • drupal:options
    • drupal:shortcut
    • drupal:system
    • drupal:taxonomy
    • drupal:user
    • drupal:views

    Core (not enabled with standard profile)

    • drupal:content_moderation
    • drupal:datetime_range
    • drupal:inline_form_errors
    • drupal:layout_builder (replaced by XB)
    • drupal:layout_discovery (replaced by XB)
    • drupal:media
    • drupal:media_library
    • drupal:rest

    Contributed with D11 release

    WIP

    Contributed with D11 patch

    WIP

    Contributed without D11 release or patch

    WIP

    check these

    • drupal:focal_point
    • field_group:field_group
    • layout_builder_restrictions:layout_builder_restrictions (replaced by XB)
    • linkit:linkit
    • menu_block:menu_block
    • paragraphs:paragraphs (replaced by XB)
    • pathauto:pathauto
    • redirect:redirect
    • search_api:search_api (optional config)
    • search_api:search_api_db (optional config)
    • webform:webform
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    config analysis

    theme settings

    civictheme.settings.yml

    other config

    Perhaps some/all of this can be moved to "optional":

    • blocks (civictheme_content, civictheme_footer_sitebranding, civictheme_header_sitebranding, civictheme_header_sitebranding2, civictheme_help, civictheme_messages, civictheme_primaryadminactions, civictheme_tabs)
    • block_content and fields (civictheme_banner, civictheme_component_block, civictheme_mobile_navigation, civictheme_search, civictheme_social_links)
    • ckeditor (civictheme_rich_text)
    • content types and fields (civictheme_alert, civictheme_event, civictheme_page)
    • date/time formats (civictheme_short_date, civictheme_short_date_and_time)
    • image styles (civictheme_campaign, civictheme_event_card, civictheme_medium, civictheme_navigation_card, civictheme_promo_card, civictheme_publication_card, civictheme_slider_slide, civictheme_subject_card)
    • media types and fields (civictheme_audio, civictheme_document, civictheme_icon, civictheme_image, civictheme_remote_video, civictheme_video,
    • media view modes (component, embedded)
    • node view modes (civictheme_navigation_card, civictheme_promo_card, civictheme_slider_slide, civictheme_snippet)
    • paragraph types and fields (civictheme_accordion, civictheme_accordion_panel, civictheme_attachment, civictheme_automated_list, civictheme_callout, civictheme_campaign, civictheme_content, civictheme_event_card, civictheme_event_card_ref, civictheme_iframe, civictheme_manual_list, civictheme_map, civictheme_navigation_card, civictheme_navigation_card_ref, civictheme_next_step, civictheme_promo, civictheme_promo_card, civictheme_promo_card_ref, civictheme_publication_card, civictheme_service_card, civictheme_slider, civictheme_slider_slide, civictheme_slider_slide_ref, civictheme_snippet, civictheme_snippet_ref, civictheme_social_icon, civictheme_subject_card, civictheme_subject_card_ref, civictheme_webform
    • pathauto (civictheme_alert, civictheme_event, civictheme_page)
    • menu (civictheme-footer, civictheme-primary-navigation, civictheme-secondary-navigation)
    • taxonomy_term (civictheme_media_tags, civictheme_site_sections)
    • text formats (civictheme_plain_text, civictheme_rich_text)
    • user roles (civictheme_content_approver, civictheme_content_author, civictheme_site_administrator)
    • views (civictheme_alerts, civictheme_automated_list, civictheme_media, civictheme_moderated_content)
    • vocabulary (civictheme_media_tags, civictheme_site_sections, civictheme_topics)
    • webform (civictheme_enquiry, civictheme_feedback)
    • workflows (civictheme_editorial)
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Bumping priority now that the XB team wants us to focus on using D11 standard profile rather than Starshot / Drupal CMS.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    I have updated this project to be D11 compatible but that's in name only because components and webform don't have a D11 dev branch to use or a MR/patch that's ready.

    This is now a blocker so I'm not looking at moving all the config except for civictheme.settings.yml to optional config and see how it goes.

  • Status changed to RTBC 28 days ago
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    I was successful in moving all the config except the theme settings to optional config and removing the dependencies from the info file. This has been committed. Now I need to update the dev guide to reflect this.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Once πŸ“Œ Update SDDS development guide to use standard Drupal 11 profile Needs work been reviewed by others and is okay then this one can be marked fixed.

  • First commit to issue fork.
  • Pipeline finished with Success
    27 days ago
    Total: 166s
    #262240
  • Pipeline finished with Success
    27 days ago
    Total: 166s
    #262261
  • πŸ‡ΊπŸ‡ΈUnited States sea2709 Texas

    @Kristen: I removed unnecessary dependencies from composer.json of starshot_demo_design theme , I updated the package name as well (hopefully it's appropriate). MR is ready for review https://git.drupalcode.org/project/demo_design_system/-/merge_requests/25

  • Issue was unassigned.
  • Status changed to Postponed 23 days ago
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Marking postponed until we determine outcome of this one:

    πŸ“Œ Reconcile components vs SDC namespaces for SDDS includes/embeds Postponed

  • Status changed to Fixed 20 days ago
  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Everything was removed from a dependency so far except components module which I'll make a follow-up issue for that.

  • πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

    Actually, we already have:

    πŸ“Œ Reconcile components vs SDC namespaces for SDDS includes/embeds Postponed

    so that's fine for the follow-up issue.

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024