Files
streamline-emr/docker/streamline-src/vendor/symfony/http-kernel/CHANGELOG.md
T
alec.turner a424394109 Build modified streamline images
The official image from streamline does not currently work for the arm64
platform. As a temporary measure, the source code and docker build scripts
have been lifted from the official images and are used to build locally.

Some additional modifications are made to reduce overall image size, these
are documented in docker/README.md
2024-03-10 16:17:50 -07:00

20 KiB

CHANGELOG

6.4

  • Support backed enums in #[MapQueryParameter]
  • BundleInterface no longer extends ContainerAwareInterface
  • Add optional $className parameter to ControllerEvent::getAttributes()
  • Add native return types to TraceableEventDispatcher and to MergeExtensionConfigurationPass
  • Add argument $validationFailedStatusCode to #[MapQueryString] and #[MapRequestPayload]
  • Add argument $debug to Logger
  • Add class DebugLoggerConfigurator
  • Add parameters kernel.runtime_mode and kernel.runtime_mode.*, all set from env var APP_RUNTIME_MODE
  • Deprecate Kernel::stripComments()
  • Support the ! character at the beginning of a string as a negation operator in the url filter of the profiler
  • Deprecate UriSigner, use UriSigner from the HttpFoundation component instead
  • Deprecate FileLinkFormatter, use FileLinkFormatter from the ErrorHandler component instead
  • Add argument $buildDir to WarmableInterface
  • Add argument $filter to Profiler::find() and FileProfilerStorage::find()
  • Add ControllerResolver::allowControllers() to define which callables are legit controllers when the _check_controller_is_allowed request attribute is set

6.3

  • Deprecate parameters container.dumper.inline_factories and container.dumper.inline_class_loader, use .container.dumper.inline_factories and .container.dumper.inline_class_loader instead
  • FileProfilerStorage removes profiles automatically after two days
  • Add #[WithHttpStatus] for defining status codes for exceptions
  • Use an instance of Psr\Clock\ClockInterface to generate the current date time in DateTimeValueResolver
  • Add #[WithLogLevel] for defining log levels for exceptions
  • Add skip_response_headers to the HttpCache options
  • Introduce targeted value resolvers with #[ValueResolver] and #[AsTargetedValueResolver]
  • Add #[MapRequestPayload] to map and validate request payload from Request::getContent() or Request::$request->all() to typed objects
  • Add #[MapQueryString] to map and validate request query string from Request::$query->all() to typed objects
  • Add #[MapQueryParameter] to map and validate individual query parameters to controller arguments
  • Collect data from every event dispatcher

6.2

  • Add constructor argument bool $handleAllThrowable to HttpKernel
  • Add ControllerEvent::getAttributes() to handle attributes on controllers
  • Add #[Cache] to describe the default HTTP cache headers on controllers
  • Add absolute_uri option to surrogate fragment renderers
  • Add ValueResolverInterface and deprecate ArgumentValueResolverInterface
  • Add argument $reflector to ArgumentResolverInterface and ArgumentMetadataFactoryInterface
  • Deprecate calling ConfigDataCollector::setKernel(), RouterListener::setCurrentRequest() without arguments

6.1

  • Add BackedEnumValueResolver to resolve backed enum cases from request attributes in controller arguments
  • Add DateTimeValueResolver to resolve request attributes into DateTime objects in controller arguments
  • Deprecate StreamedResponseListener, it's not needed anymore
  • Add Profiler::isEnabled() so collaborating collector services may elect to omit themselves
  • Add the UidValueResolver argument value resolver
  • Add AbstractBundle class for DI configuration/definition on a single file
  • Update the path of a bundle placed in the src/ directory to the parent directory when AbstractBundle is used

6.0

  • Remove ArgumentInterface
  • Remove ArgumentMetadata::getAttribute(), use getAttributes() instead
  • Remove support for returning a ContainerBuilder from KernelInterface::registerContainerConfiguration()
  • Remove KernelEvent::isMasterRequest(), use isMainRequest() instead
  • Remove support for service:action syntax to reference controllers, use serviceOrFqcn::method instead

5.4

  • Add the ability to enable the profiler using a request query parameter, body parameter or attribute
  • Deprecate AbstractTestSessionListener and TestSessionListener, use AbstractSessionListener and SessionListener instead
  • Deprecate the fileLinkFormat parameter of DebugHandlersListener
  • Add support for configuring log level, and status code by exception class
  • Allow ignoring "kernel.reset" methods that don't exist with "on_invalid" attribute

5.3

  • Deprecate ArgumentInterface
  • Add ArgumentMetadata::getAttributes()
  • Deprecate ArgumentMetadata::getAttribute(), use getAttributes() instead
  • Mark the class Symfony\Component\HttpKernel\EventListener\DebugHandlersListener as internal
  • Deprecate returning a ContainerBuilder from KernelInterface::registerContainerConfiguration()
  • Deprecate HttpKernelInterface::MASTER_REQUEST and add HttpKernelInterface::MAIN_REQUEST as replacement
  • Deprecate KernelEvent::isMasterRequest() and add isMainRequest() as replacement
  • Add #[AsController] attribute for declaring standalone controllers on PHP 8
  • Add FragmentUriGeneratorInterface and FragmentUriGenerator to generate the URI of a fragment

5.2.0

  • added session usage
  • made the public http_cache service handle requests when available
  • allowed enabling trusted hosts and proxies using new kernel.trusted_hosts, kernel.trusted_proxies and kernel.trusted_headers parameters
  • content of request parameter _password is now also hidden in the request profiler raw content section
  • Allowed adding attributes on controller arguments that will be passed to argument resolvers.
  • kernels implementing the ExtensionInterface will now be auto-registered to the container
  • added parameter kernel.runtime_environment, defined as %env(default:kernel.environment:APP_RUNTIME_ENV)%
  • do not set a default Accept HTTP header when using HttpKernelBrowser

5.1.0

  • allowed to use a specific logger channel for deprecations
  • made WarmableInterface::warmUp() return a list of classes or files to preload on PHP 7.4+; not returning an array is deprecated
  • made kernels implementing WarmableInterface be part of the cache warmup stage
  • deprecated support for service:action syntax to reference controllers, use serviceOrFqcn::method instead
  • allowed using public aliases to reference controllers
  • added session usage reporting when the _stateless attribute of the request is set to true
  • added AbstractSessionListener::onSessionUsage() to report when the session is used while a request is stateless

5.0.0

  • removed support for getting the container from a non-booted kernel
  • removed the first and second constructor argument of ConfigDataCollector
  • removed ConfigDataCollector::getApplicationName()
  • removed ConfigDataCollector::getApplicationVersion()
  • removed support for Symfony\Component\Templating\EngineInterface in HIncludeFragmentRenderer, use a Twig\Environment only
  • removed TranslatorListener in favor of LocaleAwareListener
  • removed getRootDir() and getName() from Kernel and KernelInterface
  • removed FilterControllerArgumentsEvent, use ControllerArgumentsEvent instead
  • removed FilterControllerEvent, use ControllerEvent instead
  • removed FilterResponseEvent, use ResponseEvent instead
  • removed GetResponseEvent, use RequestEvent instead
  • removed GetResponseForControllerResultEvent, use ViewEvent instead
  • removed GetResponseForExceptionEvent, use ExceptionEvent instead
  • removed PostResponseEvent, use TerminateEvent instead
  • removed SaveSessionListener in favor of AbstractSessionListener
  • removed Client, use HttpKernelBrowser instead
  • added method getProjectDir() to KernelInterface
  • removed methods serialize and unserialize from DataCollector, store the serialized state in the data property instead
  • made ProfilerStorageInterface internal
  • removed the second and third argument of KernelInterface::locateResource
  • removed the second and third argument of FileLocator::__construct
  • removed loading resources from %kernel.root_dir%/Resources and %kernel.root_dir% as fallback directories.
  • removed class ExceptionListener, use ErrorListener instead

4.4.0

  • The DebugHandlersListener class has been marked as final
  • Added new Bundle directory convention consistent with standard skeletons
  • Deprecated the second and third argument of KernelInterface::locateResource
  • Deprecated the second and third argument of FileLocator::__construct
  • Deprecated loading resources from %kernel.root_dir%/Resources and %kernel.root_dir% as fallback directories. Resources like service definitions are usually loaded relative to the current directory or with a glob pattern. The fallback directories have never been advocated so you likely do not use those in any app based on the SF Standard or Flex edition.
  • Marked all dispatched event classes as @final
  • Added ErrorController to enable the preview and error rendering mechanism
  • Getting the container from a non-booted kernel is deprecated.
  • Marked the AjaxDataCollector, ConfigDataCollector, EventDataCollector, ExceptionDataCollector, LoggerDataCollector, MemoryDataCollector, RequestDataCollector and TimeDataCollector classes as @final.
  • Marked the RouterDataCollector::collect() method as @final.
  • The DataCollectorInterface::collect() and Profiler::collect() methods third parameter signature will be \Throwable $exception = null instead of \Exception $exception = null in Symfony 5.0.
  • Deprecated methods ExceptionEvent::get/setException(), use get/setThrowable() instead
  • Deprecated class ExceptionListener, use ErrorListener instead

4.3.0

  • renamed Client to HttpKernelBrowser
  • KernelInterface doesn't extend Serializable anymore
  • deprecated the Kernel::serialize() and unserialize() methods
  • increased the priority of Symfony\Component\HttpKernel\EventListener\AddRequestFormatsListener
  • made Symfony\Component\HttpKernel\EventListener\LocaleListener set the default locale early
  • deprecated TranslatorListener in favor of LocaleAwareListener
  • added the registration of all LocaleAwareInterface implementations into the LocaleAwareListener
  • made FileLinkFormatter final and not implement Serializable anymore
  • the base DataCollector doesn't implement Serializable anymore, you should store all the serialized state in the data property instead
  • DumpDataCollector has been marked as final
  • added an event listener to prevent search engines from indexing applications in debug mode.
  • renamed FilterControllerArgumentsEvent to ControllerArgumentsEvent
  • renamed FilterControllerEvent to ControllerEvent
  • renamed FilterResponseEvent to ResponseEvent
  • renamed GetResponseEvent to RequestEvent
  • renamed GetResponseForControllerResultEvent to ViewEvent
  • renamed GetResponseForExceptionEvent to ExceptionEvent
  • renamed PostResponseEvent to TerminateEvent
  • added HttpClientKernel for handling requests with an HttpClientInterface instance
  • added trace_header and trace_level configuration options to HttpCache

4.2.0

  • deprecated KernelInterface::getRootDir() and the kernel.root_dir parameter
  • deprecated KernelInterface::getName() and the kernel.name parameter
  • deprecated the first and second constructor argument of ConfigDataCollector
  • deprecated ConfigDataCollector::getApplicationName()
  • deprecated ConfigDataCollector::getApplicationVersion()

4.1.0

  • added orphaned events support to EventDataCollector
  • ExceptionListener now logs exceptions at priority 0 (previously logged at -128)
  • Added support for using service::method to reference controllers, making it consistent with other cases. It is recommended over the service:action syntax with a single colon, which will be deprecated in the future.
  • Added the ability to profile individual argument value resolvers via the Symfony\Component\HttpKernel\Controller\ArgumentResolver\TraceableValueResolver

4.0.0

  • removed the DataCollector::varToString() method, use DataCollector::cloneVar() instead
  • using the DataCollector::cloneVar() method requires the VarDumper component
  • removed the ValueExporter class
  • removed ControllerResolverInterface::getArguments()
  • removed TraceableControllerResolver::getArguments()
  • removed ControllerResolver::getArguments() and the ability to resolve arguments
  • removed the argument_resolver service dependency from the debug.controller_resolver
  • removed LazyLoadingFragmentHandler::addRendererService()
  • removed Psr6CacheClearer::addPool()
  • removed Extension::addClassesToCompile() and Extension::getClassesToCompile()
  • removed Kernel::loadClassCache(), Kernel::doLoadClassCache(), Kernel::setClassCache(), and Kernel::getEnvParameters()
  • support for the X-Status-Code when handling exceptions in the HttpKernel has been dropped, use the HttpKernel::allowCustomResponseCode() method instead
  • removed convention-based commands registration
  • removed the ChainCacheClearer::add() method
  • removed the CacheaWarmerAggregate::add() and setWarmers() methods
  • made CacheWarmerAggregate and ChainCacheClearer classes final

3.4.0

  • added a minimalist PSR-3 Logger class that writes in stderr
  • made kernels implementing CompilerPassInterface able to process the container
  • deprecated bundle inheritance
  • added RebootableInterface and implemented it in Kernel
  • deprecated commands auto registration
  • deprecated EnvParametersResource
  • added Symfony\Component\HttpKernel\Client::catchExceptions()
  • deprecated the ChainCacheClearer::add() method
  • deprecated the CacheaWarmerAggregate::add() and setWarmers() methods
  • made CacheWarmerAggregate and ChainCacheClearer classes final
  • added the possibility to reset the profiler to its initial state
  • deprecated data collectors without a reset() method
  • deprecated implementing DebugLoggerInterface without a clear() method

3.3.0

  • added kernel.project_dir and Kernel::getProjectDir()
  • deprecated kernel.root_dir and Kernel::getRootDir()
  • deprecated Kernel::getEnvParameters()
  • deprecated the special SYMFONY__ environment variables
  • added the possibility to change the query string parameter used by UriSigner
  • deprecated LazyLoadingFragmentHandler::addRendererService()
  • deprecated Extension::addClassesToCompile() and Extension::getClassesToCompile()
  • deprecated Psr6CacheClearer::addPool()

3.2.0

  • deprecated DataCollector::varToString(), use cloneVar() instead
  • changed surrogate capability name in AbstractSurrogate::addSurrogateCapability to 'symfony'
  • Added ControllerArgumentValueResolverPass

3.1.0

  • deprecated passing objects as URI attributes to the ESI and SSI renderers
  • deprecated ControllerResolver::getArguments()
  • added Symfony\Component\HttpKernel\Controller\ArgumentResolverInterface
  • added Symfony\Component\HttpKernel\Controller\ArgumentResolverInterface as argument to HttpKernel
  • added Symfony\Component\HttpKernel\Controller\ArgumentResolver
  • added Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::getMethod()
  • added Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::getRedirect()
  • added the kernel.controller_arguments event, triggered after controller arguments have been resolved

3.0.0

  • removed Symfony\Component\HttpKernel\Kernel::init()
  • removed Symfony\Component\HttpKernel\Kernel::isClassInActiveBundle() and Symfony\Component\HttpKernel\KernelInterface::isClassInActiveBundle()
  • removed Symfony\Component\HttpKernel\Debug\TraceableEventDispatcher::setProfiler()
  • removed Symfony\Component\HttpKernel\EventListener\FragmentListener::getLocalIpAddresses()
  • removed Symfony\Component\HttpKernel\EventListener\LocaleListener::setRequest()
  • removed Symfony\Component\HttpKernel\EventListener\RouterListener::setRequest()
  • removed Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest()
  • removed Symfony\Component\HttpKernel\Fragment\FragmentHandler::setRequest()
  • removed Symfony\Component\HttpKernel\HttpCache\Esi::hasSurrogateEsiCapability()
  • removed Symfony\Component\HttpKernel\HttpCache\Esi::addSurrogateEsiCapability()
  • removed Symfony\Component\HttpKernel\HttpCache\Esi::needsEsiParsing()
  • removed Symfony\Component\HttpKernel\HttpCache\HttpCache::getEsi()
  • removed Symfony\Component\HttpKernel\DependencyInjection\ContainerAwareHttpKernel
  • removed Symfony\Component\HttpKernel\DependencyInjection\RegisterListenersPass
  • removed Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener
  • removed Symfony\Component\HttpKernel\EventListener\EsiListener
  • removed Symfony\Component\HttpKernel\HttpCache\EsiResponseCacheStrategy
  • removed Symfony\Component\HttpKernel\HttpCache\EsiResponseCacheStrategyInterface
  • removed Symfony\Component\HttpKernel\Log\LoggerInterface
  • removed Symfony\Component\HttpKernel\Log\NullLogger
  • removed Symfony\Component\HttpKernel\Profiler::import()
  • removed Symfony\Component\HttpKernel\Profiler::export()

2.8.0

  • deprecated Profiler::import and Profiler::export

2.7.0

  • added the HTTP status code to profiles

2.6.0

  • deprecated Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener, use Symfony\Component\HttpKernel\EventListener\DebugHandlersListener instead
  • deprecated unused method Symfony\Component\HttpKernel\Kernel::isClassInActiveBundle and Symfony\Component\HttpKernel\KernelInterface::isClassInActiveBundle

2.5.0

  • deprecated Symfony\Component\HttpKernel\DependencyInjection\RegisterListenersPass, use Symfony\Component\EventDispatcher\DependencyInjection\RegisterListenersPass instead

2.4.0

  • added event listeners for the session
  • added the KernelEvents::FINISH_REQUEST event

2.3.0

  • [BC BREAK] renamed Symfony\Component\HttpKernel\EventListener\DeprecationLoggerListener to Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener and changed its constructor
  • deprecated Symfony\Component\HttpKernel\Debug\ErrorHandler, Symfony\Component\HttpKernel\Debug\ExceptionHandler, Symfony\Component\HttpKernel\Exception\FatalErrorException and Symfony\Component\HttpKernel\Exception\FlattenException
  • deprecated Symfony\Component\HttpKernel\Kernel::init()
  • added the possibility to specify an id an extra attributes to hinclude tags
  • added the collect of data if a controller is a Closure in the Request collector
  • pass exceptions from the ExceptionListener to the logger using the logging context to allow for more detailed messages

2.2.0

  • [BC BREAK] the path info for sub-request is now always _fragment (or whatever you configured instead of the default)
  • added Symfony\Component\HttpKernel\EventListener\FragmentListener
  • added Symfony\Component\HttpKernel\UriSigner
  • added Symfony\Component\HttpKernel\FragmentRenderer and rendering strategies (in Symfony\Component\HttpKernel\Fragment\FragmentRendererInterface)
  • added Symfony\Component\HttpKernel\DependencyInjection\ContainerAwareHttpKernel
  • added ControllerReference to create reference of Controllers (used in the FragmentRenderer class)
  • [BC BREAK] renamed TimeDataCollector::getTotalTime() to TimeDataCollector::getDuration()
  • updated the MemoryDataCollector to include the memory used in the kernel.terminate event listeners
  • moved the Stopwatch classes to a new component
  • added TraceableControllerResolver
  • added TraceableEventDispatcher (removed ContainerAwareTraceableEventDispatcher)
  • added support for WinCache opcode cache in ConfigDataCollector

2.1.0

  • [BC BREAK] the charset is now configured via the Kernel::getCharset() method
  • [BC BREAK] the current locale for the user is not stored anymore in the session
  • added the HTTP method to the profiler storage
  • updated all listeners to implement EventSubscriberInterface
  • added TimeDataCollector
  • added ContainerAwareTraceableEventDispatcher
  • moved TraceableEventDispatcherInterface to the EventDispatcher component
  • added RouterListener, LocaleListener, and StreamedResponseListener
  • added CacheClearerInterface (and ChainCacheClearer)
  • added a kernel.terminate event (via TerminableInterface and PostResponseEvent)
  • added a Stopwatch class
  • added WarmableInterface
  • improved extensibility between bundles
  • added profiler storages for Memcache(d), File-based, MongoDB, Redis
  • moved Filesystem class to its own component