Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Stream Decorators Laravel Package

zbateson/stream-decorators

Lightweight PHP stream decorators for composing and filtering streams. Wrap any resource to add behaviors like buffering, limiting, logging, or on-the-fly transforms while keeping a standard stream interface. Useful for email parsing, I/O pipelines, and testing.

View on GitHub
Deep Wiki
Context7
2.1.1

Fixes lower version constraints on guzzlehttp/psr7

2.1.0
  • Create DecoratedCachingStream and TellZeroStream
2.0.0

New Contributors

Full Changelog: https://github.com/zbateson/stream-decorators/compare/1.2.1...2.0.0

1.2.1

Reverted update to new Psr\Http\Message\StreamInterface spec to keep with guzzlehttp/psr7's psr/http-message dependency requirements, which support 1.1 and 2.0. Fixes #16

Full Changelog: https://github.com/zbateson/stream-decorators/compare/1.2.0...1.2.1

1.2.0

What's Changed

  • Update to new Psr\Http\Message\StreamInterface spec
  • Drop PHP 7.1 support
  • Update to PHPUnit <10
  • Use PhpCsFixer.php from mb-wrapper project. mail-mime-parser needs separate setting do to __set hack.
  • This and mb-wrapper PR can be merged without a release, as they are dev only changes.

All changes thanks to @phpfui once again!

Full Changelog: https://github.com/zbateson/stream-decorators/compare/1.1.0...1.2.0

1.0.7

What's Changed

New Contributors

Full Changelog: https://github.com/zbateson/stream-decorators/compare/1.0.6...1.0.7

1.0.6

Update to fix the dependency version and not allow psr7 less than 1.7

1.0.5

Adds support for guzzlehttp/psr7 v2, thanks to @Nielsvanpach

1.0.4

Fixes an issue discovered with quoted-printable encoding if the stream ends with a final '=\n' #3

1.0.3

Reading from UTF-16LE streams was causing wrong characters to be returned. Aligning read buffering to 4 bytes seems to solve the issue.

1.0.2

PregReplaceFilterStream did not implement eof(), which was causing issues reading from larger streams when using stream_get_contents.

Fixes zbateson/mail-mime-parser#84 Fixes zbateson/mail-mime-parser#87

1.0.0
  • Moved out charset conversion utility class to zbateson/mb-wrapper
  • Incrementing to 1.0 -- as per semver.org, library should be on 1.0 once it's being used/no longer in rapid development.
0.4.1

Add missing Microsoft codes as found in #79 and discussed/fixed in ddeboer/imap#270.

0.4.0

Added a SeekingLimitStream class that seeks prior to read operations.

0.3.0
  • Simplified the streams to use Psr7 streams more and to separate some logic into secondary decorators
  • Renamed classes from "StreamDecorator" to "Stream", to keep them in line with naming in GuzzleHttp's library
  • Created NonClosingStream instead of NonClosingLimitStream which can be used generally with any stream, rather than extending LimitStream
0.2.0
  • Fixed various issues with flushing remaining bytes in Base64StreamDecorator, UUStreamDecorator and QuotedPrintableStreamDecorator
  • Added NonClosingLimitStream which doesn't cause the attached stream to close when 'detaching' or 'closing'
0.1.0
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport