Conversation
Require 'active_support' before 'active_support/core_ext' to ensure the autoloading mechanism is initialized first.
- Use ActiveSupport::Deprecation.new.warn instead of class method (AS 7.x) - Replace be_true/be_false with be true/be false (RSpec 3+ syntax) - Add silence_stream helper to replace removed ActiveSupport method - Stub Watchr.handler to avoid Config::CONFIG deprecation in Ruby 3.x - Remove outdated pending blocks from specs that now pass
Update all spec descriptions to use present tense instead of 'it should...' style. For example: - "should return true" -> "returns true" - "should set the mode" -> "sets the mode" - "should respond to" -> "responds to" This follows modern RSpec best practices for clearer, more readable test output.
Update rspec-mocks usage from old :should syntax to modern :expect syntax to remove deprecation warnings.
- Remove unmaintained watchr gem (last updated 2011) - Add listen gem as default observer (event-driven, used by Rails) - Add filewatcher gem as alternative (polling-based, works everywhere) - Update Core::Base to use :listen as default observer - Add specs for both new observers The listen observer uses native OS file system notifications for better performance. The filewatcher observer uses polling which works in all environments including VMs and NFS mounts.
Replace blocking sleep with timestamp-based approach. The previous implementation blocked inside the signal handler which prevented proper re-entrancy when pressing Ctrl+C multiple times. Add specs for observer base including interrupt handling logic.
- Update notification options documentation with current notifiers: - :auto_discover (default) - auto-detect available notifier - :terminal_notifier - macOS - :osascript - macOS built-in - :notify_send - Linux/BSD - :dunstify - Linux/BSD - Update specs to use :auto_discover instead of deprecated :growl
The latest notifiers 2.0.0 with auto_discover and modern notifier support is not yet released on RubyGems.
Complete the notifications integration with the notifiers gem by adding command line options to configure the notification library and image theme. Update deprecated growl references to use modern notifiers (osascript, terminal_notifier, notify_send, dunstify).
- Rename .infinity_test to INFINITY_TEST for clearer visibility - Complete TestUnit implementation with patterns for minitest output, success/failure/pending detection, test_dir setter, and .run? method - Add missing methods to RSpec: test_dir=, pending?, and .run? - Add comprehensive specs for TestUnit
- RVM strategy builds commands using `rvm <version> do ruby -S <binary> <files>` - RbEnv strategy builds commands using `RBENV_VERSION=<version> ruby -S <binary> <files>` - Both strategies support running tests across multiple Ruby versions - RVM strategy supports gemset configuration - Add comprehensive specs for both strategies
- Add file watching heuristics to Rails framework for models, controllers, helpers, mailers, jobs, lib, and test directories - Add file watching heuristics to Padrino framework with similar patterns - Update specs to properly mock observer and test_framework dependencies - Mark completed TODO items
Implement prioritization for auto discovery of strategies, frameworks, and test frameworks. More specific libraries are checked before generic ones (e.g., Rails before Rubygems, RVM before RubyDefault). Priority order: - Strategies: rvm > rbenv > ruby_default - Frameworks: rails > padrino > rubygems - Test frameworks: rspec > test_unit
Callbacks: - Add Callback class supporting before/after with :all/:each_ruby scopes - Implement before() and after() DSL methods in Base - Add run_before_callbacks and run_after_callbacks helpers - Integrate callbacks into ContinuousTestServer run_strategy Just Watch: - Add --just-watch (-j) option to skip initial test run - Useful for large applications where startup is slow - Only watches for file changes and runs tests on change
- Add --focus (-f) option accepting file path or "failures" - When "failures" is specified, runs only previously failed tests - When file path is specified, runs only that test file - Failed tests tracked in .infinity_test_failures file
- Create AI_INTEGRATION_IDEAS.md with ideas for Claude Code, MCP servers, AI-assisted debugging, natural language commands, and more - Update History.markdown with comprehensive v2.0.0 changelog - Mark all TODO items as complete
3ea2457 to
45a42c8
Compare
Migrate CI from Travis CI to GitHub Actions with modern Ruby versions (3.1, 3.2, 3.3, JRuby) and cross-platform testing (Ubuntu, macOS).
45a42c8 to
2993863
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context
Launch the new version.
Supporting auto discover lib/apps:
Supporting auto discover test framework:
Supporting auto discover ruby version manager:
Supporting new DSL for configuration (See Readme)