{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":204591335,"defaultBranch":"main","name":"urlpattern","ownerLogin":"whatwg","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-08-27T01:14:52.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2226336?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1710769120.0","currentOid":""},"activityList":{"items":[{"before":"39214eaa719a2ae41dc0733775d61fa7539aea7e","after":"d13ebead18003059a83ca4a25240e5cafc066c4c","ref":"refs/heads/main","pushedAt":"2024-04-19T14:41:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Editorial: Add proper serialization of URL properties\n\nThe URL parser return port as an integer and host as either a hostname string, an integer (IPv4 address) or an array of integers (IPv6 address). For further processing by the URLPattern code these properties need to be properly converted to string.\r\n\r\nThe issue was discussed here: #202","shortMessageHtmlLink":"Editorial: Add proper serialization of URL properties"}},{"before":"9e1f2067d810ef16256931bfcc0ab881f4becb73","after":null,"ref":"refs/heads/review-draft-2024-03","pushedAt":"2024-03-18T13:46:25.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"}},{"before":"502f120278199c5558ec38566087bf8ecb184896","after":"39214eaa719a2ae41dc0733775d61fa7539aea7e","ref":"refs/heads/main","pushedAt":"2024-03-18T13:46:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"},"commit":{"message":"Review Draft Publication: March 2024","shortMessageHtmlLink":"Review Draft Publication: March 2024"}},{"before":"0b29324c911c76664332fe077754f92c8380b498","after":"9e1f2067d810ef16256931bfcc0ab881f4becb73","ref":"refs/heads/review-draft-2024-03","pushedAt":"2024-03-18T13:43:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"},"commit":{"message":"nit","shortMessageHtmlLink":"nit"}},{"before":null,"after":"0b29324c911c76664332fe077754f92c8380b498","ref":"refs/heads/review-draft-2024-03","pushedAt":"2024-03-18T13:38:40.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"},"commit":{"message":"Review Draft Publication: March 2024","shortMessageHtmlLink":"Review Draft Publication: March 2024"}},{"before":"015499266555de1c970503986e402a686c61b110","after":"502f120278199c5558ec38566087bf8ecb184896","ref":"refs/heads/main","pushedAt":"2024-03-05T03:52:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Editorial: Fix RFC2119 keyword warnings\n\nThe current specification uses \"should\" and \"may\" in non-normative\r\nsections. They are recognized as RFC2119 keywords.\r\nThis change avoids using them there.","shortMessageHtmlLink":"Editorial: Fix RFC2119 keyword warnings"}},{"before":"8b8ac401c6d08d4e18a7f885d7923268b36b5a96","after":"015499266555de1c970503986e402a686c61b110","ref":"refs/heads/main","pushedAt":"2024-02-29T00:21:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sisidovski","name":"Shunya Shishido","path":"/sisidovski","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1642255?s=80&v=4"},"commit":{"message":"Make the match algorithm accept the URL struct\n\nIn w3c/ServiceWorker#1701, the ServiceWorker static routing API uses the match algorithm to match the request URL. However, the original match algorithm accepts a URLPatternInput object, and it does not accept a URL struct. To allow the ServiceWorker static routing API to use the match algorithm, we need to make the match algorithm to accept the URL struct.\r\n\r\nFixes: #218.","shortMessageHtmlLink":"Make the match algorithm accept the URL struct"}},{"before":"69ccf3a2f0913187f39a7f69406ee359017435db","after":"8b8ac401c6d08d4e18a7f885d7923268b36b5a96","ref":"refs/heads/main","pushedAt":"2024-02-28T20:48:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Editorial: Export \"URL pattern\" dfn","shortMessageHtmlLink":"Editorial: Export \"URL pattern\" dfn"}},{"before":"5ce2f70b8eeb1b8808476ffc8c45c0f9734a7efc","after":"69ccf3a2f0913187f39a7f69406ee359017435db","ref":"refs/heads/main","pushedAt":"2024-02-27T07:29:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sisidovski","name":"Shunya Shishido","path":"/sisidovski","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1642255?s=80&v=4"},"commit":{"message":"Remove JavaScript realm dependency\n\nTo allow the algorithms in the specification to be used outside of\r\nJavaScript, we need to remove dependency to JavaScript realm.\r\n\r\nThis CL make a URLPattern object associated with an underlying URL\r\nPattern struct, and makes algorithms to use it instead.\r\n\r\nFixes https://github.com/whatwg/urlpattern/issues/217","shortMessageHtmlLink":"Remove JavaScript realm dependency"}},{"before":"ddd41dbd69caf044b734dbcbbacc44c396e78c63","after":"5ce2f70b8eeb1b8808476ffc8c45c0f9734a7efc","ref":"refs/heads/main","pushedAt":"2024-01-30T15:22:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Do not initialize members to null in \"process a URLPatternInit\"\n\nIt is not valid for these dictionary members to be null, since they are defined to, if present, hold a USVString value. Instead, these should be omitted from the result dictionary altogether if no string was provided to this algorithm.\r\n\r\nThis addresses the concern raised in #202 (comment).","shortMessageHtmlLink":"Do not initialize members to null in \"process a URLPatternInit\""}},{"before":"125968095de8387ae9b0960802c8cc9c4440ef35","after":"ddd41dbd69caf044b734dbcbbacc44c396e78c63","ref":"refs/heads/main","pushedAt":"2024-01-30T15:20:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Only pass strings into component compiling steps\n\nCurrently, some steps in \"initialize a URLPattern\" access potentially nonexistent entries in the processedInit map, and expect \"compile a component\" to receive these as null, even though it requires a string.\r\n\r\nInstead, these entries are now always populated after calling \"process a URLPatternInit\" so that subsequent steps can depend on a valid string.\r\n\r\nSince the comparison with the default port requires that the two types be the same, fix that too.\r\n\r\nFixes #209.","shortMessageHtmlLink":"Only pass strings into component compiling steps"}},{"before":"c9c56ee179a961bc7254e82bc2a38dfcd7f4c683","after":"125968095de8387ae9b0960802c8cc9c4440ef35","ref":"refs/heads/main","pushedAt":"2024-01-29T15:50:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Serialize the next numeric name\n\nWe need to explicitly convert this from an integer to a string.\r\n\r\nFixes #208.","shortMessageHtmlLink":"Serialize the next numeric name"}},{"before":"226dee4d836b2f5e54e2e8e5ad4b358f37df9b0c","after":"c9c56ee179a961bc7254e82bc2a38dfcd7f4c683","ref":"refs/heads/main","pushedAt":"2024-01-29T15:48:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Do not initialize a URLPatternInit member to null in \"initialize a URLPattern\"\n\nIt is not valid for the baseURL dictionary member to be null, only\r\neither absent or a USVString. Instead, this should be omitted from the\r\ndictionary altogether if no string was provided to this algorithm.\r\n\r\nAny string which is invalid will fail later on, when it is to be parsed\r\nas a URL.\r\n\r\nFixes #204.","shortMessageHtmlLink":"Do not initialize a URLPatternInit member to null in \"initialize a UR…"}},{"before":"6545b47dad5f4235744972a630fad7f82d6a737b","after":null,"ref":"refs/heads/meta-template/f3d8b08c-baa5-11ee-bed7-c29b73196133","pushedAt":"2024-01-24T10:48:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"}},{"before":"3edcad499fbbf1e309e048d40323d5fca36c49c6","after":"226dee4d836b2f5e54e2e8e5ad4b358f37df9b0c","ref":"refs/heads/main","pushedAt":"2024-01-24T10:48:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"},"commit":{"message":"Meta: update repository files\n\nSee https://github.com/whatwg/spec-factory for details.","shortMessageHtmlLink":"Meta: update repository files"}},{"before":null,"after":"6545b47dad5f4235744972a630fad7f82d6a737b","ref":"refs/heads/meta-template/f3d8b08c-baa5-11ee-bed7-c29b73196133","pushedAt":"2024-01-24T10:47:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"annevk","name":"Anne van Kesteren","path":"/annevk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1544111?s=80&v=4"},"commit":{"message":"Meta: update repository files\n\nSee https://github.com/whatwg/spec-factory for details.","shortMessageHtmlLink":"Meta: update repository files"}},{"before":"531a2ccf8b45eb5149b73c4e91839b06239db20b","after":"3edcad499fbbf1e309e048d40323d5fca36c49c6","ref":"refs/heads/main","pushedAt":"2024-01-16T19:21:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Correct processing of non-string members of a base URL record\n\nSome of these values may be null (or in the case of port, an integer) and\r\nmust be converted to strings before they can be applied to URLPatternInit.\r\n\r\nThe conversion of the port to an integer is also necessary in the encoding\r\ncallbacks.\r\n\r\nAddresses #202, at least in part.","shortMessageHtmlLink":"Correct processing of non-string members of a base URL record"}},{"before":"f00b3d6b7dcd6a5752ce5359742934fcb52c72b7","after":null,"ref":"refs/heads/patch-baseURL","pushedAt":"2024-01-15T08:20:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"sisidovski","name":"Shunya Shishido","path":"/sisidovski","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1642255?s=80&v=4"}},{"before":null,"after":"f00b3d6b7dcd6a5752ce5359742934fcb52c72b7","ref":"refs/heads/patch-baseURL","pushedAt":"2024-01-15T07:40:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"sisidovski","name":"Shunya Shishido","path":"/sisidovski","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1642255?s=80&v=4"},"commit":{"message":"More strict check for init[\"baseURL\"] in URLPatternInit processing\n\ninit[\"baseURL\"] is initialized with null, and map-exists only checks if\nthere exists an entry with the key. This commit adds null or empty\nstring check for init[\"baseURL\"] in URLPatternInit processing.","shortMessageHtmlLink":"More strict check for init[\"baseURL\"] in URLPatternInit processing"}},{"before":"b66dec100e904bf0f51d37c88488995cbaac55a6","after":null,"ref":"refs/heads/domenic-patch-1","pushedAt":"2023-12-06T06:12:41.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"}},{"before":"2c23b491dc5126b68b14b983a28f00df08a43a9a","after":"531a2ccf8b45eb5149b73c4e91839b06239db20b","ref":"refs/heads/main","pushedAt":"2023-12-06T06:12:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"},"commit":{"message":"Meta: fix some exported terms\n\n* \"match\" was not namespaced.\n* \"Web IDL\" was mispelled as \"WebIDL\".","shortMessageHtmlLink":"Meta: fix some exported terms"}},{"before":"866b6d46848338bd826b0e3722aa097a94817208","after":"b66dec100e904bf0f51d37c88488995cbaac55a6","ref":"refs/heads/domenic-patch-1","pushedAt":"2023-12-04T05:39:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"},"commit":{"message":"Meta: fix some exported terms\n\n* \"match\" was not namespaced.\n* \"Web IDL\" was mispelled as \"WebIDL\".","shortMessageHtmlLink":"Meta: fix some exported terms"}},{"before":null,"after":"866b6d46848338bd826b0e3722aa097a94817208","ref":"refs/heads/domenic-patch-1","pushedAt":"2023-12-04T05:36:51.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"},"commit":{"message":"Meta: change how \"match\" is exported","shortMessageHtmlLink":"Meta: change how \"match\" is exported"}},{"before":"ed205a47785a5483106b5bb59bd3f4834785f923","after":"2c23b491dc5126b68b14b983a28f00df08a43a9a","ref":"refs/heads/main","pushedAt":"2023-11-30T02:16:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Add a section on other specs integrating with URLPattern\n\nA section which covers how other specifications should use URLPattern\r\nand how developer-facing APIs should work is added, along with helpful\r\nalgorithms.\r\n\r\nOne of these is whether a pattern has regexp groups (which may require\r\nan ECMAScript regexp engine); a corresponding WebIDL attribute is added\r\nto expose this property to authors as well.","shortMessageHtmlLink":"Add a section on other specs integrating with URLPattern"}},{"before":"0343b0bab364da099b55f87922b0e85b18fbe830","after":"ed205a47785a5483106b5bb59bd3f4834785f923","ref":"refs/heads/main","pushedAt":"2023-11-07T21:53:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Use \"inherit left, wildcard right\" behavior in base URL application and constructor string parsing\n\nThe following changes apply to patterns which are constructed using a base URL, the constructor string syntax, or both -- but not any pattern which explicitly specifies components separately without a base URL.\r\n\r\n* Components are not inherited from a base URL if an \"earlier\" component is explicitly specified.\r\n* In the string format, unspecified \"later\" components are implicitly wildcarded, rather than required to be empty (with the exception of the port, which is always taken to be specified when the hostname is).\r\n* Username and password are never implicitly specified or inherited.\r\n\r\nFor example:\r\n1. `\"https://example.com/*\"` also matches with any username, password, search, and hash. Previously this would be written `\"https://*:*@example.com/*\\\\?*#*\"`.\r\n2. `new URLPattern({ pathname: \"/login\" }, \"https://example.com/?q=hello\")` accepts any query string and hash, not only `\"?q=hello\"` and `\"\"`.\r\n3. `\"https://*:*\"` or `{protocol: \"https\"}` means \"any HTTPS URL, on any port\", and `\"https://*\"` means \"any HTTPS URL on the default port (443)\". These have the same meaning whether or not a base URL is provided, since specifying the protocol prohibits inheritance of other components.\r\n\r\nThis makes patterns more expansive than before, in cases where wildcards are likely to be desirable.\r\n\r\nThe logic of inheriting components from a base URL dictionary is also similarly changed in a way that may make it _not_ match where it did before, but more consistently with the above and with how relative URL strings are resolved. For example, `new URLPattern(\"https://example.com/foo?q=1#hello\").test({pathname: \"/foo\", hash: \"hello\", baseURL: \"https://example.com/bar?q=1\"})` previously returned `true` but will now be `false`, since the search component is not inherited when the pathname is specified. This is analogous to how `new URL(\"/foo#hello\", \"https://example.com/bar?q=1\")` works. The reverse is also possible; in both cases this is quite niche.\r\n\r\nFixes #179.","shortMessageHtmlLink":"Use \"inherit left, wildcard right\" behavior in base URL application a…"}},{"before":"573c0985dcc7a49481b0a4ced3204e2711219962","after":null,"ref":"refs/heads/zcorpan/quick-reference-fixes","pushedAt":"2023-11-06T22:59:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"}},{"before":"c8d50727126c44936e7ab0d7e7ba2c6d89dbfd4a","after":"0343b0bab364da099b55f87922b0e85b18fbe830","ref":"refs/heads/main","pushedAt":"2023-11-06T22:59:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeremyroman","name":"Jeremy Roman","path":"/jeremyroman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/156119?s=80&v=4"},"commit":{"message":"Editorial: Fix property descriptions in the quick reference","shortMessageHtmlLink":"Editorial: Fix property descriptions in the quick reference"}},{"before":"2a619357f47b7ee9208268657e9cd2706a05ce2c","after":null,"ref":"refs/heads/domenic-patch-1","pushedAt":"2023-10-25T05:36:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"}},{"before":"dabcf9f50762a19e235260179a937285ea002872","after":"c8d50727126c44936e7ab0d7e7ba2c6d89dbfd4a","ref":"refs/heads/main","pushedAt":"2023-10-25T05:36:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"},"commit":{"message":"Meta: update Twitter account\n\nSince URL patterns are going to be used beyond just the URLPattern JavaScript API, I renamed the Twitter account.","shortMessageHtmlLink":"Meta: update Twitter account"}},{"before":null,"after":"2a619357f47b7ee9208268657e9cd2706a05ce2c","ref":"refs/heads/domenic-patch-1","pushedAt":"2023-10-25T05:35:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"domenic","name":"Domenic Denicola","path":"/domenic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/617481?s=80&v=4"},"commit":{"message":"Meta: update Twitter account\n\nSince URL patterns are going to be used beyond just the URLPattern JavaScript API, I renamed the Twitter account.","shortMessageHtmlLink":"Meta: update Twitter account"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAENUQMVAA","startCursor":null,"endCursor":null}},"title":"Activity · whatwg/urlpattern"}