2014-02-20 06:45:43 +04:00
|
|
|
// Copyright 2014 The Gogs Authors. All rights reserved.
|
2020-01-23 02:46:46 +03:00
|
|
|
// Copyright 2020 The Gitea Authors. All rights reserved.
|
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 130981af64b4391e20f44f6655a4d78b4c4d4ab6
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 62856e639e0c42a7902f241357679ce0bf8b34c2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jun 6 07:26:28 2024 +0200
adjust field name
commit 81236bc9ef2fc53cf019425edd21460af2fffea0
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 c0b9ab2060bfe7b1b6c27f4c964778fe65cbe10c
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 98939c4745dc7e15ca8c0a01ae09f4aea0f7c0fb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 31 18:05:29 2024 +0200
remove no longer used doc
commit 17e3f6c6f3bd224950d8d86cfa00983a1845ccc3
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 58b8f57d3f0cda45e3d501eff4f3caf5df8e879a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 09:20:39 2024 +0200
more lint
commit c3650cb2fe5b049c1f92746c6c54eab126afc2de
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 07e2708e3d279c4733c45dea66d2e159d79f9e46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:59:32 2024 +0200
lint
commit e7580da130c1e25410d38459fcad005d6e1d983b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:58:19 2024 +0200
lint
commit 7b2309592ce23cd2dd4f59f51b7d5079c3852366
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:55:47 2024 +0200
remove unused
commit dadfb29ae944e18c02678a2eff433d235578c914
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:44:00 2024 +0200
relax validation
commit 26612aa75b7542ebebb10ae912866393d5ee937f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:53 2024 +0200
Add ToDo
commit fa5806cecf222ecf1a24c0652177027a017c10cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:41 2024 +0200
Use StatusSeeOther
commit 75c93e5319ea95cb49d7d90cd56d5b797febda1a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:54:49 2024 +0200
Update NewRepositoryID with case for following repo
commit 9c9333868c3e3d1adfdc7bd3c12321845d28489a
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 69e79e50c28a2f23a2613e3c047c94a369702046
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:36:34 2024 +0200
Lift test env prep one up
commit 72f2f35bd83662ab20a8c00a1ffadea96f6fa234
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:57:03 2024 +0200
wip integration test
commit a133b6de31d435575ff14af41e99e4717bed7a5e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:53:19 2024 +0200
rename
commit 3d1586d9cb5c2ebf0130f3c98bfc57a4e159e705
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 108971ddc8eb919f9bf730d139fdb7351ff75ba7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 27 08:18:09 2024 +0200
add migration
commit 6ef691b8d7457ce98969a5af1b1efc6889279ab9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 16:34:11 2024 +0200
lint
commit a3c90e30854e92c59f04215dfe77264ad2ec5b60
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 13:27:37 2024 +0200
field no longer in use
commit 5ace6816ac593d4a7ab8f7899faf5385e1db1e7a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:50:54 2024 +0200
remove todo - no change required
commit 64be24ed0ce158119d2cdaee0b1244e7ac0367aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:49:08 2024 +0200
Format & remove old todos
commit 30e2582f246b3c2328a6ca83cc1e2ec3a26637c9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:24:54 2024 +0200
mv doc to doc project
commit 2e72b5e05bb4190073ae24824e333421530e1f07
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 4c87b0b3eebb0bb8e3b04f18d005535017e6a3cc
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 a1acc46c8885504776db681173cd60ed61b1cb93
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 21 18:46:48 2024 +0200
make mocked user consistent
commit a62c2afcea0a1efe304460f14ecd648b815cad2c
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue May 21 11:43:15 2024 +0200
Extended integration test
commit 07659a5e7e36c1557930c0a9d926cb2a2f3bd140
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 17 08:15:33 2024 +0200
rename fxct name
commit 86db5f612c889d0d889ccd62b431e08e8a49e225
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 307b27bbaa3c83bf1b3f57efb730b9bf58b378c2
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 a9c00d49da1dbad7bcdb737e591445266bf40cef
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 6457ace318afd4eeee18fb1f46847b2b31828b98
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:26:51 2024 +0200
Added migrations for User and FederatedUser
commit 1b3c4dcd85ab207a8523ede87f7fe586765d4ac4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:06:13 2024 +0200
Extended AP like-repo integration test
commit 94be68725abd40449a8628fa0d7bea95272749aa
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 08fe47d5c8b18d4ea8d2408cdb3c0f092d73a372
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 57a972909495638765c835a50854fda827bbb57f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 14:29:54 2024 +0200
linting
commit e55533d64d5425d161482ec4b1e838c85f8c030b
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 cf9953a6123859cca5c455c740df82271413c11d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:28:31 2024 +0200
linting
commit c3fb34d5b4b3683cd1ce39684f7fdec30c51c551
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:16 2024 +0200
fixed some comments
commit 379b0234eb0a716e70cc48922189745e06a9503b
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:02 2024 +0200
added test cases for federationhost
commit 8f426845994ff2b18d1cc7e4d75bd229daca115a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:24:50 2024 +0200
Renamed field of FederationHost
commit c4f9f8578a665bcf52161d516121c6319fa4b8b8
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:14:04 2024 +0200
Introduced ErrNotValid
commit cb4690e570e1c32084178ec7b75687a3c220ab90
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 13 07:45:37 2024 +0200
linting
commit 3cc48a5c9f0a6d7264622af9ee4f6ac959f54e82
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:44:26 2024 +0200
format
commit 3bf423c97f1f4b4de57879354967f46d46b48086
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:29:49 2024 +0200
assert, that federation-host is present.
commit 8d330fdb5d340c77393ea1e1dc13350de2c86e0b
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 0665c1252e85e63f0a05cd107fa4ce8ab092df12
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 16:25:54 2024 +0200
make start time more flexible
commit c4c03dab4b2adb92f501aa8dd404810b6011ad73
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 8ec570841a5a1123bdf87da43719cc3b47c8b2e0
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 e122df36f815a06fd3166cf45304b2fd2e16eff0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 17:47:35 2024 +0200
prepare for next pr
commit fdfc21a6b8ad5858313896d83b5b8b0ab1921f94
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 07:38:20 2024 +0200
review results
commit 82fe1d3e425877d313e2f06647c0573b9f0bc7e6
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 6 16:01:23 2024 +0200
make fmt
commit a485837b9c9673abd2673bdb4e4934b92b5e0867
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:52:25 2024 +0200
removed unused code
commit c70b8d28a3d1f437f0f5d08e61f6791d681d3e53
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:12:43 2024 +0200
linting
commit 8f298a9901ebd8b402746107ed356e72a04e9904
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 b99d66b5308961b93db3ad538392e7215bf0d5e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 18:04:12 2024 +0200
linting
commit 3a6dfadcd0bfa0120dc38853feade91c2ef81d10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 17:10:16 2024 +0200
linting
commit 510868731d7b3c53bbd879ea9509b04a6b9ab8b6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:58:15 2024 +0200
linting
commit 1a07db1a407f95ee9b1da93ca9553cd3a179cb45
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:35:25 2024 +0200
omit linting next try
commit ca0a53bf5f675cc9fa1f372bec0e812e64aa4936
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat May 4 17:58:54 2024 +0200
omit linting maybe?
commit ee71f86432fbb3e4fb19b1fdfd7831b1424ad033
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 957b1023e96de43e8467e3e589a8501980169b02
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 3 08:00:17 2024 +0200
refactoring: separaate model & module
commit 42837f5dab9e532efe46995fc271fb46f541f117
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu May 2 08:56:36 2024 +0200
fix linting
commit ded7b60d0c5f0395aebedcab0131c291bc10be46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:15 2024 +0200
wix the invalid test
commit 534d692d68e403a24a3dc413c0383eae74eb3d4a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:03 2024 +0200
fix field names
commit 715ff0eb7fb28a3e5a5f505d3d84d4a2c70926d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:23:39 2024 +0200
remove unused & fix wording
commit 87036ec7198510ef3e2d44f7e4da5eec736f722e
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 be6e6eb96a0a8cc5f6349366f80a895ff7d660f3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:02:27 2024 +0200
refactor validation
commit bbec2e29607565ef8efaddc93068787f5ce6aa3a
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 4b2802a6ba9ca57c3749a3bf9633e78c1b66b308
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:23 2024 +0200
internal refactoring
commit 6c7cff4f162c1b2edc09f03528f016611a5b5a1b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:09 2024 +0200
fix NPE
commit e9fed7a488a0cddfeb1e21b9f98202e91692352f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 20:13:37 2024 +0200
found NPE
commit 285e72e4e64b2e3360c52f6a99802333a75ec48d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 19:51:28 2024 +0200
found issue during test
commit a9a30fc2126113517894993dd55e189558e7acd5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 08:40:46 2024 +0200
remove resolved todo & integration test
commit 2f2330c450b8a40086ee0c202e78478ebf864245
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Apr 28 13:52:51 2024 +0200
first integration test
commit 70ae1025973d233fc3362a423a262639fbd7c055
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 df2fd904b3401b57b54bfc0cc0a8e4f40e19a496
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 37ed52cfd99f2a2f669884caa2438529a0b0d057
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 16:19:31 2024 +0200
start add NormalizedFederatedUri to user
commit f687f79ed0f222d42890c7fb05d00d25b19c23b4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 15:48:56 2024 +0200
start add NormalizedFederatedUri to user
commit b878e74f768eb19458f9941fdadb223ca0178b48
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 71141a5ff3af7b60b169ce7b7904b1ca8005f595
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:33:47 2024 +0200
WIP Refactoring and solving (adding) ToDos
commit fb1d0df791308eb84049bbf0ae220990bff65462
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:29:32 2024 +0200
Also check for RepoID to be unique
commit f3e58f29b054c276e4cca55d7401979fc010ec32
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:24:38 2024 +0200
Pass unvalidated input to field
commit feca77b040ca785a9f02b39a2334bf6a83f69b72
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 13:58:55 2024 +0200
Rename for clearer semantics
commit 37420442ded9acaa8be10ab065881d050df6d9d1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 12 13:52:26 2024 +0200
unify copyright comment
commit 94091cc1444341e2ccf8a0acf44da7fbc4f1389e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:38:49 2024 +0200
Don't use TEXT type
commit 6310e75d8d6e51d25fac8bbf27c0d62b91de6d6e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:33:13 2024 +0200
Update todo
commit 075857f030d7497527b3720df3b117982e0af963
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:32:49 2024 +0200
Update docs
commit 19628b84c6ce446ef2eea6a1cc806b8643478665
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:51 2024 +0200
use context
commit 80888b80d6a1e59510347b7797dd07ab85e3afdb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:28 2024 +0200
Fix imports
commit af0d0f7745e4bb2c25bb2fd6168cf4c178b4a619
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 bbcb8e70607dda94a77f3ab4ca3205f6559781e3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 14:21:51 2024 +0200
Bits of format
commit bb83a8d85eaf498f6fac73680fbb496261a0b7e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:58:28 2024 +0200
make fmt
commit 0eb71098a2fef93c3250ad9563e149089cef0334
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:53:56 2024 +0200
make tidy
commit e2c9653b3362b337d75007fa61771bff25f6a586
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:47:26 2024 +0200
Update go version and protobuf deps
commit 2b9977d843bc5717bafac891977118225a699961
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:46:11 2024 +0200
Linting
commit 511ef0bf5b5bcc5e80f694d7395a65724a54590d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:24:22 2024 +0200
Use federated staring func
commit 8579b7f7bba5acee1f95364407b0859cd38f4a1a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:21:57 2024 +0200
Use optional.Some
commit 97343470bc7d105b2e8b710a9865c5410c4d78ca
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 213fc3a97dfc1f4deb41ff49f581866aef04e10b
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 c908455998efe3b64b2f3e8fda4bee3d79fdb171
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Apr 6 10:59:36 2024 +0200
fix multiple federation in one host
commit 765298814c3a4b716beec9b6ba433cbf93643368
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:07:04 2024 +0200
Add ToDo
commit 33c60ebdffb1719f3becc3043fa7d2a203ded318
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:06:57 2024 +0200
Add logging
commit 41f066a1a64c48b23e9f7476c6398678aa8ba155
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:33:08 2024 +0200
add notes for setup
commit 15bb774409aaae1d740ec57aefe88c1c50f0a300
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:05:55 2024 +0200
add relation details
commit 8d78c3edcabdfcc3f65d432a64a5879530329d73
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:12:41 2024 +0200
make fmt
commit b4e6a7ea3f7238abf72b508e4f022bb745be3d9d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:09:40 2024 +0200
make lint-go-fix
commit 92d011f1a597d6e9020d489da7b5a0b276f20930
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:08:02 2024 +0200
fix some linting issues
commit 976d79044fd54b7bb15194105be06646b88d460d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 08:32:37 2024 +0200
show apapiurl in repo settings
commit 73cf1e3901b979d1d4bb9804bc8320a2d5706922
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 8cd89bf4d30a146da30a2e4256e23977d59742cc.
commit 8cd89bf4d30a146da30a2e4256e23977d59742cc
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 2b7a22afb31074966bc3f0dab1dcd8520f422576
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 12:26:33 2024 +0200
renamed FederatedRepo to FollowingRepo
commit daccaed1577c8f9e0d825ddb9c03d0dfa5be5fff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Apr 3 12:08:44 2024 +0200
Rename federatedRepo to followingRepo
commit d240a9bc90265ede91bdfb74c5a1c49c8029d796
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 10:25:40 2024 +0200
trim trailing semicolon
commit 5671566df688b9fb58dc3a9e85a09b76e89b8140
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 09:53:19 2024 +0200
adjust fed repo splitting
commit 7a142c876ecc4de23028aef419953c1c11c1f351
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 5edf7d0e61e7a0297ddb047d1068758e49752b3d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 2 17:33:32 2024 +0200
Also trim whitespaces within the list items
commit 431b4c282955fd55f75d25c4fed0172a97085196
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:38:06 2024 +0200
optimize function
commit 962cd374e2d1d932baf6a5fd260e4f841416b7b8
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:36:04 2024 +0200
delete federated repos when deleting repository
commit 8b56159042e7f906d61a7b31b89737abf41f9d6d
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 9212fb1633550bade7915eec98cf9c832ce582f9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Apr 2 09:03:49 2024 +0200
feedback from discussion
commit b747342672bf71d3336943fbe85e9272d35603b2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 16:08:29 2024 +0100
separate collecting activities from sending them
commit 2ad685fd2ca1c126c2e3ef7e1f55cd4b1ff15efb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 15:41:43 2024 +0100
fix like target
commit e2b11b93bc331a018dd6f7d3f8fca20769a7c458
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 fc8e2b3f8af70b626e2851acfd7e2f3b3e166f48
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 4d5c8b55634ee41b05be0cb8a2f099de7502d068
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 15:00:55 2024 +0100
refactor services
commit 7f19247b0ae6ef37ed57b4686d8f8a67ad57728b
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 14:27:50 2024 +0100
Moved sendLikeActivities to federation_service
commit 1ad7bdf98367c9dc448f5299f81b18e78d3b344c
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 d624ebb7128c953a95ba91aa1b865b911d643730
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 08:13:00 2024 +0100
use doer coming from api
commit 992fbf6898a388142746fe5f4ad7261c7a2003a8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 07:44:22 2024 +0100
comments
commit 259c0202c71714c8564b257fc7e36af59df74119
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:56:32 2024 +0100
fix test & add some review
commit 8eae48761f3ad63b46b58a2e7cbc3fffd5171f10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:26:55 2024 +0100
add some pictures
commit e75bcb2f8953fddcc621dd105852420f39ff3bbc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:02:37 2024 +0100
rename file
commit 97b5e0da9191bbbc5b299bb13fc260ea94614f92
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 911e916a4fe4a426690ca2920623d8f24cd65218
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Mar 27 11:33:00 2024 +0100
Added new blog post
commit a2a5956d7932aedf1ba90d0940f2d63596095759
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 dd37e3a7b80f74726691659e8a7957569c1c7128
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:25:16 2024 +0100
wip
commit a950ba4631c46462d86a138dc676b557641ef8fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:21:44 2024 +0100
prepare state of the month
commit 84f73d9db810fb152dc401a8ac74d96e717be2dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:56:06 2024 +0100
Add ToDo
commit 01e9853161ce3dbbe35a76e173872a024fa73741
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 45cddb4ac7f4a68320519ff88779505704b08e75
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:53:02 2024 +0100
Add logging
commit 436466dcade0f919ff60f12abb41fee0f250abbc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:28 2024 +0100
Check if federation enabled in StarRepo
commit e9bbdc678bdd730c2c13ccd7ad2ec517ca980b7a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:09 2024 +0100
Not using object URL
commit 04f907c8c8cf4e952ed6975338622d8bf8f27906
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:55 2024 +0100
Revert
commit 32d457f9a3af222309f15d9f41f4859399a84b1c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:36 2024 +0100
StarRepo Wrapper
commit 0b8aa3105ce8677590b17b6289412ae84d181829
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:11 2024 +0100
Create object manually
commit b2105de36f64cab816168e82cfa375cde6068081
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 bbe50963079493a5ff7f8e5fba815c3cec756428
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 7f0371056e637fb64f8c115f5aac2aa81a67959b
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 d251fc261168a2e7ceffde77cb763c9c0727a4c0
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Mar 26 08:28:22 2024 +0100
set federatedRepoList into context
commit cf8a30efac4e90b521d73debc6ada6018e5a99ac
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 5b8173f660da8517f66a9f8c36262505d53d8aae
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 26 07:36:09 2024 +0100
do not return invalid result
commit 6d814447d09d6723f5148bb879891544286e8f10
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:52:39 2024 +0100
Use Plural
commit 653ced55965b7ef111fa381030864b7fb509454b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:47:18 2024 +0100
Validate before returning
commit 35d3fc199c46d11090b18836062fca664f11d202
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:35:35 2024 +0100
Rename to StoreFederatedRepo*
commit ca7d1c6f78bce9d9be1d1d5e763aa295fcdfc717
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:30:02 2024 +0100
Localize error messages
commit 828e7a76f6b3a16552cf1d3ba7ad0fcbd1c493a9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 25 09:15:32 2024 +0100
use new table to populate settings
commit a9d18e5327d13bb874c90a06261b78891c616a41
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 17:01:25 2024 +0100
fixed issues, store now works
commit ce317c33cbbe408cb5e6885dd342d2ffd89d9ad4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 15:27:45 2024 +0100
fix context
commit 950dcd959ebc05ef0f0825f787d0890953b7a067
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 20:14:20 2024 +0100
implement storage of federated_repo
commit 6b767684a775485dee0a619a6237abef54fa58c3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:51:20 2024 +0100
Add discussion ToDo
commit 0f27f0a05ba3d89af5e75dba68829ff12d449e10
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:49:29 2024 +0100
Add discussion ToDo
commit 0f9d1c80be7cb169fca6198d42a0927f24161a01
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:42:38 2024 +0100
Implement CreateFederatedRepoList
commit 36c0c1c3c1994ea9f05c3f5725b9c582e84ab37f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:59 2024 +0100
Add DB functionality for federated repos
commit 288dda282c813d1264aa0db0c0b82b3d71bed15c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:36 2024 +0100
Add more ToDos
commit 508b4deac8e4e974bc96678fd5b8e45ac2255d4d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:37:06 2024 +0100
add test & fix compile
commit 4938d38e39ba47ba5bbc338ede7f3a1dafb3680d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:08:54 2024 +0100
more review
commit 9ccad50b055191088684cd594e45557450406f36
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:52:03 2024 +0100
review
commit 7316108d56484a630e343747793a0f8059264bbf
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 7e355986f81edf44ca5a3185da7b90a545a46681
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:32:22 2024 +0100
fix wording
commit 3e6eb255b357e25f040e640542e3f5e578c72c44
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 0c6c43003cbf5a7156d34e501890b799aeccfec0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:35 2024 +0100
Implement getting APAPIURL for repo and user
commit ed256ca540456a577ee40a76c8536e2acbae14f6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:08 2024 +0100
Implement NewForgeLike
commit 2e0584bdf34cae80827d48b38ddb5b4e80de4104
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 84f2aab570e73f69f031757dc74030b9479c4d03
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:38 2024 +0100
Add todo
commit 42a41ce2bca1f3e82d1f288893458b3bf1195c5f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:16 2024 +0100
Remove todo
commit a02ec0363bfc0b4f32e2eb20e32a15a41c7f5aeb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:04 2024 +0100
Add todo
commit e4242dafd931bc64cbb1359010f8641358972e11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:41:11 2024 +0100
Add Function description
commit 689837b63a25d003f8977de01ce0001ed60a26b8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 12:59:59 2024 +0100
Fix typos
commit f327c0da24eb8427532aafaa6a263166b2af9ab9
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 6055b4fca0d90c952591f3d5a519b8f9d84a680d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 11:42:12 2024 +0100
Add todo
commit b4bb41e0e3ebe05337d003a8b034be8312ab4a98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 21 08:25:40 2024 +0100
introduce federated repo
commit 3b30c678e76947547d6997cfafdf57893cb559d2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:22:35 2024 +0100
Remove ToDo
commit b6035c03ae43c331ddae4e76f0fa812adc810c68
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:14:54 2024 +0100
Rephrasing for clearness
commit 2e803e10c0498f304eb07fb4a51f7553035bd77c
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 13bf84e89e590ae1fa2d5ef0a96342d94f5a75e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:12:20 2024 +0100
Implent checking for list of repos
commit 3dda92b52bd1f27f5e7d8810f15a43f7dacca402
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:26:46 2024 +0100
Update Locales to reflect changes
commit ea4471d0dbcf8af062abde4e2c6015cd7c9b2325
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:22:56 2024 +0100
Remove ToDos
commit d1190423bb9ff800c51401090684fc2da6d752a9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:21:17 2024 +0100
Implement single Repo validation and saving POC
commit 1cbd5e33cb2dc09a3676de120118826a4cbca75e
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 584af0486dd8c91707d9f7640bbe85db189c61e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:13:23 2024 +0100
Add Federation specific URL validation
commit 41da150fb3bd2fece58c7045e9d08388a3af3c8a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 19:28:33 2024 +0100
add review comment
commit 84f236a58d1cf0049662e8776ecc5d249a2ed2f8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 15:30:56 2024 +0100
Add more todos
commit 884e38bdab96f0e73fc0074c9ba502bc11928641
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 933727433423230c06106cba88f18e7ba370c0a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:56:12 2024 +0100
Revert to input
commit abc7aa097222d3b746828777ac0f0bf8a32f8d91
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:53:00 2024 +0100
Display data on text area
commit 048ff5da1192ac2076338b7dc4250f3ab7b95b11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:52:14 2024 +0100
Fix typos
commit 4c1d12b2e4a806692c37f18957cba52ce433bc1e
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 09cac163e09285a5d066daf73fab26a8910c17c9
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 a6d45f8b97545fcf4818e7559280707cee7c983a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 11:56:25 2024 +0100
Implement FederationEnabled function for templates
commit 26eb01b509f59b8fa3bb5b4ee310f86a412b304e
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:25:20 2024 +0100
corr var label name
commit 3018769d267377ece757e9dadf999f4698ac9df0
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:05:31 2024 +0100
Federation settigs :: set label name for internationalisation
commit 6901ae4b999ba489a227866c7a0bf6d94a39c29a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 08:29:57 2024 +0100
wip: found backend for settings update
commit 9dcdf8d828508146f4c9ada70ac692f3dcd212d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 16 12:46:43 2024 +0100
Locales, field & action
commit fdcff3cc43771175f396992ea3b0e64d46eb6805
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 8 18:25:37 2024 +0100
found the template for frontend
commit 93d7de147b5c263f8f9065eb4efc59c84dc98bed
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:57:33 2024 +0100
adjust to new dev-model
commit e41fa653d9d2e6badab93f53e04c0ff5db9743f5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:43:16 2024 +0100
fix en name of score :-)
commit 0e73dfccbb7ea917f0e7090c48ae9f97ad780a70
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 e2ca63ca38e695f74b61b454c7ba13939321f897
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 db2f896264d59c3c481f12c7552fbd1dc68ba22b
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 086c66b06a565bcc6ba5fb97bb6092d7bea1dfd0
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:07:15 2024 +0100
make tidy
commit 2e41fe0a466bb93006655da338843a9227f2ea59
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:00:47 2024 +0100
fix import
commit d65cd5a17a73a95db96504d53d6d4d61b8f616f9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:55:00 2024 +0100
ActorID gets source type from NodeInfo
commit 181d743a8a521c43a26b4135c4bef41057a76aff
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:29 2024 +0100
update copyright
commit 9662aee375e358b9531c30f17fb6cb453046a7a9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:16 2024 +0100
reflect hard fork
commit 6e6813a88bac34d5adbe0aeccaa81ef2fed0400a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 18:17:40 2024 +0100
make operatorid unique
commit 6d17f459867ac3d6a0b0945f24b5255ecbe3a2e7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:56:17 2024 +0100
fix misspell
commit eecb9b8040386747c2588ca9ddfe10f2800a8567
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:46:27 2024 +0100
fmt fix
commit 664144930ec16f8374829f7cb8a0813679bc90c3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:10:59 2024 +0100
result of lint-fix
commit 5fa62287d648b09ed3a7886dc929a08de8fa345c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:00:21 2024 +0100
undo rebase conflicts
commit 3ef57385ec32ac63eb8d1e0e80a64de1c2cfb83f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:44:03 2024 +0100
fix linting
commit 3b244d673b18157b66192e7ef4245cd25b7a03aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:24:51 2024 +0100
small fixes
commit ac82486a95a583e6cd190e4222dadedf50a71663
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:31:58 2024 +0100
This months blog
commit 8917bfca0c84cbb57ea64ec732ed95fb4a8125c4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:12:49 2024 +0100
add a arch federation overview
commit 94937abc043b4e20942fffa22e4431ca1e19f1d9
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 b2cc848e7df5b512b6b2dfd0b5b6914220b9d890
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:31:02 2024 +0100
clean up aliases
commit e733809ef2c131847f8c40aed9fbd14570a55526
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:16:37 2024 +0100
symetric handling for value/reference
commit d2d5e84977c209bc0e42120e7bc326881569372d
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 91f7541addd573b3608cc36c63f03d994734bde7
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 66bc7a9a0c4650727b2d8fc36619c028511f21de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 11:09:55 2024 +0100
Search federatedUser instead of loginName
commit e44be722513aaa1695b97b0b88898959abfbd888
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 09:56:49 2024 +0100
Add tx around user creation
commit edf7f61b8325f98c26fad42e7201cb8de76e187a
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 e18046776049ab83b2340176ac781831c14f609f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 16:42:40 2024 +0100
added user creation from ap
commit a702da69ccf59fc91c94730dbcc25dfa17f33e2b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 16:12:23 2024 +0100
added test for federated user
commit 67f3f66be481afbd6b85baef1cfb9249d3b0be60
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:37:48 2024 +0100
Created FederatedUser
commit e477181e23af05bd1ecfd9704f937e7dbad518de
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:03:21 2024 +0100
fix typos
commit a1ca7e958af8eddc51255f41823e4ac58da6e686
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 5a7f6f15a6766447e6a270779369942c344d9a98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 14:30:17 2024 +0100
ensure federation info fqdn to lowercase
commit e05c810823baece8ccc0b9758d759d3709abdd3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 13:52:25 2024 +0100
document usermapping chosen
commit e255f737311425fd3de22dc58472e900b431b8e1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 13:30:09 2024 +0100
make class diagram more accurate
commit 7db83688db1852467381cfedd00383792d102c9e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 12:45:33 2024 +0100
updated rebase process
commit ed99dfa99370f903447fa29cb05d1722ea511593
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 2 17:25:02 2024 +0100
new threats thx to gusted
commit 56660e3a0bf21c548e13210538da54ebdcc6c609
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 1 15:48:56 2024 +0100
add aspect resulting from our discussion
commit b02b8a307c7c1ff0a0bee3942ea8b6c9f63c6fe0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:48:44 2024 +0100
fix wording
commit c45e726383d73fcfc8dfd302fcd4de3357b54318
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:43:56 2024 +0100
fix wording
commit 5ef823e3afb1ee24d111de6e37077c8f7d534117
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 27 15:03:37 2024 +0100
adjust urls to changed username
commit a08e435a1e096a89f0f4867aa2b49343421c30ba
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 17:16:26 2024 +0100
updated rebase instructions
commit 6b14d1a5627d38572e45c49b5779db8105627e13
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 16:13:55 2024 +0100
updated rebase instructions
commit 49b014f28f39ac230633d77ee09db76602f8a523
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:33:59 2024 +0100
add reply attack to blog
commit c58a995fb24bbffa5545e751c106b29f37efb6d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:26:16 2024 +0100
refactor FederationInfo -> FederationHost
commit e926ea16e276b6ca7650711165b4084679d1137f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:06:56 2024 +0100
improve english ..
commit e1f27a950cc5b8102c51d247dfd78f9a45270202
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:01:22 2024 +0100
improve english ..
commit 2c55c0252fa4c240f3cf7595aefadc5c789bc2f6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:48:36 2024 +0100
prepare discussion
commit 2b5360a000b2a66ed42fb5ba76eeb9494c3e6409
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:15 2024 +0100
work on adr
commit a6b7cc8e7004691c1bc6250ee955501daaf8afe8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:02 2024 +0100
update needed modules
commit 0453598e3d800b6ac25247b57fb1f59dff6f2ff2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:36 2024 +0100
add some todos
commit 48c6d62e47b84ae6408fc59b17780c84f12b7dda
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:27 2024 +0100
blog: newest on top
commit c6981cdbf697c90e2d43d25522989a8a6b602df6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 08:28:12 2024 +0100
proposals for federatedPerson Mapping
commit e2291fec1e9af8efadd346da845cbc8a1ac3e9e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:40 2024 +0100
think about federated persons
commit 5a88eef78e63bc0222a04bf3f7dd23f4e69a2704
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:26 2024 +0100
Propose the current solution
commit 0ddc2db46ad04e610e27d4ddd6717c0dbfe49ad1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 14:53:00 2024 +0100
mitigate Block by future StartTime
commit 1b35bd2911faf3cb2a5ccad599db90d4dcd2e945
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 13:03:51 2024 +0100
lint fix
commit f25eab35fcc880d387b27cd0316d956be6350f15
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:16:43 2024 +0100
Update for new implementation
commit c4eb763f4a5ff1b2beeb6fda8d4c797e3a2ec1d0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:06:40 2024 +0100
lint fix
commit 9a9ac337661b8d39a206d48f3b599cfa913b9cd2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:22:49 2024 +0100
lint fix
commit ca5eaa8c6b53031c9ca7f124788f2d2bb09ac70d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:08:12 2024 +0100
introduce FI Factory
commit dabd773f6b0dcbdcf9dfa6e159d5c25c5850176b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 14:17:11 2024 +0100
Fix error handling & add timestamp check
commit 40ec0490139db1c983291098350ad7dbe9ed253c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 18:12:22 2024 +0100
add the next todo
commit 7d30d14c76af74f22b47f4d07224d2a09b539bde
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:49:07 2024 +0100
breaking struct adjustment
commit 1f989f2ecd523084fd49b04a9ba9db5387c35fdb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:27:52 2024 +0100
Added FederationInfo Create function
commit 380d3db0bf83ef10565e4a9087ac37d458f03675
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 17:00:17 2024 +0100
integrate federation info in api call
commit 52400f7978a9e1eff8284eaf203d950a1e1ee892
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 16:12:54 2024 +0100
Added FederationInfo get methods for repository
commit bbccc24ed1ea2c3e5f6bea1970649ac8df45daf6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 15:34:34 2024 +0100
test federationinfo validation
commit 9c37272ee9493eba835809f21384da51f97b8dd1
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 14:57:22 2024 +0100
make validateNotEmpty more generic
commit c67be3b6681df86d076ce59f176a70c64289dbd0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:35:43 2024 +0100
start work on federationinfo
commit 8610d94af8cb9015c5b93d382dd1afcaf201574f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:33:52 2024 +0100
start work on federationinfo
commit 12558d62c86d9abd3c4125d5b1b858156b19b92a
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:43:14 2024 +0100
Remove MaxConnsPerHost limit for outgoing connections
commit 87bfa79f71593975a1fa8318aaf519739f479f00
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:29:00 2024 +0100
Configure client against DOS
commit ecf391dcbfbccc4bf67ed15e33c555f20ca78928
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 9 09:14:52 2024 +0100
add some user creation unittests
commit de2569618c51046464e22fe7c6a3eb2a80062413
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 8 18:21:55 2024 +0100
fix: wmail should start with char
commit f0af660cf9b58d4831e3fa43dc982df2b162800a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 18:19:46 2024 +0100
give names to threats
commit a8b132da80bda85948164d0bb993ef6acd865b22
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:43:18 2024 +0100
provide the next testing
commit 2d98b226046109067ef8ecb7ce0ef940e507f92c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:11:20 2024 +0100
blog the next test release
commit 0fac86a384565e4276904b386a7ddd23b199fbdd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 16:42:57 2024 +0100
update to new star activity
commit 42eab2d3046c36c0b52afc9b47e7be669c9e51e5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 12:03:36 2024 +0100
add test-release-branch
commit 680213b4799a05f8f5ac1189a5bc086abce192fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:43:52 2024 +0100
translate scoring
commit 1fc1dda59d6e6645eaf9d9079496acd21fb06894
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:40:35 2024 +0100
Fix wording
commit b978642da07811ed9376f259f2850d6d6185b5c6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:34:32 2024 +0100
improve sequence
commit fe9f26305f7b90173457adf5c01ffe1ec77da363
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:25:43 2024 +0100
update ThreatAnalysis for Like Aktivity
commit 6e467390901f6f7709333e558e156ab1ef79613c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:04:46 2024 +0100
validate person
commit 0505baab2b93be6038d496518826799afb943ede
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:52:41 2024 +0100
ad validation for like activity
commit 3ab2d9a449cdd4430b0791b21ac9669fd2313bbc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:29:12 2024 +0100
rename star -> ForgeLike
commit 4473fb788ae59eb7c42f920d3038db2dce30e5b7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:10:24 2024 +0100
start refactoring star->like
commit 38438b592f3223c2b22e594dee5c3995bec1ea4f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 18:09:27 2023 +0100
rebase conflicts to fix
commit f673dd1ca763daaa0f8d16ae1e75615ff4a1bc11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 16:31:52 2023 +0100
source no longer needed
commit 084eed82a4e3a4d36c2c6a6f14b169aacaa735a0
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 b2a9b530419a67912168f4314e5d6cb147734100
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 8116214727879ca4316ae2cba9675d7170f021f1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:45 2023 +0100
introduce nodeinfo
commit 587bd07372af9c76978823ed4db97a193d8302a2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:31 2023 +0100
mv more fkt to http-client
commit 310d740cee06047cca2ccac50280819cef190640
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Dec 29 12:10:07 2023 +0100
Start NodeInfo implementation
commit 3c2493902d09416370b4597241b6fc2f1b89eb33
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 09:43:10 2023 +0100
adjust to ugly linting
commit e704e5adccdeb8f50b205376166434e2206ebb11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 15:10:21 2023 +0100
adjust to ugly linting
commit 1e40b814a1c4b3e7ed67efb893e116e70892c0ab
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 15:00:42 2023 +0100
Linting
commit 8585edc47ab5a73318775d2d64ad4d2fe2b465dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 14:52:10 2023 +0100
Linting
commit 7d78fb8adcccc02b84e23ff3948b57493fb9eb28
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:47:34 2023 +0100
adjust to ugly linting
commit a64ce2feb1e612797a0c2beeedc9bcb4cc6909fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:20:30 2023 +0100
removed resolved todos
commit 2e031a976319c177e107c717dbb442a970674e39
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:44:45 2023 +0100
WIP Generic IsValid for *Id structs
commit e69e5df08975dd2dc838efb93eaad71a9d0985d2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:42:07 2023 +0100
Assume validated url.URL for NewActorID
commit 6e4467d49db721ad1a9866fcd10522a43b99883a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 11:48:24 2023 +0100
experiment on generalization
commit 75cc5b900db83dec982896e8b794fda3433899a3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 10:19:01 2023 +0100
Add review todo
commit 1dd3084f6654d4894bea521bdb69b8476431d0cf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 15:01:49 2023 +0100
Split test according to actor.go
commit 48cfb521d12193f552079f394cdef35f1911212f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:42 2023 +0100
Add suffix checking helper
commit c887bddb72204430718e47aeef92623a4921dc58
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:23 2023 +0100
Attempt generalization of Id creation
commit 15775ad891755794d0077356ed8780374e3c52e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:21:47 2023 +0100
Fix import
commit 715afb24681707b34f1235b4f4b734b03c60b7d5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 09:30:07 2023 +0100
Add newlines for readability
commit fff4c3f9fc775199591c5acce809b7dd9ce2d76c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 20:12:31 2023 +0100
fix typo
commit 5317832fef9b1af824c60724785627922b9ff347
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 433a38699ab2ecfcdd12dd3c54c0f65d45ce7396
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 12:55:28 2023 +0100
improve test description
commit 65e3f1d0ed03b296ab6380a00c332e102b8b6162
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 4d1492831ddf2aa352bada98f45ec90a45f81c59
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:30:22 2023 +0100
Move char_limiter to utils and rename
commit afc9acd9251f62763cd56c888d57ebe9a88031f2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:23:13 2023 +0100
Limit number of characters on body log
commit 3363b3bf0c374d04e3f8317bebd52fb80374be14
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:22:03 2023 +0100
Validate response before further processing
commit 2f4b1a5cd4eb7a6281b48713a3d31f270ceb76ef
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:20:41 2023 +0100
Use id of existing repo for convenience
commit ff146a9430ab59774b63bf8728f7f1dc320f0bb8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 11:27:44 2023 +0100
Add review todos
commit 071b47b8d0a710712e6c106decd33bf7f0f42813
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 0378b2dc7d546ce3707ab245073221b9e1128a82
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:55:30 2023 +0100
Add questions for review discussion
commit 8a8b6821bacef4c0bffc0e39b8e49e630ffc8fe9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 11:32:57 2023 +0100
Fix bash code block
commit 3327fbc39adcb09934afe33e0529271708fc5740
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:19:35 2023 +0100
Fix typos, small rewordings
commit bd640a70994458409665e8ec0be89387a7fbe7a3
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 70fbfd6cf3c8239e16bec5eb3368738366d344e5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 19 08:36:02 2023 +0100
reflect the discussion with kik
commit f636de050aaed3967adc512e719090e610b9f24c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:47:39 2023 +0100
some improvements
commit bc7515fa317ae68ff3cfd1650ec4ad62a8c98114
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:45:14 2023 +0100
some improvements
commit f9bbb91f114a26e027006c2738a03ebc4385a3b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:38:31 2023 +0100
expose instance for tests
commit 1704ac5bc2ca98bbc36bee695ec2f9122a5389cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 16:02:50 2023 +0100
fix most of the tests
commit 9e6c45f87d7956e75b8fefbc3829806db7907c44
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 15:37:00 2023 +0100
make flows more precise
commit e1d7db178cb1aaeae9194eb29e62a24ba6ebc5e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 14:45:20 2023 +0100
unify logging & minor improvements
commit 42854c900333f8ad66689436f793899768900689
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:49:23 2023 +0100
remove global actionUser
commit a0c008b880ff92a39c5964b6cf8567f658dcd759
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:44:11 2023 +0100
cleand up user creation from ap
commit 6de8fba14d85121fff249b080c2cca30d9db7289
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:53 2023 +0100
minor refactorings
commit 44e10ed65a116aac0c4150df03e0cedb5445a8e3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:37 2023 +0100
get wo body
commit c2a42587d2f338c85d341b40b0bc6206bd4adb23
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 b27460d3fe225ca0f73211bc307023d6fb24377b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 12 11:04:03 2023 +0100
minor refactorings & reviews
commit e893618cdcb07d90aa84c4f4f19fa83ab5b0913d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Dec 11 08:14:18 2023 +0100
add more threats
commit 9633a2005a8e64e48778d505f88ab74cd373e90f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:23:48 2023 +0100
add a sql injection threat
commit bad8e04c3c7a8bf7036c5db480352f79a18b0cbf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:11:38 2023 +0100
cleanup & minor refactorings
commit 3172eb69d2e5e1596be675e72b42deab2e7763b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 18:30:47 2023 +0100
introduce RepositoryId
commit 1fe35e14a57dad5d1cdba945ff627ce844b9ae46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:53:40 2023 +0100
mv our actor code to forgefed
commit abdf56dde1ed2402f5911add9d0888be4d3b432f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:27:29 2023 +0100
move forgefed to models
commit 0b2cf2a55bfabd63d873f22d8aa1ee8512309438
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:26:49 2023 +0100
remov unused experiments
commit 184388015da525d50dec8425a2e58af4ea8a5843
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:51:54 2023 +0100
added more tests
commit b5a467e94d2312b6971cde91b0f6b4c1e2fd6402
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:37:26 2023 +0100
remove unused & implement webfinger
commit 73a38ea0d1c2423fb67579071a703e8eeda09e20
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:52:09 2023 +0100
use new factory function
commit e8371ca94c1a34dc9eb68b573f215bec2ad23ae2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:43:49 2023 +0100
ActorId -> PersonId
commit 3151c8fe81a3fe97935319371e0abdf60d7c144d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:41:22 2023 +0100
make validate more compact
commit be4d3544aea5fa4a9d73b9ef2a58c1d54b2cb629
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:33:26 2023 +0100
Refactor ActorID -> ActorId
commit 7c86f13728763d66700c2b24b5fdb686d2edb548
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:09:22 2023 +0100
make route more compact
commit afcc7f0def5e8088e54a18ee9d5f37d8f1730f3f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:54 2023 +0100
factory instead of parse & validate
commit 6fef54ed1c73d53655fb9fefd9f16d36db7c6689
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:16 2023 +0100
there is a validation module
commit a10a9141f820199c00750e1c9765f0a981b74901
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 15:44:00 2023 +0100
Remove useless call to repo, add todos
commit 3c515c2614350554199701924be4e30688c9e997
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 11:54:07 2023 +0100
Add review todos
commit 22d71e6b30cf1efd540e29276fd53d5e73f03890
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:53:37 2023 +0100
Update ToDo
commit afe659f9f48cdc34f51edb92fc65ba65763bc56c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:54:07 2023 +0100
Implement 5s waiting
commit 745598bba4ea70743fb284e0d6886a58777729fa
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:24:01 2023 +0100
Implement starring
commit 976256bf3d8ea4e9fccabe2e0c9011e582ad1106
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 75ee273f40efa916977ac65964c2ecf1d3db0415
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 7f4667696ff48050eeb05eb0dafe352bfbed57d6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:17:51 2023 +0100
Cleanup imports
commit 6ad52a6d67d429577f58bbbb1bfb763ac0216b2a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:42 2023 +0100
Update tests
commit 25d34e0c146a6f71f66be52d96fb7f10ce3b8ccf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:28 2023 +0100
Check for empty path in IRI
commit f84e0b27e1a71a4fc0606d81ca163a69935d4f98
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:45:24 2023 +0100
Use ValidateAndParseIRI, pass this to ParseActorID
commit fa1acd1ebb895032705572b513e9530cb511aae1
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 4d3ab4dda2e628c63b54ffec02604f8d7190eae0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:47 2023 +0100
Update Validate()
commit 39d4c8dd2df7d6396ec03da626176ed8fadc2dd5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:27 2023 +0100
Generalize validate_is_not_empty
commit 085db0c1279ffdfe3c4f940aca8520fe57c67f71
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:58 2023 +0100
Remove todo
commit 54ef78034edeb88dddeef4b27528c72077d2ac5e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:03 2023 +0100
Don't parse received repoID
commit e3defaa212192df79af7d1be10cfa4983295d982
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 bdddde8b68c5893dd4caefc8a30703b26fa7327f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:42:05 2023 +0100
Fix erroneous param and deprecated --name
commit 28a290da10f029018a359eb9c4133deca54e7c04
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 6 18:32:26 2023 +0100
reviewed current work
commit 02dc8901af20637c476e04778403c2fad3a31b90
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:50 2023 +0100
Fix tests
commit 68cd621053350651464c907901e246f49aa9c4dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:39 2023 +0100
Test for empty string
commit d27cac5bae24f3cfbf4f1b4dce178dbf2717e4a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:56:26 2023 +0100
Move federated user creation to func
commit 01506f9836c612c0fef758d02dedfeacf1c5db15
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:50:38 2023 +0100
Clearer description
commit 77b6402e7791921f735e2fbb6efae4a7e267d0b2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:58 2023 +0100
Add missing error treatment
commit 946e5cf34cc557106492b7b12c750ef57928860d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:14 2023 +0100
Remove typo in func
commit c0f1681fa3a939be6fcf789c06687b837a673803
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:16:01 2023 +0100
Allow parsing of repository-id too
commit 4f25e5057a8db1a7b0b23b88ed739ca9c320e06f
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 2fb893843bfaa4f0cfb2d42a4d7d2d38e8c718ba
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:13:53 2023 +0100
Move getting person to own function
commit 6d143e74cfd4f1201cc7438758fff9956f08f15f
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 52e950a492a39f15894510c8917cbb9fc7f1983b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 13:06:30 2023 +0100
Check the path for empty strings
commit 65f7124c67898ce34c8975f8544968f2690b5508
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 27c9db1027a3d11d7084df5ebc5e4fb8903bd231
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 11:24:42 2023 +0100
Better function descriptions
commit 9b5d8bbedae035047cec50776f98bd933f76ce76
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 ed1af14cebe53cbc81b5ce2c7a4e4970565714ff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:54:03 2023 +0100
Panic on error, use correct function names
commit 9dcbe0177e99766b9292d886072547f53ba6d79a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:53:10 2023 +0100
Rename targe to remoteStargazer
commit de9e4dea61a09197fdaacbbd49bdc8d5db961024
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:52:33 2023 +0100
Update todos, remove comments
commit 68cc74d13974cbc820cc117840351928042add80
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:50:46 2023 +0100
Use actionsUser for creating http client
commit d65e5aa70e148a8df3f0e2c95a7c8ec36a874569
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:49:27 2023 +0100
Move helper functions to top
commit 1c145d9d6899afcb80245aebf492eece5fa7c44d
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 12:19:22 2023 +0100
WIP: fit generateUUIDMail for testing purposes
commit 11e93784fea51d0459c2f87ea71604161ba388df
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:46:11 2023 +0100
WIP: log Info User created
commit a20f535211ecf168ef7bc65d721515741e7ce3b3
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:38:36 2023 +0100
WIP: pwdgen, username
commit 85e09a7ada86e849a1f37213c7aeb56527a67371
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 10:37:51 2023 +0100
WIP: Generate User if not exists
commit 94880d64f4d10db439abad6b79501f6481cc72cf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 5 09:26:03 2023 +0100
higlight the need for id normalization
commit 231bdb65b83944a564359367798740220b46e629
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 1 17:06:39 2023 +0100
searching for the local person
commit edd7fb77fd70cad1268cd8a92c03573515926d3f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 15:07:13 2023 +0100
WIP create user if not exists
commit 159f3dc3aa22628edc117ada6507dc4097ab3b65
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 30 17:41:08 2023 +0100
describe the current state
commit 41e12d09ef7ca79803347273d3ed062605b9744c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 11:56:12 2023 +0100
WIP create User from person
commit c8456d57ff757afaf77478e71cf140740fe520d3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:10:26 2023 +0100
Add thoughts on user creation
commit c61be31c72a6f6707657f142bb9b66fb3e72852d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:04:26 2023 +0100
Remove redundant person implementation
commit 22ba03ae4dc01802fcfebd2b4ef2f65311e2cbad
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:01:20 2023 +0100
Don't use redundant implementation of person
commit b00b5fa7aff82c419ff9a1fcd46679f36fa97981
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:00:39 2023 +0100
Add some thoughts on repo testing
commit eab016e8968c8a3cf1d3caf2508ea803a3c1c9dd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 29 09:21:54 2023 +0100
add threat analyses
commit a8d5e7ba7770fca8a8a7c37d5da8bf1ffd3a8c0b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:45:04 2023 +0100
Fix typos and format
commit d43c4ba739c7e733be40df59590d328c97cbbc59
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:34:02 2023 +0100
Use person generation
commit 9f016d36731d3b1aa972ce5529f920aba7680512
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:33:22 2023 +0100
Move to extra var
commit 7071117864bc6e1ff385fd30cbc89649d55a34e6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:32:15 2023 +0100
Implement Person creation
commit fde8de4f906b90d766f66d925409134c69ff8877
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:26:35 2023 +0100
Rename to ParseActorIDFromStarActivity
commit 2c4089ba1dece994afc0fd0149cce773f7ea4243
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:24:59 2023 +0100
Add star json with links to lokalhost
commit ede86df6858a1c94b75e43af822828573c1a4f1f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 11:46:24 2023 +0100
Remove todo
commit 7529b9da91e1797b580687a471e36f5376ba3ff3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:59 2023 +0100
Note ToDos for setting up useful tests
commit e60d89cb677f1b32d6fbd5aa10f7af64e19baf93
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:34 2023 +0100
Use correct target for get request
commit 0388240039925b374eb8d1a6f88192dd5aca9865
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:45 2023 +0100
WIP Use non generated HTTP client
commit 4b490802d70b1898928d0998ae7021f5881a52d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:07 2023 +0100
Test creation of client only
commit 61afc65377dc06b5a6ea494fc46881898d760d47
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:53 2023 +0100
Implement Get method on Client struct
commit 56d11bbff479c525b4c594734d2f041c9320ffdd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:18 2023 +0100
Don't hardcode method in NewRequest function
commit 8a5333128394080e3ae9a54b7267efe98c6cd4c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 14:01:32 2023 +0100
Add ToDo
commit 93d79646de1f29ada36f64b6d6d9dfa4db4d4650
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:56:53 2023 +0100
Fix api url
commit 9568eab62af65c75f84494d4a3f65b1a74b5f1c7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:23:03 2023 +0100
Fix tests
commit 6284355e1e0f226b478773aa572907ae49ca579d
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 43ac3ddca9f4b7ef672837ba253c4d6b73fe34cf
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 566b3bc4594bfbcb457a844fdd6163cbad2838c6
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 3a938b6c3f2ae936e41b3b53f03bc51da152f01c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:48:14 2023 +0100
Use and validate source in ActorID struct
commit 546ce5033720ab2c9cf1a9bd70f5cb0e678ee548
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:40:12 2023 +0100
Use PanicIfInvalid in repository.go
commit 9566e9bc5d3b518d5a02a2b74639d5cec4beb568
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:38:01 2023 +0100
Change tests to use IsValid method
commit fccf5c37cad5e2b57d6f0028fc3c38a3e488c0b5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:37:29 2023 +0100
Add IsValid and PanicIfInvalid methods for ActorID
commit 8300d3fbded450a19806fb110108f5b61e928242
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 09:55:47 2023 +0100
Add ToDos from code review
commit 34c511ae98a5702258f77e15ca7a539001d849cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:58 2023 +0100
Use data from actor, improve formatting
commit aee2ee25961a013d8440cd7267938f2fb51cff9d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:22 2023 +0100
Also log error on person creation
commit 91baf2be32471779ffbf42016c519e694c48a18e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:03:24 2023 +0100
Add get functions for userId and HostAndPort
commit 92c089a4e29730a9842e22ff2c69fe069df601d4
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 863b340622ffd1283eb05a02ee0731ab2888ff54
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 8657f70960412922676247b1de049f2ab7cbe98e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:50:32 2023 +0100
Add todo
commit 5efce01f6fd0c4f617553aba9111f391ad74d661
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:17:35 2023 +0100
Make test messages consistent
commit ad8adc880fa60f1c2626db330ec4bb5a8ed02c9d
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 62eae6564f68bfceec42652edfddda05d8e04276
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:40:03 2023 +0100
Fix bug in validation
commit d205c50a4395e648a67e5c067b3cc671d4386e1b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:08:14 2023 +0100
Implement generic validation on ActorID
commit 7b5d13a625779c3db035ca80d0da706b46357568
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:27:44 2023 +0100
Split check for schema and host
commit 3d2b5115ad1c904ee727f7d9cd62469fdf3884cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:25:43 2023 +0100
Implement and use Validatable interface
commit 235ed7cd1e665b2ece8c8fc1790e16b069e1984f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 13:28:13 2023 +0100
Rename to actorID
commit 5e111f14ef54d3d7fda874129389c1c340dc35b1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:36 2023 +0100
use the swagger-api
commit 109dbd7d7566d6fc4fa69252c33892bd6dbe7224
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:22 2023 +0100
swager generated api
commit 07bd30cf2011b68e67f1ca68c7c1d6e7870a37c8
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 604f0a2477b7c7e71162e54aa5e9fbb82c7def63
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:19:08 2023 +0100
swagger client generation
commit 9e74de829ecd81f685a11a2758c43244d24a17b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 13:38:20 2023 +0100
swagger client generation
commit bc1ff23b23e582dbb1c5ad1f5839c1866312ae38
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:49:01 2023 +0100
swagger client generation
commit d81647b36ef01ded6b1201c70b229cc2b18512e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:37:47 2023 +0100
wip: swagger client generation
commit a954c9764f63aa1a08e26a542a8b1dc630c3a4c3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:28 2023 +0100
wip: swagger client generation
commit fbff67f11a01d706a60eae4cbb813a32c90a5803
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:04 2023 +0100
add some more todos
commit 5c998a5c46e9732295b54c5ae5cf7fc5bcbed714
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 08:22:27 2023 +0100
add comment
commit 5729cee3e55f03eadbbb9d5361dacd695ec0268a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:04:50 2023 +0100
Move test to model/activitypub
commit 7193c0bd9b037837aea2583dce3f53cc5516a36a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:03:05 2023 +0100
WIP test for parsing the actor
commit 0c367070aff6694290f9f3155068f7f0f520d521
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:06:41 2023 +0100
Call validate star
commit b1f370657558167970a6d87edcc5c2cdd9d7a4c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:59 2023 +0100
Introduce validation against source
commit 78fc75135fd5287b35701349b4d846eb3ffd578e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:20 2023 +0100
Rename to ActorData
commit 09058c13c54bc63d781e4508c37f0bfe8557e801
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:53:54 2023 +0100
Rename to actor
commit 91dcd59e68ed9264e356df1283534ef55897ec11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:50:01 2023 +0100
Import parser from model and call validation
commit 273ca49e22e1d2938e30edfc7688490a6d976807
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 e44321221ec2355edb43442d2f260ae5a32c2610
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 15:07:23 2023 +0100
WIP: Add test for parser
commit ad6597667719c9a0db4e65d62aae73666c4a0a2b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 14:27:47 2023 +0100
Reorder functions
commit d52bb4bf8fc564d99baa1e9f3ee966691bf800f3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:31:16 2023 +0100
Remove newline from error string
commit b869d91dc13bacd6bd22eb0e0aa6f9738e3fb163
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:29:17 2023 +0100
Parse Actor URL
commit 7541251d635cfc7fa99bf0ed38c1fc0fd1b6d8c2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:28:26 2023 +0100
Correct API urls
commit 9fa8d19cf40fcf12e8e79d14e30b021b35453eff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:10:31 2023 +0100
Fix typo
commit d10c1094d9d3fae550874b2b5aeec773415c2c22
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:23:03 2023 +0100
add some pseudocode
commit ab928910915e9e94b562ba4bae18b454beadb447
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:59:55 2023 +0100
Use actor
commit b085ce37a6acc4ed25e6929c3a765ca5f8a92b69
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:53:02 2023 +0100
Review
commit d7abff31f63d4e98b0b173a28151667beb3aa5c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:13 2023 +0100
Add ToDos
commit d2b464582f6511c67d69fa57e05ef1b9996aad8e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:00 2023 +0100
Add ToDo
commit e18e90f8dfa03343fb457e835c9395e514bb3122
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:28:38 2023 +0100
Add fieldname and type
commit f48b4d1f556b96d0aaed9bf3a25ccd6f663c1488
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:27:32 2023 +0100
Get Activity field from star
commit e8013250b869fdca44d30b1187bac1ace8cdaea8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:56:16 2023 +0100
Add question
commit 7790e98f47a3f1ab8088ad5573604b1ff47fe4c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:53:47 2023 +0100
Remove unused funcs and structs
commit 51cb9aded0b44c3af6a3225f88adac6122c6fdad
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:08:17 2023 +0100
generate ap-person client
commit 14c74f27cbeec6ea3431b4efe1f962da9cf30cb0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 17:00:08 2023 +0100
tests are now working
commit d28ea1a30b0dc8d5f3c2baf5a79bdae3dd90c400
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:43:44 2023 +0100
Start implementing UnmarshalJSON for Star
commit 43014ca473cfc5ca201fa917d00ddc8dee06a313
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:08:15 2023 +0100
Implement MarshallJSON for Star activity
commit a1885a576735e61bc2602198267dd7d1ccc7f34c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 15:13:26 2023 +0100
star: test first
commit 1044e44ee57910698a18f7bd10e9de2151751c42
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:51:33 2023 +0100
we got a parsed actor
commit b08580280aaafc7333cb342bdcf318bd1d0547df
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:36 2023 +0100
np in case of unauthenticated user
commit 6c1ec0545821d289b9b9a12b084f11fb680e6efa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:00 2023 +0100
extract the relevant app.ini parts
commit 460e2fb6444e43f6acc91ba16b4bd10917ddd89b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:10:23 2023 +0100
prepare next steps
commit 5b01517c1275273218c72a6764b313fc9ae73eec
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:26:13 2023 +0100
Get data from form
commit e846e8225b789e35d0edf7c121daf8f2bd23e97a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:06:17 2023 +0100
Update dev-notes
commit a1e9783cec30e7c56a36cd4aa0f42fa7db3096ca
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:59:51 2023 +0100
expose star activity to swagger
commit d7dfdca8b9976fd76caf43d00df14facce461e11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 15:38:55 2023 +0100
WIP Add star to swagger
commit 17dfc7bdc1b8d301d753c97ed13d2060b5dd7a15
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 14:24:19 2023 +0100
Clearer wording, fix typos
commit 07cf963af3c0f23135f79157458a0042a1767454
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:54:17 2023 +0100
expose star activity to swagger
commit dc1a82bf4cfe17cb7847270f59e185879a3d4c9c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 8 08:56:22 2023 +0100
use star as swagger model
commit 18f4c514ec9c1704d27cfbb969290c22146623c9
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 46fb4fec8ff81cd503204ab20d8e6f0d86866c0d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Nov 7 09:30:32 2023 +0100
add star activity & bind to swagger
commit ff5a4405fd0fc6ba6a9562cafabefdc495ae6a88
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:48 2023 +0100
introduce repo from exosy
commit 157effdd8f74fddea198b18a0d8cefd8d06a1f02
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:24 2023 +0100
adjust star activity example
commit a0efbf7d72a003e6c6f12a85e753abe8473e9c24
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:27:41 2023 +0100
improve git-setup-doc
commit 1f80e99857b1ba9650439eb129150151f393c756
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:12:09 2023 +0100
improve git-setup-doc
commit cde603dd0ee8f6fc85d153f37091b17e3ca6bca8
Author: Mirco <mirco.zachmann@meissa.de>
Date: Fri Nov 3 17:58:47 2023 +0100
improve git sync procedure
commit 71951418059ebc0d72ab52bcb0b0b04e962c2472
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 6587b6d62ba18ece1aa04c13dfcea33bf7c99965
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 4e1e65e14f757bf63dff881ce7b626e05f12b474
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:53 2023 +0100
log repository under activity
commit fe6f625923dc2690fd7d2edaa1f1962e998d0c58
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:21 2023 +0100
temp deactivate security
commit b7082b7e9859a31229a8a998e1d61f2d0ab93a85
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:05:48 2023 +0100
improve rebase procedure
commit 87324d155340ae3bbcd6d35efa53b9be7c16cbc5
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 0d5702e5010fefa68bdf7d251a62fec1253b037c
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 6ceb1d20405358b13181181b96510223d60f0c7a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 20:13:24 2023 +0200
add f3 dep
commit 0572725204961bb95cf8bec6d8c594be226a3167
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:33:14 2023 +0200
add some rought branch sync description
commit fe2a3d86d47e8ac7469cf56ce8bf2de7da6fb3ca
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:10:13 2023 +0200
get repo now works somehow
commit da7a38b03dbd83228f3482d5cb55841f21ae5055
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 13:24:05 2023 +0200
enable federation
commit 64abf87fb0df10f3ef40cbf20dd2a5e7fbd34a97
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 12:12:31 2023 +0200
added some logs
commit 3dbcf34a1650d05861dd6cbd08322a8e4bc1962a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 11:50:39 2023 +0200
share dev notes
commit 511ab65df4fb6a662e66b3dfcfcbd8c9035be291
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Oct 24 10:34:53 2023 +0200
Fix syntax error, unexpected new line
commit 154be0a6377380417caf12f74af26715bc2deac6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Oct 24 09:10:31 2023 +0200
wip: compile one step further
commit 317b7fac8f92dd9890b1b2be813c30e63a37cf79
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Oct 23 17:16:38 2023 +0200
wip: load repo to ctx
commit 643681663fff73a0f74e892dc9f1a34743fae08b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:27:55 2023 +0200
add activity sequence
commit 68318f263295f7fd8db8a0b6468b8f5514b5d66c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:12:37 2023 +0200
considerations about star activity
commit d4f507a223a4797f4e829670fe80f7712757918b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:45:12 2023 +0200
remove unused imports
commit a87cbda165329cd5627d00276fd7ee147e6f9286
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:16:04 2023 +0200
add repository actor
2024-06-06 09:58:11 +03:00
|
|
|
// Copyright 2024 The Forgejo Authors. All rights reserved.
|
2022-11-27 21:20:29 +03:00
|
|
|
// SPDX-License-Identifier: MIT
|
2014-02-20 06:45:43 +04:00
|
|
|
|
|
|
|
package repo
|
|
|
|
|
|
|
|
import (
|
2021-03-01 03:47:30 +03:00
|
|
|
"errors"
|
2014-07-26 10:28:04 +04:00
|
|
|
"fmt"
|
2021-04-05 18:30:52 +03:00
|
|
|
"net/http"
|
2023-09-07 12:37:47 +03:00
|
|
|
"slices"
|
2014-07-26 10:28:04 +04:00
|
|
|
"strings"
|
2014-03-22 21:50:50 +04:00
|
|
|
|
2016-11-10 19:24:48 +03:00
|
|
|
"code.gitea.io/gitea/models"
|
2021-09-19 14:49:59 +03:00
|
|
|
"code.gitea.io/gitea/models/db"
|
2023-05-14 00:59:01 +03:00
|
|
|
git_model "code.gitea.io/gitea/models/git"
|
2022-03-29 09:29:02 +03:00
|
|
|
"code.gitea.io/gitea/models/organization"
|
2022-08-25 05:31:57 +03:00
|
|
|
access_model "code.gitea.io/gitea/models/perm/access"
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
quota_model "code.gitea.io/gitea/models/quota"
|
2021-11-19 16:39:57 +03:00
|
|
|
repo_model "code.gitea.io/gitea/models/repo"
|
2021-11-09 22:57:58 +03:00
|
|
|
"code.gitea.io/gitea/models/unit"
|
2021-11-24 12:49:20 +03:00
|
|
|
user_model "code.gitea.io/gitea/models/user"
|
2016-11-10 19:24:48 +03:00
|
|
|
"code.gitea.io/gitea/modules/base"
|
2023-04-27 09:06:45 +03:00
|
|
|
"code.gitea.io/gitea/modules/cache"
|
|
|
|
"code.gitea.io/gitea/modules/git"
|
2016-11-10 19:24:48 +03:00
|
|
|
"code.gitea.io/gitea/modules/log"
|
2024-02-23 05:18:33 +03:00
|
|
|
"code.gitea.io/gitea/modules/optional"
|
2022-03-29 10:23:45 +03:00
|
|
|
repo_module "code.gitea.io/gitea/modules/repository"
|
2016-11-10 19:24:48 +03:00
|
|
|
"code.gitea.io/gitea/modules/setting"
|
2021-06-24 00:12:38 +03:00
|
|
|
"code.gitea.io/gitea/modules/storage"
|
2022-04-07 21:59:56 +03:00
|
|
|
api "code.gitea.io/gitea/modules/structs"
|
|
|
|
"code.gitea.io/gitea/modules/util"
|
2021-01-26 18:36:53 +03:00
|
|
|
"code.gitea.io/gitea/modules/web"
|
2024-02-27 10:12:22 +03:00
|
|
|
"code.gitea.io/gitea/services/context"
|
2022-12-29 05:57:15 +03:00
|
|
|
"code.gitea.io/gitea/services/convert"
|
2021-04-06 22:44:05 +03:00
|
|
|
"code.gitea.io/gitea/services/forms"
|
2019-10-26 09:54:11 +03:00
|
|
|
repo_service "code.gitea.io/gitea/services/repository"
|
2021-12-06 10:19:28 +03:00
|
|
|
archiver_service "code.gitea.io/gitea/services/repository/archiver"
|
2024-03-06 15:17:19 +03:00
|
|
|
commitstatus_service "code.gitea.io/gitea/services/repository/commitstatus"
|
2014-02-20 06:45:43 +04:00
|
|
|
)
|
|
|
|
|
2014-06-23 07:11:12 +04:00
|
|
|
const (
|
2020-10-21 02:50:10 +03:00
|
|
|
tplCreate base.TplName = "repo/create"
|
|
|
|
tplAlertDetails base.TplName = "base/alert_details"
|
2014-06-23 07:11:12 +04:00
|
|
|
)
|
|
|
|
|
2019-01-18 03:01:04 +03:00
|
|
|
// MustBeNotEmpty render when a repo is a empty git dir
|
|
|
|
func MustBeNotEmpty(ctx *context.Context) {
|
|
|
|
if ctx.Repo.Repository.IsEmpty {
|
|
|
|
ctx.NotFound("MustBeNotEmpty", nil)
|
2016-01-07 06:07:17 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-10-30 05:04:25 +03:00
|
|
|
// MustBeEditable check that repo can be edited
|
|
|
|
func MustBeEditable(ctx *context.Context) {
|
|
|
|
if !ctx.Repo.Repository.CanEnableEditor() || ctx.Repo.IsViewCommit {
|
2018-01-11 00:34:17 +03:00
|
|
|
ctx.NotFound("", nil)
|
2017-10-30 05:04:25 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// MustBeAbleToUpload check that repo can be uploaded to
|
|
|
|
func MustBeAbleToUpload(ctx *context.Context) {
|
|
|
|
if !setting.Repository.Upload.Enabled {
|
2018-01-11 00:34:17 +03:00
|
|
|
ctx.NotFound("", nil)
|
2017-10-30 05:04:25 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-04-27 09:06:45 +03:00
|
|
|
func CommitInfoCache(ctx *context.Context) {
|
|
|
|
var err error
|
|
|
|
ctx.Repo.Commit, err = ctx.Repo.GitRepo.GetBranchCommit(ctx.Repo.Repository.DefaultBranch)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("GetBranchCommit", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
ctx.Repo.CommitsCount, err = ctx.Repo.GetCommitsCount()
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("GetCommitsCount", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
ctx.Data["CommitsCount"] = ctx.Repo.CommitsCount
|
|
|
|
ctx.Repo.GitRepo.LastCommitCache = git.NewLastCommitCache(ctx.Repo.CommitsCount, ctx.Repo.Repository.FullName(), ctx.Repo.GitRepo, cache.GetCache())
|
|
|
|
}
|
|
|
|
|
2021-11-24 12:49:20 +03:00
|
|
|
func checkContextUser(ctx *context.Context, uid int64) *user_model.User {
|
2023-09-14 20:09:32 +03:00
|
|
|
orgs, err := organization.GetOrgsCanCreateRepoByUserID(ctx, ctx.Doer.ID)
|
2015-09-07 20:58:23 +03:00
|
|
|
if err != nil {
|
2019-11-20 14:27:49 +03:00
|
|
|
ctx.ServerError("GetOrgsCanCreateRepoByUserID", err)
|
2015-08-28 13:33:09 +03:00
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-22 10:03:22 +03:00
|
|
|
if !ctx.Doer.IsAdmin {
|
2022-03-29 09:29:02 +03:00
|
|
|
orgsAvailable := []*organization.Organization{}
|
2020-05-04 00:08:24 +03:00
|
|
|
for i := 0; i < len(orgs); i++ {
|
|
|
|
if orgs[i].CanCreateRepo() {
|
|
|
|
orgsAvailable = append(orgsAvailable, orgs[i])
|
|
|
|
}
|
|
|
|
}
|
|
|
|
ctx.Data["Orgs"] = orgsAvailable
|
|
|
|
} else {
|
|
|
|
ctx.Data["Orgs"] = orgs
|
|
|
|
}
|
|
|
|
|
2015-07-19 12:11:16 +03:00
|
|
|
// Not equal means current user is an organization.
|
2022-03-22 10:03:22 +03:00
|
|
|
if uid == ctx.Doer.ID || uid == 0 {
|
|
|
|
return ctx.Doer
|
2015-07-19 12:11:16 +03:00
|
|
|
}
|
|
|
|
|
2022-12-03 05:48:26 +03:00
|
|
|
org, err := user_model.GetUserByID(ctx, uid)
|
2021-11-24 12:49:20 +03:00
|
|
|
if user_model.IsErrUserNotExist(err) {
|
2022-03-22 10:03:22 +03:00
|
|
|
return ctx.Doer
|
2015-07-19 12:11:16 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if err != nil {
|
2022-10-24 22:29:17 +03:00
|
|
|
ctx.ServerError("GetUserByID", fmt.Errorf("[%d]: %w", uid, err))
|
2015-07-19 12:11:16 +03:00
|
|
|
return nil
|
2015-08-28 13:33:09 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
// Check ownership of organization.
|
2017-12-21 10:43:26 +03:00
|
|
|
if !org.IsOrganization() {
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.Error(http.StatusForbidden)
|
2015-07-19 12:11:16 +03:00
|
|
|
return nil
|
2014-11-06 07:30:04 +03:00
|
|
|
}
|
2022-03-22 10:03:22 +03:00
|
|
|
if !ctx.Doer.IsAdmin {
|
2023-10-03 13:30:41 +03:00
|
|
|
canCreate, err := organization.OrgFromUser(org).CanCreateOrgRepo(ctx, ctx.Doer.ID)
|
2017-12-21 10:43:26 +03:00
|
|
|
if err != nil {
|
2019-11-20 14:27:49 +03:00
|
|
|
ctx.ServerError("CanCreateOrgRepo", err)
|
2017-12-21 10:43:26 +03:00
|
|
|
return nil
|
2019-11-20 14:27:49 +03:00
|
|
|
} else if !canCreate {
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.Error(http.StatusForbidden)
|
2017-12-21 10:43:26 +03:00
|
|
|
return nil
|
|
|
|
}
|
2020-04-30 18:11:56 +03:00
|
|
|
} else {
|
|
|
|
ctx.Data["Orgs"] = orgs
|
2017-12-21 10:43:26 +03:00
|
|
|
}
|
2015-07-19 12:11:16 +03:00
|
|
|
return org
|
2014-11-06 07:30:04 +03:00
|
|
|
}
|
|
|
|
|
2017-12-20 15:59:56 +03:00
|
|
|
func getRepoPrivate(ctx *context.Context) bool {
|
|
|
|
switch strings.ToLower(setting.Repository.DefaultPrivate) {
|
|
|
|
case setting.RepoCreatingLastUserVisibility:
|
2022-03-22 10:03:22 +03:00
|
|
|
return ctx.Doer.LastRepoVisibility
|
2017-12-20 15:59:56 +03:00
|
|
|
case setting.RepoCreatingPrivate:
|
|
|
|
return true
|
|
|
|
case setting.RepoCreatingPublic:
|
|
|
|
return false
|
|
|
|
default:
|
2022-03-22 10:03:22 +03:00
|
|
|
return ctx.Doer.LastRepoVisibility
|
2017-12-20 15:59:56 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-11-24 10:04:31 +03:00
|
|
|
// Create render creating repository page
|
2016-03-11 19:56:52 +03:00
|
|
|
func Create(ctx *context.Context) {
|
2014-07-26 08:24:27 +04:00
|
|
|
ctx.Data["Title"] = ctx.Tr("new_repo")
|
|
|
|
|
|
|
|
// Give default value for template to render.
|
2022-03-29 10:23:45 +03:00
|
|
|
ctx.Data["Gitignores"] = repo_module.Gitignores
|
2023-04-10 11:44:02 +03:00
|
|
|
ctx.Data["LabelTemplateFiles"] = repo_module.LabelTemplateFiles
|
2022-03-29 10:23:45 +03:00
|
|
|
ctx.Data["Licenses"] = repo_module.Licenses
|
|
|
|
ctx.Data["Readmes"] = repo_module.Readmes
|
2015-08-28 11:44:04 +03:00
|
|
|
ctx.Data["readme"] = "Default"
|
2017-12-20 15:59:56 +03:00
|
|
|
ctx.Data["private"] = getRepoPrivate(ctx)
|
2015-10-25 11:26:26 +03:00
|
|
|
ctx.Data["IsForcedPrivate"] = setting.Repository.ForcePrivate
|
2020-06-17 23:53:55 +03:00
|
|
|
ctx.Data["default_branch"] = setting.Repository.DefaultBranch
|
2014-06-25 11:55:59 +04:00
|
|
|
|
2021-07-29 04:42:15 +03:00
|
|
|
ctxUser := checkContextUser(ctx, ctx.FormInt64("org"))
|
2015-07-19 12:11:16 +03:00
|
|
|
if ctx.Written() {
|
2014-11-06 07:30:04 +03:00
|
|
|
return
|
2014-07-26 10:28:04 +04:00
|
|
|
}
|
2014-06-28 23:43:25 +04:00
|
|
|
ctx.Data["ContextUser"] = ctxUser
|
|
|
|
|
2019-11-11 18:15:29 +03:00
|
|
|
ctx.Data["repo_template_name"] = ctx.Tr("repo.template_select")
|
2021-07-29 04:42:15 +03:00
|
|
|
templateID := ctx.FormInt64("template_id")
|
2019-11-11 18:15:29 +03:00
|
|
|
if templateID > 0 {
|
2022-12-03 05:48:26 +03:00
|
|
|
templateRepo, err := repo_model.GetRepositoryByID(ctx, templateID)
|
2022-08-25 05:31:57 +03:00
|
|
|
if err == nil && access_model.CheckRepoUnitUser(ctx, templateRepo, ctxUser, unit.TypeCode) {
|
2019-11-11 18:15:29 +03:00
|
|
|
ctx.Data["repo_template"] = templateID
|
|
|
|
ctx.Data["repo_template_name"] = templateRepo.Name
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-03-22 10:03:22 +03:00
|
|
|
ctx.Data["CanCreateRepo"] = ctx.Doer.CanCreateRepo()
|
|
|
|
ctx.Data["MaxCreationLimit"] = ctx.Doer.MaxCreationLimit()
|
2024-01-19 19:05:02 +03:00
|
|
|
ctx.Data["SupportedObjectFormats"] = git.SupportedObjectFormats
|
|
|
|
ctx.Data["DefaultObjectFormat"] = git.Sha1ObjectFormat
|
2021-01-22 02:44:37 +03:00
|
|
|
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.HTML(http.StatusOK, tplCreate)
|
2014-04-11 02:09:57 +04:00
|
|
|
}
|
2014-03-08 01:05:18 +04:00
|
|
|
|
2023-07-04 21:36:08 +03:00
|
|
|
func handleCreateError(ctx *context.Context, owner *user_model.User, err error, name string, tpl base.TplName, form any) {
|
2015-08-28 13:33:09 +03:00
|
|
|
switch {
|
2021-12-12 18:48:20 +03:00
|
|
|
case repo_model.IsErrReachLimitOfRepo(err):
|
2022-01-02 05:38:07 +03:00
|
|
|
maxCreationLimit := owner.MaxCreationLimit()
|
2022-01-02 06:33:57 +03:00
|
|
|
msg := ctx.TrN(maxCreationLimit, "repo.form.reach_limit_of_creation_1", "repo.form.reach_limit_of_creation_n", maxCreationLimit)
|
2021-12-31 11:43:03 +03:00
|
|
|
ctx.RenderWithErr(msg, tpl, form)
|
2021-12-12 18:48:20 +03:00
|
|
|
case repo_model.IsErrRepoAlreadyExist(err):
|
2015-08-28 13:33:09 +03:00
|
|
|
ctx.Data["Err_RepoName"] = true
|
|
|
|
ctx.RenderWithErr(ctx.Tr("form.repo_name_been_taken"), tpl, form)
|
2021-12-12 18:48:20 +03:00
|
|
|
case repo_model.IsErrRepoFilesAlreadyExist(err):
|
2020-09-25 07:09:23 +03:00
|
|
|
ctx.Data["Err_RepoName"] = true
|
|
|
|
switch {
|
|
|
|
case ctx.IsUserSiteAdmin() || (setting.Repository.AllowAdoptionOfUnadoptedRepositories && setting.Repository.AllowDeleteOfUnadoptedRepositories):
|
|
|
|
ctx.RenderWithErr(ctx.Tr("form.repository_files_already_exist.adopt_or_delete"), tpl, form)
|
|
|
|
case setting.Repository.AllowAdoptionOfUnadoptedRepositories:
|
|
|
|
ctx.RenderWithErr(ctx.Tr("form.repository_files_already_exist.adopt"), tpl, form)
|
|
|
|
case setting.Repository.AllowDeleteOfUnadoptedRepositories:
|
|
|
|
ctx.RenderWithErr(ctx.Tr("form.repository_files_already_exist.delete"), tpl, form)
|
|
|
|
default:
|
|
|
|
ctx.RenderWithErr(ctx.Tr("form.repository_files_already_exist"), tpl, form)
|
|
|
|
}
|
2021-11-24 12:49:20 +03:00
|
|
|
case db.IsErrNameReserved(err):
|
2015-08-28 13:33:09 +03:00
|
|
|
ctx.Data["Err_RepoName"] = true
|
2021-11-24 12:49:20 +03:00
|
|
|
ctx.RenderWithErr(ctx.Tr("repo.form.name_reserved", err.(db.ErrNameReserved).Name), tpl, form)
|
|
|
|
case db.IsErrNamePatternNotAllowed(err):
|
2015-08-28 13:33:09 +03:00
|
|
|
ctx.Data["Err_RepoName"] = true
|
2021-11-24 12:49:20 +03:00
|
|
|
ctx.RenderWithErr(ctx.Tr("repo.form.name_pattern_not_allowed", err.(db.ErrNamePatternNotAllowed).Pattern), tpl, form)
|
2015-08-28 13:33:09 +03:00
|
|
|
default:
|
2018-01-11 00:34:17 +03:00
|
|
|
ctx.ServerError(name, err)
|
2015-08-28 13:33:09 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-11-24 10:04:31 +03:00
|
|
|
// CreatePost response for creating repository
|
2021-01-26 18:36:53 +03:00
|
|
|
func CreatePost(ctx *context.Context) {
|
2021-04-06 22:44:05 +03:00
|
|
|
form := web.GetForm(ctx).(*forms.CreateRepoForm)
|
2014-07-26 08:24:27 +04:00
|
|
|
ctx.Data["Title"] = ctx.Tr("new_repo")
|
|
|
|
|
2022-03-29 10:23:45 +03:00
|
|
|
ctx.Data["Gitignores"] = repo_module.Gitignores
|
2023-04-10 11:44:02 +03:00
|
|
|
ctx.Data["LabelTemplateFiles"] = repo_module.LabelTemplateFiles
|
2022-03-29 10:23:45 +03:00
|
|
|
ctx.Data["Licenses"] = repo_module.Licenses
|
|
|
|
ctx.Data["Readmes"] = repo_module.Readmes
|
2014-02-20 06:45:43 +04:00
|
|
|
|
2022-03-22 10:03:22 +03:00
|
|
|
ctx.Data["CanCreateRepo"] = ctx.Doer.CanCreateRepo()
|
|
|
|
ctx.Data["MaxCreationLimit"] = ctx.Doer.MaxCreationLimit()
|
2024-07-16 17:42:35 +03:00
|
|
|
ctx.Data["SupportedObjectFormats"] = git.SupportedObjectFormats
|
|
|
|
ctx.Data["DefaultObjectFormat"] = git.Sha1ObjectFormat
|
2021-04-07 10:26:41 +03:00
|
|
|
|
2016-11-27 09:03:59 +03:00
|
|
|
ctxUser := checkContextUser(ctx, form.UID)
|
2015-07-19 12:11:16 +03:00
|
|
|
if ctx.Written() {
|
|
|
|
return
|
2014-07-26 10:28:04 +04:00
|
|
|
}
|
2014-07-26 08:24:27 +04:00
|
|
|
ctx.Data["ContextUser"] = ctxUser
|
|
|
|
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
if !ctx.CheckQuota(quota_model.LimitSubjectSizeReposAll, ctxUser.ID, ctxUser.Name) {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2014-03-23 00:00:46 +04:00
|
|
|
if ctx.HasError() {
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.HTML(http.StatusOK, tplCreate)
|
2014-03-23 00:00:46 +04:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2021-12-10 04:27:50 +03:00
|
|
|
var repo *repo_model.Repository
|
2019-11-11 18:15:29 +03:00
|
|
|
var err error
|
|
|
|
if form.RepoTemplate > 0 {
|
2024-02-28 16:40:36 +03:00
|
|
|
opts := repo_service.GenerateRepoOptions{
|
2023-07-21 07:32:47 +03:00
|
|
|
Name: form.RepoName,
|
|
|
|
Description: form.Description,
|
2024-05-20 03:56:45 +03:00
|
|
|
Private: form.Private || setting.Repository.ForcePrivate,
|
2023-07-21 07:32:47 +03:00
|
|
|
GitContent: form.GitContent,
|
|
|
|
Topics: form.Topics,
|
|
|
|
GitHooks: form.GitHooks,
|
|
|
|
Webhooks: form.Webhooks,
|
|
|
|
Avatar: form.Avatar,
|
|
|
|
IssueLabels: form.Labels,
|
|
|
|
ProtectedBranch: form.ProtectedBranch,
|
2019-11-11 18:15:29 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if !opts.IsValid() {
|
|
|
|
ctx.RenderWithErr(ctx.Tr("repo.template.one_item"), tplCreate, form)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
templateRepo := getRepository(ctx, form.RepoTemplate)
|
|
|
|
if ctx.Written() {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
if !templateRepo.IsTemplate {
|
|
|
|
ctx.RenderWithErr(ctx.Tr("repo.template.invalid"), tplCreate, form)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2023-03-01 01:17:51 +03:00
|
|
|
repo, err = repo_service.GenerateRepository(ctx, ctx.Doer, ctxUser, templateRepo, opts)
|
2019-11-11 18:15:29 +03:00
|
|
|
if err == nil {
|
|
|
|
log.Trace("Repository generated [%d]: %s/%s", repo.ID, ctxUser.Name, repo.Name)
|
2021-11-16 21:18:25 +03:00
|
|
|
ctx.Redirect(repo.Link())
|
2019-11-11 18:15:29 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
} else {
|
2023-09-06 15:08:51 +03:00
|
|
|
repo, err = repo_service.CreateRepository(ctx, ctx.Doer, ctxUser, repo_service.CreateRepoOptions{
|
2023-12-17 14:56:08 +03:00
|
|
|
Name: form.RepoName,
|
|
|
|
Description: form.Description,
|
|
|
|
Gitignores: form.Gitignores,
|
|
|
|
IssueLabels: form.IssueLabels,
|
|
|
|
License: form.License,
|
|
|
|
Readme: form.Readme,
|
|
|
|
IsPrivate: form.Private || setting.Repository.ForcePrivate,
|
|
|
|
DefaultBranch: form.DefaultBranch,
|
|
|
|
AutoInit: form.AutoInit,
|
|
|
|
IsTemplate: form.Template,
|
2024-01-16 15:54:48 +03:00
|
|
|
TrustModel: repo_model.DefaultTrustModel,
|
2023-12-17 14:56:08 +03:00
|
|
|
ObjectFormatName: form.ObjectFormatName,
|
2019-11-11 18:15:29 +03:00
|
|
|
})
|
|
|
|
if err == nil {
|
|
|
|
log.Trace("Repository created [%d]: %s/%s", repo.ID, ctxUser.Name, repo.Name)
|
2021-11-16 21:18:25 +03:00
|
|
|
ctx.Redirect(repo.Link())
|
2019-11-11 18:15:29 +03:00
|
|
|
return
|
|
|
|
}
|
2014-03-10 04:06:29 +04:00
|
|
|
}
|
2014-04-13 04:35:35 +04:00
|
|
|
|
2016-11-24 10:04:31 +03:00
|
|
|
handleCreateError(ctx, ctxUser, err, "CreatePost", tplCreate, &form)
|
2014-04-11 02:09:57 +04:00
|
|
|
}
|
2014-04-09 17:28:00 +04:00
|
|
|
|
2024-02-05 12:56:20 +03:00
|
|
|
const (
|
|
|
|
tplWatchUnwatch base.TplName = "repo/watch_unwatch"
|
|
|
|
tplStarUnstar base.TplName = "repo/star_unstar"
|
|
|
|
)
|
|
|
|
|
2024-02-26 00:45:57 +03:00
|
|
|
func ActionWatch(watch bool) func(ctx *context.Context) {
|
|
|
|
return func(ctx *context.Context) {
|
|
|
|
err := repo_model.WatchRepo(ctx, ctx.Doer.ID, ctx.Repo.Repository.ID, watch)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError(fmt.Sprintf("Action (watch, %t)", watch), err)
|
|
|
|
return
|
|
|
|
}
|
2014-08-11 07:11:18 +04:00
|
|
|
|
2024-02-26 00:45:57 +03:00
|
|
|
ctx.Data["IsWatchingRepo"] = repo_model.IsWatching(ctx, ctx.Doer.ID, ctx.Repo.Repository.ID)
|
|
|
|
|
|
|
|
// we have to reload the repository because NumStars or NumWatching (used in the templates) has just changed
|
|
|
|
ctx.Data["Repository"], err = repo_model.GetRepositoryByName(ctx, ctx.Repo.Repository.OwnerID, ctx.Repo.Repository.Name)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError(fmt.Sprintf("Action (watch, %t)", watch), err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
ctx.HTML(http.StatusOK, tplWatchUnwatch)
|
2014-08-11 07:11:18 +04:00
|
|
|
}
|
2024-02-26 00:45:57 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
func ActionStar(star bool) func(ctx *context.Context) {
|
|
|
|
return func(ctx *context.Context) {
|
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 130981af64b4391e20f44f6655a4d78b4c4d4ab6
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 62856e639e0c42a7902f241357679ce0bf8b34c2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jun 6 07:26:28 2024 +0200
adjust field name
commit 81236bc9ef2fc53cf019425edd21460af2fffea0
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 c0b9ab2060bfe7b1b6c27f4c964778fe65cbe10c
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 98939c4745dc7e15ca8c0a01ae09f4aea0f7c0fb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 31 18:05:29 2024 +0200
remove no longer used doc
commit 17e3f6c6f3bd224950d8d86cfa00983a1845ccc3
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 58b8f57d3f0cda45e3d501eff4f3caf5df8e879a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 09:20:39 2024 +0200
more lint
commit c3650cb2fe5b049c1f92746c6c54eab126afc2de
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 07e2708e3d279c4733c45dea66d2e159d79f9e46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:59:32 2024 +0200
lint
commit e7580da130c1e25410d38459fcad005d6e1d983b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:58:19 2024 +0200
lint
commit 7b2309592ce23cd2dd4f59f51b7d5079c3852366
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:55:47 2024 +0200
remove unused
commit dadfb29ae944e18c02678a2eff433d235578c914
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:44:00 2024 +0200
relax validation
commit 26612aa75b7542ebebb10ae912866393d5ee937f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:53 2024 +0200
Add ToDo
commit fa5806cecf222ecf1a24c0652177027a017c10cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:41 2024 +0200
Use StatusSeeOther
commit 75c93e5319ea95cb49d7d90cd56d5b797febda1a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:54:49 2024 +0200
Update NewRepositoryID with case for following repo
commit 9c9333868c3e3d1adfdc7bd3c12321845d28489a
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 69e79e50c28a2f23a2613e3c047c94a369702046
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:36:34 2024 +0200
Lift test env prep one up
commit 72f2f35bd83662ab20a8c00a1ffadea96f6fa234
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:57:03 2024 +0200
wip integration test
commit a133b6de31d435575ff14af41e99e4717bed7a5e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:53:19 2024 +0200
rename
commit 3d1586d9cb5c2ebf0130f3c98bfc57a4e159e705
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 108971ddc8eb919f9bf730d139fdb7351ff75ba7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 27 08:18:09 2024 +0200
add migration
commit 6ef691b8d7457ce98969a5af1b1efc6889279ab9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 16:34:11 2024 +0200
lint
commit a3c90e30854e92c59f04215dfe77264ad2ec5b60
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 13:27:37 2024 +0200
field no longer in use
commit 5ace6816ac593d4a7ab8f7899faf5385e1db1e7a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:50:54 2024 +0200
remove todo - no change required
commit 64be24ed0ce158119d2cdaee0b1244e7ac0367aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:49:08 2024 +0200
Format & remove old todos
commit 30e2582f246b3c2328a6ca83cc1e2ec3a26637c9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:24:54 2024 +0200
mv doc to doc project
commit 2e72b5e05bb4190073ae24824e333421530e1f07
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 4c87b0b3eebb0bb8e3b04f18d005535017e6a3cc
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 a1acc46c8885504776db681173cd60ed61b1cb93
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 21 18:46:48 2024 +0200
make mocked user consistent
commit a62c2afcea0a1efe304460f14ecd648b815cad2c
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue May 21 11:43:15 2024 +0200
Extended integration test
commit 07659a5e7e36c1557930c0a9d926cb2a2f3bd140
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 17 08:15:33 2024 +0200
rename fxct name
commit 86db5f612c889d0d889ccd62b431e08e8a49e225
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 307b27bbaa3c83bf1b3f57efb730b9bf58b378c2
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 a9c00d49da1dbad7bcdb737e591445266bf40cef
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 6457ace318afd4eeee18fb1f46847b2b31828b98
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:26:51 2024 +0200
Added migrations for User and FederatedUser
commit 1b3c4dcd85ab207a8523ede87f7fe586765d4ac4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:06:13 2024 +0200
Extended AP like-repo integration test
commit 94be68725abd40449a8628fa0d7bea95272749aa
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 08fe47d5c8b18d4ea8d2408cdb3c0f092d73a372
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 57a972909495638765c835a50854fda827bbb57f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 14:29:54 2024 +0200
linting
commit e55533d64d5425d161482ec4b1e838c85f8c030b
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 cf9953a6123859cca5c455c740df82271413c11d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:28:31 2024 +0200
linting
commit c3fb34d5b4b3683cd1ce39684f7fdec30c51c551
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:16 2024 +0200
fixed some comments
commit 379b0234eb0a716e70cc48922189745e06a9503b
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:02 2024 +0200
added test cases for federationhost
commit 8f426845994ff2b18d1cc7e4d75bd229daca115a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:24:50 2024 +0200
Renamed field of FederationHost
commit c4f9f8578a665bcf52161d516121c6319fa4b8b8
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:14:04 2024 +0200
Introduced ErrNotValid
commit cb4690e570e1c32084178ec7b75687a3c220ab90
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 13 07:45:37 2024 +0200
linting
commit 3cc48a5c9f0a6d7264622af9ee4f6ac959f54e82
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:44:26 2024 +0200
format
commit 3bf423c97f1f4b4de57879354967f46d46b48086
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:29:49 2024 +0200
assert, that federation-host is present.
commit 8d330fdb5d340c77393ea1e1dc13350de2c86e0b
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 0665c1252e85e63f0a05cd107fa4ce8ab092df12
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 16:25:54 2024 +0200
make start time more flexible
commit c4c03dab4b2adb92f501aa8dd404810b6011ad73
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 8ec570841a5a1123bdf87da43719cc3b47c8b2e0
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 e122df36f815a06fd3166cf45304b2fd2e16eff0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 17:47:35 2024 +0200
prepare for next pr
commit fdfc21a6b8ad5858313896d83b5b8b0ab1921f94
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 07:38:20 2024 +0200
review results
commit 82fe1d3e425877d313e2f06647c0573b9f0bc7e6
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 6 16:01:23 2024 +0200
make fmt
commit a485837b9c9673abd2673bdb4e4934b92b5e0867
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:52:25 2024 +0200
removed unused code
commit c70b8d28a3d1f437f0f5d08e61f6791d681d3e53
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:12:43 2024 +0200
linting
commit 8f298a9901ebd8b402746107ed356e72a04e9904
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 b99d66b5308961b93db3ad538392e7215bf0d5e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 18:04:12 2024 +0200
linting
commit 3a6dfadcd0bfa0120dc38853feade91c2ef81d10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 17:10:16 2024 +0200
linting
commit 510868731d7b3c53bbd879ea9509b04a6b9ab8b6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:58:15 2024 +0200
linting
commit 1a07db1a407f95ee9b1da93ca9553cd3a179cb45
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:35:25 2024 +0200
omit linting next try
commit ca0a53bf5f675cc9fa1f372bec0e812e64aa4936
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat May 4 17:58:54 2024 +0200
omit linting maybe?
commit ee71f86432fbb3e4fb19b1fdfd7831b1424ad033
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 957b1023e96de43e8467e3e589a8501980169b02
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 3 08:00:17 2024 +0200
refactoring: separaate model & module
commit 42837f5dab9e532efe46995fc271fb46f541f117
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu May 2 08:56:36 2024 +0200
fix linting
commit ded7b60d0c5f0395aebedcab0131c291bc10be46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:15 2024 +0200
wix the invalid test
commit 534d692d68e403a24a3dc413c0383eae74eb3d4a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:03 2024 +0200
fix field names
commit 715ff0eb7fb28a3e5a5f505d3d84d4a2c70926d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:23:39 2024 +0200
remove unused & fix wording
commit 87036ec7198510ef3e2d44f7e4da5eec736f722e
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 be6e6eb96a0a8cc5f6349366f80a895ff7d660f3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:02:27 2024 +0200
refactor validation
commit bbec2e29607565ef8efaddc93068787f5ce6aa3a
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 4b2802a6ba9ca57c3749a3bf9633e78c1b66b308
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:23 2024 +0200
internal refactoring
commit 6c7cff4f162c1b2edc09f03528f016611a5b5a1b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:09 2024 +0200
fix NPE
commit e9fed7a488a0cddfeb1e21b9f98202e91692352f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 20:13:37 2024 +0200
found NPE
commit 285e72e4e64b2e3360c52f6a99802333a75ec48d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 19:51:28 2024 +0200
found issue during test
commit a9a30fc2126113517894993dd55e189558e7acd5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 08:40:46 2024 +0200
remove resolved todo & integration test
commit 2f2330c450b8a40086ee0c202e78478ebf864245
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Apr 28 13:52:51 2024 +0200
first integration test
commit 70ae1025973d233fc3362a423a262639fbd7c055
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 df2fd904b3401b57b54bfc0cc0a8e4f40e19a496
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 37ed52cfd99f2a2f669884caa2438529a0b0d057
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 16:19:31 2024 +0200
start add NormalizedFederatedUri to user
commit f687f79ed0f222d42890c7fb05d00d25b19c23b4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 15:48:56 2024 +0200
start add NormalizedFederatedUri to user
commit b878e74f768eb19458f9941fdadb223ca0178b48
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 71141a5ff3af7b60b169ce7b7904b1ca8005f595
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:33:47 2024 +0200
WIP Refactoring and solving (adding) ToDos
commit fb1d0df791308eb84049bbf0ae220990bff65462
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:29:32 2024 +0200
Also check for RepoID to be unique
commit f3e58f29b054c276e4cca55d7401979fc010ec32
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:24:38 2024 +0200
Pass unvalidated input to field
commit feca77b040ca785a9f02b39a2334bf6a83f69b72
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 13:58:55 2024 +0200
Rename for clearer semantics
commit 37420442ded9acaa8be10ab065881d050df6d9d1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 12 13:52:26 2024 +0200
unify copyright comment
commit 94091cc1444341e2ccf8a0acf44da7fbc4f1389e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:38:49 2024 +0200
Don't use TEXT type
commit 6310e75d8d6e51d25fac8bbf27c0d62b91de6d6e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:33:13 2024 +0200
Update todo
commit 075857f030d7497527b3720df3b117982e0af963
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:32:49 2024 +0200
Update docs
commit 19628b84c6ce446ef2eea6a1cc806b8643478665
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:51 2024 +0200
use context
commit 80888b80d6a1e59510347b7797dd07ab85e3afdb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:28 2024 +0200
Fix imports
commit af0d0f7745e4bb2c25bb2fd6168cf4c178b4a619
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 bbcb8e70607dda94a77f3ab4ca3205f6559781e3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 14:21:51 2024 +0200
Bits of format
commit bb83a8d85eaf498f6fac73680fbb496261a0b7e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:58:28 2024 +0200
make fmt
commit 0eb71098a2fef93c3250ad9563e149089cef0334
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:53:56 2024 +0200
make tidy
commit e2c9653b3362b337d75007fa61771bff25f6a586
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:47:26 2024 +0200
Update go version and protobuf deps
commit 2b9977d843bc5717bafac891977118225a699961
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:46:11 2024 +0200
Linting
commit 511ef0bf5b5bcc5e80f694d7395a65724a54590d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:24:22 2024 +0200
Use federated staring func
commit 8579b7f7bba5acee1f95364407b0859cd38f4a1a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:21:57 2024 +0200
Use optional.Some
commit 97343470bc7d105b2e8b710a9865c5410c4d78ca
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 213fc3a97dfc1f4deb41ff49f581866aef04e10b
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 c908455998efe3b64b2f3e8fda4bee3d79fdb171
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Apr 6 10:59:36 2024 +0200
fix multiple federation in one host
commit 765298814c3a4b716beec9b6ba433cbf93643368
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:07:04 2024 +0200
Add ToDo
commit 33c60ebdffb1719f3becc3043fa7d2a203ded318
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:06:57 2024 +0200
Add logging
commit 41f066a1a64c48b23e9f7476c6398678aa8ba155
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:33:08 2024 +0200
add notes for setup
commit 15bb774409aaae1d740ec57aefe88c1c50f0a300
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:05:55 2024 +0200
add relation details
commit 8d78c3edcabdfcc3f65d432a64a5879530329d73
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:12:41 2024 +0200
make fmt
commit b4e6a7ea3f7238abf72b508e4f022bb745be3d9d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:09:40 2024 +0200
make lint-go-fix
commit 92d011f1a597d6e9020d489da7b5a0b276f20930
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:08:02 2024 +0200
fix some linting issues
commit 976d79044fd54b7bb15194105be06646b88d460d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 08:32:37 2024 +0200
show apapiurl in repo settings
commit 73cf1e3901b979d1d4bb9804bc8320a2d5706922
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 8cd89bf4d30a146da30a2e4256e23977d59742cc.
commit 8cd89bf4d30a146da30a2e4256e23977d59742cc
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 2b7a22afb31074966bc3f0dab1dcd8520f422576
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 12:26:33 2024 +0200
renamed FederatedRepo to FollowingRepo
commit daccaed1577c8f9e0d825ddb9c03d0dfa5be5fff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Apr 3 12:08:44 2024 +0200
Rename federatedRepo to followingRepo
commit d240a9bc90265ede91bdfb74c5a1c49c8029d796
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 10:25:40 2024 +0200
trim trailing semicolon
commit 5671566df688b9fb58dc3a9e85a09b76e89b8140
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 09:53:19 2024 +0200
adjust fed repo splitting
commit 7a142c876ecc4de23028aef419953c1c11c1f351
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 5edf7d0e61e7a0297ddb047d1068758e49752b3d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 2 17:33:32 2024 +0200
Also trim whitespaces within the list items
commit 431b4c282955fd55f75d25c4fed0172a97085196
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:38:06 2024 +0200
optimize function
commit 962cd374e2d1d932baf6a5fd260e4f841416b7b8
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:36:04 2024 +0200
delete federated repos when deleting repository
commit 8b56159042e7f906d61a7b31b89737abf41f9d6d
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 9212fb1633550bade7915eec98cf9c832ce582f9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Apr 2 09:03:49 2024 +0200
feedback from discussion
commit b747342672bf71d3336943fbe85e9272d35603b2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 16:08:29 2024 +0100
separate collecting activities from sending them
commit 2ad685fd2ca1c126c2e3ef7e1f55cd4b1ff15efb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 15:41:43 2024 +0100
fix like target
commit e2b11b93bc331a018dd6f7d3f8fca20769a7c458
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 fc8e2b3f8af70b626e2851acfd7e2f3b3e166f48
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 4d5c8b55634ee41b05be0cb8a2f099de7502d068
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 15:00:55 2024 +0100
refactor services
commit 7f19247b0ae6ef37ed57b4686d8f8a67ad57728b
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 14:27:50 2024 +0100
Moved sendLikeActivities to federation_service
commit 1ad7bdf98367c9dc448f5299f81b18e78d3b344c
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 d624ebb7128c953a95ba91aa1b865b911d643730
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 08:13:00 2024 +0100
use doer coming from api
commit 992fbf6898a388142746fe5f4ad7261c7a2003a8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 07:44:22 2024 +0100
comments
commit 259c0202c71714c8564b257fc7e36af59df74119
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:56:32 2024 +0100
fix test & add some review
commit 8eae48761f3ad63b46b58a2e7cbc3fffd5171f10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:26:55 2024 +0100
add some pictures
commit e75bcb2f8953fddcc621dd105852420f39ff3bbc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:02:37 2024 +0100
rename file
commit 97b5e0da9191bbbc5b299bb13fc260ea94614f92
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 911e916a4fe4a426690ca2920623d8f24cd65218
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Mar 27 11:33:00 2024 +0100
Added new blog post
commit a2a5956d7932aedf1ba90d0940f2d63596095759
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 dd37e3a7b80f74726691659e8a7957569c1c7128
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:25:16 2024 +0100
wip
commit a950ba4631c46462d86a138dc676b557641ef8fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:21:44 2024 +0100
prepare state of the month
commit 84f73d9db810fb152dc401a8ac74d96e717be2dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:56:06 2024 +0100
Add ToDo
commit 01e9853161ce3dbbe35a76e173872a024fa73741
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 45cddb4ac7f4a68320519ff88779505704b08e75
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:53:02 2024 +0100
Add logging
commit 436466dcade0f919ff60f12abb41fee0f250abbc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:28 2024 +0100
Check if federation enabled in StarRepo
commit e9bbdc678bdd730c2c13ccd7ad2ec517ca980b7a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:09 2024 +0100
Not using object URL
commit 04f907c8c8cf4e952ed6975338622d8bf8f27906
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:55 2024 +0100
Revert
commit 32d457f9a3af222309f15d9f41f4859399a84b1c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:36 2024 +0100
StarRepo Wrapper
commit 0b8aa3105ce8677590b17b6289412ae84d181829
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:11 2024 +0100
Create object manually
commit b2105de36f64cab816168e82cfa375cde6068081
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 bbe50963079493a5ff7f8e5fba815c3cec756428
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 7f0371056e637fb64f8c115f5aac2aa81a67959b
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 d251fc261168a2e7ceffde77cb763c9c0727a4c0
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Mar 26 08:28:22 2024 +0100
set federatedRepoList into context
commit cf8a30efac4e90b521d73debc6ada6018e5a99ac
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 5b8173f660da8517f66a9f8c36262505d53d8aae
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 26 07:36:09 2024 +0100
do not return invalid result
commit 6d814447d09d6723f5148bb879891544286e8f10
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:52:39 2024 +0100
Use Plural
commit 653ced55965b7ef111fa381030864b7fb509454b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:47:18 2024 +0100
Validate before returning
commit 35d3fc199c46d11090b18836062fca664f11d202
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:35:35 2024 +0100
Rename to StoreFederatedRepo*
commit ca7d1c6f78bce9d9be1d1d5e763aa295fcdfc717
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:30:02 2024 +0100
Localize error messages
commit 828e7a76f6b3a16552cf1d3ba7ad0fcbd1c493a9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 25 09:15:32 2024 +0100
use new table to populate settings
commit a9d18e5327d13bb874c90a06261b78891c616a41
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 17:01:25 2024 +0100
fixed issues, store now works
commit ce317c33cbbe408cb5e6885dd342d2ffd89d9ad4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 15:27:45 2024 +0100
fix context
commit 950dcd959ebc05ef0f0825f787d0890953b7a067
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 20:14:20 2024 +0100
implement storage of federated_repo
commit 6b767684a775485dee0a619a6237abef54fa58c3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:51:20 2024 +0100
Add discussion ToDo
commit 0f27f0a05ba3d89af5e75dba68829ff12d449e10
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:49:29 2024 +0100
Add discussion ToDo
commit 0f9d1c80be7cb169fca6198d42a0927f24161a01
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:42:38 2024 +0100
Implement CreateFederatedRepoList
commit 36c0c1c3c1994ea9f05c3f5725b9c582e84ab37f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:59 2024 +0100
Add DB functionality for federated repos
commit 288dda282c813d1264aa0db0c0b82b3d71bed15c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:36 2024 +0100
Add more ToDos
commit 508b4deac8e4e974bc96678fd5b8e45ac2255d4d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:37:06 2024 +0100
add test & fix compile
commit 4938d38e39ba47ba5bbc338ede7f3a1dafb3680d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:08:54 2024 +0100
more review
commit 9ccad50b055191088684cd594e45557450406f36
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:52:03 2024 +0100
review
commit 7316108d56484a630e343747793a0f8059264bbf
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 7e355986f81edf44ca5a3185da7b90a545a46681
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:32:22 2024 +0100
fix wording
commit 3e6eb255b357e25f040e640542e3f5e578c72c44
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 0c6c43003cbf5a7156d34e501890b799aeccfec0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:35 2024 +0100
Implement getting APAPIURL for repo and user
commit ed256ca540456a577ee40a76c8536e2acbae14f6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:08 2024 +0100
Implement NewForgeLike
commit 2e0584bdf34cae80827d48b38ddb5b4e80de4104
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 84f2aab570e73f69f031757dc74030b9479c4d03
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:38 2024 +0100
Add todo
commit 42a41ce2bca1f3e82d1f288893458b3bf1195c5f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:16 2024 +0100
Remove todo
commit a02ec0363bfc0b4f32e2eb20e32a15a41c7f5aeb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:04 2024 +0100
Add todo
commit e4242dafd931bc64cbb1359010f8641358972e11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:41:11 2024 +0100
Add Function description
commit 689837b63a25d003f8977de01ce0001ed60a26b8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 12:59:59 2024 +0100
Fix typos
commit f327c0da24eb8427532aafaa6a263166b2af9ab9
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 6055b4fca0d90c952591f3d5a519b8f9d84a680d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 11:42:12 2024 +0100
Add todo
commit b4bb41e0e3ebe05337d003a8b034be8312ab4a98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 21 08:25:40 2024 +0100
introduce federated repo
commit 3b30c678e76947547d6997cfafdf57893cb559d2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:22:35 2024 +0100
Remove ToDo
commit b6035c03ae43c331ddae4e76f0fa812adc810c68
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:14:54 2024 +0100
Rephrasing for clearness
commit 2e803e10c0498f304eb07fb4a51f7553035bd77c
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 13bf84e89e590ae1fa2d5ef0a96342d94f5a75e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:12:20 2024 +0100
Implent checking for list of repos
commit 3dda92b52bd1f27f5e7d8810f15a43f7dacca402
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:26:46 2024 +0100
Update Locales to reflect changes
commit ea4471d0dbcf8af062abde4e2c6015cd7c9b2325
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:22:56 2024 +0100
Remove ToDos
commit d1190423bb9ff800c51401090684fc2da6d752a9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:21:17 2024 +0100
Implement single Repo validation and saving POC
commit 1cbd5e33cb2dc09a3676de120118826a4cbca75e
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 584af0486dd8c91707d9f7640bbe85db189c61e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:13:23 2024 +0100
Add Federation specific URL validation
commit 41da150fb3bd2fece58c7045e9d08388a3af3c8a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 19:28:33 2024 +0100
add review comment
commit 84f236a58d1cf0049662e8776ecc5d249a2ed2f8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 15:30:56 2024 +0100
Add more todos
commit 884e38bdab96f0e73fc0074c9ba502bc11928641
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 933727433423230c06106cba88f18e7ba370c0a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:56:12 2024 +0100
Revert to input
commit abc7aa097222d3b746828777ac0f0bf8a32f8d91
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:53:00 2024 +0100
Display data on text area
commit 048ff5da1192ac2076338b7dc4250f3ab7b95b11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:52:14 2024 +0100
Fix typos
commit 4c1d12b2e4a806692c37f18957cba52ce433bc1e
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 09cac163e09285a5d066daf73fab26a8910c17c9
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 a6d45f8b97545fcf4818e7559280707cee7c983a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 11:56:25 2024 +0100
Implement FederationEnabled function for templates
commit 26eb01b509f59b8fa3bb5b4ee310f86a412b304e
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:25:20 2024 +0100
corr var label name
commit 3018769d267377ece757e9dadf999f4698ac9df0
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:05:31 2024 +0100
Federation settigs :: set label name for internationalisation
commit 6901ae4b999ba489a227866c7a0bf6d94a39c29a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 08:29:57 2024 +0100
wip: found backend for settings update
commit 9dcdf8d828508146f4c9ada70ac692f3dcd212d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 16 12:46:43 2024 +0100
Locales, field & action
commit fdcff3cc43771175f396992ea3b0e64d46eb6805
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 8 18:25:37 2024 +0100
found the template for frontend
commit 93d7de147b5c263f8f9065eb4efc59c84dc98bed
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:57:33 2024 +0100
adjust to new dev-model
commit e41fa653d9d2e6badab93f53e04c0ff5db9743f5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:43:16 2024 +0100
fix en name of score :-)
commit 0e73dfccbb7ea917f0e7090c48ae9f97ad780a70
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 e2ca63ca38e695f74b61b454c7ba13939321f897
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 db2f896264d59c3c481f12c7552fbd1dc68ba22b
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 086c66b06a565bcc6ba5fb97bb6092d7bea1dfd0
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:07:15 2024 +0100
make tidy
commit 2e41fe0a466bb93006655da338843a9227f2ea59
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:00:47 2024 +0100
fix import
commit d65cd5a17a73a95db96504d53d6d4d61b8f616f9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:55:00 2024 +0100
ActorID gets source type from NodeInfo
commit 181d743a8a521c43a26b4135c4bef41057a76aff
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:29 2024 +0100
update copyright
commit 9662aee375e358b9531c30f17fb6cb453046a7a9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:16 2024 +0100
reflect hard fork
commit 6e6813a88bac34d5adbe0aeccaa81ef2fed0400a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 18:17:40 2024 +0100
make operatorid unique
commit 6d17f459867ac3d6a0b0945f24b5255ecbe3a2e7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:56:17 2024 +0100
fix misspell
commit eecb9b8040386747c2588ca9ddfe10f2800a8567
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:46:27 2024 +0100
fmt fix
commit 664144930ec16f8374829f7cb8a0813679bc90c3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:10:59 2024 +0100
result of lint-fix
commit 5fa62287d648b09ed3a7886dc929a08de8fa345c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:00:21 2024 +0100
undo rebase conflicts
commit 3ef57385ec32ac63eb8d1e0e80a64de1c2cfb83f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:44:03 2024 +0100
fix linting
commit 3b244d673b18157b66192e7ef4245cd25b7a03aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:24:51 2024 +0100
small fixes
commit ac82486a95a583e6cd190e4222dadedf50a71663
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:31:58 2024 +0100
This months blog
commit 8917bfca0c84cbb57ea64ec732ed95fb4a8125c4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:12:49 2024 +0100
add a arch federation overview
commit 94937abc043b4e20942fffa22e4431ca1e19f1d9
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 b2cc848e7df5b512b6b2dfd0b5b6914220b9d890
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:31:02 2024 +0100
clean up aliases
commit e733809ef2c131847f8c40aed9fbd14570a55526
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:16:37 2024 +0100
symetric handling for value/reference
commit d2d5e84977c209bc0e42120e7bc326881569372d
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 91f7541addd573b3608cc36c63f03d994734bde7
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 66bc7a9a0c4650727b2d8fc36619c028511f21de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 11:09:55 2024 +0100
Search federatedUser instead of loginName
commit e44be722513aaa1695b97b0b88898959abfbd888
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 09:56:49 2024 +0100
Add tx around user creation
commit edf7f61b8325f98c26fad42e7201cb8de76e187a
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 e18046776049ab83b2340176ac781831c14f609f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 16:42:40 2024 +0100
added user creation from ap
commit a702da69ccf59fc91c94730dbcc25dfa17f33e2b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 16:12:23 2024 +0100
added test for federated user
commit 67f3f66be481afbd6b85baef1cfb9249d3b0be60
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:37:48 2024 +0100
Created FederatedUser
commit e477181e23af05bd1ecfd9704f937e7dbad518de
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:03:21 2024 +0100
fix typos
commit a1ca7e958af8eddc51255f41823e4ac58da6e686
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 5a7f6f15a6766447e6a270779369942c344d9a98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 14:30:17 2024 +0100
ensure federation info fqdn to lowercase
commit e05c810823baece8ccc0b9758d759d3709abdd3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 13:52:25 2024 +0100
document usermapping chosen
commit e255f737311425fd3de22dc58472e900b431b8e1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 13:30:09 2024 +0100
make class diagram more accurate
commit 7db83688db1852467381cfedd00383792d102c9e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 12:45:33 2024 +0100
updated rebase process
commit ed99dfa99370f903447fa29cb05d1722ea511593
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 2 17:25:02 2024 +0100
new threats thx to gusted
commit 56660e3a0bf21c548e13210538da54ebdcc6c609
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 1 15:48:56 2024 +0100
add aspect resulting from our discussion
commit b02b8a307c7c1ff0a0bee3942ea8b6c9f63c6fe0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:48:44 2024 +0100
fix wording
commit c45e726383d73fcfc8dfd302fcd4de3357b54318
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:43:56 2024 +0100
fix wording
commit 5ef823e3afb1ee24d111de6e37077c8f7d534117
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 27 15:03:37 2024 +0100
adjust urls to changed username
commit a08e435a1e096a89f0f4867aa2b49343421c30ba
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 17:16:26 2024 +0100
updated rebase instructions
commit 6b14d1a5627d38572e45c49b5779db8105627e13
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 16:13:55 2024 +0100
updated rebase instructions
commit 49b014f28f39ac230633d77ee09db76602f8a523
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:33:59 2024 +0100
add reply attack to blog
commit c58a995fb24bbffa5545e751c106b29f37efb6d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:26:16 2024 +0100
refactor FederationInfo -> FederationHost
commit e926ea16e276b6ca7650711165b4084679d1137f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:06:56 2024 +0100
improve english ..
commit e1f27a950cc5b8102c51d247dfd78f9a45270202
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:01:22 2024 +0100
improve english ..
commit 2c55c0252fa4c240f3cf7595aefadc5c789bc2f6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:48:36 2024 +0100
prepare discussion
commit 2b5360a000b2a66ed42fb5ba76eeb9494c3e6409
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:15 2024 +0100
work on adr
commit a6b7cc8e7004691c1bc6250ee955501daaf8afe8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:02 2024 +0100
update needed modules
commit 0453598e3d800b6ac25247b57fb1f59dff6f2ff2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:36 2024 +0100
add some todos
commit 48c6d62e47b84ae6408fc59b17780c84f12b7dda
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:27 2024 +0100
blog: newest on top
commit c6981cdbf697c90e2d43d25522989a8a6b602df6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 08:28:12 2024 +0100
proposals for federatedPerson Mapping
commit e2291fec1e9af8efadd346da845cbc8a1ac3e9e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:40 2024 +0100
think about federated persons
commit 5a88eef78e63bc0222a04bf3f7dd23f4e69a2704
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:26 2024 +0100
Propose the current solution
commit 0ddc2db46ad04e610e27d4ddd6717c0dbfe49ad1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 14:53:00 2024 +0100
mitigate Block by future StartTime
commit 1b35bd2911faf3cb2a5ccad599db90d4dcd2e945
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 13:03:51 2024 +0100
lint fix
commit f25eab35fcc880d387b27cd0316d956be6350f15
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:16:43 2024 +0100
Update for new implementation
commit c4eb763f4a5ff1b2beeb6fda8d4c797e3a2ec1d0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:06:40 2024 +0100
lint fix
commit 9a9ac337661b8d39a206d48f3b599cfa913b9cd2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:22:49 2024 +0100
lint fix
commit ca5eaa8c6b53031c9ca7f124788f2d2bb09ac70d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:08:12 2024 +0100
introduce FI Factory
commit dabd773f6b0dcbdcf9dfa6e159d5c25c5850176b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 14:17:11 2024 +0100
Fix error handling & add timestamp check
commit 40ec0490139db1c983291098350ad7dbe9ed253c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 18:12:22 2024 +0100
add the next todo
commit 7d30d14c76af74f22b47f4d07224d2a09b539bde
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:49:07 2024 +0100
breaking struct adjustment
commit 1f989f2ecd523084fd49b04a9ba9db5387c35fdb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:27:52 2024 +0100
Added FederationInfo Create function
commit 380d3db0bf83ef10565e4a9087ac37d458f03675
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 17:00:17 2024 +0100
integrate federation info in api call
commit 52400f7978a9e1eff8284eaf203d950a1e1ee892
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 16:12:54 2024 +0100
Added FederationInfo get methods for repository
commit bbccc24ed1ea2c3e5f6bea1970649ac8df45daf6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 15:34:34 2024 +0100
test federationinfo validation
commit 9c37272ee9493eba835809f21384da51f97b8dd1
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 14:57:22 2024 +0100
make validateNotEmpty more generic
commit c67be3b6681df86d076ce59f176a70c64289dbd0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:35:43 2024 +0100
start work on federationinfo
commit 8610d94af8cb9015c5b93d382dd1afcaf201574f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:33:52 2024 +0100
start work on federationinfo
commit 12558d62c86d9abd3c4125d5b1b858156b19b92a
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:43:14 2024 +0100
Remove MaxConnsPerHost limit for outgoing connections
commit 87bfa79f71593975a1fa8318aaf519739f479f00
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:29:00 2024 +0100
Configure client against DOS
commit ecf391dcbfbccc4bf67ed15e33c555f20ca78928
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 9 09:14:52 2024 +0100
add some user creation unittests
commit de2569618c51046464e22fe7c6a3eb2a80062413
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 8 18:21:55 2024 +0100
fix: wmail should start with char
commit f0af660cf9b58d4831e3fa43dc982df2b162800a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 18:19:46 2024 +0100
give names to threats
commit a8b132da80bda85948164d0bb993ef6acd865b22
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:43:18 2024 +0100
provide the next testing
commit 2d98b226046109067ef8ecb7ce0ef940e507f92c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:11:20 2024 +0100
blog the next test release
commit 0fac86a384565e4276904b386a7ddd23b199fbdd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 16:42:57 2024 +0100
update to new star activity
commit 42eab2d3046c36c0b52afc9b47e7be669c9e51e5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 12:03:36 2024 +0100
add test-release-branch
commit 680213b4799a05f8f5ac1189a5bc086abce192fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:43:52 2024 +0100
translate scoring
commit 1fc1dda59d6e6645eaf9d9079496acd21fb06894
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:40:35 2024 +0100
Fix wording
commit b978642da07811ed9376f259f2850d6d6185b5c6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:34:32 2024 +0100
improve sequence
commit fe9f26305f7b90173457adf5c01ffe1ec77da363
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:25:43 2024 +0100
update ThreatAnalysis for Like Aktivity
commit 6e467390901f6f7709333e558e156ab1ef79613c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:04:46 2024 +0100
validate person
commit 0505baab2b93be6038d496518826799afb943ede
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:52:41 2024 +0100
ad validation for like activity
commit 3ab2d9a449cdd4430b0791b21ac9669fd2313bbc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:29:12 2024 +0100
rename star -> ForgeLike
commit 4473fb788ae59eb7c42f920d3038db2dce30e5b7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:10:24 2024 +0100
start refactoring star->like
commit 38438b592f3223c2b22e594dee5c3995bec1ea4f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 18:09:27 2023 +0100
rebase conflicts to fix
commit f673dd1ca763daaa0f8d16ae1e75615ff4a1bc11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 16:31:52 2023 +0100
source no longer needed
commit 084eed82a4e3a4d36c2c6a6f14b169aacaa735a0
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 b2a9b530419a67912168f4314e5d6cb147734100
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 8116214727879ca4316ae2cba9675d7170f021f1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:45 2023 +0100
introduce nodeinfo
commit 587bd07372af9c76978823ed4db97a193d8302a2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:31 2023 +0100
mv more fkt to http-client
commit 310d740cee06047cca2ccac50280819cef190640
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Dec 29 12:10:07 2023 +0100
Start NodeInfo implementation
commit 3c2493902d09416370b4597241b6fc2f1b89eb33
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 09:43:10 2023 +0100
adjust to ugly linting
commit e704e5adccdeb8f50b205376166434e2206ebb11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 15:10:21 2023 +0100
adjust to ugly linting
commit 1e40b814a1c4b3e7ed67efb893e116e70892c0ab
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 15:00:42 2023 +0100
Linting
commit 8585edc47ab5a73318775d2d64ad4d2fe2b465dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 14:52:10 2023 +0100
Linting
commit 7d78fb8adcccc02b84e23ff3948b57493fb9eb28
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:47:34 2023 +0100
adjust to ugly linting
commit a64ce2feb1e612797a0c2beeedc9bcb4cc6909fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:20:30 2023 +0100
removed resolved todos
commit 2e031a976319c177e107c717dbb442a970674e39
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:44:45 2023 +0100
WIP Generic IsValid for *Id structs
commit e69e5df08975dd2dc838efb93eaad71a9d0985d2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:42:07 2023 +0100
Assume validated url.URL for NewActorID
commit 6e4467d49db721ad1a9866fcd10522a43b99883a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 11:48:24 2023 +0100
experiment on generalization
commit 75cc5b900db83dec982896e8b794fda3433899a3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 10:19:01 2023 +0100
Add review todo
commit 1dd3084f6654d4894bea521bdb69b8476431d0cf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 15:01:49 2023 +0100
Split test according to actor.go
commit 48cfb521d12193f552079f394cdef35f1911212f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:42 2023 +0100
Add suffix checking helper
commit c887bddb72204430718e47aeef92623a4921dc58
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:23 2023 +0100
Attempt generalization of Id creation
commit 15775ad891755794d0077356ed8780374e3c52e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:21:47 2023 +0100
Fix import
commit 715afb24681707b34f1235b4f4b734b03c60b7d5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 09:30:07 2023 +0100
Add newlines for readability
commit fff4c3f9fc775199591c5acce809b7dd9ce2d76c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 20:12:31 2023 +0100
fix typo
commit 5317832fef9b1af824c60724785627922b9ff347
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 433a38699ab2ecfcdd12dd3c54c0f65d45ce7396
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 12:55:28 2023 +0100
improve test description
commit 65e3f1d0ed03b296ab6380a00c332e102b8b6162
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 4d1492831ddf2aa352bada98f45ec90a45f81c59
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:30:22 2023 +0100
Move char_limiter to utils and rename
commit afc9acd9251f62763cd56c888d57ebe9a88031f2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:23:13 2023 +0100
Limit number of characters on body log
commit 3363b3bf0c374d04e3f8317bebd52fb80374be14
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:22:03 2023 +0100
Validate response before further processing
commit 2f4b1a5cd4eb7a6281b48713a3d31f270ceb76ef
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:20:41 2023 +0100
Use id of existing repo for convenience
commit ff146a9430ab59774b63bf8728f7f1dc320f0bb8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 11:27:44 2023 +0100
Add review todos
commit 071b47b8d0a710712e6c106decd33bf7f0f42813
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 0378b2dc7d546ce3707ab245073221b9e1128a82
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:55:30 2023 +0100
Add questions for review discussion
commit 8a8b6821bacef4c0bffc0e39b8e49e630ffc8fe9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 11:32:57 2023 +0100
Fix bash code block
commit 3327fbc39adcb09934afe33e0529271708fc5740
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:19:35 2023 +0100
Fix typos, small rewordings
commit bd640a70994458409665e8ec0be89387a7fbe7a3
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 70fbfd6cf3c8239e16bec5eb3368738366d344e5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 19 08:36:02 2023 +0100
reflect the discussion with kik
commit f636de050aaed3967adc512e719090e610b9f24c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:47:39 2023 +0100
some improvements
commit bc7515fa317ae68ff3cfd1650ec4ad62a8c98114
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:45:14 2023 +0100
some improvements
commit f9bbb91f114a26e027006c2738a03ebc4385a3b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:38:31 2023 +0100
expose instance for tests
commit 1704ac5bc2ca98bbc36bee695ec2f9122a5389cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 16:02:50 2023 +0100
fix most of the tests
commit 9e6c45f87d7956e75b8fefbc3829806db7907c44
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 15:37:00 2023 +0100
make flows more precise
commit e1d7db178cb1aaeae9194eb29e62a24ba6ebc5e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 14:45:20 2023 +0100
unify logging & minor improvements
commit 42854c900333f8ad66689436f793899768900689
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:49:23 2023 +0100
remove global actionUser
commit a0c008b880ff92a39c5964b6cf8567f658dcd759
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:44:11 2023 +0100
cleand up user creation from ap
commit 6de8fba14d85121fff249b080c2cca30d9db7289
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:53 2023 +0100
minor refactorings
commit 44e10ed65a116aac0c4150df03e0cedb5445a8e3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:37 2023 +0100
get wo body
commit c2a42587d2f338c85d341b40b0bc6206bd4adb23
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 b27460d3fe225ca0f73211bc307023d6fb24377b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 12 11:04:03 2023 +0100
minor refactorings & reviews
commit e893618cdcb07d90aa84c4f4f19fa83ab5b0913d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Dec 11 08:14:18 2023 +0100
add more threats
commit 9633a2005a8e64e48778d505f88ab74cd373e90f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:23:48 2023 +0100
add a sql injection threat
commit bad8e04c3c7a8bf7036c5db480352f79a18b0cbf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:11:38 2023 +0100
cleanup & minor refactorings
commit 3172eb69d2e5e1596be675e72b42deab2e7763b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 18:30:47 2023 +0100
introduce RepositoryId
commit 1fe35e14a57dad5d1cdba945ff627ce844b9ae46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:53:40 2023 +0100
mv our actor code to forgefed
commit abdf56dde1ed2402f5911add9d0888be4d3b432f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:27:29 2023 +0100
move forgefed to models
commit 0b2cf2a55bfabd63d873f22d8aa1ee8512309438
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:26:49 2023 +0100
remov unused experiments
commit 184388015da525d50dec8425a2e58af4ea8a5843
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:51:54 2023 +0100
added more tests
commit b5a467e94d2312b6971cde91b0f6b4c1e2fd6402
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:37:26 2023 +0100
remove unused & implement webfinger
commit 73a38ea0d1c2423fb67579071a703e8eeda09e20
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:52:09 2023 +0100
use new factory function
commit e8371ca94c1a34dc9eb68b573f215bec2ad23ae2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:43:49 2023 +0100
ActorId -> PersonId
commit 3151c8fe81a3fe97935319371e0abdf60d7c144d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:41:22 2023 +0100
make validate more compact
commit be4d3544aea5fa4a9d73b9ef2a58c1d54b2cb629
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:33:26 2023 +0100
Refactor ActorID -> ActorId
commit 7c86f13728763d66700c2b24b5fdb686d2edb548
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:09:22 2023 +0100
make route more compact
commit afcc7f0def5e8088e54a18ee9d5f37d8f1730f3f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:54 2023 +0100
factory instead of parse & validate
commit 6fef54ed1c73d53655fb9fefd9f16d36db7c6689
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:16 2023 +0100
there is a validation module
commit a10a9141f820199c00750e1c9765f0a981b74901
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 15:44:00 2023 +0100
Remove useless call to repo, add todos
commit 3c515c2614350554199701924be4e30688c9e997
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 11:54:07 2023 +0100
Add review todos
commit 22d71e6b30cf1efd540e29276fd53d5e73f03890
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:53:37 2023 +0100
Update ToDo
commit afe659f9f48cdc34f51edb92fc65ba65763bc56c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:54:07 2023 +0100
Implement 5s waiting
commit 745598bba4ea70743fb284e0d6886a58777729fa
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:24:01 2023 +0100
Implement starring
commit 976256bf3d8ea4e9fccabe2e0c9011e582ad1106
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 75ee273f40efa916977ac65964c2ecf1d3db0415
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 7f4667696ff48050eeb05eb0dafe352bfbed57d6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:17:51 2023 +0100
Cleanup imports
commit 6ad52a6d67d429577f58bbbb1bfb763ac0216b2a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:42 2023 +0100
Update tests
commit 25d34e0c146a6f71f66be52d96fb7f10ce3b8ccf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:28 2023 +0100
Check for empty path in IRI
commit f84e0b27e1a71a4fc0606d81ca163a69935d4f98
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:45:24 2023 +0100
Use ValidateAndParseIRI, pass this to ParseActorID
commit fa1acd1ebb895032705572b513e9530cb511aae1
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 4d3ab4dda2e628c63b54ffec02604f8d7190eae0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:47 2023 +0100
Update Validate()
commit 39d4c8dd2df7d6396ec03da626176ed8fadc2dd5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:27 2023 +0100
Generalize validate_is_not_empty
commit 085db0c1279ffdfe3c4f940aca8520fe57c67f71
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:58 2023 +0100
Remove todo
commit 54ef78034edeb88dddeef4b27528c72077d2ac5e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:03 2023 +0100
Don't parse received repoID
commit e3defaa212192df79af7d1be10cfa4983295d982
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 bdddde8b68c5893dd4caefc8a30703b26fa7327f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:42:05 2023 +0100
Fix erroneous param and deprecated --name
commit 28a290da10f029018a359eb9c4133deca54e7c04
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 6 18:32:26 2023 +0100
reviewed current work
commit 02dc8901af20637c476e04778403c2fad3a31b90
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:50 2023 +0100
Fix tests
commit 68cd621053350651464c907901e246f49aa9c4dc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:39 2023 +0100
Test for empty string
commit d27cac5bae24f3cfbf4f1b4dce178dbf2717e4a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:56:26 2023 +0100
Move federated user creation to func
commit 01506f9836c612c0fef758d02dedfeacf1c5db15
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:50:38 2023 +0100
Clearer description
commit 77b6402e7791921f735e2fbb6efae4a7e267d0b2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:58 2023 +0100
Add missing error treatment
commit 946e5cf34cc557106492b7b12c750ef57928860d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:14 2023 +0100
Remove typo in func
commit c0f1681fa3a939be6fcf789c06687b837a673803
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:16:01 2023 +0100
Allow parsing of repository-id too
commit 4f25e5057a8db1a7b0b23b88ed739ca9c320e06f
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 2fb893843bfaa4f0cfb2d42a4d7d2d38e8c718ba
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:13:53 2023 +0100
Move getting person to own function
commit 6d143e74cfd4f1201cc7438758fff9956f08f15f
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 52e950a492a39f15894510c8917cbb9fc7f1983b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 13:06:30 2023 +0100
Check the path for empty strings
commit 65f7124c67898ce34c8975f8544968f2690b5508
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 27c9db1027a3d11d7084df5ebc5e4fb8903bd231
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 11:24:42 2023 +0100
Better function descriptions
commit 9b5d8bbedae035047cec50776f98bd933f76ce76
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 ed1af14cebe53cbc81b5ce2c7a4e4970565714ff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:54:03 2023 +0100
Panic on error, use correct function names
commit 9dcbe0177e99766b9292d886072547f53ba6d79a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:53:10 2023 +0100
Rename targe to remoteStargazer
commit de9e4dea61a09197fdaacbbd49bdc8d5db961024
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:52:33 2023 +0100
Update todos, remove comments
commit 68cc74d13974cbc820cc117840351928042add80
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:50:46 2023 +0100
Use actionsUser for creating http client
commit d65e5aa70e148a8df3f0e2c95a7c8ec36a874569
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:49:27 2023 +0100
Move helper functions to top
commit 1c145d9d6899afcb80245aebf492eece5fa7c44d
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 12:19:22 2023 +0100
WIP: fit generateUUIDMail for testing purposes
commit 11e93784fea51d0459c2f87ea71604161ba388df
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:46:11 2023 +0100
WIP: log Info User created
commit a20f535211ecf168ef7bc65d721515741e7ce3b3
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:38:36 2023 +0100
WIP: pwdgen, username
commit 85e09a7ada86e849a1f37213c7aeb56527a67371
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 10:37:51 2023 +0100
WIP: Generate User if not exists
commit 94880d64f4d10db439abad6b79501f6481cc72cf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 5 09:26:03 2023 +0100
higlight the need for id normalization
commit 231bdb65b83944a564359367798740220b46e629
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 1 17:06:39 2023 +0100
searching for the local person
commit edd7fb77fd70cad1268cd8a92c03573515926d3f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 15:07:13 2023 +0100
WIP create user if not exists
commit 159f3dc3aa22628edc117ada6507dc4097ab3b65
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 30 17:41:08 2023 +0100
describe the current state
commit 41e12d09ef7ca79803347273d3ed062605b9744c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 11:56:12 2023 +0100
WIP create User from person
commit c8456d57ff757afaf77478e71cf140740fe520d3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:10:26 2023 +0100
Add thoughts on user creation
commit c61be31c72a6f6707657f142bb9b66fb3e72852d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:04:26 2023 +0100
Remove redundant person implementation
commit 22ba03ae4dc01802fcfebd2b4ef2f65311e2cbad
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:01:20 2023 +0100
Don't use redundant implementation of person
commit b00b5fa7aff82c419ff9a1fcd46679f36fa97981
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:00:39 2023 +0100
Add some thoughts on repo testing
commit eab016e8968c8a3cf1d3caf2508ea803a3c1c9dd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 29 09:21:54 2023 +0100
add threat analyses
commit a8d5e7ba7770fca8a8a7c37d5da8bf1ffd3a8c0b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:45:04 2023 +0100
Fix typos and format
commit d43c4ba739c7e733be40df59590d328c97cbbc59
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:34:02 2023 +0100
Use person generation
commit 9f016d36731d3b1aa972ce5529f920aba7680512
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:33:22 2023 +0100
Move to extra var
commit 7071117864bc6e1ff385fd30cbc89649d55a34e6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:32:15 2023 +0100
Implement Person creation
commit fde8de4f906b90d766f66d925409134c69ff8877
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:26:35 2023 +0100
Rename to ParseActorIDFromStarActivity
commit 2c4089ba1dece994afc0fd0149cce773f7ea4243
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:24:59 2023 +0100
Add star json with links to lokalhost
commit ede86df6858a1c94b75e43af822828573c1a4f1f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 11:46:24 2023 +0100
Remove todo
commit 7529b9da91e1797b580687a471e36f5376ba3ff3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:59 2023 +0100
Note ToDos for setting up useful tests
commit e60d89cb677f1b32d6fbd5aa10f7af64e19baf93
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:34 2023 +0100
Use correct target for get request
commit 0388240039925b374eb8d1a6f88192dd5aca9865
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:45 2023 +0100
WIP Use non generated HTTP client
commit 4b490802d70b1898928d0998ae7021f5881a52d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:07 2023 +0100
Test creation of client only
commit 61afc65377dc06b5a6ea494fc46881898d760d47
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:53 2023 +0100
Implement Get method on Client struct
commit 56d11bbff479c525b4c594734d2f041c9320ffdd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:18 2023 +0100
Don't hardcode method in NewRequest function
commit 8a5333128394080e3ae9a54b7267efe98c6cd4c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 14:01:32 2023 +0100
Add ToDo
commit 93d79646de1f29ada36f64b6d6d9dfa4db4d4650
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:56:53 2023 +0100
Fix api url
commit 9568eab62af65c75f84494d4a3f65b1a74b5f1c7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:23:03 2023 +0100
Fix tests
commit 6284355e1e0f226b478773aa572907ae49ca579d
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 43ac3ddca9f4b7ef672837ba253c4d6b73fe34cf
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 566b3bc4594bfbcb457a844fdd6163cbad2838c6
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 3a938b6c3f2ae936e41b3b53f03bc51da152f01c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:48:14 2023 +0100
Use and validate source in ActorID struct
commit 546ce5033720ab2c9cf1a9bd70f5cb0e678ee548
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:40:12 2023 +0100
Use PanicIfInvalid in repository.go
commit 9566e9bc5d3b518d5a02a2b74639d5cec4beb568
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:38:01 2023 +0100
Change tests to use IsValid method
commit fccf5c37cad5e2b57d6f0028fc3c38a3e488c0b5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:37:29 2023 +0100
Add IsValid and PanicIfInvalid methods for ActorID
commit 8300d3fbded450a19806fb110108f5b61e928242
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 09:55:47 2023 +0100
Add ToDos from code review
commit 34c511ae98a5702258f77e15ca7a539001d849cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:58 2023 +0100
Use data from actor, improve formatting
commit aee2ee25961a013d8440cd7267938f2fb51cff9d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:22 2023 +0100
Also log error on person creation
commit 91baf2be32471779ffbf42016c519e694c48a18e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:03:24 2023 +0100
Add get functions for userId and HostAndPort
commit 92c089a4e29730a9842e22ff2c69fe069df601d4
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 863b340622ffd1283eb05a02ee0731ab2888ff54
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 8657f70960412922676247b1de049f2ab7cbe98e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:50:32 2023 +0100
Add todo
commit 5efce01f6fd0c4f617553aba9111f391ad74d661
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:17:35 2023 +0100
Make test messages consistent
commit ad8adc880fa60f1c2626db330ec4bb5a8ed02c9d
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 62eae6564f68bfceec42652edfddda05d8e04276
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:40:03 2023 +0100
Fix bug in validation
commit d205c50a4395e648a67e5c067b3cc671d4386e1b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:08:14 2023 +0100
Implement generic validation on ActorID
commit 7b5d13a625779c3db035ca80d0da706b46357568
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:27:44 2023 +0100
Split check for schema and host
commit 3d2b5115ad1c904ee727f7d9cd62469fdf3884cd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:25:43 2023 +0100
Implement and use Validatable interface
commit 235ed7cd1e665b2ece8c8fc1790e16b069e1984f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 13:28:13 2023 +0100
Rename to actorID
commit 5e111f14ef54d3d7fda874129389c1c340dc35b1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:36 2023 +0100
use the swagger-api
commit 109dbd7d7566d6fc4fa69252c33892bd6dbe7224
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:22 2023 +0100
swager generated api
commit 07bd30cf2011b68e67f1ca68c7c1d6e7870a37c8
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 604f0a2477b7c7e71162e54aa5e9fbb82c7def63
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:19:08 2023 +0100
swagger client generation
commit 9e74de829ecd81f685a11a2758c43244d24a17b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 13:38:20 2023 +0100
swagger client generation
commit bc1ff23b23e582dbb1c5ad1f5839c1866312ae38
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:49:01 2023 +0100
swagger client generation
commit d81647b36ef01ded6b1201c70b229cc2b18512e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:37:47 2023 +0100
wip: swagger client generation
commit a954c9764f63aa1a08e26a542a8b1dc630c3a4c3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:28 2023 +0100
wip: swagger client generation
commit fbff67f11a01d706a60eae4cbb813a32c90a5803
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:04 2023 +0100
add some more todos
commit 5c998a5c46e9732295b54c5ae5cf7fc5bcbed714
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 08:22:27 2023 +0100
add comment
commit 5729cee3e55f03eadbbb9d5361dacd695ec0268a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:04:50 2023 +0100
Move test to model/activitypub
commit 7193c0bd9b037837aea2583dce3f53cc5516a36a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:03:05 2023 +0100
WIP test for parsing the actor
commit 0c367070aff6694290f9f3155068f7f0f520d521
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:06:41 2023 +0100
Call validate star
commit b1f370657558167970a6d87edcc5c2cdd9d7a4c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:59 2023 +0100
Introduce validation against source
commit 78fc75135fd5287b35701349b4d846eb3ffd578e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:20 2023 +0100
Rename to ActorData
commit 09058c13c54bc63d781e4508c37f0bfe8557e801
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:53:54 2023 +0100
Rename to actor
commit 91dcd59e68ed9264e356df1283534ef55897ec11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:50:01 2023 +0100
Import parser from model and call validation
commit 273ca49e22e1d2938e30edfc7688490a6d976807
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 e44321221ec2355edb43442d2f260ae5a32c2610
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 15:07:23 2023 +0100
WIP: Add test for parser
commit ad6597667719c9a0db4e65d62aae73666c4a0a2b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 14:27:47 2023 +0100
Reorder functions
commit d52bb4bf8fc564d99baa1e9f3ee966691bf800f3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:31:16 2023 +0100
Remove newline from error string
commit b869d91dc13bacd6bd22eb0e0aa6f9738e3fb163
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:29:17 2023 +0100
Parse Actor URL
commit 7541251d635cfc7fa99bf0ed38c1fc0fd1b6d8c2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:28:26 2023 +0100
Correct API urls
commit 9fa8d19cf40fcf12e8e79d14e30b021b35453eff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:10:31 2023 +0100
Fix typo
commit d10c1094d9d3fae550874b2b5aeec773415c2c22
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:23:03 2023 +0100
add some pseudocode
commit ab928910915e9e94b562ba4bae18b454beadb447
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:59:55 2023 +0100
Use actor
commit b085ce37a6acc4ed25e6929c3a765ca5f8a92b69
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:53:02 2023 +0100
Review
commit d7abff31f63d4e98b0b173a28151667beb3aa5c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:13 2023 +0100
Add ToDos
commit d2b464582f6511c67d69fa57e05ef1b9996aad8e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:00 2023 +0100
Add ToDo
commit e18e90f8dfa03343fb457e835c9395e514bb3122
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:28:38 2023 +0100
Add fieldname and type
commit f48b4d1f556b96d0aaed9bf3a25ccd6f663c1488
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:27:32 2023 +0100
Get Activity field from star
commit e8013250b869fdca44d30b1187bac1ace8cdaea8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:56:16 2023 +0100
Add question
commit 7790e98f47a3f1ab8088ad5573604b1ff47fe4c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:53:47 2023 +0100
Remove unused funcs and structs
commit 51cb9aded0b44c3af6a3225f88adac6122c6fdad
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:08:17 2023 +0100
generate ap-person client
commit 14c74f27cbeec6ea3431b4efe1f962da9cf30cb0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 17:00:08 2023 +0100
tests are now working
commit d28ea1a30b0dc8d5f3c2baf5a79bdae3dd90c400
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:43:44 2023 +0100
Start implementing UnmarshalJSON for Star
commit 43014ca473cfc5ca201fa917d00ddc8dee06a313
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:08:15 2023 +0100
Implement MarshallJSON for Star activity
commit a1885a576735e61bc2602198267dd7d1ccc7f34c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 15:13:26 2023 +0100
star: test first
commit 1044e44ee57910698a18f7bd10e9de2151751c42
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:51:33 2023 +0100
we got a parsed actor
commit b08580280aaafc7333cb342bdcf318bd1d0547df
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:36 2023 +0100
np in case of unauthenticated user
commit 6c1ec0545821d289b9b9a12b084f11fb680e6efa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:00 2023 +0100
extract the relevant app.ini parts
commit 460e2fb6444e43f6acc91ba16b4bd10917ddd89b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:10:23 2023 +0100
prepare next steps
commit 5b01517c1275273218c72a6764b313fc9ae73eec
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:26:13 2023 +0100
Get data from form
commit e846e8225b789e35d0edf7c121daf8f2bd23e97a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:06:17 2023 +0100
Update dev-notes
commit a1e9783cec30e7c56a36cd4aa0f42fa7db3096ca
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:59:51 2023 +0100
expose star activity to swagger
commit d7dfdca8b9976fd76caf43d00df14facce461e11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 15:38:55 2023 +0100
WIP Add star to swagger
commit 17dfc7bdc1b8d301d753c97ed13d2060b5dd7a15
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 14:24:19 2023 +0100
Clearer wording, fix typos
commit 07cf963af3c0f23135f79157458a0042a1767454
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:54:17 2023 +0100
expose star activity to swagger
commit dc1a82bf4cfe17cb7847270f59e185879a3d4c9c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 8 08:56:22 2023 +0100
use star as swagger model
commit 18f4c514ec9c1704d27cfbb969290c22146623c9
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 46fb4fec8ff81cd503204ab20d8e6f0d86866c0d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Nov 7 09:30:32 2023 +0100
add star activity & bind to swagger
commit ff5a4405fd0fc6ba6a9562cafabefdc495ae6a88
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:48 2023 +0100
introduce repo from exosy
commit 157effdd8f74fddea198b18a0d8cefd8d06a1f02
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:24 2023 +0100
adjust star activity example
commit a0efbf7d72a003e6c6f12a85e753abe8473e9c24
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:27:41 2023 +0100
improve git-setup-doc
commit 1f80e99857b1ba9650439eb129150151f393c756
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:12:09 2023 +0100
improve git-setup-doc
commit cde603dd0ee8f6fc85d153f37091b17e3ca6bca8
Author: Mirco <mirco.zachmann@meissa.de>
Date: Fri Nov 3 17:58:47 2023 +0100
improve git sync procedure
commit 71951418059ebc0d72ab52bcb0b0b04e962c2472
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 6587b6d62ba18ece1aa04c13dfcea33bf7c99965
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 4e1e65e14f757bf63dff881ce7b626e05f12b474
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:53 2023 +0100
log repository under activity
commit fe6f625923dc2690fd7d2edaa1f1962e998d0c58
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:21 2023 +0100
temp deactivate security
commit b7082b7e9859a31229a8a998e1d61f2d0ab93a85
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:05:48 2023 +0100
improve rebase procedure
commit 87324d155340ae3bbcd6d35efa53b9be7c16cbc5
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 0d5702e5010fefa68bdf7d251a62fec1253b037c
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 6ceb1d20405358b13181181b96510223d60f0c7a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 20:13:24 2023 +0200
add f3 dep
commit 0572725204961bb95cf8bec6d8c594be226a3167
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:33:14 2023 +0200
add some rought branch sync description
commit fe2a3d86d47e8ac7469cf56ce8bf2de7da6fb3ca
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:10:13 2023 +0200
get repo now works somehow
commit da7a38b03dbd83228f3482d5cb55841f21ae5055
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 13:24:05 2023 +0200
enable federation
commit 64abf87fb0df10f3ef40cbf20dd2a5e7fbd34a97
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 12:12:31 2023 +0200
added some logs
commit 3dbcf34a1650d05861dd6cbd08322a8e4bc1962a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 11:50:39 2023 +0200
share dev notes
commit 511ab65df4fb6a662e66b3dfcfcbd8c9035be291
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Oct 24 10:34:53 2023 +0200
Fix syntax error, unexpected new line
commit 154be0a6377380417caf12f74af26715bc2deac6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Oct 24 09:10:31 2023 +0200
wip: compile one step further
commit 317b7fac8f92dd9890b1b2be813c30e63a37cf79
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Oct 23 17:16:38 2023 +0200
wip: load repo to ctx
commit 643681663fff73a0f74e892dc9f1a34743fae08b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:27:55 2023 +0200
add activity sequence
commit 68318f263295f7fd8db8a0b6468b8f5514b5d66c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:12:37 2023 +0200
considerations about star activity
commit d4f507a223a4797f4e829670fe80f7712757918b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:45:12 2023 +0200
remove unused imports
commit a87cbda165329cd5627d00276fd7ee147e6f9286
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:16:04 2023 +0200
add repository actor
2024-06-06 09:58:11 +03:00
|
|
|
err := repo_service.StarRepoAndSendLikeActivities(ctx, *ctx.Doer, ctx.Repo.Repository.ID, star)
|
2024-02-26 00:45:57 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError(fmt.Sprintf("Action (star, %t)", star), err)
|
|
|
|
return
|
|
|
|
}
|
2015-07-23 23:50:05 +03:00
|
|
|
|
2024-02-05 12:56:20 +03:00
|
|
|
ctx.Data["IsStaringRepo"] = repo_model.IsStaring(ctx, ctx.Doer.ID, ctx.Repo.Repository.ID)
|
|
|
|
|
|
|
|
// we have to reload the repository because NumStars or NumWatching (used in the templates) has just changed
|
|
|
|
ctx.Data["Repository"], err = repo_model.GetRepositoryByName(ctx, ctx.Repo.Repository.OwnerID, ctx.Repo.Repository.Name)
|
|
|
|
if err != nil {
|
2024-02-26 00:45:57 +03:00
|
|
|
ctx.ServerError(fmt.Sprintf("Action (star, %t)", star), err)
|
2024-02-05 12:56:20 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
ctx.HTML(http.StatusOK, tplStarUnstar)
|
|
|
|
}
|
2024-02-26 00:45:57 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
func ActionTransfer(accept bool) func(ctx *context.Context) {
|
|
|
|
return func(ctx *context.Context) {
|
|
|
|
var action string
|
|
|
|
if accept {
|
|
|
|
action = "accept_transfer"
|
|
|
|
} else {
|
|
|
|
action = "reject_transfer"
|
|
|
|
}
|
|
|
|
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
ok, err := acceptOrRejectRepoTransfer(ctx, accept)
|
2024-02-26 00:45:57 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError(fmt.Sprintf("Action (%s)", action), err)
|
|
|
|
return
|
|
|
|
}
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
if !ok {
|
|
|
|
return
|
|
|
|
}
|
2024-02-05 12:56:20 +03:00
|
|
|
|
2024-02-26 00:45:57 +03:00
|
|
|
ctx.RedirectToFirst(ctx.FormString("redirect_to"), ctx.Repo.RepoLink)
|
|
|
|
}
|
2014-08-11 07:11:18 +04:00
|
|
|
}
|
2014-07-26 08:24:27 +04:00
|
|
|
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
func acceptOrRejectRepoTransfer(ctx *context.Context, accept bool) (bool, error) {
|
2022-12-10 05:46:31 +03:00
|
|
|
repoTransfer, err := models.GetPendingRepositoryTransfer(ctx, ctx.Repo.Repository)
|
2021-03-01 03:47:30 +03:00
|
|
|
if err != nil {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return false, err
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
|
2022-12-10 05:46:31 +03:00
|
|
|
if err := repoTransfer.LoadAttributes(ctx); err != nil {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return false, err
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
|
2023-09-16 17:39:12 +03:00
|
|
|
if !repoTransfer.CanUserAcceptTransfer(ctx, ctx.Doer) {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return false, errors.New("user does not have enough permissions")
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if accept {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
if !ctx.CheckQuota(quota_model.LimitSubjectSizeReposAll, ctx.Doer.ID, ctx.Doer.Name) {
|
|
|
|
return false, nil
|
|
|
|
}
|
|
|
|
|
2021-12-21 05:01:58 +03:00
|
|
|
if ctx.Repo.GitRepo != nil {
|
|
|
|
ctx.Repo.GitRepo.Close()
|
|
|
|
ctx.Repo.GitRepo = nil
|
|
|
|
}
|
|
|
|
|
2022-12-10 05:46:31 +03:00
|
|
|
if err := repo_service.TransferOwnership(ctx, repoTransfer.Doer, repoTransfer.Recipient, ctx.Repo.Repository, repoTransfer.Teams); err != nil {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return false, err
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
ctx.Flash.Success(ctx.Tr("repo.settings.transfer.success"))
|
|
|
|
} else {
|
2024-02-05 09:17:23 +03:00
|
|
|
if err := repo_service.CancelRepositoryTransfer(ctx, ctx.Repo.Repository); err != nil {
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return false, err
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
ctx.Flash.Success(ctx.Tr("repo.settings.transfer.rejected"))
|
|
|
|
}
|
|
|
|
|
2023-02-11 09:34:11 +03:00
|
|
|
ctx.Redirect(ctx.Repo.Repository.Link())
|
feat(quota): Quota enforcement
The previous commit laid out the foundation of the quota engine, this
one builds on top of it, and implements the actual enforcement.
Enforcement happens at the route decoration level, whenever possible. In
case of the API, when over quota, a 413 error is returned, with an
appropriate JSON payload. In case of web routes, a 413 HTML page is
rendered with similar information.
This implementation is for a **soft quota**: quota usage is checked
before an operation is to be performed, and the operation is *only*
denied if the user is already over quota. This makes it possible to go
over quota, but has the significant advantage of being practically
implementable within the current Forgejo architecture.
The goal of enforcement is to deny actions that can make the user go
over quota, and allow the rest. As such, deleting things should - in
almost all cases - be possible. A prime exemption is deleting files via
the web ui: that creates a new commit, which in turn increases repo
size, thus, is denied if the user is over quota.
Limitations
-----------
Because we generally work at a route decorator level, and rarely
look *into* the operation itself, `size:repos:public` and
`size:repos:private` are not enforced at this level, the engine enforces
against `size:repos:all`. This will be improved in the future.
AGit does not play very well with this system, because AGit PRs count
toward the repo they're opened against, while in the GitHub-style fork +
pull model, it counts against the fork. This too, can be improved in the
future.
There's very little done on the UI side to guard against going over
quota. What this patch implements, is enforcement, not prevention. The
UI will still let you *try* operations that *will* result in a denial.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-07-06 11:30:16 +03:00
|
|
|
return true, nil
|
2021-03-01 03:47:30 +03:00
|
|
|
}
|
|
|
|
|
2019-01-07 01:37:30 +03:00
|
|
|
// RedirectDownload return a file based on the following infos:
|
|
|
|
func RedirectDownload(ctx *context.Context) {
|
|
|
|
var (
|
|
|
|
vTag = ctx.Params("vTag")
|
|
|
|
fileName = ctx.Params("fileName")
|
|
|
|
)
|
|
|
|
tagNames := []string{vTag}
|
|
|
|
curRepo := ctx.Repo.Repository
|
2024-01-15 05:19:25 +03:00
|
|
|
releases, err := db.Find[repo_model.Release](ctx, repo_model.FindReleasesOptions{
|
2024-06-15 07:20:14 +03:00
|
|
|
IncludeDrafts: ctx.Repo.CanWrite(unit.TypeReleases),
|
|
|
|
RepoID: curRepo.ID,
|
|
|
|
TagNames: tagNames,
|
2024-01-15 05:19:25 +03:00
|
|
|
})
|
2019-01-07 01:37:30 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("RedirectDownload", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
if len(releases) == 1 {
|
|
|
|
release := releases[0]
|
2022-05-20 17:08:52 +03:00
|
|
|
att, err := repo_model.GetAttachmentByReleaseIDFileName(ctx, release.ID, fileName)
|
2019-01-07 01:37:30 +03:00
|
|
|
if err != nil {
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.Error(http.StatusNotFound)
|
2019-01-07 01:37:30 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
if att != nil {
|
2023-04-12 12:05:23 +03:00
|
|
|
ServeAttachment(ctx, att.UUID)
|
2019-01-07 01:37:30 +03:00
|
|
|
return
|
|
|
|
}
|
2023-09-06 14:06:04 +03:00
|
|
|
} else if len(releases) == 0 && vTag == "latest" {
|
|
|
|
// GitHub supports the alias "latest" for the latest release
|
|
|
|
// We only fetch the latest release if the tag is "latest" and no release with the tag "latest" exists
|
2023-09-25 16:17:37 +03:00
|
|
|
release, err := repo_model.GetLatestReleaseByRepoID(ctx, ctx.Repo.Repository.ID)
|
2023-09-06 14:06:04 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.Error(http.StatusNotFound)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
att, err := repo_model.GetAttachmentByReleaseIDFileName(ctx, release.ID, fileName)
|
|
|
|
if err != nil {
|
|
|
|
ctx.Error(http.StatusNotFound)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
if att != nil {
|
|
|
|
ServeAttachment(ctx, att.UUID)
|
|
|
|
return
|
|
|
|
}
|
2019-01-07 01:37:30 +03:00
|
|
|
}
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.Error(http.StatusNotFound)
|
2019-01-07 01:37:30 +03:00
|
|
|
}
|
|
|
|
|
2021-06-24 00:12:38 +03:00
|
|
|
// Download an archive of a repository
|
|
|
|
func Download(ctx *context.Context) {
|
|
|
|
uri := ctx.Params("*")
|
2024-04-02 17:34:57 +03:00
|
|
|
aReq, err := archiver_service.NewRequest(ctx, ctx.Repo.Repository.ID, ctx.Repo.GitRepo, uri)
|
2021-06-24 00:12:38 +03:00
|
|
|
if err != nil {
|
2021-11-17 22:47:35 +03:00
|
|
|
if errors.Is(err, archiver_service.ErrUnknownArchiveFormat{}) {
|
|
|
|
ctx.Error(http.StatusBadRequest, err.Error())
|
2022-08-29 12:45:20 +03:00
|
|
|
} else if errors.Is(err, archiver_service.RepoRefNotFoundError{}) {
|
|
|
|
ctx.Error(http.StatusNotFound, err.Error())
|
2021-11-17 22:47:35 +03:00
|
|
|
} else {
|
|
|
|
ctx.ServerError("archiver_service.NewRequest", err)
|
|
|
|
}
|
2021-06-24 00:12:38 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2022-08-29 12:45:20 +03:00
|
|
|
archiver, err := aReq.Await(ctx)
|
2021-06-24 00:12:38 +03:00
|
|
|
if err != nil {
|
2022-08-29 12:45:20 +03:00
|
|
|
ctx.ServerError("archiver.Await", err)
|
2021-06-24 00:12:38 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2022-08-29 12:45:20 +03:00
|
|
|
download(ctx, aReq.GetArchiveName(), archiver)
|
2021-06-24 00:12:38 +03:00
|
|
|
}
|
|
|
|
|
2021-12-06 10:19:28 +03:00
|
|
|
func download(ctx *context.Context, archiveName string, archiver *repo_model.RepoArchiver) {
|
2021-06-24 00:12:38 +03:00
|
|
|
downloadName := ctx.Repo.Repository.Name + "-" + archiveName
|
|
|
|
|
Add an immutable tarball link to archive download headers for Nix
This allows `nix flake metadata` and nix in general to lock a *branch*
tarball link in a manner that causes it to fetch the correct commit even
if the branch is updated with a newer version.
For further context, Nix flakes are a feature that, among other things,
allows for "inputs" that are "github:someuser/somerepo",
"https://some-tarball-service/some-tarball.tar.gz",
"sourcehut:~meow/nya" or similar. This feature allows our users to fetch
tarballs of git-based inputs to their builds rather than using git to
fetch them, saving significant download time.
There is presently no gitea or forgejo specific fetcher in Nix, and we
don't particularly wish to have one. Ideally (as a developer on a Nix
implementation myself) we could just use the generic tarball fetcher and
not add specific forgejo support, but to do so, we need additional
metadata to know which commit a given *branch* tarball represents, which
is the purpose of the Link header added here.
The result of this patch is that a Nix user can specify `inputs.something.url =
"https://forgejo-host/some/project/archive/main.tar.gz"` in flake.nix
and get a link to some concrete tarball for the actual commit in the
lock file, then when they run `nix flake update` in the future, they
will get the latest commit in that branch.
Example of it working locally:
» nix flake metadata --refresh 'http://localhost:3000/api/v1/repos/jade/cats/archive/main.tar.gz?dir=configs/nix'
Resolved URL: http://localhost:3000/api/v1/repos/jade/cats/archive/main.tar.gz?dir=configs/nix
Locked URL: http://localhost:3000/api/v1/repos/jade/cats/archive/804ede182b6b66469b23ea4d21eece52766b7a06.tar.gz?dir=configs
/nix&narHash=sha256-yP7KkDVfuixZzs0fsqhSETXFC0y8m6nmPLw2GrAMxKQ%3D
Description: Computers with the nixos
Path: /nix/store/s856c6yqghyan4v0zy6jj19ksv0q22nx-source
Revision: 804ede182b6b66469b23ea4d21eece52766b7a06
Last modified: 2024-05-02 00:48:32
For details on the header value, see:
https://github.com/nixos/nix/blob/56763ff918eb308db23080e560ed2ea3e00c80a7/doc/manual/src/protocols/tarball-fetcher.md
2024-05-03 03:51:26 +03:00
|
|
|
// Add nix format link header so tarballs lock correctly:
|
|
|
|
// https://github.com/nixos/nix/blob/56763ff918eb308db23080e560ed2ea3e00c80a7/doc/manual/src/protocols/tarball-fetcher.md
|
|
|
|
ctx.Resp.Header().Add("Link", fmt.Sprintf("<%s/archive/%s.tar.gz?rev=%s>; rel=\"immutable\"",
|
|
|
|
ctx.Repo.Repository.APIURL(),
|
|
|
|
archiver.CommitID, archiver.CommitID))
|
|
|
|
|
2022-08-29 12:45:20 +03:00
|
|
|
rPath := archiver.RelativePath()
|
2023-06-14 06:42:38 +03:00
|
|
|
if setting.RepoArchive.Storage.MinioConfig.ServeDirect {
|
2022-01-20 20:46:10 +03:00
|
|
|
// If we have a signed url (S3, object storage), redirect to this directly.
|
2021-06-24 00:12:38 +03:00
|
|
|
u, err := storage.RepoArchives.URL(rPath, downloadName)
|
|
|
|
if u != nil && err == nil {
|
2024-04-02 17:34:57 +03:00
|
|
|
if archiver.ReleaseID != 0 {
|
|
|
|
err = repo_model.CountArchiveDownload(ctx, ctx.Repo.Repository.ID, archiver.ReleaseID, archiver.Type)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("CountArchiveDownload", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-06-24 00:12:38 +03:00
|
|
|
ctx.Redirect(u.String())
|
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-01-20 20:46:10 +03:00
|
|
|
// If we have matched and access to release or issue
|
2021-06-24 00:12:38 +03:00
|
|
|
fr, err := storage.RepoArchives.Open(rPath)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("Open", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
defer fr.Close()
|
2022-08-25 19:05:21 +03:00
|
|
|
|
2024-04-02 17:34:57 +03:00
|
|
|
if archiver.ReleaseID != 0 {
|
|
|
|
err = repo_model.CountArchiveDownload(ctx, ctx.Repo.Repository.ID, archiver.ReleaseID, archiver.Type)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("CountArchiveDownload", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-11-24 17:25:13 +03:00
|
|
|
ctx.ServeContent(fr, &context.ServeHeaderOptions{
|
|
|
|
Filename: downloadName,
|
|
|
|
LastModified: archiver.CreatedUnix.AsLocalTime(),
|
|
|
|
})
|
2021-06-24 00:12:38 +03:00
|
|
|
}
|
|
|
|
|
[RFC] Make archival asynchronous (#11296)
* Make archival asynchronous
The prime benefit being sought here is for large archives to not
clog up the rendering process and cause unsightly proxy timeouts.
As a secondary benefit, archive-in-progress is moved out of the
way into a /tmp file so that new archival requests for the same
commit will not get fulfilled based on an archive that isn't yet
finished.
This asynchronous system is fairly primitive; request comes in, we'll
spawn off a new goroutine to handle it, then we'll mark it as done.
Status requests will see if the file exists in the final location,
and report the archival as done when it exists.
Fixes #11265
* Archive links: drop initial delay to three-quarters of a second
Some, or perhaps even most, archives will not take all that long to archive.
The archive process starts as soon as the download button is initially
clicked, so in theory they could be done quite quickly. Drop the initial
delay down to three-quarters of a second to make it more responsive in the
common case of the archive being quickly created.
* archiver: restructure a little bit to facilitate testing
This introduces two sync.Cond pointers to the archiver package. If they're
non-nil when we go to process a request, we'll wait until signalled (at all)
to proceed. The tests will then create the sync.Cond so that it can signal
at-will and sanity-check the state of the queue at different phases.
The author believes that nil-checking these two sync.Cond pointers on every
archive processing will introduce minimal overhead with no impact on
maintainability.
* gofmt nit: no space around binary + operator
* services: archiver: appease golangci-lint, lock queueMutex
Locking/unlocking the queueMutex is allowed, but not required, for
Cond.Signal() and Cond.Broadcast(). The magic at play here is just a little
too much for golangci-lint, as we take the address of queueMutex and this is
mostly used in archiver.go; the variable still gets flagged as unused.
* archiver: tests: fix several timing nits
Once we've signaled a cond var, it may take some small amount of time for
the goroutines released to hit the spot we're wanting them to be at. Give
them an appropriate amount of time.
* archiver: tests: no underscore in var name, ungh
* archiver: tests: Test* is run in a separate context than TestMain
We must setup the mutex/cond variables at the beginning of any test that's
going to use it, or else these will be nil when the test is actually ran.
* archiver: tests: hopefully final tweak
Things got shuffled around such that we carefully build up and release
requests from the queue, so we can validate the state of the queue at each
step. Fix some assertions that no longer hold true as fallout.
* repo: Download: restore some semblance of previous behavior
When archival was made async, the GET endpoint was only useful if a previous
POST had initiated the download. This commit restores the previous behavior,
to an extent; we'll now submit the archive request there and return a
"202 Accepted" to indicate that it's processing if we didn't manage to
complete the request within ~2 seconds of submission.
This lets a client directly GET the archive, and gives them some indication
that they may attempt to GET it again at a later time.
* archiver: tests: simplify a bit further
We don't need to risk failure and use time.ParseDuration to get 2 *
time.Second.
else if isn't really necessary if the conditions are simple enough and lead
to the same result.
* archiver: tests: resolve potential source of flakiness
Increase all timeouts to 10 seconds; these aren't hard-coded sleeps, so
there's no guarantee we'll actually take that long. If we need longer to
not have a false-positive, then so be it.
While here, various assert.{Not,}Equal arguments are flipped around so that
the wording in error output reflects reality, where the expected argument is
second and actual third.
* archiver: setup infrastructure for notifying consumers of completion
This API will *not* allow consumers to subscribe to specific requests being
completed, just *any* request being completed. The caller is responsible for
determining if their request is satisfied and waiting again if needed.
* repo: archive: make GET endpoint synchronous again
If the request isn't complete, this endpoint will now submit the request and
wait for completion using the new API. This may still be susceptible to
timeouts for larger repos, but other endpoints now exist that the web
interface will use to negotiate its way through larger archive processes.
* archiver: tests: amend test to include WaitForCompletion()
This is a trivial one, so go ahead and include it.
* archiver: tests: fix test by calling NewContext()
The mutex is otherwise uninitialized, so we need to ensure that we're
actually initializing it if we plan to test it.
* archiver: tests: integrate new WaitForCompletion a little better
We can use this to wait for archives to come in, rather than spinning and
hoping with a timeout.
* archiver: tests: combine numQueued declaration with next-instruction assignment
* routers: repo: reap unused archiving flag from DownloadStatus()
This had some planned usage before, indicating whether this request
initiated the archival process or not. After several rounds of refactoring,
this use was deemed not necessary for much of anything and got boiled down
to !complete in all cases.
* services: archiver: restructure to use a channel
We now offer two forms of waiting for a request:
- WaitForCompletion: wait for completion with no timeout
- TimedWaitForCompletion: wait for completion with timeout
In both cases, we wait for the given request's cchan to close; in the latter
case, we do so with the caller-provided timeout. This completely removes the
need for busy-wait loops in Download/InitiateDownload, as it's fairly clean
to wait on a channel with timeout.
* services: archiver: use defer to unlock now that we can
This previously carried the lock into the goroutine, but an intermediate
step just added the request to archiveInProgress outside of the new
goroutine and removed the need for the goroutine to start out with it.
* Revert "archiver: tests: combine numQueued declaration with next-instruction assignment"
This reverts commit bcc52140238e16680f2e05e448e9be51372afdf5.
Revert "archiver: tests: integrate new WaitForCompletion a little better"
This reverts commit 9fc8bedb5667d24d3a3c7843dc28a229efffb1e6.
Revert "archiver: tests: fix test by calling NewContext()"
This reverts commit 709c35685eaaf261ebbb7d3420e3376a4ee8e7f2.
Revert "archiver: tests: amend test to include WaitForCompletion()"
This reverts commit 75261f56bc05d1fa8ff7e81dcbc0ccd93fdc9d50.
* archiver: tests: first attempt at WaitForCompletion() tests
* archiver: tests: slight improvement, less busy-loop
Just wait for the requests to complete in order, instead of busy-waiting
with a timeout. This is slightly less fragile.
While here, reverse the arguments of a nearby assert.Equal() so that
expected/actual are correct in any test output.
* archiver: address lint nits
* services: archiver: only close the channel once
* services: archiver: use a struct{} for the wait channel
This makes it obvious that the channel is only being used as a signal,
rather than anything useful being piped through it.
* archiver: tests: fix expectations
Move the close of the channel into doArchive() itself; notably, before these
goroutines move on to waiting on the Release cond.
The tests are adjusted to reflect that we can't WaitForCompletion() after
they've already completed, as WaitForCompletion() doesn't indicate that
they've been released from the queue yet.
* archiver: tests: set cchan to nil for comparison
* archiver: move ctx.Error's back into the route handlers
We shouldn't be setting this in a service, we should just be validating the
request that we were handed.
* services: archiver: use regex to match a hash
This makes sure we don't try and use refName as a hash when it's clearly not
one, e.g. heads/pull/foo.
* routers: repo: remove the weird /archive/status endpoint
We don't need to do this anymore, we can just continue POSTing to the
archive/* endpoint until we're told the download's complete. This avoids a
potential naming conflict, where a ref could start with "status/"
* archiver: tests: bump reasonable timeout to 15s
* archiver: tests: actually release timedReq
* archiver: tests: run through inFlight instead of manually checking
While we're here, add a test for manually re-processing an archive that's
already been complete. Re-open the channel and mark it incomplete, so that
doArchive can just mark it complete again.
* initArchiveLinks: prevent default behavior from clicking
* archiver: alias gitea's context, golang context import pending
* archiver: simplify logic, just reconstruct slices
While the previous logic was perhaps slightly more efficient, the
new variant's readability is much improved.
* archiver: don't block shutdown on waiting for archive
The technique established launches a goroutine to do the wait,
which will close a wait channel upon termination. For the timeout
case, we also send back a value indicating whether the timeout was
hit or not.
The timeouts are expected to be relatively small, but still a multi-
second delay to shutdown due to this could be unfortunate.
* archiver: simplify shutdown logic
We can just grab the shutdown channel from the graceful manager instead of
constructing a channel to halt the caller and/or pass a result back.
* Style issues
* Fix mis-merge
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2020-11-07 23:27:28 +03:00
|
|
|
// InitiateDownload will enqueue an archival request, as needed. It may submit
|
|
|
|
// a request that's already in-progress, but the archiver service will just
|
|
|
|
// kind of drop it on the floor if this is the case.
|
|
|
|
func InitiateDownload(ctx *context.Context) {
|
|
|
|
uri := ctx.Params("*")
|
2024-04-02 17:34:57 +03:00
|
|
|
aReq, err := archiver_service.NewRequest(ctx, ctx.Repo.Repository.ID, ctx.Repo.GitRepo, uri)
|
2021-06-24 00:12:38 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("archiver_service.NewRequest", err)
|
|
|
|
return
|
|
|
|
}
|
[RFC] Make archival asynchronous (#11296)
* Make archival asynchronous
The prime benefit being sought here is for large archives to not
clog up the rendering process and cause unsightly proxy timeouts.
As a secondary benefit, archive-in-progress is moved out of the
way into a /tmp file so that new archival requests for the same
commit will not get fulfilled based on an archive that isn't yet
finished.
This asynchronous system is fairly primitive; request comes in, we'll
spawn off a new goroutine to handle it, then we'll mark it as done.
Status requests will see if the file exists in the final location,
and report the archival as done when it exists.
Fixes #11265
* Archive links: drop initial delay to three-quarters of a second
Some, or perhaps even most, archives will not take all that long to archive.
The archive process starts as soon as the download button is initially
clicked, so in theory they could be done quite quickly. Drop the initial
delay down to three-quarters of a second to make it more responsive in the
common case of the archive being quickly created.
* archiver: restructure a little bit to facilitate testing
This introduces two sync.Cond pointers to the archiver package. If they're
non-nil when we go to process a request, we'll wait until signalled (at all)
to proceed. The tests will then create the sync.Cond so that it can signal
at-will and sanity-check the state of the queue at different phases.
The author believes that nil-checking these two sync.Cond pointers on every
archive processing will introduce minimal overhead with no impact on
maintainability.
* gofmt nit: no space around binary + operator
* services: archiver: appease golangci-lint, lock queueMutex
Locking/unlocking the queueMutex is allowed, but not required, for
Cond.Signal() and Cond.Broadcast(). The magic at play here is just a little
too much for golangci-lint, as we take the address of queueMutex and this is
mostly used in archiver.go; the variable still gets flagged as unused.
* archiver: tests: fix several timing nits
Once we've signaled a cond var, it may take some small amount of time for
the goroutines released to hit the spot we're wanting them to be at. Give
them an appropriate amount of time.
* archiver: tests: no underscore in var name, ungh
* archiver: tests: Test* is run in a separate context than TestMain
We must setup the mutex/cond variables at the beginning of any test that's
going to use it, or else these will be nil when the test is actually ran.
* archiver: tests: hopefully final tweak
Things got shuffled around such that we carefully build up and release
requests from the queue, so we can validate the state of the queue at each
step. Fix some assertions that no longer hold true as fallout.
* repo: Download: restore some semblance of previous behavior
When archival was made async, the GET endpoint was only useful if a previous
POST had initiated the download. This commit restores the previous behavior,
to an extent; we'll now submit the archive request there and return a
"202 Accepted" to indicate that it's processing if we didn't manage to
complete the request within ~2 seconds of submission.
This lets a client directly GET the archive, and gives them some indication
that they may attempt to GET it again at a later time.
* archiver: tests: simplify a bit further
We don't need to risk failure and use time.ParseDuration to get 2 *
time.Second.
else if isn't really necessary if the conditions are simple enough and lead
to the same result.
* archiver: tests: resolve potential source of flakiness
Increase all timeouts to 10 seconds; these aren't hard-coded sleeps, so
there's no guarantee we'll actually take that long. If we need longer to
not have a false-positive, then so be it.
While here, various assert.{Not,}Equal arguments are flipped around so that
the wording in error output reflects reality, where the expected argument is
second and actual third.
* archiver: setup infrastructure for notifying consumers of completion
This API will *not* allow consumers to subscribe to specific requests being
completed, just *any* request being completed. The caller is responsible for
determining if their request is satisfied and waiting again if needed.
* repo: archive: make GET endpoint synchronous again
If the request isn't complete, this endpoint will now submit the request and
wait for completion using the new API. This may still be susceptible to
timeouts for larger repos, but other endpoints now exist that the web
interface will use to negotiate its way through larger archive processes.
* archiver: tests: amend test to include WaitForCompletion()
This is a trivial one, so go ahead and include it.
* archiver: tests: fix test by calling NewContext()
The mutex is otherwise uninitialized, so we need to ensure that we're
actually initializing it if we plan to test it.
* archiver: tests: integrate new WaitForCompletion a little better
We can use this to wait for archives to come in, rather than spinning and
hoping with a timeout.
* archiver: tests: combine numQueued declaration with next-instruction assignment
* routers: repo: reap unused archiving flag from DownloadStatus()
This had some planned usage before, indicating whether this request
initiated the archival process or not. After several rounds of refactoring,
this use was deemed not necessary for much of anything and got boiled down
to !complete in all cases.
* services: archiver: restructure to use a channel
We now offer two forms of waiting for a request:
- WaitForCompletion: wait for completion with no timeout
- TimedWaitForCompletion: wait for completion with timeout
In both cases, we wait for the given request's cchan to close; in the latter
case, we do so with the caller-provided timeout. This completely removes the
need for busy-wait loops in Download/InitiateDownload, as it's fairly clean
to wait on a channel with timeout.
* services: archiver: use defer to unlock now that we can
This previously carried the lock into the goroutine, but an intermediate
step just added the request to archiveInProgress outside of the new
goroutine and removed the need for the goroutine to start out with it.
* Revert "archiver: tests: combine numQueued declaration with next-instruction assignment"
This reverts commit bcc52140238e16680f2e05e448e9be51372afdf5.
Revert "archiver: tests: integrate new WaitForCompletion a little better"
This reverts commit 9fc8bedb5667d24d3a3c7843dc28a229efffb1e6.
Revert "archiver: tests: fix test by calling NewContext()"
This reverts commit 709c35685eaaf261ebbb7d3420e3376a4ee8e7f2.
Revert "archiver: tests: amend test to include WaitForCompletion()"
This reverts commit 75261f56bc05d1fa8ff7e81dcbc0ccd93fdc9d50.
* archiver: tests: first attempt at WaitForCompletion() tests
* archiver: tests: slight improvement, less busy-loop
Just wait for the requests to complete in order, instead of busy-waiting
with a timeout. This is slightly less fragile.
While here, reverse the arguments of a nearby assert.Equal() so that
expected/actual are correct in any test output.
* archiver: address lint nits
* services: archiver: only close the channel once
* services: archiver: use a struct{} for the wait channel
This makes it obvious that the channel is only being used as a signal,
rather than anything useful being piped through it.
* archiver: tests: fix expectations
Move the close of the channel into doArchive() itself; notably, before these
goroutines move on to waiting on the Release cond.
The tests are adjusted to reflect that we can't WaitForCompletion() after
they've already completed, as WaitForCompletion() doesn't indicate that
they've been released from the queue yet.
* archiver: tests: set cchan to nil for comparison
* archiver: move ctx.Error's back into the route handlers
We shouldn't be setting this in a service, we should just be validating the
request that we were handed.
* services: archiver: use regex to match a hash
This makes sure we don't try and use refName as a hash when it's clearly not
one, e.g. heads/pull/foo.
* routers: repo: remove the weird /archive/status endpoint
We don't need to do this anymore, we can just continue POSTing to the
archive/* endpoint until we're told the download's complete. This avoids a
potential naming conflict, where a ref could start with "status/"
* archiver: tests: bump reasonable timeout to 15s
* archiver: tests: actually release timedReq
* archiver: tests: run through inFlight instead of manually checking
While we're here, add a test for manually re-processing an archive that's
already been complete. Re-open the channel and mark it incomplete, so that
doArchive can just mark it complete again.
* initArchiveLinks: prevent default behavior from clicking
* archiver: alias gitea's context, golang context import pending
* archiver: simplify logic, just reconstruct slices
While the previous logic was perhaps slightly more efficient, the
new variant's readability is much improved.
* archiver: don't block shutdown on waiting for archive
The technique established launches a goroutine to do the wait,
which will close a wait channel upon termination. For the timeout
case, we also send back a value indicating whether the timeout was
hit or not.
The timeouts are expected to be relatively small, but still a multi-
second delay to shutdown due to this could be unfortunate.
* archiver: simplify shutdown logic
We can just grab the shutdown channel from the graceful manager instead of
constructing a channel to halt the caller and/or pass a result back.
* Style issues
* Fix mis-merge
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2020-11-07 23:27:28 +03:00
|
|
|
if aReq == nil {
|
2021-04-05 18:30:52 +03:00
|
|
|
ctx.Error(http.StatusNotFound)
|
2014-09-25 01:43:33 +04:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2022-03-22 18:22:54 +03:00
|
|
|
archiver, err := repo_model.GetRepoArchiver(ctx, aReq.RepoID, aReq.Type, aReq.CommitID)
|
2021-06-24 00:12:38 +03:00
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("archiver_service.StartArchive", err)
|
|
|
|
return
|
|
|
|
}
|
2021-12-06 10:19:28 +03:00
|
|
|
if archiver == nil || archiver.Status != repo_model.ArchiverReady {
|
2021-06-24 00:12:38 +03:00
|
|
|
if err := archiver_service.StartArchive(aReq); err != nil {
|
|
|
|
ctx.ServerError("archiver_service.StartArchive", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
var completed bool
|
2021-12-06 10:19:28 +03:00
|
|
|
if archiver != nil && archiver.Status == repo_model.ArchiverReady {
|
2021-06-24 00:12:38 +03:00
|
|
|
completed = true
|
2014-03-22 21:50:50 +04:00
|
|
|
}
|
|
|
|
|
2023-07-04 21:36:08 +03:00
|
|
|
ctx.JSON(http.StatusOK, map[string]any{
|
2021-06-24 00:12:38 +03:00
|
|
|
"complete": completed,
|
[RFC] Make archival asynchronous (#11296)
* Make archival asynchronous
The prime benefit being sought here is for large archives to not
clog up the rendering process and cause unsightly proxy timeouts.
As a secondary benefit, archive-in-progress is moved out of the
way into a /tmp file so that new archival requests for the same
commit will not get fulfilled based on an archive that isn't yet
finished.
This asynchronous system is fairly primitive; request comes in, we'll
spawn off a new goroutine to handle it, then we'll mark it as done.
Status requests will see if the file exists in the final location,
and report the archival as done when it exists.
Fixes #11265
* Archive links: drop initial delay to three-quarters of a second
Some, or perhaps even most, archives will not take all that long to archive.
The archive process starts as soon as the download button is initially
clicked, so in theory they could be done quite quickly. Drop the initial
delay down to three-quarters of a second to make it more responsive in the
common case of the archive being quickly created.
* archiver: restructure a little bit to facilitate testing
This introduces two sync.Cond pointers to the archiver package. If they're
non-nil when we go to process a request, we'll wait until signalled (at all)
to proceed. The tests will then create the sync.Cond so that it can signal
at-will and sanity-check the state of the queue at different phases.
The author believes that nil-checking these two sync.Cond pointers on every
archive processing will introduce minimal overhead with no impact on
maintainability.
* gofmt nit: no space around binary + operator
* services: archiver: appease golangci-lint, lock queueMutex
Locking/unlocking the queueMutex is allowed, but not required, for
Cond.Signal() and Cond.Broadcast(). The magic at play here is just a little
too much for golangci-lint, as we take the address of queueMutex and this is
mostly used in archiver.go; the variable still gets flagged as unused.
* archiver: tests: fix several timing nits
Once we've signaled a cond var, it may take some small amount of time for
the goroutines released to hit the spot we're wanting them to be at. Give
them an appropriate amount of time.
* archiver: tests: no underscore in var name, ungh
* archiver: tests: Test* is run in a separate context than TestMain
We must setup the mutex/cond variables at the beginning of any test that's
going to use it, or else these will be nil when the test is actually ran.
* archiver: tests: hopefully final tweak
Things got shuffled around such that we carefully build up and release
requests from the queue, so we can validate the state of the queue at each
step. Fix some assertions that no longer hold true as fallout.
* repo: Download: restore some semblance of previous behavior
When archival was made async, the GET endpoint was only useful if a previous
POST had initiated the download. This commit restores the previous behavior,
to an extent; we'll now submit the archive request there and return a
"202 Accepted" to indicate that it's processing if we didn't manage to
complete the request within ~2 seconds of submission.
This lets a client directly GET the archive, and gives them some indication
that they may attempt to GET it again at a later time.
* archiver: tests: simplify a bit further
We don't need to risk failure and use time.ParseDuration to get 2 *
time.Second.
else if isn't really necessary if the conditions are simple enough and lead
to the same result.
* archiver: tests: resolve potential source of flakiness
Increase all timeouts to 10 seconds; these aren't hard-coded sleeps, so
there's no guarantee we'll actually take that long. If we need longer to
not have a false-positive, then so be it.
While here, various assert.{Not,}Equal arguments are flipped around so that
the wording in error output reflects reality, where the expected argument is
second and actual third.
* archiver: setup infrastructure for notifying consumers of completion
This API will *not* allow consumers to subscribe to specific requests being
completed, just *any* request being completed. The caller is responsible for
determining if their request is satisfied and waiting again if needed.
* repo: archive: make GET endpoint synchronous again
If the request isn't complete, this endpoint will now submit the request and
wait for completion using the new API. This may still be susceptible to
timeouts for larger repos, but other endpoints now exist that the web
interface will use to negotiate its way through larger archive processes.
* archiver: tests: amend test to include WaitForCompletion()
This is a trivial one, so go ahead and include it.
* archiver: tests: fix test by calling NewContext()
The mutex is otherwise uninitialized, so we need to ensure that we're
actually initializing it if we plan to test it.
* archiver: tests: integrate new WaitForCompletion a little better
We can use this to wait for archives to come in, rather than spinning and
hoping with a timeout.
* archiver: tests: combine numQueued declaration with next-instruction assignment
* routers: repo: reap unused archiving flag from DownloadStatus()
This had some planned usage before, indicating whether this request
initiated the archival process or not. After several rounds of refactoring,
this use was deemed not necessary for much of anything and got boiled down
to !complete in all cases.
* services: archiver: restructure to use a channel
We now offer two forms of waiting for a request:
- WaitForCompletion: wait for completion with no timeout
- TimedWaitForCompletion: wait for completion with timeout
In both cases, we wait for the given request's cchan to close; in the latter
case, we do so with the caller-provided timeout. This completely removes the
need for busy-wait loops in Download/InitiateDownload, as it's fairly clean
to wait on a channel with timeout.
* services: archiver: use defer to unlock now that we can
This previously carried the lock into the goroutine, but an intermediate
step just added the request to archiveInProgress outside of the new
goroutine and removed the need for the goroutine to start out with it.
* Revert "archiver: tests: combine numQueued declaration with next-instruction assignment"
This reverts commit bcc52140238e16680f2e05e448e9be51372afdf5.
Revert "archiver: tests: integrate new WaitForCompletion a little better"
This reverts commit 9fc8bedb5667d24d3a3c7843dc28a229efffb1e6.
Revert "archiver: tests: fix test by calling NewContext()"
This reverts commit 709c35685eaaf261ebbb7d3420e3376a4ee8e7f2.
Revert "archiver: tests: amend test to include WaitForCompletion()"
This reverts commit 75261f56bc05d1fa8ff7e81dcbc0ccd93fdc9d50.
* archiver: tests: first attempt at WaitForCompletion() tests
* archiver: tests: slight improvement, less busy-loop
Just wait for the requests to complete in order, instead of busy-waiting
with a timeout. This is slightly less fragile.
While here, reverse the arguments of a nearby assert.Equal() so that
expected/actual are correct in any test output.
* archiver: address lint nits
* services: archiver: only close the channel once
* services: archiver: use a struct{} for the wait channel
This makes it obvious that the channel is only being used as a signal,
rather than anything useful being piped through it.
* archiver: tests: fix expectations
Move the close of the channel into doArchive() itself; notably, before these
goroutines move on to waiting on the Release cond.
The tests are adjusted to reflect that we can't WaitForCompletion() after
they've already completed, as WaitForCompletion() doesn't indicate that
they've been released from the queue yet.
* archiver: tests: set cchan to nil for comparison
* archiver: move ctx.Error's back into the route handlers
We shouldn't be setting this in a service, we should just be validating the
request that we were handed.
* services: archiver: use regex to match a hash
This makes sure we don't try and use refName as a hash when it's clearly not
one, e.g. heads/pull/foo.
* routers: repo: remove the weird /archive/status endpoint
We don't need to do this anymore, we can just continue POSTing to the
archive/* endpoint until we're told the download's complete. This avoids a
potential naming conflict, where a ref could start with "status/"
* archiver: tests: bump reasonable timeout to 15s
* archiver: tests: actually release timedReq
* archiver: tests: run through inFlight instead of manually checking
While we're here, add a test for manually re-processing an archive that's
already been complete. Re-open the channel and mark it incomplete, so that
doArchive can just mark it complete again.
* initArchiveLinks: prevent default behavior from clicking
* archiver: alias gitea's context, golang context import pending
* archiver: simplify logic, just reconstruct slices
While the previous logic was perhaps slightly more efficient, the
new variant's readability is much improved.
* archiver: don't block shutdown on waiting for archive
The technique established launches a goroutine to do the wait,
which will close a wait channel upon termination. For the timeout
case, we also send back a value indicating whether the timeout was
hit or not.
The timeouts are expected to be relatively small, but still a multi-
second delay to shutdown due to this could be unfortunate.
* archiver: simplify shutdown logic
We can just grab the shutdown channel from the graceful manager instead of
constructing a channel to halt the caller and/or pass a result back.
* Style issues
* Fix mis-merge
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Lauris BH <lauris@nix.lv>
2020-11-07 23:27:28 +03:00
|
|
|
})
|
2014-03-22 21:50:50 +04:00
|
|
|
}
|
2022-04-07 21:59:56 +03:00
|
|
|
|
|
|
|
// SearchRepo repositories via options
|
|
|
|
func SearchRepo(ctx *context.Context) {
|
2024-03-12 07:57:19 +03:00
|
|
|
page := ctx.FormInt("page")
|
|
|
|
if page <= 0 {
|
|
|
|
page = 1
|
|
|
|
}
|
2022-06-06 11:01:49 +03:00
|
|
|
opts := &repo_model.SearchRepoOptions{
|
2022-04-07 21:59:56 +03:00
|
|
|
ListOptions: db.ListOptions{
|
2024-03-12 07:57:19 +03:00
|
|
|
Page: page,
|
2022-04-07 21:59:56 +03:00
|
|
|
PageSize: convert.ToCorrectPageSize(ctx.FormInt("limit")),
|
|
|
|
},
|
|
|
|
Actor: ctx.Doer,
|
|
|
|
Keyword: ctx.FormTrim("q"),
|
|
|
|
OwnerID: ctx.FormInt64("uid"),
|
|
|
|
PriorityOwnerID: ctx.FormInt64("priority_owner_id"),
|
|
|
|
TeamID: ctx.FormInt64("team_id"),
|
|
|
|
TopicOnly: ctx.FormBool("topic"),
|
2024-02-29 21:52:49 +03:00
|
|
|
Collaborate: optional.None[bool](),
|
2022-04-07 21:59:56 +03:00
|
|
|
Private: ctx.IsSigned && (ctx.FormString("private") == "" || ctx.FormBool("private")),
|
2024-02-29 21:52:49 +03:00
|
|
|
Template: optional.None[bool](),
|
2022-04-07 21:59:56 +03:00
|
|
|
StarredByID: ctx.FormInt64("starredBy"),
|
|
|
|
IncludeDescription: ctx.FormBool("includeDesc"),
|
|
|
|
}
|
|
|
|
|
|
|
|
if ctx.FormString("template") != "" {
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Template = optional.Some(ctx.FormBool("template"))
|
2022-04-07 21:59:56 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if ctx.FormBool("exclusive") {
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Collaborate = optional.Some(false)
|
2022-04-07 21:59:56 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
mode := ctx.FormString("mode")
|
|
|
|
switch mode {
|
|
|
|
case "source":
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Fork = optional.Some(false)
|
|
|
|
opts.Mirror = optional.Some(false)
|
2022-04-07 21:59:56 +03:00
|
|
|
case "fork":
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Fork = optional.Some(true)
|
2022-04-07 21:59:56 +03:00
|
|
|
case "mirror":
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Mirror = optional.Some(true)
|
2022-04-07 21:59:56 +03:00
|
|
|
case "collaborative":
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Mirror = optional.Some(false)
|
|
|
|
opts.Collaborate = optional.Some(true)
|
2022-04-07 21:59:56 +03:00
|
|
|
case "":
|
|
|
|
default:
|
|
|
|
ctx.Error(http.StatusUnprocessableEntity, fmt.Sprintf("Invalid search mode: \"%s\"", mode))
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
if ctx.FormString("archived") != "" {
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.Archived = optional.Some(ctx.FormBool("archived"))
|
2022-04-07 21:59:56 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if ctx.FormString("is_private") != "" {
|
2024-02-29 21:52:49 +03:00
|
|
|
opts.IsPrivate = optional.Some(ctx.FormBool("is_private"))
|
2022-04-07 21:59:56 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
sortMode := ctx.FormString("sort")
|
|
|
|
if len(sortMode) > 0 {
|
|
|
|
sortOrder := ctx.FormString("order")
|
|
|
|
if len(sortOrder) == 0 {
|
|
|
|
sortOrder = "asc"
|
|
|
|
}
|
2024-06-15 09:45:02 +03:00
|
|
|
if searchModeMap, ok := repo_model.OrderByMap[sortOrder]; ok {
|
2022-04-07 21:59:56 +03:00
|
|
|
if orderBy, ok := searchModeMap[sortMode]; ok {
|
|
|
|
opts.OrderBy = orderBy
|
|
|
|
} else {
|
|
|
|
ctx.Error(http.StatusUnprocessableEntity, fmt.Sprintf("Invalid sort mode: \"%s\"", sortMode))
|
|
|
|
return
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
ctx.Error(http.StatusUnprocessableEntity, fmt.Sprintf("Invalid sort order: \"%s\"", sortOrder))
|
|
|
|
return
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-03-18 14:05:17 +03:00
|
|
|
// To improve performance when only the count is requested
|
|
|
|
if ctx.FormBool("count_only") {
|
|
|
|
if count, err := repo_model.CountRepository(ctx, opts); err != nil {
|
|
|
|
log.Error("CountRepository: %v", err)
|
|
|
|
ctx.JSON(http.StatusInternalServerError, nil) // frontend JS doesn't handle error response (same as below)
|
|
|
|
} else {
|
|
|
|
ctx.SetTotalCountHeader(count)
|
|
|
|
ctx.JSONOK()
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2022-11-19 11:12:33 +03:00
|
|
|
repos, count, err := repo_model.SearchRepository(ctx, opts)
|
2022-04-07 21:59:56 +03:00
|
|
|
if err != nil {
|
2024-03-18 14:05:17 +03:00
|
|
|
log.Error("SearchRepository: %v", err)
|
|
|
|
ctx.JSON(http.StatusInternalServerError, nil)
|
2022-04-07 21:59:56 +03:00
|
|
|
return
|
|
|
|
}
|
|
|
|
|
2022-04-26 23:34:30 +03:00
|
|
|
ctx.SetTotalCountHeader(count)
|
|
|
|
|
2024-03-06 15:17:19 +03:00
|
|
|
latestCommitStatuses, err := commitstatus_service.FindReposLastestCommitStatuses(ctx, repos)
|
2023-07-03 04:53:05 +03:00
|
|
|
if err != nil {
|
2024-03-06 15:17:19 +03:00
|
|
|
log.Error("FindReposLastestCommitStatuses: %v", err)
|
2024-03-18 14:05:17 +03:00
|
|
|
ctx.JSON(http.StatusInternalServerError, nil)
|
2023-05-14 00:59:01 +03:00
|
|
|
return
|
|
|
|
}
|
2024-07-28 18:11:40 +03:00
|
|
|
if !ctx.Repo.CanRead(unit.TypeActions) {
|
|
|
|
git_model.CommitStatusesHideActionsURL(ctx, latestCommitStatuses)
|
|
|
|
}
|
2023-05-14 00:59:01 +03:00
|
|
|
|
|
|
|
results := make([]*repo_service.WebSearchRepository, len(repos))
|
2022-04-07 21:59:56 +03:00
|
|
|
for i, repo := range repos {
|
2023-05-14 00:59:01 +03:00
|
|
|
results[i] = &repo_service.WebSearchRepository{
|
|
|
|
Repository: &api.Repository{
|
|
|
|
ID: repo.ID,
|
|
|
|
FullName: repo.FullName(),
|
|
|
|
Fork: repo.IsFork,
|
|
|
|
Private: repo.IsPrivate,
|
|
|
|
Template: repo.IsTemplate,
|
|
|
|
Mirror: repo.IsMirror,
|
|
|
|
Stars: repo.NumStars,
|
|
|
|
HTMLURL: repo.HTMLURL(),
|
|
|
|
Link: repo.Link(),
|
|
|
|
Internal: !repo.IsPrivate && repo.Owner.Visibility == api.VisibleTypePrivate,
|
|
|
|
},
|
2024-03-06 15:17:19 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
if latestCommitStatuses[i] != nil {
|
|
|
|
results[i].LatestCommitStatus = latestCommitStatuses[i]
|
|
|
|
results[i].LocaleLatestCommitStatus = latestCommitStatuses[i].LocaleString(ctx.Locale)
|
2022-04-07 21:59:56 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-05-14 00:59:01 +03:00
|
|
|
ctx.JSON(http.StatusOK, repo_service.WebSearchResults{
|
2022-04-07 21:59:56 +03:00
|
|
|
OK: true,
|
|
|
|
Data: results,
|
|
|
|
})
|
|
|
|
}
|
2023-07-21 14:20:04 +03:00
|
|
|
|
|
|
|
type branchTagSearchResponse struct {
|
|
|
|
Results []string `json:"results"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// GetBranchesList get branches for current repo'
|
|
|
|
func GetBranchesList(ctx *context.Context) {
|
|
|
|
branchOpts := git_model.FindBranchOptions{
|
|
|
|
RepoID: ctx.Repo.Repository.ID,
|
2024-02-23 05:18:33 +03:00
|
|
|
IsDeletedBranch: optional.Some(false),
|
2024-03-22 15:53:52 +03:00
|
|
|
ListOptions: db.ListOptionsAll,
|
2023-07-21 14:20:04 +03:00
|
|
|
}
|
|
|
|
branches, err := git_model.FindBranchNames(ctx, branchOpts)
|
|
|
|
if err != nil {
|
|
|
|
ctx.JSON(http.StatusInternalServerError, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
resp := &branchTagSearchResponse{}
|
|
|
|
// always put default branch on the top if it exists
|
2023-09-07 12:37:47 +03:00
|
|
|
if slices.Contains(branches, ctx.Repo.Repository.DefaultBranch) {
|
2023-07-21 14:20:04 +03:00
|
|
|
branches = util.SliceRemoveAll(branches, ctx.Repo.Repository.DefaultBranch)
|
|
|
|
branches = append([]string{ctx.Repo.Repository.DefaultBranch}, branches...)
|
|
|
|
}
|
|
|
|
resp.Results = branches
|
|
|
|
ctx.JSON(http.StatusOK, resp)
|
|
|
|
}
|
|
|
|
|
|
|
|
// GetTagList get tag list for current repo
|
|
|
|
func GetTagList(ctx *context.Context) {
|
|
|
|
tags, err := repo_model.GetTagNamesByRepoID(ctx, ctx.Repo.Repository.ID)
|
|
|
|
if err != nil {
|
|
|
|
ctx.JSON(http.StatusInternalServerError, err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
resp := &branchTagSearchResponse{}
|
|
|
|
resp.Results = tags
|
|
|
|
ctx.JSON(http.StatusOK, resp)
|
|
|
|
}
|
|
|
|
|
|
|
|
func PrepareBranchList(ctx *context.Context) {
|
|
|
|
branchOpts := git_model.FindBranchOptions{
|
|
|
|
RepoID: ctx.Repo.Repository.ID,
|
2024-02-23 05:18:33 +03:00
|
|
|
IsDeletedBranch: optional.Some(false),
|
2024-03-22 15:53:52 +03:00
|
|
|
ListOptions: db.ListOptionsAll,
|
2023-07-21 14:20:04 +03:00
|
|
|
}
|
|
|
|
brs, err := git_model.FindBranchNames(ctx, branchOpts)
|
|
|
|
if err != nil {
|
|
|
|
ctx.ServerError("GetBranches", err)
|
|
|
|
return
|
|
|
|
}
|
|
|
|
// always put default branch on the top if it exists
|
2023-09-07 12:37:47 +03:00
|
|
|
if slices.Contains(brs, ctx.Repo.Repository.DefaultBranch) {
|
2023-07-21 14:20:04 +03:00
|
|
|
brs = util.SliceRemoveAll(brs, ctx.Repo.Repository.DefaultBranch)
|
|
|
|
brs = append([]string{ctx.Repo.Repository.DefaultBranch}, brs...)
|
|
|
|
}
|
|
|
|
ctx.Data["Branches"] = brs
|
|
|
|
}
|