Add monsta_venv bundle and Windows client documentation; apply cuegui fixes (closes #5)#7
Open
Copilot wants to merge 21 commits intopipeline-mainfrom
Open
Add monsta_venv bundle and Windows client documentation; apply cuegui fixes (closes #5)#7Copilot wants to merge 21 commits intopipeline-mainfrom
Copilot wants to merge 21 commits intopipeline-mainfrom
Conversation
…ySoftwareFoundation#2064) Implement a new OOM (Out-Of-Memory) prevention module that proactively kills frames when memory usage exceeds configured thresholds, preventing system-wide OOM killer from terminating the RQD process. When memory usage exceeds `memory_oom_margin_percentage` (default 96%), the system calculates a target memory level (5% below the threshold) and selects frames to kill to reach that target safely. Frame Selection Algorithm ------------------------- Frames are sorted using a multi-criteria scoring system that balances three factors: 1. **Memory Impact (weight: 10x)** - Measures absolute memory savings: consumed_memory / total_memory_consumed - Prioritizes frames that will free the most system memory - Normalized to [0,1] range by dividing by the maximum memory impact 3. **Overboard Rate (weight: 7x)** - Measures relative excess: (consumed - limit) / limit - Targets frames most aggressively exceeding their soft limits - A frame using 10GB with a 1GB limit (900% over) has higher overboard rate than one using 60GB with a 50GB limit (20% over) - Normalized to [0,1] range by dividing by the maximum overboard rate 5. **Duration Rate (weight: 12x - highest)** - Prefers killing more recent frames: (max_duration - frame_duration) / max_duration - Minimizes wasted compute by preserving long-running frames - Inverted scale: newer frames score higher - Normalized to [0,1] range Each frame receives a composite score calculated as: score = (memory_impact × 10) + (overboard_rate × 7) + (duration_rate × 12) All metrics are normalized before weighting to ensure each factor contributes meaningfully regardless of absolute values. This prevents a frame with very high memory usage from completely dominating the score, allowing the algorithm to balance all three criteria. The algorithm sorts frames by descending score and kills them iteratively until enough memory is freed to reach the target level. This conservative approach avoids unnecessary termination while effectively preventing OOM. The weighting scheme reflects production priorities: - Duration (12x): Preserve investment in long-running frames - Memory Impact (10x): Maximize immediate memory relief - Overboard Rate (7x): Discourage limit violations Implementation includes comprehensive test coverage validating: - Threshold triggering behavior - Target memory calculation - Single and multi-frame selection - Each scoring criterion independently - Normalized scoring with edge cases - Stop-when-sufficient-memory-freed logic
The last PR should failed to version up the component it had modified
Related to AcademySoftwareFoundation#2064 , which handles killing frames but fails to log its actions.
…i Status, and Connectivity Awareness (AcademySoftwareFoundation#2061) **Link the Issue(s) this Pull Request is related to.** - AcademySoftwareFoundation#2069 - AcademySoftwareFoundation#1800 - AcademySoftwareFoundation#2054 **Summarize your change.** This PR modernizes CueNIMBY with a Qt6-based system tray, professional icons, enhanced status detection, and comprehensive documentation. **CueNIMBY Application Changes:** - Added professional icons featuring the OpenCue logo for all status states - Migrated backend from pystray to Qt6 QSystemTrayIcon for native cross-platform support - Added emoji status hints (🔒❌⚠️ 🔧) in notifications and tooltips for quick visual recognition - Implemented resilient connection: starts even when CueBot is unreachable and reconnects automatically - Enhanced status detection with distinct states: - STARTING, AVAILABLE, WORKING, NIMBY_LOCKED, HOST_LOCKED, HOST_DOWN - CUEBOT_UNREACHABLE (new), NO_HOST (new), HOST_LAGGING (new), REPAIR (new), UNKNOWN - Added intelligent menu states: options appear disabled when actions cannot be performed - New "Launch CueGUI" menu item for quick access to CueGUI (disabled when not available) - New "Open Config File" menu item to edit configuration directly from tray - Enhanced "About" dialog showing CueBot address, monitored hostname, and version - Improved notifications with helpful troubleshooting information about CueBot and RQD status - Moved config file path to `~/.config/opencue/cuenimby.json` to align with other OpenCue modules - Added CueNIMBY to CI test pipeline **Documentation Changes:** - Updated all CueNIMBY documentation with Qt6 architecture and new features - Added platform-specific screenshots (macOS and Windows) to 3 key documentation files: - `quick-start-cuenimby.md`: Setup and common issues - `cuenimby-tutorial.md`: Step-by-step configuration with visuals - `cuenimby-user-guide.md`: Menu features and troubleshooting - Created visual icon gallery showing all professional OpenCue icons across documentation - Added new developer guide: `hybrid-rqd-setup.md` with complete instructions for: - Running CueBot in Docker alongside native RQD instances - Platform-specific setup for macOS, Windows, and Linux - Port configuration to avoid Docker/native RQD conflicts - Testing CueNIMBY in realistic hybrid environments - Updated `cuenimby/README.md` with comprehensive feature list and icon reference - Updated NIMBY concepts documentation with enhanced status explanations - All documentation uses Jekyll absolute paths for proper rendering **Configuration Changes:** - Added Linux RQD configuration example: `sandbox/rqd_linux.conf` - Updated hybrid RQD setup guide with Linux support alongside macOS and Windows - Configuration files now include NIMBY settings optimized for workstation testing **Assets:** - Added 9 professional PNG icons with OpenCue logo to `cuenimby/cuenimby/icons/` - Added 17 macOS screenshots showing all status states and menu options - Added 10 Windows screenshots for cross-platform documentation coverage Co-authored-by: Kern Attila GERMAIN <5556461+KernAttila@users.noreply.github.com> Co-authored-by: Ramon Figueiredo <rfigueiredo@imageworks.com> --------- Co-authored-by: Jimmy Christensen <Lithorus@gmail.com> Co-authored-by: Ramon Figueiredo <rfigueiredo@imageworks.com>
…wareFoundation#2070) **Link the Issue(s) this Pull Request is related to.** - AcademySoftwareFoundation#2061 **Summarize your change.** Update all CueNIMBY documentation to accurately describe the working state icon as having a red dot in center rather than being blue. This better represents a "busy" state visually. Changes made across 8 documentation files: - 🔴 **Working** (`opencue-working.png`): Currently rendering frames (red dot in center) - Updated emoji from 🔵 to 🔴 in state descriptions - Changed "Blue icon" to "Icon with red dot in center" in icon galleries - Fixed "turns blue" to "shows red dot in center" in tutorials - Corrected "Checked (🟢/🔵)" to "Checked (🟢/🔴)" in user guide - Added clarification "(red dot in center)" where appropriate Updated files: - cuenimby/README.md - docs/_docs/concepts/nimby.md - docs/_docs/developer-guide/cuenimby-development.md - docs/_docs/other-guides/desktop-rendering-control.md - docs/_docs/quick-starts/quick-start-cuenimby.md - docs/_docs/reference/tools/cuenimby.md - docs/_docs/tutorials/cuenimby-tutorial.md - docs/_docs/user-guides/cuenimby-user-guide.md
…ndation#2068) Bumps [next-auth](https://github.com/nextauthjs/next-auth) from 4.24.10 to 4.24.12. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/nextauthjs/next-auth/commit/1f48cf7cbbc43517174cb47b4eb5dd402025c8b7"><code>1f48cf7</code></a> chore(release): bump version [skip ci]</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/4758a2f1ff185c9759df0c558b03fe931920d0a5"><code>4758a2f</code></a> ci: add <code>workflow_dispatch</code> for release.yml</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/d3aecfe1f150434e1cfff21c291277137266827a"><code>d3aecfe</code></a> feat: add next 16 support (<a href="https://redirect.github.com/nextauthjs/next-auth/issues/13303">#13303</a>)</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/82efcf81f218aae43683f8dd2f7c260ef69b3ece"><code>82efcf8</code></a> fix: security issue from <code>nodemailer</code> (<a href="https://redirect.github.com/nextauthjs/next-auth/issues/13304">#13304</a>)</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/798c3d59274cddc5ad22d4a68c211736f0deb191"><code>798c3d5</code></a> docs: update banner</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/02d3480f8d8405af52eaa0cdc2f8f75bb7e8b4e8"><code>02d3480</code></a> chore: remove clerk ads</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/7f88fa0ba97e7aab43c931dfe674e51748723da3"><code>7f88fa0</code></a> chore: remove sponsors</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/46e01af41fc028f22322f225f4f03c0dce069035"><code>46e01af</code></a> chore(docs): update credentials.md app router route.js filename (<a href="https://redirect.github.com/nextauthjs/next-auth/issues/13025">#13025</a>)</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/11939f2f70495c0408d0187dbfa0741fdd5916e6"><code>11939f2</code></a> feat(core): add default cache control headers for GET endpoints (<a href="https://redirect.github.com/nextauthjs/next-auth/issues/12627">#12627</a>)</li> <li><a href="https://github.com/nextauthjs/next-auth/commit/918a6ac37beb766402940db64584df407668bbea"><code>918a6ac</code></a> docs: Update FAQ with <code>allowDangerousEmailAccountLinking</code> (<a href="https://redirect.github.com/nextauthjs/next-auth/issues/12586">#12586</a>)</li> <li>Additional commits viewable in <a href="https://github.com/nextauthjs/next-auth/compare/next-auth@4.24.10...next-auth@4.24.12">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by <a href="https://www.npmjs.com/~himself_65">himself_65</a>, a new releaser for next-auth since your current version.</p> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/AcademySoftwareFoundation/OpenCue/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ramon Figueiredo <rfigueiredo@imageworks.com>
…Foundation#2071) **Link the Issue(s) this Pull Request is related to.** Fixes AcademySoftwareFoundation#2065 **Summarize your change.** This PR fixes a typo in the PyOutline installation documentation where the package name was misspelled as `opencue-pyotline` instead of `opencue-pyoutline`. **Changes made:** - Changed `opencue-pyotline` to `opencue-pyoutline` in `/docs/_docs/getting-started/installing-pycue-and-pyoutline.md` **Why this change is needed:** The current documentation shows an incorrect command that results in a package not found error when users try to install PyOutline. This prevents users from successfully setting up OpenCue components. **Testing performed:** - Verified that `pip install opencue-pyoutline` works correctly - Confirmed that `pip install opencue-pyotline` produces the expected package not found error - The change is a straightforward documentation correction with no functional code changes
AcademySoftwareFoundation#2074) Looks like the tags for openjdk has been renamed/updated. This updates the cuebot image to use `openjdk:18-ea-18-slim-bullseye` instead of `openjdk:18-slim-bullseye`
**Summary** Clean up pycue dependencies. **Changes** - Remove six, which is now unused (fully Python 3). - Unpin PyYAML and constrain it to a minimal version of 6.0.1 instead of pinning it. **Rationale** - Six: It pollutes dependency resolution and is no longer needed (as per AcademySoftwareFoundation#1723). - PyYAML: Pinning dependencies (==) can cause conflicts in complex client environments that rely on many packages. Using a minimal version constraint (>=) ensures compatibility while allowing flexible dependency resolution across projects. **Side note** Future: Not modified, as it is a stable package with infrequent changes. See [PyPI release history](https://pypi.org/project/future/#history) for reference.
…ySoftwareFoundation#2076) **Summary** Add the possibility to set optional env vars to connect to the db. **Changes** In the `opencue.properties` file, add 3 new environment variables to simplify the deployment: `CUEBOT_DB_URL`: URL of the Postgres database. `CUEBOT_DB_USER`: the username to use to connect to the Postgres database `CUEBOT_DB_PASSWORD`: the password to use to connect to the Postgres database Those environment variables are optional. Default behavior stays unchanged. **Why** Streamline custom config of cuebot and db setup on client side. **Feedback** Any documentation you would recommend updating?
…tor (AcademySoftwareFoundation#2079) **Link the Issue(s) this Pull Request is related to.** - AcademySoftwareFoundation#2078 **Summarize your change.** When gRPC connections are interrupted or reset by the network/load balancer, CueGUI would freeze and display "rpcObjects is None" errors, requiring users to restart the application. This change adds graceful error handling to _filterLayersUpdate() and _frameRangeSelectionFilterUpdate() to catch grpc.RpcError exceptions and allow the UI to continue functioning. Changes: - Import grpc module in FrameMonitor.py - Wrap getLayers() calls in try/except blocks - Log appropriate warnings for connection interruptions - Return empty lists on failure to allow graceful degradation - UI remains responsive and auto-recovers when connection is restored This follows the same error handling pattern already used in FrameMonitorTree._getUpdate() and _getUpdateChanged().
…#2080) Bumps [glob](https://github.com/isaacs/node-glob) from 10.4.5 to 10.5.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/isaacs/node-glob/commit/56774ef73b495eb0b17cdd0f42921f5ef62297c1"><code>56774ef</code></a> 10.5.0</li> <li><a href="https://github.com/isaacs/node-glob/commit/1e4e297342a09f2aa0ced87fcd4a70ddc325d75f"><code>1e4e297</code></a> bin: Do not expose filenames to shell expansion</li> <li>See full diff in <a href="https://github.com/isaacs/node-glob/compare/v10.4.5...v10.5.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/AcademySoftwareFoundation/OpenCue/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ramon Figueiredo <rfigueiredo@imageworks.com>
Bumps and [js-yaml](https://github.com/nodeca/js-yaml). These dependencies needed to be updated together. Updates `js-yaml` from 3.14.1 to 3.14.2 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md">js-yaml's changelog</a>.</em></p> <blockquote> <h2>[3.14.2] - 2025-11-15</h2> <h3>Security</h3> <ul> <li>Backported v4.1.1 fix to v3</li> </ul> <h2>[4.1.1] - 2025-11-12</h2> <h3>Security</h3> <ul> <li>Fix prototype pollution issue in yaml merge (<<) operator.</li> </ul> <h2>[4.1.0] - 2021-04-15</h2> <h3>Added</h3> <ul> <li>Types are now exported as <code>yaml.types.XXX</code>.</li> <li>Every type now has <code>options</code> property with original arguments kept as they were (see <code>yaml.types.int.options</code> as an example).</li> </ul> <h3>Changed</h3> <ul> <li><code>Schema.extend()</code> now keeps old type order in case of conflicts (e.g. Schema.extend([ a, b, c ]).extend([ b, a, d ]) is now ordered as <code>abcd</code> instead of <code>cbad</code>).</li> </ul> <h2>[4.0.0] - 2021-01-03</h2> <h3>Changed</h3> <ul> <li>Check <a href="https://github.com/nodeca/js-yaml/blob/master/migrate_v3_to_v4.md">migration guide</a> to see details for all breaking changes.</li> <li>Breaking: "unsafe" tags <code>!!js/function</code>, <code>!!js/regexp</code>, <code>!!js/undefined</code> are moved to <a href="https://github.com/nodeca/js-yaml-js-types">js-yaml-js-types</a> package.</li> <li>Breaking: removed <code>safe*</code> functions. Use <code>load</code>, <code>loadAll</code>, <code>dump</code> instead which are all now safe by default.</li> <li><code>yaml.DEFAULT_SAFE_SCHEMA</code> and <code>yaml.DEFAULT_FULL_SCHEMA</code> are removed, use <code>yaml.DEFAULT_SCHEMA</code> instead.</li> <li><code>yaml.Schema.create(schema, tags)</code> is removed, use <code>schema.extend(tags)</code> instead.</li> <li><code>!!binary</code> now always mapped to <code>Uint8Array</code> on load.</li> <li>Reduced nesting of <code>/lib</code> folder.</li> <li>Parse numbers according to YAML 1.2 instead of YAML 1.1 (<code>01234</code> is now decimal, <code>0o1234</code> is octal, <code>1:23</code> is parsed as string instead of base60).</li> <li><code>dump()</code> no longer quotes <code>:</code>, <code>[</code>, <code>]</code>, <code>(</code>, <code>)</code> except when necessary, <a href="https://redirect.github.com/nodeca/js-yaml/issues/470">#470</a>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/557">#557</a>.</li> <li>Line and column in exceptions are now formatted as <code>(X:Y)</code> instead of <code>at line X, column Y</code> (also present in compact format), <a href="https://redirect.github.com/nodeca/js-yaml/issues/332">#332</a>.</li> <li>Code snippet created in exceptions now contains multiple lines with line numbers.</li> <li><code>dump()</code> now serializes <code>undefined</code> as <code>null</code> in collections and removes keys with <code>undefined</code> in mappings, <a href="https://redirect.github.com/nodeca/js-yaml/issues/571">#571</a>.</li> <li><code>dump()</code> with <code>skipInvalid=true</code> now serializes invalid items in collections as null.</li> <li>Custom tags starting with <code>!</code> are now dumped as <code>!tag</code> instead of <code>!<!tag></code>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/576">#576</a>.</li> <li>Custom tags starting with <code>tag:yaml.org,2002:</code> are now shorthanded using <code>!!</code>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/258">#258</a>.</li> </ul> <h3>Added</h3> <ul> <li>Added <code>.mjs</code> (es modules) support.</li> <li>Added <code>quotingType</code> and <code>forceQuotes</code> options for dumper to configure string literal style, <a href="https://redirect.github.com/nodeca/js-yaml/issues/290">#290</a>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/529">#529</a>.</li> <li>Added <code>styles: { '!!null': 'empty' }</code> option for dumper (serializes <code>{ foo: null }</code> as "<code>foo: </code>"), <a href="https://redirect.github.com/nodeca/js-yaml/issues/570">#570</a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/nodeca/js-yaml/commit/9963d366dfbde0c69722452bcd40b41e7e4160a0"><code>9963d36</code></a> 3.14.2 released</li> <li><a href="https://github.com/nodeca/js-yaml/commit/10d3c8e70a6888543f5cdb656bb39f73e0ea77c1"><code>10d3c8e</code></a> dist rebuild</li> <li><a href="https://github.com/nodeca/js-yaml/commit/5278870a17454fe8621dbd8c445c412529525266"><code>5278870</code></a> fix prototype pollution in merge (<<) (<a href="https://redirect.github.com/nodeca/js-yaml/issues/731">#731</a>)</li> <li>See full diff in <a href="https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2">compare view</a></li> </ul> </details> <br /> Updates `js-yaml` from 4.1.0 to 4.1.1 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md">js-yaml's changelog</a>.</em></p> <blockquote> <h2>[3.14.2] - 2025-11-15</h2> <h3>Security</h3> <ul> <li>Backported v4.1.1 fix to v3</li> </ul> <h2>[4.1.1] - 2025-11-12</h2> <h3>Security</h3> <ul> <li>Fix prototype pollution issue in yaml merge (<<) operator.</li> </ul> <h2>[4.1.0] - 2021-04-15</h2> <h3>Added</h3> <ul> <li>Types are now exported as <code>yaml.types.XXX</code>.</li> <li>Every type now has <code>options</code> property with original arguments kept as they were (see <code>yaml.types.int.options</code> as an example).</li> </ul> <h3>Changed</h3> <ul> <li><code>Schema.extend()</code> now keeps old type order in case of conflicts (e.g. Schema.extend([ a, b, c ]).extend([ b, a, d ]) is now ordered as <code>abcd</code> instead of <code>cbad</code>).</li> </ul> <h2>[4.0.0] - 2021-01-03</h2> <h3>Changed</h3> <ul> <li>Check <a href="https://github.com/nodeca/js-yaml/blob/master/migrate_v3_to_v4.md">migration guide</a> to see details for all breaking changes.</li> <li>Breaking: "unsafe" tags <code>!!js/function</code>, <code>!!js/regexp</code>, <code>!!js/undefined</code> are moved to <a href="https://github.com/nodeca/js-yaml-js-types">js-yaml-js-types</a> package.</li> <li>Breaking: removed <code>safe*</code> functions. Use <code>load</code>, <code>loadAll</code>, <code>dump</code> instead which are all now safe by default.</li> <li><code>yaml.DEFAULT_SAFE_SCHEMA</code> and <code>yaml.DEFAULT_FULL_SCHEMA</code> are removed, use <code>yaml.DEFAULT_SCHEMA</code> instead.</li> <li><code>yaml.Schema.create(schema, tags)</code> is removed, use <code>schema.extend(tags)</code> instead.</li> <li><code>!!binary</code> now always mapped to <code>Uint8Array</code> on load.</li> <li>Reduced nesting of <code>/lib</code> folder.</li> <li>Parse numbers according to YAML 1.2 instead of YAML 1.1 (<code>01234</code> is now decimal, <code>0o1234</code> is octal, <code>1:23</code> is parsed as string instead of base60).</li> <li><code>dump()</code> no longer quotes <code>:</code>, <code>[</code>, <code>]</code>, <code>(</code>, <code>)</code> except when necessary, <a href="https://redirect.github.com/nodeca/js-yaml/issues/470">#470</a>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/557">#557</a>.</li> <li>Line and column in exceptions are now formatted as <code>(X:Y)</code> instead of <code>at line X, column Y</code> (also present in compact format), <a href="https://redirect.github.com/nodeca/js-yaml/issues/332">#332</a>.</li> <li>Code snippet created in exceptions now contains multiple lines with line numbers.</li> <li><code>dump()</code> now serializes <code>undefined</code> as <code>null</code> in collections and removes keys with <code>undefined</code> in mappings, <a href="https://redirect.github.com/nodeca/js-yaml/issues/571">#571</a>.</li> <li><code>dump()</code> with <code>skipInvalid=true</code> now serializes invalid items in collections as null.</li> <li>Custom tags starting with <code>!</code> are now dumped as <code>!tag</code> instead of <code>!<!tag></code>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/576">#576</a>.</li> <li>Custom tags starting with <code>tag:yaml.org,2002:</code> are now shorthanded using <code>!!</code>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/258">#258</a>.</li> </ul> <h3>Added</h3> <ul> <li>Added <code>.mjs</code> (es modules) support.</li> <li>Added <code>quotingType</code> and <code>forceQuotes</code> options for dumper to configure string literal style, <a href="https://redirect.github.com/nodeca/js-yaml/issues/290">#290</a>, <a href="https://redirect.github.com/nodeca/js-yaml/issues/529">#529</a>.</li> <li>Added <code>styles: { '!!null': 'empty' }</code> option for dumper (serializes <code>{ foo: null }</code> as "<code>foo: </code>"), <a href="https://redirect.github.com/nodeca/js-yaml/issues/570">#570</a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/nodeca/js-yaml/commit/9963d366dfbde0c69722452bcd40b41e7e4160a0"><code>9963d36</code></a> 3.14.2 released</li> <li><a href="https://github.com/nodeca/js-yaml/commit/10d3c8e70a6888543f5cdb656bb39f73e0ea77c1"><code>10d3c8e</code></a> dist rebuild</li> <li><a href="https://github.com/nodeca/js-yaml/commit/5278870a17454fe8621dbd8c445c412529525266"><code>5278870</code></a> fix prototype pollution in merge (<<) (<a href="https://redirect.github.com/nodeca/js-yaml/issues/731">#731</a>)</li> <li>See full diff in <a href="https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/AcademySoftwareFoundation/OpenCue/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ramon Figueiredo <rfigueiredo@imageworks.com>
**Summary.** Surface cleanup and typing annotation of the layer module. **Changes** - remove spotted python-2 artifacts (objects, with_metaclass, super with args) - use super() when possible - use f-string when meaningful - add typing annotations when non ambiguous - explicit a bit more what parameters are actually hidden behind Layer object kwargs - Correct typo and grammar in docstrings and comments - Use Literal to annotate Layer types (Render, Util, Post) - Add Layer string and repr representation **Rational** - Type annotations: The main goal is to enable better auto-completion when outlining layers. Prior to that PR, it is very difficult to know in advance the name and type of the parameters accepted by a Layer object. - Literal for LAYER_TYPES constant values: We can now benefit of the auto-completion to know which types exist as static type checkers now know about them - The rest is mostly house-cleaning to keep up, especially since we dropped python2.
…entation for linux machine create build script
- Import grpc module for connection error handling - Wrap getLayers() calls with try-except blocks - Gracefully handle gRPC CANCELLED and UNAVAILABLE errors - Prevents CueGUI freeze on network interruptions - Based on upstream OpenCue PR AcademySoftwareFoundation#2079 and AcademySoftwareFoundation#2042
- Comment out dynamic version from git for proto, pycue, pyoutline - Use static version 1.13.8 to support deployment without git - Add monsta_venv portable deployment package metadata - Add root requirements.txt for deployment dependencies Enables deployment on machines without git installed
Add docs/Windows.md with step-by-step instructions for deploying OpenCue client components on Windows using the monsta_venv portable Python bundle. Documentation covers: - Two-step deployment flow (deploy_opencue_windows.ps1 then start_opencue_env.ps1) - Prerequisites and configuration - Troubleshooting common issues - Verification steps Addresses issue #5 (Windows client components require Python 3.9 environment)
Copilot
AI
changed the title
[WIP] Update Windows client components for Python 3.9 environment
Add monsta_venv bundle and Windows client documentation; apply cuegui fixes (closes #5)
Nov 27, 2025
Owner
|
@copilot merge into pipeline-main not master |
Copilot stopped work on behalf of
ddlite92 due to an error
November 27, 2025 01:48
Owner
|
@copilot merge into pipeline-main not master |
Author
I'm unable to change the base branch of an existing PR through my available tools. You can manually change the base branch by clicking "Edit" next to the PR title on GitHub, then selecting |
ddlite92
approved these changes
Nov 27, 2025
Owner
ddlite92
left a comment
There was a problem hiding this comment.
To deploy with the same fixes to another 2 computers.
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.
Fixes #5
Summarize your change.
Adds Windows deployment support with portable Python 3.9 environment bundle and documentation. Addresses the Python 3.9 requirement for Windows client components.
docs/Windows.md- Two-step deployment flow:deploy_opencue_windows.ps1- environment setupstart_opencue_env.ps1- launch applicationsmonsta_venv/- Portable Python 3.9 bundle with pre-installed dependencies (PySide6, gRPC, pycue, pyoutline, cuegui, cuesubmit)Static version pinning (commit
56ad287) - Uses static version1.13.8instead of dynamic git-based versioning, enabling deployment on machines without git. Also fixes IPv6 binding.CueGUI improvements - UI fixes and gRPC error handling for connection interruptions
Blender plugin - OpenCue farm submission integration for Blender
README.md unchanged from master as requested.
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://api.github.com//advisories/home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js(http block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
This pull request was created as a result of the following prompt from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.