Weave 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
3.0.1

What's Changed

  • Read uuencoded lines in chunks instead of byte-by-byte (thanks @iliaal)
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.
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel