Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
- Fix regression updating execution scope with variables declared by commands.
- Fix class constant reflection in PHP 7.2.
- Remove dependency on ctype extension.
- Declare explicit dependencies on json and tokenizer extensions.
- Use fully-qualified names for core function calls.
- Minor code cleanup.
- Throw strings via
- More accurate
timeitcommand. It used to count the time to parse input and serialize return values. Now it doesn't.
- Fix a bug preventing
throw-upfrom working with some code input.
- Fix bug preventing omitted items in
list()from working at all.
- A bunch more test coverage.
- Add documentation support for built-in and magic constants! You'll need to update your manual DB to get the latest hotness :)
- Make process forking more resilient to interrupted system calls.
- Use \ReflectionClassConstant in PHP >= 7.1.
- A bunch of automated build fixes (the last one … wasn't so automated).
- Add a bit more test coverage.
- Add support for a bound class when starting PsySH from inside a static class context.
- Add support for
staticin commands like
- Add tab completion for
showcommands (Thanks @lvht!)
- Switch to Box for phar generation (Thanks @theofidry!)
- Add an iconv polyfill to the "compat" build dependencies.
- Add a code cleaner pass to detect issues with destructuring assignment via
- Add a bunch of test coverage.
- Fix a minor bug closing input buffer hitting enter twice after a line ending in a backslash.
- Fix false positives when matching command names, for example, if a line started with a command name in a quoted string.
- Fix tab completion for methods, properties and constants of namespaced classes.
- Stop executing commands inside strings that wrap onto multiple lines. I'm not sure whether this ever happened in real life, but it's kind of ridiculous and now it won't :P
- Fix a reference assignment regression from v0.9.x.
- Fix incorrect signature for traits in PHP 5.x. The reflection API says they're
abstract public trait X, but we'll just call them
- Fix using
doccommand with language constructs.
- Fix the line number reported for some type errors.
- Fix a regression for
usestatements without aliases.
- Fix a regression for some uses of
☝️Increase test coverage to prevent these from happening again.
- Fix a scope variable regression introduced in v0.9.0.
- Restore support for PHP Parser v1.3.
- Add testing for minimum supported dependency versions.
Restore support for Symfony Console v2.3.
This is an enormous release.
Note that PsySH v0.9.0 drops support for PHP < 5.4. Upgrade already. PHP 7.x is soooo much better.
- A significant internals refactor, making cool new commands possible (Thanks @Markcial!)
- … Including a new
timeitcommand, for quick-and-dirty code profiling! (Thanks @Markcial!)
- Inherit current
- Add support for live code reloading! But only if you're still using PHP 5.x :( (Thanks @nateabele!)
- Omit input with a starting space from readline history (much like Bash and basically every other shell ever)
- Add support for PHP Parser 4.x.
- A bunch of code reorginization and cleanup.
- Various phpdoc and assertion improvements (Thanks @carusogabriel!)
showthe result of arbitrary code input.
- Throw arbitrary code with
throw-up, rather than just an existing variable.
throw-upat runtime rather than parse time… which means you can conditionally throw-up! See b39dd56 for an example.
- Add static constant support to
sudocode play better with history.
$__namespacemagic variable with
- Set the
$_magic variable with the output of the
- Better support for brace-style
namespacestatements with PHP Parser >= v3.1.2.
- Better support for
\Erroracross the board.
- Ensure that constructors don't specify a return type.
- Make it more clear when an exception comes from REPL code.
- Include OS family in
- Drop support for PHP < 5.4 (Thanks @castarco!)
- Remove support for really really old (and deprecated) history file paths.
- Deprecate several unused methods (which you're almost certainly not even using, but you'll find out soon enough!)
- Add deprecation warning for
tabCompletionMatchersconfig options — use
Fix a closure binding issue on PHP 5.3.
Build stable version using PHP 7.0.