{"id":390606,"date":"2023-09-25T14:12:29","date_gmt":"2023-09-25T13:12:29","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=dotnet&#038;p=390606"},"modified":"2025-09-17T13:49:20","modified_gmt":"2025-09-17T12:49:20","slug":"rider-2023-3-eap1","status":"publish","type":"dotnet","link":"https:\/\/blog.jetbrains.com\/en\/dotnet\/2023\/09\/25\/rider-2023-3-eap1","title":{"rendered":"Rider Kicks Off the Early Access Program for the 2023.3 Release!\u00a0"},"content":{"rendered":"\n<p>The Early Access Program for Rider 2023.3 has just begun with the release of the Rider 2023.3 EAP 1 build. There are several ways to get your hands on it:<\/p>\n\n\n\n<ul>\n<li>Download and install them from <a href=\"https:\/\/www.jetbrains.com\/rider\/nextversion\/\" target=\"_blank\" rel=\"noopener\">our website<\/a>.<\/li>\n\n\n\n<li>Use the <a href=\"https:\/\/www.jetbrains.com\/toolbox\/\" target=\"_blank\" rel=\"noopener\">Toolbox App<\/a>.<\/li>\n\n\n\n<li>Install this <a href=\"https:\/\/snapcraft.io\/rider\" target=\"_blank\" rel=\"noopener\">snap package<\/a> from the SnapCraft store if you\u2019re using a compatible Linux distribution.<\/li>\n<\/ul>\n\n\n\n<p>If you haven\u2019t already, we highly recommend that you check out <a href=\"https:\/\/blog.jetbrains.com\/en\/dotnet\/2023\/09\/05\/rider-2023-3-roadmap\">the roadmap<\/a> for the following release. It will give you a good idea about the features you can expect to see in Rider as the EAP program unfolds.&nbsp;&nbsp;<\/p>\n\n\n\n<p>Let\u2019s take a look at the feature highlights of Rider 2023.3 EAP 1.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/09\/g7JynihxRjQMmKzcDfY-C9_4ISGkeK6Dxtv_p0fVmrnN5fQ6W68cF6L8LWI7czyP9USLVCqPZfketldv84PIdJbPEvhItt5cXeFnXprqm2Ac6yyqq1msjL0TXBIZrTmyopa7zGqp0xjVRLg7xLXytrFHWZ7EP1gbWNcEdIlUwAQMzGzzY5Gp30sfgf73Cg.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">User experience<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><em>Resume <\/em>button for debugging<\/h3>\n\n\n\n<p>As promised, the <em>Run <\/em>button in the main toolbar has been replaced with a <em>Resume <\/em>button during debugging.&nbsp;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1200\" height=\"335\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/09\/Rd-233-Resume-button-debugging.png\" alt=\"\" class=\"wp-image-390611\"\/><\/figure><\/div>\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Option to hide the main toolbar in the default viewing mode<\/h3>\n\n\n\n<p>In response to your feedback about the new UI, we\u2019ve implemented an option to hide the main toolbar when using the IDE\u2019s default viewing mode, just like in the old UI.<\/p>\n\n\n\n<img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/09\/Rd-233-Hide-toolbar-still.png\" alt=\"\" width=\"900\" data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/09\/Rd-233-Hide-toolbar-gif.gif\">\n\n\n\n<p>To declutter your workspace and remove the toolbar, select <em>View | Appearance<\/em> and uncheck the <em>Toolbar<\/em> option.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Color-coded highlighting for editor tabs by default<\/h3>\n\n\n\n<p>To enhance your navigation experience when working with a variety of file types in the editor at the same time, we&#8217;ve introduced default color-coded highlighting for editor tabs, mirroring their appearance in the <em>Solution Explorer<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/09\/6Gyk8vzS-WhK28UCVNF6bUdICItVLoE2hK2MGyBjbjE9tP7xIifTxfuRB1VTQZ-96qY8qye2FJ0mCWdwo4UPuQNw-kaAWQhPiG6KMFlpxufWPcMHD3eNrNG3zjqHcG0_Ju1nxa1MNnA6v_sd0WtxzQLtNGWBnP-7ou4pBXGoLfRLnMep_EoXWHwuttn8wg.png\" alt=\"\" style=\"width:800px;height:undefinedpx\"\/><\/figure>\n\n\n\n<p>You can manage this setting in <em>Settings\/Preferences | Appearance &amp; Behavior | File Colors<\/em>.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/09\/ZBKaa_QIbcv0TbgaW4b9oS4fknloVKA3G_Yj8EVxNIHUQgZaTkVqrhyfppnke4LRWrnqw3RDqqHODPHpzdEhu13_necxFR932dJyzmDlWpeS2wFz6I3F8UpE6tE_xP32Uhgl_kvedWkWQprpsFSRHPFVWAe78oiZ_IcBta4Dmasqt3te3EBd2vgzbMV96g.png\" alt=\"\" style=\"width:800px;height:undefinedpx\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">New product icon for macOS&nbsp;<\/h3>\n\n\n\n<p>With the launch of the Rider 2023.3 EAP, we\u2019ve redesigned the Rider icon for macOS to align it with the standard style guidelines of the operating system.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/09\/LCaiGVbglSacyCjOsAxHnMYKhDwoevWdYTNsaSf2hhZl1Jn8y-rNkoD6JAkawq-rDwMcNGTsYRZaKNN6BYondrodTFDjIS-G2TtnZ_uJiHY2Z_npgrevKoLKFKd6zqaFv8_FQ9mvGruhcysRO2JQuKg9Nv__YJGqFpSBLkcN5pH3rxYYSrAC-14JQXxjSQ.png\" alt=\"\" style=\"object-fit:cover;width:400px;height:201px\"\/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\">Version control systems<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Support for GitLab snippets<\/h3>\n\n\n\n<p>Expanding the <a href=\"https:\/\/blog.jetbrains.com\/en\/blog\/2023\/07\/26\/gitlab-support-in-jetbrains-ide\">GitLab integration<\/a> introduced with the Rider 2023.2 release, we\u2019ve added support for <a href=\"https:\/\/docs.gitlab.com\/ee\/user\/snippets.html\" target=\"_blank\" rel=\"noopener\">GitLab snippets<\/a>. You can now create public or private snippets directly within the IDE.&nbsp;<br>To create a new snippet, select a code fragment in the editor, or a file or folder in the <em>Project <\/em>tool window, right-click on the selection to call the context menu, and choose the <em>GitLab Snippet<\/em> option. A dialog will appear, prompting you to provide general information about your snippet and define its privacy settings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">C# language support<\/h2>\n\n\n\n<p>Language support is shared between Rider and ReSharper, so you can check out the <a href=\"https:\/\/blog.jetbrains.com\/dotnet\/2023\/09\/25\/rsrp-2023-3-eap1\/\">ReSharper 2023.2 EAP 1 blog post<\/a> for the full list of enhancements for writing C# code with Rider.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Game development<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Unity <\/h3>\n\n\n\n<p>The EAP 1 build brings a whole host of small, but impactful, updates for Unity game development. Here are some of the key enhancements:<\/p>\n\n\n\n<ul>\n<li>Smart completion for semantics in HLSL code (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-69716\" target=\"_blank\" rel=\"noopener\">RIDER-69716<\/a>).<\/li>\n\n\n\n<li>The shader context selector has been moved from the status bar to the editor\u2019s breadcrumbs bar for improved visibility.&nbsp;<\/li>\n\n\n\n<li>Smart completion of UI elements used in UXML files for Q and Query methods.<\/li>\n\n\n\n<li>The ability to resolve <code>project:<\/code> references in USS files.<\/li>\n\n\n\n<li>Support for <code>.tss<\/code> UI element theme files.<\/li>\n\n\n\n<li>Support for percentage values in various USS properties (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-88190\" target=\"_blank\" rel=\"noopener\">RIDER-88190<\/a>).<\/li>\n\n\n\n<li>Support for missing USS properties (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-88190\" target=\"_blank\" rel=\"noopener\">RIDER-88190<\/a>, <a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-96828\" target=\"_blank\" rel=\"noopener\">RIDER-96828<\/a>).<\/li>\n\n\n\n<li>Support for reading encoded Unicode characters from YAML asset files (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-91181\" target=\"_blank\" rel=\"noopener\">RIDER-91181<\/a>).<\/li>\n\n\n\n<li>The option to add <code>Unity_s.debug<\/code> as a Unity editor executable that can be debugged on Linux (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-97262\" target=\"_blank\" rel=\"noopener\">RIDER-97262<\/a>).<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Notable fixes:<\/h4>\n\n\n\n<ul>\n<li>Fixed exceptions thrown while indexing ShaderLab files (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/DEXP-738113\" target=\"_blank\" rel=\"noopener\">DEXP-738113<\/a>).<\/li>\n\n\n\n<li>Fixed issues with generating online documentation URLs for packages with a pre-release semantic version (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-97543\" target=\"_blank\" rel=\"noopener\">RIDER-97543<\/a>), as well as for generic types (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-97543\" target=\"_blank\" rel=\"noopener\">RIDER-97543<\/a>, <a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-97168\" target=\"_blank\" rel=\"noopener\">RIDER-97168<\/a>).<\/li>\n\n\n\n<li>Fixed a bug adding non-<code>.cs<\/code> files to <code>.Player<\/code> projects to prevent shader files unexpectedly appearing in multiple projects (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-97069\" target=\"_blank\" rel=\"noopener\">RIDER-97069<\/a>).<\/li>\n\n\n\n<li>Fixed context help for the Unity page in the <em>Settings \/ Preferences<\/em> (<a href=\"https:\/\/youtrack.jetbrains.com\/issue\/RIDER-98359\" target=\"_blank\" rel=\"noopener\">RIDER-98359<\/a>).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Unreal Engine<\/h3>\n\n\n\n<p>Rider is now able to show local variables within coroutines in C++ code while debugging Unreal Engine solutions. <\/p>\n\n\n\n<p>We also continue to work on improving Blueprint indexing. Starting with the EAP 1 build,&nbsp; the indexing process in Rider becomes multithreaded, cutting the time it takes to index the resources even further.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Web development<\/h2>\n\n\n\n<p>There are several updates included in EAP 1 that web developers might appreciate:&nbsp;<\/p>\n\n\n\n<ul>\n<li>Auto-import type in TypeScript.<\/li>\n\n\n\n<li>Automatically closing single tags when pasting HTML to JSX.<\/li>\n\n\n\n<li>Code completion for <code>@ts-ignore<\/code> and<code> @ts-expect-error<\/code> comments.<\/li>\n<\/ul>\n\n\n\n<p>For more information on these features, check out <a href=\"https:\/\/blog.jetbrains.com\/en\/webstorm\/2023\/09\/webstorm-2023-3-eap1\">this blog post<\/a>.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Debugging<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Attaching to a process inside a Docker container<\/h3>\n\n\n\n<p>Starting with EAP 1, it will now be possible to attach to a process inside a container for debugging. In order to do so, call up the <em>Attach to Process <\/em>dialog, go to the <em>Docker<\/em> tab and select the target container.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1194\" height=\"550\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/09\/Rd-233-Attach-to-docker.png\" alt=\"\" class=\"wp-image-390644\"\/><\/figure>\n\n\n\n<p>Rider will then ask you to download and install some debugger utilities inside the container, after which you will be able to see the target process inside the container and attach to it. Alternatively, you can go into the <em>Services <\/em>tool window and attach the debugger from there.<\/p>\n\n\n\n<p>This new option will work both in a local environment and in an SSH configuration. Add a new SSH Docker connection from the <em>Services <\/em>tool window or from <em>Settings\/Preferences<\/em>, then switch the run configuration to the new SSH connection and deploy services on it. You can also explore previously deployed services from the <em>Services <\/em>tool window.<\/p>\n\n\n\n<p>_____________________________________________________________________<\/p>\n\n\n\n<p><em>That\u2019s it for Rider 2023.3 EAP 1! For the full list of changes introduced in this build, please refer to <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/RIDER?q=Available%20in:%20%7B2023.3%20EAP%201*%7D%20\" target=\"_blank\" rel=\"noopener\">our issue tracker<\/a>.<\/em><\/p>\n\n\n\n<p>We hope that you\u2019ll join us on the EAP journey over the next few weeks. As you continue to test the newest additions to Rider, please don\u2019t hesitate to share your feedback with us here on the blog, on social media, or via our issue tracker.<\/p>\n","protected":false},"author":1337,"featured_media":390661,"comment_status":"closed","ping_status":"closed","template":"","categories":[4992,89,907,4140],"tags":[5518,1425,3891,1941,2095],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/390606"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/types\/dotnet"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/users\/1337"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/comments?post=390606"}],"version-history":[{"count":9,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/390606\/revisions"}],"predecessor-version":[{"id":623459,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/dotnet\/390606\/revisions\/623459"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/media\/390661"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/media?parent=390606"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/categories?post=390606"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/tags?post=390606"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/en\/wp-json\/wp\/v2\/cross-post-tag?post=390606"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}