All notable changes to this project will be documented in this file. The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
2.7.3 - 2024-06-19
- [#349] Fixed a compatibility issue with PHP 7.0 (Laravel 5.5) and older versions of PsySH.
- [#306] Put all laravel functionality behind a check to see if the project is a laravel project, making the plugin also work with plain PsySH without laravel or tinker installed.
2.7.2 - 2024-06-17
2.7.1 - 2024-06-17
- Reverted the fix for windows users where Cyrillic and Arabic characters would be lost in encoding conversions.
- Sorry to these users, I'm still waiting response from JetBrains to properly fix this issue. The workaround I implemented for 2.7 brings more issues than it fixes.
2.7.0 - 2024-04-09
- Your tinker plugin settings might reset after the update - sorry for that :)
- Swapped out deprecated StringEscapeUtils.
- Fixed ModalityState deprecation warning.
- [#316] Fixed ActionUpdateThread deprecation.
- [#312] Fixed app settings storage conflict with another plugin.
- [#255][#280] Fixed (worked around) characters not present in windows-1252 charset being displayed weirdly on windows machines.
- Fixed deprecation warnings coming from the Migrations.
- Updated all dependencies to their latest versions.
- Fixed a typo in feature request template. (Thanks @igorsantos07!)
- Changed minimal version to 2024.1, deprecating the plugin for older versions of IDEs.
2.6.1 - 2023-05-08
- [#252] Cast exception when running on an SSH interpreter.
- [#253] Remove unneeded
withPtty: true
from process handler. - Fixed an early return when no ansicommands are found in the output, that also not parsed out the whisper tag.
2.6.0 - 2023-04-16
- Added new
castProcessResult
tinker caster. (Thanks @emargareten!) - ANSI Parser for the output window within the Kotlin part of the plugin.
- Meta tag to set charset to UTF8 in toolwindow HTML.
- Now using the ToolWindow without use of a .form file, which was not supported in combination with Kotlin (even though it always had worked in the past).
- Reverted to the pre-2.5 tinker_run.php, since the new method didn't work in all cases.
- Pulled missed changes from the Intellij platform plugin template.
2.5.1 - 2022-12-14
- [#220] Add context menu action in tinker consoles to run the console.
- Replace JB run icon with a green tinker run icon.
- [#223] Editor font size is now used as font size for the tinker console.
2.5.0 - 2022-12-13
- [#190] Add way to customize vendor path. (Thanks @bobisdacool1!)
- Also fixed the bug from this PR where it crashed if you didn't configure anything.
- [#171] Add ANSI mode parsing (instead of regex-replace-guessing in the output window)
- Due to demand: added more ways to support this plugin, like Ko-Fi and sharing options.
- Adding these ways to a rotation for the support message every 10 executions.
- Adding these ways to
FUNDING.yml
. - Generalize "Patereon" to "Support" in the code.
- Rexeg-replace-guessing in the output window, replaced with ANSI mode parsing.
- [#217] Removed the deprecated ProjectManagerListener.projectOpened event. Didn't replace it with a postStartupActivity because it apparently works without just fine.
- [#212] Whisper tags now get parsed to a span with text color set to gray.
- "INFO" being left after execution because of Laravel's new error parsing in the console.
- Updated dependencies (Thanks @dependabot!)
- Removed some now unused code due to removing of ProjectManagerListener.projectOpened event.
- [#169] Option to call app termination after running code.
- [#178] Process exiting before full output is available.
- [#46] Execution on docker
- ℹ️If it doesn't work, please read this.
- ℹ️This does not fix the "string conversion" error found when using
docker exec
. You still have to usedocker run
for now.
- [#162] Endless execution of the tinker process in several usecases (like JB 2022.2 EAP)
- Compatibility issue with JB 2022.2 (EAP) regarding
ContentFactory.SERVICE
- [#136] Upper version limit for JB products.
- ℹ This will enable the plugin to be compatible for all JB products >= 211 until a compatibility issue shows up.
- Updated dependencies.
- Qodana version which stopped the build from completing
- [#112] Adds Open new console and Reopen last console actions to the tinker output toolwindow.
- [#110] Fixes typo in caster for the Model class.
- Way of migrating to newer versions of this plugin.
- [#105] Adds the stringable caster added in laravel/tinker v2.6.1. ( Thanks @emargareten!)
- Restyling of Tinker console tabs.
- [#96] Added compatibility with newer API versions.
- [#34] Setting to change tinker execution root.
- [#75] Empty directory list of tinker consoles resulting in fatal error.
- Dependabot.
- [#35] Setting to enable/disable line wrapping in output window.
- [#33] Adds way for Patreon supporters to disable the support plug.
- [#53] Updates compatibility with 2021.1.
- Updated all dependencies.
- Tinker Consoles having an IS_TINKER_CONSOLE userdata key.
- [#47] [#40]
<
and>
are now replaced by>
and<
to make them not parse as HTML in tinker output. - [#40] Fixes always showing output on the last opened project when having multiple projects open.
- [#41] When pressing the x icon on the progress bar to stop the PHP execution, the process now gets destroyed within 250ms.
- New branding by Joey "Veritas" de Vries.
- [#50] Tinker Create/Smart action overwriting its own files from a previous session.
- Tinker files not being PHP when project reloads.
- BREAKING: [#39] Tinker consoles are now available under "Scratches and Consoles".
- [#37] [#38] When selecting text and running the
Smart Action
a new console opens with your selected text.- ℹ This can also be achieved by selecting text, right-clicking and selecting
Open Tinker Console With Selection
.
- ℹ This can also be achieved by selecting text, right-clicking and selecting
- BREAKING: Every action is now independently listed.
- ℹ The default action is now "Smart Action" which will have kind-of the same functionality as you have been using it up till now.
- Every action this plugin can do is now individually bindable in your keymap.
- BREAKING: Per-project cache (which stored your last executed tinker code).
- ℹ You can probably find your last snippet still in
%Project%/.idea/laravel-tinker.xml
if you really need it!%Project%/.idea/laravel-tinker.xml
can be deleted otherwise.
- ℹ You can probably find your last snippet still in
- Reorganization of a lot of classes.
- Dependencies have been updated.
- Updated dependencies.
- Compatibility with 2020.3.
- Laravel Tinker settings page (under Tools).
- [#30] Ability to disable start and finish messages in output.
- [#21] Ability to add a shortcut to close all involving Tinker.
- Dependencies updated to the latest versions.
- The title of the tinker screen was editable - now it isn't.
- [#28] Ending your tinker console with a comment now works correctly again. ( Thanks @emargareten!)
- [#25] When running tinker it will now save all documents before executing.
- [#23] Fixed a bug where output would display twice when the output highlighter didn't find output to highlight.
- [#7] Output syntax highlighting.
- [#11] Plugin won't create a null file anymore on windows.
- [#16] Only 1 tinker console will be open at all times.
- [#18] Added the LARAVEL_START constant to the tinker run script.
- [#19] Colors in output window now reset to IDE colors when running.
- [#12] [#20]
Fixes
Class 'Laravel\Tinker\ClassAliasAutoloader' not found
- ℹ Fixes the plugin for laravel/tinker versions
<= 1.0.1
.
- ℹ Fixes the plugin for laravel/tinker versions
- [#10] Your last command will now be saved (on per-project level).
- Non-obtrusive reminder you can support this package.
- [#6] Output window now (hopefully) always inherits the font and color of the IDE
- The link to PHP settings in error dialogs now acually links to the correct settings page.
- [#9] Output showing slow on larger outputs.
- Run button at the opening tag of the tinker console.
- Cleaned output of tinker output window
- PHP Runner script is now a php file, makes it easier to work with in the IDE.
- Default keybinding in Mac OS.
- Toolwindow not opening automatically if not opened before.
- Leaving zombie processes (something pcntl did).
- Silent crash when docker was not set.
- Tinker process not shutting down because of waiting for non-existent input.
- [#1] A correct way to interact with remote interpreters.
- Made errors more to the point.
- Better code splitting in message balloons.
- More text in the readme.
- Better formatting in tinker output.
- Laravel now actually gets bootstrapped.
- Removed needless output from interpreter, like docker startup messages.
- Made output toolwindow font show in readable colors.
- Campatibility issues that arose in 0.0.1-ALPHA.
- Everything.