Problem/Motivation

drupal_render() was marked as deprecated, though its still called in quite some places.

Proposed resolution

  1. Avoid rendering manually by letting the template who is printing the variable render it.
  2. Inject the renderer service into service, which uses drupal_render()
  3. Use \Drupal::service('renderer')->render() for old prodecural code.

Remaining tasks

  1. Find all the actionable fixes: Search for drupal_render(
  2. Create a Patch
  3. Review

User interface changes

None

API changes

None

Files: 
CommentFileSizeAuthor
#2 replace_all-2473743-2.patch3.81 KBdimaro
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 91,412 pass(es). View
#2 interdiff-2473743-1-2.txt780 bytesdimaro
#1 replace_all-2473743-1.patch3.28 KBwillzyx
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 91,362 pass(es). View

Comments

willzyx’s picture

FileSize
3.28 KB
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 91,362 pass(es). View
dimaro’s picture

FileSize
780 bytes
3.81 KB
PASSED: [[SimpleTest]]: [PHP 5.4 MySQL] 91,412 pass(es). View

Remove "use Drupal\Component\Uuid\UuidInterface" and "use Drupal\Core\Entity\EntityManagerInterface" because it is not used.

Also I remove whitespace.

webchick’s picture

Version: 8.0.x-dev » 8.1.x-dev
Status: Needs review » Closed (duplicate)

Thanks @willzyx for all your work on these! Unfortunately, these issues need to be postponed to 8.1.x at least. See the allowed beta changes policy and the comment in #2393329-39: Replace all drupal_render calls with the service, and inject it, if possible..