Skip to content

v0.12.0 Working Again

Latest
Compare
Choose a tag to compare
@groboclown groboclown released this 08 Jul 23:29

v0.12.0 of the p4ic4idea plugin is now available. It includes bug fixes, and some much needed work to get it using current APIs so it will at least run on modern IDEs.

Overview

  • Bug fixes
  • Changed supported IDE versions - removed support for all versions of the IDE before v212.
  • Refactored to simplify connection configuration code. This is starting a change to the code
  • Upgraded referenced libraries.

Details

  • Bug fixes
    • RSH connections would incorrectly add "localhost:" to the command if the command name had no ':' character in it.
      • This primarily affected tests running on Linux.
      • The new version includes extra checking before using an RSH connection to ensure the executable file exists and is executable. However, the logic in place only works if the executable has no spaces in the file name.
    • Improved the Active Connections panel to better refresh when the connection state changes, and now includes VCS roots that have an invalid Perforce configuration.
    • Internally changed the association of workspace associations to the VCS root registration, which allows for more accurate file associations. This also alters how the Active Connections panel associates connections to roots. This is expected to eliminate many places where the plugin showed odd behavior.
  • Changed supported IDE versions.
    • Removed all code that requires v211 and prior support.
      • Internally added jar support for compiling against 212, 213, and 221.
      • v203 and v211 were originally planned for support, but they were removed due to complications in the codebase for backwards compatibility.
    • Upgraded required minimum compiler compatibility to JDK 11.
  • Nearly all bundled libraries have been updated. The included bom.xml file includes the updated information.
  • Refactored to simplify connection configuration code.
    • This is starting a change to the code to be organized around specific, distinct bits of functionality, rather than around the IDE extension points.