Feature #67293

Generalize the DependencyResolver to be useful for more purposes

Added by Markus Klein almost 5 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
Backend API
Target version:
Start date:
2015-06-04
Due date:
% Done:

100%

PHP Version:
Tags:
Complexity:
medium
Sprint Focus:

Description

The DependencyResolver is currently used for the PackageManager to determine the loading order of extensions.
The same mechanism is useful for other purposes, eg. hook ordering, as well.

Therefore the DependencyResolver should be extracted from the Package context.

Adjusting the DependencyResolver slightly, makes it a powerful tool to resolve dependency trees.

It will support:
  • building a dependency tree based on "before" and "after" information
  • transformation of the tree into a sorted list

The PackageManager needs only small adjustments on the way it uses the DependencyResolver.
Basically "dependencies" and "suggestions" of packages are matched to "after"; "before" is not supported for packages.

Associated revisions

Revision 5f97ebe7 (diff)
Added by Markus Klein over 4 years ago

[FEATURE] Extract dependency ordering out of DependencyResolver

The DependencyOrderingService allows to resolve dependency lists
containing before/after dependency specifications into an ordered
list. This is useful for all sorts of registration APIs like hooks.

The code is extracted from the existing DependencyResolver for packages.
The DependencyResolver is adjusted to use the DepencyOrderingService.

Resolves: #67293
Releases: master
Change-Id: Ic4cb1c7cfbcc8c4a0ebe2946eb5824d7983e711c
Reviewed-on: http://review.typo3.org/39955
Reviewed-by: Christian Kuhn <>
Tested-by: Christian Kuhn <>
Reviewed-by: Xavier Perseguers <>
Tested-by: Xavier Perseguers <>
Reviewed-by: Benjamin Mack <>
Tested-by: Benjamin Mack <>

Revision d828a519 (diff)
Added by Benni Mack over 4 years ago

[FOLLOWUP][FEATURE] Extract dependency ordering out of DependencyResolver

The dependency order resolver needs to be injected at runtime.

Resolves: #67293
Releases: master
Change-Id: Id7f2b65b0258e22081d326f06d3d13f874bea1ff
Reviewed-on: http://review.typo3.org/40729
Reviewed-by: Anja Leichsenring <>
Tested-by: Anja Leichsenring <>
Reviewed-by: Christian Kuhn <>
Tested-by: Christian Kuhn <>

History

#1 Updated by Gerrit Code Review almost 5 years ago

  • Status changed from In Progress to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#2 Updated by Gerrit Code Review almost 5 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#3 Updated by Gerrit Code Review almost 5 years ago

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#4 Updated by Gerrit Code Review almost 5 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#5 Updated by Gerrit Code Review almost 5 years ago

Patch set 5 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#6 Updated by Gerrit Code Review almost 5 years ago

Patch set 6 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#7 Updated by Gerrit Code Review almost 5 years ago

Patch set 7 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#8 Updated by Gerrit Code Review almost 5 years ago

Patch set 8 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#9 Updated by Gerrit Code Review almost 5 years ago

Patch set 9 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#10 Updated by Benni Mack almost 5 years ago

  • Target version changed from 7.3 (Packages) to 7.4 (Backend)

#11 Updated by Gerrit Code Review almost 5 years ago

Patch set 10 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#12 Updated by Gerrit Code Review almost 5 years ago

Patch set 11 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#13 Updated by Gerrit Code Review almost 5 years ago

Patch set 12 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/39955

#14 Updated by Markus Klein over 4 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

#15 Updated by Gerrit Code Review over 4 years ago

  • Status changed from Resolved to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/40729

#16 Updated by Benni Mack over 4 years ago

  • Status changed from Under Review to Resolved

#17 Updated by Riccardo De Contardi over 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF