This repository was archived by the owner on Jan 16, 2019. It is now read-only.
Releases: stubbles/stubbles-core
Releases · stubbles/stubbles-core
6.3.0 - My private is protected
6.2.0 - I feel such emptiness
- added
stubbles\streams\nonEmptyLinesOf() - added new methods to
stubbles\lang\Resultstubbles\lang\Result::isEmpty()stubbles\lang\Result::whenEmpty()stubbles\lang\Result::applyWhenEmpty()
6.1.0 - Result in chains
BC breaks
stubbles\lang\Result::whenNull()andstubbles\lang\Result::applyWhenNull()now return an instance ofstubbles\lang\Resultinstead if the raw value to allow more chaining
6.0.0 - The release that wasn't but is
BC breaks
stubbles\iocdoes not support setter injection any more, deprecated since 5.1.0- removed
stubbles\ioc\Binder::setSessionScope(), deprecated since 5.4.0 - removed old reflection, deprecated since 5.3.0:
stubbles\lang\reflect\BaseReflectionClassstubbles\lang\reflect\MixedTypestubbles\lang\reflect\ReflectionClassstubbles\lang\reflect\ReflectionExtensionstubbles\lang\reflect\ReflectionFunctionstubbles\lang\reflect\ReflectionMethodstubbles\lang\reflect\ReflectionObjectstubbles\lang\reflect\ReflectionParameterstubbles\lang\reflect\ReflectionPrimitivestubbles\lang\reflect\ReflectionPropertystubbles\lang\reflect\ReflectionRoutinestubbles\lang\reflect\ReflectionTypestubbles\lang\reflect\matcher\MethodMatcherstubbles\lang\reflect\matcher\PropertyMatcherstubbles\lang\typeFor()stubbles\lang\reflect\annotation\Annotatablestubbles\lang\reflect\annotation\Annotations::of()stubbles\lang\reflect()now returns PHP's internal reflection classesParse::toClass()now returns\ReflectionClass
- removed
stubbles\ioc\App::bindCurrentWorkingDirectory(), usestubbles\ioc\App::currentWorkingDirectory()instead, deprecated since 5.0.0 - removed
stubbles\ioc\App::bindHostname(), usestubbles\ioc\App::hostname()instead, deprecated since 5.0.0 - removed several exceptions where build-in exceptions in PHP exist, deprecated since 5.0.0:
stubbles\lang\exception\IllegalAccessException, useLogicExceptioninsteadstubbles\lang\exception\IllegalArgumentException, useInvalidArgumentExceptioninsteadstubbles\lang\exception\IllegalStateException, useLogicExceptioninsteadstubbles\lang\exception\MethodInvocationException, useBadMethodCallExceptioninsteadstubbles\lang\exception\MethodNotSupportedException, useBadMethodCallExceptioninsteadstubbles\lang\exception\RuntimeException, use nativeRuntimeExceptioninstead
- removed
stubbles\lang\exception\Throwable, deprecated since 5.0.0 - split
stubbles\peer\Socketinto two classesstubbles\peer\Socket::connect()now returns an instance ofstubbles\peer\Stream- all functionallity to read and write on a socket is now in
stubbles\peer\Stream
- removed
stubbles\peer\BsdSocket stubbles\peer\IpAddress::openSocket()andstubbles\peer\IpAddress::openSecureSocket()now returnstubbles\peer\Stream
Other changes
- added
stubbles\lang\Result @ImplementedBycan now be speficied per runtime mode- it is not required any more to mark constructors with
@Injectwhen they should be subject to dependency injection - added
stubbles\peer\IpAddress::createSocket()andstubbles\peer\IpAddress::createSecureSocket() - improved speed for
stubbles\peer\http\HttpUri::hasDnsRecord()by checking only relevant DNS records - sequences returned from the following methods now have the name of the method/property/parameter as key:
stubbles\lang\reflect\methodsOf()stubbles\lang\reflect\propertiesOf()stubbles\lang\reflect\parametersOf()stubbles\lang\reflect\parametersOfConstructor()stubbles\lang\reflect\parameter()stubbles\lang\reflect\constructorParameter()
5.5.1 - Single vs. double quotes
- fixed annotation string values which contained both ' and "
5.5.0 - Semantics
- added
stubbles\peer\Uri::withPath()
5.4.1 - The next iteration will be streamed
- allowed iteration with non-seekable input streams
5.4.0 - April fools
BC breaks
- Enabled session scoped bindings even when no session exists. However, retrieving a session scoped instance without setting a session will throw a
\RuntimeException - deprecated
stubbles\ioc\Binder::setSessionScope(), use built-in session scope with session interface instead, will be removed with 6.0.0 - added
stubbles\ioc\binding\Sessionas simple session interface for the built-in session scope - added
stubbles\ioc\Injector::setSession()to provide session instance for session binding scope, will also bind session interface to this instance so it is available for injection
Other changes
- added
stubbles\streams\StandardInputStream - added
stubbles\streams\StandardOutputStream - annotated
stubbles\lang\errorhandler\ExceptionLoggerwith@Singleton - added
stubbles\lang\castToArray() stubbles\lang\Sequence::append()now accepts anything
5.3.2 - ensure($sequence->each(serialize))
- ensured
stubbles\lang\Sequenceis serialized to XML in a proper way with older versions of stubbles/xml - ensured
stubbles\lang\Sequencecan be serialized as JSON
5.3.1 - Acceptance criteria
stubbles\peer\Uri::addParam()now accepts objects with__toString()method