From 9582cd459977c41699402960e30b8030149f33a2 Mon Sep 17 00:00:00 2001 From: Ken Sternberg <133134217+kensternberg-authentik@users.noreply.github.com> Date: Fri, 20 Oct 2023 14:26:57 -0700 Subject: [PATCH 1/8] web: break circular dependency between AKElement & Interface. (#7165) * web: break circular dependency between AKElement & Interface. This commit changes the way the root node of the web application shell is discovered by child components, such that the base class shared by both no longer results in a circular dependency between the two models. I've run this in isolation and have seen no failures of discovery; the identity token exists as soon as the Interface is constructed and is found by every item on the page. * web: fix broken typescript references This built... and then it didn't? Anyway, the current fix is to provide type information the AkInterface for the data that consumers require. --- web/src/elements/Base.ts | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/web/src/elements/Base.ts b/web/src/elements/Base.ts index 243901e01..7b2420454 100644 --- a/web/src/elements/Base.ts +++ b/web/src/elements/Base.ts @@ -13,12 +13,15 @@ import PFBase from "@patternfly/patternfly/patternfly-base.css"; import { Config, CurrentTenant, UiThemeEnum } from "@goauthentik/api"; -export function rootInterface(): T | undefined { - const el = Array.from(document.body.querySelectorAll("*")).filter( - (el) => el instanceof Interface, - ); - return el[0] as T; -} +type AkInterface = HTMLElement & { + getTheme: () => Promise; + tenant?: CurrentTenant; + uiConfig?: UIConfig; + config?: Config; +}; + +export const rootInterface = (): T | undefined => + (document.body.querySelector("[data-ak-interface-root]") as T) ?? undefined; export function ensureCSSStyleSheet(css: CSSStyleSheet | CSSResult): CSSStyleSheet { if (css instanceof CSSResult) { @@ -171,7 +174,7 @@ export class AKElement extends LitElement { } } -export class Interface extends AKElement { +export class Interface extends AKElement implements AkInterface { @state() tenant?: CurrentTenant; @@ -186,6 +189,7 @@ export class Interface extends AKElement { document.adoptedStyleSheets = [...document.adoptedStyleSheets, ensureCSSStyleSheet(PFBase)]; tenant().then((tenant) => (this.tenant = tenant)); config().then((config) => (this.config = config)); + this.dataset.akInterfaceRoot = "true"; } _activateTheme(root: AdoptedStyleSheetsElement, theme: UiThemeEnum): void { From b13f7158c7394d5aab140230180cac600865d102 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 21 Oct 2023 00:42:31 +0200 Subject: [PATCH 2/8] web: bump mermaid from 10.5.0 to 10.5.1 in /web (#7247) Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 10.5.0 to 10.5.1. - [Release notes](https://github.com/mermaid-js/mermaid/releases) - [Changelog](https://github.com/mermaid-js/mermaid/blob/develop/CHANGELOG.md) - [Commits](https://github.com/mermaid-js/mermaid/compare/v10.5.0...v10.5.1) --- updated-dependencies: - dependency-name: mermaid dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- web/package-lock.json | 8 ++++---- web/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index 7891e2d23..d0171cd65 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -36,7 +36,7 @@ "country-flag-icons": "^1.5.7", "fuse.js": "^6.6.2", "lit": "^2.8.0", - "mermaid": "^10.5.0", + "mermaid": "^10.5.1", "rapidoc": "^9.3.4", "style-mod": "^4.1.0", "webcomponent-qr-code": "^1.2.0", @@ -17371,9 +17371,9 @@ } }, "node_modules/mermaid": { - "version": "10.5.0", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.5.0.tgz", - "integrity": "sha512-9l0o1uUod78D3/FVYPGSsgV+Z0tSnzLBDiC9rVzvelPxuO80HbN1oDr9ofpPETQy9XpypPQa26fr09VzEPfvWA==", + "version": "10.5.1", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-10.5.1.tgz", + "integrity": "sha512-+4mkGW5PptHDSae4YZ/Jw1pEOf0irrB/aCL6BwZcJPhr5+84UJBrQnHTvyPqCUz67tXkrDvSzWv4B+J2hLO78g==", "dependencies": { "@braintree/sanitize-url": "^6.0.1", "@types/d3-scale": "^4.0.3", diff --git a/web/package.json b/web/package.json index a3b62c966..70271ce70 100644 --- a/web/package.json +++ b/web/package.json @@ -57,7 +57,7 @@ "country-flag-icons": "^1.5.7", "fuse.js": "^6.6.2", "lit": "^2.8.0", - "mermaid": "^10.5.0", + "mermaid": "^10.5.1", "rapidoc": "^9.3.4", "style-mod": "^4.1.0", "webcomponent-qr-code": "^1.2.0", From 52a452488cf0ae38147b8f7327e56416aa31bad4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 21 Oct 2023 15:54:01 +0200 Subject: [PATCH 3/8] web: bump the eslint group in /web with 1 update (#7250) --- web/package-lock.json | 39 +++++++++++++++++++++++---------------- web/package.json | 2 +- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index d0171cd65..e09537268 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -75,7 +75,7 @@ "babel-plugin-macros": "^3.1.0", "babel-plugin-tsconfig-paths": "^1.0.3", "cross-env": "^7.0.3", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-custom-elements": "0.0.8", "eslint-plugin-lit": "^1.9.1", @@ -2797,9 +2797,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2894,12 +2894,12 @@ "dev": true }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -2921,9 +2921,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -10776,6 +10776,12 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@webcomponents/webcomponentsjs": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/@webcomponents/webcomponentsjs/-/webcomponentsjs-2.8.0.tgz", @@ -13586,18 +13592,19 @@ } }, "node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", diff --git a/web/package.json b/web/package.json index 70271ce70..71ae059e5 100644 --- a/web/package.json +++ b/web/package.json @@ -96,7 +96,7 @@ "babel-plugin-macros": "^3.1.0", "babel-plugin-tsconfig-paths": "^1.0.3", "cross-env": "^7.0.3", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-custom-elements": "0.0.8", "eslint-plugin-lit": "^1.9.1", From 616f0b8b4f9782b6bd0021da94af8ebc08a08cdc Mon Sep 17 00:00:00 2001 From: Jens L Date: Sat, 21 Oct 2023 20:29:36 +0200 Subject: [PATCH 4/8] sources/oauth: fix name clash (#7253) Signed-off-by: Jens Langhammer --- authentik/sources/oauth/api/source.py | 2 +- authentik/sources/oauth/clients/base.py | 8 ++++---- authentik/sources/oauth/clients/oauth1.py | 8 ++++---- authentik/sources/oauth/clients/oauth2.py | 8 ++++---- authentik/sources/oauth/models.py | 11 +++++------ authentik/sources/oauth/types/github.py | 4 ++-- authentik/sources/oauth/types/mailcow.py | 4 ++-- authentik/sources/oauth/views/base.py | 2 +- 8 files changed, 23 insertions(+), 24 deletions(-) diff --git a/authentik/sources/oauth/api/source.py b/authentik/sources/oauth/api/source.py index 1a350bd43..a17bc6b03 100644 --- a/authentik/sources/oauth/api/source.py +++ b/authentik/sources/oauth/api/source.py @@ -54,7 +54,7 @@ class OAuthSourceSerializer(SourceSerializer): @extend_schema_field(SourceTypeSerializer) def get_type(self, instance: OAuthSource) -> SourceTypeSerializer: """Get source's type configuration""" - return SourceTypeSerializer(instance.type).data + return SourceTypeSerializer(instance.source_type).data def validate(self, attrs: dict) -> dict: session = get_http_session() diff --git a/authentik/sources/oauth/clients/base.py b/authentik/sources/oauth/clients/base.py index 25ff64e0e..2c3f97248 100644 --- a/authentik/sources/oauth/clients/base.py +++ b/authentik/sources/oauth/clients/base.py @@ -36,8 +36,8 @@ class BaseOAuthClient: def get_profile_info(self, token: dict[str, str]) -> Optional[dict[str, Any]]: """Fetch user profile information.""" - profile_url = self.source.type.profile_url or "" - if self.source.type.urls_customizable and self.source.profile_url: + profile_url = self.source.source_type.profile_url or "" + if self.source.source_type.urls_customizable and self.source.profile_url: profile_url = self.source.profile_url response = self.do_request("get", profile_url, token=token) try: @@ -57,8 +57,8 @@ class BaseOAuthClient: def get_redirect_url(self, parameters=None): """Build authentication redirect url.""" - authorization_url = self.source.type.authorization_url or "" - if self.source.type.urls_customizable and self.source.authorization_url: + authorization_url = self.source.source_type.authorization_url or "" + if self.source.source_type.urls_customizable and self.source.authorization_url: authorization_url = self.source.authorization_url if authorization_url == "": Event.new( diff --git a/authentik/sources/oauth/clients/oauth1.py b/authentik/sources/oauth/clients/oauth1.py index 13afdcdd0..1299a585c 100644 --- a/authentik/sources/oauth/clients/oauth1.py +++ b/authentik/sources/oauth/clients/oauth1.py @@ -28,8 +28,8 @@ class OAuthClient(BaseOAuthClient): if raw_token is not None and verifier is not None: token = self.parse_raw_token(raw_token) try: - access_token_url = self.source.type.access_token_url or "" - if self.source.type.urls_customizable and self.source.access_token_url: + access_token_url = self.source.source_type.access_token_url or "" + if self.source.source_type.urls_customizable and self.source.access_token_url: access_token_url = self.source.access_token_url response = self.do_request( "post", @@ -54,8 +54,8 @@ class OAuthClient(BaseOAuthClient): """Fetch the OAuth request token. Only required for OAuth 1.0.""" callback = self.request.build_absolute_uri(self.callback) try: - request_token_url = self.source.type.request_token_url or "" - if self.source.type.urls_customizable and self.source.request_token_url: + request_token_url = self.source.source_type.request_token_url or "" + if self.source.source_type.urls_customizable and self.source.request_token_url: request_token_url = self.source.request_token_url response = self.do_request( "post", diff --git a/authentik/sources/oauth/clients/oauth2.py b/authentik/sources/oauth/clients/oauth2.py index 9e1235253..b29f36663 100644 --- a/authentik/sources/oauth/clients/oauth2.py +++ b/authentik/sources/oauth/clients/oauth2.py @@ -76,8 +76,8 @@ class OAuth2Client(BaseOAuthClient): if SESSION_KEY_OAUTH_PKCE in self.request.session: args["code_verifier"] = self.request.session[SESSION_KEY_OAUTH_PKCE] try: - access_token_url = self.source.type.access_token_url or "" - if self.source.type.urls_customizable and self.source.access_token_url: + access_token_url = self.source.source_type.access_token_url or "" + if self.source.source_type.urls_customizable and self.source.access_token_url: access_token_url = self.source.access_token_url response = self.session.request( "post", access_token_url, data=args, headers=self._default_headers, **request_kwargs @@ -140,8 +140,8 @@ class UserprofileHeaderAuthClient(OAuth2Client): def get_profile_info(self, token: dict[str, str]) -> Optional[dict[str, Any]]: "Fetch user profile information." - profile_url = self.source.type.profile_url or "" - if self.source.type.urls_customizable and self.source.profile_url: + profile_url = self.source.source_type.profile_url or "" + if self.source.source_type.urls_customizable and self.source.profile_url: profile_url = self.source.profile_url response = self.session.request( "get", diff --git a/authentik/sources/oauth/models.py b/authentik/sources/oauth/models.py index 7d8dd2fb7..6b871fe55 100644 --- a/authentik/sources/oauth/models.py +++ b/authentik/sources/oauth/models.py @@ -1,5 +1,5 @@ """OAuth Client models""" -from typing import TYPE_CHECKING, Optional, Type +from typing import TYPE_CHECKING, Optional from django.db import models from django.http.request import HttpRequest @@ -55,7 +55,7 @@ class OAuthSource(Source): oidc_jwks = models.JSONField(default=dict, blank=True) @property - def type(self) -> type["SourceType"]: + def source_type(self) -> type["SourceType"]: """Return the provider instance for this source""" from authentik.sources.oauth.types.registry import registry @@ -65,15 +65,14 @@ class OAuthSource(Source): def component(self) -> str: return "ak-source-oauth-form" - # we're using Type[] instead of type[] here since type[] interferes with the property above @property - def serializer(self) -> Type[Serializer]: + def serializer(self) -> type[Serializer]: from authentik.sources.oauth.api.source import OAuthSourceSerializer return OAuthSourceSerializer def ui_login_button(self, request: HttpRequest) -> UILoginButton: - provider_type = self.type + provider_type = self.source_type provider = provider_type() icon = self.get_icon if not icon: @@ -85,7 +84,7 @@ class OAuthSource(Source): ) def ui_user_settings(self) -> Optional[UserSettingSerializer]: - provider_type = self.type + provider_type = self.source_type icon = self.get_icon if not icon: icon = provider_type().icon_url() diff --git a/authentik/sources/oauth/types/github.py b/authentik/sources/oauth/types/github.py index 70152d8b5..327a4ee81 100644 --- a/authentik/sources/oauth/types/github.py +++ b/authentik/sources/oauth/types/github.py @@ -23,8 +23,8 @@ class GitHubOAuth2Client(OAuth2Client): def get_github_emails(self, token: dict[str, str]) -> list[dict[str, Any]]: """Get Emails from the GitHub API""" - profile_url = self.source.type.profile_url or "" - if self.source.type.urls_customizable and self.source.profile_url: + profile_url = self.source.source_type.profile_url or "" + if self.source.source_type.urls_customizable and self.source.profile_url: profile_url = self.source.profile_url profile_url += "/emails" response = self.do_request("get", profile_url, token=token) diff --git a/authentik/sources/oauth/types/mailcow.py b/authentik/sources/oauth/types/mailcow.py index 18df02f06..8be201105 100644 --- a/authentik/sources/oauth/types/mailcow.py +++ b/authentik/sources/oauth/types/mailcow.py @@ -26,8 +26,8 @@ class MailcowOAuth2Client(OAuth2Client): def get_profile_info(self, token: dict[str, str]) -> Optional[dict[str, Any]]: "Fetch user profile information." - profile_url = self.source.type.profile_url or "" - if self.source.type.urls_customizable and self.source.profile_url: + profile_url = self.source.source_type.profile_url or "" + if self.source.source_type.urls_customizable and self.source.profile_url: profile_url = self.source.profile_url response = self.session.request( "get", diff --git a/authentik/sources/oauth/views/base.py b/authentik/sources/oauth/views/base.py index 4055df3d6..399f3f493 100644 --- a/authentik/sources/oauth/views/base.py +++ b/authentik/sources/oauth/views/base.py @@ -25,7 +25,7 @@ class OAuthClientMixin: if self.client_class is not None: # pylint: disable=not-callable return self.client_class(source, self.request, **kwargs) - if source.type.request_token_url or source.request_token_url: + if source.source_type.request_token_url or source.request_token_url: client = OAuthClient(source, self.request, **kwargs) else: client = OAuth2Client(source, self.request, **kwargs) From 549d6d7c8ecfad8f10a3aaa64640cde3ca512cc7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 11:12:28 +0200 Subject: [PATCH 5/8] web: bump the eslint group in /tests/wdio with 1 update (#7257) Bumps the eslint group in /tests/wdio with 1 update: [eslint](https://github.com/eslint/eslint). - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v8.51.0...v8.52.0) --- updated-dependencies: - dependency-name: eslint dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- tests/wdio/package-lock.json | 39 +++++++++++++++++++++--------------- tests/wdio/package.json | 2 +- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/tests/wdio/package-lock.json b/tests/wdio/package-lock.json index 296081890..e7449c2f7 100644 --- a/tests/wdio/package-lock.json +++ b/tests/wdio/package-lock.json @@ -13,7 +13,7 @@ "@wdio/local-runner": "^8.20.0", "@wdio/mocha-framework": "^8.20.0", "@wdio/spec-reporter": "^8.20.0", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-sonarjs": "^0.21.0", "npm-run-all": "^4.1.5", @@ -340,21 +340,21 @@ } }, "node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -376,9 +376,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@isaacs/cliui": { @@ -1066,6 +1066,12 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@wdio/cli": { "version": "8.20.1", "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.20.1.tgz", @@ -2854,18 +2860,19 @@ } }, "node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", diff --git a/tests/wdio/package.json b/tests/wdio/package.json index 7ec93e574..2ec2f88eb 100644 --- a/tests/wdio/package.json +++ b/tests/wdio/package.json @@ -10,7 +10,7 @@ "@wdio/local-runner": "^8.20.0", "@wdio/mocha-framework": "^8.20.0", "@wdio/spec-reporter": "^8.20.0", - "eslint": "^8.51.0", + "eslint": "^8.52.0", "eslint-config-google": "^0.14.0", "eslint-plugin-sonarjs": "^0.21.0", "npm-run-all": "^4.1.5", From 09ba0c470a2eddda32990b97ec783a4f9a1ef5d2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 11:12:56 +0200 Subject: [PATCH 6/8] web: bump the wdio group in /tests/wdio with 1 update (#7258) Bumps the wdio group in /tests/wdio with 1 update: [@wdio/cli](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli). - [Release notes](https://github.com/webdriverio/webdriverio/releases) - [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md) - [Commits](https://github.com/webdriverio/webdriverio/commits/v8.20.2/packages/wdio-cli) --- updated-dependencies: - dependency-name: "@wdio/cli" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: wdio ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- tests/wdio/package-lock.json | 8 ++++---- tests/wdio/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/wdio/package-lock.json b/tests/wdio/package-lock.json index e7449c2f7..fb16dda55 100644 --- a/tests/wdio/package-lock.json +++ b/tests/wdio/package-lock.json @@ -9,7 +9,7 @@ "@trivago/prettier-plugin-sort-imports": "^4.2.0", "@typescript-eslint/eslint-plugin": "^6.8.0", "@typescript-eslint/parser": "^6.8.0", - "@wdio/cli": "^8.20.1", + "@wdio/cli": "^8.20.2", "@wdio/local-runner": "^8.20.0", "@wdio/mocha-framework": "^8.20.0", "@wdio/spec-reporter": "^8.20.0", @@ -1073,9 +1073,9 @@ "dev": true }, "node_modules/@wdio/cli": { - "version": "8.20.1", - "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.20.1.tgz", - "integrity": "sha512-R59wTu/IXUPnYKCDmunK97LmxzWVpYHpo/MnjqwWXvseRWAH6xKI7U3zGduON1M+c00U3wgl9SLKw2PF9h7hnw==", + "version": "8.20.2", + "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.20.2.tgz", + "integrity": "sha512-fXpwcpsSo//5eC7bODDaumuNLl9wK+G7G9mAu0OB3QUZ39CudsrNxGxchVhnilqQAFw450OOEL/RzaDPspCZRA==", "dev": true, "dependencies": { "@types/node": "^20.1.1", diff --git a/tests/wdio/package.json b/tests/wdio/package.json index 2ec2f88eb..0d000a0cc 100644 --- a/tests/wdio/package.json +++ b/tests/wdio/package.json @@ -6,7 +6,7 @@ "@trivago/prettier-plugin-sort-imports": "^4.2.0", "@typescript-eslint/eslint-plugin": "^6.8.0", "@typescript-eslint/parser": "^6.8.0", - "@wdio/cli": "^8.20.1", + "@wdio/cli": "^8.20.2", "@wdio/local-runner": "^8.20.0", "@wdio/mocha-framework": "^8.20.0", "@wdio/spec-reporter": "^8.20.0", From 1e254b63a0be399fb917e29362c02f339cef82ce Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 11:13:05 +0200 Subject: [PATCH 7/8] core: bump goauthentik.io/api/v3 from 3.2023083.9 to 3.2023083.10 (#7256) Bumps [goauthentik.io/api/v3](https://github.com/goauthentik/client-go) from 3.2023083.9 to 3.2023083.10. - [Release notes](https://github.com/goauthentik/client-go/releases) - [Commits](https://github.com/goauthentik/client-go/compare/v3.2023083.9...v3.2023083.10) --- updated-dependencies: - dependency-name: goauthentik.io/api/v3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index cdde8da00..11bcc47d9 100644 --- a/go.mod +++ b/go.mod @@ -27,7 +27,7 @@ require ( github.com/sirupsen/logrus v1.9.3 github.com/spf13/cobra v1.7.0 github.com/stretchr/testify v1.8.4 - goauthentik.io/api/v3 v3.2023083.9 + goauthentik.io/api/v3 v3.2023083.10 golang.org/x/exp v0.0.0-20230210204819-062eb4c674ab golang.org/x/oauth2 v0.13.0 golang.org/x/sync v0.4.0 diff --git a/go.sum b/go.sum index ee8889edb..3b404b83a 100644 --- a/go.sum +++ b/go.sum @@ -355,8 +355,8 @@ go.opentelemetry.io/otel/trace v1.14.0 h1:wp2Mmvj41tDsyAJXiWDWpfNsOiIyd38fy85pyK go.opentelemetry.io/otel/trace v1.14.0/go.mod h1:8avnQLK+CG77yNLUae4ea2JDQ6iT+gozhnZjy/rw9G8= go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4= -goauthentik.io/api/v3 v3.2023083.9 h1:23tCiPYFpxfElH7LQKiVL2zEigTefM8s4CJOlytgiAs= -goauthentik.io/api/v3 v3.2023083.9/go.mod h1:zz+mEZg8rY/7eEjkMGWJ2DnGqk+zqxuybGCGrR2O4Kw= +goauthentik.io/api/v3 v3.2023083.10 h1:mMCOfsqjouSSxedSkCK4k0Cwtt68CWzQgR7Um6ooOQs= +goauthentik.io/api/v3 v3.2023083.10/go.mod h1:zz+mEZg8rY/7eEjkMGWJ2DnGqk+zqxuybGCGrR2O4Kw= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= From f3e02f92810bb4855fc2e68020ad8b59c66ce30b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 11:13:14 +0200 Subject: [PATCH 8/8] core: bump pylint-django from 2.5.3 to 2.5.4 (#7255) Bumps [pylint-django](https://github.com/PyCQA/pylint-django) from 2.5.3 to 2.5.4. - [Release notes](https://github.com/PyCQA/pylint-django/releases) - [Changelog](https://github.com/pylint-dev/pylint-django/blob/master/CHANGELOG.rst) - [Commits](https://github.com/PyCQA/pylint-django/compare/v2.5.3...v2.5.4) --- updated-dependencies: - dependency-name: pylint-django dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/poetry.lock b/poetry.lock index 51cf3d5fb..f08d50e9b 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2901,22 +2901,21 @@ testutils = ["gitpython (>3)"] [[package]] name = "pylint-django" -version = "2.5.3" +version = "2.5.4" description = "A Pylint plugin to help Pylint understand the Django web framework" optional = false -python-versions = "*" +python-versions = ">=3.7,<4.0" files = [ - {file = "pylint-django-2.5.3.tar.gz", hash = "sha256:0ac090d106c62fe33782a1d01bda1610b761bb1c9bf5035ced9d5f23a13d8591"}, - {file = "pylint_django-2.5.3-py3-none-any.whl", hash = "sha256:56b12b6adf56d548412445bd35483034394a1a94901c3f8571980a13882299d5"}, + {file = "pylint_django-2.5.4-py3-none-any.whl", hash = "sha256:08bedfd7ccc4c47afa09cbfee6f4b5074437178d8e51fd891e2232c0d3a5b140"}, + {file = "pylint_django-2.5.4.tar.gz", hash = "sha256:d167b1437342543727925a98c0dee9c8de8e8e1f8cb8caf868018febd2c4e2b7"}, ] [package.dependencies] -pylint = ">=2.0,<3" -pylint-plugin-utils = ">=0.7" +pylint = ">=2.0,<4" +pylint-plugin-utils = ">=0.8" [package.extras] -for-tests = ["coverage", "django-tables2", "django-tastypie", "factory-boy", "pylint (>=2.13)", "pytest", "wheel"] -with-django = ["Django"] +with-django = ["Django (>=2.2)"] [[package]] name = "pylint-plugin-utils"