mirror of
1
Fork 0
Commit Graph

191 Commits

Author SHA1 Message Date
Gergely Nagy e1fe3bbdc0
feat(quota): Humble beginnings of a quota engine
This is an implementation of a quota engine, and the API routes to
manage its settings. This does *not* contain any enforcement code: this
is just the bedrock, the engine itself.

The goal of the engine is to be flexible and future proof: to be nimble
enough to build on it further, without having to rewrite large parts of
it.

It might feel a little more complicated than necessary, because the goal
was to be able to support scenarios only very few Forgejo instances
need, scenarios the vast majority of mostly smaller instances simply do
not care about. The goal is to support both big and small, and for that,
we need a solid, flexible foundation.

There are thee big parts to the engine: counting quota use, setting
limits, and evaluating whether the usage is within the limits. Sounds
simple on paper, less so in practice!

Quota counting
==============

Quota is counted based on repo ownership, whenever possible, because
repo owners are in ultimate control over the resources they use: they
can delete repos, attachments, everything, even if they don't *own*
those themselves. They can clean up, and will always have the permission
and access required to do so. Would we count quota based on the owning
user, that could lead to situations where a user is unable to free up
space, because they uploaded a big attachment to a repo that has been
taken private since. It's both more fair, and much safer to count quota
against repo owners.

This means that if user A uploads an attachment to an issue opened
against organization O, that will count towards the quota of
organization O, rather than user A.

One's quota usage stats can be queried using the `/user/quota` API
endpoint. To figure out what's eating into it, the
`/user/repos?order_by=size`, `/user/quota/attachments`,
`/user/quota/artifacts`, and `/user/quota/packages` endpoints should be
consulted. There's also `/user/quota/check?subject=<...>` to check
whether the signed-in user is within a particular quota limit.

Quotas are counted based on sizes stored in the database.

Setting quota limits
====================

There are different "subjects" one can limit usage for. At this time,
only size-based limits are implemented, which are:

- `size:all`: As the name would imply, the total size of everything
  Forgejo tracks.
- `size:repos:all`: The total size of all repositories (not including
  LFS).
- `size:repos:public`: The total size of all public repositories (not
  including LFS).
- `size:repos:private`: The total size of all private repositories (not
  including LFS).
- `size:git:all`: The total size of all git data (including all
  repositories, and LFS).
- `size:git:lfs`: The size of all git LFS data (either in private or
  public repos).
- `size:assets:all`: The size of all assets tracked by Forgejo.
- `size:assets:attachments:all`: The size of all kinds of attachments
  tracked by Forgejo.
- `size:assets:attachments:issues`: Size of all attachments attached to
  issues, including issue comments.
- `size:assets:attachments:releases`: Size of all attachments attached
  to releases. This does *not* include automatically generated archives.
- `size:assets:artifacts`: Size of all Action artifacts.
- `size:assets:packages:all`: Size of all Packages.
- `size:wiki`: Wiki size

Wiki size is currently not tracked, and the engine will always deem it
within quota.

These subjects are built into Rules, which set a limit on *all* subjects
within a rule. Thus, we can create a rule that says: "1Gb limit on all
release assets, all packages, and git LFS, combined". For a rule to
stand, the total sum of all subjects must be below the rule's limit.

Rules are in turn collected into groups. A group is just a name, and a
list of rules. For a group to stand, all of its rules must stand. Thus,
if we have a group with two rules, one that sets a combined 1Gb limit on
release assets, all packages, and git LFS, and another rule that sets a
256Mb limit on packages, if the user has 512Mb of packages, the group
will not stand, because the second rule deems it over quota. Similarly,
if the user has only 128Mb of packages, but 900Mb of release assets, the
group will not stand, because the combined size of packages and release
assets is over the 1Gb limit of the first rule.

Groups themselves are collected into Group Lists. A group list stands
when *any* of the groups within stand. This allows an administrator to
set conservative defaults, but then place select users into additional
groups that increase some aspect of their limits.

To top it off, it is possible to set the default quota groups a user
belongs to in `app.ini`. If there's no explicit assignment, the engine
will use the default groups. This makes it possible to avoid having to
assign each and every user a list of quota groups, and only those need
to be explicitly assigned who need a different set of groups than the
defaults.

If a user has any quota groups assigned to them, the default list will
not be considered for them.

The management APIs
===================

This commit contains the engine itself, its unit tests, and the quota
management APIs. It does not contain any enforcement.

The APIs are documented in-code, and in the swagger docs, and the
integration tests can serve as an example on how to use them.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-08-02 11:10:34 +02:00
Gergely Nagy 250f87db59
feat(api): An `order_by` param for user.ListMyRepos
Add an optional `order_by` parameter to the `user.ListMyRepos`
handler (which handles the `/api/v1/user/repos` route), allowing a user
to sort repos by name (the default), id, or size.

The latter will be useful later for figuring out which repos use most
space, which repos eat most into a user's quota.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-08-02 10:52:21 +02:00
Earl Warren dd0cabdaa4
feat(federated-star) star repositories via ActivityPub (#1680)
commit 1be80cfdbca10d5014cec904e96c7a390b338493
Merge: c01b10a593 130981af64
Author: Earl Warren <earl-warren@noreply.codeberg.org>
Date:   Thu Jun 6 06:36:34 2024 +0000

    Merge pull request 'federated-star' (#1680) from meissa/forgejo:forgejo-federated-star into forgejo

    Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/1680
    Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>

commit 130981af64
Merge: 62856e639e c01b10a593
Author: Earl Warren <earl-warren@noreply.codeberg.org>
Date:   Thu Jun 6 06:07:34 2024 +0000

    Merge branch 'forgejo' into forgejo-federated-star

commit 62856e639e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jun 6 07:26:28 2024 +0200

    adjust field name

commit 81236bc9ef
Merge: c0b9ab2060 1b3ccfffe8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Jun 5 07:33:12 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit c0b9ab2060
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Jun 4 12:37:18 2024 +0200

    Extend integration test for staring federated repo

commit 98939c4745
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 31 18:05:29 2024 +0200

    remove no longer used doc

commit 17e3f6c6f3
Merge: 58b8f57d3f f887972348
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 31 18:03:19 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 58b8f57d3f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 09:20:39 2024 +0200

    more lint

commit c3650cb2fe
Merge: 07e2708e3d 73f6e8809a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 09:01:00 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 07e2708e3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 08:59:32 2024 +0200

    lint

commit e7580da130
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 08:58:19 2024 +0200

    lint

commit 7b2309592c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 08:55:47 2024 +0200

    remove unused

commit dadfb29ae9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 29 08:44:00 2024 +0200

    relax validation

commit 26612aa75b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue May 28 15:37:53 2024 +0200

    Add ToDo

commit fa5806cecf
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue May 28 15:37:41 2024 +0200

    Use StatusSeeOther

commit 75c93e5319
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue May 28 12:54:49 2024 +0200

    Update NewRepositoryID with case for following repo

commit 9c9333868c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue May 28 12:38:27 2024 +0200

    Add todo

    We currently validate RepositoryID uris to be a valid api address from our own server.

commit 69e79e50c2
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue May 28 12:36:34 2024 +0200

    Lift test env prep one up

commit 72f2f35bd8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 28 08:57:03 2024 +0200

    wip integration test

commit a133b6de31
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 28 08:53:19 2024 +0200

    rename

commit 3d1586d9cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 27 08:20:43 2024 +0200

    translation hast to be done in translation tool

commit 108971ddc8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 27 08:18:09 2024 +0200

    add migration

commit 6ef691b8d7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 16:34:11 2024 +0200

    lint

commit a3c90e3085
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 13:27:37 2024 +0200

    field no longer in use

commit 5ace6816ac
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 08:50:54 2024 +0200

    remove todo - no change required

commit 64be24ed0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 08:49:08 2024 +0200

    Format & remove old todos

commit 30e2582f24
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 08:24:54 2024 +0200

    mv doc to doc project

commit 2e72b5e05b
Merge: 4c87b0b3ee eea841d25d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 24 07:25:20 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 4c87b0b3ee
Merge: a1acc46c88 9c7ff70072
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 22 18:23:21 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit a1acc46c88
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 21 18:46:48 2024 +0200

    make mocked user consistent

commit a62c2afcea
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue May 21 11:43:15 2024 +0200

    Extended integration test

commit 07659a5e7e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 17 08:15:33 2024 +0200

    rename fxct name

commit 86db5f612c
Merge: 307b27bbaa 45a41811de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu May 16 18:28:43 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 307b27bbaa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu May 16 18:22:09 2024 +0200

    choose a not local avail federated userid

commit a9c00d49da
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu May 16 10:55:17 2024 +0200

    Set LowerName to name with lower case

commit 6457ace318
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu May 16 10:26:51 2024 +0200

    Added migrations for User and FederatedUser

commit 1b3c4dcd85
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu May 16 10:06:13 2024 +0200

    Extended AP like-repo integration test

commit 94be68725a
Merge: 08fe47d5c8 fe3473fc8b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 15 09:35:02 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 08fe47d5c8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 14 07:48:00 2024 +0200

    Do not relay on ID start at 1

commit 57a9729094
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 14:29:54 2024 +0200

    linting

commit e55533d64d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 14:15:36 2024 +0200

    Added migration for creation of federation_host table

commit cf9953a612
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 12:28:31 2024 +0200

    linting

commit c3fb34d5b4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 12:00:16 2024 +0200

    fixed some comments

commit 379b0234eb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 12:00:02 2024 +0200

    added test cases for federationhost

commit 8f42684599
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 11:24:50 2024 +0200

    Renamed field of FederationHost

commit c4f9f8578a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 13 11:14:04 2024 +0200

    Introduced ErrNotValid

commit cb4690e570
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 13 07:45:37 2024 +0200

    linting

commit 3cc48a5c9f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 10 17:44:26 2024 +0200

    format

commit 3bf423c97f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 10 17:29:49 2024 +0200

    assert, that federation-host is present.

commit 8d330fdb5d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 10 17:01:15 2024 +0200

    Now we've an intergration test with second federation server

commit 0665c1252e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 10 16:25:54 2024 +0200

    make start time more flexible

commit c4c03dab4b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 10 15:27:54 2024 +0200

    on the way to test with second server

commit 8ec570841a
Merge: e122df36f8 99d1ae52fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 7 17:49:26 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit e122df36f8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 7 17:47:35 2024 +0200

    prepare for next pr

commit fdfc21a6b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue May 7 07:38:20 2024 +0200

    review results

commit 82fe1d3e42
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon May 6 16:01:23 2024 +0200

    make fmt

commit a485837b9c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 6 08:52:25 2024 +0200

    removed unused code

commit c70b8d28a3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 6 08:12:43 2024 +0200

    linting

commit 8f298a9901
Merge: b99d66b530 8c3511a8b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon May 6 07:58:50 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit b99d66b530
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun May 5 18:04:12 2024 +0200

    linting

commit 3a6dfadcd0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun May 5 17:10:16 2024 +0200

    linting

commit 510868731d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun May 5 16:58:15 2024 +0200

    linting

commit 1a07db1a40
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun May 5 16:35:25 2024 +0200

    omit linting next try

commit ca0a53bf5f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat May 4 17:58:54 2024 +0200

    omit linting maybe?

commit ee71f86432
Merge: 957b1023e9 85f2727872
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 3 08:44:49 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 957b1023e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri May 3 08:00:17 2024 +0200

    refactoring: separaate model & module

commit 42837f5dab
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu May 2 08:56:36 2024 +0200

    fix linting

commit ded7b60d0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 15:46:15 2024 +0200

    wix the invalid test

commit 534d692d68
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 15:46:03 2024 +0200

    fix field names

commit 715ff0eb7f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 15:23:39 2024 +0200

    remove unused & fix wording

commit 87036ec719
Merge: be6e6eb96a bbec2e2960
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 15:02:36 2024 +0200

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit be6e6eb96a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 15:02:27 2024 +0200

    refactor validation

commit bbec2e2960
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed May 1 14:53:42 2024 +0200

    Fix test and add symmetry

    This maybe was a mixup with TestActivityValidation.
    We now test if the UnmarshalJSON actually threw an error.

commit 4b2802a6ba
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 14:39:23 2024 +0200

    internal refactoring

commit 6c7cff4f16
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed May 1 14:39:09 2024 +0200

    fix NPE

commit e9fed7a488
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Apr 29 20:13:37 2024 +0200

    found NPE

commit 285e72e4e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Apr 29 19:51:28 2024 +0200

    found issue during test

commit a9a30fc212
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Apr 29 08:40:46 2024 +0200

    remove resolved todo & integration test

commit 2f2330c450
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun Apr 28 13:52:51 2024 +0200

    first integration test

commit 70ae102597
Merge: df2fd904b3 d6c36ec406
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Apr 26 17:16:15 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit df2fd904b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Apr 26 16:37:16 2024 +0200

    drop some words on normalized uri as id

commit 37ed52cfd9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Apr 26 16:19:31 2024 +0200

    start add NormalizedFederatedUri to user

commit f687f79ed0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Apr 26 15:48:56 2024 +0200

    start add NormalizedFederatedUri to user

commit b878e74f76
Merge: 71141a5ff3 37420442de
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 12 14:33:57 2024 +0200

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit 71141a5ff3
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 12 14:33:47 2024 +0200

    WIP Refactoring and solving (adding) ToDos

commit fb1d0df791
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 12 14:29:32 2024 +0200

    Also check for RepoID to be unique

commit f3e58f29b0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 12 14:24:38 2024 +0200

    Pass unvalidated input to field

commit feca77b040
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 12 13:58:55 2024 +0200

    Rename for clearer semantics

commit 37420442de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Apr 12 13:52:26 2024 +0200

    unify copyright comment

commit 94091cc144
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 16:38:49 2024 +0200

    Don't use TEXT type

commit 6310e75d8d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 16:33:13 2024 +0200

    Update todo

commit 075857f030
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 16:32:49 2024 +0200

    Update docs

commit 19628b84c6
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 16:00:51 2024 +0200

    use context

commit 80888b80d6
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 16:00:28 2024 +0200

    Fix imports

commit af0d0f7745
Merge: bbcb8e7060 9d6389352d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 15:38:11 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit bbcb8e7060
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 14:21:51 2024 +0200

    Bits of format

commit bb83a8d85e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 12:58:28 2024 +0200

    make fmt

commit 0eb71098a2
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 12:53:56 2024 +0200

    make tidy

commit e2c9653b33
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 12:47:26 2024 +0200

    Update go version and protobuf deps

commit 2b9977d843
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 11:46:11 2024 +0200

    Linting

commit 511ef0bf5b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 11:24:22 2024 +0200

    Use federated staring func

commit 8579b7f7bb
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 11:21:57 2024 +0200

    Use optional.Some

commit 97343470bc
Merge: 213fc3a97d 21b1381e36
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 9 10:42:42 2024 +0200

    Merge branch 'forgejo' into forgejo-federated-star

commit 213fc3a97d
Merge: c908455998 765298814c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Apr 6 10:59:41 2024 +0200

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit c908455998
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Apr 6 10:59:36 2024 +0200

    fix multiple federation in one host

commit 765298814c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 5 17:07:04 2024 +0200

    Add ToDo

commit 33c60ebdff
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Apr 5 17:06:57 2024 +0200

    Add logging

commit 41f066a1a6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Apr 4 18:33:08 2024 +0200

    add notes for setup

commit 15bb774409
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Apr 4 18:05:55 2024 +0200

    add relation details

commit 8d78c3edca
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Apr 4 15:12:41 2024 +0200

    make fmt

commit b4e6a7ea3f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Apr 4 15:09:40 2024 +0200

    make lint-go-fix

commit 92d011f1a5
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Apr 4 15:08:02 2024 +0200

    fix some linting issues

commit 976d79044f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Apr 4 08:32:37 2024 +0200

    show apapiurl in repo settings

commit 73cf1e3901
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Apr 4 07:22:04 2024 +0200

    Revert "added repoUri to federationService"

    This reverts commit 8cd89bf4d3.

commit 8cd89bf4d3
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Apr 3 15:39:37 2024 +0200

    added repoUri to federationService

    This does not work yet. APAPI url OR host and id have to be derived from repoUri.

commit 2b7a22afb3
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Apr 3 12:26:33 2024 +0200

    renamed FederatedRepo to FollowingRepo

commit daccaed157
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Apr 3 12:08:44 2024 +0200

    Rename federatedRepo to followingRepo

commit d240a9bc90
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Apr 3 10:25:40 2024 +0200

    trim trailing semicolon

commit 5671566df6
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Apr 3 09:53:19 2024 +0200

    adjust fed repo splitting

commit 7a142c876e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Apr 2 18:36:22 2024 +0200

    remove federated user in case of user deletion

commit 5edf7d0e61
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Apr 2 17:33:32 2024 +0200

    Also trim whitespaces within the list items

commit 431b4c2829
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Apr 2 12:38:06 2024 +0200

    optimize function

commit 962cd374e2
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Apr 2 12:36:04 2024 +0200

    delete federated repos when deleting repository

commit 8b56159042
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Apr 2 11:13:50 2024 +0200

    prevent error when setting no fed repos

commit 9212fb1633
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Apr 2 09:03:49 2024 +0200

    feedback from discussion

commit b747342672
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 16:08:29 2024 +0100

    separate collecting activities from sending them

commit 2ad685fd2c
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Mar 28 15:41:43 2024 +0100

    fix like target

commit e2b11b93bc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 15:21:40 2024 +0100

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit fc8e2b3f8a
Merge: 4d5c8b5563 7f19247b0a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 15:05:35 2024 +0100

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit 4d5c8b5563
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 15:00:55 2024 +0100

    refactor services

commit 7f19247b0a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Mar 28 14:27:50 2024 +0100

    Moved sendLikeActivities to federation_service

commit 1ad7bdf983
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Thu Mar 28 09:36:08 2024 +0100

    fixed tests
    part1, one test still failing

commit d624ebb712
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 08:13:00 2024 +0100

    use doer coming from api

commit 992fbf6898
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 28 07:44:22 2024 +0100

    comments

commit 259c0202c7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Mar 27 19:56:32 2024 +0100

    fix test & add some review

commit 8eae48761f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Mar 27 19:26:55 2024 +0100

    add some pictures

commit e75bcb2f89
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Mar 27 19:02:37 2024 +0100

    rename file

commit 97b5e0da91
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Mar 27 16:20:33 2024 +0100

    revise NewForgeLike
    Also added new test, which still fails since time.Now() does not match

commit 911e916a4f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Mar 27 11:33:00 2024 +0100

    Added new blog post

commit a2a5956d79
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Mar 27 09:29:23 2024 +0100

    Added context and choices to new adr

commit dd37e3a7b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Mar 27 08:25:16 2024 +0100

    wip

commit a950ba4631
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Mar 27 08:21:44 2024 +0100

    prepare state of the month

commit 84f73d9db8
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 16:56:06 2024 +0100

    Add ToDo

commit 01e9853161
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 16:54:55 2024 +0100

    Add ToDo for storing federated repos

    We need to check whether federated repos already exist in db. This way multiple repos on a server (forks) can have the same federated repos.

commit 45cddb4ac7
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 16:53:02 2024 +0100

    Add logging

commit 436466dcad
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 16:21:28 2024 +0100

    Check if federation enabled in StarRepo

commit e9bbdc678b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 16:21:09 2024 +0100

    Not using object URL

commit 04f907c8c8
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 15:28:55 2024 +0100

    Revert

commit 32d457f9a3
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 15:28:36 2024 +0100

    StarRepo Wrapper

commit 0b8aa3105c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 15:28:11 2024 +0100

    Create object manually

commit b2105de36f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 26 14:39:25 2024 +0100

    SendLikeActivity to api

    It might not be a good idea to start a possibly long lasting http call during a running DB transaction. I.E. in the case of failing transaction we already sent some data into the world which might not be valid.

commit bbe5096307
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Mar 26 14:02:30 2024 +0100

    fixed circular dependencies
    next: fix post call error

commit 7f0371056e
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Mar 26 10:23:14 2024 +0100

    moved functionality
    import of forgefed causes circular dependencies. This has to be solved!

commit d251fc2611
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Mar 26 08:28:22 2024 +0100

    set federatedRepoList into context

commit cf8a30efac
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Mar 26 07:58:04 2024 +0100

    mob-next: how to store port & schema

commit 5b8173f660
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Mar 26 07:36:09 2024 +0100

    do not return invalid result

commit 6d814447d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Mon Mar 25 16:52:39 2024 +0100

    Use Plural

commit 653ced5596
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Mon Mar 25 16:47:18 2024 +0100

    Validate before returning

commit 35d3fc199c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Mon Mar 25 16:35:35 2024 +0100

    Rename to StoreFederatedRepo*

commit ca7d1c6f78
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Mon Mar 25 16:30:02 2024 +0100

    Localize error messages

commit 828e7a76f6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Mar 25 09:15:32 2024 +0100

    use new table to populate settings

commit a9d18e5327
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Mar 23 17:01:25 2024 +0100

    fixed issues, store now works

commit ce317c33cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Mar 23 15:27:45 2024 +0100

    fix context

commit 950dcd959e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 20:14:20 2024 +0100

    implement storage of federated_repo

commit 6b767684a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Mar 22 17:51:20 2024 +0100

    Add discussion ToDo

commit 0f27f0a05b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Mar 22 17:49:29 2024 +0100

    Add discussion ToDo

commit 0f9d1c80be
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Mar 22 17:42:38 2024 +0100

    Implement CreateFederatedRepoList

commit 36c0c1c3c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Mar 22 17:41:59 2024 +0100

    Add DB functionality for federated repos

commit 288dda282c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Mar 22 17:41:36 2024 +0100

    Add more ToDos

commit 508b4deac8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 08:37:06 2024 +0100

    add test & fix compile

commit 4938d38e39
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 08:08:54 2024 +0100

    more review

commit 9ccad50b05
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 07:52:03 2024 +0100

    review

commit 7316108d56
Merge: 7e355986f8 3e6eb255b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 07:32:30 2024 +0100

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit 7e355986f8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 22 07:32:22 2024 +0100

    fix wording

commit 3e6eb255b3
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 16:29:13 2024 +0100

    WIP Initial, naive implementation of sending stars to fed repos

    Currently no rate limits are respected
    The mechanisms to use the Federated repo table need to be used

commit 0c6c43003c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 16:27:35 2024 +0100

    Implement getting APAPIURL for repo and user

commit ed256ca540
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 16:27:08 2024 +0100

    Implement NewForgeLike

commit 2e0584bdf3
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 15:37:37 2024 +0100

    Clearer error message

    "May" is also interchangeable with "could". "Should" fits better in this context.

commit 84f2aab570
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 14:42:38 2024 +0100

    Add todo

commit 42a41ce2bc
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 14:42:16 2024 +0100

    Remove todo

commit a02ec0363b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 14:42:04 2024 +0100

    Add todo

commit e4242dafd9
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 14:41:11 2024 +0100

    Add Function description

commit 689837b63a
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 12:59:59 2024 +0100

    Fix typos

commit f327c0da24
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 12:18:29 2024 +0100

    Cap max size of federated repo list at 2048 bytes

commit 6055b4fca0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Mar 21 11:42:12 2024 +0100

    Add todo

commit b4bb41e0e3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Mar 21 08:25:40 2024 +0100

    introduce federated repo

commit 3b30c678e7
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 16:22:35 2024 +0100

    Remove ToDo

commit b6035c03ae
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 16:14:54 2024 +0100

    Rephrasing for clearness

commit 2e803e10c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 16:12:42 2024 +0100

    Do not use binding at this stage

    It wasn't clear how to utilize the "type" field in the .tmpl for our
    purposes.

commit 13bf84e89e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 16:12:20 2024 +0100

    Implent checking for list of repos

commit 3dda92b52b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 13:26:46 2024 +0100

    Update Locales to reflect changes

commit ea4471d0db
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 13:22:56 2024 +0100

    Remove ToDos

commit d1190423bb
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 13:21:17 2024 +0100

    Implement single Repo validation and saving POC

commit 1cbd5e33cb
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 13:16:53 2024 +0100

    Validate Federated Repos Field

    Considering this from a POC perspective we might want to avoid misuse
    of this field. In other words, we want this field to be used as
    intended.

commit 584af0486d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Mar 20 13:13:23 2024 +0100

    Add Federation specific URL validation

commit 41da150fb3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Mar 19 19:28:33 2024 +0100

    add review comment

commit 84f236a58d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 15:30:56 2024 +0100

    Add more todos

commit 884e38bdab
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 15:25:52 2024 +0100

    WIP Implement proper saving of federated repo urls

    Added ToDos where relevant

commit 9337274334
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 13:56:12 2024 +0100

    Revert to input

commit abc7aa0972
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 13:53:00 2024 +0100

    Display data on text area

commit 048ff5da11
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 13:52:14 2024 +0100

    Fix typos

commit 4c1d12b2e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 13:52:00 2024 +0100

    Use textarea as we expect lots of input

commit 09cac163e0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 13:17:27 2024 +0100

    Add a field for listing the federated repos

commit a6d45f8b97
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Mar 19 11:56:25 2024 +0100

    Implement FederationEnabled function for templates

commit 26eb01b509
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Mar 19 10:25:20 2024 +0100

    corr var label name

commit 3018769d26
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Mar 19 10:05:31 2024 +0100

    Federation settigs :: set label name for internationalisation

commit 6901ae4b99
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Mar 19 08:29:57 2024 +0100

    wip: found backend for settings update

commit 9dcdf8d828
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Mar 16 12:46:43 2024 +0100

    Locales, field & action

commit fdcff3cc43
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Mar 8 18:25:37 2024 +0100

    found the template for frontend

commit 93d7de147b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Mar 4 13:57:33 2024 +0100

    adjust to new dev-model

commit e41fa653d9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Mar 4 13:43:16 2024 +0100

    fix en name of score :-)

commit 0e73dfccbb
Merge: e2ca63ca38 db2f896264
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 14 18:23:15 2024 +0100

    Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star

commit e2ca63ca38
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 14 18:23:10 2024 +0100

    Add Malicious Controlled Forge - kudos to gusted

commit db2f896264
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Tue Feb 13 11:09:31 2024 +0100

    small fix by adding id as pk for FederatedUser

commit 086c66b06a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon Feb 12 13:07:15 2024 +0100

    make tidy

commit 2e41fe0a46
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Mon Feb 12 13:00:47 2024 +0100

    fix import

commit d65cd5a17a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Feb 12 10:55:00 2024 +0100

    ActorID gets source type from NodeInfo

commit 181d743a8a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Feb 12 10:14:29 2024 +0100

    update copyright

commit 9662aee375
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Feb 12 10:14:16 2024 +0100

    reflect hard fork

commit 6e6813a88b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 18:17:40 2024 +0100

    make operatorid unique

commit 6d17f45986
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 17:56:17 2024 +0100

    fix misspell

commit eecb9b8040
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 17:46:27 2024 +0100

    fmt fix

commit 664144930e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 17:10:59 2024 +0100

    result of lint-fix

commit 5fa62287d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 17:00:21 2024 +0100

    undo rebase conflicts

commit 3ef57385ec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 16:44:03 2024 +0100

    fix linting

commit 3b244d673b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 16:24:51 2024 +0100

    small fixes

commit ac82486a95
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 15:31:58 2024 +0100

    This months blog

commit 8917bfca0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 15:12:49 2024 +0100

    add a arch federation overview

commit 94937abc04
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 9 15:12:26 2024 +0100

    Source is no longer needed - see adr-federated-star

commit b2cc848e7d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 15:31:02 2024 +0100

    clean up aliases

commit e733809ef2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 15:16:37 2024 +0100

    symetric handling for value/reference

commit d2d5e84977
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 15:16:02 2024 +0100

    federated user is not entity - so no need for ID

commit 91f7541add
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 13:31:27 2024 +0100

    refactor for semantic and cycle free deps

commit 66bc7a9a0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 11:09:55 2024 +0100

    Search federatedUser instead of loginName

commit e44be72251
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 8 09:56:49 2024 +0100

    Add tx around user creation

commit edf7f61b83
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 7 17:11:43 2024 +0100

    mv federated_user_creation to user package

commit e180467760
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Feb 7 16:42:40 2024 +0100

    added user creation from ap

commit a702da69cc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 7 16:12:23 2024 +0100

    added test for federated user

commit 67f3f66be4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Feb 7 15:37:48 2024 +0100

    Created FederatedUser

commit e477181e23
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Wed Feb 7 15:03:21 2024 +0100

    fix typos

commit a1ca7e958a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 7 14:59:39 2024 +0100

    use local fqdn for generated user email

commit 5a7f6f15a6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 7 14:30:17 2024 +0100

    ensure federation info fqdn to lowercase

commit e05c810823
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Feb 7 13:52:25 2024 +0100

    document usermapping chosen

commit e255f73731
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Feb 6 13:30:09 2024 +0100

    make class diagram more accurate

commit 7db83688db
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Feb 6 12:45:33 2024 +0100

    updated rebase process

commit ed99dfa993
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Feb 2 17:25:02 2024 +0100

    new threats thx to gusted

commit 56660e3a0b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Feb 1 15:48:56 2024 +0100

    add aspect resulting from our discussion

commit b02b8a307c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun Jan 28 12:48:44 2024 +0100

    fix wording

commit c45e726383
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun Jan 28 12:43:56 2024 +0100

    fix wording

commit 5ef823e3af
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 27 15:03:37 2024 +0100

    adjust urls to changed username

commit a08e435a1e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 26 17:16:26 2024 +0100

    updated rebase instructions

commit 6b14d1a562
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 26 16:13:55 2024 +0100

    updated rebase instructions

commit 49b014f28f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 19 16:33:59 2024 +0100

    add reply attack to blog

commit c58a995fb2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 19 16:26:16 2024 +0100

    refactor FederationInfo -> FederationHost

commit e926ea16e2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 18 20:06:56 2024 +0100

    improve english ..

commit e1f27a950c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 18 20:01:22 2024 +0100

    improve english ..

commit 2c55c0252f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 18 19:48:36 2024 +0100

    prepare discussion

commit 2b5360a000
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 18 19:20:15 2024 +0100

    work on adr

commit a6b7cc8e70
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 18 19:20:02 2024 +0100

    update needed modules

commit 0453598e3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Jan 16 09:31:36 2024 +0100

    add some todos

commit 48c6d62e47
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Jan 16 09:31:27 2024 +0100

    blog: newest on top

commit c6981cdbf6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Jan 16 08:28:12 2024 +0100

    proposals for federatedPerson Mapping

commit e2291fec1e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Jan 15 08:12:40 2024 +0100

    think about federated persons

commit 5a88eef78e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Jan 15 08:12:26 2024 +0100

    Propose the current solution

commit 0ddc2db46a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun Jan 14 14:53:00 2024 +0100

    mitigate Block by future StartTime

commit 1b35bd2911
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sun Jan 14 13:03:51 2024 +0100

    lint fix

commit f25eab35fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 13 17:16:43 2024 +0100

    Update for new implementation

commit c4eb763f4a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 13 17:06:40 2024 +0100

    lint fix

commit 9a9ac33766
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 13 16:22:49 2024 +0100

    lint fix

commit ca5eaa8c6b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 13 16:08:12 2024 +0100

    introduce FI Factory

commit dabd773f6b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Jan 13 14:17:11 2024 +0100

    Fix error handling & add timestamp check

commit 40ec049013
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 12 18:12:22 2024 +0100

    add the next todo

commit 7d30d14c76
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Fri Jan 12 17:49:07 2024 +0100

    breaking  struct adjustment

commit 1f989f2ecd
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Fri Jan 12 17:27:52 2024 +0100

    Added FederationInfo Create function

commit 380d3db0bf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 12 17:00:17 2024 +0100

    integrate federation info in api call

commit 52400f7978
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Fri Jan 12 16:12:54 2024 +0100

    Added FederationInfo get methods for repository

commit bbccc24ed1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 12 15:34:34 2024 +0100

    test federationinfo validation

commit 9c37272ee9
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date:   Fri Jan 12 14:57:22 2024 +0100

    make validateNotEmpty more generic

commit c67be3b668
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 12 14:35:43 2024 +0100

    start work on federationinfo

commit 8610d94af8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 12 14:33:52 2024 +0100

    start work on federationinfo

commit 12558d62c8
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date:   Fri Jan 12 12:43:14 2024 +0100

    Remove MaxConnsPerHost limit for outgoing connections

commit 87bfa79f71
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date:   Fri Jan 12 12:29:00 2024 +0100

    Configure client against DOS

commit ecf391dcbf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Jan 9 09:14:52 2024 +0100

    add some user creation unittests

commit de2569618c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Jan 8 18:21:55 2024 +0100

    fix: wmail should start with char

commit f0af660cf9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 18:19:46 2024 +0100

    give names to threats

commit a8b132da80
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 17:43:18 2024 +0100

    provide the next testing

commit 2d98b22604
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 17:11:20 2024 +0100

    blog the next test release

commit 0fac86a384
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 16:42:57 2024 +0100

    update to new star activity

commit 42eab2d304
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 12:03:36 2024 +0100

    add test-release-branch

commit 680213b479
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 11:43:52 2024 +0100

    translate scoring

commit 1fc1dda59d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 11:40:35 2024 +0100

    Fix wording

commit b978642da0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Jan 5 11:34:32 2024 +0100

    improve sequence

commit fe9f26305f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 4 18:25:43 2024 +0100

    update ThreatAnalysis for Like Aktivity

commit 6e46739090
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Jan 4 18:04:46 2024 +0100

    validate person

commit 0505baab2b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Jan 3 18:52:41 2024 +0100

    ad validation for like activity

commit 3ab2d9a449
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Jan 3 18:29:12 2024 +0100

    rename star -> ForgeLike

commit 4473fb788a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Jan 3 18:10:24 2024 +0100

    start refactoring star->like

commit 38438b592f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 18:09:27 2023 +0100

    rebase conflicts to fix

commit f673dd1ca7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 16:31:52 2023 +0100

    source no longer needed

commit 084eed82a4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 16:30:58 2023 +0100

    use federate-repo users for our local test

commit b2a9b53041
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 15:54:13 2023 +0100

    use nodeInfo.Source instead of startActivity.Source

commit 8116214727
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 15:48:45 2023 +0100

    introduce nodeinfo

commit 587bd07372
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 15:48:31 2023 +0100

    mv more fkt to http-client

commit 310d740cee
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date:   Fri Dec 29 12:10:07 2023 +0100

    Start NodeInfo implementation

commit 3c2493902d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 29 09:43:10 2023 +0100

    adjust to ugly linting

commit e704e5adcc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 22 15:10:21 2023 +0100

    adjust to ugly linting

commit 1e40b814a1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 22 15:00:42 2023 +0100

    Linting

commit 8585edc47a
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 22 14:52:10 2023 +0100

    Linting

commit 7d78fb8adc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 22 14:47:34 2023 +0100

    adjust to ugly linting

commit a64ce2feb1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 22 14:20:30 2023 +0100

    removed resolved todos

commit 2e031a9763
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 22 13:44:45 2023 +0100

    WIP Generic IsValid for *Id structs

commit e69e5df089
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 22 13:42:07 2023 +0100

    Assume validated url.URL for NewActorID

commit 6e4467d49d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 22 11:48:24 2023 +0100

    experiment on generalization

commit 75cc5b900d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 22 10:19:01 2023 +0100

    Add review todo

commit 1dd3084f66
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 21 15:01:49 2023 +0100

    Split test according to actor.go

commit 48cfb521d1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 21 14:22:42 2023 +0100

    Add suffix checking helper

commit c887bddb72
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 21 14:22:23 2023 +0100

    Attempt generalization of Id creation

commit 15775ad891
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 21 14:21:47 2023 +0100

    Fix import

commit 715afb2468
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 21 09:30:07 2023 +0100

    Add newlines for readability

commit fff4c3f9fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 20 20:12:31 2023 +0100

    fix typo

commit 5317832fef
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 20 13:04:40 2023 +0100

    odd one mor picture to the blog

commit 433a38699a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 20 12:55:28 2023 +0100

    improve test description

commit 65e3f1d0ed
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 20 09:33:29 2023 +0100

    update adr lining out a second option

commit 4d1492831d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 20 12:30:22 2023 +0100

    Move char_limiter to utils and rename

commit afc9acd925
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 20 12:23:13 2023 +0100

    Limit number of characters on body log

commit 3363b3bf0c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 20 12:22:03 2023 +0100

    Validate response before further processing

commit 2f4b1a5cd4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 20 12:20:41 2023 +0100

    Use id of existing repo for convenience

commit ff146a9430
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 20 11:27:44 2023 +0100

    Add review todos

commit 071b47b8d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 19 12:26:55 2023 +0100

    Catch edge case: remote user does not exist on remote repo

commit 0378b2dc7d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 19 10:55:30 2023 +0100

    Add questions for review discussion

commit 8a8b6821ba
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 19 11:32:57 2023 +0100

    Fix bash code block

commit 3327fbc39a
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 19 10:19:35 2023 +0100

    Fix typos, small rewordings

commit bd640a7099
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Dec 19 09:21:23 2023 +0100

    add some pros to the source field

commit 70fbfd6cf3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Dec 19 08:36:02 2023 +0100

    reflect the discussion with kik

commit f636de050a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 16 18:47:39 2023 +0100

    some improvements

commit bc7515fa31
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 16 18:45:14 2023 +0100

    some improvements

commit f9bbb91f11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 16 18:38:31 2023 +0100

    expose instance for tests

commit 1704ac5bc2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 15 16:02:50 2023 +0100

    fix most of the tests

commit 9e6c45f87d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 15 15:37:00 2023 +0100

    make flows more precise

commit e1d7db178c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 15 14:45:20 2023 +0100

    unify logging & minor improvements

commit 42854c9003
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 13 16:49:23 2023 +0100

    remove global actionUser

commit a0c008b880
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 13 16:44:11 2023 +0100

    cleand up user creation from ap

commit 6de8fba14d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 13 16:06:53 2023 +0100

    minor refactorings

commit 44e10ed65a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 13 16:06:37 2023 +0100

    get wo body

commit c2a42587d2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Dec 12 11:08:57 2023 +0100

    remove panics - that is not a exception replacement

commit b27460d3fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Dec 12 11:04:03 2023 +0100

    minor refactorings & reviews

commit e893618cdc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Dec 11 08:14:18 2023 +0100

    add more threats

commit 9633a2005a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 19:23:48 2023 +0100

    add a sql injection threat

commit bad8e04c3c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 19:11:38 2023 +0100

    cleanup & minor refactorings

commit 3172eb69d2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 18:30:47 2023 +0100

    introduce RepositoryId

commit 1fe35e14a5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 14:53:40 2023 +0100

    mv our actor code to forgefed

commit abdf56dde1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 14:27:29 2023 +0100

    move forgefed to models

commit 0b2cf2a55b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Sat Dec 9 14:26:49 2023 +0100

    remov unused experiments

commit 184388015d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 20:51:54 2023 +0100

    added more tests

commit b5a467e94d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 20:37:26 2023 +0100

    remove unused & implement webfinger

commit 73a38ea0d1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 19:52:09 2023 +0100

    use new factory function

commit e8371ca94c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 19:43:49 2023 +0100

    ActorId -> PersonId

commit 3151c8fe81
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 19:41:22 2023 +0100

    make validate more compact

commit be4d3544ae
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 18:33:26 2023 +0100

    Refactor ActorID -> ActorId

commit 7c86f13728
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 18:09:22 2023 +0100

    make route more compact

commit afcc7f0def
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 18:08:54 2023 +0100

    factory instead of parse & validate

commit 6fef54ed1c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 8 18:08:16 2023 +0100

    there is a validation module

commit a10a9141f8
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 8 15:44:00 2023 +0100

    Remove useless call to repo, add todos

commit 3c515c2614
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 8 11:54:07 2023 +0100

    Add review todos

commit 22d71e6b30
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:53:37 2023 +0100

    Update ToDo

commit afe659f9f4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:54:07 2023 +0100

    Implement 5s waiting

commit 745598bba4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:24:01 2023 +0100

    Implement starring

commit 976256bf3d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:21:26 2023 +0100

    Refactor if conditional to switch, use split up functions

commit 75ee273f40
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:18:33 2023 +0100

    Split user creation and saving user to db

commit 7f4667696f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 13:17:51 2023 +0100

    Cleanup imports

commit 6ad52a6d67
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 12:03:42 2023 +0100

    Update tests

commit 25d34e0c14
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 12:03:28 2023 +0100

    Check for empty path in IRI

commit f84e0b27e1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 11:45:24 2023 +0100

    Use ValidateAndParseIRI, pass this to ParseActorID

commit fa1acd1ebb
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 11:44:59 2023 +0100

    Extract url string validation and parsing from ActorID parsing

commit 4d3ab4dda2
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 11:24:47 2023 +0100

    Update Validate()

commit 39d4c8dd2d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 11:24:27 2023 +0100

    Generalize validate_is_not_empty

commit 085db0c127
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 10:51:58 2023 +0100

    Remove todo

commit 54ef78034e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 10:51:03 2023 +0100

    Don't parse received repoID

commit e3defaa212
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 10:44:35 2023 +0100

    Split getPersonByRest function

    This leaves us with two easier to read functions, encapsulating
    two different functionalities.

commit bdddde8b68
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Dec 7 10:42:05 2023 +0100

    Fix erroneous param and deprecated --name

commit 28a290da10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 6 18:32:26 2023 +0100

    reviewed current work

commit 02dc8901af
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 16:14:50 2023 +0100

    Fix tests

commit 68cd621053
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 16:14:39 2023 +0100

    Test for empty string

commit d27cac5bae
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:56:26 2023 +0100

    Move federated user creation to func

commit 01506f9836
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:50:38 2023 +0100

    Clearer description

commit 77b6402e77
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:37:58 2023 +0100

    Add missing error treatment

commit 946e5cf34c
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:37:14 2023 +0100

    Remove typo in func

commit c0f1681fa3
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:16:01 2023 +0100

    Allow parsing of repository-id too

commit 4f25e5057a
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:15:39 2023 +0100

    Make the source an argument to the parser

commit 2fb893843b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 15:13:53 2023 +0100

    Move getting person to own function

commit 6d143e74cf
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 13:36:26 2023 +0100

    More clear distinction between sender and receiver of star

commit 52e950a492
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 13:06:30 2023 +0100

    Check the path for empty strings

commit 65f7124c67
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 12:05:47 2023 +0100

    Use u.Hostname() instead of u.Host

    u.Host returns hostname:port.

commit 27c9db1027
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Dec 6 11:24:42 2023 +0100

    Better function descriptions

commit 9b5d8bbeda
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Dec 6 09:07:09 2023 +0100

    If we use user.loginname to store the actor.id we can search for local users earlier

commit ed1af14ceb
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 14:54:03 2023 +0100

    Panic on error, use correct function names

commit 9dcbe0177e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 14:53:10 2023 +0100

    Rename targe to remoteStargazer

commit de9e4dea61
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 14:52:33 2023 +0100

    Update todos, remove comments

commit 68cc74d139
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 14:50:46 2023 +0100

    Use actionsUser for creating http client

commit d65e5aa70e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 14:49:27 2023 +0100

    Move helper functions to top

commit 1c145d9d68
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Dec 5 12:19:22 2023 +0100

    WIP: fit generateUUIDMail for testing purposes

commit 11e93784fe
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Dec 5 11:46:11 2023 +0100

    WIP: log Info User created

commit a20f535211
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Dec 5 11:38:36 2023 +0100

    WIP: pwdgen, username

commit 85e09a7ada
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Dec 5 10:37:51 2023 +0100

    WIP: Generate User if not exists

commit 94880d64f4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Dec 5 09:26:03 2023 +0100

    higlight the need for id normalization

commit 231bdb65b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Dec 1 17:06:39 2023 +0100

    searching for the local person

commit edd7fb77fd
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 1 15:07:13 2023 +0100

    WIP create user if not exists

commit 159f3dc3aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Nov 30 17:41:08 2023 +0100

    describe the current state

commit 41e12d09ef
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Dec 1 11:56:12 2023 +0100

    WIP create User from person

commit c8456d57ff
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 30 16:10:26 2023 +0100

    Add thoughts on user creation

commit c61be31c72
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 30 16:04:26 2023 +0100

    Remove redundant person implementation

commit 22ba03ae4d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 30 16:01:20 2023 +0100

    Don't use redundant implementation of person

commit b00b5fa7af
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 30 16:00:39 2023 +0100

    Add some thoughts on repo testing

commit eab016e896
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Nov 29 09:21:54 2023 +0100

    add threat analyses

commit a8d5e7ba77
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 15:45:04 2023 +0100

    Fix typos and format

commit d43c4ba739
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 15:34:02 2023 +0100

    Use person generation

commit 9f016d3673
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 15:33:22 2023 +0100

    Move to extra var

commit 7071117864
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 15:32:15 2023 +0100

    Implement Person creation

commit fde8de4f90
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 13:26:35 2023 +0100

    Rename to ParseActorIDFromStarActivity

commit 2c4089ba1d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 13:24:59 2023 +0100

    Add star json with links to lokalhost

commit ede86df685
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 29 11:46:24 2023 +0100

    Remove todo

commit 7529b9da91
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 15:17:59 2023 +0100

    Note ToDos for setting up useful tests

commit e60d89cb67
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 15:17:34 2023 +0100

    Use correct target for get request

commit 0388240039
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 13:03:45 2023 +0100

    WIP Use non generated HTTP client

commit 4b490802d7
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 13:03:07 2023 +0100

    Test creation of client only

commit 61afc65377
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 10:55:53 2023 +0100

    Implement Get method on Client struct

commit 56d11bbff4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 28 10:55:18 2023 +0100

    Don't hardcode method in NewRequest function

commit 8a53331283
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 14:01:32 2023 +0100

    Add ToDo

commit 93d79646de
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 13:56:53 2023 +0100

    Fix api url

commit 9568eab62a
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 13:23:03 2023 +0100

    Fix tests

commit 6284355e1e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 12:51:36 2023 +0100

    Remove redundant ValidateStar and err check, call coorect function

commit 43ac3ddca9
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 12:50:15 2023 +0100

    Remove star validation as it happens in actor validation now

commit 566b3bc459
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 12:49:36 2023 +0100

    Parse Actor from star activity, Update function declaration order

commit 3a938b6c3f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 12:48:14 2023 +0100

    Use and validate source in ActorID struct

commit 546ce50337
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 11:40:12 2023 +0100

    Use PanicIfInvalid in repository.go

commit 9566e9bc5d
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 11:38:01 2023 +0100

    Change tests to use IsValid method

commit fccf5c37ca
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 11:37:29 2023 +0100

    Add IsValid and PanicIfInvalid methods for ActorID

commit 8300d3fbde
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 24 09:55:47 2023 +0100

    Add ToDos from code review

commit 34c511ae98
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 17:04:58 2023 +0100

    Use data from actor, improve formatting

commit aee2ee2596
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 17:04:22 2023 +0100

    Also log error on person creation

commit 91baf2be32
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 17:03:24 2023 +0100

    Add get functions for userId and HostAndPort

commit 92c089a4e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 17:02:54 2023 +0100

    Add a test for getting host and port

commit 863b340622
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 17:02:36 2023 +0100

    Update dev notes with create repo curl cmd

commit 8657f70960
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 14:50:32 2023 +0100

    Add todo

commit 5efce01f6f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 23 14:17:35 2023 +0100

    Make test messages consistent

commit ad8adc880f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 16:40:28 2023 +0100

    Create easier to read tests for parser and validator

commit 62eae6564f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 16:40:03 2023 +0100

    Fix bug in validation

commit d205c50a43
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 16:08:14 2023 +0100

    Implement generic validation on ActorID

commit 7b5d13a625
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 15:27:44 2023 +0100

    Split check for schema and host

commit 3d2b5115ad
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 15:25:43 2023 +0100

    Implement and use Validatable interface

commit 235ed7cd1e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 22 13:28:13 2023 +0100

    Rename to actorID

commit 5e111f14ef
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 17:20:36 2023 +0100

    use the swagger-api

commit 109dbd7d75
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 17:20:22 2023 +0100

    swager generated api

commit 07bd30cf20
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 17:19:53 2023 +0100

    exosy has moved this package to service

commit 604f0a2477
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 17:19:08 2023 +0100

    swagger client generation

commit 9e74de829e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 13:38:20 2023 +0100

    swagger client generation

commit bc1ff23b23
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 10:49:01 2023 +0100

    swagger client generation

commit d81647b36e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 10:37:47 2023 +0100

    wip: swagger client generation

commit a954c9764f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 10:10:28 2023 +0100

    wip: swagger client generation

commit fbff67f11a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 10:10:04 2023 +0100

    add some more todos

commit 5c998a5c46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 17 08:22:27 2023 +0100

    add comment

commit 5729cee3e5
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 16:04:50 2023 +0100

    Move test to model/activitypub

commit 7193c0bd9b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 16:03:05 2023 +0100

    WIP test for parsing the actor

commit 0c367070af
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 15:06:41 2023 +0100

    Call validate star

commit b1f3706575
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 15:02:59 2023 +0100

    Introduce validation against source

commit 78fc75135f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 15:02:20 2023 +0100

    Rename to ActorData

commit 09058c13c5
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 14:53:54 2023 +0100

    Rename to actor

commit 91dcd59e68
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 14:50:01 2023 +0100

    Import parser from model and call validation

commit 273ca49e22
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 16 14:49:05 2023 +0100

    Validate on ActorData independently and move to model

commit e44321221e
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 15:07:23 2023 +0100

    WIP: Add test for parser

commit ad65976677
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 14:27:47 2023 +0100

    Reorder functions

commit d52bb4bf8f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 12:31:16 2023 +0100

    Remove newline from error string

commit b869d91dc1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 12:29:17 2023 +0100

    Parse Actor URL

commit 7541251d63
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 12:28:26 2023 +0100

    Correct API urls

commit 9fa8d19cf4
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 12:10:31 2023 +0100

    Fix typo

commit d10c1094d9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Nov 15 09:23:03 2023 +0100

    add some pseudocode

commit ab92891091
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 08:59:55 2023 +0100

    Use actor

commit b085ce37a6
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Wed Nov 15 08:53:02 2023 +0100

    Review

commit d7abff31f6
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 15:29:13 2023 +0100

    Add ToDos

commit d2b464582f
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 15:29:00 2023 +0100

    Add ToDo

commit e18e90f8df
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 15:28:38 2023 +0100

    Add fieldname and type

commit f48b4d1f55
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 15:27:32 2023 +0100

    Get Activity field from star

commit e8013250b8
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 14:56:16 2023 +0100

    Add question

commit 7790e98f47
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Tue Nov 14 14:53:47 2023 +0100

    Remove unused funcs and structs

commit 51cb9aded0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Nov 15 09:08:17 2023 +0100

    generate ap-person client

commit 14c74f27cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 17:00:08 2023 +0100

    tests are now working

commit d28ea1a30b
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date:   Fri Nov 10 16:43:44 2023 +0100

    Start implementing UnmarshalJSON for Star

commit 43014ca473
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date:   Fri Nov 10 16:08:15 2023 +0100

    Implement MarshallJSON for Star activity

commit a1885a5767
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 15:13:26 2023 +0100

    star: test first

commit 1044e44ee5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 14:51:33 2023 +0100

    we got a parsed actor

commit b08580280a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 14:37:36 2023 +0100

    np in case of unauthenticated user

commit 6c1ec05458
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 14:37:00 2023 +0100

    extract the relevant app.ini parts

commit 460e2fb644
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 10 14:10:23 2023 +0100

    prepare next steps

commit 5b01517c12
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 10 14:26:13 2023 +0100

    Get data from form

commit e846e8225b
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Fri Nov 10 14:06:17 2023 +0100

    Update dev-notes

commit a1e9783cec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Nov 9 21:59:51 2023 +0100

    expose star activity to swagger

commit d7dfdca8b9
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 9 15:38:55 2023 +0100

    WIP Add star to swagger

commit 17dfc7bdc1
Author: erik <erik.seiert@meissa-gmbh.de>
Date:   Thu Nov 9 14:24:19 2023 +0100

    Clearer wording, fix typos

commit 07cf963af3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Thu Nov 9 21:54:17 2023 +0100

    expose star activity to swagger

commit dc1a82bf4c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Wed Nov 8 08:56:22 2023 +0100

    use star as swagger model

commit 18f4c514ec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Nov 7 18:01:52 2023 +0100

    add one more step to rebase procedure

commit 46fb4fec8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Nov 7 09:30:32 2023 +0100

    add star activity & bind to swagger

commit ff5a4405fd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 18:29:48 2023 +0100

    introduce repo from exosy

commit 157effdd8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 18:29:24 2023 +0100

    adjust star activity example

commit a0efbf7d72
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 09:27:41 2023 +0100

    improve git-setup-doc

commit 1f80e99857
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 09:12:09 2023 +0100

    improve git-setup-doc

commit cde603dd0e
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Fri Nov 3 17:58:47 2023 +0100

    improve git sync procedure

commit 7195141805
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 08:50:36 2023 +0100

    wip: lets define the post input more close

commit 6587b6d62b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Nov 6 08:49:58 2023 +0100

    log who is doing the inbox post

commit 4e1e65e14f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 3 17:45:53 2023 +0100

    log repository under activity

commit fe6f625923
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 3 17:45:21 2023 +0100

    temp deactivate security

commit b7082b7e98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Nov 3 17:05:48 2023 +0100

    improve rebase procedure

commit 87324d1553
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 20:14:52 2023 +0200

    ctx action should no be good enough

commit 0d5702e501
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 20:13:51 2023 +0200

    fill in some minimal information to an actor

commit 6ceb1d2040
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 20:13:24 2023 +0200

    add f3 dep

commit 0572725204
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 14:33:14 2023 +0200

    add some rought branch sync description

commit fe2a3d86d4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 14:10:13 2023 +0200

    get repo now works somehow

commit da7a38b03d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 13:24:05 2023 +0200

    enable federation

commit 64abf87fb0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 12:12:31 2023 +0200

    added some logs

commit 3dbcf34a16
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 27 11:50:39 2023 +0200

    share dev notes

commit 511ab65df4
Author: Mirco <mirco.zachmann@meissa.de>
Date:   Tue Oct 24 10:34:53 2023 +0200

    Fix syntax error, unexpected new line

commit 154be0a637
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Tue Oct 24 09:10:31 2023 +0200

    wip: compile one step further

commit 317b7fac8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Mon Oct 23 17:16:38 2023 +0200

    wip: load repo to ctx

commit 643681663f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 20 16:27:55 2023 +0200

    add activity sequence

commit 68318f2632
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 20 16:12:37 2023 +0200

    considerations about star activity

commit d4f507a223
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 20 15:45:12 2023 +0200

    remove unused imports

commit a87cbda165
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date:   Fri Oct 20 15:16:04 2023 +0200

    add repository actor
2024-06-06 08:58:11 +02:00
Lunny Xiao 1be797faba
Fix bug on avatar (#31008)
Co-authored-by: silverwind <me@silverwind.io>
(cherry picked from commit 58a03e9fadb345de5653345c2a68ecfd0750940a)
2024-05-19 13:57:52 +02:00
Kemal Zebari e388822e9d
Don't only list code-enabled repositories when using repository API (#30817)
We should be listing all repositories by default.

Fixes #28483.

(cherry picked from commit 9f0ef3621a3b63ccbe93f302a446b67dc54ad725)

Conflict:
   -		if ctx.IsSigned && ctx.Doer.IsAdmin || permission.UnitAccessMode(unit_model.TypeCode) >= perm.AccessModeRead {
   +		if ctx.IsSigned && ctx.Doer.IsAdmin || permission.HasAccess() {
   because of https://codeberg.org/forgejo/forgejo/pulls/2001
2024-05-05 12:15:40 +01:00
Jack Hay e08f05b069
Add setting to disable user features when user login type is not plain (#29615)
- Adds setting `EXTERNAL_USER_DISABLE_FEATURES` to disable any supported
user features when login type is not plain
- In general, this is necessary for SSO implementations to avoid
inconsistencies between the external account management and the linked
account
- Adds helper functions to encourage correct use

(cherry picked from commit 59d4aadba5c15d02f3b9f0e61abb7476870c20a5)

Conflicts:
	- docs/content/administration/config-cheat-sheet.en-us.md
          Removed.
	- modules/setting/admin.go
          Trivial resolution: pick the newly added struct member.
2024-04-07 11:09:21 +02:00
sillyguodong 16696a42f5
Add API for `Variables` (#29520)
close #27801

---------

Co-authored-by: silverwind <me@silverwind.io>
(cherry picked from commit 62b073e6f31645e446c7e8d6b5a506f61b47924e)

Conflicts:
	- modules/util/util.go
          Trivial resolution, only picking the newly introduced function
	- routers/api/v1/swagger/options.go
          Trivial resolution. We don't have UserBadges, don't pick that part.
	- templates/swagger/v1_json.tmpl
          Regenerated.
2024-04-07 10:57:53 +02:00
hazycora f8e48e066a
add pronoun field to user profiles 2024-04-03 15:11:17 -05:00
Gergely Nagy 36147f580c
Allow users to hide all "Add more units..." hints
Repositories displaying an "Add more..." tab on the header is a neat way
to let people discover they can enable more units. However, displaying
it all the time for repository owners, even when they deliberately do
not want to enable more units gets noisy very fast.

As such, this patch introduces a new setting which lets people disable
this hint under the appearance settings.

Fixes #2378.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-03-21 08:15:51 +01:00
Lunny Xiao bb09ad2b63
Allow options to disable user ssh keys configuration from the interface on app.ini (#29447)
Follow #29275
Extract from #20549
Fix #24716

---------

Co-authored-by: delvh <dev.lh@web.de>
(cherry picked from commit 8e12ba34bab7e728ac93ccfaecbe91e053ef1c89)

Conflicts:
	custom/conf/app.example.ini
	trivial context conflict
2024-03-11 23:36:57 +07:00
Lunny Xiao ee6ff937c0
Allow options to disable user gpg keys configuration from the interface on app.ini (#29486)
Follow #29447
Fix #29454
Extract from #20549

(cherry picked from commit 9de5e39e25009bacc5ca201ed97e9cbb623e56e9)

Conflicts:
	custom/conf/app.example.ini
	docs/content/administration/config-cheat-sheet.en-us.md
	docs/content/administration/config-cheat-sheet.zh-cn.md
	trivial context conflict
2024-03-06 12:10:45 +08:00
Lunny Xiao 894d9b2836
Move context from modules to services (#29440)
Since `modules/context` has to depend on `models` and many other
packages, it should be moved from `modules/context` to
`services/context` according to design principles. There is no logic
code change on this PR, only move packages.

- Move `code.gitea.io/gitea/modules/context` to
`code.gitea.io/gitea/services/context`
- Move `code.gitea.io/gitea/modules/contexttest` to
`code.gitea.io/gitea/services/contexttest` because of depending on
context
- Move `code.gitea.io/gitea/modules/upload` to
`code.gitea.io/gitea/services/context/upload` because of depending on
context

(cherry picked from commit 29f149bd9f517225a3c9f1ca3fb0a7b5325af696)

Conflicts:
	routers/api/packages/alpine/alpine.go
	routers/api/v1/repo/issue_reaction.go
	routers/install/install.go
	routers/web/admin/config.go
	routers/web/passkey.go
	routers/web/repo/search.go
	routers/web/repo/setting/default_branch.go
	routers/web/user/home.go
	routers/web/user/profile.go
	tests/integration/editor_test.go
	tests/integration/integration_test.go
	tests/integration/mirror_push_test.go
	trivial context conflicts
	also modified all other occurrences in Forgejo specific files
2024-03-06 12:10:43 +08:00
Earl Warren 094c84ed6d
Merge branch 'rebase-forgejo-dependency' into wip-forgejo 2024-02-05 18:58:23 +01:00
Gusted b020ded391
[GITEA] Adjust name of operation
- The name could be conflucted with the `GET
/user/applications/oauth2/{id}` operation, as it only differed in a
single letter being uppercase. Change it to be
userGetOAuth2Application**s**, as that's also more accurate for this function.
- Resolves #2163

(cherry picked from commit 1891dac547)
(cherry picked from commit 68fceb9b7a)
(cherry picked from commit 7335d6de54)
2024-02-05 16:09:43 +01:00
Gusted 2da33aae2d
[MODERATION] User blocking
- Add the ability to block a user via their profile page.
- This will unstar their repositories and visa versa.
- Blocked users cannot create issues or pull requests on your the doer's repositories (mind that this is not the case for organizations).
- Blocked users cannot comment on the doer's opened issues or pull requests.
- Blocked users cannot add reactions to doer's comments.
- Blocked users cannot cause a notification trough mentioning the doer.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/540
(cherry picked from commit 687d852480)
(cherry picked from commit 0c32a4fde5)
(cherry picked from commit 1791130e3c)
(cherry picked from commit 37858b7e8f)
(cherry picked from commit a3e2bfd7e9)
(cherry picked from commit 7009b9fe87)

Conflicts: https://codeberg.org/forgejo/forgejo/pulls/1014
        routers/web/user/profile.go
        templates/user/profile.tmpl
(cherry picked from commit b2aec34791)
(cherry picked from commit e2f1b73752)

[MODERATION] organization blocking a user (#802)

- Resolves #476
- Follow up for: #540
- Ensure that the doer and blocked person cannot follow each other.
- Ensure that the block person cannot watch doer's repositories.
- Add unblock button to the blocked user list.
- Add blocked since information to the blocked user list.
- Add extra testing to moderation code.
- Blocked user will unwatch doer's owned repository upon blocking.
- Add flash messages to let the user know the block/unblock action was successful.
- Add "You haven't blocked any users" message.
- Add organization blocking a user.

Co-authored-by: Gusted <postmaster@gusted.xyz>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/802
(cherry picked from commit 0505a10421)
(cherry picked from commit 37b4e6ef9b)
(cherry picked from commit c17c121f2c)

[MODERATION] organization blocking a user (#802) (squash)

Changes to adapt to:

  6bbccdd177 Improve AJAX link and modal confirm dialog (#25210)

Refs: https://codeberg.org/forgejo/forgejo/pulls/882/files#issuecomment-945962
Refs: https://codeberg.org/forgejo/forgejo/pulls/882#issue-330561
(cherry picked from commit 523635f83c)
(cherry picked from commit 4743eaa6a0)
(cherry picked from commit eff5b43d2e)

Conflicts: https://codeberg.org/forgejo/forgejo/pulls/1014
        routers/web/user/profile.go
(cherry picked from commit 9d359be5ed)
(cherry picked from commit b1f3069a22)

[MODERATION] add user blocking API

- Follow up for: #540, #802
- Add API routes for user blocking from user and organization
perspective.
- The new routes have integration testing.
- The new model functions have unit tests.
- Actually quite boring to write and to read this pull request.

(cherry picked from commit f3afaf15c7)
(cherry picked from commit 6d754db3e5)
(cherry picked from commit 2a89ddc0ac)
(cherry picked from commit 4a147bff7e)

Conflicts:
        routers/api/v1/api.go
        templates/swagger/v1_json.tmpl
(cherry picked from commit bb8c339185)
(cherry picked from commit 5a11569a01)
(cherry picked from commit 2373c801ee)

[MODERATION] restore redirect on unblock

 ctx.RedirectToFirst(ctx.FormString("redirect_to"), ctx.ContextUser.HomeLink())

was replaced by

 ctx.JSONOK()

in 128d77a3a Following up fixes for "Fix inconsistent user profile layout across tabs" (#25739)

thus changing the behavior (nicely spotted by the tests). This
restores it.

(cherry picked from commit 597c243707)
(cherry picked from commit cfa539e590)

[MODERATION] Add test case (squash)

- Add an test case, to test an property of the function.

(cherry picked from commit 70dadb1916)

[MODERATION] Block adding collaborators

- Ensure that the doer and blocked user cannot add each other as
collaborators to repositories.
- The Web UI gets an detailed message of the specific situation, the API
gets an generic Forbidden code.
- Unit tests has been added.
- Integration testing for Web and API has been added.
- This commit doesn't introduce removing each other as collaborators on
the block action, due to the complexity of database calls that needs to
be figured out. That deserves its own commit and test code.

(cherry picked from commit 747be949a1)

[MODERATION] move locale_en-US.ini strings to avoid conflicts

Conflicts:
        web_src/css/org.css
        web_src/css/user.css
        https://codeberg.org/forgejo/forgejo/pulls/1180

(cherry picked from commit e53f955c88)

Conflicts:
        services/issue/comments.go
        https://codeberg.org/forgejo/forgejo/pulls/1212
(cherry picked from commit b4a454b576)

Conflicts:
        models/forgejo_migrations/migrate.go
        options/locale/locale_en-US.ini
        services/pull/pull.go
        https://codeberg.org/forgejo/forgejo/pulls/1264

[MODERATION] Remove blocked user collaborations with doer

- When the doer blocks an user, who is also an collaborator on an
repository that the doer owns, remove that collaboration.
- Added unit tests.
- Refactor the unit test to be more organized.

(cherry picked from commit ec87016178)
(cherry picked from commit 313e6174d8)

[MODERATION] QoL improvements (squash)

- Ensure that organisations cannot be blocked. It currently has no
effect, as all blocked operations cannot be executed from an
organisation standpoint.
- Refactored the API route to make use of the `UserAssignmentAPI`
middleware.
- Make more use of `t.Run` so that the test code is more clear about
which block of code belongs to which test case.
- Added more integration testing (to ensure the organisations cannot be
blocked and some authorization/permission checks).

(cherry picked from commit e9d638d075)

[MODERATION] s/{{avatar/{{ctx.AvatarUtils.Avatar/

(cherry picked from commit ce8b30be13)
(cherry picked from commit f911dc4025)

Conflicts:
	options/locale/locale_en-US.ini
	https://codeberg.org/forgejo/forgejo/pulls/1354
(cherry picked from commit c1b37b7fda)
(cherry picked from commit 856a2e0903)

[MODERATION] Show graceful error on comment creation

- When someone is blocked by the repository owner or issue poster and
try to comment on that issue, they get shown a graceful error.
- Adds integration test.

(cherry picked from commit 490646302e)
(cherry picked from commit d3d88667cb)
(cherry picked from commit 6818de13a9)

[MODERATION] Show graceful error on comment creation (squash) typo

(cherry picked from commit 1588d4834a)
(cherry picked from commit d510ea52d0)
(cherry picked from commit 8249e93a14)

[MODERATION] Refactor integration testing (squash)

- Motivation for this PR is that I'd noticed that a lot of repeated
calls are happening between the test functions and that certain tests
weren't using helper functions like `GetCSRF`, therefor this refactor of
the integration tests to keep it: clean, small and hopefully more
maintainable and understandable.
- There are now three integration tests: `TestBlockUser`,
`TestBlockUserFromOrganization` and `TestBlockActions` (and has been
moved in that order in the source code).
- `TestBlockUser` is for doing blocking related actions as an user and
`TestBlockUserFromOrganization` as an organisation, even though they
execute the same kind of tests they do not share any database calls or
logic and therefor it currently doesn't make sense to merge them
together (hopefully such oppurtinutiy might be presented in the future).
- `TestBlockActions` now contain all tests for actions that should be
blocked after blocking has happened, most tests now share the same doer
and blocked users and a extra fixture has been added to make this
possible for the comment test.
- Less code, more comments and more re-use between tests.

(cherry picked from commit ffb393213d)
(cherry picked from commit 85505e0f81)
(cherry picked from commit 0f3cf17761)

[MODERATION] Fix network error (squash)

- Fix network error toast messages on user actions such as follow and
unfollow. This happened because the javascript code now expects an JSON
to be returned, but this wasn't the case due to
cfa539e590127b4953b010fba3dea21c82a1714.
- The integration testing has been adjusted to instead test for the
returned flash cookie.

(cherry picked from commit 112bc25e54)
(cherry picked from commit 1194fe4899)
(cherry picked from commit 9abb95a844)

[MODERATION] Modernize frontend (squash)

- Unify blocked users list.
- Use the new flex list classes for blocked users list to avoid using
the CSS helper classes and thereby be consistent in the design.
- Fix the modal by using the new modal class.
- Remove the icon in the modal as looks too big in the new design.
- Fix avatar not displaying as it was passing the context where the user
should've been passed.
- Don't use italics for 'Blocked since' text.
- Use namelink template to display the user's name and homelink.

(cherry picked from commit ec935a16a3)
(cherry picked from commit 67f37c8346)

Conflicts:
	models/user/follow.go
	models/user/user_test.go
	routers/api/v1/user/follower.go
	routers/web/shared/user/header.go
	routers/web/user/profile.go
	templates/swagger/v1_json.tmpl
	https://codeberg.org/forgejo/forgejo/pulls/1468
(cherry picked from commit 6a9626839c)

Conflicts:
	tests/integration/api_nodeinfo_test.go
	https://codeberg.org/forgejo/forgejo/pulls/1508#issuecomment-1242385
(cherry picked from commit 7378b251b4)

Conflicts:
	models/fixtures/watch.yml
	models/issues/reaction.go
	models/issues/reaction_test.go
	routers/api/v1/repo/issue_reaction.go
	routers/web/repo/issue.go
	services/issue/issue.go
	https://codeberg.org/forgejo/forgejo/pulls/1547
(cherry picked from commit c2028930c1)
(cherry picked from commit d3f9134aee)
(cherry picked from commit 7afe154c5c)
(cherry picked from commit 99ac7353eb)
(cherry picked from commit a9cde00c5c)

Conflicts:
	services/user/delete.go
	https://codeberg.org/forgejo/forgejo/pulls/1736
(cherry picked from commit 008c0cc63d)

[DEADCODE] add exceptions

(cherry picked from commit 12ddd2b10e)

[MODERATION] Remove deadcode (squash)

- Remove deadcode that's no longer used by Forgejo.

(cherry picked from commit 0faeab4fa9)

[MODERATION] Add repo transfers to blocked functionality (squash)

- When someone gets blocked, remove all pending repository transfers
from the blocked user to the doer.
- Do not allow to start transferring repositories to the doer as blocked user.
- Added unit testing.
- Added integration testing.

(cherry picked from commit 8a3caac330)
(cherry picked from commit a92b4cfeb6)
(cherry picked from commit acaaaf07d9)
(cherry picked from commit 735818863c)
(cherry picked from commit f50fa43b32)
(cherry picked from commit e166836433)
(cherry picked from commit 82a0e4a381)
(cherry picked from commit ff233c19c4)
(cherry picked from commit 8ad87d215f)

[MODERATION] Fix unblock action (squash)

- Pass the whole context instead of only giving pieces.
- This fixes CSRF not correctly being inserted into the unblock buttons.

(cherry picked from commit 2aa51922ba)
(cherry picked from commit 7ee8db0f01)
(cherry picked from commit e4f8b999bc)
(cherry picked from commit 05aea60b13)
(cherry picked from commit dc0d61b012)
(cherry picked from commit f53fa583de)
(cherry picked from commit c65b89a58d)
(cherry picked from commit 69e50b9969)
(cherry picked from commit ec127440b8)

[MODERATION] cope with shared fixtures

* There is one more issue in the fixtures and this breaks some tests
* The users in the shared fixtures were renamed for clarity and that
  breaks some tests

(cherry picked from commit 707a4edbdf)

Conflicts:
	modules/indexer/issues/indexer_test.go
	https://codeberg.org/forgejo/forgejo/pulls/1508
(cherry picked from commit 82cc044366)
(cherry picked from commit 2776aec7e8)
(cherry picked from commit 1fbde36dc7)
(cherry picked from commit 1293db3c4e)
(cherry picked from commit 6476802175)
(cherry picked from commit 5740f2fc83)
(cherry picked from commit afc12d7b6e)

[MODERATION] Fix transfer confirmation (squash)

- Fix problem caused by the clearer confirmation for dangerous actions commit.

(cherry picked from commit 3488f4a9cb)
(cherry picked from commit ed7de91f6a)
(cherry picked from commit 2d97929b9b)
(cherry picked from commit 50d035a7b0)
(cherry picked from commit 0a0c07d78a)
(cherry picked from commit 85e55c4dbc)
(cherry picked from commit d8282122ad)
(cherry picked from commit 3f0b3b6cc5)

[MODERATION] Purge issues on user deletion (squash)

(cherry picked from commit 4f529d9596)
(cherry picked from commit f0e3acadd3)
(cherry picked from commit 682c4effe6)
(cherry picked from commit e43c2d84fd)
(cherry picked from commit 9c8e53ccc7)
(cherry picked from commit a9eb7ac783)

[MODERATION] Purge issues on user deletion (squash) revert shared fixtures workarounds

(cherry picked from commit 7224653a40)
(cherry picked from commit aa6e8672f9)
(cherry picked from commit 58c7947e95)
(cherry picked from commit f1aacb1851)
(cherry picked from commit 0bf174af87)
(cherry picked from commit f9706f4335)

[MODERATION] Prepare moderation for context locale changes (squash)

- Resolves https://codeberg.org/forgejo/forgejo/issues/1711

(cherry picked from commit 2e289baea9)
(cherry picked from commit 97b16bc19a)

[MODERATION] User blocking (squash) do not use shared fixture

It conflicts with a fixtured added in the commit
Fix comment permissions (#28213) (#28216)

(cherry picked from commit ab40799dcab24e9f495d765268b791931da81684)
(cherry picked from commit 996c92cafd)
(cherry picked from commit 259912e3a6)

Conflicts:
	options/locale/locale_en-US.ini
	https://codeberg.org/forgejo/forgejo/pulls/1921
(cherry picked from commit 1e82abc032)
(cherry picked from commit a176fee160)
(cherry picked from commit 0480b76dfe)
(cherry picked from commit 4bc06b7b38)
(cherry picked from commit 073094cf72)
(cherry picked from commit ac6201c647)
(cherry picked from commit 7e0812674d)
(cherry picked from commit 068c741e56)

Conflicts:
	models/repo_transfer.go
	models/repo_transfer_test.go
	routers/web/user/profile.go
	https://codeberg.org/forgejo/forgejo/pulls/2298
2024-02-05 15:56:45 +01:00
KN4CK3R f8b471ace1
Unify user update methods (#28733)
Fixes #28660
Fixes an admin api bug related to `user.LoginSource`
Fixed `/user/emails` response not identical to GitHub api

This PR unifies the user update methods. The goal is to keep the logic
only at one place (having audit logs in mind). For example, do the
password checks only in one method not everywhere a password is updated.

After that PR is merged, the user creation should be next.
2024-02-04 13:29:09 +00:00
Lunny Xiao 70c4aad8e1
Move more functions to db.Find (#28419)
Following #28220

This PR move more functions to use `db.Find`.

---------

Co-authored-by: delvh <dev.lh@web.de>
2024-01-15 02:19:25 +00:00
Lunny Xiao baf0d402d9
Add get actions runner registration token for API routes, repo, org, user and global level (#27144)
Replace #23761

---------

Co-authored-by: Denys Konovalov <kontakt@denyskon.de>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2023-12-27 07:57:54 +00:00
Lunny Xiao 882e502327
Fix comment permissions (#28213)
This PR will fix some missed checks for private repositories' data on
web routes and API routes.
2023-11-25 17:21:21 +00:00
Lunny Xiao df1e7d0067
Use db.Find instead of writing methods for every object (#28084)
For those simple objects, it's unnecessary to write the find and count
methods again and again.
2023-11-24 03:49:41 +00:00
Earl Warren 340055ab6c
Enable system users search via the API (#28013)
Refs: https://codeberg.org/forgejo/forgejo/issues/1403

(cherry picked from commit dd4d17c159)
2023-11-13 15:31:38 +01:00
Lunny Xiao cddf245c12
Replace more db.DefaultContext (#27628)
Target #27065
2023-10-15 17:46:06 +02:00
JakobDev 76a85a4ce9
Final round of `db.DefaultContext` refactor (#27587)
Last part of #27065
2023-10-14 08:37:24 +00:00
Evan Tobin ae419fa494
Fix permissions for Token DELETE endpoint to match GET and POST (#27610)
Fixes #27598

In #27080, the logic for the tokens endpoints were updated to allow
admins to create and view tokens in other accounts. However, the same
functionality was not added to the DELETE endpoint. This PR makes the
DELETE endpoint function the same as the other token endpoints and adds unit tests
2023-10-14 08:04:44 +00:00
JakobDev ebe803e514
Penultimate round of `db.DefaultContext` refactor (#27414)
Part of #27065

---------

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2023-10-11 04:24:07 +00:00
JakobDev 7047df36d4
Another round of `db.DefaultContext` refactor (#27103)
Part of #27065

---------

Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
2023-09-25 13:17:37 +00:00
CaiCandong f93ee5937b
Fix token endpoints ignore specified account (#27080)
Fix #26234
close #26323
close #27040

---------

Co-authored-by: silverwind <me@silverwind.io>
2023-09-18 00:21:15 +00:00
JakobDev f91dbbba98
Next round of `db.DefaultContext` refactor (#27089)
Part of #27065
2023-09-16 14:39:12 +00:00
JakobDev c548dde205
More refactoring of `db.DefaultContext` (#27083)
Next step of #27065
2023-09-15 06:13:19 +00:00
JakobDev 76659b1114
Reduce usage of `db.DefaultContext` (#27073)
Part of #27065

This reduces the usage of `db.DefaultContext`. I think I've got enough
files for the first PR. When this is merged, I will continue working on
this.

Considering how many files this PR affect, I hope it won't take to long
to merge, so I don't end up in the merge conflict hell.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2023-09-14 17:09:32 +00:00
JakobDev aaeec2a392
Add missing 404 response to Swagger (#27038)
Most middleware throw a 404 in case something is not found e.g. a Repo
that is not existing. But most API endpoints don't include the 404
response in their documentation. This PR changes this.
2023-09-13 10:37:54 +08:00
KN4CK3R a99b96cbcd
Refactor secrets modification logic (#26873)
- Share code between web and api
- Add some tests
2023-09-05 15:21:02 +00:00
Bo-Yi Wu f79f6a26ae
feat(API): add routes and functions for managing user's secrets (#26909)
- Add routes for creating or updating a user's actions secrets in
`routers/api/v1/api.go`
- Add a new file `routers/api/v1/user/action.go` with functions for
creating or updating a user's secrets and deleting a user's secret
- Modify the `templates/swagger/v1_json.tmpl` file to include the routes
for creating or updating a user's secrets and deleting a user's secret

---------

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
2023-09-05 14:02:50 +00:00
delvh f3d41c61eb
Remove `db.DefaultContext` in `routers/` and `cmd/` (#26076)
Now, the only remaining usages of `models.db.DefaultContext` are in
  - `modules`
  - `models`
  - `services`
2023-07-23 23:47:27 -04:00
silverwind 88f835192d
Replace `interface{}` with `any` (#25686)
Result of running `perl -p -i -e 's#interface\{\}#any#g' **/*` and `make fmt`.

Basically the same [as golang did](2580d0e08d).
2023-07-04 18:36:08 +00:00
JakobDev 254a82842a
Add API for changing Avatars (#25369)
This adds an API for uploading and Deleting Avatars for of Users, Repos
and Organisations. I'm not sure, if this should also be added to the
Admin API.

Resolves #25344

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: Giteabot <teabot@gitea.io>
2023-06-29 23:22:55 +00:00
Jason Song 174213530d
Fix `Permission` in API returned repository struct (#25388)
The old code generates `structs.Repository.Permissions` with only
`access.Permission.AccessMode`, however, it should check the units too,
or the value could be incorrect. For example,
`structs.Repository.Permissions.Push` could be false even the doer has
write access to code unit.

Should fix
https://github.com/renovatebot/renovate/issues/14059#issuecomment-1047961128
(Not reported by it, I just found it when I was looking into this bug)

---

Review tips:

The major changes are
- `modules/structs/repo.go`
https://github.com/go-gitea/gitea/pull/25388/files#diff-870406f6857117f8b03611c43fca0ab9ed6d6e76a2d0069a7c1f17e8fa9092f7
- `services/convert/repository.go`
https://github.com/go-gitea/gitea/pull/25388/files#diff-7736f6d2ae894c9edb7729a80ab89aa183b888a26a811a0c1fdebd18726a7101

And other changes are passive.
2023-06-22 13:08:08 +00:00
wxiaoguang 6b33152b7d
Decouple the different contexts from each other (#24786)
Replace #16455

Close #21803

Mixing different Gitea contexts together causes some problems:

1. Unable to respond proper content when error occurs, eg: Web should
respond HTML while API should respond JSON
2. Unclear dependency, eg: it's unclear when Context is used in
APIContext, which fields should be initialized, which methods are
necessary.


To make things clear, this PR introduces a Base context, it only
provides basic Req/Resp/Data features.

This PR mainly moves code. There are still many legacy problems and
TODOs in code, leave unrelated changes to future PRs.
2023-05-21 09:50:53 +08:00
Zettat123 6b0df6d8da
Add activity feeds API (#23494)
Close #5666

Add APIs for getting activity feeds.
2023-04-04 21:35:31 +08:00
yp05327 d74a7efb60
Use context for `RepositoryList.LoadAttributes` (#23435) 2023-03-13 11:31:41 +00:00
KN4CK3R 2173f14708
Add user webhooks (#21563)
Currently we can add webhooks for organizations but not for users. This
PR adds the latter. You can access it from the current users settings.


![grafik](https://user-images.githubusercontent.com/1666336/197391408-15dfdc23-b476-4d0c-82f7-9bc9b065988f.png)
2023-03-10 08:28:32 -06:00
zeripath d2128b44f7
Add scopes to API to create token and display them (#22989)
The API to create tokens is missing the ability to set the required
scopes for tokens, and to show them on the API and on the UI.

This PR adds this functionality.

Signed-off-by: Andrew Thornton <art27@cantab.net>
2023-02-20 15:28:44 -06:00
yp05327 bd66fa586a
Rename `repo.GetOwner` to `repo.LoadOwner` (#22967)
Fixes https://github.com/go-gitea/gitea/issues/22963

---------

Co-authored-by: Yarden Shoham <hrsi88@gmail.com>
2023-02-18 20:11:03 +08:00
Lunny Xiao bd820aa9c5
Add context cache as a request level cache (#22294)
To avoid duplicated load of the same data in an HTTP request, we can set
a context cache to do that. i.e. Some pages may load a user from a
database with the same id in different areas on the same page. But the
code is hidden in two different deep logic. How should we share the
user? As a result of this PR, now if both entry functions accept
`context.Context` as the first parameter and we just need to refactor
`GetUserByID` to reuse the user from the context cache. Then it will not
be loaded twice on an HTTP request.

But of course, sometimes we would like to reload an object from the
database, that's why `RemoveContextData` is also exposed.

The core context cache is here. It defines a new context
```go
type cacheContext struct {
	ctx  context.Context
	data map[any]map[any]any
        lock sync.RWMutex
}

var cacheContextKey = struct{}{}

func WithCacheContext(ctx context.Context) context.Context {
	return context.WithValue(ctx, cacheContextKey, &cacheContext{
		ctx:  ctx,
		data: make(map[any]map[any]any),
	})
}
```

Then you can use the below 4 methods to read/write/del the data within
the same context.

```go
func GetContextData(ctx context.Context, tp, key any) any
func SetContextData(ctx context.Context, tp, key, value any)
func RemoveContextData(ctx context.Context, tp, key any)
func GetWithContextCache[T any](ctx context.Context, cacheGroupKey string, cacheTargetID any, f func() (T, error)) (T, error)
```

Then let's take a look at how `system.GetString` implement it.

```go
func GetSetting(ctx context.Context, key string) (string, error) {
	return cache.GetWithContextCache(ctx, contextCacheKey, key, func() (string, error) {
		return cache.GetString(genSettingCacheKey(key), func() (string, error) {
			res, err := GetSettingNoCache(ctx, key)
			if err != nil {
				return "", err
			}
			return res.SettingValue, nil
		})
	})
}
```

First, it will check if context data include the setting object with the
key. If not, it will query from the global cache which may be memory or
a Redis cache. If not, it will get the object from the database. In the
end, if the object gets from the global cache or database, it will be
set into the context cache.

An object stored in the context cache will only be destroyed after the
context disappeared.
2023-02-15 21:37:34 +08:00
KN4CK3R a35749893b
Move `convert` package to services (#22264)
Addition to #22256

The `convert` package relies heavily on different models which is
[disallowed by our definition of
modules](https://github.com/go-gitea/gitea/blob/main/CONTRIBUTING.md#design-guideline).
This helps to prevent possible import cycles.

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-12-29 10:57:15 +08:00
Lunny Xiao 0a7d3ff786
refactor some functions to support ctx as first parameter (#21878)
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
Co-authored-by: Lauris BH <lauris@nix.lv>
2022-12-03 10:48:26 +08:00
flynnnnnnnnnn e81ccc406b
Implement FSFE REUSE for golang files (#21840)
Change all license headers to comply with REUSE specification.

Fix #16132

Co-authored-by: flynnnnnnnnnn <flynnnnnnnnnn@github>
Co-authored-by: John Olheiser <john.olheiser@gmail.com>
2022-11-27 18:20:29 +00:00
KN4CK3R 044c754ea5
Add `context.Context` to more methods (#21546)
This PR adds a context parameter to a bunch of methods. Some helper
`xxxCtx()` methods got replaced with the normal name now.

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-11-19 16:12:33 +08:00
M Hickford 191a74d622
Record OAuth client type at registration (#21316)
The OAuth spec [defines two types of
client](https://datatracker.ietf.org/doc/html/rfc6749#section-2.1),
confidential and public. Previously Gitea assumed all clients to be
confidential.

> OAuth defines two client types, based on their ability to authenticate
securely with the authorization server (i.e., ability to
>   maintain the confidentiality of their client credentials):
>
>   confidential
> Clients capable of maintaining the confidentiality of their
credentials (e.g., client implemented on a secure server with
> restricted access to the client credentials), or capable of secure
client authentication using other means.
>
>   **public
> Clients incapable of maintaining the confidentiality of their
credentials (e.g., clients executing on the device used by the resource
owner, such as an installed native application or a web browser-based
application), and incapable of secure client authentication via any
other means.**
>
> The client type designation is based on the authorization server's
definition of secure authentication and its acceptable exposure levels
of client credentials. The authorization server SHOULD NOT make
assumptions about the client type.

 https://datatracker.ietf.org/doc/html/rfc8252#section-8.4

> Authorization servers MUST record the client type in the client
registration details in order to identify and process requests
accordingly.

Require PKCE for public clients:
https://datatracker.ietf.org/doc/html/rfc8252#section-8.1

> Authorization servers SHOULD reject authorization requests from native
apps that don't use PKCE by returning an error message

Fixes #21299

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-10-24 15:59:24 +08:00
John Olheiser a48d6ba4b4
Go 1.19 format (#20758)
* 1.19 gofumpt

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Change CSV test

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Commit whitespace fixes from @zeripath

Co-authored-by: zeripath <art27@cantab.net>

* Update emoji

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* bump swagger & fix generate-swagger

Signed-off-by: jolheiser <john.olheiser@gmail.com>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lauris BH <lauris@nix.lv>
2022-08-30 21:15:45 -05:00