Skip to content
This repository has been archived by the owner on Jan 16, 2019. It is now read-only.

Releases: stubbles/stubbles-core

6.3.0 - My private is protected

31 Dec 17:36
Compare
Choose a tag to compare
  • allow access to project path in stubbles\ioc\module\Runtime

6.2.0 - I feel such emptiness

31 Dec 17:35
Compare
Choose a tag to compare
  • added stubbles\streams\nonEmptyLinesOf()
  • added new methods to stubbles\lang\Result
    • stubbles\lang\Result::isEmpty()
    • stubbles\lang\Result::whenEmpty()
    • stubbles\lang\Result::applyWhenEmpty()

6.1.0 - Result in chains

31 Dec 17:35
Compare
Choose a tag to compare

BC breaks

  • stubbles\lang\Result::whenNull() and stubbles\lang\Result::applyWhenNull() now return an instance of stubbles\lang\Result instead if the raw value to allow more chaining

6.0.0 - The release that wasn't but is

31 Dec 17:34
Compare
Choose a tag to compare

BC breaks

  • stubbles\ioc does 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\BaseReflectionClass
    • stubbles\lang\reflect\MixedType
    • stubbles\lang\reflect\ReflectionClass
    • stubbles\lang\reflect\ReflectionExtension
    • stubbles\lang\reflect\ReflectionFunction
    • stubbles\lang\reflect\ReflectionMethod
    • stubbles\lang\reflect\ReflectionObject
    • stubbles\lang\reflect\ReflectionParameter
    • stubbles\lang\reflect\ReflectionPrimitive
    • stubbles\lang\reflect\ReflectionProperty
    • stubbles\lang\reflect\ReflectionRoutine
    • stubbles\lang\reflect\ReflectionType
    • stubbles\lang\reflect\matcher\MethodMatcher
    • stubbles\lang\reflect\matcher\PropertyMatcher
    • stubbles\lang\typeFor()
    • stubbles\lang\reflect\annotation\Annotatable
    • stubbles\lang\reflect\annotation\Annotations::of()
    • stubbles\lang\reflect() now returns PHP's internal reflection classes
    • Parse::toClass() now returns \ReflectionClass
  • removed stubbles\ioc\App::bindCurrentWorkingDirectory(), use stubbles\ioc\App::currentWorkingDirectory() instead, deprecated since 5.0.0
  • removed stubbles\ioc\App::bindHostname(), use stubbles\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, use LogicException instead
    • stubbles\lang\exception\IllegalArgumentException, use InvalidArgumentException instead
    • stubbles\lang\exception\IllegalStateException, use LogicException instead
    • stubbles\lang\exception\MethodInvocationException, use BadMethodCallException instead
    • stubbles\lang\exception\MethodNotSupportedException, use BadMethodCallException instead
    • stubbles\lang\exception\RuntimeException, use native RuntimeException instead
  • removed stubbles\lang\exception\Throwable, deprecated since 5.0.0
  • split stubbles\peer\Socket into two classes
    • stubbles\peer\Socket::connect() now returns an instance of stubbles\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() and stubbles\peer\IpAddress::openSecureSocket() now return stubbles\peer\Stream

Other changes

  • added stubbles\lang\Result
  • @ImplementedBy can now be speficied per runtime mode
  • it is not required any more to mark constructors with @Inject when they should be subject to dependency injection
  • added stubbles\peer\IpAddress::createSocket() and stubbles\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

31 Dec 17:32
Compare
Choose a tag to compare
  • fixed annotation string values which contained both ' and "

5.5.0 - Semantics

31 Dec 17:32
Compare
Choose a tag to compare
  • added stubbles\peer\Uri::withPath()

5.4.1 - The next iteration will be streamed

31 Dec 17:31
Compare
Choose a tag to compare
  • allowed iteration with non-seekable input streams

5.4.0 - April fools

31 Dec 17:30
Compare
Choose a tag to compare

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\Session as 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\ExceptionLogger with @Singleton
  • added stubbles\lang\castToArray()
  • stubbles\lang\Sequence::append() now accepts anything

5.3.2 - ensure($sequence->each(serialize))

31 Dec 17:30
Compare
Choose a tag to compare
  • ensured stubbles\lang\Sequence is serialized to XML in a proper way with older versions of stubbles/xml
  • ensured stubbles\lang\Sequence can be serialized as JSON

5.3.1 - Acceptance criteria

31 Dec 17:28
Compare
Choose a tag to compare
  • stubbles\peer\Uri::addParam() now accepts objects with __toString() method