Problem/Motivation

shortcut_install() doesn't check config installer syncing flag while editing the seven theme settings.

Proposed resolution

Update the shortcut_install() so that it only edits config when config installer syncing flag is FALSE.

Remaining tasks

Review.
Commit.

User interface changes

None.

API changes

None.

Data model changes

None.

Issue fork drupal-2550357

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

jibran created an issue. See original summary.

jibran’s picture

larowlan’s picture

Status: Needs review » Reviewed & tested by the community

consistent with forum_install()

jibran’s picture

Issue tags: +Quick fix

Thank @larowlan.

alexpott’s picture

Status: Reviewed & tested by the community » Needs work
Issue tags: +Needs tests

It strikes me that we are missing test coverage. ConfigImportAllTest is the place to do this. We should change the value after this...

    // Install every module possible.
    \Drupal::service('module_installer')->install(array_keys($all_modules));

And the test the value at the end of the test. Should just be a couple a lines and it'd be nice to have a failing patch to show people what we're on about.

jibran’s picture

Status: Needs work » Needs review
StatusFileSize
new1.17 KB

I created this patch but it doesn't fail. Uploading it without the fix. What am I doing wrong here?

jibran’s picture

Status: Needs review » Needs work

Needs more investigation.

Version: 8.0.x-dev » 8.1.x-dev

Drupal 8.0.6 was released on April 6 and is the final bugfix release for the Drupal 8.0.x series. Drupal 8.0.x will not receive any further development aside from security fixes. Drupal 8.1.0-rc1 is now available and sites should prepare to update to 8.1.0.

Bug reports should be targeted against the 8.1.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.2.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.9 was released on September 7 and is the final bugfix release for the Drupal 8.1.x series. Drupal 8.1.x will not receive any further development aside from security fixes. Drupal 8.2.0-rc1 is now available and sites should prepare to upgrade to 8.2.0.

Bug reports should be targeted against the 8.2.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

jibran’s picture

@alexpott any idea how to proceed with this?

Version: 8.2.x-dev » 8.3.x-dev

Drupal 8.2.6 was released on February 1, 2017 and is the final full bugfix release for the Drupal 8.2.x series. Drupal 8.2.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.3.0 on April 5, 2017. (Drupal 8.3.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.3.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.6 was released on August 2, 2017 and is the final full bugfix release for the Drupal 8.3.x series. Drupal 8.3.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.4.0 on October 4, 2017. (Drupal 8.4.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.4.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

jibran’s picture

Title: Fix shortcut_install(): Only update config when syncing flag is TRUE » Fix shortcut_install() and shortcut_themes_installed(): Only update config when syncing flag is FALSE
Issue summary: View changes
Status: Needs work » Needs review
Issue tags: -Quick fix
StatusFileSize
new2.72 KB

shortcut_install() doesn't check config installer syncing flag while editing the seven theme settings.

Why do we need to check this?

Update the shortcut_install() so that it only edits config when config installer syncing flag is FALSE.

Why? system_install is setting the site uuid do we need to check config installer syncing flag there as well?

Meanwhile, I have updated the patch. If we should be checking the flag then we should do it for both shortcut_install and shortcut_themes_installed.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.4 was released on January 3, 2018 and is the final full bugfix release for the Drupal 8.4.x series. Drupal 8.4.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.5.0 on March 7, 2018. (Drupal 8.5.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.5.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.6 was released on August 1, 2018 and is the final bugfix release for the Drupal 8.5.x series. Drupal 8.5.x will not receive any further development aside from security fixes. Sites should prepare to update to 8.6.0 on September 5, 2018. (Drupal 8.6.0-rc1 is available for testing.)

Bug reports should be targeted against the 8.6.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.8.x-dev

Drupal 8.6.x will not receive any further development aside from security fixes. Bug reports should be targeted against the 8.8.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.9.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.7 was released on June 3, 2020 and is the final full bugfix release for the Drupal 8.8.x series. Drupal 8.8.x will not receive any further development aside from security fixes. Sites should prepare to update to Drupal 8.9.0 or Drupal 9.0.0 for ongoing support.

Bug reports should be targeted against the 8.9.x-dev branch from now on, and new development or disruptive changes should be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.9.x-dev » 9.2.x-dev

Drupal 8 is end-of-life as of November 17, 2021. There will not be further changes made to Drupal 8. Bugfixes are now made to the 9.3.x and higher branches only. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.2.x-dev » 9.3.x-dev

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.15 was released on June 1st, 2022 and is the final full bugfix release for the Drupal 9.3.x series. Drupal 9.3.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.4.x-dev branch from now on, and new development or disruptive changes should be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.9 was released on December 7, 2022 and is the final full bugfix release for the Drupal 9.4.x series. Drupal 9.4.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.5.x-dev branch from now on, and new development or disruptive changes should be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

needs-review-queue-bot’s picture

Status: Needs review » Needs work
StatusFileSize
new153 bytes

The Needs Review Queue Bot tested this issue. It either no longer applies to Drupal core, or fails the Drupal core commit checks. Therefore, this issue status is now "Needs work".

Apart from a re-roll or rebase, this issue may need more work to address feedback in the issue or MR comments. To progress an issue, incorporate this feedback as part of the process of updating the issue. This helps other contributors to know what is outstanding.

Consult the Drupal Contributor Guide to find step-by-step guides for working with issues.

alexpott’s picture

alexpott’s picture

Status: Needs work » Needs review
StatusFileSize
new2.1 KB
alexpott’s picture

@jibran - system is a special case. It's always installed and the site UUID is even more special with respect to configuration imports.

needs-review-queue-bot’s picture

Status: Needs review » Needs work
StatusFileSize
new85 bytes

The Needs Review Queue Bot tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".

Apart from a re-roll or rebase, this issue may need more work to address feedback in the issue or MR comments. To progress an issue, incorporate this feedback as part of the process of updating the issue. This helps other contributors to know what is outstanding.

Consult the Drupal Contributor Guide to find step-by-step guides for working with issues.

Version: 9.5.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

acbramley’s picture

Looks like this is still valid (install hook in shortcut on 11.x still looks roughly the same), needs a reroll into an MR.

chaitanyadessai made their first commit to this issue’s fork.

chaitanyadessai’s picture

Status: Needs work » Needs review

Please review MR from #24.

needs-review-queue-bot’s picture

Status: Needs review » Needs work

The Needs Review Queue Bot tested this issue.

While you are making the above changes, we recommend that you convert this patch to a merge request. Merge requests are preferred over patches. Be sure to hide the old patch files as well. (Converting an issue to a merge request without other contributions to the issue will not receive credit.)

akhil babu’s picture

Tried to reproduce this issue, but couldn't. These are the things that I've tried so far in fresh Drupal 10.3 instance (standard profile)

  • Set third_party_settings.shortcut.module_link value in claro.settings to FALSE
  • Exported the configuration
  • Uninstalled the shortcut module
  • Imported the configuration
  • The value of third_party_settings.shortcut.module_link should have changed to TRUE as per the hook_install code in the module. But the value after config sync was still FALSE

-------------------------

  • Set third_party_settings.shortcut.module_link value in claro.settings to FALSE
  • Exported configuraion
  • Uninstalled claro theme and changed the default admin theme to stark. (By default, it was claro)
  • Imported the configuration so that claro will get installed again
  • The value of third_party_settings.shortcut.module_link should have changed to TRUE as per the hook_themes_installed code in the module. But the value after config sync was still FALSE

So, unable to create a test for this as @jibran mentioned in #6. Adding 'Needs steps to reproduce' tag to proceed further.

akhil babu’s picture

Also, adding !\Drupal::isConfigSyncing() condition in shortcut_themes_installed breaks the standard profile recipe test. \Drupal::isConfigSyncing() is true while applying the recipe. Sothird_party_settings.shortcut.module_link value in claro.settings is never set to true. As a result, the shortcut module is installed, but the shortcut icon is not added next to titles when the recipe is applied.

Version: 11.x-dev » main

Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

Read more in the announcement.

quietone’s picture

Status: Needs work » Postponed

The Shortcut Module was approved for removal in #3476880: [Policy] Move Shortcut module to contrib.

This is Postponed. The status is set according to two policies. The Remove a core extension and move it to a contributed project and the Extensions approved for removal policies.

The deprecation work is in #3569117: [meta] Tasks to deprecate the Shortcut module and the removal work in #3569121: [meta] Tasks to remove the Shortcut module.

Shortcut will be moved to a contributed project before Drupal 12.0.0 is released.

smustgrave’s picture

Project: Drupal core » Shortcut (from core)
Version: main » 2.x-dev
Component: shortcut.module » Code
Status: Postponed » Needs work