{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":40558308,"defaultBranch":"main","name":"gtm-session-fetcher","ownerLogin":"google","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-08-11T18:27:59.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1342004?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1713460015.0","currentOid":""},"activityList":{"items":[{"before":"0382ca27f22fb3494cf657d8dc356dc282cd1193","after":"f6dfa68b72527ad85e8c2e96d84edbec8304d7ef","ref":"refs/heads/main","pushedAt":"2024-04-23T13:32:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Update GTMSessionUploadFetcher.h\n\noccured -> occurred","shortMessageHtmlLink":"Update GTMSessionUploadFetcher.h"}},{"before":"9f546129d211dfdbd674c22bfd84e0c1d364524b","after":"0382ca27f22fb3494cf657d8dc356dc282cd1193","ref":"refs/heads/main","pushedAt":"2024-04-18T17:05:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Correct the modular header support.\n\nLooks like the suggested fix in #384 was likely wrong, swap to what seems to be\nthe more correct directive.\n\nFixes #389","shortMessageHtmlLink":"Correct the modular header support."}},{"before":"bc8972686f8797713af26b8eb24e85e2a6b972a3","after":"9f546129d211dfdbd674c22bfd84e0c1d364524b","ref":"refs/heads/main","pushedAt":"2024-04-18T15:32:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump to prep for a release.","shortMessageHtmlLink":"Version bump to prep for a release."}},{"before":"450e87f1ebac35ac7aca2e5641388bed89b4c815","after":"bc8972686f8797713af26b8eb24e85e2a6b972a3","ref":"refs/heads/main","pushedAt":"2024-04-16T13:47:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump to start getting things ready for a release.","shortMessageHtmlLink":"Version bump to start getting things ready for a release."}},{"before":"a257ea19086ecf1d13cbe475ed602110084cfd34","after":"450e87f1ebac35ac7aca2e5641388bed89b4c815","ref":"refs/heads/main","pushedAt":"2024-04-09T20:06:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Add ability to set `stopFetchingTriggersCompletionHandler` on all fetchers vended by `GTMSessionFetcherService`","shortMessageHtmlLink":"Add ability to set stopFetchingTriggersCompletionHandler on all fet…"}},{"before":"9534039303015a84837090d20fa21cae6e5eadb6","after":"a257ea19086ecf1d13cbe475ed602110084cfd34","ref":"refs/heads/main","pushedAt":"2024-04-02T16:03:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Add `DEFINES_MODULE` to support downstream usage of static libs\n\nFixes #384","shortMessageHtmlLink":"Add DEFINES_MODULE to support downstream usage of static libs"}},{"before":"257f7e54e9130f935f7495e6eeccee6830ea952f","after":"9534039303015a84837090d20fa21cae6e5eadb6","ref":"refs/heads/main","pushedAt":"2024-03-20T15:40:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump","shortMessageHtmlLink":"Version bump"}},{"before":"8a28c45778a9748da9f29744dde180da6d852348","after":"257f7e54e9130f935f7495e6eeccee6830ea952f","ref":"refs/heads/main","pushedAt":"2024-03-15T16:30:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"Add visionOS support. (#382)","shortMessageHtmlLink":"Add visionOS support. (#382)"}},{"before":"7f57936a81243c27f568b7682018ba7a843f0ba5","after":"8a28c45778a9748da9f29744dde180da6d852348","ref":"refs/heads/main","pushedAt":"2024-02-28T00:16:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"CI: Update destination to something better for Xcode 15.","shortMessageHtmlLink":"CI: Update destination to something better for Xcode 15."}},{"before":"42ed23d8e99afa780e82b7be23ba00fc9fe7e668","after":"7f57936a81243c27f568b7682018ba7a843f0ba5","ref":"refs/heads/main","pushedAt":"2024-02-27T23:49:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Move CI to macos-14 and use Xcode 14.2.","shortMessageHtmlLink":"Move CI to macos-14 and use Xcode 14.2."}},{"before":"79653ec2be449d8c17aa8807b36679299de55958","after":"42ed23d8e99afa780e82b7be23ba00fc9fe7e668","ref":"refs/heads/main","pushedAt":"2024-02-12T21:01:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"And direct path for schema not changing. (#379)\n\nTo simplify the flow a little but also avoid doing any work in cases where the\r\nredirect doesn't change the scheme, and an explicit path for that in the\r\nredirection validations.","shortMessageHtmlLink":"And direct path for schema not changing. (#379)"}},{"before":"0498f59a11f18c5a4164eb192c759088eb1eba3c","after":"79653ec2be449d8c17aa8807b36679299de55958","ref":"refs/heads/main","pushedAt":"2024-02-08T20:41:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"Update test for iOS 17 (and related OSes) NSURL changes. (#378)\n\n+[NSURL URLWithString:] changed with iOS 17 (and the related OSes), it used\r\nto always fail (return nil) for some invalid urls. The test depended on that\r\nbehavior. Now NSURL will escape the characters that would have failed things\r\nbefore.\r\n\r\nSince the test is calling an internal helper it will only ever see urls that\r\nreturn in redirect responses from servers. So there is no real way a server\r\nshould ever return something matched the test case. Rather that change the\r\nlogic in the handling, revise the test to explicitly test the nil case that\r\nwas desired.\r\n\r\nIf there ever is a concern that a server might get some other redirect from\r\n\"secure\" to \"insecure\", then we can revise the logic at that time. (it would\r\nonly be around protocol changes)\r\n\r\nFixes #368","shortMessageHtmlLink":"Update test for iOS 17 (and related OSes) NSURL changes. (#378)"}},{"before":"76135c9f4e1ac85459d5fec61b6f76ac47ab3a4c","after":"0498f59a11f18c5a4164eb192c759088eb1eba3c","ref":"refs/heads/main","pushedAt":"2024-01-26T20:53:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"The base image has a new enough cocoapods, no need to update.","shortMessageHtmlLink":"The base image has a new enough cocoapods, no need to update."}},{"before":"aac6380a307f956e6288be7c070408c2476f355e","after":"76135c9f4e1ac85459d5fec61b6f76ac47ab3a4c","ref":"refs/heads/main","pushedAt":"2024-01-26T19:35:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Include a cocoapods_version requirement.","shortMessageHtmlLink":"Include a cocoapods_version requirement."}},{"before":"4a83c0bffab8e5ac41315ccffd995ffa80aea5e8","after":"aac6380a307f956e6288be7c070408c2476f355e","ref":"refs/heads/main","pushedAt":"2024-01-26T15:50:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"Add xcprivacy manifest info. (#372)\n\nCore -\r\n If using the NSURLSession background fetch support, the data to restore\r\n download information across app launches is recorded in NSUserDefaults.\r\n\r\nFull -\r\n No api's called by these sources.\r\n\r\nLogView -\r\n DDA9.1 isn't correct because the data isn't displayed, the data is just used\r\n to sort the log names within the LogView UX so they are properly ordered.\r\n\r\n The data is *not* sent off the device, C617.1 doesn't state that, but nothing\r\n else seems to be a match since the data isn't directly displayed.\r\n\r\nFixes #360","shortMessageHtmlLink":"Add xcprivacy manifest info. (#372)"}},{"before":"1e8fd7c0149109da113eaa861c5e86961ffd2dab","after":"4a83c0bffab8e5ac41315ccffd995ffa80aea5e8","ref":"refs/heads/main","pushedAt":"2024-01-26T15:05:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Move to actions/checkout@v4 to avoid warnings.\n\nCurrent CI runs are reporting:\n\n> Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.","shortMessageHtmlLink":"Move to actions/checkout@v4 to avoid warnings."}},{"before":"a0cfac7672f453d8033d56f2059995f3521a8fed","after":"1e8fd7c0149109da113eaa861c5e86961ffd2dab","ref":"refs/heads/main","pushedAt":"2024-01-25T19:47:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump for a release.","shortMessageHtmlLink":"Version bump for a release."}},{"before":"ffb0463f5e57d250c101eca46fc9cb5a0035dc6c","after":"a0cfac7672f453d8033d56f2059995f3521a8fed","ref":"refs/heads/main","pushedAt":"2024-01-18T18:50:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Remove unneeded import statement.","shortMessageHtmlLink":"Remove unneeded import statement."}},{"before":"27d603b9557cb3038fc341645c00c7abc8d6f9f7","after":"ffb0463f5e57d250c101eca46fc9cb5a0035dc6c","ref":"refs/heads/main","pushedAt":"2024-01-11T17:26:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Remove +[GTMSessionFetcher deleteLogDirectoriesOlderThanDate:]\n\nA google search seems to say it wasn't used by anyone, and it uses\n`NSURLContentModificationDateKey`; this avoids having to include add an entry in\nan xcprivacy manifest for the main library just for this unused api.","shortMessageHtmlLink":"Remove +[GTMSessionFetcher deleteLogDirectoriesOlderThanDate:]"}},{"before":"115f75e43851774934d695449a4836123c3246e1","after":"27d603b9557cb3038fc341645c00c7abc8d6f9f7","ref":"refs/heads/main","pushedAt":"2024-01-04T15:28:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"[UnitTests] Fix order-dependent synchronous decorator tests\n\nThe decorator tests which used synchronous decorators started failing\nif they were run alone (before any of the other tests).\n\nThis broke in\nhttps://github.com/google/gtm-session-fetcher/commit/d469daaafc456f2fc4625918987c0345761a2648\n, when I enabled `GTMStandardUserAgentProvider` by default in fetchers\nwhich don't otherwise specify a user-agent provider.\n\nThe issue is that `GTMStandardUserAgentProvider` itself is\nasynchronous, but only the first time it's ever invoked (after that,\nit caches its result in a process-wide cache).\n\nThe synchronous decorator tests assumed they'd always stay synchronous,\nbut this wasn't the case if they used `GTMStandardUserAgentProvider`\nand were the first tests to run in the process.\n\nThis fixes the issue by always providing a `GTMUserAgentStringProvider`\nfor the synchronous decorator tests.\n\nTested:\n `swift test` passes.\n Also ran test\n `-[GTMSessionFetcherServiceTest testMultipleDecoratorsSynchronous]`\n by itself and ensured it failed before this change and passed after\n this change.","shortMessageHtmlLink":"[UnitTests] Fix order-dependent synchronous decorator tests"}},{"before":"3637236aba9a1f9b9eee0e2d08f1939691cbe39b","after":"115f75e43851774934d695449a4836123c3246e1","ref":"refs/heads/main","pushedAt":"2023-11-20T18:20:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump to prep for a release.","shortMessageHtmlLink":"Version bump to prep for a release."}},{"before":"8bb594105d2af990d1060f4ca42e9b4b972d0c71","after":"3637236aba9a1f9b9eee0e2d08f1939691cbe39b","ref":"refs/heads/main","pushedAt":"2023-10-25T19:13:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Support -Wstrict-prototype by declaring no args.","shortMessageHtmlLink":"Support -Wstrict-prototype by declaring no args."}},{"before":"4438869e2bf4d4093fc29bb899852f62082316fb","after":"8bb594105d2af990d1060f4ca42e9b4b972d0c71","ref":"refs/heads/main","pushedAt":"2023-10-25T17:52:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Fix for local overwrite.\n\nwarning: Value stored to 'fnctr' during its initialization is never read [deadcode.DeadStores]","shortMessageHtmlLink":"Fix for local overwrite."}},{"before":"d469daaafc456f2fc4625918987c0345761a2648","after":"4438869e2bf4d4093fc29bb899852f62082316fb","ref":"refs/heads/main","pushedAt":"2023-08-16T18:57:05.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Fix existing concurrency issue in GTMFetcherCleanedUserAgentString()","shortMessageHtmlLink":"Fix existing concurrency issue in GTMFetcherCleanedUserAgentString()"}},{"before":"be6515504e6d55c828c5c405cd921a691d61454e","after":"d469daaafc456f2fc4625918987c0345761a2648","ref":"refs/heads/main","pushedAt":"2023-07-25T14:22:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Use new GTMUserAgentProvider by default","shortMessageHtmlLink":"Use new GTMUserAgentProvider by default"}},{"before":"a3f02a12ef62095632ca9bd8dbdf4a72ef1f1d52","after":"be6515504e6d55c828c5c405cd921a691d61454e","ref":"refs/heads/main","pushedAt":"2023-06-29T21:34:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"Extract _downloadedLength within the sync block. (#355)","shortMessageHtmlLink":"Extract _downloadedLength within the sync block. (#355)"}},{"before":"812f9bf0f47650cab39ede785e93ccbb114ce808","after":"a3f02a12ef62095632ca9bd8dbdf4a72ef1f1d52","ref":"refs/heads/main","pushedAt":"2023-05-31T15:34:06.944Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"dmaclach","name":"dmaclach","path":"/dmaclach","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/320201?s=80&v=4"},"commit":{"message":"Remove unneeded block. (#354)","shortMessageHtmlLink":"Remove unneeded block. (#354)"}},{"before":"d415594121c9e8a4f9d79cecee0965cf35e74dbd","after":"812f9bf0f47650cab39ede785e93ccbb114ce808","ref":"refs/heads/main","pushedAt":"2023-05-30T18:37:31.153Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"New GTMUserAgentProvider to asynchronously calculate User-Agent string","shortMessageHtmlLink":"New GTMUserAgentProvider to asynchronously calculate User-Agent string"}},{"before":"70f3907f05dfff344aa51ba7dc867d80dbdf1bfd","after":"d415594121c9e8a4f9d79cecee0965cf35e74dbd","ref":"refs/heads/main","pushedAt":"2023-04-21T16:31:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Oops, meant 3.1.1, not 3.2.1.","shortMessageHtmlLink":"Oops, meant 3.1.1, not 3.2.1."}},{"before":"69005243ed748a76160aec3935d16feabf08c547","after":"70f3907f05dfff344aa51ba7dc867d80dbdf1bfd","ref":"refs/heads/main","pushedAt":"2023-04-21T16:29:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"thomasvl","name":"Thomas Van Lenten","path":"/thomasvl","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5279928?s=80&v=4"},"commit":{"message":"Version bump to make a release.","shortMessageHtmlLink":"Version bump to make a release."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEOBzL3wA","startCursor":null,"endCursor":null}},"title":"Activity · google/gtm-session-fetcher"}