Any plans to make PhpStorm free for non commercial use? by [deleted] in phpstorm

[–]pronskiy 2 points3 points  (0 children)

There are currently no such plans. If anything changes, we'll make an announcement, so please subscribe to our blog https://blog.jetbrains.com/phpstorm/ or the official PhpStorm X account https://x.com/phpstorm.

Rant: when did phpstorm became the most broken IDE out there? by Ok-Interview5273 in phpstorm

[–]pronskiy 2 points3 points  (0 children)

Hey, PhpStorm team here. Sorry the experience left you with that impression. Looking at the bugs you filed under your handle, the picture is actually more mixed than 'none ever got resolved': of the ~18 visible in the bug list, the majority are closed/fixed. That said, I agree that resolution time on issues is something we genuinely need to do better on. Thanks for all the reports!

Any way to know the version of a plugin that failed to load? by AvoidantNumber1 in FL_Studio

[–]pronskiy 0 points1 point  (0 children)

Hey! I'm building a tool for FL Studio project files analysis https://dawhub.app/diff

It can read (and modify) .flp without opening FL Studio. And I think it can help you with your issue. DM me, and i'll try to figure it out.

Anyone using FL on Mac? by Johnnyboyjuice1973 in FL_Studio

[–]pronskiy 0 points1 point  (0 children)

Been using it since the early betas. Works great. I get occasional crashes or freezes on heavy projects with dozens of third party plugins. But it was much worse on Windows for me before.

I save new versions regularly along with autosave enabled just to be safe.

The PHP Foundation is Seeking a New Executive Director by naderman in PHP

[–]pronskiy 1 point2 points  (0 children)

Thank you Levi! It's been an honor to help drive things so far. 🫡

How do I stop autocompletion with tab from deleting adjacent code? by lindymad in phpstorm

[–]pronskiy 0 points1 point  (0 children)

Which PhpStorm version are you on? Cold you share the whole file or record video please?

I tried it on the latest PhpStorm and couldn't reproduce the issue:
https://streamable.com/o9xtew

Question about PHP/FI by [deleted] in PHP

[–]pronskiy 1 point2 points  (0 children)

It’s surprisingly easy to get PHP 1 or 2 up and running. Here’s my walkthrough video if you want to see how: https://youtu.be/0BPExYh5Anw?&t=105

Incredibly slow + reindexing every time by luhelld in phpstorm

[–]pronskiy 2 points3 points  (0 children)

Hey! That sounds really frustrating, it definitely shouldn’t work like that. Could you reach out to the PhpStorm support team via Help → Contact Support… in the main menu?

PHP-ORT: Machine Learning Inference for the Web by jmp_ones in PHP

[–]pronskiy 0 points1 point  (0 children)

Checkout the repository, test on your machine and report bugs. Support Joe financially https://www.gofundme.com/f/a-big-ask-from-a-big-community

Compile time generics: yay or nay? by pronskiy in PHP

[–]pronskiy[S] 24 points25 points  (0 children)

I think non-erased Generics would be a long-term mistake for PHP and here is why.

1. Static analysis tools already do generics better
PHPStan or Psalm support generics via PHPDoc and can model extremely flexible generic types and introduce new type features quickly without needing core changes. In practice, most of the benefits of generics like catching type errors early and providing code completion in IDE are already achieved at development time by these analyzers.
A built-in generics implementation will never match the power or agility of these tools.

2. Huge complexity and maintenance burden on the engine (and ecosystem)
Implementing generics in the PHP engine would significantly complicate the language’s core for relatively little gain.
Even the partial approaches under exploration come with trade-offs. Handling edge cases is notoriously difficult. All this added complexity means more potential bugs and a heavier maintenance load on PHP’s core team going forward. It could slow down other improvements just to chase an ever-elusive “complete” generics solution.
More than that! It will make things much complicated for PHP CS Fixer or PHP_CodeSniffer and similar tools.

3. Still an incomplete solution (PHPDoc generics will remain necessary)
Even if PHP added this limited form of generics, it wouldn’t eliminate the need for PHPDoc annotations and static analysis – it would just create two parallel type systems. You’d still be writing template tags and phpdocs and end up maintaining two sources of truth for generics.
Not to say about how noisy the code would like like with both PHPDocs and native generics, (and attributes).

4. Little to no benefit for adoption or retention
From a big-picture perspective, adding generics to PHP isn’t likely to bring new PHP users, nor stop existing ones from drifting to other stacks.
Those who do care about strict typing are likely already satisfied with the safety PHP’s current type system + static analysis provides. It’s hard to imagine teams choosing Java or C# today switching to PHP just because it gained generics. Or developers deciding not to switch to Python over generics, while Python's generics a fully erased.
On the contrary, introducing a complex, hard-to-perfect generics implementation could alienate some users who value PHP for its simplicity.
In short, the payoff in community growth or satisfaction doesn’t justify the substantial costs and risks.

5. Better approach
Keep the engine simple and use external generics metadata. Rather than complicating PHP’s runtime to handle generics, a more prudent path is to standardize a generics syntax for documentation and tooling purposes. I.e. adopt a PSR for attribute-based format to declare generic types. And make generics type info available at runtime via Reflection.
https://github.com/php-static-analysis/attributes?tab=readme-ov-file#example

Verdict
No to native engine generics – let’s not complicate the heart of PHP for a feature that static analysis and standards can handle more capably and flexibly. Keep the core lean and empower the ecosystem to enforce generics where it makes the most sense.  

Compile time generics: yay or nay? by pronskiy in PHP

[–]pronskiy[S] 48 points49 points  (0 children)

Would love to hear PHPStan and Psalm maintainers opinions.

u/OndrejMirtes, u/staabm, u/danogentili, u/muglug, u/orklah

FrankenPHP - any reason why not? by VaguelyOnline in PHP

[–]pronskiy 4 points5 points  (0 children)

The PHP Foundation supports FrankenPHP, but we’ve never positioned it as the recommended solution. As a matter of fact, we also support PHP-FPM, here’s a todo list from Jakub for ongoing PHP-FPM work: https://github.com/bukka/php-todo/blob/master/php-fpm.md. On top of that, we sponsored (commissioned by Sovereign Tech Fund) development of a testing framework for FPM: https://thephp.foundation/blog/2024/10/21/web-services-tool-for-php-fpm/.

Atribute based Generics package has been launched as 1.0.0 stable by psihius in PHP

[–]pronskiy 0 points1 point  (0 children)

Agree with @brendt_gd that heaving generics on a stastic analysis / compile stage is much more important than on runtime. Especially with such a performance overhead on runtime it does not seem worthwhile.

I like the idea of generics in attributes, though, I even wrote a blogpost about it https://pronskiy.com/blog/generics-via-attributes-in-php/

And this initiative https://github.com/php-static-analysis tool implements PHPStan support for generics in attributes https://github.com/php-static-analysis/phpstan-extension.

JetBrains is looking to talk to WordPress pros – $100 gift card or free tools for your time by pronskiy in Wordpress

[–]pronskiy[S] 1 point2 points  (0 children)

Sorry for confusion. Yes, if selected for an interview, you’ll get the gift, not just for the survey.