Skip to content

Commit a300ef6

Browse files
committed
OPP-113: Compatibility with PHPStorm 2025.2
- updated compatibility with PHPStorm - updated plugin name and description - reworked dependency declarations and Gradle build configuration - upgraded to Gradle 8.14.3 (and "bin" to "all") - upgraded to JetBrains Gradle plugin v.2.7.2
1 parent 47c5ba2 commit a300ef6

10 files changed

Lines changed: 283 additions & 334 deletions

File tree

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@
44
build/
55
.idea-sandbox/
66
.DS_Store
7-
config/extra-settings.gradle.kts
7+
config/extra-settings.gradle.kts
8+
/.intellijPlatform/
9+
/out/

CHANGELOG.md

Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
Changelog
2+
=========
3+
4+
## 2025.2.0
5+
- Updated compatibility with PHPStorm 2025.2
6+
- Started reworking gradle build configuration
7+
8+
## 1.1.3
9+
- Upgrade compatibility with 2025.1 version of PHPStorm.
10+
11+
## 1.1.2
12+
- Upgrade compatibility with 2024.3 version of PHPStorm.
13+
- Fix lack of support for "replace" keyword in action_groups node in actions.yml schema.
14+
15+
## 1.1.1
16+
- Upgrade compatibility with 2024.2 version of PHPStorm.
17+
18+
## 1.1.0
19+
- Fix problems with fetching RequireJS reference
20+
- Restore ability to navigate to RequireJS references
21+
22+
## 2024.1
23+
- Fixed reference provider errors.
24+
- Updated dependencies.
25+
26+
## 2023.2
27+
- Updated compatibility with PHPStorm 2023.2.3
28+
29+
## 2023.1
30+
- Updated compatibility with PHPStorm 2023.1
31+
32+
## 2022.3
33+
- Fixed compatibility with PHPStorm 2022.3
34+
35+
## 1.0.19
36+
- [#17] Fixed IllegalArgumentException in Twig templates used by layouts in PHPStorm 2020.3
37+
38+
## 1.0.18
39+
- [#15] extended_entity_name and table options for datagrids provide incorrect suggestions
40+
41+
## 1.0.17
42+
- [#14] Fixed compatibility with the upcoming PhpStorm 2020.1
43+
44+
## 1.0.16
45+
- [#12] Fix navigation to layout updates from layout themes (twig templates)
46+
47+
## 1.0.15
48+
- Fix possible NullPointerException in requirejs support
49+
50+
## 1.0.14
51+
- [#13] Fix possible deadlock and crash
52+
53+
## 1.0.13
54+
- Better autocomplete for conditions in workflows.yml
55+
- Support for translations autocomplete and navigation in more places
56+
- Support for imported files in datagrids.yml
57+
58+
## 1.0.12
59+
- Better autocomplete for actions / conditions in workflows.yml
60+
- Fixed navigation to actions / conditions in workflows.yml
61+
62+
## 1.0.11
63+
- Fixed support for scopes in workflows.yml
64+
- Fixed two possible NullPointerExceptions
65+
66+
## 1.0.10
67+
- Navigation and improved support for form types, api form types, actions, conditions and mass action providers
68+
69+
## 1.0.9
70+
- Improved autocomplete for actions.yml
71+
72+
## 1.0.8
73+
- Fix support for form_type in api.yml
74+
- Fix support for autocomplete asset filepaths (eg. in assets.yml) starting with quote char
75+
- Navigation to translations sources
76+
77+
## 1.0.7
78+
- Autocomplete for scopes in workflows.yml
79+
80+
## 1.0.6
81+
- Improved autocomplete for layout update yml files
82+
- Navigation from twig templates to layout updates
83+
84+
## 1.0.5
85+
- Fix completion for yaml files created from scratch
86+
87+
## 1.0.4
88+
- A lot of improvements for autocomplete in various files, especially in: workflows.yml, system_configuration.yml, api.yml, actions.yml and navigation.yml
89+
90+
## 1.0.3
91+
- Improved autocomplete for requirejs.yml files
92+
93+
## 1.0.2
94+
- Improved autocomplete for layout update files
95+
- Fix NullPointerException for autocomplete at the end of file
96+
97+
## 1.0.1
98+
- Improved autocomplete for entity.yml
99+
- Improved autocomplete for api.yml
100+
101+
## 1.0.0
102+
- The same as 1.0.0-beta6 - only change versioning
103+
104+
## 1.0.0-beta6
105+
- Improve performance by reducing number of reindexing.
106+
107+
## 1.0.0-beta5
108+
- Full support for requirejs modules
109+
110+
## 1.0.0-beta4
111+
- update autocomplete for dashboards.yml
112+
113+
## 1.0.0-beta3
114+
- inspection for lack of value
115+
- autocomplete for "label" properties in datagrids.yml
116+
- improve autocomplete for "data_type" property in api.yml
117+
118+
## 1.0.0-beta2
119+
- inspection for duplicate properties
120+
- improve "data_transformer" suggestions in api.yml
121+
122+
## 1.0.0-beta1
123+
- improve workflows.yml support
124+
- inspections for value types
125+
126+
## 1.0.0-alpha23
127+
- Small fixes for system_configuration.yml and api.yml
128+
129+
## 1.0.0-alpha22
130+
- Support for PhpStorm 2016.3+
131+
132+
## 1.0.0-alpha21
133+
- Autocomplete for more layouts yaml files: **theme.yml**, **assets.yml**, **requirejs.yml**, **images.yml**
134+
135+
## 1.0.0-alpha20
136+
- Support for Oro Platform 2.+
137+
- Autocomplete for layouts yaml files
138+
139+
## 1.0.0-alpha19
140+
- Autocomplete for entity methods added dynamically during application execution
141+
142+
## 1.0.0-alpha18
143+
- Autocomplete for the **search.yml**
144+
145+
## 1.0.0-alpha17
146+
- Autocomplete for the **navigation.yml**
147+
148+
## 1.0.0-alpha16
149+
- Autocomplete for the **dashboard.yml**
150+
151+
## 1.0.0-alpha15
152+
- Autocomplete for the **actions.yml**
153+
154+
## 1.0.0-alpha14
155+
- [#5] bug fix for reindex during php field rename refactoring
156+
- Fixes for **api.yml** inspections
157+
158+
## 1.0.0-alpha13
159+
- Autocomplete for the **api.yml**
160+
161+
## 1.0.0-alpha12
162+
- Autocomplete for the **system_configuration.yml**
163+
- Autocomplete for mixins in the **datagrid.yml**
164+
165+
## 1.0.0-alpha11
166+
- Improvements for the plugin enabling / disabling feature
167+
- Improvements for doctrine entity references support
168+
- Improvements for Oro Platform detection logic
169+
170+
## 1.0.0-alpha10
171+
- Autocomplete for the **acl.yml**
172+
- Autocomplete for the **entity.yml**
173+
- Autocomplete for the **datagrid.yml**
174+
- Autocomplete for the **workflow.yml**
175+
- Possibility to navigate via RequireJS modules

build.gradle.kts

Lines changed: 29 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,81 +1,54 @@
1-
import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType
2-
import java.io.ByteArrayOutputStream
1+
import org.jetbrains.intellij.platform.gradle.TestFrameworkType
32

43
plugins {
5-
id("org.jetbrains.intellij.platform") version "2.2.0"
4+
id("org.jetbrains.intellij.platform") version "2.7.2"
65
id("groovy")
76
}
87

9-
dependencies {
10-
sourceSets.named("test") {
11-
testImplementation("org.codehaus.groovy:groovy-all:2.4.14")
12-
testImplementation("org.opentest4j:opentest4j:1.3.0")
13-
}
14-
intellijPlatform {
15-
plugin("com.jetbrains.php:243.21565.193")
16-
plugin("com.jetbrains.twig:243.21565.202")
17-
bundledPlugin("org.jetbrains.plugins.yaml")
18-
bundledPlugin("com.intellij.css")
19-
bundledPlugin("JavaScript")
20-
create("IU","2025.1")
21-
}
22-
}
23-
24-
buildscript {
25-
project.apply {
26-
from("$rootDir/config/extra-settings.gradle.kts")
27-
}
28-
}
29-
308
group = "com.oroplatform"
31-
version = "1.1.3"
32-
33-
val pathToIde = project.extra["pathToIde"]
34-
35-
val javaVersionOutput = ByteArrayOutputStream()
36-
exec {
37-
commandLine = listOf("java", "-version")
38-
standardOutput = javaVersionOutput
39-
errorOutput = javaVersionOutput
40-
}
41-
42-
val javaVersionString = javaVersionOutput.toString().lines().first()
43-
val javaVersion = Regex("""\d+""").find(javaVersionString)?.value?.toInt() ?: 11
9+
version = "2025.2.0"
4410

45-
java {
46-
toolchain {
47-
languageVersion.set(JavaLanguageVersion.of(javaVersion))
11+
repositories {
12+
mavenCentral()
13+
intellijPlatform {
14+
defaultRepositories()
4815
}
4916
}
5017

18+
java { toolchain { languageVersion.set(JavaLanguageVersion.of(21)) } }
19+
5120
intellijPlatform {
5221
pluginConfiguration {
53-
name = "idea-oroplatform-plugin"
22+
name = "OroCommerce / OroPlatform"
5423
}
5524
}
5625

57-
repositories {
58-
mavenCentral()
26+
dependencies {
5927
intellijPlatform {
60-
defaultRepositories()
28+
phpstorm("2025.2")
29+
bundledPlugin("com.jetbrains.php")
30+
bundledPlugin("com.jetbrains.twig")
31+
bundledPlugin("org.jetbrains.plugins.yaml")
32+
bundledPlugin("com.intellij.css")
33+
bundledPlugin("JavaScript")
34+
testFramework(TestFrameworkType.Platform)
6135
}
62-
}
63-
64-
val runPhpStorm by intellijPlatformTesting.runIde.registering {
65-
type = IntelliJPlatformType.PhpStorm
66-
version = "2025.1"
36+
testImplementation("org.codehaus.groovy:groovy-all:3.0.19")
6737
}
6838

6939
tasks {
7040
test {
71-
// OPP-80: The tests that target PHP code completion and JS completion
72-
// or those that use the information no longer present in classes.php in the newer version of the platform
73-
// are obsolete, as they assume that classes.php will store
74-
// data required for indexing, hence they should be removed from tests
75-
// Alek Mosingiewicz
41+
// TODO Refactor/remove obsolete tests (OPP-80 ?) - verify the following and current state of tests:
42+
// TODO Tests that target PHP and Javascript code completion or rely on the data required for indexing
43+
// TODO that is no longer present in classes.php in current Oro versions are obsolete.
7644
setExcludes(listOf(
77-
"*com/oroplatform/idea/oroplatform/intellij/codeAssist/javascript*",
78-
"*com/oroplatform/idea/oroplatform/intellij/codeAssist/yml/v1/AclPhpReferenceTest*",
45+
"**/com/oroplatform/idea/oroplatform/intellij/codeAssist/javascript/**",
46+
"**/com/oroplatform/idea/oroplatform/intellij/codeAssist/yml/v1/AclPhpReferenceTest*",
7947
))
8048
}
8149
}
50+
51+
val extras = rootProject.file("config/extra-settings.gradle.kts")
52+
if (extras.isFile) {
53+
apply(from = extras)
54+
}

config/extra-settings.gradle.kts.dist

Lines changed: 0 additions & 2 deletions
This file was deleted.

gradle/wrapper/gradle-wrapper.jar

-17.6 KB
Binary file not shown.
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-all.zip
44
networkTimeout=10000
5+
validateDistributionUrl=true
56
zipStoreBase=GRADLE_USER_HOME
67
zipStorePath=wrapper/dists

gradlew

Lines changed: 20 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)