Problem/Motivation
Track the steps needed to deprecate extension Contact module. See Remove a core module and move it to a contributed project of the deprecation policy.
The removal of extension Contact module was approved in #3476879: [Policy] Move Contact module to contrib.
Remaining tasks
- Begin finding someone to maintain the contrib version of the extension.
- Move integrations implemented by other modules to the extension.
Create child issues or child meta issues, as needed, to address the following points. Not all points will apply to all extensions.- #3551599: Remove use of Contact from config_translation tests
- Move Help Topics to the extension.#3551376: Move mention of Contact from core help to contact module
- Remove the extension from one or more profiles. #3535775: Remove Contact module from the Standard profile #3551375: Remove Contact module from the Umami profile
- Remove the extension from one or more recipes. #3553006: Remove Contact recipe
- Remove references to the extension from database dumps. This will be done in a separate issue for all modules being deprecated.
- Remove templates from the extension’s markup.
- Remove templates from themes that are staying in core, leave them in deprecated themes
- Keep skipping the template in the stable copies test.
- For a module, handle migrations, #3551595: Handle migration test coverage for Contact
- ContentEntityNullStorageTest - #3556693: Change use of Contact in ContentEntityNullStorageTest
- UserPermissionsTest - #3555375: Change use of Contact in \Drupal\Tests\user\Functional\UserPermissionsTest::testAccessBundlePermission
- #3557102: Remove use of Contact in profile nightwatch_a11y_testing
- #3557103: Change use of Contact in ajax_test test module
- #3557105: Change use of Contact in SchemaCheckTrait
- #3557138: Remove use of Contact from ExtensionAvailableConstraintValidatorTest
- UpdateSystem/UpdatePathTestBaseFilledTest.php
- core/tests/Drupal/Nightwatch/Tests/Olivero/oliveroPreprocessFieldMultipleValueFormTest.js:17 - this test is using a test module so there is no change needed.
- Do a thorough search of core for any remaining references to the extension. If references are found, outside of the extension, then create issues to remove the references.
- Create the contrib project with a stable release, before the alpha version of the major release. Follow the process in Create the contrib project with a stable release for creating the sub tree split.
- Deprecate the core extension. #3520470: Deprecate the Contact module.
- #3567856: Ensure that Contact does not get special core treatment
Issue fork drupal-3520460
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
Comment #2
larowlanHappy to maintain it in contrib
Comment #3
andypost+1 to step in as co-maintainer
Comment #4
andypostAsked in slack access to the module https://drupal.slack.com/archives/C1BMUQ9U6/p1745586623875969
Comment #5
andypostFiled child #3521198: Offering to maintain Contact
Comment #6
thejimbirch commentedCore's standard recipes have references to the Contact module in addition to the standard profile.
I updated the issue summary. Did the list of tasks come from a template? If so, we should update that also as recipes probably did not exist at the time that list of things to do was generated.
Comment #7
jamesoakleySomewhere after
should there be a step to find all issues in the Core issue queue that relate to the Contact core module, and move them to the contrib project (presumably with a brief comment explaining). Any issues would need fixing in contrib first, with optional backport to the core version.
(I came here from #1997692: Create contact form block, which is one example)
Comment #8
quietone commented@jamesoakley, the tasks in this issue include marking the issues for the Contact module as postponed, with a message. The task to move them to the contrib project is part of the tasks to remove the module from core, which is worked on after the 12.x branch is open.
A search of core issue for issues that should be in the 'contact.module' is not done. It is assumed that issues have been triaged correctly.
Comment #9
andypostMoved the issue to gain access #3521198-2: Offering to maintain Contact
Comment #10
larowlanComment #11
andypostasked again #3521198-6: Offering to maintain Contact
Comment #12
quietone commentedSearching for tests and found these
plus
Comment #13
quietone commentedComment #14
quietone commentedComment #15
zviryatko commentedComment #16
andypostdiscussed with @xjm at Drupalcon and priority to clean-up standard profile and tests first for 11.3 and it's ok to do deprecation in 11.4/12
Comment #17
andypostremoval from standard profile is done!
Comment #18
andypostremoved from umami
now
- #3551599: Remove use of Contact from config_translation tests
- #3551376: Move mention of Contact from core help to contact module
- recipe and migrations
Comment #19
andypostComment #20
quietone commentedComment #21
andypostone more commited #3551599: Remove use of Contact from config_translation tests
Comment #22
zviryatko commented@quietone, I've also checked for contact form usage in tests, here are some additional findings:
core/tests/Drupal/Nightwatch/Tests/Olivero/oliveroPreprocessFieldMultipleValueFormTest.js:17
permissions: ['access site-wide contact form'],
core/profiles/tests/nightwatch_a11y_testing/config/install/user.role.anonymous.yml:19
- 'access site-wide contact form'
core/modules/user/tests/src/Kernel/Migrate/d7/MigrateUserRoleTest.php:144
'access site-wide contact form',
core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php:303
'url' => Url::fromRoute('contact.form_add'),
core/lib/Drupal/Core/Config/Schema/SchemaCheckTrait.php:55
'contact.settings' => [
Comment #23
quietone commented@zviryatko, thanks for looking for more instances.
I only have time for some simple searching and this is what I think needs to happen.
Comment #24
quietone commentedComment #25
quietone commentedComment #26
andypostFiled test change for #3555375-4: Change use of Contact in \Drupal\Tests\user\Functional\UserPermissionsTest::testAccessBundlePermission
Comment #27
andypostComment #28
andypostSo only
ContentEntityNullStorageTestleft with dumps!Created MR #3556693: Change use of Contact in ContentEntityNullStorageTest
Comment #30
quietone commented@rmahi_14, thanks for the interest in this issue. However, this issue does not need an issue fork. I suggest you consult the Drupal Contributor Guide to find a task suited to your interests and skills.
Comment #31
quietone commentedMoved the info from #23 to the issue. At least 3 more issues are needed.
Comment #32
quietone commentedComment #33
andypostThere's one more in
ExtensionAvailableConstraintValidatorTest.phppointed in #3556693-7: Change use of Contact in ContentEntityNullStorageTestComment #34
andypostFiled #3557138: Remove use of Contact from ExtensionAvailableConstraintValidatorTest
Comment #35
quietone commentedReviewing the list in #12
1, 2, 3, 4: Fixed in #3551599: Remove use of Contact from config_translation tests
5: Todo, core/modules/system/tests/src/Functional/UpdateSystem/UpdatePathTestBaseFilledTest.php
7: #3555375: Change use of Contact in \Drupal\Tests\user\Functional\UserPermissionsTest::testAccessBundlePermission
8, 9: #3554484: Remove unused modules from kernel tests
10: Will likely be fixed in #3557103: Change use of Contact in ajax_test test module; core/tests/Drupal/FunctionalJavascriptTests/Ajax/DialogTest.php
11: #3556693: Change use of Contact in ContentEntityNullStorageTest
Comment #36
thejimbirch commentedIs there a #6? Or was the number just skipped?
Comment #37
quietone commentedComment #38
quietone commentedComment #40
andypostAs I see only leftover is #3557103: Change use of Contact in ajax_test test module
Comment #41
penyaskito#3557103: Change use of Contact in ajax_test test module was merged today. There's still #3557105: Change use of Contact in SchemaCheckTrait but apparently not a blocker.
Comment #42
andypostYes, not a blocker so I'm gonna start split it to contrib this weekend
Comment #43
andypostContrib release created https://www.drupal.org/project/contact/releases/1.0.0
Comment #44
xmacinfoThank you.
Comment #45
andypostAdded section to https://www.drupal.org/docs/core-modules-and-themes/deprecated-and-obsol...
Comment #46
godotislateRe #23:
The test module
olivero_testhas a dependency ondrupal:contactand hascore/modules/system/tests/modules/olivero_test/config/install/contact.form.olivero_test_contact_form.yml. Does this need a removal or change?Comment #47
andypost@godoislate Thank you! looks like it needs one more issue to remove it before the module removal, looks like it can stay as is like consensus to not change trait in #3557105: Change use of Contact in SchemaCheckTrait
Comment #48
andypostmodule is deprecated! now it's time to remove it from main!
Comment #49
andypostRe #46 I addressed it in removal replacing contact with node module #3573484: Remove Contact module from core
Comment #50
quietone commentedI think we are all done here. There is an issue for SchemaCheckTrait and Update fixtures will be finalized in one issue.
Thanks everyone for keeping this meta updated, it really helps us all.