Skip to content

Releases: InSyncWithFoo/pyright-langserver-for-pycharm

v1.1.0

13 Aug 02:34
Compare
Choose a tag to compare

For users

Added

  • The icon for pyrightconfig.json is now replaced with Pyright's logo.

Changed

  • Minor internal working details are changed.

For contributors

Added

Changed

v1.0.1

14 Jul 02:17
Compare
Choose a tag to compare

For users

Fixed

  • The active interpreter is now detected correcly on non-PyCharm IDEs.
  • The "autocomplete parentheses" monkeypatch now works correctly
    with auto-import (and other textEdit-based) completions.

For contributors

Changed

Fixed

v1.0.0

23 Jun 09:18
Compare
Choose a tag to compare

For users

Added

  • The list of recognized file extensions can now be configured
    and includes py and pyi by default.
    Previously, only .py files are recognized.
  • PyCharm has a bug leading to extra quotes being added
    when autocompleting Literal strings and TypedDict keys.
    A monkeypatch has been added to mitigate the issues.
    It can be disabled using an UI option.
  • The diagnostic mode is now configurable.
    Previously, no corresponding value is sent to the language server.
  • The server can now be asked not to
    automatically add common search paths (e.g. src).
    Previously, they were always added by default.

Changed

  • The "Auto-import" completion item detail monkeypatch
    introduced in the previous version can now be disabled.
  • The support version cap is removed.
    The plugin is now declared as compatible with
    all versions from 2024.1 and later.

For contributors

Added

  • Project option "Targeted file extensions" is added. (d5c69db, 541c563)
  • Project option "Diagnostic mode" is added. (553c2ae)
  • Project option "Auto search paths" is added. (90b572b)
  • Global option "Monkeypatch auto-import details" is added. (9efacf5)
  • Global option "Monkeypatch trailing quote bug" is added. (9efacf5)

Changed

Fixed

v0.5.0

27 May 09:15
Compare
Choose a tag to compare

For users

Added

  • Functions, methods and constructors
    can now be autocompleted with parentheses.
  • Auto-import completions now use the source as the supporting detail.
    Previously the detail was "Auto-import" or a similar localized message.
  • Diagnostics support can now be disabled separately.
    Previously the only way to do so would be to disable
    the entire language server by disabling the corresponding inspection.
  • The server can now be restarted automatically on configuration change
    if the corresponding setting is enabled.
    Previously it needed to be restarted manually.
  • UI components are slightly changed.

For contributors

Added

  • The plugin now supports 2024.2. (b76af8f)
  • Global option "Autocomplete parentheses" is added. (164141b)
  • Global option "Diagnostics support" is added. (20ee9ba9)
  • Global option "Auto-restart server" is added. (2834e69)

Changed

v0.4.0

15 May 02:19
Compare
Choose a tag to compare

For users

Added

  • Diagnostics can now be suppressed using quick fixes.

Changed

  • An informational hint will now be given if
    the given executable file's name is not a known name.
  • Application-level settings can now be exported using the
    Export Settings... action.
    Previously they would be omitted when exporting
    and can only be found in the IDE's configuration directory.

For contributors

Added

Changed

v0.3.0

24 Apr 00:50
Compare
Choose a tag to compare

For users

Added

  • Go-to-definition support is now configurable and disabled by default.
    Previously this was always enabled.
  • The log level is now configurable.
  • Source roots can now be passed to the language server
    as "workspace folders" in lieu of the project's base directories
    (which has been and still is the default option).
    This is useful if you have your pyproject.toml or pyrightconfig.json
    files placed somewhere other than the project root (for example, a monorepo).
  • "Unnecessary" and "Deprecated" hints, which are displayed as
    faded-out and striken-through in the IDE, can now be disabled.
    Previously this was always enabled.
  • The language server can now be configured to not offer
    auto-import completions. Previously this was always enabled.
  • UI components are slightly changed.

For contributors

Added

  • PyrightLSDescriptor's .lspGoToDefinitionSupport
    is overridden to respect the corresponding user-provided values. (2a2a4f2)
  • The "Log level" global configuration, which corresponds to
    Pyright's python.analysis.logLevel option, is added.
    Settings.kt is rewritten.
    (1c937fb, d4814c3)
  • Project option "Workspace folders" is added. (5e35f93)
  • Message key names are slightly changed. (6b6b2a5)
  • Global option "Disable tagged hints" is added. (cd9dc59)
  • Global option "Auto import completions" is added. (d4814c3)

v0.2.0

17 Apr 02:05
Compare
Choose a tag to compare

For users

Added

  • Highlight severity levels are now configurable
    using the options provided in the Inspection panel.
    The inspection is renamed to "Pyright language server diagnostics".
  • Hover support can now be disabled. Previously this was always enabled.
  • Completion support is now configurable and disabled by default.
    Previously this was always enabled.

Changed

  • Rule codes, if given, are now appended to messages.
    They can be made links if the corresponding option is enabled.
  • UI messages are slightly changed.

Fixed

  • The plugin is no longer technically installable on PyCharm Community.

For contributors

Added

Changed

Fixed

  • com.intellij.modules.ultimate, which is only available in paid IDEs,
    is now a required dependency. This effectively makes the plugin
    no longer installable on/compatible with PyCharm Community. (57a1ee9)

v0.1.0

11 Apr 00:07
Compare
Choose a tag to compare

For users

Fixed

  • Earlier versions could not resolve available packages.
    This has been fixed.

Removed

  • Versions lower than 2024.1 are no longer supported.

For contributors

Added

Changed

Fixed

  • The project interpreter path is now correctly passed to Pyright.
    (ba0947b, 7a1e3b1)
  • PyrightLSConfigurable's apply(), isModified() and reset()
    now call the corresponding methods of panel.
    This fixes a(nother) regression introduced in v0.1.0-poc.3
    which has been causing the configuration panels to be unresetable. (fce7406)

Removed

  • Support for versions lower than 2024.1 is discontinued. (92b029a, d3fd01b)

v0.1.0-poc.4

07 Apr 01:57
Compare
Choose a tag to compare
v0.1.0-poc.4 Pre-release
Pre-release

For users

Added

  • Global options "Use editor font" and "Prefix tooltips" are added.

Fixed

  • v0.1.0-poc.3 has a bug causing the configurations to be always unsavable.
    This has been fixed.

For contributors

Added

  • Global options "Use editor font" and "Prefix tooltips" are added. (9ebda45)
  • Tests are added. (0ba420d)

Changed

Fixed

  • A panel.apply() call is added to
    PyrightLSConfigurable.isModified().
    This ensures that the state of panel is synchronized
    before being compared with the original state,
    which was not the case in v0.1.0-poc.3. (9ebda45)

v0.1.0-poc.3 [YANKED, see #11]

31 Mar 01:28
Compare
Choose a tag to compare
Pre-release

For users

Added

  • UI hints are added to ease the process of setting paths.

For contributors

Added

Changed

Changed