What's New

Version 2022.1.1

  • When closing a project, its recipe editors will now ask to save changes instead of immediately closing and discarding them

  • Fixed the preview in the recipe editor not working for 'compliance' level recipes

  • Fixed discrepancy between UI and code view when using the UI to add a property that uses a dropdown value

  • Fixed filenames of yaml recipes being imported not being respected

Version 2021.2.13

  • Recipe editor hints are now in tooltips instead of in between input fields

  • Recipe names will now be used as short description when the recipe's short description is empty

  • The recipe editor will now sort tags instead of reordering them seemingly randomly

  • Fixed obscure category names in the 'problems' view when performing a scan

  • Fixed a rare exception occurring when opening the quick-start guide

  • Fixed the only mark on new code setting not always working correctly when the searched element spans multiple lines

Version 2021.2.12

  • Added a search target for prefixExpression and postfixExpression

  • Improved performance regarding recipes using in

  • The recipe editor will now show a warning that recipes of disabled cookbooks won't mark in the editor

  • The cookbook manager UI received some small coloring improvements

  • Fixed a recipe editor issue that caused an exported recipe to only have one quick-fix

  • Fixed a recipe editor issue where duplicating recipes would not copy all the quick-fixes

  • Fixed a recipe editor issue where the preview would not work for locally disabled recipes

Version 2021.2.11

  • Locally disabled recipes can now be re-enabled again by using the 'enabled' checkbox in the recipe editor

  • The recipe editor now shows a warning that a disabled recipe won't mark in the editor

  • Disabled recipes will now have a grey color in the list of recipes in the recipe editor

  • The cookbook manager now shows cookbook description instead of URL for featured cookbooks

  • Added a ChangeName action to change the name of a class, field, method or method invocation

  • The changeType action can now be used when searching for a localVariable

  • A 'View recipe' quick-fix can now be used on recipes coming from a read-only cookbook (similar to 'Edit recipe' quick-fix)

  • Annotations can now be addressed in mustache code by using their simple name instead of only by index

  • Improved quick start guide UI

  • Improved the functionality of the 'tags' field in the recipe editor

  • Fixed labels not being addressable when they are part of anyOf/allOf

  • Fixed a few issues in regards to doStaticImports

  • Fixed pasting a recipe into code view by mouse not actually updating the recipe

  • Fixed the 'Analyze with Sensei' action missing from menus, it is now in the 'Code' menu

  • The 'Inspect code with cookbook' button will now be disabled unless the chosen cookbook is enabled

Version 2021.2.10

  • Added a localVariable search target

  • Added a FindAndReplace action for string substitutions

  • The addAnnotation action can now also be used on parameters

  • Improved visibility of default 'marked info' recipe highlighting on dark themes

  • Added availableIf option to only make a quick-fix available if a condition matches

  • Added applyIf option to only execute a fix action if a condition matches

Version 2021.2.9

  • Added a preview for the recipe description in the recipe editor's Documentation tab

  • Bumped the minimum supported IntelliJ version to 2020.1

  • Added more flexibility to checking the exception parameter of a catch block

  • Removed the dysfunctional in property for recipe search target scopes

  • Added ability to add single recipes into Sensei from the Sensei Hub

  • When the recipe editor is opened in read-only mode, the recipes will now be uneditable

  • Fixed issues where the Cookbook manager caused the UI to freeze in some specific cases

  • Added a doStaticImports property to quick-fixes to import qualified references in a static manner

  • Improved some aspects of the Quick Start

Version 2021.2.8

  • Cookbook descriptions of featured cookbooks will now be shown in the cookbook manager

  • Added a search target for cast

  • catchblock can now be used as part of an 'in' property

  • Added parameterType property to catchblock

  • General metadata (name, short descriptions, level) is now displayed on all tabs of the recipe editor

  • Fixed imported yaml recipe not saving when it's imported as a single recipe in the import dialog

  • Fixed recipe editor blocked from opening when a cookbook contains an empty description file path

  • Selecting cookbooks in the quick start guide will now show the amount of recipes in each cookbook

Version 2021.2.7

  • Fixed an issue with enabling cookbooks in the quick start window

Version 2021.2.6

  • Checking the integer value of an expression will now also attempt to parse stringified integers

  • Added an option to specify text content when searching an xml element

  • Enabled featured cookbooks will show up in My cookbooks, removing them will put them back in Featured cookbooks

  • Added a 'Documentation' tab in the recipe editor to manage a recipe's description

  • Fixed representation of annotation parameters in the variable browser

  • Fixed searching for return skipping return statements that don't return a value

  • Fixed wrong languages showing up in recipe metadata when saving

  • Fixed inherited types not being included when type checking calls on the this object implicitely

Version 2021.2.5

  • Added ifThenElse search target

  • Recipes for all languages can now use the in: file configuration option

  • The deprecated recipe models have been removed

  • Labels can be added to all configuration options (previously only xml), allowing more flexibility in quickfixes

  • The discover cookbooks menu has been removed, an alternative will be added again shortly

  • Improved performance of first time opening recipe editor

  • Long lines in the recipes are no longer split by the recipe editor

  • Team cookbooks are no longer shown when the user is not logged in

  • Fixed IntelliJ's intention light bulb popup floating over the quick start guide

  • Fixed some issues in untrusted analysis

  • Fixed various bugs in the Quick Start guide

Version 2021.2.4

  • Fixed badly positioned Quick Start window

  • Fixed Cookbooks not reloading sometimes

  • Fixed disabled recipes showing up in results when using 'Inspect code with cookbook'

Version 2021.2.3

  • Recipes can now check if an expression is a specific type of element

  • Added an option in settings to log performance data while using 'Inspect code with cookbook'

  • Added a quick fix option to disable a recipe locally

  • Added a page in the Quick Start to enable featured cookbooks

  • Recipe files can now use relative paths for descriptionFile

  • Warnings will now be shown in the recipe editor for recipes with broken descriptionFile paths

  • The Cookbook Manager will show if a new version is available, since recipes might not work on older Sensei versions

  • The library scope is now also available for XML recipes

  • Fixed unresponsiveness when loading multiple remote cookbooks

  • Fixed remote cookbooks not loading when re-enabling

Version 2021.2.2

  • Added import/export functionality in the recipe editor for yaml cookbooks

  • Added a new file search target, which can check the file path

  • Zipped cookbooks can now be loaded from the file system

  • The recipe editor list now also shows empty folders, newly created folders are removed when they become empty

  • Array access is now also considered when checking for untrusted input

  • Fixed non-alphanumberic symbols being removed in cookbook IDs when saving

  • Fixed an issue where an error would pop up when rewriting XML in specific ways

  • Fixed creating new recipe from code always using the same recipe ID

  • Fixed recipe UI where constructor was not available when having "parameter: in"

  • Fixed recipe editor not accepting filenames that already exist but have been renamed

Version 2021.2.1

  • Fixed cookbooks in yaml format not loading correctly from zips

Version 2021.2

  • Support for Intellij 2021.2 EAP

  • Changed the default cookbook structure to the new yaml format

  • Added support for the XML language using the yaml syntax

  • Added the "Sensei Cookbook Converter" action, this tries to convert cookbooks into the new yaml format

  • The recipe editor will now show warnings about recipes having the same ID

  • The Cookbook Manager will now show warnings about cookbook having the same internal ID

Version 2021.1.7

  • Fixed team cookbooks sometimes not loading after authenticating

  • Rewriting an import will now not add additional imports

  • Fixed a bug where the quickfix preview would say "quickfix failed" when rewriting imports

  • Possibly fixed a bug with a native library on Apple Silicon

  • The list of description files in the recipe editor is now sorted

  • Further silenced exceptions when no internet connection is available

Version 2021.1.6

  • Fixed a bug that prevents adding 'not' or 'with' on a methodcall in the recipe editor ui view

  • Fixed some small recipe ui tree rendering bugs

  • An error notification banner will now be shown in the recipe editor when something breaks

  • Silenced exceptions when no internet connection is available

  • Fixed an error showing up when analysis gets stuck on a specific type of invalid code with syntax errors

Version 2021.1.5

  • Fixed templating not being applied to the type property of ChangeAnnotation action

  • Disallow using cookbook locations relative to working directory

  • Fixed positioning of the searcher documentation box in recent IntelliJ versions

  • Enhanced recipe diagnostic help to check if the belonging cookbook is enabled

  • The Add cookbook menu will now propose cookbooks from the Sensei Hub

  • Reduced amount of update available notifications being shown

  • Suppress connection errors when update check fails

  • Fixed test inspection link in recipe editor not working when belonging cookbook is disabled

Version 2021.1.4

  • Added the option to add a cookbook from the Sensei Hub

  • Added a documentation box when selecting a target in the recipe editor

    _images/2021.1.4-contextual-help.png
  • Added untrusted analysis for the String#format method

  • Added the mustache variables UI to some more elements

  • The condition target will now find assert conditions

  • Fixed an exception when using "Inspect code with Cookbook" on a cookbook that has no file

  • Fixed an exception when running Sensei in Qodana

Version 2021.1.3

  • Fixed 3 issues reported by users. Thanks to everybody who reported their exceptions to us!

  • A library scope can now be added to the search, making recipes only trigger when a dependency is met

  • Annotation types can now be rewritten by using the type option of the ChangeAnnotation action

  • Added a InsertStatement quick fix action, to insert statements in methods/constructors

Version 2021.1.2

  • Added a Scan code with cookbook button in the cookbook manager

  • Moved the recipe enabled checkbox to a more visible location

  • Added a Analyze with Sensei menu item inside the Analyze menu

  • When reporting an error the Sensei and IDE version will be autofilled

  • Added the option to search for enum, interface and @interface

  • The class search only marks classes now, the old behaviour is available using typeDeclaration

  • Added a help button inside the recipe editor

Version 2021.1.1

  • Compatibility changes for Intellij 2021.1 (EAP build 1)

  • When logged in, the associated e-mail address will now be shown in the settings, within the account section

  • Fatal errors can now be reported, a prefilled Google Forms page will open which can be submitted anonymously

  • Fix Cookbook Manager not always showing changed Cookbooks after reloading configuration

  • Fix Cookbook Manager not showing new Cookbooks that are created while cloning recipes

  • Fixed the "import recipe" feature in the recipe editor always failing to import

  • A notification banner will now show in the recipe previews while IntelliJ is indexing

  • Added a {{{ containingMethod }}} element to use in quickfix code

  • Added a settings button inside the Cookbook Manager for easier access

  • Added a settings entry inside the Tools | Sensei menu

  • Added a way to discover new cookbooks from the public cookbooks index when adding a cookbook

  • Added the option to search on array initializers

  • Improved duplicate field check for the AddField action

  • The register dialog has been removed, registering happens inside the settings menu now

  • Adjusted the way required recipe fields are shown in the UI

Version 2021.1

  • The recipe editor won't set the previewed file read only anymore

  • Added the option to search for a parameter's modifiers

  • Action buttons in the recipe editor will now be disabled when browsing a read-only cookbook

  • Renamed 'biggerThan(OrEquals)' to 'greaterThan(OrEquals)' for integer value checking

  • The Sensei menu has been moved to Tools | Sensei

  • Using git locations for cookbooks will now use the default branch if no branch is specified

  • The 'Reload Recipes' menu item has been moved to the cookbook manager

  • Fixed an issue where an error sometimes could pop up when executing Quick Fixes with invalid code

  • The Quick Start Guide is not modal anymore, it interfered with other modal windows

  • There is now a 'Feedback' item in the Sensei menu, let us know what you think!

  • Fixed an issue where using an URL encoded git cookbook location would not use the correct branch and/or path

Version 4.30.1

  • Fixed a non working 'Read more...' link in the Quick Start

Version 4.30

  • Sensei can now be used without creating a Secure Code Warrior account

  • Added a Quick Start window after installation

  • Added the option to search for a switch statement

  • Added the option to search for a finally block

  • Added the option to search for an assert statement

  • Added the option to compare an expression value to an integer

  • Recipes can now be imported and exported in the recipe editor

  • Fixed a bug where IntelliJ didn't report Sensei results when scanning from the command-line

Version 4.29

  • Cookbooks in a .sensei folder in the project will be automatically loaded

  • Fixed changes in the cookbook manager sometimes not applying

  • Survey notifications have been disabled

  • Fixed type in parameterDeclaration ignoring case sensitivity setting

  • Compatibility changes for 2020.3 (EAP build 4)

Version 4.28

  • An option was added to not process imports during the quickfix

  • Fixed a bug where prefixed literals weren't handled correctly

  • A ChangeAnnotation quickfix action was added

  • Annotation members can now be addressed in mustache using their key name

  • The minimum supported version has been changed from 2016.2 to 2018.1.4

  • The buttons in the YAML recipe UI changed to a more subtle color

  • Stability improvements

Version 4.27

  • The cookbook library is now placed in a toolwindow.

  • Fixed some shorthand issues in the recipe YAML syntax.

  • Fixed 'Test recipe' not always behaving correctly when multiple projects are open.

  • Compatibility changes for 2020.3 (EAP build 1)

  • Fixed an issue where the addField action wouldn't detect an existing field

  • The variables table will now show variables relative to the quick fix action's target

Version 4.26.1

  • Fixed an exception when quickfixes were applied in IntelliJ 2020.2.1 and newer

Version 4.26

  • More properties now have a variable browser. The visibility of the variable browsers can be toggled.

    _images/show-variables.png
  • Tags can be added to recipes. Features that utilizes tags will be coming in the future.

    _images/tags.png
  • A small warning will show when the searched element changes, noting that incompatible quickfixes might be deleted

  • Improvements to the 'parameterize' quick fix action for the 'argument' binding option

  • Parameters can now be specified when searching for a method

  • Text matchers in the recipe search can be configured to be case insensitive

  • Code generators are disabled and wil be removed soon (they can be enabled in the settings menu for now)

  • Fixed some cookbook locations not being detected as git repositories

  • Stability improvements

  • Searching for comparisons won't match non-comparison operations anymore

Version 4.25.1

  • Various analysis fixes

  • Additional measures were added to prevent recipe previews from hanging the UI

  • Fixed Sensei not suggesting to open the recipe editor after registration in some cases

  • A message will now be displayed in the preview when Sensei failed its inspections

Version 4.25

  • Throw statements can now be searched for

  • Sensei no longer requires the IDE to be restarted after registration

  • Fix previews now skip over import changes when showing differences

  • The recipe editor will now show a warning when visuals are disabled

  • Fixed recipe previews not working due to injected language fragments

  • Various analysis fixes

  • Some irrelevant entries have been removed from the mustache variables browser

  • Improved the 'parameterize' action where 'methodsOnObject' would not work in certain scenario's

  • Support for Intellij 2020.2 EAP6

  • Old recipe models have been disabled

    They can be enabled again in the settings menu for now but will be removed in the near future

    _images/deprecated-model.png
  • The recipe editor will now show a warning when visuals are disabled

    _images/disabled-visuals.png