Problem/Motivation
We adopted a lot of third-party PHP dependencies during Drupal 8's cycle, some of them are going better than others.
There are some common issues:
1. Support cycles (and PHP version support) out of sync with core's
2. Our use-case requiring subclassing significant percentages of the dependency's code base.
3. Drift between our subclasses and newer versions of libraries
4. New versions of dependencies dropping features we rely on
5.Difficulty adapting to API changes and similar.
Proposed resolution
In some cases we might want to move away from a component, in other cases we might want to see if we still need to subclass things and move closer to it. The main thing is we should try to avoid drift.
Symfony CMF
#2917331: Decouple from Symfony CMF
Symfony Validator
#3054535: Discuss whether to decouple from Symfony Validator
Event dispatcher
#2237831: Allow module services to specify hooks
Doctrine annotations
#2631202: Doctrine no longer supports SimpleAnnotationReader, incorporate a solution into core
Symfony classloader
#3020296: [meta] Replace Symfony's classloader as it does not exist in Symfony 4
Symfony container
#3021803: Enable autowiring the container
#3021900: Bring new features from Symfony 3.3 into our container