Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intellij 2023 Support #256

Merged
merged 9 commits into from
Oct 26, 2023
Merged

Intellij 2023 Support #256

merged 9 commits into from
Oct 26, 2023

Conversation

davissuber
Copy link
Contributor

@davissuber davissuber commented Oct 6, 2023

This pull request follows uber/RIBs#613 and update motif plugin to support IDEA 2023.2 - there are a handful of related build tool updates needed including:

  • update gradle to 7.6
  • remove of net.ltgt.apt-idea (see here - its feature is already included in modern version of IDEA)
  • update intellij plugin to 0.15.0
  • build with java 17

Also in updating to latest version, we will need to retire the now-obsolete "project component" - prior to this pull request, running ./gradlew build fails for me locally and the changes in this pull request seems to work to make the build green

targets 2023.2 and make the associated gradle version,
plugin, java version change.

note that things are very broken at this commit - we
will need to fix tests and other stuff in the coming
commits
LightCodeInsightFixtureTestCase was deprecated - we needed to
update how we set up the ProjectDescriptor as well.

Per IDEA-225960, internalJdk will be increasingly deprecated - IDEA
seems to updated the internal disposal logic so our static initialization
no longer works - they have created fake jdk for test usage - but there
seems to be some slight behavior change (e.g. no fully qualified name)
that we should probably update separately
HierarchyBrowserBase updated its createTrees generic variance and
removed some method - this commit changes the children to follow
project component has been deprecated - in this commit, we
migrate to MotifProjectService and AnalyticsProjectService
For some reason, our old way of adding libraries to the test environment
stopped working and we need to use a different way.

Also, the test rule need to be updated since the test environment now
is more properly "faked" and the old rule hangs forever
@davissuber davissuber changed the title intellij2023 support Intellij 2023 Support Oct 6, 2023
@davissuber
Copy link
Contributor Author

davissuber commented Oct 6, 2023

I actually haven't tested this pull request in the latest IDEA yet - but I'd like to collect feedback still. I have manually tested this change here

Since that was leftover from ProjectComponent
* prefer Uber Motif to make plugin easier to identify
* fix null pointer exception for icon load
@davissuber
Copy link
Contributor Author

Comments addressed + I have manually installed and tested the plugin in IntelliJ 2023.2.2 and verify the panel is not empty.

We did a partial removal in an earlier commit and unintentionally
made the TestHarness skip its tests.

This commit removes the rule altogether and fixes the setUp/tearDown
calls by removing the annotation (annotation not needed), see
https://github.com/JetBrains/intellij-community/blob/master/platform/testFramework/src/com/intellij/testFramework/UsefulTestCase.java#L91
1. setting the jvm target in a more succinct way
2. avoid noisy build due to spotless depending on its own output
diffplug/spotless#870 (comment)
@idanakav idanakav merged commit 8327d8b into uber:main Oct 26, 2023
1 check passed
@davissuber davissuber deleted the ds-intellij2023 branch October 26, 2023 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants