Compare commits

...
74 Commits
Author SHA1 Message Date
releaser 2d5c2fc938 chore(release): prepare for 0.8.0 (#444)
Unbound Release / Generate Changelog and Handle PR (push) Successful in 10s
Release / release (push) Successful in 15s
Unbound Release / Check Preconditions (push) Successful in 3s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 10s
auth0mock / build (push) Successful in 1m26s
## [0.8.0] - 2026-10-07

### 🚀 Features

- *(management)* Search users by email in any case (#443)

### 🐛 Bug Fixes

- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.5.0 (#427)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update golang:1.27 docker digest to 7543a96 (#421)
- *(deps)* Update golang:1.27 docker digest to 512690a (#423)
- *(deps)* Update golang:1.27 docker digest to f44f6e8 (#425)
- *(deps)* Update golang:1.27 docker digest to 03fd17c (#429)
- *(deps)* Update golang:1.27 docker digest to 1cfcdb1 (#431)
- *(deps)* Update golang:1.27 docker digest to 3680233 (#433)
- *(deps)* Update golang:1.27 docker digest to e0174e5 (#435)
- *(deps)* Update golang:1.27 docker digest to 23fe807 (#437)
- *(deps)* Update golang:1.27 docker digest to 1e93e00 (#439)
- *(deps)* Update golang:1.27 docker digest to 162be52 (#441)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/444
Co-authored-by: Unbound Releaser <releaser@unbound.se>
2026-10-07 18:14:22 +00:00
peter 87fe84076f feat(management): search users by email in any case (#443)
Unbound Release / Create Release (push) Successful in 22s
Unbound Release / Check Preconditions (push) Successful in 1m46s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 23s
Unbound Release / Create Tag (push) Skipped
Release / release (push) Successful in 2m14s
auth0mock / build (push) Successful in 1m10s
GET /api/v2/users with q=email:"..." answers like Auth0's user search: the
email matches in any letter case, unlike users-by-email, and the answer has
the include_totals shape the Go SDK asks for by default. Any other query is
refused with 400 rather than answered wrong.

Goodfeed's backend checks whether an address is taken with this search
before it lets a user change their email.

Reviewed-on: #443
Co-authored-by: Peter Svensson <peter@sparetimecoders.com>
2026-10-07 14:09:47 +00:00
renovate c558a2330e chore(deps): update golang:1.27 docker digest to 162be52 (#441)
Unbound Release / Create Release (push) Successful in 24s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 38s
Release / release (push) Successful in 1m16s
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 27s
Unbound Release / Create Tag (push) Skipped
2026-10-06 18:04:48 +00:00
renovate f00222cb8d chore(deps): update golang:1.27 docker digest to 1e93e00 (#439)
Release / release (push) Successful in 2m24s
Unbound Release / Create Release (push) Successful in 24s
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 22s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 43s
2026-10-06 09:05:41 +00:00
renovate d1560cc0fe chore(deps): update golang:1.27 docker digest to 23fe807 (#437)
Unbound Release / Check Preconditions (push) Successful in 22s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 40s
auth0mock / build (push) Skipped
Unbound Release / Create Release (push) Successful in 37s
Release / release (push) Successful in 18m20s
2026-10-06 05:16:38 +00:00
renovate c5f5873c2c chore(deps): update golang:1.27 docker digest to e0174e5 (#435)
Unbound Release / Create Release (push) Successful in 36s
Release / release (push) Successful in 1m44s
Unbound Release / Check Preconditions (push) Successful in 31s
auth0mock / build (push) Skipped
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 58s
2026-09-30 09:01:41 +00:00
renovate cd6bca11a1 chore(deps): update golang:1.27 docker digest to 3680233 (#433)
Unbound Release / Create Tag (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 26s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 58s
Unbound Release / Create Release (push) Successful in 26s
Release / release (push) Successful in 4m1s
2026-09-19 15:02:50 +00:00
renovate 961ce21fef chore(deps): update golang:1.27 docker digest to 1cfcdb1 (#431)
Unbound Release / Check Preconditions (push) Successful in 33s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 29s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 46s
Release / release (push) Successful in 2m40s
2026-09-19 08:05:32 +00:00
renovate aefe77ed1b chore(deps): update golang:1.27 docker digest to 03fd17c (#429)
Unbound Release / Check Preconditions (push) Successful in 27s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 42s
Release / release (push) Successful in 3m27s
Unbound Release / Create Release (push) Successful in 29s
2026-09-19 05:03:52 +00:00
renovate 556203ee18 fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.5.0 (#427)
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 1m14s
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 22s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 35s
2026-09-11 05:05:11 +00:00
renovate 7b7e17aa55 chore(deps): update golang:1.27 docker digest to f44f6e8 (#425)
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 47s
Unbound Release / Check Preconditions (push) Successful in 25s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 1m20s
2026-09-10 03:06:08 +00:00
renovate 9f6c5eea6d chore(deps): update golang:1.27 docker digest to 512690a (#423)
Unbound Release / Create Tag (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 39s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 45s
Unbound Release / Create Release (push) Successful in 31s
Release / release (push) Successful in 2m49s
2026-09-02 18:03:06 +00:00
renovate dde19e2d12 chore(deps): update golang:1.27 docker digest to 7543a96 (#421)
Unbound Release / Check Preconditions (push) Successful in 22s
auth0mock / build (push) Skipped
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 37s
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 1m12s
2026-09-02 07:04:11 +00:00
releaser 6abec59dd4 chore(release): prepare for 0.7.8 (#420)
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 29s
Release / release (push) Successful in 4m12s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 27s
auth0mock / build (push) Successful in 1m11s
## [0.7.8] - 2026-09-02

### 🐛 Bug Fixes

- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.3.0 (#405)
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.4.0 (#409)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update golang docker tag to v1.27 (#403)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to d75cdd7 (#407)
- *(deps)* Update golang:1.27 docker digest to c5b07c1 (#411)
- *(deps)* Update golang:1.27 docker digest to f42f854 (#413)
- *(deps)* Update golang:1.27 docker digest to 0ecdc2a (#415)
- *(deps)* Update golang:1.27 docker digest to 4013ae0 (#417)
- *(deps)* Update golang:1.27 docker digest to 192b749 (#419)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/420
Co-authored-by: Unbound Releaser <releaser@unbound.se>
2026-09-02 05:13:23 +00:00
renovate a740166f42 chore(deps): update golang:1.27 docker digest to 192b749 (#419)
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 21s
Release / release (push) Successful in 1m17s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 24s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 45s
2026-09-02 02:04:36 +00:00
renovate a55085d4d4 chore(deps): update golang:1.27 docker digest to 4013ae0 (#417)
Unbound Release / Check Preconditions (push) Successful in 27s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Release / release (push) Successful in 1m59s
Unbound Release / Create Release (push) Successful in 29s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 58s
2026-08-30 17:04:30 +00:00
renovate 32f5dca81e chore(deps): update golang:1.27 docker digest to 0ecdc2a (#415)
Unbound Release / Check Preconditions (push) Successful in 28s
Unbound Release / Create Release (push) Successful in 29s
Release / release (push) Successful in 1m25s
auth0mock / build (push) Successful in 1m38s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 49s
2026-08-25 15:04:42 +00:00
renovate 9b8cee3a51 chore(deps): update golang:1.27 docker digest to f42f854 (#413)
Unbound Release / Check Preconditions (push) Successful in 23s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 24s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 39s
Release / release (push) Successful in 2m46s
2026-08-25 09:01:28 +00:00
renovate c887bed070 chore(deps): update golang:1.27 docker digest to c5b07c1 (#411)
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 36s
Unbound Release / Create Release (push) Successful in 25s
Release / release (push) Successful in 3m41s
2026-08-25 06:02:57 +00:00
renovate 359bf01497 fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.4.0 (#409)
Unbound Release / Check Preconditions (push) Successful in 26s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 41s
auth0mock / build (push) Skipped
Unbound Release / Create Release (push) Successful in 29s
Release / release (push) Successful in 1m28s
2026-08-23 15:03:10 +00:00
renovate 2472804caf chore(deps): update gcr.io/distroless/static-debian12 docker digest to d75cdd7 (#407)
Unbound Release / Check Preconditions (push) Successful in 27s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 23s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 42s
Release / release (push) Successful in 1m21s
2026-08-21 19:04:55 +00:00
renovate 59d518e1a2 fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.3.0 (#405)
Unbound Release / Check Preconditions (push) Successful in 22s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 38s
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 1m9s
2026-08-21 06:05:43 +00:00
renovate b6f24ef16e chore(deps): update golang docker tag to v1.27 (#403)
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 39s
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 1m53s
2026-08-20 08:01:34 +00:00
releaser 2fd66b13bb chore(release): prepare for 0.7.7 (#401)
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
Release / release (push) Successful in 1m31s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 23s
Unbound Release / Create Release (push) Successful in 25s
auth0mock / build (push) Successful in 53s
## [0.7.7] - 2026-08-16

### 🐛 Bug Fixes

- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.1.0 (#361)
- *(deps)* Update module github.com/alecthomas/kong to v1.16.0 (#379)
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.2.0 (#385)
- *(deps)* Update module github.com/alecthomas/kong to v1.16.1 (#392)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update actions/checkout action to v7 (#349)
- *(deps)* Update golang:1.26 docker digest to 8c5d338 (#351)
- *(deps)* Update golang:1.26 docker digest to 478231b (#353)
- *(deps)* Update golang:1.26 docker digest to 8f4cb3b (#355)
- *(deps)* Update golang:1.26 docker digest to 32c0e6e (#357)
- *(deps)* Update golang:1.26 docker digest to f96cc55 (#359)
- *(deps)* Update golang:1.26 docker digest to b900de9 (#363)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 22fd79f (#365)
- *(deps)* Update golang:1.26 docker digest to 079e598 (#367)
- *(deps)* Update golang:1.26 docker digest to 0f70d7d (#369)
- *(deps)* Update golang:1.26 docker digest to 983a082 (#371)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 61b7cce (#373)
- *(deps)* Update golang:1.26 docker digest to d52df9c (#375)
- *(deps)* Update golang:1.26 docker digest to ae5a231 (#377)
- *(deps)* Update golang:1.26 docker digest to 3aff665 (#381)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to a9fcaed (#383)
- *(deps)* Update golang:1.26 docker digest to 2005724 (#386)
- *(deps)* Update golang:1.26 docker digest to 7caba52 (#389)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 6447365 (#388)
- *(deps)* Update golang:1.26 docker digest to 5822931 (#394)
- *(deps)* Update golang:1.26 docker digest to 705e964 (#396)
- *(deps)* Update golang:1.26 docker digest to 2632668 (#398)
- *(deps)* Update golang:1.26 docker digest to 0d1d3a7 (#400)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/401
Co-authored-by: Unbound Releaser <releaser@unbound.se>
2026-08-17 11:50:54 +00:00
renovate ffd8d3f1bc chore(deps): update golang:1.26 docker digest to 0d1d3a7 (#400)
Unbound Release / Create Tag (push) Skipped
Unbound Release / Create Release (push) Successful in 29s
Unbound Release / Check Preconditions (push) Successful in 33s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 44s
Release / release (push) Successful in 1m39s
2026-08-16 17:04:34 +00:00
renovate b672a1e13c chore(deps): update golang:1.26 docker digest to 2632668 (#398)
Unbound Release / Check Preconditions (push) Successful in 26s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 57s
Unbound Release / Create Release (push) Successful in 35s
Release / release (push) Successful in 9m13s
2026-08-13 22:07:05 +00:00
renovate 69db0d74f9 chore(deps): update golang:1.26 docker digest to 705e964 (#396)
Unbound Release / Create Release (push) Successful in 25s
Unbound Release / Check Preconditions (push) Successful in 20s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 40s
Release / release (push) Successful in 1m3s
2026-08-13 10:39:08 +00:00
renovate 58c8498915 chore(deps): update golang:1.26 docker digest to 5822931 (#394)
Unbound Release / Create Tag (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 30s
Unbound Release / Create Release (push) Successful in 31s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 1m43s
Release / release (push) Successful in 10m46s
2026-08-12 20:04:36 +00:00
renovate 04b3fdc0ff fix(deps): update module github.com/alecthomas/kong to v1.16.1 (#392)
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 40s
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Successful in 10m30s
2026-08-12 08:06:21 +00:00
renovate a2ccfd706b chore(deps): update gcr.io/distroless/static-debian12 docker digest to 6447365 (#388)
Unbound Release / Create Tag (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 22s
Unbound Release / Create Release (push) Successful in 24s
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 39s
Release / release (push) Successful in 1m6s
2026-08-11 04:01:13 +00:00
renovate 97fbdd1b11 chore(deps): update golang:1.26 docker digest to 7caba52 (#389)
auth0mock / build (push) Skipped
Release / release (push) Successful in 1m35s
Unbound Release / Check Preconditions (push) Successful in 32s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 45s
Unbound Release / Create Release (push) Successful in 26s
2026-08-11 03:04:49 +00:00
renovate 68ff1eeb4d chore(deps): update golang:1.26 docker digest to 2005724 (#386)
Unbound Release / Check Preconditions (push) Successful in 27s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Create Release (push) Successful in 31s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 45s
Release / release (push) Successful in 3m5s
2026-08-08 15:03:29 +00:00
renovate a2c3c83db4 fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.2.0 (#385)
Unbound Release / Check Preconditions (push) Successful in 20s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Failing after 27s
Unbound Release / Create Release (push) Successful in 24s
Release / release (push) Failing after 1m14s
2026-07-27 10:05:33 +00:00
renovate f3d19b2135 chore(deps): update gcr.io/distroless/static-debian12 docker digest to a9fcaed (#383)
Unbound Release / Check Preconditions (push) Successful in 21s
Unbound Release / Create Tag (push) Skipped
auth0mock / build (push) Skipped
Unbound Release / Create Release (push) Successful in 27s
Unbound Release / Generate Changelog and Handle PR (push) Successful in 5m42s
Release / release (push) Successful in 6m17s
2026-07-20 19:19:43 +00:00
renovate 7735c649cb chore(deps): update golang:1.26 docker digest to 3aff665 (#381)
auth0mock / build (push) Skipped
Unbound Release / Check Preconditions (push) Successful in 19s
Unbound Release / Create Tag (push) Skipped
Unbound Release / Generate Changelog and Handle PR (push) Successful in 1m8s
Unbound Release / Create Release (push) Successful in 23s
Release / release (push) Successful in 1m31s
2026-07-20 06:05:34 +00:00
renovate b8a8d47a55 fix(deps): update module github.com/alecthomas/kong to v1.16.0 (#379)
Release / release (push) Successful in 49s
auth0mock / build (push) Successful in 1m27s
2026-07-18 10:06:28 +00:00
renovate 4f34ae0649 chore(deps): update golang:1.26 docker digest to ae5a231 (#377)
auth0mock / build (push) Successful in 52s
Release / release (push) Successful in 53s
2026-07-16 03:04:52 +00:00
renovate 8d9de4d156 chore(deps): update golang:1.26 docker digest to d52df9c (#375)
auth0mock / build (push) Successful in 44s
Release / release (push) Successful in 44s
2026-07-14 18:05:45 +00:00
renovate 15547225a3 chore(deps): update gcr.io/distroless/static-debian12 docker digest to 61b7cce (#373)
auth0mock / build (push) Successful in 36s
Release / release (push) Successful in 52s
2026-07-14 15:05:34 +00:00
renovate 53d25a7d03 chore(deps): update golang:1.26 docker digest to 983a082 (#371)
auth0mock / build (push) Successful in 38s
Release / release (push) Successful in 43s
2026-07-14 12:05:43 +00:00
renovate 522836a25c chore(deps): update golang:1.26 docker digest to 0f70d7d (#369)
Release / release (push) Successful in 38s
auth0mock / build (push) Successful in 56s
2026-07-14 09:07:47 +00:00
renovate 59fd35f6a1 chore(deps): update golang:1.26 docker digest to 079e598 (#367)
auth0mock / build (push) Successful in 31s
Release / release (push) Successful in 43s
2026-07-09 01:04:54 +00:00
renovate 9b42f35d3e chore(deps): update gcr.io/distroless/static-debian12 docker digest to 22fd79f (#365)
auth0mock / build (push) Successful in 30s
Release / release (push) Successful in 47s
2026-07-08 23:05:07 +00:00
renovate 9a6d21a183 chore(deps): update golang:1.26 docker digest to b900de9 (#363)
auth0mock / build (push) Successful in 32s
Release / release (push) Successful in 56s
2026-07-08 01:05:03 +00:00
renovate 714d67d093 fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.1.0 (#361)
auth0mock / build (push) Successful in 40s
Release / release (push) Successful in 1m18s
2026-07-04 05:05:34 +00:00
renovate b27ecd68d6 chore(deps): update golang:1.26 docker digest to f96cc55 (#359)
Release / release (push) Successful in 56s
auth0mock / build (push) Successful in 45s
2026-06-29 20:04:54 +00:00
renovate 7ee15e4bc8 chore(deps): update golang:1.26 docker digest to 32c0e6e (#357)
Release / release (push) Successful in 52s
auth0mock / build (push) Successful in 38s
2026-06-24 15:03:01 +00:00
renovate e90c698bb7 chore(deps): update golang:1.26 docker digest to 8f4cb3b (#355)
auth0mock / build (push) Successful in 41s
Release / release (push) Successful in 49s
2026-06-24 12:03:01 +00:00
renovate d08eb344ef chore(deps): update golang:1.26 docker digest to 478231b (#353)
auth0mock / build (push) Successful in 1m1s
Release / release (push) Successful in 1m12s
2026-06-24 09:03:41 +00:00
renovate d00367d5f0 chore(deps): update golang:1.26 docker digest to 8c5d338 (#351)
Release / release (push) Successful in 1m8s
auth0mock / build (push) Successful in 1m53s
2026-06-24 06:31:38 +00:00
renovate 7561b00760 chore(deps): update actions/checkout action to v7 (#349)
Release / release (push) Successful in 1m12s
auth0mock / build (push) Successful in 1m25s
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://github.com/actions/checkout) | action | major | `v6` → `v7` |

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

### [`v7.0.0`](https://github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v700)

[Compare Source](https://github.com/actions/checkout/compare/v7.0.0...v7.0.0)

- Block checking out fork PR for pull\_request\_target and workflow\_run by [@&#8203;aiqiaoy](https://github.com/aiqiaoy) in [#&#8203;2454](https://github.com/actions/checkout/pull/2454)
- Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the minor-actions-dependencies group across 1 directory by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2458](https://github.com/actions/checkout/pull/2458)
- Bump flatted from 3.3.1 to 3.4.2 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2460](https://github.com/actions/checkout/pull/2460)
- Bump js-yaml from 4.1.0 to 4.2.0 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2461](https://github.com/actions/checkout/pull/2461)
- Bump [@&#8203;actions/core](https://github.com/actions/core) and [@&#8203;actions/tool-cache](https://github.com/actions/tool-cache) and Remove uuid by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2459](https://github.com/actions/checkout/pull/2459)
- upgrade module to esm and update dependencies by [@&#8203;aiqiaoy](https://github.com/aiqiaoy) in [#&#8203;2463](https://github.com/actions/checkout/pull/2463)
- Bump the minor-npm-dependencies group across 1 directory with 3 updates by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2462](https://github.com/actions/checkout/pull/2462)

### [`v7`](https://github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v700)

[Compare Source](https://github.com/actions/checkout/compare/v6.0.3...v7.0.0)

- Block checking out fork PR for pull\_request\_target and workflow\_run by [@&#8203;aiqiaoy](https://github.com/aiqiaoy) in [#&#8203;2454](https://github.com/actions/checkout/pull/2454)
- Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the minor-actions-dependencies group across 1 directory by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2458](https://github.com/actions/checkout/pull/2458)
- Bump flatted from 3.3.1 to 3.4.2 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2460](https://github.com/actions/checkout/pull/2460)
- Bump js-yaml from 4.1.0 to 4.2.0 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2461](https://github.com/actions/checkout/pull/2461)
- Bump [@&#8203;actions/core](https://github.com/actions/core) and [@&#8203;actions/tool-cache](https://github.com/actions/tool-cache) and Remove uuid by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2459](https://github.com/actions/checkout/pull/2459)
- upgrade module to esm and update dependencies by [@&#8203;aiqiaoy](https://github.com/aiqiaoy) in [#&#8203;2463](https://github.com/actions/checkout/pull/2463)
- Bump the minor-npm-dependencies group across 1 directory with 3 updates by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2462](https://github.com/actions/checkout/pull/2462)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMjAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjIyMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/349
Co-authored-by: Renovate Bot <renovate@unbound.se>
Co-committed-by: Renovate Bot <renovate@unbound.se>
2026-06-21 15:45:42 +00:00
releaser f9cb1dec18 chore(release): prepare for 0.7.6 (#348)
Release / release (push) Successful in 58s
auth0mock / build (push) Successful in 1m43s
## [0.7.6] - 2026-06-15

### ⚙️ Miscellaneous Tasks

- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 9c346e4 (#325)
- *(deps)* Update golang:1.26 docker digest to cc9a5d7 (#327)
- *(deps)* Update golang:1.26 docker digest to 8530a4f (#329)
- *(deps)* Update golang:1.26 docker digest to 6df14f4 (#331)
- *(deps)* Update golang:1.26 docker digest to 2d6c802 (#333)
- *(deps)* Update golang:1.26 docker digest to 98fc714 (#335)
- *(deps)* Update golang:1.26 docker digest to 68cb6d6 (#337)
- *(deps)* Update golang:1.26 docker digest to 11fd8f7 (#339)
- *(deps)* Update golang:1.26 docker digest to d47ca13 (#341)
- *(deps)* Update golang:1.26 docker digest to d184d9b (#343)
- *(deps)* Update golang:1.26 docker digest to 87a41d2 (#345)
- *(deps)* Update golang:1.26 docker digest to 792443b (#347)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/348
Co-authored-by: Unbound Releaser <releaser@unbound.se>
Co-committed-by: Unbound Releaser <releaser@unbound.se>
2026-06-16 06:05:39 +00:00
renovate 9e806daeb1 chore(deps): update golang:1.26 docker digest to 792443b (#347)
auth0mock / build (push) Successful in 1m53s
Release / release (push) Successful in 1m4s
2026-06-15 20:08:25 +00:00
renovate 4987f8e85e chore(deps): update golang:1.26 docker digest to 87a41d2 (#345)
Release / release (push) Successful in 1m1s
auth0mock / build (push) Successful in 1m3s
2026-06-11 14:06:54 +00:00
renovate e18a2433c2 chore(deps): update golang:1.26 docker digest to d184d9b (#343)
Release / release (push) Successful in 59s
auth0mock / build (push) Successful in 3m3s
2026-06-11 08:29:51 +00:00
renovate c2052e4e57 chore(deps): update golang:1.26 docker digest to d47ca13 (#341)
Release / release (push) Successful in 1m8s
auth0mock / build (push) Successful in 1m23s
2026-06-11 05:06:08 +00:00
renovate bdb72bab10 chore(deps): update golang:1.26 docker digest to 11fd8f7 (#339)
Release / release (push) Successful in 1m8s
auth0mock / build (push) Successful in 3m4s
2026-06-10 03:06:25 +00:00
renovate ceb0af39d6 chore(deps): update golang:1.26 docker digest to 68cb6d6 (#337)
auth0mock / build (push) Successful in 1m32s
Release / release (push) Successful in 1m41s
2026-06-03 02:03:56 +00:00
renovate 3ae6057f64 chore(deps): update golang:1.26 docker digest to 98fc714 (#335)
Release / release (push) Successful in 58s
auth0mock / build (push) Successful in 2m10s
2026-06-03 00:06:56 +00:00
renovate 2ba2b9ee80 chore(deps): update golang:1.26 docker digest to 2d6c802 (#333)
Release / release (push) Successful in 59s
auth0mock / build (push) Successful in 52s
2026-05-24 20:36:08 +00:00
renovate 62cadc2d7c chore(deps): update golang:1.26 docker digest to 6df14f4 (#331)
Release / release (push) Successful in 56s
auth0mock / build (push) Successful in 2m8s
2026-05-20 12:05:53 +00:00
renovate 358b5e254f chore(deps): update golang:1.26 docker digest to 8530a4f (#329)
auth0mock / build (push) Successful in 1m51s
Release / release (push) Successful in 1m17s
2026-05-20 08:17:18 +00:00
renovate f0b6423fb9 chore(deps): update golang:1.26 docker digest to cc9a5d7 (#327)
Release / release (push) Successful in 1m32s
auth0mock / build (push) Successful in 2m14s
2026-05-20 06:04:53 +00:00
renovate 0d9b3eca4e chore(deps): update gcr.io/distroless/static-debian12 docker digest to 9c346e4 (#325)
auth0mock / build (push) Successful in 50s
Release / release (push) Successful in 58s
2026-05-17 22:03:53 +00:00
releaser d98fa70240 chore(release): prepare for 0.7.5 (#324)
Release / release (push) Successful in 44s
auth0mock / build (push) Successful in 1m26s
## [0.7.5] - 2026-05-13

### 🐛 Bug Fixes

- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.0.2 (#319)

### ⚙️ Miscellaneous Tasks

- *(deps)* Update golang:1.26 docker digest to 4039008 (#309)
- *(deps)* Update golang:1.26 docker digest to efaccb5 (#311)
- *(deps)* Update golang:1.26 docker digest to 13605db (#312)
- *(deps)* Update golang:1.26 docker digest to 257c1f6 (#313)
- *(deps)* Update golang:1.26 docker digest to db1271a (#315)
- *(deps)* Update golang:1.26 docker digest to 2981696 (#317)
- *(deps)* Update golang:1.26 docker digest to 633d23b (#321)
- *(deps)* Update golang:1.26 docker digest to 313faae (#323)

<!-- generated by git-cliff -->

---

**Note:** Please use **Squash Merge** when merging this PR.

Reviewed-on: https://gitea.unbound.se/unboundsoftware/auth0mock/pulls/324
Co-authored-by: Unbound Releaser <releaser@unbound.se>
Co-committed-by: Unbound Releaser <releaser@unbound.se>
2026-05-14 07:28:15 +00:00
renovate 6baf622b26 chore(deps): update golang:1.26 docker digest to 313faae (#323)
Release / release (push) Successful in 58s
auth0mock / build (push) Successful in 1m36s
2026-05-13 20:05:51 +00:00
renovate 12fa9412d7 chore(deps): update golang:1.26 docker digest to 633d23b (#321)
auth0mock / build (push) Successful in 1m55s
Release / release (push) Successful in 1m18s
2026-05-13 03:04:54 +00:00
renovate 84402f996a fix(deps): update module github.com/lestrrat-go/jwx/v4 to v4.0.2 (#319)
Release / release (push) Successful in 56s
auth0mock / build (push) Successful in 1m0s
2026-05-10 01:07:37 +00:00
renovate 2090220e52 chore(deps): update golang:1.26 docker digest to 2981696 (#317)
auth0mock / build (push) Successful in 57s
Release / release (push) Successful in 1m1s
2026-05-09 09:06:05 +00:00
renovate 8130fb9571 chore(deps): update golang:1.26 docker digest to db1271a (#315)
auth0mock / build (push) Successful in 57s
Release / release (push) Successful in 1m0s
2026-05-09 06:05:45 +00:00
renovate 8f4948f51d chore(deps): update golang:1.26 docker digest to 257c1f6 (#313)
auth0mock / build (push) Successful in 51s
Release / release (push) Successful in 54s
2026-05-09 02:06:53 +00:00
renovate 616effcec9 chore(deps): update golang:1.26 docker digest to 13605db (#312)
auth0mock / build (push) Successful in 2m5s
Release / release (push) Failing after 1m20s
2026-05-08 23:06:56 +00:00
renovate 1ac50e6f2e chore(deps): update golang:1.26 docker digest to efaccb5 (#311)
auth0mock / build (push) Successful in 57s
Release / release (push) Failing after 52s
2026-05-07 21:06:12 +00:00
renovate 3c6fcbb33e chore(deps): update golang:1.26 docker digest to 4039008 (#309)
Release / release (push) Successful in 1m23s
auth0mock / build (push) Successful in 1m27s
2026-05-07 19:07:03 +00:00
9 changed files with 239 additions and 24 deletions

No files matched your search

+1 -1
View File
@@ -14,7 +14,7 @@ jobs:
BUILDTOOLS_CONTENT: ${{ secrets.BUILDTOOLS_CONTENT }} BUILDTOOLS_CONTENT: ${{ secrets.BUILDTOOLS_CONTENT }}
GITEA_REPOSITORY: ${{ gitea.repository }} GITEA_REPOSITORY: ${{ gitea.repository }}
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v7
- uses: buildtool/setup-buildtools-action@v1 - uses: buildtool/setup-buildtools-action@v1
- name: Build and push - name: Build and push
run: unset GITEA_TOKEN && build && push run: unset GITEA_TOKEN && build && push
+1 -1
View File
@@ -1,3 +1,3 @@
{ {
"version": "0.7.4" "version": "0.8.0"
} }
+109
View File
@@ -2,6 +2,115 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [0.8.0] - 2026-10-07
### 🚀 Features
- *(management)* Search users by email in any case (#443)
### 🐛 Bug Fixes
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.5.0 (#427)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang:1.27 docker digest to 7543a96 (#421)
- *(deps)* Update golang:1.27 docker digest to 512690a (#423)
- *(deps)* Update golang:1.27 docker digest to f44f6e8 (#425)
- *(deps)* Update golang:1.27 docker digest to 03fd17c (#429)
- *(deps)* Update golang:1.27 docker digest to 1cfcdb1 (#431)
- *(deps)* Update golang:1.27 docker digest to 3680233 (#433)
- *(deps)* Update golang:1.27 docker digest to e0174e5 (#435)
- *(deps)* Update golang:1.27 docker digest to 23fe807 (#437)
- *(deps)* Update golang:1.27 docker digest to 1e93e00 (#439)
- *(deps)* Update golang:1.27 docker digest to 162be52 (#441)
## [0.7.8] - 2026-09-02
### 🐛 Bug Fixes
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.3.0 (#405)
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.4.0 (#409)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang docker tag to v1.27 (#403)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to d75cdd7 (#407)
- *(deps)* Update golang:1.27 docker digest to c5b07c1 (#411)
- *(deps)* Update golang:1.27 docker digest to f42f854 (#413)
- *(deps)* Update golang:1.27 docker digest to 0ecdc2a (#415)
- *(deps)* Update golang:1.27 docker digest to 4013ae0 (#417)
- *(deps)* Update golang:1.27 docker digest to 192b749 (#419)
## [0.7.7] - 2026-08-17
### 🐛 Bug Fixes
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.1.0 (#361)
- *(deps)* Update module github.com/alecthomas/kong to v1.16.0 (#379)
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.2.0 (#385)
- *(deps)* Update module github.com/alecthomas/kong to v1.16.1 (#392)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update actions/checkout action to v7 (#349)
- *(deps)* Update golang:1.26 docker digest to 8c5d338 (#351)
- *(deps)* Update golang:1.26 docker digest to 478231b (#353)
- *(deps)* Update golang:1.26 docker digest to 8f4cb3b (#355)
- *(deps)* Update golang:1.26 docker digest to 32c0e6e (#357)
- *(deps)* Update golang:1.26 docker digest to f96cc55 (#359)
- *(deps)* Update golang:1.26 docker digest to b900de9 (#363)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 22fd79f (#365)
- *(deps)* Update golang:1.26 docker digest to 079e598 (#367)
- *(deps)* Update golang:1.26 docker digest to 0f70d7d (#369)
- *(deps)* Update golang:1.26 docker digest to 983a082 (#371)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 61b7cce (#373)
- *(deps)* Update golang:1.26 docker digest to d52df9c (#375)
- *(deps)* Update golang:1.26 docker digest to ae5a231 (#377)
- *(deps)* Update golang:1.26 docker digest to 3aff665 (#381)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to a9fcaed (#383)
- *(deps)* Update golang:1.26 docker digest to 2005724 (#386)
- *(deps)* Update golang:1.26 docker digest to 7caba52 (#389)
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 6447365 (#388)
- *(deps)* Update golang:1.26 docker digest to 5822931 (#394)
- *(deps)* Update golang:1.26 docker digest to 705e964 (#396)
- *(deps)* Update golang:1.26 docker digest to 2632668 (#398)
- *(deps)* Update golang:1.26 docker digest to 0d1d3a7 (#400)
## [0.7.6] - 2026-06-16
### ⚙️ Miscellaneous Tasks
- *(deps)* Update gcr.io/distroless/static-debian12 docker digest to 9c346e4 (#325)
- *(deps)* Update golang:1.26 docker digest to cc9a5d7 (#327)
- *(deps)* Update golang:1.26 docker digest to 8530a4f (#329)
- *(deps)* Update golang:1.26 docker digest to 6df14f4 (#331)
- *(deps)* Update golang:1.26 docker digest to 2d6c802 (#333)
- *(deps)* Update golang:1.26 docker digest to 98fc714 (#335)
- *(deps)* Update golang:1.26 docker digest to 68cb6d6 (#337)
- *(deps)* Update golang:1.26 docker digest to 11fd8f7 (#339)
- *(deps)* Update golang:1.26 docker digest to d47ca13 (#341)
- *(deps)* Update golang:1.26 docker digest to d184d9b (#343)
- *(deps)* Update golang:1.26 docker digest to 87a41d2 (#345)
- *(deps)* Update golang:1.26 docker digest to 792443b (#347)
## [0.7.5] - 2026-05-14
### 🐛 Bug Fixes
- *(deps)* Update module github.com/lestrrat-go/jwx/v4 to v4.0.2 (#319)
### ⚙️ Miscellaneous Tasks
- *(deps)* Update golang:1.26 docker digest to 4039008 (#309)
- *(deps)* Update golang:1.26 docker digest to efaccb5 (#311)
- *(deps)* Update golang:1.26 docker digest to 13605db (#312)
- *(deps)* Update golang:1.26 docker digest to 257c1f6 (#313)
- *(deps)* Update golang:1.26 docker digest to db1271a (#315)
- *(deps)* Update golang:1.26 docker digest to 2981696 (#317)
- *(deps)* Update golang:1.26 docker digest to 633d23b (#321)
- *(deps)* Update golang:1.26 docker digest to 313faae (#323)
## [0.7.4] - 2026-05-04 ## [0.7.4] - 2026-05-04
### 🐛 Bug Fixes ### 🐛 Bug Fixes
+2 -2
View File
@@ -1,4 +1,4 @@
FROM golang:1.26@sha256:b54cbf583d390341599d7bcbc062425c081105cc5ef6d170ced98ef9d047c716 AS build FROM golang:1.27@sha256:162be5298a40ed317005c8339c6de4d10d3eef336d66dc8e9259b03ab9d3a6d2 AS build
WORKDIR /build WORKDIR /build
ENV CGO_ENABLED=0 ENV CGO_ENABLED=0
@@ -10,7 +10,7 @@ RUN go mod download
COPY . . COPY . .
RUN go build -ldflags="-s -w" -o /release/service ./cmd/service RUN go build -ldflags="-s -w" -o /release/service ./cmd/service
FROM gcr.io/distroless/static-debian12@sha256:20bc6c0bc4d625a22a8fde3e55f6515709b32055ef8fb9cfbddaa06d1760f838 FROM gcr.io/distroless/static-debian12@sha256:d75cdd72874d4790092fcb1b058493ecf6bb5bf2b2b897045b00ff01d91843f2
ENV TZ=Europe/Stockholm ENV TZ=Europe/Stockholm
ENV AUDIENCE="https://shiny.unbound.se" ENV AUDIENCE="https://shiny.unbound.se"
+1
View File
@@ -102,6 +102,7 @@ func main() {
// Management API endpoints // Management API endpoints
mux.HandleFunc("GET /api/v2/users-by-email", managementHandler.GetUsersByEmail) mux.HandleFunc("GET /api/v2/users-by-email", managementHandler.GetUsersByEmail)
mux.HandleFunc("GET /api/v2/users", managementHandler.SearchUsers)
mux.HandleFunc("POST /api/v2/users", managementHandler.CreateUser) mux.HandleFunc("POST /api/v2/users", managementHandler.CreateUser)
mux.HandleFunc("PATCH /api/v2/users/", managementHandler.UpdateUser) mux.HandleFunc("PATCH /api/v2/users/", managementHandler.UpdateUser)
mux.HandleFunc("POST /api/v2/tickets/password-change", managementHandler.PasswordChangeTicket) mux.HandleFunc("POST /api/v2/tickets/password-change", managementHandler.PasswordChangeTicket)
+4 -4
View File
@@ -3,15 +3,15 @@ module git.unbound.se/unboundsoftware/auth0mock
go 1.26.0 go 1.26.0
require ( require (
github.com/alecthomas/kong v1.15.0 github.com/alecthomas/kong v1.16.1
github.com/google/uuid v1.6.0 github.com/google/uuid v1.6.0
github.com/lestrrat-go/jwx/v4 v4.0.1 github.com/lestrrat-go/jwx/v4 v4.5.0
github.com/rs/cors v1.11.1 github.com/rs/cors v1.11.1
) )
require ( require (
github.com/lestrrat-go/dsig v1.3.0 // indirect github.com/lestrrat-go/dsig v1.4.0 // indirect
github.com/lestrrat-go/option/v3 v3.0.0-alpha1 // indirect github.com/lestrrat-go/option/v3 v3.0.0-alpha1 // indirect
github.com/valyala/fastjson v1.6.10 // indirect github.com/valyala/fastjson v1.6.10 // indirect
golang.org/x/crypto v0.50.0 // indirect golang.org/x/crypto v0.56.0 // indirect
) )
+12 -16
View File
@@ -1,30 +1,26 @@
github.com/alecthomas/assert/v2 v2.11.0 h1:2Q9r3ki8+JYXvGsDyBXwH3LcJ+WK5D0gc5E8vS6K3D0= github.com/alecthomas/assert/v2 v2.11.0 h1:2Q9r3ki8+JYXvGsDyBXwH3LcJ+WK5D0gc5E8vS6K3D0=
github.com/alecthomas/assert/v2 v2.11.0/go.mod h1:Bze95FyfUr7x34QZrjL+XP+0qgp/zg8yS+TtBj1WA3k= github.com/alecthomas/assert/v2 v2.11.0/go.mod h1:Bze95FyfUr7x34QZrjL+XP+0qgp/zg8yS+TtBj1WA3k=
github.com/alecthomas/kong v1.15.0 h1:BVJstKbpO73zKpmIu+m/aLRrNmWwxXPIGTNin9VmLVI= github.com/alecthomas/kong v1.16.1 h1:ixhCt93XkJ98kGposQ54+bl0IK6XwqB40AsMynU7Z8E=
github.com/alecthomas/kong v1.15.0/go.mod h1:wrlbXem1CWqUV5Vbmss5ISYhsVPkBb1Yo7YKJghju2I= github.com/alecthomas/kong v1.16.1/go.mod h1:wrlbXem1CWqUV5Vbmss5ISYhsVPkBb1Yo7YKJghju2I=
github.com/alecthomas/repr v0.5.2 h1:SU73FTI9D1P5UNtvseffFSGmdNci/O6RsqzeXJtP0Qs= github.com/alecthomas/repr v0.5.2 h1:SU73FTI9D1P5UNtvseffFSGmdNci/O6RsqzeXJtP0Qs=
github.com/alecthomas/repr v0.5.2/go.mod h1:Fr0507jx4eOXV7AlPV6AVZLYrLIuIeSOWtW57eE/O/4= github.com/alecthomas/repr v0.5.2/go.mod h1:Fr0507jx4eOXV7AlPV6AVZLYrLIuIeSOWtW57eE/O/4=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM= github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM=
github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg=
github.com/lestrrat-go/dsig v1.3.0 h1:phjMOCXvYzhuIgn7Voe2rex8z166vGfxRxmqM25P9/Q= github.com/lestrrat-go/dsig v1.4.0 h1:g7LUjK8cT74A5DzBXJI5HzsJuLhoYN0Wzj4nuOMIrH8=
github.com/lestrrat-go/dsig v1.3.0/go.mod h1:RD2eOaidyPvpc7IJQoO3Qq52RWdy8ZcJs8lrOnoa1Kc= github.com/lestrrat-go/dsig v1.4.0/go.mod h1:I8Nddg/vN2cUl/h8N7SRRApLnNNeyZPIqLYpvpOtGGo=
github.com/lestrrat-go/jwx/v4 v4.0.1 h1:E/pDfwunh7sRynGSjR80hgHjLgiVK/2san6Mb5Aycdw= github.com/lestrrat-go/jwx/v4 v4.5.0 h1:lgU8YcqaJo/iZllX4AvSaQTzT2XpWWMrDcPMe6+KzqI=
github.com/lestrrat-go/jwx/v4 v4.0.1/go.mod h1:F2a0rSyXsqLAL0orBZGOXrzQGv018Tx4eiEWWYR7Yzo= github.com/lestrrat-go/jwx/v4 v4.5.0/go.mod h1:HpoztFC5HrNj9iKkZJ3XTQQgzCY2Zto/29n89QhTC10=
github.com/lestrrat-go/option/v3 v3.0.0-alpha1 h1:dvdzLwm/Ba5CJUF3jQP7w/iNYSLfy7yyh9XXNa1WjxI= github.com/lestrrat-go/option/v3 v3.0.0-alpha1 h1:dvdzLwm/Ba5CJUF3jQP7w/iNYSLfy7yyh9XXNa1WjxI=
github.com/lestrrat-go/option/v3 v3.0.0-alpha1/go.mod h1:5KSg20dfsKkNJtjDmaQRLZVXuUrzuCCcz/gbDK0pfKk= github.com/lestrrat-go/option/v3 v3.0.0-alpha1/go.mod h1:5KSg20dfsKkNJtjDmaQRLZVXuUrzuCCcz/gbDK0pfKk=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA= github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=
github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.12.1 h1:EuwCh5fleGS7H32xRwO3wRGT7DxrDhLAT6FF8MpWDWE=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= github.com/stretchr/testify v1.12.1/go.mod h1:MDEgiDPPsNp5cuIrHPPCyornHKgEVbtFUmoNlxoYthg=
github.com/valyala/fastjson v1.6.10 h1:/yjJg8jaVQdYR3arGxPE2X5z89xrlhS0eGXdv+ADTh4= github.com/valyala/fastjson v1.6.10 h1:/yjJg8jaVQdYR3arGxPE2X5z89xrlhS0eGXdv+ADTh4=
github.com/valyala/fastjson v1.6.10/go.mod h1:e6FubmQouUNP73jtMLmcbxS6ydWIpOfhz34TSfO3JaE= github.com/valyala/fastjson v1.6.10/go.mod h1:e6FubmQouUNP73jtMLmcbxS6ydWIpOfhz34TSfO3JaE=
golang.org/x/crypto v0.50.0 h1:zO47/JPrL6vsNkINmLoo/PH1gcxpls50DNogFvB5ZGI= go.yaml.in/yaml/v3 v3.0.5 h1:N6y/pJk8buWs9NY5ERU2HSMfm+IuD/OtfdAnq6kESPw=
golang.org/x/crypto v0.50.0/go.mod h1:3muZ7vA7PBCE6xgPX7nkzzjiUq87kRItoJQM1Yo8S+Q= go.yaml.in/yaml/v3 v3.0.5/go.mod h1:HVTZu1O7/Vkt2N+BFy8Zza+lnLsABggaTM2ZpNIGuKg=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= golang.org/x/crypto v0.56.0 h1:GUh5Ii4J5jtcseSMiRqr1jXCNHoxjeV9Fmekc2oLy6Y=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= golang.org/x/crypto v0.56.0/go.mod h1:OMW5y6CY9l38uPLmxU6l6pwcXp1obtLo3e6gT7gQR2I=
+43
View File
@@ -5,6 +5,7 @@ import (
"fmt" "fmt"
"log/slog" "log/slog"
"net/http" "net/http"
"regexp"
"strings" "strings"
"git.unbound.se/unboundsoftware/auth0mock/store" "git.unbound.se/unboundsoftware/auth0mock/store"
@@ -152,3 +153,45 @@ func (h *ManagementHandler) PasswordChangeTicket(w http.ResponseWriter, r *http.
"ticket": "https://some-url", "ticket": "https://some-url",
}) })
} }
// emailQuery matches the one Lucene query this mock answers: an email phrase,
// email:"...", with \" and \\ escaped inside it.
var emailQuery = regexp.MustCompile(`^email:"((?:[^"\\]|\\.)*)"$`)
// SearchUsers handles GET /api/v2/users. Like Auth0's user search it matches
// email in any letter case (users-by-email does not), and it answers in the
// shape the Go SDK asks for by default (include_totals=true). Only an email
// phrase is understood; any other query is refused rather than answered wrong.
func (h *ManagementHandler) SearchUsers(w http.ResponseWriter, r *http.Request) {
q := r.URL.Query().Get("q")
match := emailQuery.FindStringSubmatch(q)
if match == nil {
http.Error(w, "only q=email:\"...\" is supported", http.StatusBadRequest)
return
}
email := strings.NewReplacer(`\"`, `"`, `\\`, `\`).Replace(match[1])
h.logger.Debug("searching users", "email", email)
users := []UserResponse{}
for _, user := range h.userStore.List() {
if strings.EqualFold(user.Email, email) {
users = append(users, UserResponse{
Email: user.Email,
GivenName: user.GivenName,
FamilyName: user.FamilyName,
UserID: fmt.Sprintf("auth0|%s", user.UserID),
Picture: user.Picture,
})
}
}
w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(map[string]any{
"start": 0,
"limit": len(users),
"length": len(users),
"total": len(users),
"users": users,
})
}
+66
View File
@@ -0,0 +1,66 @@
package handlers
import (
"encoding/json"
"log/slog"
"net/http"
"net/http/httptest"
"net/url"
"testing"
"git.unbound.se/unboundsoftware/auth0mock/store"
)
func searchUsers(t *testing.T, h *ManagementHandler, q string) (int, []UserResponse) {
t.Helper()
req := httptest.NewRequest(http.MethodGet, "/api/v2/users?search_engine=v3&include_totals=true&q="+url.QueryEscape(q), nil)
rec := httptest.NewRecorder()
h.SearchUsers(rec, req)
if rec.Code != http.StatusOK {
return rec.Code, nil
}
var body struct {
Total int `json:"total"`
Users []UserResponse `json:"users"`
}
if err := json.NewDecoder(rec.Body).Decode(&body); err != nil {
t.Fatalf("decode: %v", err)
}
if body.Total != len(body.Users) {
t.Fatalf("total %d, users %d", body.Total, len(body.Users))
}
return rec.Code, body.Users
}
// The search matches email in any letter case, as Auth0's does: a backend that
// checks whether an address is taken must find it however it was typed.
func TestSearchUsersMatchesEmailInAnyCase(t *testing.T) {
users := store.NewUserStore()
users.Create("anna@kpmg.se", &store.User{GivenName: "Anna"})
users.Create("bob@acme.se", &store.User{GivenName: "Bob"})
h := NewManagementHandler(users, slog.New(slog.DiscardHandler))
for _, q := range []string{`email:"anna@kpmg.se"`, `email:"ANNA@KPMG.SE"`, `email:"Anna@Kpmg.se"`} {
code, found := searchUsers(t, h, q)
if code != http.StatusOK || len(found) != 1 || found[0].UserID != "auth0|anna@kpmg.se" {
t.Fatalf("%s: code %d, found %+v", q, code, found)
}
}
if _, found := searchUsers(t, h, `email:"nobody@acme.se"`); len(found) != 0 {
t.Fatalf("an unknown address found %+v", found)
}
// A quoted * is part of the address, not a wildcard.
if _, found := searchUsers(t, h, `email:"*@kpmg.se"`); len(found) != 0 {
t.Fatalf("a quoted * matched %+v", found)
}
}
func TestSearchUsersRefusesOtherQueries(t *testing.T) {
h := NewManagementHandler(store.NewUserStore(), slog.New(slog.DiscardHandler))
for _, q := range []string{"", "name:anna", `email:"a@b.se" OR name:x`} {
if code, _ := searchUsers(t, h, q); code != http.StatusBadRequest {
t.Fatalf("%q: code %d, want 400", q, code)
}
}
}