diff --git a/docs/blog/20240115-Daeraxa-v1.113.0.md b/docs/blog/20240115-Daeraxa-v1.113.0.md new file mode 100644 index 000000000..a2451229a --- /dev/null +++ b/docs/blog/20240115-Daeraxa-v1.113.0.md @@ -0,0 +1,59 @@ +--- +title: "Unlucky for some, but not us. Our 13th release, Pulsar 1.113.0, is available now!" +author: Daeraxa +date: 2024-01-15 +category: + - dev +tag: + - release +--- + +Pulsar [1.113.0](https://github.com/pulsar-edit/pulsar/releases/tag/v1.113.0) is available now! + + + +Welcome to our first release of 2024! This is our 13th main release; let's just hope we aren't cursed by the number. This month we are enabling a feature by default that has been in the works for a long time and is a major step in moving Pulsar to current versions of Electron. We also have a significant update to our `symbols-view` package and a number of bug fixes as per usual. + +First up is something we have been mentioning in the last few community update blog posts and otherwise hinting about for a while. Back in Pulsar 1.106.0, released in July last year, we added a new setting called `Use Modern Tree-Sitter Implementation` that would enable a brand new implementation of [Tree-sitter](https://tree-sitter.github.io/tree-sitter/) within Pulsar. If you want to know more about the history of this change, then have a look at our detailed [blog post](https://pulsar-edit.dev/blog/20230601-Daeraxa-JuneUpdate.html#tree-sitter-updates-are-live) on the topic as well as [@savetheclocktower](https://github.com/savetheclocktower)'s fantastic [blog post series](https://pulsar-edit.dev/tag/tree-sitter/). A huge thank you to everyone who contributed to this feature by testing it out and submitting bug reports and pull requests, these contributions have led to this moment where we can finally activate it by default. The reason we have done this is in order to eventually move to modern versions of Electron, for which the old tree-sitter implementation is simply not compatible. We have had this as an option while we worked out the most egregious kinks in the system, but we are in a position where we feel it is strong enough to enable by default. If you encounter any significant issues with the new system, there is a new option `Use Legacy Tree-sitter Implementation` that will revert to the old system. It would be great if any problems with the new system could be brought to our attention via any of our [social channels](https://pulsar-edit.dev/community.html) so we can look to fix any issues that have yet to be encountered by us. + +We have a rather significant update to our `symbols-view` package. This package is used to display symbols within Pulsar (e.g. function definitions) and allows you to navigate your code via those symbols. This package has had a rather major overhaul and now follows the standard "provider/consumer" model as many other Pulsar packages do. In particular, this allows for packages to provide symbols to `symbols-view`, such as Tree-sitter grammars, via the new `symbol-provider-tree-sitter` package. The upshot of this, combined with the new Tree-sitter implementation, is that there will be a much richer and more accurate display of symbols in your project. More information can be found in the [pull request](https://github.com/pulsar-edit/pulsar/pull/829) for this change. + +A new Tree-sitter PHP grammar has been added to Pulsar as part of ongoing Tree-sitter grammar upgrades and improvements, which includes some contributions from community member [@claytonrcarter](https://github.com/claytonrcarter) who had a parser for PHPDoc allowing us to highlight documentation comments in PHP in a similar vein to JSDoc injection JS/TS files. + +On to some bug fixes. We had an issue reported about the `github` package that showed a problem with the rendering of the diff view display. This seems to have been due to a code path in our TextEditor component that would sometimes try to perform measurements on things that weren't necessarily visible. The fix here, simple as it seems, was to defer those measurements until we could be sure the editor was visible. + +Next, we have a fix to the `find-and-replace` package caused by an odd interaction between the package and the `Preserve Case During Replace` option, causing an error to appear when using empty strings as input (as an empty string cannot be capitalized). + +And last, we have a change to the default behavior of rendering emojis in Markdown as part of the new `UI` API. This issue was discovered due to an unwelcome (but admittedly rather apt) 😡 emoji in the middle of an error message popup. While [the error](https://github.com/pulsar-edit/pulsar/pull/850) was rather hilarious, we did decide that it needed to be banished by default for the sake of one of our team members' sanity (and to reduce unnecessary obfuscation of errors, of course). + +And that is all we have for you right now. We hope you enjoy this new release and here is to another 12 months of Pulsar! + +Until next time, happy coding, and see you amongst the stars! + +- The Pulsar team + +--- + +- Enabled Modern Tree-sitter Grammars by default +- Added a modern Tree-sitter grammar for PHP. +- Fix a measurement issue that was causing visual glitches in the `github` package's diff views. +- Enabled the core `symbols-view` package to accept symbols from a number of sources, including Tree-sitter grammars and IDE packages. +- Switch default to false for converting ASCII emoticons to emoji when rendering Markdown. +- Fix certain find-and-replace scenarios when the "Preserve Case During Replace" setting is enabled. +- Fix an issue in `symbols-view` when returning from visiting a symbol declaration. + +### Pulsar + +- Fixed: Tree-sitter fixes for December (including a PHP grammar!) [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/852) +- Added: Make `useExperimentalModernTreeSitter` the default... [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/855) +- Fixed: Ensure editor is visible before measuring block decorations [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/854) +- Added: Overhaul `symbols-view` [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/829) +- Added: Default to no emoji when rendering Markdown [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/850) + +### find-and-replace + +- Fixed: \[find-and-replace\] Fix `capitalize` utility [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/849) + +### symbols-view + +- Fixed: \[symbols-view\] Fix issue with returning from a declaration [@savetheclocktower](https://github.com/pulsar-edit/pulsar/pull/864) diff --git a/docs/download.md b/docs/download.md index f25c7114a..0e5233059 100644 --- a/docs/download.md +++ b/docs/download.md @@ -113,7 +113,7 @@ feature issues that have already been resolved in our Rolling Release so if a particular fix or feature is important to you it may be worth swapping to one of those instead. -Current version is [v1.112.1](https://github.com/pulsar-edit/pulsar/releases/tag/v1.112.1). +Current version is [v1.113.0](https://github.com/pulsar-edit/pulsar/releases/tag/v1.113.0). ::: details Linux @@ -121,19 +121,19 @@ Current version is [v1.112.1](https://github.com/pulsar-edit/pulsar/releases/tag | Package | Distribution | | :-------------------------------------------------------------------------------------------------------------------------: | :----------------: | -| [deb](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Linux.pulsar_1.112.1_amd64.deb) | Debian/Ubuntu etc. | -| [rpm](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Linux.pulsar-1.112.1.x86_64.rpm) | Fedora/RHEL etc. | -| [AppImage](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Linux.Pulsar-1.112.1.AppImage)[1][2] | All distributions | -| [tar.gz](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Linux.pulsar-1.112.1.tar.gz) | All distributions | +| [deb](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Linux.pulsar_1.113.0_amd64.deb) | Debian/Ubuntu etc. | +| [rpm](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Linux.pulsar-1.113.0.x86_64.rpm) | Fedora/RHEL etc. | +| [AppImage](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Linux.Pulsar-1.113.0.AppImage)[1][2] | All distributions | +| [tar.gz](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Linux.pulsar-1.113.0.tar.gz) | All distributions | **ARM_64** - For ARM based devices - Raspberry Pi, Pinebook etc. | Package | Distribution | | :-----------------------------------------------------------------------------------------------------------------------------------: | :----------------: | -| [deb](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/ARM.Linux.pulsar_1.112.1_arm64.deb) | Debian/Ubuntu etc. | -| [rpm](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/ARM.Linux.pulsar-1.112.1.aarch64.rpm) | Fedora/RHEL etc. | -| [AppImage](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/ARM.Linux.Pulsar-1.112.1-arm64.AppImage)[1][2] | All distributions | -| [tar.gz](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/ARM.Linux.pulsar-1.112.1-arm64.tar.gz) | All distributions | +| [deb](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/ARM.Linux.pulsar_1.113.0_arm64.deb) | Debian/Ubuntu etc. | +| [rpm](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/ARM.Linux.pulsar-1.113.0.aarch64.rpm) | Fedora/RHEL etc. | +| [AppImage](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/ARM.Linux.Pulsar-1.113.0-arm64.AppImage)[1][2] | All distributions | +| [tar.gz](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/ARM.Linux.pulsar-1.113.0-arm64.tar.gz) | All distributions | [1] Appimage may require `--no-sandbox` as an argument to run correctly on some systems. [2] Some distributions no longer ship with `libfuse2` which Appimage requires to run. You may need to install this manually, e.g on Ubuntu >=22.04 `apt install libfuse2`. @@ -152,15 +152,15 @@ Current version is [v1.112.1](https://github.com/pulsar-edit/pulsar/releases/tag | Package | Type | | :----------------------------------------------------------------------------------------------------------: | :-----------: | -| [dmg](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Silicon.Mac.Pulsar-1.112.1-arm64.dmg) | DMG installer | -| [zip](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Intel.Mac.Pulsar-1.112.1-mac.zip) | Zip archive | +| [dmg](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Silicon.Mac.Pulsar-1.113.0-arm64.dmg) | DMG installer | +| [zip](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Intel.Mac.Pulsar-1.113.0-mac.zip) | Zip archive | **Intel** - For Intel macs | Package | Type | | :------------------------------------------------------------------------------------------------------: | :-----------: | -| [dmg](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Intel.Mac.Pulsar-1.112.1.dmg) | DMG installer | -| [zip](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Intel.Mac.Pulsar-1.112.1-mac.zip) | Zip archive | +| [dmg](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Intel.Mac.Pulsar-1.113.0.dmg) | DMG installer | +| [zip](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Intel.Mac.Pulsar-1.113.0-mac.zip) | Zip archive | :::: @@ -178,8 +178,8 @@ You can bypass this by clicking "More info" then "Run anyway". | Package | Type | | :---------------------------------------------------------------------------------------------------------: | :-------------------: | -| [Setup](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Windows.Pulsar.Setup.1.112.1.exe) | Installer | -| [Portable](https://github.com/pulsar-edit/pulsar/releases/download/v1.112.1/Windows.Pulsar-1.112.1-win.zip) | Portable (no install) | +| [Setup](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Windows.Pulsar.Setup.1.113.0.exe) | Installer | +| [Portable](https://github.com/pulsar-edit/pulsar/releases/download/v1.113.0/Windows.Pulsar-1.113.0-win.zip) | Portable (no install) | | Package Manager | Command | | :------------------------------------------------------------: | :--------------------: |