| 1 | Name: fortsh |
| 2 | Version: 1.3.3 |
| 3 | Release: 1%{?dist} |
| 4 | Summary: Fortran Shell - A modern shell implementation in Fortran with advanced features |
| 5 | |
| 6 | License: MIT |
| 7 | URL: https://github.com/FortranGoingOnForty/fortsh |
| 8 | Source0: %{name}-%{version}.tar.gz |
| 9 | |
| 10 | BuildRequires: gfortran >= 11.0 |
| 11 | BuildRequires: gcc |
| 12 | BuildRequires: make |
| 13 | Requires: glibc |
| 14 | Recommends: fzf |
| 15 | |
| 16 | %description |
| 17 | Fortsh (Fortran Shell) is a modern Unix shell implementation written in Fortran 2018 |
| 18 | that demonstrates Fortran's capability for system programming. It provides advanced |
| 19 | shell features including comprehensive built-in commands, job control, pattern matching, |
| 20 | performance monitoring, and complete scripting support. |
| 21 | |
| 22 | Features: |
| 23 | - Advanced I/O & Process Management (pipes, process substitution, coprocesses, brace expansion) |
| 24 | - Comprehensive Built-in Command Library (printf, read, getopts, pushd/popd, type/which) |
| 25 | - Advanced test operations with [[ ]] syntax and pattern matching |
| 26 | - Full scripting support (loops, functions, local variables, interactive input) |
| 27 | - Job control enhancements (suspend/resume, background process management) |
| 28 | - Enhanced command substitution with nesting and signal handling |
| 29 | - Pattern matching and globbing (*,?,[]) with brace expansion |
| 30 | - Performance monitoring and memory management with optimization |
| 31 | - Compatible with bash/zsh scripts and modern shell workflows |
| 32 | - Interactive fzf keybinds (Ctrl+F file browser, Ctrl+R history, Alt+j directory jump, Alt+g git browser) |
| 33 | |
| 34 | %prep |
| 35 | %autosetup |
| 36 | |
| 37 | %build |
| 38 | make clean |
| 39 | make all |
| 40 | |
| 41 | %check |
| 42 | # Tests temporarily disabled due to circular module dependencies |
| 43 | # make test |
| 44 | |
| 45 | %install |
| 46 | mkdir -p %{buildroot}%{_bindir} |
| 47 | mkdir -p %{buildroot}%{_mandir}/man1 |
| 48 | mkdir -p %{buildroot}%{_docdir}/%{name} |
| 49 | |
| 50 | # Install binary |
| 51 | install -Dm755 bin/fortsh %{buildroot}%{_bindir}/fortsh |
| 52 | |
| 53 | # Install documentation |
| 54 | install -Dm644 README.md %{buildroot}%{_docdir}/%{name}/README.md |
| 55 | |
| 56 | %files |
| 57 | %doc README.md |
| 58 | %{_bindir}/fortsh |
| 59 | %{_docdir}/%{name}/README.md |
| 60 | |
| 61 | %changelog |
| 62 | * Sun Mar 09 2026 mfw <espadon@outlook.com> - 1.3.3-1 |
| 63 | - Redesign Ctrl-R reverse search with fish-style two-line rendering |
| 64 | - Fix heap corruption (SIGABRT) when accepting search suggestions |
| 65 | - Fix search mode keybinds: Ctrl-U, Ctrl-W, Alt-Backspace now modify search query |
| 66 | - Guard all buffer-mutating keybinds during search mode |
| 67 | - Enter in search accepts for editing instead of executing (fish behavior) |
| 68 | - Fix prompt duplication and stale cursor tracking on search accept |
| 69 | - Remove all unused variables across parser, executor, readline, and printf |
| 70 | - Fix 7 silent truncation bugs: widen buffers for long paths and variable values |
| 71 | - Convert 8 stack-to-static arrays to heap-allocated (allocatable) for safe recursion |
| 72 | |
| 73 | * Sun Mar 09 2026 mfw <espadon@outlook.com> - 1.3.1-1 |
| 74 | - Update --help flag with missing -l/--login option |
| 75 | - Update help builtin with complete builtin command listing |
| 76 | - Add fzf keybinds, expansion, and process substitution to help output |
| 77 | |
| 78 | * Sun Mar 09 2026 mfw <espadon@outlook.com> - 1.3.0-1 |
| 79 | - Fix stack overflows in nested for loops (parser and executor) |
| 80 | - Fix field splitting null-byte padding from character length mismatch |
| 81 | - Fix substring OOB crashes from non-short-circuit evaluation |
| 82 | - Fix environment variable truncation for values over 256 chars |
| 83 | - Fix flaky times test in POSIX compliance suite |
| 84 | - 100%% POSIX test suite pass rate (3776/3776) |
| 85 | |
| 86 | * Sat Oct 18 2025 mfw <espadon@outlook.com> - 0.8.0-1 |
| 87 | - Version number reset for more realistic versioning |
| 88 | - Major performance: String pooling implementation |
| 89 | - Memory profiler and dashboard for optimization |
| 90 | - Pooled implementations for lexer, parser, executor |
| 91 | - Enhanced readline with extensive refactoring |
| 92 | - New memory pool validation and testing suite |
| 93 | - POSIX compliance test improvements |
| 94 | |
| 95 | * Sat Oct 18 2025 mfw <espadon@outlook.com> - 6.0.5-1 |
| 96 | - Additional macOS segfault workarounds |
| 97 | - Fixed memory handling issues on macOS |
| 98 | - Improved stability on macOS platform |
| 99 | - Enhanced error handling and signal management |
| 100 | |
| 101 | * Sat Oct 18 2025 mfw <espadon@outlook.com> - 6.0.4-1 |
| 102 | - New shell modes for improved ease of use |
| 103 | - Multiple mode support for different interaction styles |
| 104 | - Enhanced readline with mode-based features |
| 105 | - Expanded mode capabilities for user convenience |
| 106 | |
| 107 | * Sat Oct 18 2025 mfw <espadon@outlook.com> - 6.0.3-1 |
| 108 | - New quick kill feature with reverse-i-search-like interface |
| 109 | - Process menu selection for sending signals |
| 110 | - Live command line updates with menu selection |
| 111 | - Enhanced process management capabilities |
| 112 | |
| 113 | * Sat Oct 18 2025 mfw <espadon@outlook.com> - 6.0.2-1 |
| 114 | - Restored menu navigation and fish-style features on macOS |
| 115 | - Improved readline quality-of-life enhancements |
| 116 | - Segfault fixes enable full feature set on macOS |
| 117 | - Code cleanup and optimization |
| 118 | |
| 119 | * Fri Oct 17 2025 mfw <espadon@outlook.com> - 6.0.1-1 |
| 120 | - 100%% passing on all three POSIX benchmark suites |
| 121 | - Enhanced builtins compliance testing |
| 122 | - Improved executor and control flow |
| 123 | - Code cleanup and test suite reorganization |
| 124 | |
| 125 | * Fri Oct 17 2025 mfw <espadon@outlook.com> - 6.0.0-1 |
| 126 | - MAJOR RELEASE: Full POSIX compliance achieved |
| 127 | - Complete POSIX test suite passing |
| 128 | - Enhanced parser for POSIX shell syntax |
| 129 | - Improved executor and error handling |
| 130 | - Major milestone for shell compatibility |
| 131 | |
| 132 | * Fri Oct 17 2025 mfw <espadon@outlook.com> - 5.2.10-1 |
| 133 | - Fixed shell hang issues for improved responsiveness |
| 134 | - Enhanced signal handling and process management |
| 135 | - Improved readline and executor reliability |
| 136 | - Shell now hang-free under normal operation |
| 137 | |
| 138 | * Fri Oct 17 2025 mfw <espadon@outlook.com> - 5.2.9-1 |
| 139 | - Fixed allocatable array handling and memory management |
| 140 | - Addressed compiler warnings for cleaner builds |
| 141 | - Improved code quality and stability |
| 142 | - Enhanced expansion and parser robustness |
| 143 | |
| 144 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.8-1 |
| 145 | - Enhanced menu support for cleaner experience |
| 146 | - Improved completion menu rendering |
| 147 | - Better platform compatibility for menu features |
| 148 | |
| 149 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.7-1 |
| 150 | - Workarounds for gfortran macOS compiler bug |
| 151 | - Identified and resolved readline cursor issues |
| 152 | - macOS platform stability improvements |
| 153 | |
| 154 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.6-1 |
| 155 | - Verified macOS segfault resolution |
| 156 | - Production-ready macOS build |
| 157 | - Platform stability confirmed |
| 158 | |
| 159 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.5-1 |
| 160 | - Final macOS segfault resolution |
| 161 | - Stability improvements for macOS platform |
| 162 | - Verified working macOS build |
| 163 | |
| 164 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.4-1 |
| 165 | - Additional macOS segfault fixes |
| 166 | - Continued improvements to macOS stability |
| 167 | - Enhanced platform-specific handling |
| 168 | |
| 169 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.3-1 |
| 170 | - Fixed segfaults on macOS builds |
| 171 | - Improved platform-specific stability |
| 172 | - Enhanced macOS compatibility |
| 173 | |
| 174 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.2-1 |
| 175 | - Added additional test coverage |
| 176 | - Parser fixes and improvements |
| 177 | - Enhanced stability and correctness |
| 178 | |
| 179 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.1-1 |
| 180 | - Fixed segfault when heredocs are present in command history |
| 181 | - Improved history handling and memory safety |
| 182 | |
| 183 | * Mon Oct 14 2024 mfw <espadon@outlook.com> - 5.2.0-1 |
| 184 | - Major POSIX compliance improvements |
| 185 | - Fixed heredoc handling and processing |
| 186 | - Custom IFS (Internal Field Separator) handling |
| 187 | - Backtick command substitution support |
| 188 | - Parameter expansion with walrus assignment operator |
| 189 | - Escaped glob characters and escaped spaces handling |
| 190 | - Enhanced printf with proper escape sequence handling |
| 191 | - Fixed backslash escape issues |
| 192 | - Negation operator (!) support |
| 193 | - Until loop implementation |
| 194 | - POSIX-compliant test command improvements |
| 195 | - Added comprehensive POSIX compliance test suite |
| 196 | |
| 197 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 5.1.0-1 |
| 198 | - Partial history completions with Ctrl-arrow keys |
| 199 | - Fill in history paths one directory at a time |
| 200 | - Navigate through historical command paths incrementally |
| 201 | - Enhanced command line editing workflow |
| 202 | |
| 203 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 5.0.0-1 |
| 204 | - MAJOR RELEASE: Modern Interactive Shell Experience Complete |
| 205 | - Unix standard keybindings (Ctrl-A, Ctrl-E, Ctrl-U, Ctrl-K, Ctrl-W, Ctrl-L, etc.) |
| 206 | - Enhanced directory navigation with cd - (return to previous directory) |
| 207 | - Complete fish-like UX: syntax highlighting, history suggestions, error corrections |
| 208 | - Interactive tab completion with arrow key navigation |
| 209 | - Programmable completion system |
| 210 | - Git-aware prompts and intelligent prompt shortening |
| 211 | - Advanced vi mode with forward search |
| 212 | - File descriptor redirection for coprocesses |
| 213 | - Production-ready interactive shell for daily use |
| 214 | |
| 215 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.4.1-1 |
| 216 | - Interactive tab completion preview selection (Zsh/Fish-style) |
| 217 | - Navigate completion previews with arrow keys or Tab |
| 218 | - Visual selection highlighting for active completion candidate |
| 219 | - Fixed space trimming on completion insertion |
| 220 | - Enhanced completion preview interface |
| 221 | |
| 222 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.4.0-1 |
| 223 | - MAJOR FEATURE: Fish-like interactive shell enhancements |
| 224 | - NEW: Syntax highlighting in command line with color-coded commands, strings, and operators |
| 225 | - NEW: Fish-style history suggestions with inline autosuggestions from command history |
| 226 | - NEW: Intelligent error suggestions with Levenshtein distance for typo detection |
| 227 | - NEW: Command abbreviations system for quick command expansion |
| 228 | - NEW: Git-aware prompt with repository status indicators |
| 229 | - NEW: Automatic prompt shortening for long directory paths |
| 230 | - Improved tab completion with better visual feedback |
| 231 | - Enhanced expansion handling and fixes for various edge cases |
| 232 | - Better error messages with contextual suggestions |
| 233 | |
| 234 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.3.0-1 |
| 235 | - NEW FEATURE: File descriptor redirection for coprocess support |
| 236 | - Implemented variable FD expansion (>&${var}, <&${var}) |
| 237 | - Support for array-style FD variables (COPROC[0], COPROC[1]) |
| 238 | - Fixed nested brace expansion issues |
| 239 | - Improved expansion handling and parser migration |
| 240 | - Enhanced coprocess communication capabilities |
| 241 | |
| 242 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.2.0-1 |
| 243 | - Enhanced vi editing mode with advanced features |
| 244 | - Added forward search capability in command line editing |
| 245 | - Implemented case-insensitive regex support |
| 246 | - Improved readline functionality and text manipulation |
| 247 | - Enhanced command line editing experience |
| 248 | |
| 249 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.1.0-1 |
| 250 | - NEW FEATURE: Bash-style programmable completion system |
| 251 | - Implemented complete builtin for defining custom completions |
| 252 | - Implemented compgen builtin for testing completion generation |
| 253 | - Added function-based completion support |
| 254 | - Built-in completers for commands, files, directories, and variables |
| 255 | - Prefix matching and alphabetical sorting |
| 256 | - Prefix/suffix transforms for completion candidates |
| 257 | - Filter support for completion results |
| 258 | |
| 259 | * Sun Oct 13 2024 mfw <espadon@outlook.com> - 4.0.2-1 |
| 260 | - Fixed single-line if statement execution |
| 261 | - Fixed infinite while loop issues |
| 262 | - Resolved circular module dependency between control_flow and executor |
| 263 | - Improved control flow condition evaluation |
| 264 | - Enhanced variable expansion in test conditions |
| 265 | |
| 266 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 4.0.1-1 |
| 267 | - Fixed multiline function conditionals |
| 268 | - Improved scripting support and control flow |
| 269 | - Minor fixes and adjustments for better compatibility |
| 270 | - Updated README with compliance and parity targets |
| 271 | |
| 272 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 4.0.0-1 |
| 273 | - MAJOR RELEASE: Bash parity and POSIX compliance improvements |
| 274 | - Implemented process substitution <() and >() operators |
| 275 | - Full trap command support for signal handling |
| 276 | - Enhanced bash compatibility and POSIX compliance |
| 277 | - Major improvements to shell script compatibility |
| 278 | |
| 279 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.10-1 |
| 280 | - Major fixes to background job control |
| 281 | - Fixed history expansion handling |
| 282 | - Added tracing and trap hooks |
| 283 | - Improved signal handling for background jobs |
| 284 | |
| 285 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.9-1 |
| 286 | - Fixed backgrounding jobs edge cases |
| 287 | - Implemented $! expansion for last background job PID |
| 288 | - Fixed single line for loops |
| 289 | - Updated test suite |
| 290 | |
| 291 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.8-1 |
| 292 | - Resolved pipeline+redirect edge case |
| 293 | - Further improvements to pipe and redirect handling |
| 294 | |
| 295 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.7-1 |
| 296 | - Enhanced redirect and pipe handling |
| 297 | - Fixed edge cases with builtins after pipes |
| 298 | - Added I/O helper module for better redirection |
| 299 | |
| 300 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.6-1 |
| 301 | - Fixed redirection operators |
| 302 | - Improved I/O redirection handling |
| 303 | |
| 304 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.5-1 |
| 305 | - Fixed macOS raw mode enabling for terminal |
| 306 | - Keybinds now work correctly on macOS |
| 307 | |
| 308 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.4-1 |
| 309 | - Further macOS completion and readline fixes |
| 310 | - Improved platform-specific compatibility |
| 311 | |
| 312 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.3-1 |
| 313 | - Fixed macOS readline compatibility issues |
| 314 | - Added platform-specific build flags for Darwin |
| 315 | - Enhanced coprocess functionality |
| 316 | |
| 317 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.2-1 |
| 318 | - Added associative array support |
| 319 | - Enhanced parser functionality |
| 320 | - Improved expansion capabilities |
| 321 | |
| 322 | * Sat Oct 12 2024 mfw <espadon@outlook.com> - 3.3.1-1 |
| 323 | - Improved history navigation and reverse-i-search |
| 324 | - Fixed ctrl-c signal handling in shell |
| 325 | - Enhanced readline functionality |
| 326 | |
| 327 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.3.0-1 |
| 328 | - Fixed execvp model for path program execution |
| 329 | - Programs found by which now execute properly |
| 330 | - Improved readline functionality |
| 331 | - Updated Makefile with release targets |
| 332 | |
| 333 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.2.0-1 |
| 334 | - Full builtin compliance implementation |
| 335 | - Enhanced directory builtins |
| 336 | - Wired in which command |
| 337 | - Updated documentation |
| 338 | |
| 339 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.1.0-1 |
| 340 | - Implemented proper signal handling for external commands |
| 341 | - Shell now ignores signals to run commands in succession |
| 342 | - Significantly improved shell functionality and stability |
| 343 | |
| 344 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.0.2-1 |
| 345 | - Fixed parser handling of spaces |
| 346 | - Improved prompt parsing |
| 347 | - Various parser improvements |
| 348 | |
| 349 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.0.1-1 |
| 350 | - Enhanced prompt formatting and expansion |
| 351 | - Improved variable handling |
| 352 | - Better job control |
| 353 | - Completed brace expansion implementation |
| 354 | |
| 355 | * Fri Oct 11 2024 mfw <espadon@outlook.com> - 3.0.0-1 |
| 356 | - Complete rewrite with AST-based parsing architecture |
| 357 | - Modern compiler design with lexer, parser, and AST evaluator |
| 358 | - Improved POSIX compliance and shell compatibility |
| 359 | - Enhanced error handling and diagnostics |
| 360 | - Significant performance improvements |
| 361 | - Better memory management and resource handling |
| 362 | |
| 363 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 2.0.0-1 |
| 364 | - Full POSIX Compliance implementation |
| 365 | - Complete parameter expansion: ${var:-word}, ${var%pattern}, ${var#pattern} |
| 366 | - Positional parameters: $1, $2, $#, $*, $@ with proper handling |
| 367 | - Field splitting with $IFS support for word boundary control |
| 368 | - File descriptor redirection: n>file, n<file, <&n, >&n syntax |
| 369 | - Quote removal and tilde expansion for proper path handling |
| 370 | - All POSIX required built-ins: type, unset, readonly, shift, exec, eval |
| 371 | - Enterprise-grade POSIX.1-2017 compliance achieved |
| 372 | |
| 373 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 1.5.0-1 |
| 374 | - Phase 9 implementation: POSIX Compliance & Shell Standards |
| 375 | - Shell options framework: set -e, set -u, set -o pipefail, shopt commands |
| 376 | - Proper pipeline exit status handling with POSIX compliance |
| 377 | - Special variables: $$, $!, $?, $0, $PPID with automatic expansion |
| 378 | - Errexit integration for command failure handling |
| 379 | - Enhanced bash/zsh compatibility (~90% achieved) |
| 380 | - POSIX-compliant shell behavior for enterprise use |
| 381 | |
| 382 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 1.4.0-1 |
| 383 | - Phase 8 implementation: Advanced Shell Features |
| 384 | - Case statements: case/esac with pattern matching and wildcard support |
| 385 | - Here documents/strings: << <<- <<< operators with variable expansion |
| 386 | - History expansion: !!, !n, !-n, !string patterns with command search |
| 387 | - Enhanced aliases: parameter support with $1, $2, $*, $@, $#, ${n} |
| 388 | - Command line editing: Emacs and Vi modes with proper mode switching |
| 389 | - Associative arrays: key-value storage with declare, set, get operations |
| 390 | - Advanced shell features for improved bash/zsh compatibility |
| 391 | |
| 392 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 1.3.0-1 |
| 393 | - Phase 7 implementation: Built-in Command Library |
| 394 | - Advanced test operations: [[ ]] syntax with pattern matching, regex support |
| 395 | - Printf built-in: comprehensive formatting with %s, %d, %f, %x specifiers |
| 396 | - Interactive read built-in: -p prompt, -t timeout, -s silent, -a array modes |
| 397 | - Getopts command: full option parsing with OPTIND, OPTARG support |
| 398 | - Directory operations: pushd/popd/dirs with stack management |
| 399 | - Command identification: type/which/command for locating executables |
| 400 | - Enhanced built-in command library with 25+ commands |
| 401 | |
| 402 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 1.2.0-1 |
| 403 | - Phase 6 implementation: Advanced I/O & Process Management |
| 404 | - Enhanced command substitution with nested $(command $(inner)) support |
| 405 | - Process substitution: <(command) and >(command) functionality |
| 406 | - Brace expansion: {a,b,c}, {1..10}, {a..z} patterns |
| 407 | - Coprocess support: coproc command bidirectional communication |
| 408 | - Advanced signal handling: timeout, enhanced traps, process groups |
| 409 | - Built-in timeout command with automatic process termination |
| 410 | |
| 411 | * Wed Aug 28 2024 mfw <espadon@outlook.com> - 1.1.0-1 |
| 412 | - Phase 5 implementation: Core Language Extensions |
| 413 | - Array variables support: arr=(a b c), ${arr[0]}, ${arr[@]} |
| 414 | - Parameter expansion: ${var:offset:length}, ${var:-default}, ${#var} |
| 415 | - Arithmetic expansion: $((expression)) with basic math operations |
| 416 | - Enhanced variable assignment and expansion system |
| 417 | |
| 418 | * Sun Aug 25 2024 mfw <espadon@outlook.com> - 1.0.1-1 |
| 419 | - Enhanced shell functionality with functions and command substitution |
| 420 | - Improved variable expansion with parameter substitution |
| 421 | - Enhanced readline with history and tab completion |
| 422 | - Source file execution support |
| 423 | - Advanced scripting capabilities |
| 424 | |
| 425 | * Sun Aug 25 2024 mfw <espadon@outlook.com> - 1.0.0-1 |
| 426 | - Initial RPM release |
| 427 | - Complete Fortran shell implementation |
| 428 | - Advanced I/O redirection and job control |
| 429 | - Performance monitoring and memory management |
| 430 | - Pattern matching and globbing support |
| 431 | - Full scripting capabilities with control flow |
| 432 | - Comprehensive test suite and error handling |