Compare commits

..

80 Commits

Author SHA1 Message Date
github-actions[bot]
42ee41d218 chore: upgrade PyPi deps (#1922)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-06-02 05:14:49 -04:00
Ross Scroggs
d8f0666e70 Added writerwithoutprivateaccess to <CalendarACLRole>
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
2026-06-01 16:09:06 -07:00
Ross Scroggs
3d15d2a820 Added writerwithoutprivateaccess to <CalendarACLRole> 2026-06-01 14:58:12 -07:00
Ross Scroggs
0c593b5809 Add new <CrOSFieldName>
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-06-01 11:59:32 -07:00
Ross Scroggs
d76ef999c5 Add new <CrOSFieldName> 2026-06-01 11:22:14 -07:00
Ross Scroggs
ddaad4d655 Add new <CrOSFieldName>s 2026-06-01 09:26:16 -07:00
Ross Scroggs
36a1bdc56b Update GamUpdates.md
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-29 19:49:25 -07:00
Ross Scroggs
089a5994aa Merge branch 'main' of https://github.com/GAM-team/GAM 2026-05-29 19:44:55 -07:00
Ross Scroggs
3e9b46b650 Update gam print crostelemetry 2026-05-29 19:44:49 -07:00
github-actions[bot]
7ca3b4d7da chore: upgrade PyPi deps (#1921)
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-29 22:19:35 -04:00
Ross Scroggs
22d70ca2c3 Update gam print crostelemetry 2026-05-29 18:32:49 -07:00
Ross Scroggs
b3acdf5955 Update Cloud-Identity-Devices.md
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-29 10:25:39 -07:00
Ross Scroggs
c13a5215fe Update Other-Resources.md
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
2026-05-28 08:28:04 -07:00
Ross Scroggs
45750b591a Update Users-Chat.md
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
2026-05-27 13:06:33 -07:00
Ross Scroggs
c76f1b2128 Update Users-Chat.md 2026-05-27 13:04:46 -07:00
Ross Scroggs
e85e7f6868 Update Command-Line-Parsing.md 2026-05-27 12:53:56 -07:00
Ross Scroggs
055c74ed2e chat message searching, user attributes, license cleanup 4ba9385c 2026-05-27 12:24:10 -07:00
Ross Scroggs
4ba9385c23 chat message searching, user attributes, license cleanup
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-27 11:15:31 -07:00
Jay Lee
9d8442c7ad It's CIF, not CI
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-26 16:16:48 +00:00
Jay Lee
cc19878ba4 Merge branch 'main' of https://github.com/GAM-team/GAM 2026-05-26 16:15:09 +00:00
Jay Lee
23ed20a298 user suspend/archive time support. #1920 2026-05-26 16:15:03 +00:00
Jay Lee
5b32bc31c7 actions: rebuild for Python 3.14.5
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-23 19:02:09 -04:00
Ross Scroggs
e1260dbd95 Updated/fixed gam <UserTypeEntity> forward message|thread
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-22 17:54:00 -07:00
Ross Scroggs
ea41edbfcb Updated/fixed gam <UserTypeEntity> forward message|thread
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2026-05-22 16:11:28 -07:00
Ross Scroggs
869eb3a0c2 Updated/fixed gam <UserTypeEntity> forward message|thread 2026-05-22 15:59:35 -07:00
Ross Scroggs
61735701b3 Fixed bug in gam <UserTypeEntity> print filelist that caused a trap. 2026-05-22 10:29:44 -07:00
Ross Scroggs
c60ef582be Fixed bug in gam <UserTypeEntity> print filelist that caused a trap. 2026-05-22 09:29:52 -07:00
github-actions[bot]
cd8c43a0cc chore: upgrade PyPi deps (#1919)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-22 02:06:13 -04:00
github-actions[bot]
7582c42eff chore: upgrade PyPi deps (#1918)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-21 00:17:04 -04:00
Ross Scroggs
d9a75af87c Fixed bug and formatting issues in gam info device <DeviceEntity>.
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
2026-05-20 11:55:52 -07:00
Ross Scroggs
6c443fa0c6 Fixed bug and formatting issues in gam info device <DeviceEntity>. 2026-05-20 11:10:05 -07:00
github-actions[bot]
b6a9229a67 chore: upgrade PyPi deps (#1917)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-19 01:27:08 -04:00
Ross Scroggs
84175ba80d Improve device query validation 2026-05-18 19:01:57 -07:00
Ross Scroggs
56c2b77f25 Improve device query validation 2026-05-18 17:38:49 -07:00
Ross Scroggs
dfe01e5272 Validate device queries 2026-05-18 16:56:56 -07:00
Jay Lee
e25c302616 Uncomment artifact archiving step in build workflow 2026-05-18 19:16:05 -04:00
Ross Scroggs
1ca5b1a610 Validate device queries
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-18 15:07:12 -07:00
Ross Scroggs
b9c81e2e24 Update Domains.md 2026-05-18 07:26:20 -07:00
Ross Scroggs
9766fa42e7 Update ChromeOS-Devices.md
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2026-05-16 17:51:29 -07:00
Ross Scroggs
7bd150e5bf Added option max_to_deprov <Integer> to gam update cros <CrOSEntity> action
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Daily Dependency Pinning (2-Week Buffer) / pin-deps (push) Has been cancelled
2026-05-15 22:59:23 -07:00
Ross Scroggs
063e0876b9 Merge branch 'main' of https://github.com/GAM-team/GAM
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
2026-05-15 16:53:01 -07:00
github-actions[bot]
4743d12ea8 [no ci] chore: upgrade PyPi deps (#1915)
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-15 19:51:56 -04:00
Ross Scroggs
ad548cbe33 Merge branch 'main' of https://github.com/GAM-team/GAM 2026-05-15 16:51:44 -07:00
Ross Scroggs
bb9d5b3cdc Added option max_to_deprov <Integer> to gam update cros <CrOSEntity> action <CrOSAction> 2026-05-15 16:51:40 -07:00
Jay Lee
ee3bb42d19 [no ci] Enhance dependency management in upgrade_deps workflow
Added support for parsing TOML files using tomllib and updated dependency handling logic to include optional and development dependencies.
2026-05-15 19:49:32 -04:00
Jay Lee
7e8042a2f8 Add daily workflow for dependency pinning
This workflow automates the process of checking and pinning Python dependencies to stable versions that are at least two weeks old, creating a pull request with the updates.
2026-05-15 19:39:14 -04:00
Jay Lee
5ed0b9ffd2 [no ci] Delete src/tools/apply_overrides.py 2026-05-15 19:28:49 -04:00
Jay Lee
db2a37f358 [no ci ] Remove uv tool override-dependencies section
Removed uv tool configuration for overriding dependencies.
2026-05-15 19:20:20 -04:00
Jay Lee
77ebeddaac Delete uv.lock 2026-05-15 19:19:06 -04:00
Jay Lee
f00e7ecdbb Delete .github/workflows/upgrade-deps.yml 2026-05-15 19:17:11 -04:00
Ross Scroggs
f75d7d78f6 Merge branch 'main' of https://github.com/GAM-team/GAM 2026-05-15 15:42:53 -07:00
Ross Scroggs
75929117aa Update Users-Drive-Copy-Move.md 2026-05-15 15:42:50 -07:00
Jay Lee
a06348c1c5 actions: revert uv usage for 2 week dep delay
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Quarantined Dependency Upgrade / upgrade-dependencies (push) Has been cancelled
Replaced 'uv' with 'pip' for package installations in the build workflow.
2026-05-15 16:19:18 -04:00
Ross Scroggs
425286482f Added new matchfield option for events
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Quarantined Dependency Upgrade / upgrade-dependencies (push) Has been cancelled
2026-05-13 09:55:50 -07:00
johlan456
a162cf870b fix: use correct uv override-dependencies key in pyproject.toml (#1912)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Quarantined Dependency Upgrade / upgrade-dependencies (push) Has been cancelled
The `apply_overrides.py` script and the resulting `[tool.uv]` block in
`pyproject.toml` used the key name `overrides`, but uv expects
`override-dependencies`. With the wrong key, uv prints a warning and
silently ignores the entire `[tool.uv]` block, so dependency overrides
specified in `dep-overrides.txt` have no effect on resolution.

Rename `overrides` -> `override-dependencies` in both the script and
the current pyproject.toml entry so future override entries written by
the upgrade-deps workflow take effect.

Reference: https://docs.astral.sh/uv/reference/settings/#override-dependencies
2026-05-12 11:19:15 -04:00
github-actions[bot]
28a1048f57 chore: dependency upgrades (2026-04-28) (#1911)
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-12 07:50:35 -04:00
dependabot[bot]
def54f1513 Bump urllib3 from 2.6.3 to 2.7.0 in the uv group across 1 directory (#1910)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Quarantined Dependency Upgrade / upgrade-dependencies (push) Has been cancelled
Bumps the uv group with 1 update in the / directory: [urllib3](https://github.com/urllib3/urllib3).


Updates `urllib3` from 2.6.3 to 2.7.0
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.7.0
  dependency-type: indirect
  dependency-group: uv
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-11 16:13:56 -04:00
Jay Lee
4d86d44ec1 [no ci] Add force option to upgrade-deps workflow 2026-05-11 16:05:46 -04:00
Jay Lee
2c0136834b [no ci] Update command to run apply_overrides.py 2026-05-11 16:01:24 -04:00
Jay Lee
9cca97b12e Correct indentation for virtual environment setup
Fix indentation for the 'uv venv' command in the workflow.
2026-05-11 15:58:57 -04:00
Jay Lee
f69d0b1427 [no ci ]Change installation command for tomli-w to pip 2026-05-11 15:55:23 -04:00
Jay Lee
abd39176d8 Enhance upgrade workflow with tomli-w installation
Added installation of tomli-w and updated pyproject.toml overrides.
2026-05-11 15:50:16 -04:00
Jay Lee
782eee45cc [no ci] Add dependency overrides for urllib3
Add dependency overrides for urllib3 to address vulnerabilities.
2026-05-11 15:39:50 -04:00
Jay Lee
6450fb0c3d [no ci] Add script to manage dependency overrides
This script reads a 'dep-overrides.txt' file to manage dependency overrides based on expiration dates, updating the 'pyproject.toml' file accordingly.
2026-05-11 15:37:27 -04:00
Jay Lee
523bd45fa0 Use Python for dependency cutoff date calculation
Some checks failed
Quarantined Dependency Upgrade / upgrade-dependencies (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Replaced hardcoded date calculation with a Python script to determine the cutoff date for dependencies. This change improves compatibility across different operating systems.
2026-05-08 16:15:35 -04:00
Jay Lee
9e6122769a Rename virtual environment to .venv in build workflow 2026-05-08 16:02:12 -04:00
Jay Lee
9dc427c47b Update build.yml 2026-05-08 15:56:22 -04:00
Jay Lee
023c81de93 Add pip install for 'uv' in build.yml
Install the 'uv' package using pip in the build workflow.
2026-05-08 15:51:00 -04:00
Jay Lee
a570e1f300 actions: use uv to allow 14 day dep delay per #1907
Updated cache key and modified pip installation commands to use uv for version control. Commented out the upgrade commands for pip and related packages.
2026-05-08 15:43:29 -04:00
Jay Lee
86881b58f4 Rename workflow and enhance PR message
Updates the workflow name and modifies the pull request body for clarity.
2026-05-08 15:19:55 -04:00
github-actions[bot]
1b8793df9b chore: lockfile dependency upgrade (2026-04-24) (#1909)
Co-authored-by: jay0lee <4623536+jay0lee@users.noreply.github.com>
2026-05-08 15:14:27 -04:00
Jay Lee
dfdc03ba28 actions: Add dependency upgrade workflow
This workflow automates the process of upgrading dependencies by generating a quarantined lockfile and creating a pull request with the updated lockfile. It runs daily and only includes releases older than 14 days.
2026-05-08 15:11:16 -04:00
Ross Scroggs
0cafde359e Added include_suspended_zeros to gam print vaultcounts
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
2026-05-06 09:38:19 -07:00
Ross Scroggs
9b2ca0dedd Added include_suspended_zeros to gam print vaultcounts
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
2026-05-06 08:35:10 -07:00
Ross Scroggs
741a2e3b79 - 7.43.03 Added option parentpathonly [<Boolean>] to the following commands that causes GAM to display only the parent folder names when displaying the path to a file. `` gam <UserTypeEntity> info drivefile ... filepath|fullpath gam <UserTypeEntity> show fileinfo ... filepath|fullpath gam <UserTypeEntity> print|show filepath gam <UserTypeEntity> print filelist ... filepath|fullpath `` - See [Update History](https://github.com/GAM-team/GAM/wiki/GamUpdates)
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
2026-05-04 11:40:47 -07:00
Ross Scroggs
760963889d Added option parentpathonly [<Boolean>] 2026-05-04 09:50:25 -07:00
Ross Scroggs
b0b572a5b2 Update Authorization.md
Some checks failed
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
Check for Google Root CA Updates / check-certs (push) Has been cancelled
Push wiki / pushwiki (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2026-05-01 07:46:17 -07:00
Ross Scroggs
ae9e329169 Update Authorization.md 2026-05-01 07:44:13 -07:00
Ross Scroggs
d997900955 Wiki updates 2026-05-01 07:41:26 -07:00
Ross Scroggs
699d95d7d7 Added option maxactivities <Number> to `gam <UserTypeEntity> print driveactivity
Some checks failed
Push wiki / pushwiki (push) Has been cancelled
Build and test GAM / build (false, build, 1, Build Intel Ubuntu Jammy, ubuntu-22.04) (push) Has been cancelled
Build and test GAM / build (false, build, 10, Build x86_64 macOS 15, macos-15-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 11, Build x86_64 macOS 26, macos-26-intel) (push) Has been cancelled
Build and test GAM / build (false, build, 12, Build Arm MacOS 26, macos-26) (push) Has been cancelled
Build and test GAM / build (false, build, 13, Build Intel Windows, windows-2025-vs2026) (push) Has been cancelled
Build and test GAM / build (false, build, 14, Build Arm Windows, windows-11-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 2, Build Intel Ubuntu Noble, ubuntu-24.04) (push) Has been cancelled
Build and test GAM / build (false, build, 3, Build Arm Ubuntu Noble, ubuntu-24.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 4, Build Arm Ubuntu Jammy, ubuntu-22.04-arm) (push) Has been cancelled
Build and test GAM / build (false, build, 5, Build Intel StaticX Legacy, ubuntu-22.04, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 6, Build Arm StaticX Legacy, ubuntu-22.04-arm, yes) (push) Has been cancelled
Build and test GAM / build (false, build, 8, Build Arm MacOS 14, macos-14) (push) Has been cancelled
Build and test GAM / build (false, build, 9, Build Arm MacOS 15, macos-15) (push) Has been cancelled
Build and test GAM / build (false, test, 15, Test Python 3.10, ubuntu-24.04, 3.10) (push) Has been cancelled
Build and test GAM / build (false, test, 16, Test Python 3.11, ubuntu-24.04, 3.11) (push) Has been cancelled
Build and test GAM / build (false, test, 17, Test Python 3.12, ubuntu-24.04, 3.12) (push) Has been cancelled
Build and test GAM / build (false, test, 18, Test Python 3.13, ubuntu-24.04, 3.13) (push) Has been cancelled
Build and test GAM / build (false, test, 19, Test Python 3.15-dev, ubuntu-24.04, 3.15-dev) (push) Has been cancelled
Build and test GAM / build (true, test, 20, Test Python 3.14 freethread, ubuntu-24.04, 3.14) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Build and test GAM / publish (push) Has been cancelled
2026-04-30 19:30:17 -07:00
32 changed files with 1183 additions and 290 deletions

View File

@@ -165,7 +165,7 @@ jobs:
with:
path: |
cache.tar.xz
key: gam-${{ matrix.jid }}-20260416
key: gam-${{ matrix.jid }}-20260523
- name: Untar Cache archive
if: matrix.goal == 'build' && steps.cache-python-ssl.outputs.cache-hit == 'true'
@@ -199,7 +199,10 @@ jobs:
*)
echo "arch=${RUNNER_ARCH}" >> $GITHUB_ENV
;;
esac
esac
# calculate with python because date on MacOS is just stupid
DEPS_CUTOFF=$(python3 -c "from datetime import datetime, timedelta, timezone; print((datetime.now(timezone.utc) - timedelta(days=14)).strftime('%Y-%m-%dT00:00:00Z'))")
echo "DEPS_CUTOFF=${DEPS_CUTOFF}" >> $GITHUB_ENV
echo "JID=${JID}" >> $GITHUB_ENV
echo "freethreaded=${freethreaded}" >> $GITHUB_ENV
if "$freethreaded"; then
@@ -506,19 +509,19 @@ jobs:
"${PYTHON}" -VV
"${PYTHON}" -c "import ssl; print(f'Using {ssl.OPENSSL_VERSION}')"
- name: Create and use Python venv
- name: Create and use Python .venv
run: |
cd "$GITHUB_WORKSPACE"
curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py
"$PYTHON" get-pip.py
"$PYTHON" -m venv venv
"$PYTHON" -m venv .venv
if [[ "$RUNNER_OS" == "Windows" ]]; then
# pyscard seems to build outside venv but not in it.
# build it so it's cached.
"$PYTHON" -m pip install --upgrade --force-reinstall pyscard
export PYTHON="${GITHUB_WORKSPACE}/venv/scripts/python.exe"
"$PYTHON" -m pip install --upgrade pyscard
export PYTHON="${GITHUB_WORKSPACE}/.venv/scripts/python.exe"
else
export PYTHON="${GITHUB_WORKSPACE}/venv/bin/python3"
export PYTHON="${GITHUB_WORKSPACE}/.venv/bin/python3"
fi
echo "PYTHON=${PYTHON}" >> $GITHUB_ENV
if [[ "$ACTIONS_GOAL" == "test" ]]; then
@@ -526,31 +529,22 @@ jobs:
echo "gam=${gam}" >> $GITHUB_ENV
fi
- name: Upgrade pip, wheel, etc
run: |
curl $curl_retry -O https://bootstrap.pypa.io/get-pip.py
"$PYTHON" get-pip.py
"$PYTHON" -m pip install --upgrade pip
"$PYTHON" -m pip install --upgrade wheel
"$PYTHON" -m pip install --upgrade setuptools
"$PYTHON" -m pip install --upgrade importlib-metadata
"$PYTHON" -m pip install --upgrade setuptools-scm
"$PYTHON" -m pip install --upgrade packaging
"$PYTHON" -m pip list
#- name: Upgrade pip, wheel, etc
# run: |
# curl $curl_retry -O https://bootstrap.pypa.io/get-pip.py
# "$PYTHON" get-pip.py
# "$PYTHON" -m pip install --upgrade pip
# "$PYTHON" -m pip install --upgrade wheel
# "$PYTHON" -m pip install --upgrade setuptools
# "$PYTHON" -m pip install --upgrade importlib-metadata
# "$PYTHON" -m pip install --upgrade setuptools-scm
# "$PYTHON" -m pip install --upgrade packaging
# "$PYTHON" -m pip list
- name: Install pip requirements
env:
GH_TOKEN: ${{ github.token }}
run: |
echo "before anything..."
"$PYTHON" -m pip list
echo "--info--"
"$PYTHON" -m pip cache info
echo "--list--"
"$PYTHON" -m pip cache list
echo "--pip debug verbose--"
"$PYTHON" -m pip debug --verbose
echo "--------"
if ([ "$RUNNER_OS" == "Windows" ] && [ "$RUNNER_ARCH" == "ARM64" ]); then
# custom cryptography wheel for win arm64 since the project doesn't provide one:
# https://github.com/pyca/cryptography/issues/14293
@@ -558,24 +552,12 @@ jobs:
"$PYTHON" -m pip install cryptography-*.whl
fi
"$PYTHON" -m pip install -vvv --upgrade ..[yubikey]
echo "after everything..."
"$PYTHON" -m pip list
- name: Install PyInstaller
if: matrix.goal == 'build'
run: |
#git clone https://github.com/pyinstaller/pyinstaller.git
#cd pyinstaller
#export latest_release=$(git tag --list | grep -v dev | grep -v rc | sort -Vr | head -n1)
#git checkout "${latest_release}"
# git checkout "v6.9.0"
# remove pre-compiled bootloaders so we fail if bootloader compile fails
#rm -rvf PyInstaller/bootloader/*-*/*
#cd bootloader
#"${PYTHON}" ./waf all
#cd ..
#echo "---- Installing PyInstaller ----"
#"${PYTHON}" -m pip install .
# Install latest version of PyInstaller *that's 2 weeks old*
# Calculate the exact timestamp for 14 days ago
"$PYTHON" -m pip install --upgrade pyinstaller
- name: Build GAM with PyInstaller
@@ -642,11 +624,9 @@ jobs:
sudo apt-get -qq --yes update
# arm64 needs to build a wheel and needs scons to build
sudo apt-get -qq --yes install scons
"${PYTHON}" -m pip install --upgrade patchelf-wrapper
"${PYTHON}" -m pip install --upgrade typing_extensions
# "${PYTHON}" -m pip install --upgrade staticx
# install latest github src for staticx
"${PYTHON}" -m pip install --upgrade "git+https://github.com/JonathonReinhart/staticx"
"$PYTHON" -m pip install --upgrade patchelf-wrapper
"$PYTHON" -m pip install --upgrade typing_extensions
"$PYTHON" -m pip install --upgrade staticx
- name: Make StaticX GAM build
if: matrix.staticx == 'yes'
@@ -733,16 +713,16 @@ jobs:
write-host "sleeping during login..."
Start-Sleep 10
# - name: Archive artifacts
# uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # 7.0.0
# if: runner.os == 'Windows'
# with:
# archive: true
# name: images-${{ matrix.os }}
# if-no-files-found: ignore
# path: |
# ${{ github.workspace }}/*.png
# ${{ github.workspace }}/*.log
- name: Archive artifacts
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # 7.0.0
if: runner.os == 'Windows'
with:
archive: true
name: images-${{ matrix.os }}
if-no-files-found: ignore
path: |
${{ github.workspace }}/*.png
${{ github.workspace }}/*.log
- name: Sign gam.exe
if: runner.os == 'Windows'

144
.github/workflows/upgrade_deps.yml vendored Normal file
View File

@@ -0,0 +1,144 @@
name: Daily Dependency Pinning (2-Week Buffer)
on:
schedule:
# Runs every day at midnight UTC
- cron: '0 0 * * *'
workflow_dispatch: # Allows you to trigger it manually from the UI
jobs:
pin-deps:
runs-on: ubuntu-slim
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout Repository
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- name: Set up Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
with:
python-version: '3.14'
- name: Calculate and pin two-week old stable versions
shell: python
run: |
import json
import urllib.request
import re
import tomllib
from datetime import datetime, timedelta, timezone
from pathlib import Path
toml_path = Path("pyproject.toml")
if not toml_path.exists():
print("pyproject.toml not found!")
exit(1)
content = toml_path.read_text(encoding="utf-8")
parsed_toml = tomllib.loads(content)
target_deps = set()
# Standard [project.dependencies]
target_deps.update(parsed_toml.get("project", {}).get("dependencies", []))
# Optional [project.optional-dependencies]
for deps in parsed_toml.get("project", {}).get("optional-dependencies", {}).values():
target_deps.update(deps)
# Dev [dependency-groups] (uv / PEP 735 standard)
for deps in parsed_toml.get("dependency-groups", {}).values():
if isinstance(deps, list):
for d in deps:
if isinstance(d, str):
target_deps.add(d)
if not target_deps:
print("No dependencies found to process.")
exit(0)
updates = {}
two_weeks_ago = datetime.now(timezone.utc) - timedelta(days=14)
print(f"Evaluating dependencies against cutoff date: {two_weeks_ago.isoformat()}")
for dep in target_deps:
# Isolate base package name (e.g., "yubikey-manager>=5.6.1" -> "yubikey-manager")
pkg_name = re.split(r'[<>=!~;\s]', dep)[0].strip()
# Preserve environment markers if they exist
marker = ""
if ";" in dep:
marker = " ; " + dep.split(";", 1)[1].strip()
print(f"Fetching PyPI data for: {pkg_name}")
try:
url = f"https://pypi.org/pypi/{pkg_name}/json"
req = urllib.request.Request(url, headers={'User-Agent': 'GAM-CI-Script'})
with urllib.request.urlopen(req) as response:
data = json.loads(response.read().decode())
valid_versions = []
for ver, files in data.get("releases", {}).items():
if not files:
continue
upload_time_str = files[0].get("upload_time_iso_8601")
if not upload_time_str:
continue
if upload_time_str.endswith('Z'):
upload_time_str = upload_time_str[:-1] + '+00:00'
upload_time = datetime.fromisoformat(upload_time_str)
# Filter: Must be older than 2 weeks and not a pre-release
if upload_time <= two_weeks_ago and not any(x in ver.lower() for x in ['a', 'b', 'rc', 'dev']):
valid_versions.append((upload_time, ver))
if valid_versions:
# Sort by upload time descending to get the newest valid option
valid_versions.sort(key=lambda x: x[0], reverse=True)
target_version = valid_versions[0][1]
pinned_dep = f"{pkg_name}=={target_version}{marker}"
if pinned_dep != dep:
updates[dep] = pinned_dep
print(f" -> Pinning: '{dep}' => '{pinned_dep}'")
else:
print(f" -> Already pinned correctly to {target_version}")
else:
print(f" -> No valid historical versions found.")
except urllib.error.HTTPError as e:
print(f" -> Package not found on PyPI or HTTP error: {e}")
except Exception as e:
print(f" -> Error processing {pkg_name}: {e}")
# 3. Replace the strings safely in the original file content
new_content = content
for old_dep, new_dep in updates.items():
# Regex targets the exact string inside either single or double quotes
# Using a lambda replacement ensures we don't trip over escape sequences in the new string
escaped_old = re.escape(old_dep)
pattern = r'([\'"])' + escaped_old + r'\1'
new_content = re.sub(pattern, lambda m: m.group(1) + new_dep + m.group(1), new_content)
# Write changes back to pyproject.toml
if content != new_content:
toml_path.write_text(new_content, encoding="utf-8")
print("\npyproject.toml updated successfully.")
else:
print("\nNo updates required.")
- name: Create Pull Request
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: "chore: upgrade PyPi deps"
title: "Upgrade PyPi deps"
body: "Automated scan checking PyPI for package versions at least 2 weeks old."
branch: sys-deps-upgrade
force: false # Standard push, plays nice with rulesets

6
dep-overrides.txt Normal file
View File

@@ -0,0 +1,6 @@
# overrides uv.lock to force newer dependencies
# when old deps are vulnerable. These should be set
# to expire after 2 weeks when the fixed version will
# be automatically picked up anyway.
# Format: package_requirement | MM/DD/YYYY
urllib3>=2.7.0 | 05/22/2026

View File

@@ -4,26 +4,24 @@ dynamic = [
"version",
]
authors = [
{ name="Jay Lee", email="jay0lee@gmail.com" },
{ name="Ross Scroggs", email="Ross.Scroggs@gmail.com" },
{ name = "Jay Lee", email = "jay0lee@gmail.com" },
{ name = "Ross Scroggs", email = "Ross.Scroggs@gmail.com" },
]
# notice that yubikey-manager remains optional further down since it is less command and adds
#significant compile dependencies.
dependencies = [
"arrow>=1.3.0",
"chardet==5.2.0",
"cryptography>=46.0.5",
"distro; sys_platform=='linux'",
"filelock>=3.18.0",
"google-api-python-client>=2.167.0",
"google-auth-httplib2>=0.2.0",
"google-auth-oauthlib>=1.2.2",
"google-auth>=2.39.0",
"httplib2>=0.31.0",
"lxml>=5.4.0",
"passlib>=1.7.4",
"pathvalidate>=3.2.3",
"pysocks>=1.7.1",
"arrow==1.4.0",
"chardet==7.4.3",
"cryptography==48.0.0",
"distro==1.9.0 ; sys_platform=='linux'",
"filelock==3.29.0",
"google-api-python-client==2.196.0",
"google-auth-httplib2==0.4.0",
"google-auth-oauthlib==1.4.0",
"google-auth==2.53.0",
"httplib2==0.31.2",
"lxml==6.1.1",
"passlib==1.7.4",
"pathvalidate==3.3.1",
"pysocks==1.7.1",
]
description = "CLI tool to manage Google Workspace"
readme = "README.md"
@@ -38,11 +36,17 @@ classifiers = [
"Programming Language :: Python :: 3.14",
"Operating System :: OS Independent",
]
license = {text = "Apache License (2.0)"}
license-files = ["LICEN[CS]E*"]
license-files = [
"LICEN[CS]E*",
]
[project.license]
text = "Apache License (2.0)"
[project.optional-dependencies]
yubikey = ["yubikey-manager>=5.6.1"]
yubikey = [
"yubikey-manager==5.9.1",
]
[project.scripts]
gam = "gam.__main__:main"
@@ -57,7 +61,9 @@ Chat = "https://git.io/gam-chat"
path = "src/gam/__init__.py"
[tool.hatch.build.targets.wheel]
packages = ["src/gam"]
packages = [
"src/gam",
]
[build-system]
requires = [

View File

@@ -270,7 +270,7 @@ If an item contains spaces, it should be surrounded by ".
assuredcontrolsplus | 1010390002 | Assured Controls Plus |
bce | beyondcorp | beyondcorpenterprise | cep | chromeenterprisepremium | 1010400001 | Chrome Enterprise Premium |
cdm | chrome | googlechromedevicemanagement | Google-Chrome-Device-Management |
cloudidentity | identity | 1010010001 | Cloud Identity |
cloudidentityfree | cloudidentity | identity | 1010010001 | Cloud Identity Free |
cloudidentitypremium | identitypremium | 1010050001 | Cloud Identity Premium |
cloudsearch | 1010350001 | Cloud Search |
colabpro | 1010500001 | Colab Pro |
@@ -560,9 +560,9 @@ If an item contains spaces, it should be surrounded by ".
See: https://cloud.google.com/access-context-manager/docs/custom-access-level-spec
<QueryContact> ::= <String>
See: https://developers.google.com/google-apps/contacts/v3/reference#contacts-query-parameters-reference
<QueryCrOS> ::= <String>
<QueryCrOS> ::= <String>:<String>
See: https://support.google.com/chrome/a/answer/1698333
<QueryDevice> ::= <String>
<QueryDevice> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryDriveFile> ::= <String>
See: https://developers.google.com/drive/api/v3/search-files
@@ -575,7 +575,7 @@ If an item contains spaces, it should be surrounded by ".
<QueryItem> ::= <UniqueID>|<String>
<QueryMemberRestrictions> ::= <String>
See: https://cloud.google.com/identity/docs/reference/rest/v1beta1/SecuritySettings#MemberRestriction
<QueryMobile> ::= <String>
<QueryMobile> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryTeamDrive> ::= <String>
See: https://developers.google.com/drive/api/v3/search-parameters
@@ -1665,11 +1665,15 @@ gam <UserTypeEntity> show analyticdatastreams
<CalendarEntity> ::=
<CalendarList> | <FileSelector> | <CSVFileSelector> | <CSVkmdSelector> | <CSVDataSelector>
<CalendarACLRole> ::= editor|freebusy|freebusyreader|owner|reader|writer|none
<CalendarACLScope> ::= <EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|domain:<DomainName>|domain|default
<CalendarACLScopeList> ::= "<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity> ::=
<CalendarACLScopeList> | <FileSelector> | <CSVFileSelector> | <CSVkmdSelector> | <CSVDataSelector>
<CalendarACLRole> ::=
editor|freebusy|freebusyreader|owner|reader|writer|writerwithoutprivateaccess|none
<CalendarACLScope> ::=
<EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|
domain:<DomainName>|domain|default
<CalendarACLScopeList> ::=
"<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity>::=
<CalendarACLScopeList> | <FileSelector> | <CSVkmdSelector> | <CSVDataSelector>
gam calendars <CalendarEntity> create|add acls|calendaracls <CalendarACLRole> <CalendarACLScopeEntity> [sendnotifications <Boolean>]
gam calendars <CalendarEntity> update acls|calendaracls <CalendarACLRole> <CalendarACLScopeEntity> [sendnotifications <Boolean>]
@@ -1720,6 +1724,7 @@ gam calendar <CalendarEntity> printacl [todrive <ToDriveAttribute>*]
<EventMatchProperty> ::=
(matchfield attendees <EmailAddressEntity>)|
(matchfield attendeesorganizer <Boolean> <EmailAddressEntity>)|
(matchfield attendeesonlydomainlist <DomainNameList>)|
(matchfield attendeesdomainlist <DomainNameList>)|
(matchfield attendeesnotdomainlist <DomainNameList>)|
@@ -2468,9 +2473,9 @@ gam print chromehistory releases [todrive <ToDriveAttribute>*]
pre_provisioned_reenable
gam update cros <CrOSEntity> action <CrOSAction> [acknowledge_device_touch_requirement]
[actionbatchsize <Integer>]
[actionbatchsize <Integer>] [maxtodeprov <Integer>]
gam <CrOSTypeEntity> update action <CrOSAction> [acknowledge_device_touch_requirement]
[actionbatchsize <Integer>]
[actionbatchsize <Integer>] [maxtodeprov <Integer>]
<CrOSCommand>
reboot|
@@ -2510,6 +2515,7 @@ gam <CrOSTypeEntity> update <CrOSAttribute>+ [quickcrosmove [<Boolean>]] [nobatc
autoupdateexpiration|
autoupdatethrough|
backlightinfo|
bluetoothadapterinfo|
bootmode|
chromeostype|
cpuinfo|
@@ -2543,6 +2549,7 @@ gam <CrOSTypeEntity> update <CrOSAttribute>+ [quickcrosmove [<Boolean>]] [nobatc
orgunitpath|org|ou|
osupdatestatus|
osversion|
osversioncompliance|
platformversion|
recentusers|
screenshotfiles|
@@ -2724,25 +2731,30 @@ gam <CrOSTypeEntity> get devicefile [select <DeviceFileEntity>] [targetfolder <F
Print telemetry data for specified CrOS devices.
<CrOSTelemetryFieldName> ::=
appreport|
audiostatusreport|
batteryinfo|
batterystatusreport|
bootPerformancereport|
bootperformancereport|
cpuinfo|
cpustatusreport|
customer|
deviceid|
graphicsinfo|
graphicsstatusreport|
heartbeatstatusreport|
kioskappstatusreport|
memoryinfo|
memorystatusreport|
name|
networkbandwidthreport|
networkdiagnosticsreport|
networkinfo|
networkstatusreport|
orgunitid|
osupdatestatus|
peripheralsreport|
runtimecountersreport|
serialnumber|
storageinfo|
storagestatusreport|
@@ -2750,20 +2762,22 @@ Print telemetry data for specified CrOS devices.
<CrOSTelemetryFieldNameList> ::= "<CrOSTelemetryFieldName>(,<CrOSTelemetryFieldName>)*"
<CrOSTelemetryListFieldName> ::=
appreport|
audiostatusreport|
batteryinfo|
batterystatusreport|
bootperformancereport|
cpuinfo|
cpustatusreport|
graphicsstatusreport|
heartbeatstatusreport|
kioskappstatusreport|
memorystatusreport|
networkbandwidthreport|
networkdiagnosticsreport|
networkstatusreport|
osupdatestatus|
peripheralsreport|
storagestatusreport|
thunderboltinfo
runtimecountersreport|
storagestatusreport
<CrOSTelemetryListFieldNameList> ::= "<CrOSTelemetryListFieldName>(,<CrOSTelemetryLIstFieldName>)*"
gam info crostelemetry <SerialNumber>
@@ -2780,7 +2794,7 @@ gam show crostelemetry
gam print crostelemetry [todrive <ToDriveAttribute>*]
[(ou|org|orgunit|ou_and_children <OrgUnitItem>)|(cros_sn <SerialNumber>)|(filter <String>)]
<CrOSTelemetryFieldName>* [fields <CrOSTelemetryFieldNameList>]
[reverselists <CrOSTelemetryListFieldNameList>]
[reverselists <CrOSTelemetryListFieldNameList>] [oneitemperrow]
[start <Date>] [end <Date>] [listlimit <Number>]
[formatjson [quotechar <Character>]]
@@ -4884,10 +4898,15 @@ gam print resources [todrive <ToDriveAttribute>*] [allfields|<ResourceFieldName>
[formatjson [quotechar <Character>]]
[showitemcountonly]
<CalendarACLRole> ::= editor|freebusy|freebusyreader|owner|reader|writer|none
<CalendarACLScope> ::= <EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|domain:<DomainName>|domain|default
<CalendarACLScopeList> ::= "<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity> ::= <CalendarACLScopeList> | <FileSelector> | <CSVFileSelector> | <CSVkmdSelector> | <CSVDataSelector>
<CalendarACLRole> ::=
editor|freebusy|freebusyreader|owner|reader|writer|writerwithoutprivateaccess|none
<CalendarACLScope> ::=
<EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|
domain:<DomainName>|domain|default
<CalendarACLScopeList> ::=
"<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity>::=
<CalendarACLScopeList> | <FileSelector> | <CSVkmdSelector> | <CSVDataSelector>
gam resource <ResourceID> create|add acls|calendaracls <CalendarACLRole> <CalendarACLScopeEntity> [sendnotifications <Boolean>]
gam resource <ResourceID> update acls|calendaracls <CalendarACLRole> <CalendarACLScopeEntity> [sendnotifications <Boolean>]
@@ -5499,6 +5518,7 @@ gam print vaultcounts [todrive <ToDriveAttributes>*]
[excludedrafts <Boolean>]
[<JSONData>]
[wait <Integer>]
[include_suspended_zeros [<Boolean>]]
gam print vaultcounts [todrive <ToDriveAttributes>*]
matter <MatterItem> operation <String> [wait <Integer>]
@@ -6115,7 +6135,8 @@ gam <UserTypeEntity> print businessprofileaccounts [todrive <ToDriveAttribute>*]
# Users - Calendars
<CalendarACLRole> ::= editor|freebusy|freebusyreader|owner|reader|writer
<CalendarACLRole> ::=
editor|freebusy|freebusyreader|owner|reader|writer|writerwithoutprivateaccess|none
<CalendarSelectProperty> ::=
(minaccessrole <CalendarACLRole>)|
@@ -6766,13 +6787,41 @@ gam <UserTypeEntity> info chatmessage name <ChatMessage>
[formatjson]
gam <UserTypeEntity> show chatmessages
<ChatSpace>+
[showdeleted [<Boolean>]] [filter <String>]
[showdeleted [<Boolean>]
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[fields <ChatMessageFieldNameList>]
[orderby createtime [ascending|descending]]
[formatjson]
gam <UserTypeEntity> print chatmessages [todrive <ToDriveAttribute>*]
<ChatSpace>+
[showdeleted [<Boolean>]] [filter <String>]
[showdeleted [<Boolean>]
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[thread <ChatThread>])
[fields <ChatMessageFieldNameList>]
[orderby createtime [ascending|descending]]
[formatjson [quotechar <Character>]]
gam <UserTypeEntity> show chatsearchmessages
keywords <StringList>
<ChatSpace>*
[displaynames [all|any] <StringList>]
[senders <EmailAddressEntity>]*
[usermentions [all|any] <EmailAddressEntity>]*
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[hasattachment]
[fields <ChatMessageFieldNameList>]
[orderby createtime|relevance]
[formatjson]
gam <UserTypeEntity> print chatsearchmessages [todrive <ToDriveAttribute>*]
keywords <StringList>
<ChatSpace>*
[displaynames [all|any] <StringList>]
[senders <EmailAddressEntity>]*
[usermentions [all|any] <EmailAddressEntity>]*
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[hasattachment]
[fields <ChatMessageFieldNameList>]
[orderby createtime|relevance]
[formatjson [quotechar <Character>]]
gam <UserTypeEntity> info chatevent name <ChatEvent>
@@ -7032,7 +7081,7 @@ gam <UserTypeEntity> untrash drivefile <DriveFileEntity> [shortcutandtarget [<Bo
gam <UserTypeEntity> info drivefile <DriveFileEntity>
[returnidonly]
[filepath|fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[filepath|fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
[includepermissionsforview published]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
@@ -7513,7 +7562,7 @@ gam <UserTypeEntity> collect orphans
gam <UserTypeEntity> show fileinfo <DriveFileEntity>
[returnidonly]
[filepath|fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[filepath|fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
[includepermissionsforview published]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
@@ -7527,12 +7576,12 @@ gam <UserTypeEntity> show filepath <DriveFileEntity>
[returnpathonly]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[stripcrsfromname]
[fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[followshortcuts [<Boolean>]]
gam <UserTypeEntity> print filepath <DriveFileEntity> [todrive <ToDriveAttribute>*]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[stripcrsfromname] [oneitemperrow]
[fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[followshortcuts [<Boolean>]]
gam <UserTypeEntity> print filecounts [todrive <ToDriveAttribute>*]
@@ -7635,7 +7684,7 @@ gam <UserTypeEntity> print filelist [todrive <ToDriveAttribute>*]
[countsonly [summary none|only|plus] [summaryuser <String>]
[showsource] [showsize] [showsizeunits] [showmimetypesize]]
[countsrowfilter]
[filepath|fullpath [folderpathonly [<Boolean>]] [pathdelimiter <Character>] [addpathstojson] [showdepth]] [buildtree]
[filepath|fullpath [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>] [addpathstojson] [showdepth]] [buildtree]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
[showdrivename] [showshareddrivepermissions]
[(showlabels details|ids)|(includelabels <ClassificationLabelIDList>)]
@@ -8029,12 +8078,12 @@ gam <UserTypeEntity> export thread|threads
[quick|notquick] [doit] [max_to_export <Number>])|(ids <ThreadIDEntity>)
[targetfolder <FilePath>] [targetname <FileName>] [overwrite [<Boolean>]]
gam <UserTypeEntity> forward message|messages recipient|to <RecipientEntity>
gam <UserTypeEntity> forward message|messages [recipient|to] <RecipientEntity>
(((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
[labelids <LabelIDList>]
[quick|notquick] [doit] [max_to_forward <Number>])|(ids <MessageIDEntity>)
[subject <String>] [addorigfieldstosubject [<Boolean>]] [altcharset <String>]
gam <UserTypeEntity> forward thread|thtreads recipient|to <RecipientEntity>
gam <UserTypeEntity> forward thread|thtreads [recipient|to] <RecipientEntity>
(((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
[labelids <LabelIDList>]
quick|notquick] [doit] [max_to_forward <Number>])|(ids <ThreadIDEntity>)

View File

@@ -1,6 +1,115 @@
7.44.03
Added `writerwithoutprivateaccess` to `<CalendarACLRole>`; this will become effective 2026-06-29.
* See: https://developers.google.com/workspace/calendar/release-notes#June_01_2026
7.44.02
Added fields `bluetoothadapterinfo` and `osversioncompliance` to `<CrOSFieldName>` for use
in `gam info|print cros`.
7.44.01
Added option `oneitemperrow` to `gam print crostelemetry` to have each of a device's
report field entries displayed on a separate row with all of the other device fields.
Added additional fields to `<CrOSTelemetryFieldName>`and `<CrOSTelemetryListFieldName>`:
```
appreport
heartbeatstatusreport
kioskappstatusreport
networkbandwidthreport
runtimecountersreport
```
7.44.00
Added support for User data `archivalTime` and `suspensionTime` that is available
when fields `archived` and `suspended` are requested in `gam info user` and `gam print users`.
Added the following options to `gam <UserTypeEntity> show chatmessages` to simplify specifying a filter.
```
start|starttime <Date>|<Time>
end|endtime <Date>|<Time>
range <Date>|<Time> <Date>|<Time>
thread <ChatThread>
```
Added commands to search for and display chat messages.
* See: https://github.com/GAM-team/GAM/wiki/Users-Chat#display-chat-messages-by-searching
These commands are in Developer Preview; to use them you must have these values set in `gam.cfg`.
```
developer_preview_apis = chat
developer_preview_api_key = <DeveloperPreviewKey>
```
Upgraded to Python 3.14.5.
7.43.10
Updated `gam <UserTypeEntity> forward message|thread [recipient|to] <RecipientEntity>` to not forward messages
to the `Bcc` recipients of the original message.
Fixed bug in `gam <UserTypeEntity> forward message|thread [recipient|to] <RecipientEntity> addorigfieldstosubject`
where the recipient of the forwarded message was added to the subject line instead of the recipient of the original message.
7.43.09
Fixed bug in `gam <UserTypeEntity> print filelist` that caused a trap.
7.43.08
Fixed bug and formatting issues in `gam info device <DeviceEntity>`.
7.43.07
Improved validation of `<QueryCrOS>`, `<QueryDevice>` and `<QueryMobile>`.
7.43.06
Updated commands that use `<QueryCrOS>`, `<QueryDevice>` or `<QueryMobile>` to validate
that it is of the form `field:value` and that `value` does not contain a '?'.
Without validation, Google can return many more devices than are expected.
7.43.05
Added option `matchfield attendeesorganizer <Boolean> <EmailAddressEntity>` to `<EventMatchProperty>`
that is used in commands that process events. The match is true if all of the addresses in `<EmailAddressEntity>`
are present as attendees in the event and are an organizer or not based on `<Boolean>`.
Added option `max_to_deprov <Integer>` to `gam update cros <CrOSEntity> action <CrOSAction>`
that is used when `<CrOSAction>` is any of the following:
```
deprovision_different_model_replace|
deprovision_different_model_replacement|
deprovision_retiring_device|
deprovision_same_model_replace|
deprovision_same_model_replacement|
deprovision_upgrade_transfer
```
`max_to_deprov <Integer>` - No deprovisions are processed if the number of devices in `<CrOSEntity>` exceeds `<Integer>`;
the default value is one; set `<Integer>` to 0 for no limit.
7.43.04
Added option `include_suspended_zeros [<Boolean>]` to `gam print vaultcounts` that causes
GAM to generate zero count lines for suspended users with zero items as well as non-suspended users.
7.43.03
Added option `parentpathonly [<Boolean>]` to the following commands that causes GAM
to display only the parent folder names when displaying the path to a file.
```
gam <UserTypeEntity> info drivefile ... filepath|fullpath
gam <UserTypeEntity> show fileinfo ... filepath|fullpath
gam <UserTypeEntity> print|show filepath
gam <UserTypeEntity> print filelist ... filepath|fullpath
```
7.43.02
Added option `maxactivities <Number>` to `gam <UserTypeEntity> print driveactivity` to limit
Added option `maxactivities <Integer>` to `gam <UserTypeEntity> print driveactivity` to limit
the number of activities displayed; the default is 0, no limit.
7.43.01

File diff suppressed because it is too large Load Diff

View File

@@ -53,6 +53,7 @@ class GamCLArgs():
ENTITY_DOMAINS_ARCH = 'domains_arch'
ENTITY_DOMAINS_NS = 'domains_ns'
ENTITY_DOMAINS_SUSP = 'domains_susp'
ENTITY_DOMAINS_NS_SUSP = 'domains_ns_susp'
ENTITY_DOMAINS_NA_NS = 'domains_na_ns'
ENTITY_GROUP = 'group'
ENTITY_GROUP_INDE = 'group_inde'
@@ -60,6 +61,7 @@ class GamCLArgs():
ENTITY_GROUP_ARCH = 'group_arch'
ENTITY_GROUP_NS = 'group_ns'
ENTITY_GROUP_SUSP = 'group_susp'
ENTITY_GROUP_NS_SUSP = 'group_ns_susp'
ENTITY_GROUP_NA_NS = 'group_na_ns'
ENTITY_GROUPS = 'groups'
ENTITY_GROUPS_INDE = 'groups_inde'
@@ -67,12 +69,14 @@ class GamCLArgs():
ENTITY_GROUPS_ARCH = 'groups_arch'
ENTITY_GROUPS_NS = 'groups_ns'
ENTITY_GROUPS_SUSP = 'groups_susp'
ENTITY_GROUPS_NS_SUSP = 'groups_ns_susp'
ENTITY_GROUPS_NA_NS = 'groups_na_ns'
ENTITY_GROUP_USERS = 'group_users'
ENTITY_GROUP_USERS_NA = 'group_users_na'
ENTITY_GROUP_USERS_ARCH = 'group_users_arch'
ENTITY_GROUP_USERS_NS = 'group_users_ns'
ENTITY_GROUP_USERS_SUSP = 'group_users_susp'
ENTITY_GROUP_USERS_NS_SUSP = 'group_users_ns_susp'
ENTITY_GROUP_USERS_NA_NS = 'group_users_na_ns'
ENTITY_GROUP_USERS_SELECT = 'group_users_select'
ENTITY_LICENSES = 'licenses'
@@ -82,24 +86,28 @@ class GamCLArgs():
ENTITY_OU_ARCH = 'ou_arch'
ENTITY_OU_NS = 'ou_ns'
ENTITY_OU_SUSP = 'ou_susp'
ENTITY_OU_NS_SUSP = 'ou_ns_susp'
ENTITY_OU_NA_NS = 'ou_na_ns'
ENTITY_OU_AND_CHILDREN = 'ou_and_children'
ENTITY_OU_AND_CHILDREN_NA = 'ou_and_children_na'
ENTITY_OU_AND_CHILDREN_ARCH = 'ou_and_children_arch'
ENTITY_OU_AND_CHILDREN_NS = 'ou_and_children_ns'
ENTITY_OU_AND_CHILDREN_SUSP = 'ou_and_children_susp'
ENTITY_OU_AND_CHILDREN_NS_SUSP = 'ou_and_children_ns_susp'
ENTITY_OU_AND_CHILDREN_NA_NS = 'ou_and_children_na_ns'
ENTITY_OUS = 'ous'
ENTITY_OUS_NA = 'ous_na'
ENTITY_OUS_ARCH = 'ous_arch'
ENTITY_OUS_NS = 'ous_ns'
ENTITY_OUS_SUSP = 'ous_susp'
ENTITY_OUS_NS_SUSP = 'ous_ns_susp'
ENTITY_OUS_NA_NS = 'ous_na_ns'
ENTITY_OUS_AND_CHILDREN = 'ous_and_children'
ENTITY_OUS_AND_CHILDREN_NA = 'ous_and_children_na'
ENTITY_OUS_AND_CHILDREN_ARCH = 'ous_and_children_arch'
ENTITY_OUS_AND_CHILDREN_NS = 'ous_and_children_ns'
ENTITY_OUS_AND_CHILDREN_SUSP = 'ous_and_children_susp'
ENTITY_OUS_AND_CHILDREN_NS_SUSP = 'ous_and_children_ns_susp'
ENTITY_OUS_AND_CHILDREN_NA_NS = 'ous_and_children_na_ns'
ENTITY_QUERIES = 'queries'
ENTITY_QUERY = 'query'
@@ -111,9 +119,9 @@ class GamCLArgs():
ENTITY_USERS_ARCH = 'users_arch'
ENTITY_USERS_NS = 'users_ns'
ENTITY_USERS_SUSP = 'users_susp'
ENTITY_USERS_NS_SUSP = 'users_ns_susp'
ENTITY_USERS_NA_NS = 'users_na_ns'
ENTITY_USERS_ARCH_OR_SUSP = 'users_arch_or_susp'
ENTITY_USERS_NS_SUSP = 'users_ns_susp'
ENTITY_USERS_AND_GUESTS = 'users_and_guests'
ENTITY_USERS_AND_GUESTS_NS = 'users_and_guests_ns'
ENTITY_USERS_AND_GUESTS_SUSP = 'users_and_guests_susp'
@@ -158,6 +166,7 @@ class GamCLArgs():
ENTITY_DOMAINS_ARCH,
ENTITY_DOMAINS_NS,
ENTITY_DOMAINS_SUSP,
ENTITY_DOMAINS_NS_SUSP,
ENTITY_DOMAINS_NA_NS,
ENTITY_GROUP,
ENTITY_GROUP_INDE,
@@ -165,6 +174,7 @@ class GamCLArgs():
ENTITY_GROUP_ARCH,
ENTITY_GROUP_NS,
ENTITY_GROUP_SUSP,
ENTITY_GROUP_NS_SUSP,
ENTITY_GROUP_NA_NS,
ENTITY_GROUPS,
ENTITY_GROUPS_INDE,
@@ -172,12 +182,14 @@ class GamCLArgs():
ENTITY_GROUPS_ARCH,
ENTITY_GROUPS_NS,
ENTITY_GROUPS_SUSP,
ENTITY_GROUPS_NS_SUSP,
ENTITY_GROUPS_NA_NS,
ENTITY_GROUP_USERS,
ENTITY_GROUP_USERS_NA,
ENTITY_GROUP_USERS_ARCH,
ENTITY_GROUP_USERS_NS,
ENTITY_GROUP_USERS_SUSP,
ENTITY_GROUP_USERS_NS_SUSP,
ENTITY_GROUP_USERS_NA_NS,
ENTITY_GROUP_USERS_SELECT,
ENTITY_LICENSES,
@@ -187,24 +199,28 @@ class GamCLArgs():
ENTITY_OU_ARCH,
ENTITY_OU_NS,
ENTITY_OU_SUSP,
ENTITY_OU_NS_SUSP,
ENTITY_OU_NA_NS,
ENTITY_OU_AND_CHILDREN,
ENTITY_OU_AND_CHILDREN_NA,
ENTITY_OU_AND_CHILDREN_ARCH,
ENTITY_OU_AND_CHILDREN_NS,
ENTITY_OU_AND_CHILDREN_SUSP,
ENTITY_OU_AND_CHILDREN_NS_SUSP,
ENTITY_OU_AND_CHILDREN_NA_NS,
ENTITY_OUS,
ENTITY_OUS_NA,
ENTITY_OUS_ARCH,
ENTITY_OUS_NS,
ENTITY_OUS_SUSP,
ENTITY_OUS_NS_SUSP,
ENTITY_OUS_NA_NS,
ENTITY_OUS_AND_CHILDREN,
ENTITY_OUS_AND_CHILDREN_NA,
ENTITY_OUS_AND_CHILDREN_ARCH,
ENTITY_OUS_AND_CHILDREN_NS,
ENTITY_OUS_AND_CHILDREN_SUSP,
ENTITY_OUS_AND_CHILDREN_NS_SUSP,
ENTITY_OUS_AND_CHILDREN_NA_NS,
ENTITY_QUERIES,
ENTITY_QUERY,
@@ -286,48 +302,56 @@ class GamCLArgs():
'org_arch': ENTITY_OU_ARCH,
'org_ns': ENTITY_OU_NS,
'org_susp': ENTITY_OU_SUSP,
'org_ns_susp': ENTITY_OU_NS_SUSP,
'org_na_ns': ENTITY_OU_NA_NS,
'org_and_child': ENTITY_OU_AND_CHILDREN,
'org_and_child_na': ENTITY_OU_AND_CHILDREN_NA,
'org_and_child_arch': ENTITY_OU_AND_CHILDREN_ARCH,
'org_and_child_ns': ENTITY_OU_AND_CHILDREN_NS,
'org_and_child_susp': ENTITY_OU_AND_CHILDREN_SUSP,
'org_and_child_ns_susp': ENTITY_OU_AND_CHILDREN_NS_SUSP,
'org_and_child_na_ns': ENTITY_OU_AND_CHILDREN_NA_NS,
'org_and_children': ENTITY_OU_AND_CHILDREN,
'org_and_children_na': ENTITY_OU_AND_CHILDREN_NA,
'org_and_children_arch': ENTITY_OU_AND_CHILDREN_ARCH,
'org_and_children_ns': ENTITY_OU_AND_CHILDREN_NS,
'org_and_children_susp': ENTITY_OU_AND_CHILDREN_SUSP,
'org_and_children_ns_susp': ENTITY_OU_AND_CHILDREN_NS_SUSP,
'org_and_children_na_ns': ENTITY_OU_AND_CHILDREN_NA_NS,
'orgs': ENTITY_OUS,
'orgs_na': ENTITY_OUS_NA,
'orgs_arch': ENTITY_OUS_ARCH,
'orgs_ns': ENTITY_OUS_NS,
'orgs_susp': ENTITY_OUS_SUSP,
'orgs_ns_susp': ENTITY_OUS_NS_SUSP,
'orgs_na_ns': ENTITY_OUS_NA_NS,
'orgs_and_child': ENTITY_OUS_AND_CHILDREN,
'orgs_and_child_na': ENTITY_OUS_AND_CHILDREN_NA,
'orgs_and_child_arch': ENTITY_OUS_AND_CHILDREN_ARCH,
'orgs_and_child_ns': ENTITY_OUS_AND_CHILDREN_NS,
'orgs_and_child_susp': ENTITY_OUS_AND_CHILDREN_SUSP,
'orgs_and_child_ns_susp': ENTITY_OUS_AND_CHILDREN_NS_SUSP,
'orgs_and_child_na_ns': ENTITY_OUS_AND_CHILDREN_NA_NS,
'orgs_and_children': ENTITY_OUS_AND_CHILDREN,
'orgs_and_children_na': ENTITY_OUS_AND_CHILDREN_NA,
'orgs_and_children_arch': ENTITY_OUS_AND_CHILDREN_ARCH,
'orgs_and_children_ns': ENTITY_OUS_AND_CHILDREN_NS,
'orgs_and_children_susp': ENTITY_OUS_AND_CHILDREN_SUSP,
'orgs_and_children_ns_susp': ENTITY_OUS_AND_CHILDREN_NS_SUSP,
'orgs_and_children_na_ns': ENTITY_OUS_AND_CHILDREN_NA_NS,
'ou_and_child': ENTITY_OU_AND_CHILDREN,
'ou_and_child_na': ENTITY_OU_AND_CHILDREN_NA,
'ou_and_child_arch': ENTITY_OU_AND_CHILDREN_ARCH,
'ou_and_child_ns': ENTITY_OU_AND_CHILDREN_NS,
'ou_and_child_susp': ENTITY_OU_AND_CHILDREN_SUSP,
'ou_and_child_ns_susp': ENTITY_OU_AND_CHILDREN_NS_SUSP,
'ou_and_child_na_ns': ENTITY_OU_AND_CHILDREN_NA_NS,
'ous_and_child': ENTITY_OUS_AND_CHILDREN,
'ous_and_child_na': ENTITY_OUS_AND_CHILDREN_NA,
'ous_and_child_arch': ENTITY_OUS_AND_CHILDREN_ARCH,
'ous_and_child_ns': ENTITY_OUS_AND_CHILDREN_NS,
'ous_and_child_susp': ENTITY_OUS_AND_CHILDREN_SUSP,
'ous_and_child_ns_susp': ENTITY_OUS_AND_CHILDREN_NS_SUSP,
'ous_and_child_na_ns': ENTITY_OUS_AND_CHILDREN_NA_NS,
}
# CL entity source selectors
@@ -403,9 +427,9 @@ class GamCLArgs():
ENTITY_USERS_ARCH,
ENTITY_USERS_NS,
ENTITY_USERS_SUSP,
ENTITY_USERS_NS_SUSP,
ENTITY_USERS_ARCH_OR_SUSP,
ENTITY_USERS_NA_NS,
ENTITY_USERS_NS_SUSP,
ENTITY_USERS_AND_GUESTS,
ENTITY_USERS_AND_GUESTS_NS,
ENTITY_USERS_AND_GUESTS_SUSP,
@@ -422,9 +446,9 @@ class GamCLArgs():
ENTITY_ALL_USERS_ARCH = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_ARCH
ENTITY_ALL_USERS_NS = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_NS
ENTITY_ALL_USERS_SUSP = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_SUSP
ENTITY_ALL_USERS_NS_SUSP = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_NS_SUSP
ENTITY_ALL_USERS_NA_NS = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_NA_NS
ENTITY_ALL_USERS_ARCH_OR_SUSP = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_ARCH_OR_SUSP
ENTITY_ALL_USERS_NS_SUSP = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_NS_SUSP
ENTITY_ALL_USERS_AND_GUESTS = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_AND_GUESTS
ENTITY_ALL_USERS_AND_GUESTS_NS = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_AND_GUESTS_NS
ENTITY_ALL_USERS_AND_GUESTS_SUSP = ENTITY_SELECTOR_ALL+' '+ENTITY_USERS_AND_GUESTS_SUSP
@@ -440,8 +464,8 @@ class GamCLArgs():
ENTITY_ALL_USERS_ARCH,
ENTITY_ALL_USERS_NS,
ENTITY_ALL_USERS_SUSP,
ENTITY_ALL_USERS_NA_NS,
ENTITY_ALL_USERS_NS_SUSP,
ENTITY_ALL_USERS_NA_NS,
ENTITY_ALL_USERS_AND_GUESTS,
ENTITY_ALL_USERS_AND_GUESTS_NS,
ENTITY_ALL_USERS_AND_GUESTS_SUSP,
@@ -457,6 +481,7 @@ class GamCLArgs():
ENTITY_DOMAINS_ARCH,
ENTITY_DOMAINS_NS,
ENTITY_DOMAINS_SUSP,
ENTITY_DOMAINS_NS_SUSP,
ENTITY_DOMAINS_NA_NS,
}
GROUP_ENTITY_TYPES = {
@@ -465,6 +490,7 @@ class GamCLArgs():
ENTITY_GROUP_ARCH,
ENTITY_GROUP_NS,
ENTITY_GROUP_SUSP,
ENTITY_GROUP_NS_SUSP,
ENTITY_GROUP_NA_NS,
ENTITY_GROUP_INDE,
}
@@ -474,6 +500,7 @@ class GamCLArgs():
ENTITY_GROUPS_ARCH,
ENTITY_GROUPS_NS,
ENTITY_GROUPS_SUSP,
ENTITY_GROUPS_NS_SUSP,
ENTITY_GROUPS_NA_NS,
ENTITY_GROUPS_INDE,
}
@@ -483,6 +510,7 @@ class GamCLArgs():
ENTITY_GROUP_USERS_ARCH,
ENTITY_GROUP_USERS_NS,
ENTITY_GROUP_USERS_SUSP,
ENTITY_GROUP_USERS_NS_SUSP,
ENTITY_GROUP_USERS_NA_NS,
ENTITY_GROUP_USERS_SELECT,
}
@@ -497,6 +525,8 @@ class GamCLArgs():
ENTITY_OU_AND_CHILDREN_NS,
ENTITY_OU_SUSP,
ENTITY_OU_AND_CHILDREN_SUSP,
ENTITY_OU_NS_SUSP,
ENTITY_OU_AND_CHILDREN_NS_SUSP,
ENTITY_OU_NA_NS,
ENTITY_OU_AND_CHILDREN_NA_NS,
}
@@ -511,6 +541,8 @@ class GamCLArgs():
ENTITY_OUS_AND_CHILDREN_NS,
ENTITY_OUS_SUSP,
ENTITY_OUS_AND_CHILDREN_SUSP,
ENTITY_OUS_NS_SUSP,
ENTITY_OUS_AND_CHILDREN_NS_SUSP,
ENTITY_OUS_NA_NS,
ENTITY_OUS_AND_CHILDREN_NA_NS,
}
@@ -525,6 +557,8 @@ class GamCLArgs():
ENTITY_OUS_NS,
ENTITY_OU_SUSP,
ENTITY_OUS_SUSP,
ENTITY_OU_NS_SUSP,
ENTITY_OUS_NS_SUSP,
ENTITY_OU_NA_NS,
ENTITY_OUS_NA_NS,
}
@@ -588,6 +622,7 @@ class GamCLArgs():
ENTITY_DOMAINS_ARCH: 'isArchived=True',
ENTITY_DOMAINS_NS: 'isSuspended=False',
ENTITY_DOMAINS_SUSP: 'isSuspended=True',
ENTITY_DOMAINS_NS_SUSP: None,
ENTITY_DOMAINS_NA_NS: 'isArchived=False isSuspended=False',
}
GROUPS_QUERY_MAP = { #(isArchived, isSuspended)
@@ -599,6 +634,8 @@ class GamCLArgs():
ENTITY_GROUPS_NS: (None, False),
ENTITY_GROUP_SUSP: (None, True),
ENTITY_GROUPS_SUSP: (None, True),
ENTITY_GROUP_NS_SUSP: (None, None),
ENTITY_GROUPS_NS_SUSP: (None, None),
ENTITY_GROUP_NA_NS: (False, False),
ENTITY_GROUPS_NA_NS: (False, False),
}
@@ -607,6 +644,7 @@ class GamCLArgs():
ENTITY_GROUP_USERS_ARCH: (True, None),
ENTITY_GROUP_USERS_NS: (None, False),
ENTITY_GROUP_USERS_SUSP: (None, True),
ENTITY_GROUP_USERS_NS_SUSP: (None, None),
ENTITY_GROUP_USERS_NA_NS: (False, False),
}
OU_QUERY_MAP = { #(isArchived, isSuspended)
@@ -626,6 +664,10 @@ class GamCLArgs():
ENTITY_OUS_SUSP: (None, True),
ENTITY_OU_AND_CHILDREN_SUSP: (None, True),
ENTITY_OUS_AND_CHILDREN_SUSP: (None, True),
ENTITY_OU_NS_SUSP: (None, None),
ENTITY_OUS_NS_SUSP: (None, None),
ENTITY_OU_AND_CHILDREN_NS_SUSP: (None, None),
ENTITY_OUS_AND_CHILDREN_NS_SUSP: (None, None),
ENTITY_OU_NA_NS: (False, False),
ENTITY_OUS_NA_NS: (False, False),
ENTITY_OU_AND_CHILDREN_NA_NS: (False, False),
@@ -667,6 +709,7 @@ class GamCLArgs():
ENTITY_DOMAINS_ARCH,
ENTITY_DOMAINS_NS,
ENTITY_DOMAINS_SUSP,
ENTITY_DOMAINS_NS_SUSP,
ENTITY_DOMAINS_NA_NS,
ENTITY_GROUPS,
ENTITY_GROUPS_INDE,
@@ -674,12 +717,14 @@ class GamCLArgs():
ENTITY_GROUPS_ARCH,
ENTITY_GROUPS_NS,
ENTITY_GROUPS_SUSP,
ENTITY_GROUPS_NS_SUSP,
ENTITY_GROUPS_NA_NS,
ENTITY_GROUP_USERS,
ENTITY_GROUP_USERS_NA,
ENTITY_GROUP_USERS_ARCH,
ENTITY_GROUP_USERS_NS,
ENTITY_GROUP_USERS_SUSP,
ENTITY_GROUP_USERS_NS_SUSP,
ENTITY_GROUP_USERS_NA_NS,
ENTITY_GROUP_USERS_SELECT,
ENTITY_OUS,
@@ -687,12 +732,14 @@ class GamCLArgs():
ENTITY_OUS_ARCH,
ENTITY_OUS_NS,
ENTITY_OUS_SUSP,
ENTITY_OUS_NS_SUSP,
ENTITY_OUS_NA_NS,
ENTITY_OUS_AND_CHILDREN,
ENTITY_OUS_AND_CHILDREN_NA,
ENTITY_OUS_AND_CHILDREN_ARCH,
ENTITY_OUS_AND_CHILDREN_NS,
ENTITY_OUS_AND_CHILDREN_SUSP,
ENTITY_OUS_AND_CHILDREN_NS_SUSP,
ENTITY_OUS_AND_CHILDREN_NA_NS,
ENTITY_COURSEPARTICIPANTS,
ENTITY_STUDENTS,
@@ -799,6 +846,8 @@ class GamCLArgs():
ARG_CHATMEMBERS = 'chatmembers'
ARG_CHATMESSAGE = 'chatmessage'
ARG_CHATMESSAGES = 'chatmessages'
ARG_CHATSEARCHMESSAGE = 'chatsearchmessage'
ARG_CHATSEARCHMESSAGES = 'chatsearchmessages'
ARG_CHATSECTION = 'chatsection'
ARG_CHATSECTIONS = 'chatsections'
ARG_CHATSECTIONITEM = 'chatsectionitem'

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright (C) 2025 Ross Scroggs All Rights Reserved.
# Copyright (C) 2026 Ross Scroggs All Rights Reserved.
#
# All Rights Reserved.
#
@@ -312,6 +312,7 @@ INVALID_ALIAS = 'Invalid Alias'
INVALID_ATTENDEE_CHANGE = 'Invalid attendee change "{0}"'
INVALID_CHARSET = 'Invalid charset "{0}"'
INVALID_DATE_TIME_RANGE = '{0} {1} must be greater than/equal to {2} {3}'
INVALID_DEVICE_QUERY = 'Invalid {0} query "{1}"; it must be if the form "field:value" and must not contain a "?"'
INVALID_EMOJI_NAME = '{0} does not match pattern :[0-9a-z_-]:'
INVALID_ENTITY = 'Invalid {0}, {1}'
INVALID_EVENT_TIMERANGE = '{0} {1} must be less than {2}'
@@ -474,6 +475,7 @@ REASON_ONLY_VALID_WITH_CONTENTRESTRICTIONS_READONLY_TRUE = 'reason only valid wi
REAUTHENTICATION_IS_NEEDED = 'Reauthentication is needed, please run\n\ngam oauth create'
RECOMMEND_RUNNING_GAM_ROTATE_SAKEY = 'Recommend running "gam rotate sakey" to get a new key\n'
REFUSING_TO_DEPROVISION_DEVICES = 'Refusing to deprovision {0} devices because acknowledge_device_touch_requirement not specified.\nDeprovisioning a device means the device will have to be physically wiped and re-enrolled to be managed by your domain again.\nThis requires physical access to the device and is very time consuming to perform for each device.\nPlease add "acknowledge_device_touch_requirement" to the GAM command if you understand this and wish to proceed with the deprovision.\nPlease also be aware that deprovisioning can have an effect on your device license count.\nSee https://support.google.com/chrome/a/answer/3523633 for full details.'
REFUSING_TO_DEPROVISION_N_DEVICES = 'Refusing to deprovision {0} devices due to maxtodepov {1}.\nSpecify "maxtodeprov 0" to deprovision all {0} devices'
REPLY_TO_CUSTOM_REQUIRES_EMAIL_ADDRESS = 'replyto REPLY_TO_CUSTOM requires customReplyTo <EmailAddress>'
REQUEST_COMPLETED_NO_FILES = 'Request completed but no results/files were returned, try requesting again'
REQUEST_NOT_COMPLETE = 'Request needs to be completed before downloading, current status is: {0}'

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright (C) 2025 Ross Scroggs All Rights Reserved.
# Copyright (C) 2026 Ross Scroggs All Rights Reserved.
#
# All Rights Reserved.
#
@@ -22,7 +22,7 @@
# Products/SKUs
_PRODUCTS = {
'101001': 'Cloud Identity',
'101001': 'Cloud Identity Free',
'101005': 'Cloud Identity Premium',
'101031': 'Google Workspace for Education',
'101033': 'Google Voice',
@@ -44,7 +44,7 @@ _PRODUCTS = {
}
_SKUS = {
'1010010001': {
'product': '101001', 'aliases': ['identity', 'cloudidentity'], 'displayName': 'Cloud Identity'},
'product': '101001', 'aliases': ['identity', 'cloudidentity', 'cloudidentityfree'], 'displayName': 'Cloud Identity Free'},
'1010050001': {
'product': '101005', 'aliases': ['identitypremium', 'cloudidentitypremium'], 'displayName': 'Cloud Identity Premium'},
'1010070001': {

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright (C) 2023 Ross Scroggs All Rights Reserved.
# Copyright (C) 2026 Ross Scroggs All Rights Reserved.
#
# All Rights Reserved.
#
@@ -145,10 +145,14 @@ PROPERTIES = {
{CLASS: PC_BOOLEAN, TITLE: 'IP Whitelisted',},
'archived':
{CLASS: PC_BOOLEAN, TITLE: 'Is Archived',},
'archivalTime':
{CLASS: PC_TIME, TITLE: 'Archival Time',},
'suspended':
{CLASS: PC_BOOLEAN, TITLE: 'Account Suspended',},
'suspensionReason':
{CLASS: PC_STRING, TITLE: 'Suspension Reason',},
'suspensionTime':
{CLASS: PC_TIME, TITLE: 'Suspension Time',},
'changePasswordAtNextLogin':
{CLASS: PC_BOOLEAN, TITLE: 'Must Change Password',},
'recoveryEmail':

View File

@@ -315,6 +315,9 @@ You can optionally specify the type of service account key with `algorithm|local
Use `nokey` if you do not want a service account key created for the project.
## Use an existing project for GAM authorization
To use the same GAM project on multiple computers, see: [GAM Configuration](Multiple-Computers)
Use an existing project to create and download two files: `client_secrets.json` for the Client and `oauth2service.json` for the Service Account.
### Default values

View File

@@ -456,9 +456,9 @@
See: https://cloud.google.com/access-context-manager/docs/custom-access-level-spec
<QueryContact> ::= <String>
See: https://developers.google.com/google-apps/contacts/v3/reference#contacts-query-parameters-reference
<QueryCrOS> ::= <String>
<QueryCrOS> ::= <String>:<String>
See: https://support.google.com/chrome/a/answer/1698333
<QueryDevice> ::= <String>
<QueryDevice> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryDriveFile> ::= <String>
See: https://developers.google.com/drive/api/v3/search-files
@@ -471,7 +471,7 @@
<QueryItem> ::= <UniqueID>|<String>
<QueryMemberRestrictions> ::= <String>
See: https://cloud.google.com/identity/docs/reference/rest/v1beta1/SecuritySettings#MemberRestriction
<QueryMobile> ::= <String>
<QueryMobile> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryTeamDrive> ::= <String>
See: https://developers.google.com/drive/api/v3/search-parameters

View File

@@ -20,6 +20,9 @@ Calendar ACL roles (as seen in Calendar GUI):
* `owner` - Make changes to events and manage sharing
* `freebusy` & `freebusyreader` - See only free/busy (hide details)
Added `writerwithoutprivateaccess` to `<CalendarACLRole>` in 7.44.03; this will become effective 2026-06-29.
* See: https://developers.google.com/workspace/calendar/release-notes#June_01_2026
## API documentation
* [Calendar API - ACLs](https://developers.google.com/google-apps/calendar/v3/reference/acl)
@@ -30,10 +33,15 @@ Calendar ACL roles (as seen in Calendar GUI):
<CalendarEntity> ::= <CalendarList> | <FileSelector> | <CSVkmdSelector> | <CSVDataSelector>
See: https://github.com/GAM-team/GAM/wiki/Collections-of-Items
<CalendarACLRole> ::= editor|freebusy|freebusyreader|owner|reader|writer
<CalendarACLScope> ::= <EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|domain:<DomainName>|domain|default
<CalendarACLScopeList> ::= "<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity>::= <CalendarACLScopeList> | <FileSelector> | <CSVkmdSelector> | <CSVDataSelector>
<CalendarACLRole> ::=
editor|freebusy|freebusyreader|owner|reader|writer|writerwithoutprivateaccess|none
<CalendarACLScope> ::=
<EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|
domain:<DomainName>|domain|default
<CalendarACLScopeList> ::=
"<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity>::=
<CalendarACLScopeList> | <FileSelector> | <CSVkmdSelector> | <CSVDataSelector>
```
## Manage calendar access
```

View File

@@ -68,7 +68,8 @@ gam oauth create
```
<OrgUnitPath> ::= /|(/<String)+
<QueryCrOS> ::= <String> See: https://support.google.com/chrome/a/answer/1698333
<QueryCrOS> ::= <String>:<String>
See: https://support.google.com/chrome/a/answer/1698333
<CommandID> ::= <String>
<CrOSID> ::= <String>
<CrOSIDList> ::= "<CrOSID>(,<CrOSID>)*"
@@ -97,6 +98,7 @@ gam oauth create
autoupdateexpiration|
autoupdatethrough|
backlightinfo|
bluetoothadapterinfo|
bootmode|
chromeostype|
cpuinfo|
@@ -130,6 +132,7 @@ gam oauth create
orgunitpath|org|ou|
osupdatestatus|
osversion|
osversioncompliance|
platformversion|
recentusers|
screenshotfiles|
@@ -184,25 +187,30 @@ gam oauth create
<CrOSActivityListFieldNameList> ::= "<CrOSActivityListFieldName>(,<CrOSActivityListFieldName>)*"
<CrOSTelemetryFieldName> ::=
appreport|
audiostatusreport|
batteryinfo|
batterystatusreport|
bootPerformancereport|
bootperformancereport|
cpuinfo|
cpustatusreport|
customer|
deviceid|
graphicsinfo|
graphicsstatusreport|
heartbeatstatusreport|
kioskappstatusreport|
memoryinfo|
memorystatusreport|
name|
networkbandwidthreport|
networkdiagnosticsreport|
networkinfo|
networkstatusreport|
orgunitid|
osupdatestatus|
peripheralsreport|
runtimecountersreport|
serialnumber|
storageinfo|
storagestatusreport|
@@ -210,20 +218,22 @@ gam oauth create
<CrOSTelemetryFieldNameList> ::= "<CrOSTelemetryFieldName>(,<CrOSTelemetryFieldName>)*"
<CrOSTelemetryListFieldName> ::=
appreport|
audiostatusreport|
batteryinfo|
batterystatusreport|
bootperformancereport|
cpuinfo|
cpustatusreport|
graphicsstatusreport|
heartbeatstatusreport|
kioskappstatusreport|
memorystatusreport|
networkbandwidthreport|
networkdiagnosticsreport|
networkstatusreport|
osupdatestatus|
peripheralsreport|
storagestatusreport|
thunderboltinfo
runtimecountersreport|
storagestatusreport
<CrOSTelemetryListFieldNameList> ::= "<CrOSTelemetryListFieldName>(,<CrOSTelemetryLIstFieldName>)*"
```
@@ -409,11 +419,13 @@ gam update ou csvkmd cros.csv keyfield OU datafield deviceId add croscsvdata dev
reenable
gam <CrOSTypeEntity> update action <CrOSAction> [acknowledge_device_touch_requirement]
[actionbatchsize <Integer>]
[actionbatchsize <Integer>] [maxtodeprov <Integer>]
```
ChromeOS devices are now processed in batches.
The batch size defaults to 10, the `actionbatchsize <Integer>` option can be used to set a batch size between 10 and 250.
### Deprovisioning
As deprovisioning ChromeOS devices is not reversible, you must enter `acknowledge_device_touch_requirement`
when `<CrOSAction>` is `deprovision_same_model_replace`, `deprovision_different_model_replace`,
`deprovision_retiring_device` or `deprovision_upgrade_transfer`.
@@ -424,6 +436,20 @@ each device. Please also be aware that deprovisioning can have an effect on your
See https://support.google.com/chrome/a/answer/3523633 for full details.
Prior to version 7.43.05, all devices in `<CrOSEntity>` would be deprovisioned. When `<CrOSEntity>`
was derived from an OU, this was desirable. However, if `<CrOSEntity>` was derived from a query,
more devices than desired may have been deprovisioned. In version 7.43.05 and higher,
GAM defaults to not deprovisioning devices if the number of devices exceeds one.
The option `max_to_deprov <Integer>` can be used to verify the number of devices to be deprovisioned;
no deprovisions are processed if the number of devices in `<CrOSEntity>` exceeds `<Integer>`;
the default value is one; set `<Number>` to 0 for no limit.
When `<CrOSEntity>` is derived from an OU, set `max_to_deprov 0` and all devices will be deprovisioned.
When `<CrOSEntity>` is derived from a query, e.g., `cros_sn <SerialNumber>`, the default `max_to_deprov 1`
protects you from accidentally deprovisioning more devices than desired.
## Send remote commands to ChromeOS devices
Thanks to Jay for most of the following.
@@ -947,19 +973,21 @@ By default, Gam displays the information as an indented list of keys and values:
gam print crostelemetry [todrive <ToDriveAttribute>*]
[(ou|org|orgunit|ou_and_children <OrgUnitItem>)|(cros_sn <SerialNumber>)|(filter <String>)]
<CrOSTelemetryFieldName>* [fields <CrOSTelemetryFieldNameList>]
[reverselists <CrOSTelemetryListFieldNameList>]
[reverselists <CrOSTelemetryListFieldNameList>] [oneitemperrow]
[start <Date>] [end <Date>] [listlimit <Number>]
[formatjson [quotechar <Character>]]
```
Use these options to select CrOS devices; if none are chosen, all CrOS devices in the account are selected.
- `ou|org|orgunit <OrgUnitItem>` - Select CrOS devices directly in the OU `<OrgUnitItem>`
- `ou_and_children <OrgUnitItem>` - Select CrOS devices in the OU `<OrgUnitItem>` and its sub OUs
- `cros_sn <SerialNumber>` - Select the CrOS device with serial number `<SerialNumber>`.
- `filter <String>` - Select the CrOS device with a filter.
Use these options to limit/modify the displayed lists.
- `listlimit <Number>` - Limits the number of repetitions to `<Number>`; if not specified or `<Number>` equals zero, there is no limit.
- `start <Date>` and `end <Date>` - Constrain list `reportTime` to fall within the specified `<Dates>`. If a `<Date>` isn't specified, there is no filtering in that range.
- `reverselists <CrOSTelemetryListFieldNameList>` - For each list, change order from ascending (oldest to newest) to descending (newest to oldest); this makes it easy to get the `N` most recent values with `listlimit N reverselists cpustatusreport,memorystatusreport`
- `reverselists <CrOSTelemetryListFieldNameList>` - For each list, change order from descending (newest to oldest) to ascending (oldest to newest)
- `oneitemrerrow` - Display each instance of a list item on a separate row; by default, all list items are displayed on a single row
By default, all telemetry data is displayed, use the following to select specific fields:
- `<CrOSTelemetryFieldName>*` - Specify fields individually

View File

@@ -56,7 +56,7 @@ Use this table to filter/query for specific device types:
```
<AssetTag> ::= <String>
<AssetTagList> ::= "<AssetTag>(,<AssetTag>)*"
<QueryDevice> ::= <String>
<QueryDevice> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryDeviceList> ::= "<QueryDevice>(,<QueryDevice>)*"
<DeviceID> ::= devices/<String>
@@ -133,6 +133,8 @@ Use this table to filter/query for specific device types:
```
## Create a company device
This method is available only to customers who have one of the following SKUs: Enterprise Standard, Enterprise Plus, Enterprise for Education, and Cloud Identity Premium.
Adds a new device to the Google company-owned inventory. Once a user is assigned and enrolled on the device the device will be considered company-owned for management purposes.
The device will also register as company-owned with Google services like [Context-Aware Access (CAA)](https://support.google.com/a/answer/9275380).
```

View File

@@ -16,12 +16,12 @@ In zsh, if an argument contains a `~`, `|`, `!`, `>`, or `<`, you must enclose t
To embed a `'` in a string enclosed in `"`, enter `'`; `name "Test'Group"`.
To embed a `"` in a string enclosed in `"`, enter `\"`; `name "Test\"Group"`.
To embed a `"` in a string enclosed in `'`, enter `"`; `name 'Test"Group'`.
To embed a `'` in a string enclosed in `'`, enter `'\''`; `name 'Test'\''Group'`.
To embed a `"` in a string enclosed in `"`, enter `\"`; `name "Test\"Group"`.
Linux and MacOS do not recognize smart or curly quotes, `“` and `”`, they can not be used to enclose arguments.
## Windows Command Prompt

View File

@@ -37,7 +37,7 @@ gam info domain [<DomainName>]
gam show domains
[formatjson]
```
For `info`, if `<DomainName>` is omitted, information about the primary domain will be displayed.
For `info`, if `<DomainName>` is omitted, customer information about the primary domain will be displayed.
By default, Gam displays the information as an indented list of keys and values.
* `formatjson` - Display the fields in JSON format.

View File

@@ -10,6 +10,120 @@ Add the `-s` option to the end of the above commands to suppress creating the `g
See [Downloads-Installs-GAM7](https://github.com/GAM-team/GAM/wiki/Downloads-Installs) for Windows or other options, including manual installation
### 7.44.03
Added `writerwithoutprivateaccess` to `<CalendarACLRole>`; this will become effective 2026-06-29.
* See: https://developers.google.com/workspace/calendar/release-notes#June_01_2026
### 7.44.02
Added fields `bluetoothadapterinfo` and `osversioncompliance` to `<CrOSFieldName>` for use
in `gam info|print cros`.
### 7.44.01
Added option `oneitemperrow` to `gam print crostelemetry` to have each of a device's
report field entries displayed on a separate row with all of the other device fields.
Added additional fields to `<CrOSTelemetryFieldName>`and `<CrOSTelemetryListFieldName>`:
```
appreport
heartbeatstatusreport
kioskappstatusreport
networkbandwidthreport
runtimecountersreport
```
### 7.44.00
Added support for User data `archivalTime` and `suspensionTime` that is available
when fields `archived` and `suspended` are requested in `gam info user` and `gam print users`.
Added the following options to `gam <UserTypeEntity> show chatmessages` to simplify specifying a filter.
```
start|starttime <Date>|<Time>
end|endtime <Date>|<Time>
range <Date>|<Time> <Date>|<Time>
thread <ChatThread>
```
Added commands to search for and display chat messages.
* See: https://github.com/GAM-team/GAM/wiki/Users-Chat#display-chat-messages-by-searching
These commands are in Developer Preview; to use them you must have these values set in `gam.cfg`.
```
developer_preview_apis = chat
developer_preview_api_key = <DeveloperPreviewKey>
```
Upgraded to Python 3.14.5.
### 7.43.10
Updated `gam <UserTypeEntity> forward message|thread [recipient|to] <RecipientEntity>` to not forward messages
to the `Bcc` recipients of the original message.
Fixed bug in `gam <UserTypeEntity> forward message|thread [recipient|to] <RecipientEntity> addorigfieldstosubject`
where the recipient of the forwarded message was added to the subject line instead of the recipient of the original message.
### 7.43.09
Fixed bug in `gam <UserTypeEntity> print filelist` that caused a trap.
### 7.43.08
Fixed bug and formatting issues in `gam info device <DeviceEntity>`.
### 7.43.07
Improved validation of `<QueryCrOS>`, `<QueryDevice>` and `<QueryMobile>`.
### 7.43.06
Updated commands that use `<QueryCrOS>`, `<QueryDevice>` or `<QueryMobile>` to validate
that it is of the form `field:value` and that `value` does not contain a '?'.
Without validation, Google can return many more devices than are expected.
### 7.43.05
Added option `matchfield attendeesorganizer <Boolean> <EmailAddressEntity>` to `<EventMatchProperty>`
that is used in commands that process events. The match is true if all of the addresses in `<EmailAddressEntity>`
are present as attendees in the event and are an organizer or not based on `<Boolean>`.
Added option `max_to_deprov <Integer>` to `gam update cros <CrOSEntity> action <CrOSAction>`
that is used when `<CrOSAction>` is any of the following:
```
deprovision_different_model_replace|
deprovision_different_model_replacement|
deprovision_retiring_device|
deprovision_same_model_replace|
deprovision_same_model_replacement|
deprovision_upgrade_transfer
```
`max_to_deprov <Integer>` - No deprovisions are processed if the number of devices in `<CrOSEntity>` exceeds `<Integer>`;
the default value is one; set `<Integer>` to 0 for no limit.
### 7.43.04
Added option `include_suspended_zeros [<Boolean>]` to `gam print vaultcounts` that causes
GAM to generate zero count lines for suspended users with zero items as well as non-suspended users.
### 7.43.03
Added option `parentpathonly [<Boolean>]` to the following commands that causes GAM
to display only the parent folder names when displaying the path to a file.
```
gam <UserTypeEntity> info drivefile ... filepath|fullpath
gam <UserTypeEntity> show fileinfo ... filepath|fullpath
gam <UserTypeEntity> print|show filepath
gam <UserTypeEntity> print filelist ... filepath|fullpath
```
### 7.43.02
Added option `maxactivities <Integer>` to `gam <UserTypeEntity> print driveactivity` to limit
the number of activities displayed; the default is 0, no limit.
### 7.43.01
Updated `gam info user` and `gam print users` to display guest user attributes: `isGuestUser, guestAccountInfo`

View File

@@ -251,10 +251,10 @@ writes the credentials into the file oauth2.txt.
```
gamteam@server:/Users/gamteam$ rm -f /Users/gamteam/GAMConfig/oauth2.txt
gamteam@server:/Users/gamteam$ gam version
GAM 7.43.01 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.44.03 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
macOS Tahoe 26.4.1 arm64
Python 3.14.5 64-bit final
macOS Tahoe 26.5 arm64
Path: /Users/gamteam/bin/gam7
Config File: /Users/gamteam/GAMConfig/gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com
@@ -1034,9 +1034,9 @@ writes the credentials into the file oauth2.txt.
```
C:\>del C:\GAMConfig\oauth2.txt
C:\>gam version
GAM 7.43.01 - https://github.com/GAM-team/GAM - pythonsource
GAM 7.44.03 - https://github.com/GAM-team/GAM - pythonsource
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
Python 3.14.5 64-bit final
Windows 11 10.0.26200 AMD64
Path: C:\GAM7
Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com

View File

@@ -50,7 +50,7 @@
| Assured Controls | 1010390001 | assuredcontrols |
| Assured Controls Plus | 1010390002 | assuredcontrolsplus |
| Chrome Enterprise Premium | 1010400001 | cep | chromeenterprisepremium |
| Cloud Identity | 1010010001 | cloudidentity |
| Cloud Identity Free | 1010010001 | cloudidentity |
| Cloud Identity Premium | 1010050001 | cloudidentitypremium |
| Cloud Search | 1010350001 | cloudsearch |
| Colab Pro | 1010500001 | colabpro |
@@ -163,7 +163,7 @@
assuredcontrolsplus | 1010390002 | Assured Controls Plus |
bce | beyondcorp | beyondcorpenterprise | cep | chromeenterprisepremium | 1010400001 | Chrome Enterprise Premium |
cdm | chrome | googlechromedevicemanagement | Google-Chrome-Device-Management |
cloudidentity | identity | 1010010001 | Cloud Identity |
cloudidentityfree| cloudidentity | identity | 1010010001 | Cloud Identity Free |
cloudidentitypremium | identitypremium | 1010050001 | Cloud Identity Premium |
cloudsearch | 1010350001 | Cloud Search |
colabpro | 1010500001 | Colab Pro |

View File

@@ -16,7 +16,7 @@
## Definitions
```
<QueryMobile> ::= <String>
<QueryMobile> ::= <String>:<String>
See: https://support.google.com/a/answer/7549103
<QueryMobileList> ::= "<QueryMobile>(,<QueryMobile>)*"
<ResourceID> ::= <String>

View File

@@ -12,6 +12,7 @@ Thank you.
* James Seymour - https://sites.google.com/view/gam--commands/
* Kevin Melillo - https://github.com/KevinMelilloIEEE/gam-script
* Korey Rideout - https://chatgpt.com/g/g-PTxxnVPMG-gam-assist-now-turbocharged-with-gam7
* Paul Ogier (Taming.Tech) - GAM Scripts https://github.com/PaulOgier/GAMScripts
* Paul Ogier (Taming.Tech) - GAM7 Course on Udemy https://taming.tech/GAMCourse
* Paul Ogier (Taming.Tech) - GAM7 Tutorials https://www.youtube.com/watch?v=g9LDeyXQNLI&list=PL_dLiK09pJVhKJxZHNk9CHK0q5hkZ856w
* Paul Ogier (Taming.Tech) - Installation videos

View File

@@ -14,6 +14,9 @@ Calendar ACL roles (as seen in Calendar GUI):
* `owner` - Make changes to events and manage sharing
* `freebusy` & `freebusyreader` - See only free/busy (hide details)
Added `writerwithoutprivateaccess` to `<CalendarACLRole>` in 7.44.03; this will become effective 2026-06-29.
* See: https://developers.google.com/workspace/calendar/release-notes#June_01_2026
## API documentation
* [Calendar API - ACLs](https://developers.google.com/google-apps/calendar/v3/reference/acl)
@@ -55,10 +58,10 @@ Calendar ACL roles (as seen in Calendar GUI):
(timezone <TimeZone>)
<CalendarACLRole> ::=
editor|freebusy|freebusyreader|owner|reader|writer
editor|freebusy|freebusyreader|owner|reader|writer|writerwithoutprivateaccess|none
<CalendarACLScope> ::=
<EmailAddress>|user:<EmailAdress>|group:<EmailAddress>|
domain:<DomainName>|domain|default
domain:<DomainName>|domain|default
<CalendarACLScopeList> ::=
"<CalendarACLScope>(,<CalendarACLScope>)*"
<CalendarACLScopeEntity>::=

View File

@@ -277,6 +277,7 @@
<EventMatchProperty> ::=
(matchfield attendees <EmailAddressEntity>)|
(matchfield attendeesorganizer <Boolean> <EmailAddressEntity>)|
(matchfield attendeesonlydomainlist <DomainNameList>)|
(matchfield attendeesdomainlist <DomainNameList>)|
(matchfield attendeesnotdomainlist <DomainNameList>)|
@@ -460,8 +461,11 @@ The Google Calendar API processes `<EventSelectProperty>*`; you may specify none
* `singleevents` - Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves
* `updatedmin <Time>` - Lower bound for an event's last modification time (as a RFC3339 timestamp) to filter by. When specified, entries deleted since this time will always be included regardless of showdeletedevents
GAM processes `<EventMatchProperty>*`; you may specify none or multiple properties.
* `matchfield attendees <EmailAddressEntity>` - All of the attendees in `<EmailAddressEntity>` must be present
GAM processes `<EventMatchProperty>*`
; you may specify none or multiple properties.
* `matchfield attendees <EmailAddressEntity>` - All of the addresses in `<EmailAddressEntity>` must be present as attendees
* `matchfield attendeesorganizer <Boolean> <EmailAddressEntity>` - All of the addressed in `<EmailAddressEntity>` must be present
as attendees and are an organizer or not based on `<Boolean>`
* `matchfield attendeesonlydomainlist <DomainNameList>` - All attendee's email addresses must be in a domain in `<DomainNameList>`
* For example, this lets you look for events with all attendees in your internal domains. You should include `resource.calendar.google.com`
in `<DomainNameList>` if the events use resources.

View File

@@ -16,6 +16,7 @@
- [Display Chat Members](#display-chat-members)
- [Manage Chat Messages](#manage-chat-messages)
- [Display Chat Messages](#display-chat-messages)
- [Display Chat Messages by Searching](#display-chat-messages-by-searching)
- [Display Chat Events](#display-chat-events)
- [Manage Chat Emojis](#manage-chat-emojis)
- [Display Chat Emojis](#display-chat-emojis)
@@ -65,6 +66,7 @@ Google requires that you have a Chat Bot configured in order to use the Chat API
* [Chat API - Custom Emojis](https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis)
* [Chat API - Members](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/list)
* [Chat API - Messages](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages/list)
* [Chat API - Search Messages](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages/search)
* [Chat API - Events](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.spaceEvents/list)
* [Chat API - User Sections](https://developers.google.com/workspace/chat/api/reference/rest/v1/users.sections)
* [Apps in Google Chat](https://support.google.com/chat/answer/7655820)
@@ -109,8 +111,8 @@ Google requires that you have a Chat Bot configured in order to use the Chat API
<ChatThread> ::= spaces/<String>/threads/<String>
<ChatSpaceType> ::=
space|
groupchat|
directmessage
groupchat|
directmessage
<ChatSpaceTypeList> ::= "<ChatSpaceType>(,<ChatSpaceType>)*"
<ChatMessageID> ::= client-<String>
<String> must contain only lowercase letters, numbers, and hyphens up to 56 characters in length.
@@ -908,7 +910,7 @@ gam user user@domain.com delete chatmessage name spaces/AAAADi-pvqc/messages/PKJ
```
## Display Chat Messages
Display a specific Chat message.
Display a specific chat message.
```
gam <UserTypeEntity> info chatmessage name <ChatMessage>
@@ -923,12 +925,15 @@ By default, Gam displays the information as an indented list of keys and values.
gam user user@domain.com info chatmessage name spaces/AAAADi-pvqc/messages/PKJrx90ooIU.PKJrx90ooIU
```
### Display information about all chat messages in a chat space
### Display information about chat messages in a chat space
```
gam <UserTypeEntity> show chatmessages
<ChatSpace>+
[showdeleted [<Boolean>]] [filter <String>]
[showdeleted [<Boolean>]]
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[thread <ChatThread>])
[fields <ChatMessageFieldNameList>]
[orderby createtime [ascending|descending]]
[formatjson]
```
By default, Gam displays the information as an indented list of keys and values.
@@ -937,8 +942,11 @@ By default, Gam displays the information as an indented list of keys and values.
```
gam <UserTypeEntity> print chatmessages [todrive <ToDriveAttribute>*]
<ChatSpace>+
[showdeleted [<Boolean>]] [filter <String>]
[showdeleted [<Boolean>]]
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[thread <ChatThread>])
[fields <ChatMessageFieldNameList>]
[orderby createtime [ascending|descending]]
[formatjson [quotechar <Character>]]
```
By default, Gam displays the information as columns of fields; the following option causes the output to be in JSON format,
@@ -952,38 +960,76 @@ The `quotechar <Character>` option allows you to choose an alternate quote chara
By default, deleted messages are not displayed; use `showdeleted` to also display deleted messages.
Use `filter <String>` to filter messages by `createTime` and `thread.name`.
To filter messages by the time they were created:
* `start|starttime <Date>|<Time>` - Display messages created on or after the `<Date>|<Time>`
* `end|endtime <Date>|<Time>` - Display messages created before the `<Date>|<Time>`
* `range <Date>|<Time> <Date>|<Time>` - Display messages created on or after the first `<Date>|<Time>` and before the second `<Date>|<Time>`
To filter messages by the date they were created, specify the createTime with a timestamp in RFC-3339 format and double quotation marks. For example, "2023-04-21T11:30:00-04:00".
* Use the greater than operator `>` to list messages that were created after a timestamp.
* Use the less than operator `<` to list messages that were created before a timestamp.
* To filter messages within a time interval, use the AND operator between two timestamps.
* To filter by thread, specify the thread.name, formatted as spaces/{space}/threads/{thread}. You can only specify one thread.name per query.
* To filter by both thread and date, use the AND operator in your query.
Use `thread <String>` to filter messages by their thread name, e.g., `spaces/AAAAAAAAAAA/threads/123`.
For example, the following queries are valid on Linux/MacOS:
## Display Chat Messages by Searching
These commands are in Developer Preview; to use them you must have these values set in `gam.cfg`.
```
filter 'createTime > "2012-04-21T11:30:00-04:00"'
filter 'createTime > "2012-04-21T11:30:00-04:00" AND thread.name = spaces/AAAAAAAAAAA/threads/123'
filter 'createTime > "2012-04-21T11:30:00+00:00" AND createTime < "2013-01-01T00:00:00+00:00" AND thread.name = spaces/AAAAAAAAAAA/threads/123'
filter 'thread.name = spaces/AAAAAAAAAAA/threads/123'
developer_preview_apis = chat
developer_preview_api_key = <DeveloperPreviewKey>
```
See the following for search option details:
https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages/search
For example, the following queries are valid on Windows Command Prompt:
```
filter "createTime > \"2012-04-21T11:30:00-04:00\""
filter "createTime > \"2012-04-21T11:30:00-04:00\" AND thread.name = spaces/AAAAAAAAAAA/threads/123"
filter "createTime > \"2012-04-21T11:30:00+00:00\" AND createTime < \"2013-01-01T00:00:00+00:00\" AND thread.name = spaces/AAAAAAAAAAA/threads/123"
filter "thread.name = spaces/AAAAAAAAAAA/threads/123"
```
You must specify `keywords <StringList>`; messages that match any word|phrase in `<StringList>` are displayed.
Phrases must be enclosed in `"`.
* Linux, macOS, Windows Command Prompt - `keywords "\"things to do\" urgent"`
* Windows Power Shell - ```keywords "`"things to do`" urgent"```
For example, the following queries are valid on Windows PowerShell:
By default, all spaces the user has access to are searched; use the following options to limit the search.
* `<ChatSpace>*` - Specific chat spaces
* `displaynames [all|any] <StringList>` - Spaces with display names with partial matches of `all|any` of the words in `<StringList>`
Use the following to limit the search to messages with specific characteristics.
* `senders <EmailAddressEntity>` - Messages with any sender in `<EmailAddressEntity>`
* `usermentions [all|any] <EmailAddressEntity>` - Messages with mentions of `all|any` users in `<EmailAddressEntity>`
* `start|starttime <Date>|<Time>` - Messages created on or after the `<Date>|<Time>`
* `end|endtime <Date>|<Time>` - Messages created before the `<Date>|<Time>`
* `range <Date>|<Time> <Date>|<Time>` - Messages created on or after the first `<Date>|<Time>` and before the second `<Date>|<Time>`
* `hasattachment` - Messages with at least one attachment
```
filter 'createTime > \"2012-04-21T11:30:00-04:00\"'
filter 'createTime > \"2012-04-21T11:30:00-04:00\" AND thread.name = spaces/AAAAAAAAAAA/threads/123"'
filter 'createTime > \"2012-04-21T11:30:00+00:00\" AND createTime < \"2013-01-01T00:00:00+00:00\" AND thread.name = spaces/AAAAAAAAAAA/threads/123'
filter 'thread.name = spaces/AAAAAAAAAAA/threads/123'
gam <UserTypeEntity> show chatsearchmessages
keywords <StringList>
<ChatSpace>*
[displaynames [all|any] <StringList>]
[senders <EmailAddressEntity>]*
[usermentions [all|any] <EmailAddressEntity>]*
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[hasattachment]
[fields <ChatMessageFieldNameList>]
[orderby createtime|relevance]
[formatjson]
```
By default, Gam displays the information as an indented list of keys and values.
* `formatjson` - Display the fields in JSON format.
```
gam <UserTypeEntity> print chatsearchmessages [todrive <ToDriveAttribute>*]
keywords <StringList>
<ChatSpace>*
[displaynames [all|any] <StringList>]
[senders <EmailAddressEntity>]*
[usermentions [all|any] <EmailAddressEntity>]*
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date>|<Time>)]
[hasattachment]
[fields <ChatMessageFieldNameList>]
[orderby createtime|relevance]
[formatjson [quotechar <Character>]]
```
By default, Gam displays the information as columns of fields; the following option causes the output to be in JSON format,
* `formatjson` - Display the fields in JSON format.
By default, when writing CSV files, Gam uses a quote character of double quote `"`. The quote character is used to enclose columns that contain
the quote character itself, the column delimiter (comma by default) and new-line characters. Any quote characters within the column are doubled.
When using the `formatjson` option, double quotes are used extensively in the data resulting in hard to read/process output.
The `quotechar <Character>` option allows you to choose an alternate quote character, single quote for instance, that makes for readable/processable output.
`quotechar` defaults to `gam.cfg/csv_output_quote_char`. When uploading CSV files to Google, double quote `"` should be used.
## Display Chat Events
Display a specific Chat event.

View File

@@ -72,7 +72,7 @@ gam <UserTypeEntity> print driveactivity [todrive <ToDriveAttributes>*]
(query <QueryDriveFile>)]
[([start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>])|(range <Date>|<Time> <Date)|<Time>|
yesterday|today|thismonth|(previousmonths <Integer>)]
[action|actions [not] <DriveActivityActionList>]
[action|actions [not] <DriveActivityActionList>] [maxactivities <Number>]
[consolidationstrategy legacy|none]
[idmapfile <FileName>|(gsheet <UserGoogleSheet>) [charset <String>] [columndelimiter <Character>] [noescapechar <Boolean>] [quotechar <Character>]]
[stripcrsfromname] [formatjson [quotechar <Character>]]
@@ -99,6 +99,8 @@ Google does the filtering.
* `action|actions <DriveActivityActionList>` - Only display activities with the specified actions; by default, all actions are displayed
* `action|actions not <DriveActivityActionList>` - Only display activities without the specified actions; by default, all actions are displayed
You can limit the number of activities displayed with the `maxactivities <Number>; the default is 0, no limit.
The API only returns a permissionId and user name for each event but no user email address. To get an email address perform the
following command to generate a file that contains the email address and permissionId for all users. You can substitute for `all users` if desired.
```

View File

@@ -528,7 +528,7 @@ There are two methods for moving a folder from a My Drive to a Shared Drive:
* GAM
* The Drive API doesn't allow moving a folder from a My Drive to a Shared Drive; GAM has to recreate the folders on the Shared Drive, thus changing their IDs
* Files are simply moved from their existing My Drive folder to the recreated Shared Drive folder; their IDs do not change
* Files owmed by users outside of your domain can't be moved
* Files owned by users outside of your domain can't be moved
## Simple moves by changing parents
Use this command in the following cases:

View File

@@ -425,7 +425,7 @@ Display file details in indented keyword: value format. The two forms are equiva
```
gam <UserTypeEntity> show fileinfo <DriveFileEntity>
[returnidonly]
[filepath|fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[filepath|fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[showdrivename] [showshareddrivepermissions]
@@ -436,7 +436,7 @@ gam <UserTypeEntity> show fileinfo <DriveFileEntity>
[formatjson]
gam <UserTypeEntity> info drivefile <DriveFileEntity>
[returnidonly]
[filepath|fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[filepath|fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[showdrivename] [showshareddrivepermissions]
@@ -455,6 +455,7 @@ Use `fullpath` to add additional path information indicating that a file is an O
By default, the path to a file includes the file name as the last element of the path.
Use `folderpathonly` to display only the folder names when displaying the path to a file. This folder only path
an be used in `gam <UserTypeEntity> create drivefolderpath` to recreate the folder hierarchy.
Use `parentpathonly` to display only the parent folder names when displaying the path to a file.
By default, file path components are separated by `/`; use `pathdelimiter <Character>` to use `<Character>` as the separator.
@@ -517,12 +518,12 @@ gam <UserTypeEntity> show filepath <DriveFileEntity>
[returnpathonly]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[stripcrsfromname]
[folderpathonly [<Boolean>]] [fullpath] [pathdelimiter <Character>]
[folderpathonly|parentpathonly [<Boolean>]] [fullpath] [pathdelimiter <Character>]
[followshortcuts [<Boolean>]]
gam <UserTypeEntity> print filepath <DriveFileEntity> [todrive <ToDriveAttribute>*]
(orderby <DriveFileOrderByFieldName> [ascending|descending])*
[stripcrsfromname] [oneitemperrow]
[fullpath] [folderpathonly [<Boolean>]] [pathdelimiter <Character>]
[fullpath] [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>]
[followshortcuts [<Boolean>]]
```
Use `returnpathonly` to display just the file path of the files in `<DriveFileEntity>`.
@@ -532,6 +533,7 @@ Use `fullpath` to add additional path information indicating that a file is an O
By default, the path to a file includes the file name as the last element of the path.
Use `folderpathonly` to display only the folder names when displaying the path to a file. This folder only path
an be used in `gam <UserTypeEntity> create drivefolderpath` to recreate the folder hierarchy.
Use `parentpathonly` to display only the parent folder names when displaying the path to a file.
By default, file path components are separated by `/`; use `pathdelimiter <Character>` to use `<Character>` as the separator.
@@ -1106,7 +1108,7 @@ gam <UserTypeEntity> print|show filelist [todrive <ToDriveAttribute>*]
[countsonly [summary none|only|plus] [summaryuser <String>]
[showsource] [showsize] [showsizeunits] [showmimetypesize]]
[countsrowfilter]
[filepath|fullpath [folderpathonly [<Boolean>]] [pathdelimiter <Character>] [addpathstojson] [showdepth]] [buildtree]
[filepath|fullpath [folderpathonly|parentpathonly [<Boolean>]] [pathdelimiter <Character>] [addpathstojson] [showdepth]] [buildtree]
[allfields|<DriveFieldName>*|(fields <DriveFieldNameList>)]
[showdrivename] [showshareddrivepermissions]
[(showlabels details|ids)|(includelabels <ClassificationLabelIDList>)]
@@ -1239,6 +1241,7 @@ JSON data rather than as additional columns
By default, the path to a file includes the file name as the last element of the path.
Use `folderpathonly` to display only the folder names when displaying the path to a file. This folder only path
an be used in `gam <UserTypeEntity> create drivefolderpath` to recreate the folder hierarchy.
Use `parentpathonly` to display only the parent folder names when displaying the path to a file.
By default, file path components are separated by `/`; use `pathdelimiter <Character>` to use `<Character>` as the separator.

View File

@@ -477,12 +477,12 @@ When `matchlabel <LabelName>` is specified, the following characters are replace
## Forward messages/threads
```
gam <UserTypeEntity> forward message|messages recipient|to <RecipientEntity>
gam <UserTypeEntity> forward message|messages [recipient|to] <RecipientEntity>
(((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
[labelids <LabelIDList>]
[quick|notquick] [doit] [max_to_forward <Number>])|(ids <MessageIDEntity>)
[subject <String>] [addorigfieldstosubject]
gam <UserTypeEntity> forward thread|threads recipient|to <RecipientEntity>
gam <UserTypeEntity> forward thread|threads [recipient|to] <RecipientEntity>
(((query <QueryGmail> [querytime<String> <Date>]*) (matchlabel <LabelName>) [or|and])+
[labelids <LabelIDList>]
[quick|notquick] [doit] [max_to_forward <Number>])|(ids <ThreadIDEntity>)

View File

@@ -257,11 +257,17 @@ gam print vaultcounts [todrive <ToDriveAttributes>*]
[excludedrafts <Boolean>]
[<JSONData>]
[wait <Integer>]
[include_suspended_zeros [<Boolean>]]
```
Specify the search method, this is optional:
* `accounts <EmailAddressEntity>` - Search all accounts specified in `<EmailAddressEntity>`
* `orgunit|org|ou <OrgUnitPath>` - Search all accounts in the OU `<OrgUnitPath>`
* `everyone|entireorg` - Search for all accounts in the organization
* `everyone|entireorg` - Search all accounts in the organization
By default, the Vault API doesn't return accounts with zero items; GAM
generates a zero count line for non-suspended accounts with zero items.
The `include_suspended_zeros` option causes GAM to generate a zero count line
for suspended accounts with zero items.
For `corpus mail|group`, you can specify search terms to limit the search.
* `terms <String>` - [Vault search](https://support.google.com/vault/answer/2474474)

View File

@@ -3,10 +3,10 @@
Print the current version of Gam with details
```
gam version
GAM 7.43.01 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.44.03 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
macOS Tahoe 26.4.1 arm64
Python 3.14.5 64-bit final
macOS Tahoe 26.5 arm64
Path: /Users/gamteam/bin/gam7
Config File: /Users/gamteam/GamConfig/gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com
Time: 2026-02-15T07:51:00-08:00
@@ -15,10 +15,10 @@ Time: 2026-02-15T07:51:00-08:00
Print the current version of Gam with details and time offset information
```
gam version timeoffset
GAM 7.43.01 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.44.03 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
macOS Tahoe 26.4.1 arm64
Python 3.14.5 64-bit final
macOS Tahoe 26.5 arm64
Path: /Users/gamteam/bin/gam7
Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com
Your system time differs from www.googleapis.com by less than 1 second
@@ -27,10 +27,10 @@ Your system time differs from www.googleapis.com by less than 1 second
Print the current version of Gam with extended details and SSL information
```
gam version extended
GAM 7.43.01 - https://github.com/GAM-team/GAM - pyinstaller
GAM 7.44.03 - https://github.com/GAM-team/GAM - pyinstaller
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
macOS Tahoe 26.4.1 arm64
Python 3.14.5 64-bit final
macOS Tahoe 26.5 arm64
Path: /Users/gamteam/bin/gam7
Config File: /Users/gamteam/GamConfig/gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com
Time: 2026-02-15T07:51:00-08:00
@@ -68,7 +68,7 @@ MacOS High Sierra 10.13.6 x86_64
Path: /Users/gamteam/bin/gam7
Version Check:
Current: 5.35.08
Latest: 7.43.01
Latest: 7.44.03
echo $?
1
```
@@ -76,7 +76,7 @@ echo $?
Print the current version number without details
```
gam version simple
7.43.01
7.44.03
```
In Linux/MacOS you can do:
```
@@ -86,10 +86,10 @@ echo $VER
Print the current version of Gam and address of this Wiki
```
gam help
GAM 7.43.01 - https://github.com/GAM-team/GAM
GAM 7.44.03 - https://github.com/GAM-team/GAM
GAM Team <google-apps-manager@googlegroups.com>
Python 3.14.4 64-bit final
macOS Tahoe 26.4.1 arm64
Python 3.14.5 64-bit final
macOS Tahoe 26.5 arm64
Path: /Users/gamteam/bin/gam7
Config File: /Users/gamteam/GamConfig/gam.cfg, Section: DEFAULT, customer_id: my_customer, domain: domain.com
Time: 2026-02-15T07:51:00-08:00