What's the 2025.2 release date?

Do you know how they end up in EAP users then? We do not suggest EAP to regular users in product, you can only go search for it

I don’t. I imagine they’re the type of folks who go into settings and tinker around with things they don’t understand, but since it’s not a problem I’ve had to address in quite a few years, I haven’t had the opportunity to ask those users why they enabled EAP builds. I just know that it happened, and it happened more frequently than I’d have expected, and the affected users would just start spamming me with bug reports about my plugin not working with the unreleased product that they suddenly had installed. And that’s an avoidable waste of time for both my users and myself, so I avoid it.

You don’t have to agree with this, but it’d be really nice if you at least accepted that some of us are speaking from a perspective of hard-earned experience and have made business-level decisions accordingly.

There are also no ways to enroll from the stable IDE, really. You need to look for it, or you are trying to find a way to not pay for IDE, this way we certainly know

If memory serves, when I made the changes to constrain to released/tested versions, Settings | Appearance & Behavior | System Settings | Updates had the option to include EAP/pre-release builds, so it was easily accessible. I honestly didn’t even know that that had been removed at some point. But it is still available through Toolbox, no? And I know that a number of my users install/manage their IDEs through Toolbox.

Cannot find any leads, and even in Toolbox it requires going deeper.

Do you consider this ā€œdeeperā€?

Because that’s right under Tool actions | Settings for the installed IDE.

I don’t know what addiitonal value there is to this discussion. You’re not going to convince me to put my users’ primary tool stability at risk. I’m obviously not going to convince you that there’s an actual problem if I were to do so.

I would just ask that you have a bit more respect and consideration for those who have staked their businesses on JetBrains’ platform – some of us for quite a long stretch – and trust that we’ve made informed decisions for those businesses and the associated end users.

I am not going to convince, but I need to share arguments and the relevant state so it is balanced discussion.

In the end I see that you decided to not manage expectations of users but instead limit testing capabilities for them, your choice and it even may be worse for the quality of your plugin, longer feedback loop

In a long run, we will stimulate vendors and promote work of people who help us and our EAP program. So not only the words we have

I would argue that removing our ability to constrain until-build which, as I’ve commented previously, only means my users have to wait a day or two before upgrading, achieves the same.

But I agree with Scott, it’s clearly futile to argue this. I’ll just reiterate my displeasure with this change and how it’s been handled, and get on with my day.

Okay, this statement is of concern to me. Unless I’m misreading it, it sounds like you’re saying that if a plugin developer chooses to limit participation of a plugin in JetBrains’ EAP program, that plugin will be reduced in the JetBrains Marketplace ecosystem from a support/visibility/promotion standpoint.

I can’t tell if this is the official stance or just yours.

I think I’ll follow up with my Marketplace contacts to get a better understanding of this stance/statement as my current EAP strategy was based on guidance from JetBrains at the time that I was seeing significant issues with users upgrading to early EAP builds.

1 Like

But no, I say we power up people who make their plugins more accessible and compatible via a positive stimulus. And then better products can win from following.

Please tell me if I’m wrong, but something similar to the NetCAT program, and/or the possibility for plugin developers to play with the first EAP builds a few days before the regular users, would mitigate these issues?
I’m saying that because it actually worked for NetBeans. This was a good thing.

We are investigating a possibility to have Nightly channel on IDEs available for selected groups of people. Could it help?

1 Like

If it can help plugin developers to be ready when (per example) the first EAP build of IJ 2025.4 or 2026.1 is out, I think this would be a good step in the right direction :slight_smile:

I don’t know how these nightly builds work. Are they stable enough for testing? If we test our plugin with nightly builds, how confident should we be when the first EAP version arrives? I think this is the main problem here. Plugin developers and users discover EAP builds at the same time.
Also, is it so important for regular users to have such quick access to EAP versions?

1 Like

This right here is at the heart of the issue. Thanks, @jonathanlermitage.1, for putting it so simply!

JetBrains releases an EAP build overnight for some of us, and, when I had an open-ended until-build, by the time I would get up in the morning, my users would have already started reporting issues against that build that I had absolutely no way of finding/fixing. Then I was automatically in a reactive/triage mode, and without limiting until-build, I had to keep dealing with issues that are not things I can fix myself, the DoNotAskAgain issue I reported yesterday being a key example.

If there were even perhaps a plugin dev-oriented ā€œpre-EAPā€ build that we had access to a very short time before the more broadly-available EAP – and if JetBrains would make a best effort to address any genuine breaking plugin SDK changes during that phase and before the EAP…along with plugin devs making a best effort to addressing any changes that affect their plugin but have a workable migration path – that would likely help to mitigate the issues that we plugin devs have been describing here.

1 Like

There is a further problem with this change, apart from the issue with EAP versions.

To avoid breakage due to inevitable API churn across versions, I’ve been using until-build to mark which platform versions my plugin is compatible with. I use a versioning scheme of <my version>-<platform version>, so 2025.2-251 is the 2025.2 version of my plugin, built for the 2025.1 version of the platform (`until-build` of 251.*). That way, I can ensure that that version of the plugin works with that version of the platform. This has worked well, because the IDE installs the latest version which is compatible with the declared build range, and because of the way the versioning works, they would get the latest version of my plugin for the version of the platform that they are using.

Users frequently don’t upgrade IntelliJ for all sorts of reasons. Maybe they’re on a fallback licence, maybe they just don’t find the new features compelling and would rather not risk breaking their work tools, maybe they just can’t be bothered learning where things are in a new UI layout they didn’t ask for. Many of my users are only using IntelliJ because of my plugin, so if they can’t get their company to pay for an upgrade to my plugin, they want to stay on an older IntelliJ so they can keep using the most recent version of my plugin they have available.

With this change, there’s now no way I can prevent their IDEs from installing versions which won’t work with their platform version. Their IDE will install the most recent version, and since the until-build is ignored, they’ll get the most recent version of my plugin for the most recent IntelliJ platform, which is almost guaranteed to give them problems. My understanding is that we can get around this by manually setting the until-build version in the marketplace, by hand, for every version, on every deploy, but this is a ridiculously onerous way to handle this. We’ve been promised details on this is supposed to work ā€œvery soon nowā€ since February, and now the change is here but we still have no details of how this will work. So, how are we supposed to support this use case?

And we had better take more time before rolling out in release to check everything, hope it is much better than quick dramatic updates.

1 Like