pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/sysutils/gam



Module Name:    pkgsrc
Committed By:   sborrill
Date:           Tue Dec  2 14:24:21 UTC 2025

Modified Files:
        pkgsrc/sysutils/gam: Makefile PLIST distinfo

Log Message:
gam: update to 7.29.01

Changes since 7.19.02:

7.29.01

Added option oneitemperrow to gam <UserTypeEntity> print calendars ... permissions to have each of a calendar's permissions displayed on a separate row with all of the other calendar fields.

Updated gam yubikey reset_piv to handle YubiKey firmware updates that caused an error.

7.29.00

Added options mappermissionsemail <EmailAddress> <EmailAddress> and  mappermissionsemailfile <CSVFileInput> endcsv to these commands:

gam [<UserTypeEntity>] copy shareddriveacls <SharedDriveEntity> to <SharedDriveEntity>
gam [<UserTypeEntity>] sync shareddriveacls <SharedDriveEntity> with <SharedDriveEntity>
gam <UserTypeEntity> copy drivefile <DriveFileEntity>
gam <UserTypeEntity> move drivefile <DriveFileEntity>

When mappermissionsemail <EmailAddress> <EmailAddress> is specifed, an ACL that references the first <EmailAddress> in the source will be modified to reference the second <EmailAddress> in the 
destination.

Bulk permission email address mapping can be specified with mappermissionsemailfile <CSVFileInput> endcsv. <CSVFileInput> must include these columns: sourceEmail and destinationEmail.

These options will be most useful with inter-workspace Shared Drive copies and moves.

7.28.13

Added option addcsvdata <FieldName> <String> to gam <UserTypeEntity> print messages that adds additional columns of data to the CSV file output.

7.28.12

Updated gam delete project to handle the following error:

ERROR: 400: failedPrecondition - Project not active

7.28.11

Removed all options/fields referencing inheritance from gam create|update|info|print org as this option/field is deprecated.

7.28.10

Added a command gam print course-counts that displays the count of the number of courses in which a teacher or student is a participant.

7.28.09

Fixed bug in gam print cigroups ... descriptionmatchpattern [not] <REMatchPattern> that caused a trap.

7.28.08

Updated gam <UserTypeEntity> print|show chatmessages to cache the sender UID to email address map so that each sender UID only has to be looked up once; this improves performance.

7.28.07

Fixed bug in gam report users ... aggregatebydate|aggregatebyuser where accounts:used_quota_in_percentage was incorrectly displayed.

7.28.06

Updated gam <UserTypeEntity> info|print|show calendars and gam calendars <CalendarEntity> print|show settings to display the new dataOwner field

7.28.04

Updated commands that display Chrome device counts to display the date in the output.

7.28.03

Improved commands to display Chrome device counts.

7.28.02

Added commands to display Chrome device counts.

7.28.01

Updated gam <UserTypeEntity> show fileinfo <DriveFileEntity> to display displayName as the key field of a permission not deleted.

7.28.00

Added option addcsvdata <FieldName> <String> to gam report [usage] customers|users that adds additional columns of data to the CSV file output. This will be most useful when reading a CSV of user 
information and you want to include some of the user information, e.g., orgUnitPath, in the output.

gam redirect csv ./Users.csv print users fields ou
gam redirect csv ./UserStorageInfo.csv multiprocess csv Users.csv gam report users user "~primaryEmail" parameters 
accounts:drive_used_quota_in_mb,accounts:gmail_used_quota_in_mb,accounts:gplus_photos_used_quota_in_mb,accounts:total_quota_in_mb,accounts:used_quota_in_mb,accounts:used_quota_in_percentage 
addcsvdata orgUnitPath "~orgUnitPath"

7.27.05

Added option addcsvdata <FieldName> <String> to gam print courses that adds additional columns of data to the CSV file output.

The following scope is no longer necessary: Cloud Identity API - Groups Beta (Enables group locking/unlocking) as this scope Cloud Identity API - Groups now provides group locking/unlocking.

7.27.04

Added options to gam <UserTypeEntity> create delegate that support sending email notifications when a user adds a delegate.

7.27.03

Updated gam <UserTypeEntity> create|update|sync chatmember role specification to role member|manager|owner. This is the mapping between the Chat UI and Chat API; GAM uses the Chat UI role names.

UI: Member,  API: ROLE_MEMBER
UI: Manager, API: ROLE_ASSISTANT_MANAGER
UI: Owner,   API: ROLE_MANAGER

Updated gam <UserTypeEntity> update chatspace options for permission settings.

        [managemembersandgroups owners|managers|members]
        [modifyspacedetails owners|managers|members]
        [togglehistory owners|managers|members]
        [useatmentionall owners|managers|members]
        [manageapps owners|managers|members]
        [managewebhooks owners|managers|members]
        [replymessages owners|managers|members]

7.27.02

Added option clearattachments <String> to gam [<UserTypeMessage>] update chatmessage that clears all attachments from a Chat message. If <ChatContent> is not specified, the current message text is 
retained and <String> is appended; <String> must be specified but can be empty in which case the current message test is preserved as-is.

7.27.01

Fixed bug in gam <UserTypeEntity> claim ownership <DriveFileEntity> ... onlyUsers|skipusers <UserTypeEntity> where the email addresses in onlyUsers|skipusers <UserTypeEntity> were not normalized.

7.27.00

Added debug_redaction Boolean variable to gam.cfg. When True, the default, sensitive data like access/refresh tokens, client secret and authorization codes are redacted from debug output. This allows 
you to post debug output without compromising your account information. Even with debug redaction, anything shared publicly should be double-checked for sensitive content.

7.25.01

Fixed bug in gam config timezone <String> to handle timezone abbreviations correctly; they were incorrectly shifted to lowercase.

7.25.00

Removed a capabilty added in 7.24.00 that allowed reading command data from Google Docs and Sheets when a user's service account access to Drive and Sheets had been disabled. Jay was concerned that 
this change could be exploited to give access to all user's files.

This capability has been replaced by issuing the following commands. The admin specified in gam oauth create can read command data from Docs and Sheets to which it has access.

gam config commanddata_clientaccess true save
gam oauth create
Enable the following and proceed to authorization.

[*] 42)  Drive API - commanddata_clientaccess
[*] 54)  Sheets API - commanddata_clientaccess

Fixed in bug in gam report that caused a trap with either of the thismonth or previousmonths options were used.

Upgraded to Python 3.14.0.

7.24.01

Updated GAM to handle the following error that occurs when GAM tries to authenticate as a user that has been disabled by Google.

ERROR: Authentication Token Error - invalid_account: Forbidden

7.24.00

If you want to disable a user's service account access to Drive and Sheets but still allow reading command data from Google Docs and Sheets, issue the following command and make these settings:

gam user user%domain.com@localhost update serviceaccount

[ ] 20)  Drive API (supports readonly)
[*] 21)  Drive API - read command data
[ ] 42)  Sheets API (supports readonly)
[*] 43)  Sheets API - read command data

7.23.07

Fixed bug in gam print|show admins where all admin assignments were not displayed when types <AdminAssigneeTypeList> was not specified, i.e., all assignments should be displayed.

7.23.06

Added option types <AdminAssigneeTypeList> to gam print|show admins that allows filtering of admin assignments by the type of the assignee; by default, all assignee types are displayed.

<AdminAssigneeType> ::= group|user|serviceaccount|unknown
<AdminAssigneeTypeList> ::= "<AdminAssigneeType>(,<AdminAssigneeType>)*"

7.23.05

Added option recursive to gam print|show admins that will display assignments to the members of security groups assigned to roles; the security group membership is recursively expanded.

7.23.04

Added option addcsvdata <FieldName> <String> to gam <UserTypeEntity> print events and gam calendars <CalendarEntity> print events that adds additional columns of data to the CSV file output. An 
example would be to get the calendar name in addition to the calendar ID when printing events.

gam redirect csv ./Resources.csv print resources fields email,name
gam redirect csv ./ResourceEventCounts.csv multiprocess redirect stderr - multiprocess csv Resources.csv gam calendar "~resourceEmail" print events starttime -1y countsonly addcsvdata calendarName 
"~resourceName"

Upgraded to OpenSSL 3.6.0.

7.23.03

Upgraded to OpenSSL 3.5.4.

7.23.02

Added option oneitemperrow to 'gam print course-materials|course-work` to have each of a course's materials displayed on a separate row with all of the other course fields. This produces a CSV file 
that can be used in subsequent commands to process the materials without further script processing.

7.23.00

Added chat_max_results variable to gam.cfg.

chat_max_results
    When retrieving lists of Chat items from API,
    how many should be retrieved in each API call
    Default: 100
    Range: 1 - 1000

Previously, this vaule was always set to 1000 which could cause errors.

7.22.07

Added options showdetails and returnidonly to gam create|copy vaultquery.

Added option <JSONData> to gam create vaultexport|vaultquery and gam print vaultcounts``.

7.22.06

Added commands to create, copy and delete Vault saved queries.

gam create vaultquery <MatterItem> [name <String>]
        corpus calendar|drive|gemini|groups|hangouts_chat|mail|voice
        [scope all_data|held_data|unprocessed_data]
        (accounts <EmailAddressEntity>) | (orgunit|org|ou <OrgUnitPath>) | everyone
        (documentids  (<DriveFileIDList>|(select <FileSelector>|<CSVFileSelector>))) |
        (shareddrives|teamdrives (<SharedDriveIDList>|(select <FileSelector>|<CSVFileSelector>))) |
        [(includeshareddrives <Boolean>)|(shareddrivesoption included|included_if_account_is_not_a_member|not_included)]
        (sitesurl (<URLList>||(select <FileSelector>|<CSVFileSelector>)))
        [driveversiondate <Date>|<Time>]
        [includerooms <Boolean>]
        (rooms (<ChatSpaceList>|(select <FileSelector>|<CSVFileSelector>))) |
        [terms <String>] [start|starttime <Date>|<Time>] [end|endtime <Date>|<Time>] [timezone <TimeZone>]
        [locationquery <StringList>] [peoplequery <StringList>] [minuswords <StringList>]
        [responsestatuses <AttendeeStatus>(,<AttendeeStatus>)*] [calendarversiondate <Date>|<Time>]
        (covereddata calllogs|textmessages|voicemails)*
        [shownames] [formatjson]

gam copy vaultquery <MatterItem> <QueryItem> [targetmatter <MatterItem"] [name <String>]
        [shownames] [formatjson]

gam delete vaultquery <QueryItem> matter <MatterItem>
gam delete vaultquery <MatterItem> <QueryItem>

Added a variant of gam print vaultcounts that gets its query parameters from a saved Vault query.

gam print vaultcounts [todrive <ToDriveAttributes>*]
        matter <MatterItem> <QueryItem>
        [wait <Integer>]

7.22.05

Added a variant of gam create vaultexport that gets its query parameters from a saved Vault query.

gam create vaultexport|export matter <MatterItem> [name <String>]
        vaultquery <QueryItem>
        [driveclientsideencryption any|encrypted|unencrypted]
        [includeaccessinfo <Boolean>]
        [excludedrafts <Boolean>] [mailclientsideencryption any|encrypted|unencrypted]
        [showconfidentialmodecontent <Boolean>] [usenewexport <Boolean>] [exportlinkeddrivefiles <Boolean>]
        [format ics|mbox|pst|xml]
        [region any|europe|us] [showdetails|returnidonly]

7.22.04

Added a variant of gam create vaulthold that gets its parameters from a saved Vault query.

gam create vaulthold matter <MatterItem> [name <String>]
        vaultquery <QueryItem>
        [showdetails|returnidonly]

7.22.03

Fix backwards compatability bug introduced in 7.22.00 for gam print users that changed suspended from a field name to a query option; it is now correctly interpreted as a field name.

7.22.02

An update to the httplib2 library caused GAM proxy connections to fail; this has been fixed by including the pysocks library needed by the latest httplib2 library.

7.22.00

Expanded <UserTypeEntity> to allow specification of non-archived/archived users.

    See Collections of Users

These commands have also been updated to deal with archived users:

    gam print aliases
    gam update groups
    gam info orgs
    gam print orgs
    gam print users

Added datetime <DateTimeFormat> command that can be embedded in Gam batch files. The current time is formatted with <DateTimeFormat> and subsequent lines in <BatchContent> will have %datetime% 
replaced with the formatted time value.

7.21.03

Added option notifyrecoveryemail to gam create user and gam <UserTypeEntity> update user password <String> that sends the passsword notification email to the user's recovery email address (if 
defined).

7.21.02

GAM now builds on macOS 26 Tahoe and properly identifies the OS.

A custom build of the cryptography library is no longer needed for Windows arm64 builds as the project now releases their own build for the OS.

Upgrade to OpenSSL 3.5.3 latest

7.21.01

Replaced datetime, dateutil, calendar and iso8601 Python libraries with arrow library. This should have no performance impact; report any problems.

You can now use timezone names when setting timezone in gam.cfg.

gam config timezone America/Los_Angeles save

7.20.04

Cleaned up Python library imports: googleapiclient, iso8601

7.20.03

Rebranded license SKU 1010470004 from Gemini Education to Google AI Pro for Education.

Additional updates to student groups in Google Classroom.

7.20.02

Upgraded gam create course-studentgroups to allow specification of multiple student group titles; multiple student groups can be created in a single command.

    ((title <String>)|(select <StringEntity))+

7.20.01

Added option showaccesssettings to gam [<UserTypeEntity>] print|show chatspaces. When listing Chat Spaces, the Chat API does not return the accessSettings field; if you need to see this field, add 
showaccesssettings to the command. This requires an additional Chat API call per chat space of type SPACE to get the accessSettings field.

7.20.00

Added initial support for student groups in Google Classroom. This is a work in progress and requires Developer Preview membership.

7.19.03

Fixed bug where specifying a <UserItem> as id:1234567890 could lead to errors like this:

ERROR: 400: invalidArgument - Resource name has invalid email.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 pkgsrc/sysutils/gam/Makefile
cvs rdiff -u -r1.8 -r1.9 pkgsrc/sysutils/gam/PLIST
cvs rdiff -u -r1.10 -r1.11 pkgsrc/sysutils/gam/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/sysutils/gam/Makefile
diff -u pkgsrc/sysutils/gam/Makefile:1.18 pkgsrc/sysutils/gam/Makefile:1.19
--- pkgsrc/sysutils/gam/Makefile:1.18   Fri Aug 29 13:50:22 2025
+++ pkgsrc/sysutils/gam/Makefile        Tue Dec  2 14:24:21 2025
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.18 2025/08/29 13:50:22 wiz Exp $
+# $NetBSD: Makefile,v 1.19 2025/12/02 14:24:21 sborrill Exp $
 
-DISTNAME=      gam-7.19.02
+DISTNAME=      gam-7.29.01
 CATEGORIES=    sysutils python
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=GAM-team/}
 GITHUB_PROJECT=        GAM
@@ -23,6 +23,7 @@ DEPENDS+=     ${PYPKGPREFIX}-dateutil-[0-9]*
 DEPENDS+=      ${PYPKGPREFIX}-filelock-[0-9]*:../../devel/py-filelock
 DEPENDS+=      ${PYPKGPREFIX}-passlib>=1.7.2:../../security/py-passlib
 DEPENDS+=      ${PYPKGPREFIX}-lxml-[0-9]*:../../textproc/py-lxml
+DEPENDS+=      ${PYPKGPREFIX}-arrow-[0-9]*:../../time/py-arrow
 
 REPLACE_PYTHON+=       src/gam/__init__.py
 

Index: pkgsrc/sysutils/gam/PLIST
diff -u pkgsrc/sysutils/gam/PLIST:1.8 pkgsrc/sysutils/gam/PLIST:1.9
--- pkgsrc/sysutils/gam/PLIST:1.8       Fri Aug 29 13:42:23 2025
+++ pkgsrc/sysutils/gam/PLIST   Tue Dec  2 14:24:21 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.8 2025/08/29 13:42:23 sborrill Exp $
+@comment $NetBSD: PLIST,v 1.9 2025/12/02 14:24:21 sborrill Exp $
 bin/gam
 ${PYSITELIB}/gam/__init__.py
 ${PYSITELIB}/gam/__init__.pyc
@@ -52,8 +52,6 @@ ${PYSITELIB}/gam/cacerts.pem
 ${PYSITELIB}/gam/cbcm-v1.1beta1.json
 ${PYSITELIB}/gam/contactdelegation-v1.json
 ${PYSITELIB}/gam/datastudio-v1.json
-${PYSITELIB}/gam/meet-v2beta.json
-${PYSITELIB}/gam/serviceaccountlookup-v1.json
 ${PYSITELIB}/gam/gamlib/__init__.py
 ${PYSITELIB}/gam/gamlib/__init__.pyc
 ${PYSITELIB}/gam/gamlib/__init__.pyo
@@ -135,60 +133,8 @@ ${PYSITELIB}/gam/gdata/service.pyo
 ${PYSITELIB}/gam/gdata/urlfetch.py
 ${PYSITELIB}/gam/gdata/urlfetch.pyc
 ${PYSITELIB}/gam/gdata/urlfetch.pyo
-${PYSITELIB}/gam/googleapiclient/__init__.py
-${PYSITELIB}/gam/googleapiclient/__init__.pyc
-${PYSITELIB}/gam/googleapiclient/__init__.pyo
-${PYSITELIB}/gam/googleapiclient/_auth.py
-${PYSITELIB}/gam/googleapiclient/_auth.pyc
-${PYSITELIB}/gam/googleapiclient/_auth.pyo
-${PYSITELIB}/gam/googleapiclient/_helpers.py
-${PYSITELIB}/gam/googleapiclient/_helpers.pyc
-${PYSITELIB}/gam/googleapiclient/_helpers.pyo
-${PYSITELIB}/gam/googleapiclient/channel.py
-${PYSITELIB}/gam/googleapiclient/channel.pyc
-${PYSITELIB}/gam/googleapiclient/channel.pyo
-${PYSITELIB}/gam/googleapiclient/discovery.py
-${PYSITELIB}/gam/googleapiclient/discovery.pyc
-${PYSITELIB}/gam/googleapiclient/discovery.pyo
-${PYSITELIB}/gam/googleapiclient/discovery_cache/__init__.py
-${PYSITELIB}/gam/googleapiclient/discovery_cache/__init__.pyc
-${PYSITELIB}/gam/googleapiclient/discovery_cache/__init__.pyo
-${PYSITELIB}/gam/googleapiclient/discovery_cache/appengine_memcache.py
-${PYSITELIB}/gam/googleapiclient/discovery_cache/appengine_memcache.pyc
-${PYSITELIB}/gam/googleapiclient/discovery_cache/appengine_memcache.pyo
-${PYSITELIB}/gam/googleapiclient/discovery_cache/base.py
-${PYSITELIB}/gam/googleapiclient/discovery_cache/base.pyc
-${PYSITELIB}/gam/googleapiclient/discovery_cache/base.pyo
-${PYSITELIB}/gam/googleapiclient/discovery_cache/file_cache.py
-${PYSITELIB}/gam/googleapiclient/discovery_cache/file_cache.pyc
-${PYSITELIB}/gam/googleapiclient/discovery_cache/file_cache.pyo
-${PYSITELIB}/gam/googleapiclient/errors.py
-${PYSITELIB}/gam/googleapiclient/errors.pyc
-${PYSITELIB}/gam/googleapiclient/errors.pyo
-${PYSITELIB}/gam/googleapiclient/http.py
-${PYSITELIB}/gam/googleapiclient/http.pyc
-${PYSITELIB}/gam/googleapiclient/http.pyo
-${PYSITELIB}/gam/googleapiclient/mimeparse.py
-${PYSITELIB}/gam/googleapiclient/mimeparse.pyc
-${PYSITELIB}/gam/googleapiclient/mimeparse.pyo
-${PYSITELIB}/gam/googleapiclient/model.py
-${PYSITELIB}/gam/googleapiclient/model.pyc
-${PYSITELIB}/gam/googleapiclient/model.pyo
-${PYSITELIB}/gam/googleapiclient/schema.py
-${PYSITELIB}/gam/googleapiclient/schema.pyc
-${PYSITELIB}/gam/googleapiclient/schema.pyo
-${PYSITELIB}/gam/googleapiclient/version.py
-${PYSITELIB}/gam/googleapiclient/version.pyc
-${PYSITELIB}/gam/googleapiclient/version.pyo
-${PYSITELIB}/gam/iso8601/__init__.py
-${PYSITELIB}/gam/iso8601/__init__.pyc
-${PYSITELIB}/gam/iso8601/__init__.pyo
-${PYSITELIB}/gam/iso8601/iso8601.py
-${PYSITELIB}/gam/iso8601/iso8601.pyc
-${PYSITELIB}/gam/iso8601/iso8601.pyo
-${PYSITELIB}/gam/six.py
-${PYSITELIB}/gam/six.pyc
-${PYSITELIB}/gam/six.pyo
+${PYSITELIB}/gam/meet-v2beta.json
+${PYSITELIB}/gam/serviceaccountlookup-v1.json
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
 ${PYSITELIB}/${WHEEL_INFODIR}/RECORD
 ${PYSITELIB}/${WHEEL_INFODIR}/WHEEL

Index: pkgsrc/sysutils/gam/distinfo
diff -u pkgsrc/sysutils/gam/distinfo:1.10 pkgsrc/sysutils/gam/distinfo:1.11
--- pkgsrc/sysutils/gam/distinfo:1.10   Fri Aug 29 13:42:23 2025
+++ pkgsrc/sysutils/gam/distinfo        Tue Dec  2 14:24:21 2025
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.10 2025/08/29 13:42:23 sborrill Exp $
+$NetBSD: distinfo,v 1.11 2025/12/02 14:24:21 sborrill Exp $
 
-BLAKE2s (gam-7.19.02.tar.gz) = 5f9479ab2da95caef07b947e88e114ddfe2fd9ab3ff7c8f3a4bb7cee24ec95dc
-SHA512 (gam-7.19.02.tar.gz) = d8fd47e1a806497fc9e3d0e27d63c4de4aaec76cbeb811edf05b5d6a1c9842c03d7ff99d528b01c7146a9ce8c1e891f8a30c11bb7dbe9de3551dfde83a6e839b
-Size (gam-7.19.02.tar.gz) = 1929869 bytes
+BLAKE2s (gam-7.29.01.tar.gz) = 1838a81f97cd856ea3ff643954ceabcfb81eefcf2c9b6d0dd2bd3fe8d46dc36f
+SHA512 (gam-7.29.01.tar.gz) = 12e326f1b755d6f9a82410881eda48ecca6a71b3c00d63aa88572a8c38767e9a5cf4f4681d517198b274045e3d9ce9414c0960a17429799ddd9ab443996ad064
+Size (gam-7.29.01.tar.gz) = 1877203 bytes



Home | Main Index | Thread Index | Old Index