uuid: - value: 6118c41e-e92e-4865-9f1c-64dd19e2bc40 langcode: - value: en type: - target_id: daily_email target_type: node_type target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7 revision_timestamp: - value: '2025-05-11T09:00:40+00:00' revision_uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 revision_log: { } status: - value: true uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 title: - value: | What is deprecated code? created: - value: '2023-05-17T00:00:00+00:00' changed: - value: '2025-05-11T09:00:40+00:00' promote: - value: false sticky: - value: false default_langcode: - value: true revision_translation_affected: - value: true path: - alias: /daily/2023/05/17/what-is-deprecated-code langcode: en body: - value: |

Deprecating code is a way of identifying code that will be removed in a future major version.

For example, the drupal_set_message() function was deprecated in Drupal 8.5 and removed in Drupal 9 as the messenger service replaced it.

Once it was deprecated, the function was changed to use the new service to avoid duplicating code and a message was added to notify Developers:

function drupal_set_message($message = NULL, $type = 'status', $repeat = FALSE) {
        @trigger_error('drupal_set_message() is deprecated in Drupal 8.5.0 and will be removed before Drupal 9.0.0. Use \Drupal\Core\Messenger\MessengerInterface::addMessage() instead. See https://www.drupal.org/node/2774931', E_USER_DEPRECATED);

        $messenger = \Drupal::messenger();
        if (isset($message)) {
          $messenger->addMessage($message, $type, $repeat);
        }

        return $messenger->all();
      }
      

This approach means that code can be refactored without breaking backwards-compatibility and, to upgrade any custom code to be compatible with Drupal 9, any references to drupal_set_message() just needed to be updated to use the new Messenger service.

No large rewrite needed!

format: full_html processed: |

Deprecating code is a way of identifying code that will be removed in a future major version.

For example, the drupal_set_message() function was deprecated in Drupal 8.5 and removed in Drupal 9 as the messenger service replaced it.

Once it was deprecated, the function was changed to use the new service to avoid duplicating code and a message was added to notify Developers:

function drupal_set_message($message = NULL, $type = 'status', $repeat = FALSE) {
        @trigger_error('drupal_set_message() is deprecated in Drupal 8.5.0 and will be removed before Drupal 9.0.0. Use \Drupal\Core\Messenger\MessengerInterface::addMessage() instead. See https://www.drupal.org/node/2774931', E_USER_DEPRECATED);

        $messenger = \Drupal::messenger();
        if (isset($message)) {
          $messenger->addMessage($message, $type, $repeat);
        }

        return $messenger->all();
      }
      

This approach means that code can be refactored without breaking backwards-compatibility and, to upgrade any custom code to be compatible with Drupal 9, any references to drupal_set_message() just needed to be updated to use the new Messenger service.

No large rewrite needed!

summary: null field_daily_email_cta: { }