Revision history for perl module PLS

0.8 2021-06-29

 - Added configuration of alternate perl path just for syntax checking
   using syntax.perl (client version 0.0.8 needed)
 - Added configuration for enabling/disabling of syntax checking using syntax.enable
 - Moved from Coro and AnyEvent to IO::Async

0.81 2021-07-01

 - Fixed bug where completion did not have full list of options
 - Added locking to indexing and cleanup (related to the previous fix)
 - Added compatibility with perl >= 5.26 - thank you @stphnlyd (https://github.com/stphnlyd)!
 - (client version 0.0.9) Added icon - thank you @kraih (https://github.com/kraih)!

0.82 2021-07-02

 - Fix bug where initial indexing would not occur
 - Formatting is now asynchronous function that can be cancelled,
   since it can take a long time to run.
 - No longer add signal handlers on Windows, to hopefully improve
   compatibility

0.83 2021-07-02

 - Fix crashes caused by quick typing
 - Fix warnings from Future::Utils::repeat due to failed write Futures

0.84 2021-07-05

 - Fix issues with completion
   - Completion did not use the correct range, resulting in code getting garbled
   - Completion did not always show the correct list of available subs,
     or the subs most likely to be useful were buried
 - Migrated from Pod::Find (no longer in core) to Pod::Simple::Search (in core)
 - Hopefully fixed failed CPAN tests by including Future::* packages in the list of
   dependencies
 - Moved retrieval of package symbols from a perl one-liner to an IO::Async::Function,
   in hopes of improved performance and easier maintenance.

0.85 2021-07-06

 - Getting updated perltidy arguments from .perltidyrc no longer requires restarting PLS

0.86 2021-07-06

 - Fixes and enhancements to completion
   - Will now find external packages under all external modules. For example, all
     packages under PLS::* will now be found instead of only PLS.
   - Moved retrieval of package symbols back to a perl one-liner (reverting change from 0.84)
     due to bugs related to caching previous calls to "require".

0.87 2021-07-06

 - Fix to previous version - modules that are not top-level (i.e. contain "::")
   were not found appropriately.

0.88 2021-07-07

 - Fix to previous version - completion would show/would not show subroutines or packages
   when it was appropriate to do so
 - Sigils now cause the completion pop-up to display. Before, you would also need to type the
   start of the variable name.

0.89 2021-07-20

 - Added syntax checking/linting one second after user stops typing.
 - Fixed issue where the perl binary used was inconsistent.

0.891 2021-07-22

 - Syntax checking and linting now occurs in the background, which
   should improve response times
 - Syntax checking and linting is now single threaded, which fixes
   a mysterious issue that prevents temporary files from being deleted.
 - Linting now maps severity 1 issues to "information" level problems,
   so that they are shown. Previously, they were considered "hints",
   which are not shown by the VSCode GUI.
 - Added some PLS::Parser::Document unit tests, and changes to code
   to fix issues found by unit tests, mostly to improve completion.

0.892 2021-07-22

 - Syntax checking and linting are now separated so that they can
   run in parallel, which should improve performance.
 - Syntax checking now takes advantage of IO::Async::Process instead
   of using IPC::Open3.

0.893 2021-07-25

 - Linting now runs single threaded, which prevents multiple runs of
   linting and syntax checking from returning out of order and
   showing incorrect diagnostics.
 - Syntax checking and linting now create a temporary file with the same
   name as the file being checked, so that no workarounds are needed
   to prevent perlcritic from falsely reporting RequireFilenameMatchesPackage
   errors.

0.894 2021-07-25

 - Fix to previous version - no longer index files in temporary directories
   that are hidden.
 - Fix to previous version - add missing File::Path import.

0.895 2021-07-29

 - PLS no longer crashes when opening a single file - fixes
   https://github.com/FractalBoy/perl-language-server/issues/42
 - Fixed an issue where syntax checking a perl file with a BEGIN
   block that prints to STDOUT would cause the language client to
   stop working.

0.896 2021-08-07

 - Completion now handles some edge cases a little better than before
 - Completion will no longer suggest things with newlines in them
 - Fixes/enhancements to syntax checking/linting temporary files:
   - Temporary files are now cleaned up appropriately on NFS
   - Linting no longer uses a temporary file. Only syntax checking makes
   use of the temporary file now.
   - Temporary directories are no longer created, only temporary files.
   - Temporary files now have a predictable prefix: .pls-tmp-

0.897 2021-10-23

 - Fixed an issue causing diagnostics to be displayed for closed files
 - Added workspace symbol support

0.898 2022-01-19

 - Compilation errors are now displayed if there is a filehandle context
   in the error - thank you @bscan (https://github.com/bscan)!

0.899 2022-03-01

 - PLS is now compatible with BBEdit - thank you @mixio (https://github.com/mixio) and @tjparnell (https://github.com/tjparnell)!
 - Errors formatting text with perltidy no longer result in errors from the client, and
   the text will now simply not be formatted. In VSCode, this prevents disruptive
   notifications that a request has failed.
 - Documentation has been updated to include information about syntax related settings.