All Versions
31
Latest Version
Avg Release Cycle
56 days
Latest Release
-

Changelog History
Page 1

  • v2022.09.11 Changes

    🐛 Bug fixes:

    • [wr] Inconsistent type resolution - removed node level cache #1673
    • [in] Fix exception when indexed file has no path #1643
    • [wr] Do not complete constants on class instance #1614
    • [wr] Include virtual properties in class members #1623
    • [wr] Fix false positive for virutal method not existing #1603
    • [wr] Ignore exceptions (permission denied f.e.) when traversing files #1569
    • [wr] Fix resolutin of virtual method
    • [ct] Fix missing properties refactor does not import class #1534
    • [ct] Fix false diagnostic for missing method #1500
    • [dl] Fix docblock definition location at class level docblocks
    • [idx] Do not try and use non-tokens for property names #1317
    • [cb] Fix rendering of array values in generated code
    • [wr] Fix arrow function completion #1303
    • [dl] Fixed off-by-one error with plain text goto definition
    • [fw] Ensure inotify is stopped before shutting down
    • [wr] properly deconstruct array in foreach
    • [lsp] import unresolved classes refactoring: Ensure only unique names are shown when asking user to select an import candidate
    • [lsp] ensure fully qualified filename is used for generate method refactoring #1313
    • [wr] detect branch determination with throw expression
    • [cr] add missing properties: correctly infer type from call expressions
    • [filesystem] Fix "too many files open" issue #1376
    • [class-mover] Fix long standing bug with aliased imports being duplicated on class move and other strange issues.
    • [lsp] Fix call to properties() on non-class in generate accessors provider.
    • [lsp] Fix unresolvable classes not being listed in code actions
    • [cb] Do not apply HTML escaping when rendering code templates
    • [wr] Promoted property docblock types not picked up #1334
    • [completion] Limit results from the search index (improve search performance significantly)

    👌 Improvements:

    • [cmp] Show partial namespace to disambiguate class name suggestions
    • [wr] Markdown formatted member completion documentation
    • [ls] publish diagnostics on open and update
    • [ct] Add missing properties for array assignments #1640
    • [cmp] Provide variables from parent frame for anonymous use #1602
    • [ref] Increase reference finder timeout to 1 minute by default #1579
    • [cmp] Improved contextual completion
    • [rn] Fixed numerous issues
    • [rename] Fixed numerous issues
    • [compl] Allow named param completion on functions
    • [wr] Infer return type for generators
    • [lsp] Show Phpactor version info in initialize result @lalanikarim
    • [ls] Fixed class completion performance
    • [ct] Add option to disable importing global functions
    • [cmp] (Better) support for completing imported names #1490
    • [wr] reset,array_shift and array_pop stubs
    • [wr] improved ternary support
    • [log] Include a channel prefxi in log messages
    • [wr] require ext-pnctl (language server would crash otherwise)
    • [wr] handle static properly #967
    • [ls] include list of diagnostic providers in status report
    • [ct] add retutn type to generated method if it would immediately return
    • [wr] support array [] addition operator
    • [wr] support in_array type assertion
    • [wr] support for casts
    • [wr] if statement branches
    • [wr] inline type inference
    • [wr] infer param types from function docblock
    • [wr] support for Closure as a type #1413
    • [wr] expressions are evaluated as types
    • [wr] literal types and internal refactorings
    • [ls] Show error message in client if service stops unexpectedly with an error
    • [code-transform] Faithfully reproduce documented types in generated code
    • [docblock] New docblock parser to facilitate parsing complex types
    • [hover] Improve "offset" hover (mostly related to showing variable info)
    • [templates] Include templates for creating new interfaces, traits and enums
    • [wr] Resolve type from array access
    • [cb] Preserve ? operator as distinct from a union type
    • [wr] Support for class-string type (not for type inference however)
    • [completion + location] Better support for union types
    • [cs] Updated CS and converted property docblock types to actual types

    🔋 Features:

    • [-] Better constant suppoer - indexing, goto def, find references, hover, etc.
    • [cmp] Support absolute name completions
    • [ls] Lazily resolve documentation for completion items
    • [ct] Generate constructor refactoring
    • [ct] Fill object refactoring
    • [ct] Remove unused imports diagnositcs and code transformation #1758
    • [wr] Added native WR single-pass diagnostics #1700
    • [cmd] Index clean command #1691 @mamazu
    • [cmp] (re?)support completion on parent:: #1643
    • [cb] Render types based on PHP version #1655
    • [wr] Support @property-read
    • [wr] Support for mixins #990
    • [rf] Support for constants, properties and promoted properties
    • [compl] Docblock completion
    • [wr] Support for intersection types
    • [rf] Union type support for goto definition
    • [ct] Add missing PHP return types
    • [wr] Support for inference for array_map, and arrow and anonymous functions
    • [ct] Add missing @return type docblocks code transformation
    • [cmp] Explicitly enable/disable completors and disable keyword completor by default.
    • [wr] Support iterator_to_array
    • [wr] Handle constant glob to union types (@return Foo::BAR_*).
    • [lsp] show class category in offset hover info
    • [lsp] jump to types in a union type
    • [wr] Type combination
    • [wr] Support for type assertions via. is_*, instanceof etc
    • [wr] Array shape type support (types and completion)
    • [wr] Support for variadics
    • [lsp] Send rename file request to client when renaming a PSR class @przepompownia
    • [wr] Initial support for generics #1382
    • [lsp] Added generate accessors code action
    • [lsp] Added extract constant code action
    • [extension] Removed the extension manager.
    • [extension] PHPStan and Psalm extensions are now included by default.
    • [lsp] Code action to complete constructor with public properties
    • [php] Bump min. PHP version to 7.4
    • [php] Fix PHP 8.1 deprecations
    • [config] JSON schema support
    • [cli] phpactor config:init command to create or update config (to include JSON schema location)
    • [completion] Enum support (requires 8.1 PHP runtime)
    • [reference-finder] Enum support (requires 8.1 PHP runtime)
    • [php8.1] Disable deprecation warnings unless PHPACTOR_DEPRECATIONS provided.
  • v0.18.0 Changes

    January 03, 2022

    🔋 Features:

    • [language-server] Import all names refactoring - @dantleech
    • [language-server] Extract expression - @BladeMF
    • [language-server] Extract method generation - @BladeMF
    • [language-server] Initial support for method generation - @BladeMF
    • [langauge-server] Support for renaming files (LSP 3.16) - @dantleech
    • [language-server] Ability to use client file events where available - @dantleech
    • [completion] Experimental support snippets for built-in functions - @weeman1337
    • [completion] Experimental support snippets for class constructos - @weeman1337
    • [completion] Added experimental flag
    • [completion] Added flag to enable / disable snippets entirely
    • [language-server] Ensure workspace is indexed before finding references - @dantleech
    • [language-server] Support for renaming class names (short only) - @dantleech
    • [language-server] Rename class members and variables - @BladeMF, @dantleech
    • [language-server] Basic support for workspace symbols.
    • [language-server] Added basic PHP linting by default.

    👌 Improvements:

    • [completion] Improve diagnostic message for #1245 - @dantleech
    • [language-server] Allow hover template paths to be customized - @BladeMF
    • [language-server] Show warning in client if extra config keys present - @dantleech
    • [code-transform] Improved performance for unresolvable class name finder - @dantleech
    • [code-transform] Improved information in name-not-found exception - @weeman1337
    • [language-server] Do not show "class not found" diagnostics by default - @dantleech
    • [worse-reflection, etc] Update to latest tolerant parser lib to support PHP 8.1 syntax

    🐛 Bug fixes:

    • [worse-reflection] Fix handling of non-decimal integers - @Slamdunk
    • [worse-reflection] Fix variable detection in closures - @BladeMF
    • [completion] Fix snippet method completion #1172 - @BladeMF
    • [worse-reflection] Fix PHP8.0 deprecation warnings - @gregoire
    • [completion] Tests fail due to jetbrain stubs changes - @weeman1337
    • [worse-reference-finder] Do not know how to create class from type "NULL" #1246 - @dantleech
    • [worse-reflection] Property context class not propagated
  • v0.17.1 Changes

    March 21, 2021

    🔋 Features:

    • [completion] Support Attribute Completion

    🐛 Bug fixes:

    • [language-server] Diagnostics do not tolerate NULL document version on save #1220
    • [worse-reflection] Unhandled exception thrown when variable name is "NULL"
    • [language-server] Unhandled exception when function not found on hover
  • v0.17.0 Changes

    February 06, 2021

    🔋 Features:

    • [completion] Support for PHP named parameters - @dantleech
    • [completion] Basic Doctrine annotation completion support - @elythyr
    • [completion] References are sorted alphabetically - @elythyr
    • [completion] Show warning character if method or class is deprecated
    • [completion] Sort class names and fucntions according to proximity to current file by default - @dantleech

    • [composer] Class map only mode by default (do not register autoloader at all, do not include files)

    • [file-watcher] Experimental support for watchman

    • [indexer] CLI command for index search (mainly for debugging)

    • [indexer] PhpStorm stubs are now indexed

    • [indexer] Show memory usage and limit in progress notification.

    • [language-server] Import class/function code action and diagnostics

    • [language-server] Transform code actions and diagnostics (complete constructor, implement contracts, fix class name and add missing properties)

    • [completion] Keyword completion - @BladeMF

    • [language-server] Create class code actions - @dantleech

    • [phpactor] Update extensions after install composer hook - @dantleech

    👌 Improvements:

    • [worse-reflection] Support for list foreach
    • [worse-reflection] Various issues around NULL and exception handling
    • [worse-reflection] Improved frame resolution performance by 99.5x - @dantleech
    • [worse-reflection] Fixed mixed up start/end positions in symbol resolver - @BladeMF
    • [language-server] Update classes on workspace update - @BladeMF
    • [language-server] New LSP protocol and general refactoring - @dantleech
    • [language-server] Support document symbols (f.e. showing code outline for document)
    • [language-server] Support symbol highlighting
    • [language-server] Support for indexing constants
    • [code-tranform] Generated accessors automatically ucfirst the property name when prefix is used. - @einenlum
    • [worse-reflection] Improved inference for property types - @elythyr
    • [worse-reflection] Include virtual members from traits - @scisssssssors
    • [code-tranform] fix invalid missing property diagnostic (#1126) - @elythyr
    • [code-transform] Improve performance for missing properries - @dantleech

    🐛 Bug fixes:

    • [code-transform] Catch unhandled exceptions - @dantleech
    • [text-document] valid php class names not detected for word-at-offset
    • [code-tranform] Return types not considered for unresolved names - @dantleech
    • [completion] Avoid reflection on NULL
    • [scf] Fix support for moving and removing folders - @Lumnn
    • [indexer] Fix indexing of static properties - @BladeMF
    • [completion] Fix signature help in nested symbols - @BladeMF
    • [worse-reflection] Static properties not resolved - @BladeMF
    • [lanaguge-server] Correctly highlight use statements against qualified names - @dantleech
    • [language-server] Fix occasional class-not-found error on code transform (due to incorrectly formatted path)
    • [worse-reflection] Do not consider "iterable" as an FQN - @elythyr
    • [code-transform] Fix trailing line on class import - @elythyr
    • [code-transform] Fix importing class names in docblocks - @elythyr
  • v0.16.2 Changes

    July 03, 2020

    👌 Improvements:

    • 👍 [worse-reflection] Support for virtual methods in interfaces - @dantleech
    • [code-transform] Fix regression with importing from root namespace
    • 👍 [dev] Support for Composer 2.
  • v0.16.1 Changes

    June 09, 2020

    👌 Improvements:

    • [worse-reflection] Support for virtual methods in interfaces - @dantleech
    • [code-transform] Fix regression with importing from root namespace
  • v0.16.0 Changes

    June 09, 2020

    👀 See blog post

    2020-06-09 (0.16.0)

    🔋 Features:

    • 🔌 [vim-plugin] Ability to set custom project root strategy (#1027) - @przepompownia
    • [indexer-extension] Workspace reference finder (classes,functions,members) - @dantleech
    • 👍 [worse-reflection] Support "final" keyword - @dantleech
    • [language-server-hover] Show "final" keyword on class hover - @dantleech
    • 📚 [language-server-hover] Show inherited method documentation - @dantleech
    • [language-server-code-transform] Add command to import class - @dantleech
    • [language-server-completion] Automatically import class on completion confirm - @dantleech
    • [code-transform] Consider current class as a potential conflict for imports - @dantleech
    • [completion] Indexed class name and function completion - @dantleech
    • 👍 [indexer-extension] Support "deep references" (search over all implementaions) - @dantleech
    • [composer] Enable disbaling of autoloader inclusion via. composer.enable - @dantleech
    • [lanaguage-server-completion] Auto-import functions - @dantleech

    👌 Improvements:

    • ⚡️ [code-builder] Removed functionality to "update" parameters: was very
      🐛 buggy. Now only new parameters will be added when updating methods via.
      generate method.
    • [language-server-bridge] Service to convert Phpactor Locations to LSP locations - @dantleech
    • ⚡️ [code-transform] Class import updates context name on alias - @dantleech
    • 📚 [documentation] Generate the configuration reference - @dantleech
    • [completion-worse] Allow completors to be disabled via completion_worse.disabled_completors - @dantleech
    • 🚚 [indexer-extension] Validate search results (remove from search index if invalid).
    • [language-server] Exit session immediately if NULL given as CWD (instead of crashing).
    • [container] Adds command for introspecting the container (container:dump) - @dantleech
    • [indexer-extension] Increase priority of indexer source-locators (they should come before the composer locators) - @dantleech
    • [language-server] Show explicit meassage when indexer dies

    🐛 Bug fixes;

    • 🚚 [completion] Completion limit of 32 imposed in 0.15 removed.
    • [ampfs-watch] Inotify watcher not reporting error when out of available
      watchers
      (phpactor/amp-fswatch@1e38faa)
    • [ampfs-watch] Buffered watcher not allowing errors to bubble up
      (phpactor/amp-fswatch@b5cb54b)
    • [language-server] Ensure that result key is missing when NULL (some
      clients require it) - @dantleech
    • 🛠 [code-transform] Fixed occasional whitespace issues when importing classes
    • 👍 [language-server] Support for LSP commands
    • 🛠 [indexer] Fixed crash with empty class name
  • v0.15.4

    May 03, 2020
  • v0.15.3

    May 03, 2020
  • v0.15.2

    May 03, 2020