Skip to content

Releases: Prylor/atomic-rider-plugin

Atomic v0.1.6 - Settings UI & Enhanced Notifications

Choose a tag to compare

@Prylor Prylor released this 29 Aug 14:34

Added

  • Complete plugin settings UI accessible from File → Settings → Tools → Atomic Plugin
  • Beautiful scrollable settings layout with visual controls
  • Visual debounce delay slider with real-time preview (100ms - 5s)
  • "Configure Settings" quick link in editor notification when auto-generation is disabled
  • Keyboard shortcuts quick reference section in settings
  • Example .atomic file format display in settings panel
  • Settings refresh trigger for editor notifications on apply

Changed

  • Updated editor notifications to show current auto-generation enabled/disabled status
  • Editor notification messages now dynamically reflect settings state
  • Improved settings UI structure with organized sections

Removed

  • Non-functional "Delete old files on directory change" option from settings

Fixed

  • Editor notifications now properly update when settings change

Atomic v0.1.5 - UI Improvements & Bug Fixes

Choose a tag to compare

@Prylor Prylor released this 29 Aug 11:02

Added

  • Editor notification panel at top of .atomic files for visual generation controls
  • Generate/Regenerate API button in notification panel based on file existence
  • Open Generated File action for quick navigation to generated code
  • Delete Generated File action with confirmation dialog
  • Auto-generation status information in notification panel
  • Smart detection of generated files using both tracker and calculated paths

Changed

  • Refactored code generation to use runtime initialization pattern
  • Updated generated code to always include Atomic.Entities namespace
  • Changed from compile-time hash constants to NameToId(nameof()) pattern
  • Improved parameter naming from 'obj' to 'entity' in extension methods

Fixed

  • Fixed auto-generation creating new files when it shouldn't
  • Improved generated file detection in notification panel
  • Fixed forceCreate parameter not being properly passed in coroutine scope

Improved

  • Better user experience with visual generation controls
  • Clearer messaging about auto-generation behavior
  • More discoverable generation feature through UI elements

Atomic v0.1.4 - Breaking Changes & Code Generation Improvements

Choose a tag to compare

@Prylor Prylor released this 29 Aug 10:15

Changed

  • BREAKING: Removed header keyword from atomic file syntax
  • Updated code generation to use runtime initialization with NameToId(nameof()) pattern
  • Replaced compile-time hash constants with runtime field initialization
  • Added Unity Editor support with conditional compilation directives
  • Changed parameter name from 'obj' to 'entity' in generated extension methods
  • Added #region blocks for better code organization in generated files

Added

  • Separation between manual generation (Ctrl+Shift+G) and auto-regeneration
  • Manual generation now required for first-time file creation
  • Auto-regeneration only updates existing files, won't create new ones
  • Always include Atomic.Entities namespace in generated code
  • Static constructor for field initialization in generated classes
  • [InitializeOnLoad] attribute for Unity Editor compatibility

Fixed

  • Prevent auto-generation from creating new files
  • Fixed compilation errors after header removal

Removed

  • header property from atomic file syntax (no longer supported)
  • Hash-based ID generation in favor of framework's NameToId method

Documentation

  • Clarified manual vs automatic generation workflow
  • Updated examples to remove header references
  • Added clear instructions for first-time generation requirement

Atomic v0.1.3 - Bug fixes

Choose a tag to compare

@Prylor Prylor released this 29 Aug 03:20

Fixed

  • Fixed critical 30-second timeout when deleting .atomic files
  • Replaced deprecated threading APIs (ExecuteOrQueueEx, ExecuteOrQueueReadLockEx, ExecuteOrQueue)
  • Fixed RPC timeout issues during file deletion operations

Changed

  • Made file deletion completely asynchronous using coroutines
  • Updated threading API calls to use Tasks.StartNew with Scheduling.MainGuard
  • File deletion now uses Java File API first, falling back to VirtualFile API if needed

Removed

  • Removed DirectFileWriter.cs as it's no longer needed with improved async handling

Technical

  • Resolved synchronous VirtualFile.delete() blocking the EDT
  • Improved file deletion performance using two-step strategy
  • Enhanced compatibility with Rider 2025.2 threading model

Atomic v0.1.2 - Improvements and Fixes

Choose a tag to compare

@Prylor Prylor released this 29 Aug 03:00

Fixed

  • Fixed keyword autocompletion in atomic files that was broken in 0.1.1
  • Fixed deprecated addBrowseFolderListener API usage for Rider 2025.2 compatibility
  • Fixed file generation to use AddNewItemHelper for proper project integration and IntelliSense support
  • Fixed duplicate keyword suggestions in autocompletion (keywords already used in document are now filtered out)
  • Fixed async Consumer-based API compatibility for CreateAtomicFileAction in Rider 2025.2
  • Removed obsolete getCommandName() method override
  • Deleted unused AtomicTypedHandlerTest class

Added

  • Added FileSystemManagerAsync for async file operations to prevent RPC timeouts
  • Added DirectFileWriter for direct file writing without blocking operations
  • Added AtomicHighlighterFilter to prevent duplicate highlighter registrations
  • Added AtomicDocumentListener for proper document change handling
  • Added AtomicTypedHandler improvements for better auto-popup behavior
  • Added comprehensive unit tests for AtomicTypedHandler

Improved

  • Enhanced autocompletion validation for atomic files only
  • Improved async operation handling throughout the plugin
  • Better thread safety and EDT violation prevention
  • Smart filtering of already-used keywords in autocompletion

Technical

  • Resolved RPC timeout issues during file generation
  • Fixed duplicate highlighter registration prevention
  • Improved compatibility with Rider 2025.2
  • Enhanced file generation with proper MSBuild project integration

Atomic v0.1.1 - Stability fixes

Choose a tag to compare

@Prylor Prylor released this 28 Aug 22:52

Fixed

  • Fixed EDT (Event Dispatch Thread) violations in all action classes
  • Added proper ActionUpdateThread.BGT declarations for thread safety in:
    • AtomicGenerateApiAction
    • AtomicFindUsagesAction
    • CreateAtomicFileAction
    • DiagnoseAutoGenerationAction
    • TestAutoGenerationAction
  • Fixed lifetime management in AtomicGenerationService using protocol scheduler
  • Fixed solution lifetime usage in ProjectManager (using UntilSolutionCloseLifetime)
  • Added plugin verification support for multiple Rider versions (2025.1.6, 2025.2.0.1)

Technical

  • Resolved "virtualFile is requested on EDT" exceptions
  • Improved thread safety across all action components
  • Enhanced compatibility with newer IntelliJ Platform requirements

Atomic 0.1.0 - Initial

Choose a tag to compare

@Prylor Prylor released this 28 Aug 21:23

Atomic Plugin for JetBrains Rider

Initial Release - January 28, 2024Compatibility: JetBrains Rider 2025.1+

✨ What's New

First release of Atomic - generate high-performance C# Entity Component System (ECS) extension methods from
.atomic configuration files.

🚀 Key Features

  • Custom DSL for .atomic files with full IDE support
  • Smart code completion for types and namespaces
  • Auto-generation on file changes
  • Find usages and rename refactoring
  • Real-time validation with quick fixes
  • Unity support with .asmdef handling

📦 Installation

Download ReSharperPlugin.AtomicPlugin-0.1.0.zip and install via:

  • Settings → Plugins → ⚙️ → Install Plugin from Disk

📚 Links

📥 Downloads

  • Plugin: ReSharperPlugin.AtomicPlugin-0.1.0.zip (Rider)
  • NuGet: ReSharperPlugin.AtomicPlugin.0.1.0.nupkg (ReSharper)

Author: Iaroslav SarchukLicense: MIT