1
0
mirror of https://github.com/zitadel/zitadel.git synced 2024-12-21 15:27:31 +00:00

10 Commits

Author SHA1 Message Date
Max Peintner
b099a26a16
feat(console): MDC components ()
mdc components

---------

Co-authored-by: Elio Bischof <eliobischof@gmail.com>
2023-10-26 08:29:06 +00:00
dependabot[bot]
e5b7566239
chore(deps): bump @sideway/formula from 3.0.0 to 3.0.1 in /e2e ()
Bumps [@sideway/formula](https://github.com/sideway/formula) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sideway/formula/releases)
- [Commits](https://github.com/sideway/formula/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: "@sideway/formula"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-17 08:01:23 +00:00
Elio Bischof
681541f41b
feat: add quotas ()
adds possibilities to cap authenticated requests and execution seconds of actions on a defined intervall
2023-02-15 02:52:11 +01:00
Elio Bischof
35faa1b233
test(e2e): improve error reporting ()
* cleanup

* test(e2e): improve error reporting

* lint

* lint

* better timeout messages

* fix shouldNotExist
2023-01-04 13:38:27 +00:00
Max Peintner
6e89b7d0a1
feat(console): rename org ()
* rename org

* add data-e2e

* e2e test

* restore state after

* use ngIf instead of hasrole directive and initialized regex

* rm h2 check

* Update e2e/cypress/e2e/organization/organizations.cy.ts

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* Update console/src/assets/i18n/de.json

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* Update console/src/assets/i18n/de.json

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* Update console/src/assets/i18n/en.json

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* change e2e test

* org param

* reintroduct org param

* use org query param

* org rename test

* no initial focus on button

* contain name

Co-authored-by: Elio Bischof <eliobischof@gmail.com>
2022-10-20 14:08:13 +02:00
Elio Bischof
51febd7e4e
test(e2e): test authorizations ()
* add specs that cover the b2b demo

* update cypress

* test handling manager roles

* use shared mocha contexts

* use beforeEach instead of before

* improve readability

* improve application test

* remove static waits

* remove old awaitDesired

* test owned project authorizations

* simplify ensure.ts

* test granted projects authz

* disable prevSubject for shouldNotExist

* await non-existence, then expect no error

* update dependencies

* fix tests from scratch

* fix settings tests from scratch

* Apply suggestions from code review

Co-authored-by: Max Peintner <max@caos.ch>

* Implement code review suggestions

* use spread operator

* settings properties must match

* add check settings object

* revert spread operator

Co-authored-by: Max Peintner <max@caos.ch>
2022-10-11 15:29:23 +02:00
Max Peintner
fc4f4096e0
chore(e2e): formatting with prettier ()
* prettier in e2e

* format

* typescript as dev dependency

* ci all, check linting

* resolve liniting issues

* fix wait-on

* fix package-lock.json

Co-authored-by: Elio Bischof <eliobischof@gmail.com>
2022-09-19 19:49:46 +02:00
Elio Bischof
50bda00921
ci(e2e): wait until server is ready ()
ci: wait until server is ready
2022-09-02 17:51:23 +02:00
mffap
dd53f70fd5
docs(contributing): Update contributing guide ()
* docs(contributing): Update contributing guide

* update link for login interface texts

* move gfi to main section

* contributing docs

* typos, links

Co-authored-by: Florian Forster <florian@caos.ch>

* chore(console): contributing to console ()

* fix: return absolute url for avatar in user sessions ()

* fix: return absolute url for avatar in user sessions

* fix: refresh token unique constraint

* feat: system api requires authenticated requests ()

* begin auth

* feat: system api requires authenticated requests

* fix tests

* feat: directly specify factors/idps on addCustomLoginPolicy and return on LoginPolicy responses ()

* feat: directly specify factors on addCustomLoginPolicy and return on LoginPolicy responses

* fix proto

* update login policy

* feat: directly specify idp on addCustomLoginPolicy and return on LoginPolicy responses

* fix: tests

Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* fix: read key data for system api users from config ()

* chore: make docs searchable ()

* chore: make docs searchable

* Update netlify.toml

* fix: SMTP config in defaults ()

* fix(command): create smtp provider cmds after domains

* chore(defaults): add smtp configuration

* fix(console): Idp settings, settings reset warn dialog, Accept-Language header interceptor, i18n ()

* fix idp table, settings reset warn dialog, fix i18n interceptor, i18n

* fix label policy on org change

* fallback

* fix preview button styles

* footer, login-policy null check

* org create btn alignment

* show error with toast

* error toast

* fix(console): header image fallback ()

fix: fallback icon in header

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* fix(login): checkbox, label, container styles ()

fix: checkbox, label styles

* docs: add java sample project ()

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* fix: use issuer for jwt profile check on system api ()

* fix(current_sequence): no error if not found ()

* fix: login checkbox contrast, login policy factors, asset urls ()

* checkbox contrast

* idp create before remove, add, asset service

* login policy events

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* fix(query): show views and failed events ()

* fix(system): show views and failed events

* fix: set correct database on failed events and views

* fix(console): application grid overflow ()

* fix: use css grid instead of flex

* ellipsis overflow

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* fix(projection): add missing col to idp login policy links ()

* fix(projection): add missing col to projection

* refactor: method naming

* fix(console): get idps from login policy, add policy if not existent ()

* fix: return correct empty flow if not found ()

* feat: get current label and privacy policies ()

* chore(console): dependencies ()

* cli, core

* material, cdk

* chore(deps-dev): bump karma-jasmine-html-reporter from 1.7.0 to 2.0.0 in /console ()

chore(deps-dev): bump karma-jasmine-html-reporter in /console

Bumps [karma-jasmine-html-reporter](https://github.com/dfederm/karma-jasmine-html-reporter) from 1.7.0 to 2.0.0.
- [Release notes](https://github.com/dfederm/karma-jasmine-html-reporter/releases)
- [Commits](https://github.com/dfederm/karma-jasmine-html-reporter/compare/v1.7.0...v2.0.0)

---
updated-dependencies:
- dependency-name: karma-jasmine-html-reporter
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump @typescript-eslint/parser from 5.25.0 to 5.26.0 in /console ()

chore(deps-dev): bump @typescript-eslint/parser in /console

Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.25.0 to 5.26.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.26.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump libphonenumber-js from 1.10.4 to 1.10.6 in /console ()

Bumps [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) from 1.10.4 to 1.10.6.
- [Release notes](https://gitlab.com/catamphetamine/libphonenumber-js/tags)
- [Changelog](https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/catamphetamine/libphonenumber-js/compare/v1.10.4...v1.10.6)

---
updated-dependencies:
- dependency-name: libphonenumber-js
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* jasmine

* lock

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* fix: compatibility for cockroach v22.1 ()

* fix: compatability for cockroach v22.1

* update cr version in docs and compose

* bind dev cockroach to 127.0.0.1

* Revert "bind dev cockroach to 127.0.0.1"

This reverts commit 1c7c6304ae6682801f8475a8eac91569442b6b8d.

* remove --listen-addr flag

* use v2.0.0-v2-alpha.16

* use v2.0.0-v2-alpha.17

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* fix: render only base language in html ()

* fix: sql error check ()

* docs: Docs v2 ()

* fix: change images

* fix: change images, add policies

* fix: change images, add policies

* docs: add customer portal docs

* docs: add customer portal docs

* docs: add customer portal docs

* docs: add customer portal docs

* docs: organization creation

* docs: policy docs

* docs: change password

* docs: verify domain

* docs: profile page

* docs: profile page

* docs: profile page

* docs: login page

* docs: login page

* docs: fix broken links

* docs: customer portal users

* docs: instance detail

* docs: instance detail

* docs: getting started

* Update organizations.mdx

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* fix(console, login): Idp detail and create layout optimization, login - sub formfield link spacing ()

* idp detail, create layout

* fat finger fix

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* fix: handle default org id ()

* fix: update user sessions after avatar or primary domain change ()

* fix: grpc gateway interceptors ()

* fix: improve oidc issuer / endpoints ()

* fix: improve oidc issuer / endpoints

* docs: update endpoints

* fix(console): datepicker, formfield cleanup, member role help, domain layout ()

* key datepicker, formfield cleanup, member role help, domain layout

* accounts card template overlay

* fix account card trigger

* chore(deps-dev): bump @typescript-eslint/parser from 5.26.0 to 5.27.0 in /console ()

chore(deps-dev): bump @typescript-eslint/parser in /console

Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.26.0 to 5.27.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.27.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* deps, i18n, feature info section

* lint

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(console, login): console - ensure permission is available, login - i18n fixes, input borders, lgn-touched script to add class on blur  ()

* permission restriction, member, login i18n input borders, secondary text

* add touched js

* test: ensure consistency of TestSpooler_awaitError ()

* docs: add gitlab and auth0 ()

* docs: add gitlab and auth0

* Apply suggestions from code review

* fix wrong domain

* Apply suggestions from code review

Co-authored-by: mffap <mpa@zitadel.com>

* fix redirect-uris

* typos

* replace image wip

* smaller typos

* Update docs/docs/guides/basics/applications.mdx

Co-authored-by: mffap <mpa@zitadel.com>

* Update docs/docs/guides/basics/applications.mdx

Co-authored-by: mffap <mpa@zitadel.com>

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
Co-authored-by: mffap <mpa@zitadel.com>
Co-authored-by: Maximilian Panne <mpa@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>

* feat: return instance domains on list instances, fix: login policy and avatar url in oidc responses ()

* feat: return instance domains on list instances

* fix: filter login policy idps correctly

* remove debug

* fix: absolute avatar url in oidc responses

* fix: allow project grants without roles in database ()

* fix: password check policy correctly ()

* fix: password check policy correctly

* fix: password check policy correctly

* docs: Identity providers and customer portal ()

* docs: identity provider and customer portal page

* docs: identity provider and customer portal page

* docs: identity provider and customer portal page

* docs: urls

* fix: add smtp config, remove smtp and sms provider, console adaptations ()

* fix: add AddSMTPConfig to admin api

* addsmtpconfig

* fix: add RemoveSMTPConfig and RemoveSMSProvider to admin api

* update twilio, token fcn

* fix account switcher, twilio token set, cleanup dialog

* cleanup

* buttons

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* fix(console, login): label policy and privacy policy from authservice, login - remove double footer element, mobile ()

fix: cnsl auth policy, lgn footer mobile

* docs: change architecture graphic ()

* fix(console): configWithPrompt cleanup ()

* fix: configWithPrompt cleanup

* code dialog text

Co-authored-by: Livio Spring <livio.a@gmail.com>

* fix: set instanceID correctly in org project mapping ()

* fix: idp styling ()

* fix: idp styling

* escape idp a color

* elevation on hover

* css gen

Co-authored-by: Max Peintner <max@caos.ch>

* fix: allow env vars to override setup defaults ()

* fix: sms providers ()

* fix(login): idp, link font color ()

fix: idp, a font color

* fix(console): remove basepath from statehandler ()

fix: remove basepath from statehandler

* fix(query): realtime data on defined requests ()

* feat: directly specify factors on addCustomLoginPolicy and return on LoginPolicy responses

* fix proto

* update login policy

* feat: directly specify idp on addCustomLoginPolicy and return on LoginPolicy responses

* fix: tests

* fix(projection): trigger bulk

* refactor: clean projection pkg

* instance should bulk

* fix(query): should trigger bulk on id calls

* tests

* build prerelease

* fix: add shouldTriggerBulk

* fix: test

Co-authored-by: Livio Amstutz <livio.a@gmail.com>
Co-authored-by: Max Peintner <max@caos.ch>

* fix(system): search for existing domain globally ()

* docs(legal): Updated agreements and policies v2 ()

* tos

* adds cloud service

* cloud service description WIP

* action minute

* service level description

* SAML and last revised

* tos credit and payment

* dpa basic, profile, and payment data

* service description: authenticated requests

* cloud service description: ui

* add notification box

* sla description

* support services

* removes dedicated instance annex

* remove dedicated instance annex sidebar, links

* update dedicated terms

* merge additional terms in sidebar

* privacy formatting

* pp update piid table

* remove cloudflare cookies

* privacy customer portal cookies

* revert editing guides

* dates

* docs: test

* modification of services

* Apply suggestions from code review

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* add disclaimer to regions list

Co-authored-by: Maximilian Panne <mpa@caos.ch>
Co-authored-by: Maximilian Panne <maximilian.panne@gmail.com>
Co-authored-by: mffap <mpa@zitadel.com>

* fix(notify): fail if required fields are empty ()

* fix(login): text color for idp, footer ()

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* fix(auth): read user if not found after create ()

* fix(notify): correct get user ()

* feat: enable insecure console for custom domains ()

* fix: enable insecure console

* Revert "fix: enable insecure console"

This reverts commit e6c10ae937a04e14da9aede4ef1b1ea9b16612d1.

* don't require HTTPS for non-localhost domains

Co-authored-by: Max Peintner <max@caos.ch>

* docs: update ZITADEL cloud readme ()

* docs: update ZITADEL cloud readme

* Update README.md

* Update README.md

Co-authored-by: mffap <mpa@zitadel.com>

Co-authored-by: mffap <mpa@zitadel.com>

* docs: add curl for introspection_endpoint with basic auth ()

* docs: update api introduction ()

* fix: update oidc pkg (state and redirect_uri handling) ()

* chore(console): add customer portal link ()

* feat: add customer portal link

* add customer portal to environment.json from backend

Co-authored-by: Livio Amstutz <livio.a@gmail.com>

* feat: TLS support ()

* feat: TLS support

* add comment

* fix comment

* chore: set tleMode disabled in docker compose ()

* chore(docs): fix typo ()

* fix: primary domain scope (handle context correctly) ()

* feat: provide instance info on admin api and return version on instances responses (admin and system api) ()

* feat: provide instance info on admin api and return version on instances responses (admin and system api)

* fix GetMyInstance

* fix: enable env vars in setup steps (and deprecate admin subcommand) ()

* fix: enable env vars in setup steps (and deprecate admin subcommand)

* fix tests and error text

* chore(console): angular 14 ()

* eslint schematics

* cli, core migrations

* material

* schematics

* ng-qrcode update

* fix input, formfield errorstatemixin

* other packages

* downgrade codemirror

* codemirror

* @next of alphas

Co-authored-by: Livio Spring <livio.a@gmail.com>

* docs(installation): improve guides ()

* split config descriptions

* install and configure

* custom domains

* typo

* remove comments

* try compose with secure crdb

* secure crdb with compose

* describe ExternalSecure restriction

* add near production example

* add login credentials

* fix configure compose

* make the docs more transparent

* name archive amd64

* Revert "name archive amd64"

This reverts commit 0d4dae551b47e6bc7584a27a05f290ae92648966.

* fix download url

* extract archives

* fix dawin download

* fix start zitadel commands

* add helm installation docs

* remove windows

* make downloaded files description friendlier

* link to github raw

* link login process

* remove healthcheck from compose

* remove compose healthchecks

* use --tlsMode external for lb example

* uname -i

* disable tls mode locally

* Update docs/docs/guides/installation/get-started/macos.mdx

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>

* docs(guides): user metadata ()

* docs(guides): user metadata

* add python

* export to BASIC_AUTH

* add js

* add alternative with id_token

* fix img path

* adds reserved scopes, and info about opaque token

* Apply suggestions from code review

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* Apply suggestions from code review

Co-authored-by: Elio Bischof <eliobischof@gmail.com>

Co-authored-by: Maximilian Panne <mpa@caos.ch>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>

* docs(installation): knative ()

* added initial knative docu

* added menu bar

* simplified installation

* normalized versions to latest

* update envs

* update envs

* Update zitadel-knative-service.yaml

* Update knative.mdx

* Update knative.mdx

* move knative into correct folder

Co-authored-by: Livio Spring <livio.a@gmail.com>

* docs(installation): fix overview items ()

* docs(installation): fix overview items

* installation after getting started

* fix broken links

* fix broken links

* fix broken link

* docs(installation): fix guides ()

* docs(installation): download traefik config

* docs(installation): remove unnecessary zitadel user certs

* docs(installation): fix broken link ()

* docs: edit instance docs ()

* chore: contributing console

Co-authored-by: Livio Amstutz <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
Co-authored-by: Florian Forster <florian@caos.ch>
Co-authored-by: Silvan <silvan.reusser@gmail.com>
Co-authored-by: mffap <mpa@zitadel.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Co-authored-by: Maximilian Panne <mpa@caos.ch>
Co-authored-by: Maximilian Panne <maximilian.panne@gmail.com>
Co-authored-by: Nicolas Hedger <649677+nhedger@users.noreply.github.com>
Co-authored-by: Christian Jakob <47860090+thesephirot@users.noreply.github.com>

* describe local frontend development

* finish local frontend dev

* ignore environment.json

* redirect environment.json to file

* add context and teardown information

* omit installation of dev dependencies

* unskip remove project tests

* build base image

* use network_mode host for e2e container

* quote uid

* add backend contribution guide

* typo

* note on cypress xserver with wsl2

* add links

* build custom cypress image

* remove --help

* Revert "remove --help"

This reverts commit 14b50bc48b21438c2c844548d087632f34c7892d.

* Revert "build custom cypress image"

This reverts commit bc2caaac9ceea361554d30e95863b44c7ccaad68.

* remove dot

* Update CONTRIBUTING.md

Co-authored-by: Florian Forster <florian@zitadel.com>

Co-authored-by: Maximilian Panne <mpa@caos.ch>
Co-authored-by: Florian Forster <florian@caos.ch>
Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
Co-authored-by: Fabi <38692350+hifabienne@users.noreply.github.com>
Co-authored-by: Silvan <silvan.reusser@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Co-authored-by: Nicolas Hedger <649677+nhedger@users.noreply.github.com>
Co-authored-by: Christian Jakob <47860090+thesephirot@users.noreply.github.com>
Co-authored-by: Florian Forster <florian@zitadel.com>
2022-08-26 19:39:15 +02:00
Max Peintner
fc99ec87c5
ci(e2e): Run Tests in Pipelines ()
* cy10 changes

* test: setup local e2e env

* test(e2e): migrate e2e setup

* add more config

* make e2e setup work

* align variables

* fix config

* skip mfa

* set user register to false

* read ids from database if not provided

* don't read ids withing env file

* fix escaping in id queries

* fix project root

* export projectRoot path

* export projectRoot

* add e2e-setup.sh

* specify GOOS and GOARCH for dockerfile compatible binary

* add org default redirect uri

* correctly initialize org policy

* await ids

* fix awaiting ids

* fix cypress configuration

* fix some tests

* initial compose setup

* fix working directory

* fix references

* make tests less flaky

* run go tests

* compose works until e2e-setup incl

* pass created e2e sa key

* make cypress run

* derive e2e orgs domain from baseurl

* use host from baseurl for setup ctx

* move defaults.yaml back to cmd pkg

* just create org owner

* Don't render element if no roles are passed

* use map instead of switchMap

* fix e2e tests

* added testdata for e3e

* zipped dump

* removed dumpDir

* cypress workflow with compose

* quote name

* cleanup vars

* eliminate need for e2e setup

* compose has no builds anymore

* use compose run and zitadel nw

* test e2e on pr ()

* test e2e on pr

* install goreleaser

* install npm dev dependencies

* run cypress wf

* dynamic release version

* skip flaky user tests

* skip flaky permissions test

* cache docker layers in pipeline

* Update .github/workflows/cypress.yml

Co-authored-by: Florian Forster <florian@caos.ch>

* align goreleaser version

* get rid of install.sh

* remove cypress-terminal-report

* Revert "remove cypress-terminal-report"

This reverts commit 254b5a1f87be71c64c1289b12fc1bf23a401ea64.

* just one npm e2e:build command

* cache npm dependencies

* install node modules using docker

* dedicated e2e context

* fix syntax

* don't copy node modules from goreleaser

* add npm-copy target

* add tsconfig.json

* remove docker caching

* deleted unneeded shellscript

* naming and cleanup

Co-authored-by: Florian Forster <florian@caos.ch>
Co-authored-by: Christian Jakob <christian@caos.ch>

* cleanup

Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Co-authored-by: Christian Jakob <christian@caos.ch>
Co-authored-by: Florian Forster <florian@caos.ch>
2022-08-05 20:00:46 +02:00