What's Changed
- chore: remove deprecated functions by @azjezz in #241
- chore: remove deprecated psalm plugin by @azjezz in #242
- chore: refactor project structure by @azjezz in #243
- chore(deps): bump phpbench/phpbench from 1.1.2 to 1.1.3 by @dependabot in #245
- chore: drop support for PHP 8.0 by @azjezz in #246
- chore: update configuration files by @azjezz in #247
- feat(type): add instance_of() function by @azjezz in #248
- feat(async): add async I/O support by @azjezz in #244
- feat(io): refactor IO component to use Async component by @azjezz in #249
- feat(file): introduce File component by @azjezz in #250
- feat(filesystem): refactor
Psl\Filesystem\write_file
,Psl\Filesystem\append_file
, andPsl\Filesystem\read_file
to usePsl\File
component. by @azjezz in #251 - feat(shell): refactor
Shell\execute
to use async streams by @azjezz in #252 - fix(async): always cancel timeout watcher after suspension is finished. by @azjezz in #253
- chore(stream): refactor stream component by @azjezz in #254
- feat(async): throw if resource is closed while waiting by @azjezz in #256
- feat(runtime): introduce runtime component by @azjezz in #258
- feat(str): use enum for encoding by @azjezz in #259
- feat(network): introduce network, tcp, and unix components by @azjezz in #257
- chore(deps): bump vimeo/psalm from 4.11.2 to 4.12.0 by @dependabot in #261
- chore(io/tcp/unix): improve performance, and closed handle/server condition by @azjezz in #264
- ci(unit-tests): test on macos by @azjezz in #266
- chore(io): do not throw on non-blocking resource by @azjezz in #267
- fix: fix windows support by @azjezz in #268
- fix(io): fix readAll() blocks by @azjezz in #270
- feat(io-stream): add getStream() method to access underlying stream by @azjezz in #273
- chore(io): do not throw already closed exception when closing twice by @azjezz in #274
- chore(internal): relay on autoloading when not using preloading by @azjezz in #275
- chore(deps): bump friendsofphp/php-cs-fixer from 3.2.1 to 3.3.2 by @dependabot in #276
- feat(io): queue operations instead of throwing by @azjezz in #277
- chore(io): simplify write/read queue implementation by @azjezz in #278
- feat(udp/tcp): queue operations instead of throwing by @azjezz in #279
- chore(async): extend scheduler wrapper by @azjezz in #280
- chore(deps): bump vimeo/psalm from 4.12.0 to 4.13.0 by @dependabot in #281
- chore(ga): bump actions/cache from 2.1.6 to 2.1.7 by @dependabot in #282
- feat(channel): introduce new channel component by @azjezz in #283
- fix(channel): return immediately after cancelling send/recieve callbacks by @azjezz in #284
- fix(channel): fix performance issue by @azjezz in #285
- chore(deps): bump vimeo/psalm from 4.13.0 to 4.13.1 by @dependabot in #287
- chore(channel): improve performance by @azjezz in #289
- chore(shell): use exec to avoid spawning a grandchild process by @azjezz in #290
- feat(async): introduce more async helper functions by @azjezz in #291
- chore(shell): improve type coverage by @azjezz in #292
- chore(channel): improve performance by @azjezz in #294
- chore(async): run event loop on main(); by @azjezz in #295
- fix(io): do not throw on close. by @azjezz in #296
- feat(io): introduce write(), write_line(), write_error(), and write_error_line() functions by @azjezz in #297
- feat(html): use Str\Encoding instead of string|null for $encoding argument by @azjezz in #298
- chore(deps): bump phpbench/phpbench from 1.2.0 to 1.2.1 by @dependabot in #300
- chore(deps): bump vimeo/psalm from 4.13.1 to 4.14.0 by @dependabot in #301
- chore(deps): bump php-coveralls/php-coveralls from 2.5.1 to 2.5.2 by @dependabot in #302
- chore(deps): bump vimeo/psalm from 4.14.0 to 4.15.0 by @dependabot in #303
- chore(async): remove
await_readable
,await_writable
,await_signal
, andwrap
functions by @azjezz in #305 - chore(deps): bump revolt/event-loop from 0.1.0 to 0.1.1 by @dependabot in #309
- chore(network,tcp,udp): implement socket server, and socket by @azjezz in #313
- chore(io): rename
readImmediately
totryRead
, andwriteImmediately
totryWrite
by @azjezz in #314 - chore: enable mutation tests by @azjezz in #286
- chore: remove type verification at runtime by @azjezz in #317
- chore(iter): optimize iterator by @azjezz in #318
- chore: remove more type verification at runtime, and narrow down argument/return types by @azjezz in #319
- chore(str): throw out-of-bounds exception instead of invariant violation for invalid offset by @azjezz in #320
- chore(collection): throw out-of-bounds exception instead of invariant violation for invalid offset by @azjezz in #321
- chore(collection): improve performance by @azjezz in #322
- chore: remove all references to callable, replace by closure by @azjezz in #323
- feat(async): introduce semaphore by @azjezz in #324
- chore(data-structure): rework exceptions by @azjezz in #325
- chore(filesystem): rework exceptions by @azjezz in #328
- chore(deps): bump vimeo/psalm from 4.16.1 to 4.17.0 by @dependabot in #331
- chore(deps): bump php-standard-library/psalm-plugin from 1.1.1 to 1.1.2 by @dependabot in #332
- Add static analysis checks for the new psalm pipe hook by @veewee in #333
- [Collection] add CollectionInterface::chunk() by @azjezz in #211
Full Changelog: 1.9.2...2.0.0-rc1