Skip to content

Enhance stack management, sortable functionality, and YAML support#93

Merged
mstrhakr merged 91 commits intomainfrom
dev
Apr 24, 2026
Merged

Enhance stack management, sortable functionality, and YAML support#93
mstrhakr merged 91 commits intomainfrom
dev

Conversation

@mstrhakr
Copy link
Copy Markdown
Owner

This pull request introduces several key improvements and refactors across the codebase, focusing on plugin installation logic, Unraid version compatibility, and code organization. The most significant changes include a major refactor of the plugin installation and fallback logic for Ace editor and patch utilities, updates to default Docker Compose versions across all build and deploy scripts, and a reorganization of PHP source files for better maintainability.

Plugin installation and Unraid compatibility improvements:

  • Refactored Ace editor installation and fallback: The plugin now uses versioned <FILE> blocks to only install or download the Ace editor for pre-7.0 Unraid versions, caching the ZIP and extracting only when needed. This reduces unnecessary downloads and improves compatibility with Unraid 7.0+, which includes Ace by default. (compose.manager.plg) [1] [2]
  • Patch utility logic is now version-aware: Patch installation and removal scripts are only run for Unraid versions below 6.12, with clear messaging for users on newer versions. (compose.manager.plg)

Build and deployment script updates:

  • Updated default Docker Compose version from 5.0.2 to 5.1.2 across all build, deploy, and install scripts for consistency and access to the latest features and fixes. (build.ps1, build.sh, build_in_docker.sh, deploy.ps1, deploy.sh) [1] [2] [3] [4] [5] [6]

Source code and configuration organization:

  • Moved PHP source files from the php directory to include for better clarity and maintainability. Updated all relevant references in .page files, phpstan.neon, and phpunit.xml. [1] [2] [3] [4] [5] [6]
  • Updated stylesheet references in Compose.page to use the new sheets directory and corrected casing for consistency.

Test and development environment enhancements:

  • Overhauled VSCode test settings to support both PHPUnit and BATS via the pluginTests extension, improving test discovery and exclusion patterns, and removed legacy settings. (.vscode/settings.json) [1] [2]

Other improvements:

  • Improved the install.sh script to handle missing arguments more gracefully and relaxed error handling to avoid aborting on unset variables.

These changes collectively improve plugin robustness, compatibility with different Unraid versions, and maintainability of the codebase.

mstrhakr added 30 commits April 3, 2026 18:44
…showing Compose Down action in context menu while the stack is up/partial
Sortable stacks with lock functionality
…ase files

Align compose.manager directory layout with dynamix.docker.manager conventions:
- php/ -> include/ (matches dynamix include/ pattern)
- styles/ -> sheets/ (matches dynamix sheets/ pattern)
- All PHP files renamed to PascalCase
- All CSS files renamed to PascalCase

Path references not yet updated - next commit.
Update all require_once, include, URL, and asset references to use the
new directory names (include/ instead of php/, sheets/ instead of styles/)
and PascalCase filenames.

Files updated:
- 14 PHP source files (require_once paths)
- 4 .page files (asset hrefs and include paths)
- 1 JS file (AJAX endpoint URLs)
- 1 shell script (inline PHP paths)
- 1 CSS file (comment reference)
- 3 build/test configs (phpstan, phpunit, bootstrap)
- 19 test files (include paths and docblock comments)
- 1 framework example test (asset path)
Fix: Refactor folder structure for consistency with dynamix plugins
Enhance YAML loading with custom tags support and error handling
mstrhakr and others added 21 commits April 15, 2026 16:34
…rcase projectName instead of raw projectFolder
…gger() func for consistent logging across scripts + tests
@mstrhakr
Copy link
Copy Markdown
Owner Author

mstrhakr commented Apr 21, 2026

This will be bug fixes only from this point forward, if you notice any bugs in the beta please report them here if you can. I will be merging this into main later this week.

@mstrhakr mstrhakr merged commit d7472d7 into main Apr 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

2 participants