Skip to content

Tags: steinkel/psysh

Tags

v0.9.8

Toggle v0.9.8's commit message
- Add support for static calls on traits (Thanks @zonuexe!)

- Improve test coverage (a bit)
- Improve list assignment support... do fancy things like `[$a[0], $a[1]] = [1, 2]`!

v0.9.7

Toggle v0.9.7's commit message
* 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.

v0.9.6

Toggle v0.9.6's commit message
New:

* Throw strings via `throw-up` command (e.g. `throw-up "Wheee!"`)

Improved:
* More accurate `timeit` command. It used to count the time to parse input and serialize return values. Now it doesn't.
* Fix a bug preventing `throw-up` from working with some code input.
* Fix bug preventing omitted items in `list()` from working at all.
* A bunch more test coverage.

v0.9.5

Toggle v0.9.5's commit message
New:

* Add documentation support for built-in and magic constants! You'll need to update your manual DB to get the latest hotness :)

Improved:
* 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.

v0.9.4

Toggle v0.9.4's commit message
New:

* Add support for a bound class when starting PsySH from inside a static class context.
* Add support for `self` and `static` in commands like `ls`, `show` and `doc`.
* Add tab completion for `doc`, `ls` and `show` commands (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 `list` and `[]` (Thanks @zonuexe!)
* Add a bunch of test coverage.

Improved:
* Fix a minor bug closing input buffer hitting 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 `trait X`.
* Fix using `doc` command with language constructs.
* Fix the line number reported for some type errors.

v0.9.3

Toggle v0.9.3's commit message
* Fix a regression for `use` statements without aliases.

* Fix a regression for some uses of `sudo`.
* ☝️ Increase test coverage to prevent these from happening again.

v0.9.2

Toggle v0.9.2's commit message
* Fix a scope variable regression introduced in v0.9.0.

* Restore support for PHP Parser v1.3.
* Add testing for minimum supported dependency versions.

v0.9.1

Toggle v0.9.1's commit message
Restore support for Symfony Console v2.3.

v0.9.0

Toggle v0.9.0's commit message
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.**

New:

 * A significant internals refactor, making cool new commands possible (Thanks @Markcial!)
 * … Including a new `timeit` command, for quick-and-dirty code profiling! (Thanks @Markcial!)
 * Inherit current `use` and `namespace` statements during `Psy\debug` sessions.
 * 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.

Improved:

 * A bunch of code reorginization and cleanup.
 * Various phpdoc and assertion improvements (Thanks @carusogabriel!)
 * `list`, `dump`, `doc` and `show` the result of arbitrary code input.
 * Throw arbitrary code with `throw-up`, rather than just an existing variable.
 * `throw-up` at runtime rather than parse time… which means you can conditionally throw-up! See b39dd56 for an example.
 * Add static constant support to `sudo`.
 * Make `sudo` code play better with history.
 * Support `$__namespace` magic variable with `show --ex`.
 * Set the `$_` magic variable with the output of the `parse` command.
 * Better support for brace-style `namespace` statements with PHP Parser >= v3.1.2.
 * Better support for `\Error` across 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 `Psy\info` output.

Removed:

 * 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 `tabCompletion` and `tabCompletionMatchers` config options — use `useTabCompletion` and `matchers`, respectively.

v0.8.18

Toggle v0.8.18's commit message
Fix a closure binding issue on PHP 5.3.