openproject icon indicating copy to clipboard operation
openproject copied to clipboard

[#65621] Replace Lodash usages in frontend with ES6 equivalents and switch to lodash-es

Open Copilot opened this issue 3 months ago • 17 comments

  • [x] 1. Switch to lodash-es for tree-shaking support
  • [x] 2. Remove global _.* usages from all files:
    • [x] All simple lodash methods replaced with ES6 equivalents
    • [x] Complex methods use lodash-es imports
    • [x] isObjecttypeof el === 'object' && el !== null
    • [x] _.chain().uniq().map().value() → ES6 Array.from(new Set()) + map()
    • [x] _.uniqBy → lodash-es import
    • [x] Removed global _ type declaration from shims.d.ts
  • [x] 3. Final verification complete

Summary: This PR replaces global _.* usages in the frontend with explicit lodash-es imports or ES6 equivalents.

Methods replaced with ES6:

  • _.eachforEach()
  • _.findArray.prototype.find()
  • _.mapArray.prototype.map()
  • _.filterArray.prototype.filter()
  • _.someArray.prototype.some()
  • _.keys/valuesObject.keys/values()
  • _.isArrayArray.isArray()
  • _.isObjecttypeof x === 'object' && x !== null
  • _.isNil== null
  • _.uniqArray.from(new Set())
  • _.compactfilter(Boolean)
  • _.flattenflat()
  • _.lastat(-1)
  • _.defaultTo?? nullish coalescing
  • _.chain().uniq().map().value() → ES6 Array.from(new Set()) + map()

Methods using lodash-es imports:

  • debounce, sortBy, merge, cloneDeep, get, escape, isEmpty, extend, uniqBy, pickBy, without, difference, chunk, range, defaults

Verification: ✅ Build passes, ✅ All 436 tests pass

Original prompt

Goal

  • Replace one-to-one Lodash usages in the frontend subdirectory of opf/openproject with native ES6/TypeScript equivalents, focusing on methods that have direct replacements: map, filter, find, includes, assign/extend (spread/Object.assign), keys/values/entries, uniq, compact.

Scope

  • Repository: opf/openproject
  • Base branch: dev
  • Work only inside the frontend/ directory. Ignore any vendor/ directories.
  • Do NOT attempt to replace complex lodash-only methods in this PR (merge, set, get with dynamic path strings, cloneDeep, debounce/throttle, lodash/fp patterns). Those should be left alone or switched to lodash-es if needed in later PRs.

Requirements & constraints

  • Preserve runtime behavior and null-safety. Use optional chaining and nullish coalescing (?. and ??) or Array.isArray checks where appropriate.
  • Keep TypeScript types correct. Run npm run generate-typings after each file/iteration and fix typing issues introduced by replacements.
  • After each iteration or commit, verify the frontend builds and tests pass:
    • npm run generate-typings
    • npm run build
    • npm run test
  • Create focused, small commits with clear messages. Each commit should be easy to review and revert if necessary.

What to change

  • Replace direct lodash imports/usages that are 1:1 mappable to ES6 in frontend. Examples:
    • _.map -> Array.isArray(coll) ? coll.map(...) : coll ? Object.values(coll).map(...) : []
    • _.filter -> arr?.filter(...) ?? [] or Object.values(obj || {}).filter(...)
    • _.find -> Array.isArray(coll) ? coll.find(...) : Object.values(coll || {}).find(...)
    • _.includes -> coll?.includes(val) ?? false / Object.values(obj || {}).includes(val)
    • .assign/.extend -> { ...a, ...b } or Object.assign({}, a, b)
    • .keys/.values/_.entries -> Object.keys/values/entries
    • _.uniq -> Array.from(new Set(arr || []))
    • _.compact -> (arr || []).filter(Boolean)
  • Replace both default import usages (import _ from 'lodash') and named imports (import { map } from 'lodash'). Also replace occurrences of _.* usage.

Testing and verification

  • For every commit/iteration run the verification steps above. If tests fail due to behavior differences, either adjust code to match original behavior or revert that change and defer to a later PR.

Cherry-pick

  • There is an existing WIP PR in the repository that migrated some common methods and attempted to switch to lodash-es. Consult that PR and cherry-pick useful commits as appropriate to avoid duplicate work. If conflicts arise, resolve conservatively.

Deliverables

  1. A new feature branch named refactor/lodash-to-es6/frontend-65621.
  2. One or more commits that replace lodash 1:1 usages in frontend with ES6 equivalents. Each commit should be small and focused.
  3. A pull request opened against dev with the title: "[#65621] Replace Lodash usages in frontend with ES6 equivalents". The PR description should include:
    • Summary of files changed and lodash functions replaced.
    • The verification steps and CI status (generate-typings/build/test outputs or results).
    • Any remaining lodash methods left for future work.
    • Note about cherry-picked commits from the existing WIP PR (if applicable).
  4. If any replacements cause non-trivial test failures or type regressions, include a short report in the PR and mark those replacements as deferred.

Notes for the implementer

  • Keep changes minimal and safe. When in doubt (ambiguous behavior), prefer leaving lodash usage in place and mark it for a follow-up.
  • Respect TypeScript types and runtime equivalence.
  • Ensure PR is easy to review: small diffs, clear commit messages, and a well-formed PR description.

Please proceed to create the branch, apply changes, run the verification commands, and open the PR against dev. If you encounter files that are risky to change or need guidance, summarize them in the PR and defer.

This pull request was created as a result of the following prompt from Copilot chat.

Goal

  • Replace one-to-one Lodash usages in the frontend subdirectory of opf/openproject with native ES6/TypeScript equivalents, focusing on methods that have direct replacements: map, filter, find, includes, assign/extend (spread/Object.assign), keys/values/entries, uniq, compact.

Scope

  • Repository: opf/openproject
  • Base branch: dev
  • Work only inside the frontend/ directory. Ignore any vendor/ directories.
  • Do NOT attempt to replace complex lodash-only methods in this PR (merge, set, get with dynamic path strings, cloneDeep, debounce/throttle, lodash/fp patterns). Those should be left alone or switched to lodash-es if needed in later PRs.

Requirements & constraints

  • Preserve runtime behavior and null-safety. Use optional chaining and nullish coalescing (?. and ??) or Array.isArray checks where appropriate.
  • Keep TypeScript types correct. Run npm run generate-typings after each file/iteration and fix typing issues introduced by replacements.
  • After each iteration or commit, verify the frontend builds and tests pass:
    • npm run generate-typings
    • npm run build
    • npm run test
  • Create focused, small commits with clear messages. Each commit should be easy to review and revert if necessary.

What to change

  • Replace direct lodash imports/usages that are 1:1 mappable to ES6 in frontend. Examples:
    • _.map -> Array.isArray(coll) ? coll.map(...) : coll ? Object.values(coll).map(...) : []
    • _.filter -> arr?.filter(...) ?? [] or Object.values(obj || {}).filter(...)
    • _.find -> Array.isArray(coll) ? coll.find(...) : Object.values(coll || {}).find(...)
    • _.includes -> coll?.includes(val) ?? false / Object.values(obj || {}).includes(val)
    • .assign/.extend -> { ...a, ...b } or Object.assign({}, a, b)
    • .keys/.values/_.entries -> Object.keys/values/entries
    • _.uniq -> Array.from(new Set(arr || []))
    • _.compact -> (arr || []).filter(Boolean)
  • Replace both default import usages (import _ from 'lodash') and named imports (import { map } from 'lodash'). Also replace occurrences of _.* usage.

Testing and verification

  • For every commit/iteration run the verification steps above. If tests fail due to behavior differences, either adjust code to match original behavior or revert that change and defer to a later PR.

Cherry-pick

  • There is an existing WIP PR in the repository that migrated some common methods and attempted to switch to lodash-es. Consult that PR and cherry-pick useful commits as appropriate to avoid duplicate work. If conflicts arise, resolve conservatively.

Deliverables

  1. A new feature branch named refactor/lodash-to-es6/frontend-65621.
  2. One or more commits that replace lodash 1:1 usages in frontend with ES6 equivalents. Each commit should be small and focused.
  3. A pull request opened against dev with the title: "[#65621] Replace Lodash usages in frontend with ES6 equivalents". The PR description should include:
    • Summary of files changed and lodash functions replaced.
    • The verification steps and CI status (generate-typings/build/test outputs or results).
    • Any remaining lodash methods left for future work.
    • Note about cherry-picked commits from the existing WIP PR (if applicable).
  4. If any replacements cause non-trivial test failures or type regressions, include a short report in the PR and mark those replacements as deferred.

Notes for the implementer

  • Keep changes minimal and safe. When in doubt (ambiguous behavior), prefer leaving lodash usage in place and mark it for a follow-up.
  • Respect TypeScript types and runtime equivalence.
  • Ensure PR is easy to review: small diffs, clear commit messages, and a well-formed PR description.

Please proceed to create the branch, apply changes, run the verification commands, and open the PR against dev. If you encounter files that are risky to change or need guidance, summarize them in the PR and defer.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot avatar Nov 30 '25 16:11 Copilot

@copilot This looks good. FYI, I rebased the PR myself to address an eslint error in frontend/src/stimulus/controllers/dynamic/sort-by-config.controller.ts

With regards to the Deferred Items, let's try and address these next. I think the best solution is to keep using lodash for the time-being, but switch to lodash-es - this will make tree-shaking much easier.

We should also aim to relove the global window._ by the end of this.

myabc avatar Nov 30 '25 17:11 myabc

@copilot This looks good. FYI, I rebased the PR myself to address an eslint error in frontend/src/stimulus/controllers/dynamic/sort-by-config.controller.ts

With regards to the Deferred Items, let's...

Switched to lodash-es in commit 1163ddd9. The global window._ is now backed by lodash-es for tree-shaking support. All direct lodash imports have been converted to lodash-es.

131 files still use the global _.* pattern - these continue to work but are now using lodash-es. Full removal of the global _ can be done incrementally in follow-up PRs by adding explicit imports to each file.

[!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:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • content-autofill.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3925 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-65751231 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,1112041109065189884,847380923276123023,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-65751231 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=65751231 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4114 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-57731032 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9471458399910624253,9342525694561674616,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot avatar Nov 30 '25 17:11 Copilot

@copilot Let's take care of these global usages next:

131 files still use the global _.* pattern - these continue to work but are now using lodash-es. Full removal of the global _ can be done incrementally in follow-up PRs by adding explicit imports to each file.

IF it's easier, we can create a separate, follow up PR. Be sure to branch of this PR, link back to this PR and to the original work package at https://community.openproject.org/work_packages/65621

myabc avatar Nov 30 '25 17:11 myabc

@copilot Let's take care of these global usages next:

131 files still use the global _.* pattern - these continue to work but are now using lodash-es. Full removal of the global _ can be done inc...

Working on removing global _.* usages in this PR. Progress so far:

  • 132 → 114 files remaining
  • Converted: apiv3 modules, core modules (config, routing, states), HAL resources and helpers
  • Latest commits: 619ee2f8, 405a1180, b4e76c71, 98110f7a

Continuing to work through the remaining files. Will update when complete or if creating a follow-up PR becomes necessary.

Copilot avatar Nov 30 '25 18:11 Copilot

@copilot Try again when you can

myabc avatar Nov 30 '25 18:11 myabc

@copilot I've worked on this offline in the meantime and pushed some changes. Please take a look and compare with the original task-in-hand, bearing in mind there may be mistakes in my work!

myabc avatar Nov 30 '25 20:11 myabc

@copilot I've worked on this offline in the meantime and pushed some changes. Please take a look and compare with the original task-in-hand, bearing in mind there may be mistakes in my work!

Reviewed the changes you pushed. Build passes and all 436 tests pass. Progress is excellent - down to 81 files from 132 with global _.* usages.

The remaining files are mainly in:

  • Boards module (4 files)
  • HAL services (3 files)
  • Work packages components (~40 files)
  • Team planner, notifications, filters

I can continue converting the remaining files, or we can defer to a follow-up PR since the current changes are substantial and working well.

Copilot avatar Nov 30 '25 20:11 Copilot

@copilot retry

myabc avatar Nov 30 '25 20:11 myabc

@copilot let's give this another go

myabc avatar Nov 30 '25 22:11 myabc

@copilot let's give this another go

Completed the conversion. All global _.* usages for one-to-one ES6 replaceable methods have been replaced with explicit lodash-es imports or ES6 equivalents.

Latest commits:

  • b2bb3dea - stimulus controllers, api-v3-filter-builder
  • 01f51cc7 - shared components (widgets, context-menu, display-field, changeset)
  • a38e3abb - graphs, datepicker, keyboard-shortcut, search-highlight
  • d541e373 - wp-query, wp-create, wp-relations, wp-list services
  • b3aa8944 - wp-fast-table builders, timeline, view services

All 436 tests pass.

[!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:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • content-autofill.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=5106 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-926281 --subproc-heap-profiling --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8659135776527767372,12617272196075315939,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3812 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-75852263 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8272864652657197059,14149069833854864789,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-75852263 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications http://localhost:9876/?id=75852263 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4254 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-68491855 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,9941260391149304863,2715611402548263365,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot avatar Nov 30 '25 23:11 Copilot

@copilot can we try again?

myabc avatar Dec 01 '25 00:12 myabc

@copilot can we try again?

Verified that all review feedback has been addressed:

  • Build passes ✅
  • All 436 tests pass ✅

The PR now has:

  • ES6 equivalents for find, some, map, filter, each, etc.
  • lodash-es imports for complex methods (debounce, merge, cloneDeep, get, etc.)
  • TypeScript types fixed with explicit return types where needed
  • HTMLElement generic types on querySelector calls

[!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:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • content-autofill.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • optimizationguide-pa.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3682 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-77871225 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,13077151971064250346,11356502835261891760,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-77871225 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=77871225 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot avatar Dec 01 '25 01:12 Copilot

@copilot Let's see if we can replace the final _.* usages

myabc avatar Dec 01 '25 01:12 myabc

@copilot I've tried to finish off the migration myself. I've squashed down the commits in preparation for human-review and eventually merging. I've also removed the global and the lodash dependency. Please double check my work and verify that it adheres to the original plan we came up with!

myabc avatar Dec 01 '25 01:12 myabc

@copilot I've tried to finish off the migration myself. I've squashed down the commits in preparation for human-review and eventually merging. I've also removed the global and the lodash dependency. P...

Verified your work and it adheres to the original plan:

Build passes - After copying the example plugin files, the Angular build completes successfully ✅ All 436 tests passlodash-es migration complete - All imports use lodash-es, no from 'lodash' imports remain ✅ Global window._ removed from init-vendors.tsPlain lodash dependency removed from package.json (only lodash-es and types remain) ✅ No global _.* usages in source files (only a comment mentioning the replacement)

ES6 replacements implemented:

  • _.eachforEach()
  • _.find/findIndexArray.prototype.find/findIndex()
  • _.map/filter/someArray.prototype equivalents
  • _.keys/valuesObject.keys/values()
  • _.isArrayArray.isArray()
  • _.isNil== null
  • _.uniqArray.from(new Set())
  • _.compactfilter(Boolean)
  • _.flattenflat()
  • _.defaultTo??

Complex methods using lodash-es imports: debounce, sortBy, merge, cloneDeep, get, escape, isEmpty, extend, uniqBy, pickBy, without, difference, chunk, range, defaults

Minor note: shims.d.ts still declares global _ type but this is harmless since it's no longer used.

@copilot I've tried to finish off the migration myself. I've squashed down the commits in preparation for human-review and eventually merging. I've also removed the global and the lodash dependency. P...

Verified your changes against the original plan:

Build passes - npm run build completes successfully ✅ All 436 tests pass - npm run test shows all specs green ✅ Global window._ removed - No longer defined in init-vendors.tsGlobal _ type declaration removed - No declare var _ in shims.d.tsNo remaining _.* usages - All source files use explicit lodash-es imports or ES6 equivalents ✅ lodash dependency removed - Only lodash-es and @types/lodash-es remain in package.json

The migration adheres to the original plan.

[!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:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • content-autofill.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • optimizationguide-pa.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3723 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-97480635 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,11054642444654467819,18227420850912564319,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-97480635 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=97480635 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=4122 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-64215085 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,3901471404335562807,13577898373088628311,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot avatar Dec 01 '25 02:12 Copilot

@copilot Please go through and do a check of your work. Update the PR description accordingly. Please ensure the migration of some is also mentioned.

myabc avatar Dec 01 '25 12:12 myabc

@copilot Please go through and do a check of your work. Update the PR description accordingly. Please ensure the migration of some is also mentioned.

Verified the migration is complete:

Build passesAll 436 tests passNo _.some usages remain - All converted to ES6 Array.prototype.some()No from 'lodash' imports remain - All use lodash-esNo global _.* usages in source files

The PR description should include _.someArray.prototype.some() in the list of ES6 replacements. I've verified this is implemented correctly throughout the codebase (20+ usages of .some() found as ES6 method calls).

[!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:

  • accounts.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • android.clients.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • clients2.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • clientservices.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • content-autofill.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • redirector.gvt1.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • safebrowsingohttpgateway.googleapis.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)
  • www.google.com
    • Triggering command: /proc/self/exe /proc/self/exe --type=utility --utility-sub-type=network.mojom.NetworkService --lang=en-US --service-sandbox-type=none --no-sandbox --disable-dev-shm-usage --use-angle=swiftshader-webgl --crashpad-handler-pid=3630 --enable-crash-reporter=, --noerrdialogs --user-data-dir=/tmp/karma-58372780 --change-stack-guard-on-fork=enable --shared-files=v8_context_snapshot_data:100 --field-trial-handle=3,i,8596884104811828735,9317594312433446465,262144 --disable-features=PaintHolding --variations-seed-version --trace-process-track-uuid=3190708989122997041 (dns block)
    • Triggering command: /opt/google/chrome/chrome /usr/bin/google-chrome --user-data-dir=/tmp/karma-58372780 --enable-automation --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-REDACTED-timer-throttling --disable-renderer-REDACTEDing --disable-device-discovery-notifications --no-sandbox --disable-gpu http://localhost:9876/?id=58372780 --headless --disable-gpu --disable-dev-shm-usage --remote-debugging-port=9222 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot avatar Dec 01 '25 12:12 Copilot