Class Option Recommendations

Below, is a list of classes that may be updated with final or abstract.
The red stars mention possible upgrade by using final or abstract keywords; The green stars mention a valid absence of the option (an extended class, that can't be final, ...); The absence of star report currently configured classes. .

Final Abstract Name Path
class RunScriptCommand extends BaseCommand \composer\command\runscriptcommand
class InitCommand extends BaseCommand \composer\command\initcommand
class InstallCommand extends BaseCommand \composer\command\installcommand
class ShowCommand extends BaseCommand \composer\command\showcommand
class RemoveCommand extends BaseCommand \composer\command\removecommand
class ReinstallCommand extends BaseCommand \composer\command\reinstallcommand
class HomeCommand extends BaseCommand \composer\command\homecommand
class DumpAutoloadCommand extends BaseCommand \composer\command\dumpautoloadcommand
class OutdatedCommand extends BaseCommand \composer\command\outdatedcommand
class CreateProjectCommand extends BaseCommand \composer\command\createprojectcommand
class ScriptAliasCommand extends BaseCommand \composer\command\scriptaliascommand
class FundCommand extends BaseCommand \composer\command\fundcommand
class ValidateCommand extends BaseCommand \composer\command\validatecommand
class AuditCommand extends BaseCommand \composer\command\auditcommand
class ArchiveCommand extends BaseCommand \composer\command\archivecommand
class SearchCommand extends BaseCommand \composer\command\searchcommand
class PackageEvents \composer\installer\packageevents
class BinaryInstaller \composer\installer\binaryinstaller
class AboutCommand extends BaseCommand \composer\command\aboutcommand
class ExecCommand extends BaseCommand \composer\command\execcommand
class DiagnoseCommand extends BaseCommand \composer\command\diagnosecommand
class GlobalCommand extends BaseCommand \composer\command\globalcommand
class RequireCommand extends BaseCommand \composer\command\requirecommand
class ClearCacheCommand extends BaseCommand \composer\command\clearcachecommand
class CheckPlatformReqsCommand extends BaseCommand \composer\command\checkplatformreqscommand
class SelfUpdateCommand extends BaseCommand \composer\command\selfupdatecommand
class DependsCommand extends BaseDependencyCommand \composer\command\dependscommand
class ProhibitsCommand extends BaseDependencyCommand \composer\command\prohibitscommand
class UpdateCommand extends BaseCommand \composer\command\updatecommand
class StatusCommand extends BaseCommand \composer\command\statuscommand
class ConfigCommand extends BaseCommand \composer\command\configcommand
class LicensesCommand extends BaseCommand \composer\command\licensescommand
class Pool implements \Countable \composer\dependencyresolver\pool
class RuleSet implements \IteratorAggregate, \Countable \composer\dependencyresolver\ruleset
class Request \composer\dependencyresolver\request
class MultiConflictRule extends Rule \composer\dependencyresolver\multiconflictrule
class SolverBugException extends \RuntimeException \composer\dependencyresolver\solverbugexception
class SolverProblemsException extends \RuntimeException \composer\dependencyresolver\solverproblemsexception
class RuleWatchNode \composer\dependencyresolver\rulewatchnode
class DefaultPolicy implements PolicyInterface \composer\dependencyresolver\defaultpolicy
class JsonFile \composer\json\jsonfile
class JsonFormatter \composer\json\jsonformatter
class Rule2Literals extends Rule \composer\dependencyresolver\rule2literals
class JsonManipulator \composer\json\jsonmanipulator
class ScriptEvents \composer\script\scriptevents
class Event extends BaseEvent \composer\script\event
class JsonValidationException extends Exception \composer\json\jsonvalidationexception
class StrictConfirmationQuestion extends Question \composer\question\strictconfirmationquestion
class AutoloadGenerator \composer\autoload\autoloadgenerator
class ClassLoader \composer\autoload\classloader
class ClassMapGenerator \composer\autoload\classmapgenerator
class SuggestsCommand extends BaseCommand \composer\command\suggestscommand
class MarkAliasInstalledOperation extends SolverOperation implements OperationInterface \composer\dependencyresolver\operation\markaliasinstalledoperation
class UpdateOperation extends SolverOperation implements OperationInterface \composer\dependencyresolver\operation\updateoperation
class UninstallOperation extends SolverOperation implements OperationInterface \composer\dependencyresolver\operation\uninstalloperation
class MarkAliasUninstalledOperation extends SolverOperation implements OperationInterface \composer\dependencyresolver\operation\markaliasuninstalledoperation
class Problem \composer\dependencyresolver\problem
class RuleSetIterator implements \Iterator \composer\dependencyresolver\rulesetiterator
class RuleWatchChain extends \SplDoublyLinkedList \composer\dependencyresolver\rulewatchchain
class InstallOperation extends SolverOperation implements OperationInterface \composer\dependencyresolver\operation\installoperation
class PoolOptimizer \composer\dependencyresolver\pooloptimizer
class RuleSetGenerator \composer\dependencyresolver\rulesetgenerator
class Decisions implements \Iterator, \Countable \composer\dependencyresolver\decisions
class PoolBuilder \composer\dependencyresolver\poolbuilder
class Application extends BaseApplication \composer\console\application
class ArrayDumper \composer\package\dumper\arraydumper
class Comparer \composer\package\comparer\comparer
class JsonLoader \composer\package\loader\jsonloader
class InputOption extends BaseInputOption \composer\console\input\inputoption
class InputArgument extends BaseInputArgument \composer\console\input\inputargument
class HtmlOutputFormatter extends OutputFormatter \composer\console\htmloutputformatter
class Auditor \composer\advisory\auditor
class NoopInstaller implements InstallerInterface \composer\installer\noopinstaller
class IrrecoverableDownloadException extends \RuntimeException \composer\exception\irrecoverabledownloadexception
class IgnoredSecurityAdvisory extends SecurityAdvisory \composer\advisory\ignoredsecurityadvisory
class Link \composer\package\link
class NoSslException extends \RuntimeException \composer\exception\nosslexception
class RootAliasPackage extends CompleteAliasPackage implements RootPackageInterface \composer\package\rootaliaspackage
class Locker \composer\package\locker
class InstallerEvents \composer\installer\installerevents
class PluginInstaller extends LibraryInstaller \composer\installer\plugininstaller
class InstallerEvent extends Event \composer\installer\installerevent
class PackageEvent extends Event \composer\installer\packageevent
class ProjectInstaller implements InstallerInterface \composer\installer\projectinstaller
class MetapackageInstaller implements InstallerInterface \composer\installer\metapackageinstaller
class InstallationManager \composer\installer\installationmanager
class SuggestedPackagesReporter \composer\installer\suggestedpackagesreporter
class VersionBumper \composer\package\version\versionbumper
class StabilityFilter \composer\package\version\stabilityfilter
class InstalledVersions \composer\installedversions
class VersionGuesser \composer\package\version\versionguesser
class Installer \composer\installer
class VersionSelector \composer\package\version\versionselector
class VersionParser extends SemverVersionParser \composer\package\version\versionparser
class ValidatingArrayLoader implements LoaderInterface \composer\package\loader\validatingarrayloader
class InvalidPackageException extends \Exception \composer\package\loader\invalidpackageexception
class RootPackageLoader extends ArrayLoader \composer\package\loader\rootpackageloader
class RootPackage extends CompletePackage implements RootPackageInterface \composer\package\rootpackage
class ArchiveManager \composer\package\archiver\archivemanager
class ArchivableFilesFinder extends FilterIterator \composer\package\archiver\archivablefilesfinder
class PharArchiver implements ArchiverInterface \composer\package\archiver\phararchiver
class Config \composer\config
class ArchivableFilesFilter extends FilterIterator \composer\package\archiver\archivablefilesfilter
class Composer extends PartialComposer \composer\composer
class GitExcludeFilter extends BaseExcludeFilter \composer\package\archiver\gitexcludefilter
class Factory \composer\factory
class ComposerExcludeFilter extends BaseExcludeFilter \composer\package\archiver\composerexcludefilter
class Cache \composer\cache
class ZipArchiver implements ArchiverInterface \composer\package\archiver\ziparchiver
class VcsRepository extends ArrayRepository implements ConfigurableRepositoryInterface \composer\repository\vcsrepository
class ComposerRepository extends ArrayRepository implements ConfigurableRepositoryInterface, AdvisoryProviderInterface \composer\repository\composerrepository
class RepositoryUtils \composer\repository\repositoryutils
class RepositorySecurityException extends \Exception \composer\repository\repositorysecurityexception
class PlatformRepository extends ArrayRepository \composer\repository\platformrepository
class RepositoryFactory \composer\repository\repositoryfactory
class PackageRepository extends ArrayRepository \composer\repository\packagerepository
class LockArrayRepository extends ArrayRepository \composer\repository\lockarrayrepository
class FilterRepository implements RepositoryInterface, AdvisoryProviderInterface \composer\repository\filterrepository
class InstalledRepository extends CompositeRepository \composer\repository\installedrepository
class RepositoryManager \composer\repository\repositorymanager
class PathRepository extends ArrayRepository implements ConfigurableRepositoryInterface \composer\repository\pathrepository
class ArtifactRepository extends ArrayRepository implements ConfigurableRepositoryInterface \composer\repository\artifactrepository
class RootPackageRepository extends ArrayRepository \composer\repository\rootpackagerepository
class PearRepository extends ArrayRepository \composer\repository\pearrepository
class RepositorySet \composer\repository\repositoryset
class GitDriver extends VcsDriver \composer\repository\vcs\gitdriver
class GitBitbucketDriver extends VcsDriver \composer\repository\vcs\gitbitbucketdriver
class PerforceDriver extends VcsDriver \composer\repository\vcs\perforcedriver
class HgDriver extends VcsDriver \composer\repository\vcs\hgdriver
class SvnDriver extends VcsDriver \composer\repository\vcs\svndriver
class GitHubDriver extends VcsDriver \composer\repository\vcs\githubdriver
class InvalidRepositoryException extends \Exception \composer\repository\invalidrepositoryexception
class InstalledArrayRepository extends WritableArrayRepository implements InstalledRepositoryInterface \composer\repository\installedarrayrepository
class ComposerMirror \composer\util\composermirror
class NoProxyPattern \composer\util\noproxypattern
class Svn \composer\util\svn
class Git \composer\util\git
class ConfigValidator \composer\util\configvalidator
class PackageSorter \composer\util\packagesorter
class FossilDriver extends VcsDriver \composer\repository\vcs\fossildriver
class GitLabDriver extends VcsDriver \composer\repository\vcs\gitlabdriver
class InstalledFilesystemRepository extends FilesystemRepository implements InstalledRepositoryInterface \composer\repository\installedfilesystemrepository
class Compiler \composer\compiler
class BufferIO extends ConsoleIO \composer\io\bufferio
class NullIO extends BaseIO \composer\io\nullio
class HhvmDetector \composer\platform\hhvmdetector
class Version \composer\platform\version
class PluginBlockedException extends UnexpectedValueException \composer\plugin\pluginblockedexception
class CommandEvent extends Event \composer\plugin\commandevent
class PluginEvents \composer\plugin\pluginevents
class PreCommandRunEvent extends Event \composer\plugin\precommandrunevent
class PostFileDownloadEvent extends Event \composer\plugin\postfiledownloadevent
class PrePoolCreateEvent extends Event \composer\plugin\prepoolcreateevent
class PluginManager \composer\plugin\pluginmanager
class PreFileDownloadEvent extends Event \composer\plugin\prefiledownloadevent
class DownloadManager \composer\downloader\downloadmanager
class TarDownloader extends ArchiveDownloader \composer\downloader\tardownloader
class EventDispatcher \composer\eventdispatcher\eventdispatcher
class Runtime \composer\platform\runtime
class Keys \composer\selfupdate\keys
class ScriptExecutionException extends \RuntimeException \composer\eventdispatcher\scriptexecutionexception
class JsonConfigSource implements ConfigSourceInterface \composer\config\jsonconfigsource
class Versions \composer\selfupdate\versions
class CurlDownloader \composer\util\http\curldownloader
class CurlResponse extends Response \composer\util\http\curlresponse
class ProxyHelper \composer\util\http\proxyhelper
class RequestProxy \composer\util\http\requestproxy
class Loop \composer\util\loop
class ProxyManager \composer\util\http\proxymanager
class ErrorHandler \composer\util\errorhandler
class SyncHelper \composer\util\synchelper
class Hg \composer\util\hg
class RemoteFilesystem \composer\util\remotefilesystem
class ProcessExecutor \composer\util\processexecutor
class MetadataMinifier extends \Composer\MetadataMinifier\MetadataMinifier \composer\util\metadataminifier
class Perforce \composer\util\perforce
class Url \composer\util\url
class Platform \composer\util\platform
class IniHelper \composer\util\inihelper
class HttpDownloader \composer\util\httpdownloader
class Bitbucket \composer\util\bitbucket
class GitLab \composer\util\gitlab
class GitHub \composer\util\github
class Tar \composer\util\tar
class Filesystem \composer\util\filesystem
class Silencer \composer\util\silencer
class Zip \composer\util\zip
class AuthHelper \composer\util\authhelper
class PackageInfo \composer\util\packageinfo
class LockTransaction extends Transaction \composer\dependencyresolver\locktransaction
class Solver \composer\dependencyresolver\solver
class ZipDownloader extends ArchiveDownloader \composer\downloader\zipdownloader
class GzipDownloader extends ArchiveDownloader \composer\downloader\gzipdownloader
class GitDownloader extends VcsDownloader implements DvcsDownloaderInterface \composer\downloader\gitdownloader
class LocalRepoTransaction extends Transaction \composer\dependencyresolver\localrepotransaction
class RuleWatchGraph \composer\dependencyresolver\rulewatchgraph
class GenericRule extends Rule \composer\dependencyresolver\genericrule
class SvnDownloader extends VcsDownloader \composer\downloader\svndownloader
class PharDownloader extends ArchiveDownloader \composer\downloader\phardownloader
class PathDownloader extends FileDownloader implements VcsCapableDownloaderInterface \composer\downloader\pathdownloader
class PerforceDownloader extends VcsDownloader \composer\downloader\perforcedownloader
class FossilDownloader extends VcsDownloader \composer\downloader\fossildownloader
class MaxFileSizeExceededException extends TransportException \composer\downloader\maxfilesizeexceededexception
class XzDownloader extends ArchiveDownloader \composer\downloader\xzdownloader
class HgDownloader extends VcsDownloader \composer\downloader\hgdownloader
class FilesystemException extends \Exception \composer\downloader\filesystemexception
class RarDownloader extends ArchiveDownloader \composer\downloader\rardownloader
class WritableArrayRepository extends ArrayRepository implements WritableRepositoryInterface \composer\repository\writablearrayrepository
class Package extends BasePackage \composer\package\package