Conversation
This workflow automatically marks and closes stale issues and pull requests based on inactivity.
* feat: Add unified installer script for HypnoScript runtime - Introduced `install.sh` for automatic installation, updates, and uninstallation of HypnoScript runtime. - Updated GitHub Actions workflow to include the installer in release artifacts. - Enhanced documentation to include instructions for using the new installer. - Added self-update functionality to the CLI for checking and installing the latest version. - Updated package dependencies in `Cargo.toml` for improved functionality. - Modified build scripts to copy the new installer script into release packages. * fix: Update regex patterns for branch type matching in labeler configuration
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
… für bessere Lesbarkeit und Sicherheit
…einfachung von Bedingungen in mehreren Dateien
…e die Lesbarkeit von Bedingungen in mehreren Dateien
…rkeit der Bedingung in `find_shared_installer`
…self_update` für bessere Lesbarkeit
…ierung hinzu; verbessere CLI-Befehlsübersicht und Installationstext
… Ausgaben, um die Konsistenz zu verbessern und die Benutzererfahrung zu vereinfachen.
…ge als informativ, um übermäßige Warnungen zu vermeiden.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…e Umgebungsvariablenbehandlung; füge Sicherheitswarnungen hinzu und optimiere die Fehlerbehandlung in der Skriptlogik.
…re die Fehlerbehandlung im Installer-Skript.
…urch Vereinfachung der Funktionsaufrufe zur Ableitung des Installationspfads.
…r Winget-Manifestdatei; füge ein Skript zur Synchronisierung der Version hinzu.
…staktualisierungsprozess
* feat: Add API and CLI builtins for HTTP requests and command-line argument parsing - Introduced `api_builtins` module for handling HTTP requests with support for various methods and authentication strategies. - Added `cli_builtins` module for parsing command-line arguments and prompting user input. - Implemented `data_builtins` for JSON and CSV utilities, including parsing, querying, and serialization. - Enhanced `file_builtins` with functions for reading and writing lines to files, and copying directories recursively. - Created `service_builtins` for managing service health metrics and retry schedules. - Added localization support with `localization` module for handling translations and locale detection. - Updated `Cargo.toml` to include new dependencies for HTTP and CSV handling. - Added tests for new functionalities to ensure reliability and correctness. chore: Bump version to 1.0.0-rc3 in package.json and build scripts * Enhance HypnoScript with new features and improvements - Updated README.md to reflect new built-in functions and performance improvements. - Added cryptographic functions (SHA-256, SHA-512, MD5, Base64, UUID) to hashing_builtins.rs. - Implemented functional programming operations (map, filter, reduce, etc.) in array_builtins.rs. - Introduced localization support in core_builtins.rs for hypnotic functions. - Expanded math_builtins.rs with additional mathematical functions (inverse trig, hyperbolic, angle conversion). - Enhanced string_builtins.rs with new string manipulation functions (trim, insert, remove, wrap text). - Increased test coverage across all built-in functions to ensure reliability and correctness. * Add advanced string manipulation and dictionary builtins - Introduced `advanced_string_builtins` module with functions for string similarity metrics, phonetic algorithms, and fuzzy matching utilities. - Enhanced `string_builtins` with comprehensive documentation and Unicode-aware methods. - Implemented `dictionary_builtins` for key-value collection operations, including creation, retrieval, and manipulation of JSON-based dictionaries. - Added `builtin_trait` for consistent error handling and metadata across builtin modules. - Updated `lib.rs` to include new modules and re-export relevant types for easier access. * feat: Add collection builtins and enhance existing modules with metadata and examples * feat: Enhance HypnoScript Compiler with Native Code Generation and Optimizations - Added support for compiling HypnoScript to native binaries targeting various platforms (Windows, macOS, Linux). - Introduced a new `NativeCodeGenerator` module with configuration options for optimization levels and target platforms. - Implemented a basic structure for code optimization, including constant folding and placeholders for additional optimization passes. - Added a `WasmBinaryGenerator` for generating binary WebAssembly (.wasm) files directly from the AST. - Updated the CLI to support new commands for compiling to native binaries and optimizing HypnoScript code. - Enhanced documentation for new features and modules, including usage examples. - Added test cases for the new compiler features and optimizations. * feat: Update HypnoScript Compiler with Cranelift backend and enhance WASM generation - Added support for Cranelift as the native code generation backend. - Updated .gitignore to exclude compiled artifacts. - Enhanced README with detailed features and usage examples. - Improved documentation in lib.rs and native_codegen.rs. - Implemented session handling and function declarations in WASM code generation. - Removed obsolete test_compiler.hyp file. * feat: Introduce new language features including embed, pendulum loops, murmur for debug output, and pattern matching with entrain - Added `embed` for deep variable declarations. - Implemented `pendulum` for bidirectional loop syntax. - Introduced `murmur` for quiet debug output. - Added pattern matching capabilities with `entrain`, including support for literals, identifiers, and guards. - Implemented nullish coalescing operator (`lucidFallback`) and optional chaining (`dreamReach`). - Enhanced the parser and token definitions to support new keywords and syntax. - Created comprehensive test cases for all new features to ensure functionality and correctness. * feat: Implement loop statement enhancements with support for initialization, condition, and update clauses; unify loop and pendulum syntax * feat: Enhance variable handling by introducing storage types and updating declaration parsing * fix: Update error messages in DataError enum to English
* Implement tranceify feature for custom record types - Added support for defining custom record types using the `tranceify` keyword in the HypnoScript language. - Introduced `RecordValue` struct to represent record instances. - Enhanced the `Value` enum to include records and updated related methods for equality, display, and truthiness checks. - Implemented type checking for tranceify declarations and record literals, ensuring field existence and type compatibility. - Updated the AST to include nodes for tranceify declarations and record literals. - Enhanced the parser to handle tranceify declarations and record literals. - Created comprehensive test cases for various tranceify scenarios, including basic declarations, nested records, and calculations. - Added documentation for tranceify in the language reference and examples section. * Add documentation for hypnotic operator synonyms, pattern matching, and triggers - Introduced a new document for hypnotic operator synonyms, detailing their usage and examples. - Created a comprehensive guide on pattern matching with `entrain`, including various pattern types and real-world examples. - Added a section on triggers, explaining their purpose, syntax, and integration with event handling and asynchronous operations. - Updated syntax documentation to reflect changes in function definitions from `Trance` to `suggestion`. - Enhanced the interpreter reference with examples of robust error handling and recursion limits. - Updated the parser documentation to include supported language constructs and examples. * Füge Regeln für Top-Level-Blöcke hinzu: `entrance` und `finale` sind nur auf oberster Ebene erlaubt; Parser-Fehler für ungültige Platzierungen implementiert. * Refactor code for improved readability and maintainability - Cleaned up formatting and indentation in `wasm_codegen.rs`, `parser.rs`, and various built-in modules for consistency. - Enhanced error messages and localization support in built-in modules. - Added new test case for parsing entrain with record pattern in `parser.rs`. - Updated version numbers in `package.json` and build scripts to 1.0.0-rc4. - Improved handling of record field patterns in `parser.rs`. - Refactored function signatures for clarity in multiple built-in modules. - Adjusted assertions in tests for better readability. * Aktualisiere hypnotische Synonyme für Vergleichsoperatoren und füge Hinweise zur String-Konkatenation hinzu; verbessere Dokumentation für Pattern Matching.
* Refactor documentation and test cases for HypnoScript - Translated and updated the language reference for triggers, types, and variables to English. - Improved clarity and consistency in examples and descriptions across documentation. - Enhanced test cases for basic features, extended data structures, object orientation, control structures, functions, arrays, and error handling. - Updated comments in test files to reflect changes in language and improve readability. * Translate HypnoScript documentation from German to English, updating various sections including examples, index, intro, interpreter reference, and testing overview. Added a translation script to automate future translations while preserving code formatting and technical terms. * Translate HypnoScript documentation from German to English, updating various sections including debugging best practices, performance debugging, error handling, examples of CLI workflows, system functions, and utility functions. Adjusted comments and descriptions for clarity and consistency in English. Enhanced the translation script for improved handling of markdown files and code blocks. * Refactor HypnoScript test files for improved clarity and organization - Updated test_extended_builtins.hyp to focus on array tools, statistics, string manipulation, hashing, and validation builtins, while removing redundant collection operations. - Revised test_extended_features.hyp to showcase advanced mathematical functions, string manipulation, array operations, and hypnotic functions, enhancing the overall demonstration. - Enhanced test_new_language_features.hyp to highlight modern language features such as embed, pendulum, murmur, await, lucidFallback, and optional chaining with clearer examples. - Simplified test_parallel_execution.hyp to simulate parallel workloads without actual threading, emphasizing timing analysis capabilities. - Modified test_simple.hyp to streamline basic variable handling and function calls, improving readability. - Consolidated test_simple_features.hyp to present a mini-scenario for a HypnoScript workshop, managing registration and status with hypnotic operators. - Merged test_simple_new_features.hyp into a single reference file, directing users to the appropriate tests for new features. * Refactor HypnoScript test files and templates for improved clarity and consistency - Updated test_extended_features.hyp to enhance readability and translate German comments to English. - Revised test_new_features.hyp for consistent terminology and clearer descriptions. - Modified test_new_language_features.hyp to reflect English translations and improve output clarity. - Adjusted test_parallel_execution.hyp for better English phrasing and clarity in task descriptions. - Enhanced test_simple.hyp with clearer comments and English translations. - Updated test_simple_features.hyp for consistent language and improved clarity in registration management. - Merged test_simple_new_features.hyp into test_new_features.hyp for consolidation. - Created a new README.md in the template directory to provide an overview of the HypnoScript CLI template. - Added watch.ps1 and watch.sh scripts for running commands in PowerShell and Bash respectively. - Implemented help.hyp, pulse_report.hyp, and session_status.hyp commands for CLI functionality. - Developed main.hyp as the entry point for the CLI application. - Established runtime_state.hyp for shared session and pulse metrics. - Created smoke.hyp for basic testing of the CLI functionality. - Initialized trance-lock.json and trance.json for project configuration and dependencies. * Update hypnoscript-docs/docs/getting-started/quick-start.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Initial plan * Initial planning for HypnoScript package manager implementation Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Implement package manager with trance.json manifest support - Add package.rs module with PackageManager implementation - Support trance.json manifest (ritualName, mantra, anchors, etc.) - Support trance-lock.json for dependency locking - Add CLI commands: init, install, add, remove, list, validate, run-suggestion - Include CLI and library project templates - Add comprehensive tests for package manager functionality - Update README with package manager documentation - Add PACKAGE_MANAGER.md with detailed usage guide - Include example trance.json file Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Add implementation summary for package manager - Document all implemented features - Include usage examples - List code quality metrics - Describe architecture and design decisions Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Rename 'run-suggestion' to 'run' and 'run' to 'exec' - Rename file execution command from 'run' to 'exec' (with 'execute' alias) - Rename script execution command from 'run-suggestion' to 'run' - Update all documentation (README.md, PACKAGE_MANAGER.md) - Update templates to use 'hypnoscript exec' for file execution - Update example trance.json file - All tests passing (207 total) Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Add 'hyp' as a short alias for 'hypnoscript' command - Added [[bin]] sections in Cargo.toml to create both binaries - Both 'hypnoscript' and 'hyp' are now available and identical - Updated README.md to document the alias - Updated PACKAGE_MANAGER.md to mention both forms - All tests passing (207 total) Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Address 12 code review comments from PR reviewer 1. Fix version validation to use semver::VersionReq::parse() for all version specs 2. Update README examples to show correct `add` command syntax with --version flag 3. Change basic template entry point from src/main.hyp to src/lib.hyp for consistency 4. Extract hardcoded default version to constant DEFAULT_PACKAGE_VERSION 5. Update IMPLEMENTATION_SUMMARY docs: run-suggestion -> run, hypnoscript run -> exec 6. Translate German text to English in README (multiple locations) 7. Remove excessive blank lines in README 8. Change "Tests & Qualitätssicherung" to "Tests & Quality Assurance" All tests passing, clippy clean, version validation improved. Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Implement actual command execution for 'run' command - Parse suggestion command string and execute using std::process::Command - Commands now execute immediately instead of just displaying what would run - Inherit stdin/stdout/stderr for interactive commands - Proper error handling for command failures and missing executables - Exit codes properly propagated from executed commands Example: 'hypnoscript run test' now actually executes the test command defined in trance.json suggestions instead of just showing it. All tests passing, clippy clean. Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Fix command syntax in IMPLEMENTATION_SUMMARY documentation Changed 'hypnoscript add pkg@^1.0.0' to correct syntax: 'hypnoscript add pkg --version "^1.0.0"' The CLI expects --version flag, not @ syntax. Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Fix command parsing and README formatting issues 1. Replace split_whitespace() with shlex for proper shell argument parsing - Now correctly handles quoted arguments with spaces - Fixes: echo "Hello World" now works as expected - Added shlex 1.3 dependency 2. Remove excessive blank lines in README - Fixed bash code block formatting - Fixed list items formatting - Fixed JSON example formatting All tests passing, clippy clean. Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Fix documentation issues 1. Remove excessive blank lines from README.md package manager section 2. Remove script execution from future enhancements in PACKAGE_MANAGER.md (already implemented in commit 7) 3. Remove script execution from future enhancements in IMPLEMENTATION_SUMMARY (already implemented in commit 7) 4. Update package.rs line count from 621 to 654 lines All tests passing, clippy clean. Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> Co-authored-by: Jonas Pfalzgraf <info@josunlp.de>
There was a problem hiding this comment.
Pull Request Overview
This pull request comprehensively translates HypnoScript documentation from German to English across documentation files for language reference, getting started guides, examples, enterprise features, and debugging resources. The changes improve international accessibility while maintaining technical accuracy and consistency throughout the documentation.
Key Changes:
- Translation of all language reference documentation (records, pattern matching, operators, functions, control flow, assertions, keywords reference)
- Translation of getting started guides and introductory materials
- Translation of examples and enterprise/runtime documentation
- Translation of error handling and debugging guides
Reviewed Changes
Copilot reviewed 65 out of 106 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
hypnoscript-docs/docs/language-reference/records.md |
Translated from German to English including all code comments and explanations |
hypnoscript-docs/docs/language-reference/pattern-matching.md |
Translated pattern matching documentation and terminology |
hypnoscript-docs/docs/language-reference/operators.md |
Translated operator documentation including hypnotic synonyms |
hypnoscript-docs/docs/language-reference/operator-synonyms.md |
Translated operator synonym reference tables and examples |
hypnoscript-docs/docs/language-reference/nullish-operators.md |
Translated nullish operators documentation |
hypnoscript-docs/docs/language-reference/functions.md |
Translated function documentation and examples |
hypnoscript-docs/docs/language-reference/control-flow.md |
Translated control structure documentation |
hypnoscript-docs/docs/language-reference/assertions.md |
Translated assertions documentation |
hypnoscript-docs/docs/language-reference/_keywords-reference.md |
Translated keywords reference tables |
hypnoscript-docs/docs/intro.md |
Translated main introduction page |
hypnoscript-docs/docs/index.md |
Translated homepage content |
hypnoscript-docs/docs/getting-started/*.md |
Translated all getting started guides |
hypnoscript-docs/docs/examples/*.md |
Translated example documentation |
hypnoscript-docs/docs/error-handling/overview.md |
Translated error handling overview |
hypnoscript-docs/docs/enterprise/*.md |
Translated enterprise documentation |
hypnoscript-docs/docs/debugging/performance.md |
Translated performance debugging guide |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot address the comments, the project should be in English |
* Initial plan * Fix German/English language inconsistencies in documentation Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Update hypnoscript-docs/docs/examples/cli-workflows.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> Co-authored-by: Jonas Pfalzgraf <info@josunlp.de> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 65 out of 106 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot Fix Run ./target/release/hypnoscript-cli run hypnoscript-tests/test_rust_demo.hyp --verbose
./target/release/hypnoscript-cli run hypnoscript-tests/test_rust_demo.hyp --verbose
time ./target/release/hypnoscript-cli run hypnoscript-tests/test_rust_demo.hyp
shell: /usr/bin/bash -e {0}
env:
CARGO_INCREMENTAL: 0
CARGO_PROFILE_DEV_DEBUG: 0
CARGO_TERM_COLOR: always
RUST_BACKTRACE: short
RUSTFLAGS: -D warnings
CARGO_UNSTABLE_SPARSE_REGISTRY: true
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
CACHE_ON_FAILURE: true
/home/runner/work/_temp/e6e72914-a538-414e-91af-7494761fef54.sh: line 1: ./target/release/hypnoscript-cli: No such file or directory
Error: Process completed with exit code 127.
Run ./target/release/hypnoscript-cli version
./target/release/hypnoscript-cli version
./target/release/hypnoscript-cli builtins
./target/release/hypnoscript-cli lex hypnoscript-tests/test_rust_demo.hyp
./target/release/hypnoscript-cli parse hypnoscript-tests/test_rust_demo.hyp
./target/release/hypnoscript-cli check hypnoscript-tests/test_rust_demo.hyp
./target/release/hypnoscript-cli run hypnoscript-tests/test_rust_demo.hyp
shell: /usr/bin/bash -e {0}
env:
CARGO_INCREMENTAL: 0
CARGO_PROFILE_DEV_DEBUG: 0
CARGO_TERM_COLOR: always
RUST_BACKTRACE: short
RUSTFLAGS: -D warnings
CARGO_UNSTABLE_SPARSE_REGISTRY: true
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
CACHE_ON_FAILURE: true
/home/runner/work/_temp/18528e71-fda4-4674-a78a-8fd6eadf0632.sh: line 1: ./target/release/hypnoscript-cli: No such file or directory
Error: Process completed with exit code 127. |
* Initial plan * Fix CI workflow to use correct binary names (hypnoscript/hyp instead of hypnoscript-cli) Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Update .github/workflows/rust-build-and-test.yml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> Co-authored-by: Jonas Pfalzgraf <info@josunlp.de> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
@copilot fix the pipeline issues |
* Initial plan * Fix binary references in rust-build-and-release.yml workflow Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Update CLI command references in documentation Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> * Improve installation instructions specificity Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: JosunLP <20913954+JosunLP@users.noreply.github.com>
This pull request introduces a comprehensive, production-ready package manager to the HypnoScript CLI, providing npm/bun-like dependency management, project scaffolding, and manifest handling with hypnotic theming. The implementation includes new data structures, CLI commands, templates, thorough documentation, and test coverage, while maintaining full backwards compatibility and code quality.
Major Features:
Package Manager Core Implementation
hypnoscript-cli/src/package.rscontaining all logic for manifest handling (trance.json), lock files (trance-lock.json), dependency management, and lifecycle hooks, using hypnotic terminology for fields and commands.CLI Command Extensions
init,add,remove,install,list,validate, andrun, with support for templates and script execution. Also aliased the CLI ashypfor convenience. [1] [2] [3] [4] [5]Documentation & Examples
PACKAGE_MANAGER.mdand updatedREADME.mdwith a complete usage guide, command reference, manifest schema, and future roadmap. Included a full manifest example inexamples/trance.json. [1] [2] [3]Supporting Changes:
Dependency & Build Updates
shlexfor command parsing and registered bothhypnoscriptandhypbinaries inCargo.toml. [1] [2]Internationalization
.github/labeler.ymlandCHANGELOG.mdto English for consistency and broader accessibility. [1] [2]