Pascal Bleser
96890e315d
groupware: more JMAP operations implementation
2026-07-09 14:15:49 +02:00
Pascal Bleser
4286cec023
groupware: further implementation and improvements
2026-07-09 14:15:49 +02:00
Pascal Bleser
bc676fd0a7
upgrade Stalwart to 0.13.2
2026-07-09 14:15:49 +02:00
Pascal Bleser
7f755300cd
refactored the Session object, refactored the services/groupware directory, and started Swagger documentation implementation
2026-07-09 14:15:49 +02:00
Pascal Bleser
5862bebbcc
groupware: refactoring the API mechanisms
2026-07-09 14:15:49 +02:00
Pascal Bleser
127cd7406c
groupware: implement JSON:API's error response format, with a revamped error handling in jmap and services/groupware
2026-07-09 14:15:49 +02:00
Pascal Bleser
f0242898bf
Refactor groupware service after ADR decision on the Groupware API
...
* after having decided that the Groupware API should be a standalone
independent custom REST API that is using JMAP data models as much as
possible,
* removed Groupware APIs from the Graph service
* moved Groupware implementation to the Groupware service, and
refactored a few things accordingly
2026-07-09 14:15:49 +02:00
Pascal Bleser
4a138b8082
Groupware and jmap: cleanup and API documentation
2026-07-09 14:15:49 +02:00
Pascal Bleser
181dd14335
groupware: remove unneeded messages.go that was a remainder from an earlier implementation attempt, which also fixes compilation issues due to changes in main
2026-07-09 14:15:49 +02:00
Pascal Bleser
f5573a53f3
opencloud_full: upgrade Stalwart to 0.12.5, and use the ghcr.io container repository to avoid Hub limits
2026-07-09 14:15:49 +02:00
Pascal Bleser
aaf4be4546
Groupware improvements: refactoring, k6 tests
...
* refactored the models to be strongly typed with structs and mapstruct
to decompose the dynamic parts of the JMAP payloads
* externalized large JSON strings for tests into .json files under
testdata/
* added a couple of fantasy Graph groupware APIs to explore further
options
* added k6 scripts to test those graph/me/messages APIs, with a setup
program to set up users in LDAP, fill their IMAP inbox, activate them
in Stalwart, cleaning things up, etc...
2026-07-09 14:15:49 +02:00
Pascal Bleser
8cc8da45bf
fix Stalwart LDAP configuration
2026-07-09 14:15:49 +02:00
Pascal Bleser
f79ba9a35b
Use password policy overlay in LDAP and configure Stalwart to use it
2026-07-09 14:15:49 +02:00
Pascal Bleser
0dee74399d
upgrade Stalwart to 0.12.4
2026-07-09 14:15:49 +02:00
Pascal Bleser
3b43f51592
groupware: removed debugging logs
2026-07-09 14:15:49 +02:00
Pascal Bleser
04d1af5041
jwkset: remove debugging printlns
2026-07-09 14:15:49 +02:00
Pascal Bleser
68eaafece8
auth-api: fix: was missing newly introduced metrics
2026-07-09 14:15:49 +02:00
Pascal Bleser
8cf5aa3e4c
groupware and jmap improvements and refactoring
2026-07-09 14:15:48 +02:00
Pascal Bleser
7307e0143a
upgrade Stalwart to 0.12
2026-07-09 14:15:48 +02:00
Pascal Bleser
6101791c24
minor corrections to the Stalwart configuration
2026-07-09 14:15:48 +02:00
Pascal Bleser
521d2a0820
Introduce a the auth-api service
...
* primitive implementation to demonstrate how it could work, still to
be considered WIP at best
* add new dependency: MicahParks/jwkset and MicahParks/keyfunc to
retrieve the JWK set from KeyCloak to verify the signature of the
JWTs sent as part of Bearer authentication in the /auth API
* (minor) opencloud/.../service.go: clean up a logging statement that
was introduced earlier to hunt down why the auth-api service was not
being started
2026-07-09 14:15:48 +02:00
Pascal Bleser
9076c8449f
add an auth-api service to make an exemplary implementation of an external authentication API for third party services such as Stalwart
2026-07-09 14:15:48 +02:00
Pascal Bleser
d4cf02b17d
move services/groupware/pkg/jmap to pkg/jmap
2026-07-09 14:15:48 +02:00
Pascal Bleser
b8b1b02564
WIP: restructure the Jmap client, and implement the /me/messages Graph API endpoint with it
2026-07-09 14:15:48 +02:00
Pascal Bleser
7367f5bd6a
add an OIDC Directory to Stalwart, requires exposing Keycloak port 8080 directly to access the userinfo endpoint using HTTP since the certificates in traefik are self-signed and end up being rejected by Stalwart with no option to bypass the certificate check
2026-07-09 14:15:48 +02:00
Pascal Bleser
e4f415652d
rename Stalwart fallback admin username from 'admin' to 'mailadmin' since 'admin' exists as a regular user in LDAP and thus won't have access to the administration
2026-07-09 14:15:48 +02:00
Pascal Bleser
77af5d6e5e
add missing routing for /groupware (currently unprotected for testing)
2026-07-09 14:15:48 +02:00
Pascal Bleser
11f45fc83b
WIP: initial implementation of the groupware service
2026-07-09 14:15:48 +02:00
Pascal Bleser
6f03eae368
Add Stalwart container to the opencloud_full deployment, using the OpenLDAP container as a directory for user authentication
2026-07-09 14:15:48 +02:00
Alex
e4faa179b6
feat: add disableSponsorLink web config option ( #3093 )
2026-07-09 13:33:07 +02:00
Viktor Scharf
9efc71d42e
[decomposed] more cli command tests ( #3087 )
...
* more cli command tests
* add tests to expected failures file
2026-07-09 07:51:43 +02:00
Jörn Friedrich Dreyer
415900ab01
chore(idp): update axios
...
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de >
2026-07-08 17:09:05 +02:00
Thomas Schweiger
50be30e5db
fix: fix typo in proxy service documentation
2026-07-08 10:25:47 +02:00
opencloudeu
95f29d0440
[tx] updated from transifex
2026-07-07 23:16:19 +00:00
dependabot[bot]
ee478ed6a5
build(deps): bump golang.org/x/text from 0.38.0 to 0.39.0
...
Bumps [golang.org/x/text](https://github.com/golang/text ) from 0.38.0 to 0.39.0.
- [Release notes](https://github.com/golang/text/releases )
- [Commits](https://github.com/golang/text/compare/v0.38.0...v0.39.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/text
dependency-version: 0.39.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-07 17:08:57 +02:00
dependabot[bot]
e53c77e2be
build(deps): bump github.com/go-chi/chi/v5 from 5.3.0 to 5.3.1
...
Bumps [github.com/go-chi/chi/v5](https://github.com/go-chi/chi ) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/go-chi/chi/releases )
- [Changelog](https://github.com/go-chi/chi/blob/master/CHANGELOG.md )
- [Commits](https://github.com/go-chi/chi/compare/v5.3.0...v5.3.1 )
---
updated-dependencies:
- dependency-name: github.com/go-chi/chi/v5
dependency-version: 5.3.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-07 14:08:35 +02:00
dependabot[bot]
6f838a2131
build(deps): bump github.com/nats-io/nats-server/v2
...
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server ) from 2.14.2 to 2.14.3.
- [Release notes](https://github.com/nats-io/nats-server/releases )
- [Changelog](https://github.com/nats-io/nats-server/blob/main/RELEASES.md )
- [Commits](https://github.com/nats-io/nats-server/compare/v2.14.2...v2.14.3 )
---
updated-dependencies:
- dependency-name: github.com/nats-io/nats-server/v2
dependency-version: 2.14.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-07 12:32:16 +02:00
dependabot[bot]
e4dfada264
build(deps): bump github.com/gookit/config/v2 from 2.2.8 to 2.2.9
...
Bumps [github.com/gookit/config/v2](https://github.com/gookit/config ) from 2.2.8 to 2.2.9.
- [Release notes](https://github.com/gookit/config/releases )
- [Commits](https://github.com/gookit/config/compare/v2.2.8...v2.2.9 )
---
updated-dependencies:
- dependency-name: github.com/gookit/config/v2
dependency-version: 2.2.9
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-06 17:48:24 +02:00
dependabot[bot]
bce52eec38
build(deps): bump github.com/open-policy-agent/opa from 1.18.1 to 1.18.2
...
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa ) from 1.18.1 to 1.18.2.
- [Release notes](https://github.com/open-policy-agent/opa/releases )
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.18.1...v1.18.2 )
---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
dependency-version: 1.18.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-06 15:06:27 +02:00
dependabot[bot]
2683b2db6f
build(deps): bump github.com/kovidgoyal/imaging from 1.8.21 to 1.8.22
...
Bumps [github.com/kovidgoyal/imaging](https://github.com/kovidgoyal/imaging ) from 1.8.21 to 1.8.22.
- [Release notes](https://github.com/kovidgoyal/imaging/releases )
- [Commits](https://github.com/kovidgoyal/imaging/compare/v1.8.21...v1.8.22 )
---
updated-dependencies:
- dependency-name: github.com/kovidgoyal/imaging
dependency-version: 1.8.22
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-06 15:05:54 +02:00
Benedikt Kulmann
08bb6fe003
chore: add github funding
2026-07-06 11:56:29 +02:00
opencloudeu
7de9ade8aa
[tx] updated from transifex
2026-07-05 23:16:18 +00:00
opencloudeu
f714b22dc4
[tx] updated from transifex
2026-07-03 23:16:24 +00:00
opencloudeu
0fd05d3f5c
[tx] updated from transifex
2026-07-02 23:16:19 +00:00
dependabot[bot]
85be8e726b
build(deps): bump github.com/libregraph/lico from 0.66.0 to 0.67.0
...
Bumps [github.com/libregraph/lico](https://github.com/libregraph/lico ) from 0.66.0 to 0.67.0.
- [Changelog](https://github.com/libregraph/lico/blob/master/CHANGELOG.md )
- [Commits](https://github.com/libregraph/lico/compare/v0.66.0...v0.67.0 )
---
updated-dependencies:
- dependency-name: github.com/libregraph/lico
dependency-version: 0.67.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-02 09:15:58 +02:00
Benedikt Kulmann
eee040d066
chore: trigger settings bot
2026-07-02 08:51:29 +02:00
dependabot[bot]
364d090667
build(deps): bump google.golang.org/grpc from 1.81.1 to 1.82.0
...
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go ) from 1.81.1 to 1.82.0.
- [Release notes](https://github.com/grpc/grpc-go/releases )
- [Commits](https://github.com/grpc/grpc-go/compare/v1.81.1...v1.82.0 )
---
updated-dependencies:
- dependency-name: google.golang.org/grpc
dependency-version: 1.82.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-02 08:12:25 +02:00
dependabot[bot]
04a924f716
build(deps): bump github.com/open-policy-agent/opa from 1.17.1 to 1.18.1
...
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa ) from 1.17.1 to 1.18.1.
- [Release notes](https://github.com/open-policy-agent/opa/releases )
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.17.1...v1.18.1 )
---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
dependency-version: 1.18.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-07-02 08:11:54 +02:00
opencloudeu
c2ceb923e4
[tx] updated from transifex
2026-07-01 23:16:28 +00:00
Dominik Schmidt
11449b5943
docs(graph): frame colon paths as "encode segments" instead of a raw-colon edge case
...
Per review discussion: don't document accidental behavior. The contract is
simply "percent-encode each path segment, as MS Graph requires; encode ':'
as %3A" - OpenCloud allows ':' in names (OneDrive forbids it), so it's one
more character in the mandatory encode set, not a special case.
The parser is unchanged (split on ":/", decode once). This only rewrites the
docs (code comment, acceptance feature, PR description) to state the encode
contract, and drops the tests that relied on a raw, unencoded ':' in a file
name - keeping the "%3A" test that reflects the actual contract.
2026-07-01 17:44:31 +02:00