github unhappychoice/gittype v0.4.0
Release v0.4.0

latest releases: v0.10.0, v0.9.0, v0.8.0...
9 months ago

✨ Features

  • feat(typing): add context lines display and preserve indentation (4fc40e3)
  • feat(typing): improve color scheme and UI elements (1c64bbc)
  • feat(countdown): enhance visual experience with ASCII art and improved colors (7a8c0f8)
  • feat: add CODEOWNERS file with @unhappychoice as global owner (f5d4b33)
  • feat: add dependabot configuration for daily Cargo updates (06687e4)
  • feat(stage-manager): integrate TotalTracker for comprehensive session tracking (749f6a7)
  • feat(tracking): add TotalTracker for game-wide statistics (94f6f2a)
  • feat(ui): implement comment highlighting in stage renderer (ae03906)
  • feat(typing-core): add display_comment_ranges method (929b5e4)
  • feat(tests): unify typing core tests with parser-based comment detection (58a1a10)
  • feat(extractor): make extract_comment_ranges public (c92c3a8)
  • feat(display): improve newline symbol display and positioning (e6afae6)
  • feat(typing): preserve empty lines in all challenges (452874f)
  • feat(text-processing): add empty line preservation option (db73ac3)
  • feat: include Zen challenges in main challenge loading (cacf6c0)
  • feat(ui): improve typing screen layout with blue theme and line numbers (5a345e7)
  • feat(ui): add real-time metrics updates during typing (9ba9561)
  • feat(models): create unified model structure (f971864)
  • feat: rename RepoManager to RepositoryManager for consistency (7fc3958)
  • feat: complete SessionSummary to SessionResult unification with full implementation (1cb5d45)
  • feat: rename GameDisplayRatatui to StageRenderer for consistency (f121860)
  • feat: rename GameState to SessionState for consistency (558563b)
  • feat: complete terminology unification across entire codebase (7fb0b5f)
  • feat: fix semantic accuracy of all field and function names (845aeda)
  • feat: complete method and variable name unification (04fc71e)
  • feat: fix Rank/RankingTitle naming inconsistency (64263f3)
  • feat: complete UI text terminology updates (76cf9e3)
  • feat: complete model terminology unification (4afec8c)
  • feat: add new unified model structure (ee464f5)
  • feat(options): improve ExtractionOptions with dynamic language patterns (646900c)
  • feat(language): split Language implementations into individual files (24528ec)
  • feat: implement comprehensive Dart language extractor (731e083)
  • feat: add Dart language detection and file pattern support (6fee1f4)
  • feat: add tree-sitter-dart dependency for Dart language support (0356278)
  • feat: register Haskell language in core system (97c558f)
  • feat: add Haskell language support (6839932)
  • feat: add C++ file patterns to default extraction options (eb1f4c0)
  • feat: implement C++ code parser with comprehensive extraction (ad882a1)
  • feat: add C++ language detection and validation (f883f92)
  • feat: add tree-sitter-cpp dependency for C++ language support (502f0c3)
  • feat: add C comment detection support (5a7c55d)
  • feat: add TreeSitterLanguageError support (3a090ef)
  • feat: add C file patterns to extraction options (a85eb4f)
  • feat: implement C language parser (ad0dbae)
  • feat: add C language enum and detection (0eb169c)
  • feat: add tree-sitter-c dependency (9a988f4)
  • feat: integrate retry functionality into stage manager (a75e807)
  • feat: implement retry option on failure and cancellation screens (33accf7)
  • feat: align result file name display with colons (a7405fd)
  • feat: display countdown numbers as ASCII art (931d433)
  • feat: improve social sharing text with repository context (ed1c2e7)
  • feat: add repository information to result and session screens (914f248)
  • feat: enhance loading screen repository display (26c7790)
  • feat: improve file path display and add repository context to challenges (acf709e)
  • feat: implement dynamic score color-coding based on ranking tier (7237046)
  • feat: add terminal color methods to RankingTier and RankingTitle (615bb2e)
  • feat: shorten countdown duration for improved UX (812c5e7)

🐛 Bug Fixes

  • fix(clippy): remove unnecessary mut in context_loader tests (91bebf5)
  • fix(clippy): resolve clippy warnings (e66487a)
  • fix(exit-screen): replace session terminology with total and remove conditions (ca18640)
  • fix: reset skip count to 3 when retrying failed/cancelled stages (9375d78)
  • fix(clippy): use $crate instead of crate in macro definitions (90aed49)
  • fix: update tests to work with refactored typing_core (12b070e)
  • fix: record keystroke before typing core input processing (5110a64)
  • fix: use correct display position for current_mistake_position (67ccd84)
  • fix(clippy): resolve field_reassign_with_default and needless_range_loop warnings (0a325c5)
  • fix(clippy): resolve needless_range_loop warning (497be0a)
  • fix(scoring): correct real-time CPM calculation during pauses (c620a64)
  • fix: correct remaining semantic naming issues beyond rank-related terms (122b178)
  • fix(tests): fix test failures by excluding tmp/** pattern in temp directories (3b89dee)
  • fix: resolve clippy warning in Dart extractor (63cb5b1)
  • fix: resolve clippy warnings in Haskell extractor (caadf07)
  • fix: apply cargo fmt to fix spacing in comments (ff78420)
  • fix: ensure panic error messages are visible to users (4ff714c)
  • fix: resolve clippy warning for unused variable (db42a84)
  • fix(ci): improve Homebrew formula update process with awk (7c0b626)

📝 Other Changes

  • chore: bump version to v0.4.0 (e76583d)
  • chore: Update Cargo.lock (9e0a8e2)
  • style: fix cargo fmt formatting issues (f36dc09)
  • chore(deps): bump rusqlite from 0.29.0 to 0.37.0 (afb84ca)
  • style: apply cargo fmt formatting changes (c3131b9)
  • chore(deps): bump crossterm from 0.27.0 to 0.29.0 (9d225b0)
  • chore(deps): bump tree-sitter from 0.24.7 to 0.25.8 (bfc3da2)
  • chore(deps): bump thiserror from 1.0.69 to 2.0.16 (20b5145)
  • style: fix code formatting with cargo fmt (e1e4992)
  • refactor: remove unused code and fields from typing_core (de29b0a)
  • refactor: move mistake tracking to typing_core (ebfff51)
  • refactor: delegate input processing responsibility to typing_core (a965527)
  • refactor: remove unnecessary was_failed method (1ed5560)
  • refactor(typing_screen): improve code organization and reduce duplication (cc79204)
  • refactor(mod): update module exports (4f61144)
  • test(snapshots): update test snapshots for comment highlighting (2565726)
  • refactor(ui): simplify display_challenge_with_info method signature (141dbba)
  • refactor: unify SessionSummary/SessionResult and fix semantic naming (aaa51d7)
  • refactor: rename components for terminology consistency (8a870a7)
  • refactor(cli): remove unused config.rs and update CLI structure (9891198)
  • refactor(extractor): update extractors to use polymorphic Language trait (dcaa065)
  • refactor(language): refactor Language trait to polymorphic design (98cbb45)
  • docs: update documentation for Dart language support (79ad937)
  • test: add comprehensive Dart language extraction tests (3034a20)
  • refactor: remove unnecessary delegation and suffix in Haskell extractor (743fd24)
  • style: format code according to rustfmt standards (a224121)
  • docs: add Haskell to supported languages documentation (ba2bdf5)
  • refactor: update all language parsers for tree-sitter v0.24 (e1e0755)
  • refactor: migrate to tree-sitter v0.24 API (89f6945)
  • chore(deps): update all tree-sitter dependencies to latest versions (47d0899)
  • docs: add C and C++ language support to documentation (ff40f6b)
  • test: add comprehensive C++ language integration tests (1b58863)
  • test: add comprehensive C language tests (f0238c9)
  • refactor: remove old result_screen.rs after successful refactoring (3d1c16c)
  • refactor: update screen module exports for new structure (f1f794f)
  • refactor: split result_screen.rs into focused screen modules (e630e27)
  • refactor: redesign countdown screen repository and source info layout (c796d22)
  • chore: Update Twitter references to X platform (1c6fdb2)
  • docs(readme): update --repo examples to use relevant Rust libraries (791996b)
  • docs(readme): add --repo option examples (68e6815)
  • refactor(main): simplify main.rs using new CLI modules (238ad8c)
  • refactor(cli): move CLI components to separate modules (3d82e20)
  • chore: Update CHANGELOG.md (32d6d2c)

Don't miss a new gittype release

NewReleases is sending notifications on new releases.