Support compression for Actions logs to save storage space and
bandwidth. Inspired by
https://github.com/go-gitea/gitea/issues/24256#issuecomment-1521153015
The biggest challenge is that the compression format should support
[seekable](https://github.com/facebook/zstd/blob/dev/contrib/seekable_format/zstd_seekable_compression_format.md).
So when users are viewing a part of the log lines, Gitea doesn't need to
download the whole compressed file and decompress it.
That means gzip cannot help here. And I did research, there aren't too
many choices, like bgzip and xz, but I think zstd is the most popular
one. It has an implementation in Golang with
[zstd](https://github.com/klauspost/compress/tree/master/zstd) and
[zstd-seekable-format-go](https://github.com/SaveTheRbtz/zstd-seekable-format-go),
and what is better is that it has good compatibility: a seekable format
zstd file can be read by a regular zstd reader.
This PR introduces a new package `zstd` to combine and wrap the two
packages, to provide a unified and easy-to-use API.
And a new setting `LOG_COMPRESSION` is added to the config, although I
don't see any reason why not to use compression, I think's it's a good
idea to keep the default with `none` to be consistent with old versions.
`LOG_COMPRESSION` takes effect for only new log files, it adds `.zst` as
an extension to the file name, so Gitea can determine if it needs
decompression according to the file name when reading. Old files will
keep the format since it's not worth converting them, as they will be
cleared after #31735.
<img width="541" alt="image"
src="https://github.com/user-attachments/assets/e9598764-a4e0-4b68-8c2b-f769265183c9">
(cherry picked from commit 33cc5837a655ad544b936d4d040ca36d74092588)
Conflicts:
assets/go-licenses.json
go.mod
go.sum
resolved with make tidy
This reverts commit 4ed372af13.
This change from Gitea was not considered by the Forgejo UI team and there is a consensus that it feels like a regression.
The test which was added in that commit is kept and modified to test that reviews can successfully be submitted on closed and merged PRs.
Closes forgejo/design#11
---
Conflict resolution: trivial
Things done differently: Improve localization message, use the paragraph
element instead of the div element, fix passing this variable to the
template and add a integration test
(cherry picked from commit 9633f336c87947dc7d2a5e76077a10699ba5e50d)
ForkRepository performs two different functions:
* The fork itself, if it does not already exist
* Updates and notifications after the fork is performed
The function is split to reflect that and otherwise unmodified.
The two function are given different names to:
* clarify which integration tests provides coverage
* distinguish it from the notification method by the same name
Previous arch package grouping was not well-suited for complex or multi-architecture environments. It now supports the following content:
- Support grouping by any path.
- New support for packages in `xz` format.
- Fix clean up rules
<!--start release-notes-assistant-->
## Draft release notes
<!--URL:https://codeberg.org/forgejo/forgejo-->
- Features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/4903): <!--number 4903 --><!--line 0 --><!--description c3VwcG9ydCBncm91cGluZyBieSBhbnkgcGF0aCBmb3IgYXJjaCBwYWNrYWdl-->support grouping by any path for arch package<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4903
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Exploding Dragon <explodingfkl@gmail.com>
Co-committed-by: Exploding Dragon <explodingfkl@gmail.com>
- parsing scopes in `grantAdditionalScopes`
- read basic user info if `read:user`
- fail reading repository info if only `read:user`
- read repository info if `read:repository`
- if `setting.OAuth2.EnabledAdditionalGrantScopes` not provided it reads
all groups (public+private)
- if `setting.OAuth2.EnabledAdditionalGrantScopes` provided it reads
only public groups
- if `setting.OAuth2.EnabledAdditionalGrantScopes` and `read:organization`
provided it reads all groups
Now that my colleague just posted a wonderful blog post https://blog.datalad.org/posts/forgejo-runner-podman-deployment/ on forgejo runner, some time I will try to add that damn codespell action to work on CI here ;) meanwhile some typos managed to sneak in and this PR should address them (one change might be functional in a test -- not sure if would cause a fail or not)
### Release notes
- [ ] I do not want this change to show in the release notes.
- [ ] I want the title to show in the release notes with a link to this pull request.
- [ ] I want the content of the `release-notes/<pull request number>.md` to be be used for the release notes instead of the title.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4857
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Yaroslav Halchenko <debian@onerussian.com>
Co-committed-by: Yaroslav Halchenko <debian@onerussian.com>
These are the three conflicted changes from #4716:
* https://github.com/go-gitea/gitea/pull/31632
* https://github.com/go-gitea/gitea/pull/31688
* https://github.com/go-gitea/gitea/pull/31706
cc @earl-warren; as per discussion on https://github.com/go-gitea/gitea/pull/31632 this involves a small compatibility break (OIDC introspection requests now require a valid client ID and secret, instead of a valid OIDC token)
## Checklist
The [developer guide](https://forgejo.org/docs/next/developer/) contains information that will be helpful to first time contributors. There also are a few [conditions for merging Pull Requests in Forgejo repositories](https://codeberg.org/forgejo/governance/src/branch/main/PullRequestsAgreement.md). You are also welcome to join the [Forgejo development chatroom](https://matrix.to/#/#forgejo-development:matrix.org).
### Tests
- I added test coverage for Go changes...
- [ ] in their respective `*_test.go` for unit tests.
- [x] in the `tests/integration` directory if it involves interactions with a live Forgejo server.
### Documentation
- [ ] I created a pull request [to the documentation](https://codeberg.org/forgejo/docs) to explain to Forgejo users how to use this change.
- [ ] I did not document these changes and I do not expect someone else to do it.
### Release notes
- [ ] I do not want this change to show in the release notes.
- [ ] I want the title to show in the release notes with a link to this pull request.
- [ ] I want the content of the `release-notes/<pull request number>.md` to be be used for the release notes instead of the title.
<!--start release-notes-assistant-->
## Draft release notes
<!--URL:https://codeberg.org/forgejo/forgejo-->
- Breaking features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/4724): <!--number 4724 --><!--line 0 --><!--description T0lEQyBpbnRlZ3JhdGlvbnMgdGhhdCBQT1NUIHRvIGAvbG9naW4vb2F1dGgvaW50cm9zcGVjdGAgd2l0aG91dCBzZW5kaW5nIEhUVFAgYmFzaWMgYXV0aGVudGljYXRpb24gd2lsbCBub3cgZmFpbCB3aXRoIGEgNDAxIEhUVFAgVW5hdXRob3JpemVkIGVycm9yLiBUbyBmaXggdGhlIGVycm9yLCB0aGUgY2xpZW50IG11c3QgYmVnaW4gc2VuZGluZyBIVFRQIGJhc2ljIGF1dGhlbnRpY2F0aW9uIHdpdGggYSB2YWxpZCBjbGllbnQgSUQgYW5kIHNlY3JldC4gVGhpcyBlbmRwb2ludCB3YXMgcHJldmlvdXNseSBhdXRoZW50aWNhdGVkIHZpYSB0aGUgaW50cm9zcGVjdGlvbiB0b2tlbiBpdHNlbGYsIHdoaWNoIGlzIGxlc3Mgc2VjdXJlLg==-->OIDC integrations that POST to `/login/oauth/introspect` without sending HTTP basic authentication will now fail with a 401 HTTP Unauthorized error. To fix the error, the client must begin sending HTTP basic authentication with a valid client ID and secret. This endpoint was previously authenticated via the introspection token itself, which is less secure.<!--description-->
<!--end release-notes-assistant-->
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4724
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Shivaram Lingamneni <slingamn@cs.stanford.edu>
Co-committed-by: Shivaram Lingamneni <slingamn@cs.stanford.edu>
Was facing issues while writing unit tests for federation code. Mocks weren't catching all network calls, because was being out of scope of the mocking infra. Plus, I think we can have more granular tests.
This PR puts the client behind an interface, that can be retrieved from `ctx`. Context doesn't require initialization, as it defaults to the implementation available in-tree. It may be overridden when required (like testing).
## Mechanism
1. Get client factory from `ctx` (factory contains network and crypto parameters that are needed)
2. Initialize client with sender's keys and the receiver's public key
3. Use client as before.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4853
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Aravinth Manivannan <realaravinth@batsense.net>
Co-committed-by: Aravinth Manivannan <realaravinth@batsense.net>
- Adjust the counting of the number of lines of a file to match the
amount of rendered lines. This simply means that a file with the content
of `a\n` will be shown as having `1 line` rather than `2 lines`. This
matches with the amount of lines that are being rendered (the last empty
line is never rendered) and matches more with the expecation of the
user (a trailing EOL is a technical detail).
- In the case there's no EOL, the reason why it was counting
'incorrectly' was to show if there was a trailing EOL or not, but now
text is shown to tell the user this.
- Integration test added.
- Resolves Codeberg/Community#1612
- Adjust the `RepoRefByType` middleware to allow for commit SHAs that
are as short as 4 characters (the minium that Git requires).
- Integration test added.
- Follow up to 4d76bbeda7
- Resolves #4781
An instance-wide actor is required for outgoing signed requests that are
done on behalf of the instance, rather than on behalf of other actors.
Such things include updating profile information, or fetching public
keys.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
Fix #31707.
Also related to #31715.
Some Actions resources could has different types of ownership. It could
be:
- global: all repos and orgs/users can use it.
- org/user level: only the org/user can use it.
- repo level: only the repo can use it.
There are two ways to distinguish org/user level from repo level:
1. `{owner_id: 1, repo_id: 2}` for repo level, and `{owner_id: 1,
repo_id: 0}` for org level.
2. `{owner_id: 0, repo_id: 2}` for repo level, and `{owner_id: 1,
repo_id: 0}` for org level.
The first way seems more reasonable, but it may not be true. The point
is that although a resource, like a runner, belongs to a repo (it can be
used by the repo), the runner doesn't belong to the repo's org (other
repos in the same org cannot use the runner). So, the second method
makes more sense.
And the first way is not user-friendly to query, we must set the repo id
to zero to avoid wrong results.
So, #31715 should be right. And the most simple way to fix #31707 is
just:
```diff
- shared.GetRegistrationToken(ctx, ctx.Repo.Repository.OwnerID, ctx.Repo.Repository.ID)
+ shared.GetRegistrationToken(ctx, 0, ctx.Repo.Repository.ID)
```
However, it is quite intuitive to set both owner id and repo id since
the repo belongs to the owner. So I prefer to be compatible with it. If
we get both owner id and repo id not zero when creating or finding, it's
very clear that the caller want one with repo level, but set owner id
accidentally. So it's OK to accept it but fix the owner id to zero.
(cherry picked from commit a33e74d40d356e8f628ac06a131cb203a3609dec)
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>
This is an implementation of a quota engine, and the API routes to
manage its settings. This does *not* contain any enforcement code: this
is just the bedrock, the engine itself.
The goal of the engine is to be flexible and future proof: to be nimble
enough to build on it further, without having to rewrite large parts of
it.
It might feel a little more complicated than necessary, because the goal
was to be able to support scenarios only very few Forgejo instances
need, scenarios the vast majority of mostly smaller instances simply do
not care about. The goal is to support both big and small, and for that,
we need a solid, flexible foundation.
There are thee big parts to the engine: counting quota use, setting
limits, and evaluating whether the usage is within the limits. Sounds
simple on paper, less so in practice!
Quota counting
==============
Quota is counted based on repo ownership, whenever possible, because
repo owners are in ultimate control over the resources they use: they
can delete repos, attachments, everything, even if they don't *own*
those themselves. They can clean up, and will always have the permission
and access required to do so. Would we count quota based on the owning
user, that could lead to situations where a user is unable to free up
space, because they uploaded a big attachment to a repo that has been
taken private since. It's both more fair, and much safer to count quota
against repo owners.
This means that if user A uploads an attachment to an issue opened
against organization O, that will count towards the quota of
organization O, rather than user A.
One's quota usage stats can be queried using the `/user/quota` API
endpoint. To figure out what's eating into it, the
`/user/repos?order_by=size`, `/user/quota/attachments`,
`/user/quota/artifacts`, and `/user/quota/packages` endpoints should be
consulted. There's also `/user/quota/check?subject=<...>` to check
whether the signed-in user is within a particular quota limit.
Quotas are counted based on sizes stored in the database.
Setting quota limits
====================
There are different "subjects" one can limit usage for. At this time,
only size-based limits are implemented, which are:
- `size:all`: As the name would imply, the total size of everything
Forgejo tracks.
- `size:repos:all`: The total size of all repositories (not including
LFS).
- `size:repos:public`: The total size of all public repositories (not
including LFS).
- `size:repos:private`: The total size of all private repositories (not
including LFS).
- `sizeall`: The total size of all git data (including all
repositories, and LFS).
- `sizelfs`: The size of all git LFS data (either in private or
public repos).
- `size:assets:all`: The size of all assets tracked by Forgejo.
- `size:assets:attachments:all`: The size of all kinds of attachments
tracked by Forgejo.
- `size:assets:attachments:issues`: Size of all attachments attached to
issues, including issue comments.
- `size:assets:attachments:releases`: Size of all attachments attached
to releases. This does *not* include automatically generated archives.
- `size:assets:artifacts`: Size of all Action artifacts.
- `size:assets:packages:all`: Size of all Packages.
- `size:wiki`: Wiki size
Wiki size is currently not tracked, and the engine will always deem it
within quota.
These subjects are built into Rules, which set a limit on *all* subjects
within a rule. Thus, we can create a rule that says: "1Gb limit on all
release assets, all packages, and git LFS, combined". For a rule to
stand, the total sum of all subjects must be below the rule's limit.
Rules are in turn collected into groups. A group is just a name, and a
list of rules. For a group to stand, all of its rules must stand. Thus,
if we have a group with two rules, one that sets a combined 1Gb limit on
release assets, all packages, and git LFS, and another rule that sets a
256Mb limit on packages, if the user has 512Mb of packages, the group
will not stand, because the second rule deems it over quota. Similarly,
if the user has only 128Mb of packages, but 900Mb of release assets, the
group will not stand, because the combined size of packages and release
assets is over the 1Gb limit of the first rule.
Groups themselves are collected into Group Lists. A group list stands
when *any* of the groups within stand. This allows an administrator to
set conservative defaults, but then place select users into additional
groups that increase some aspect of their limits.
To top it off, it is possible to set the default quota groups a user
belongs to in `app.ini`. If there's no explicit assignment, the engine
will use the default groups. This makes it possible to avoid having to
assign each and every user a list of quota groups, and only those need
to be explicitly assigned who need a different set of groups than the
defaults.
If a user has any quota groups assigned to them, the default list will
not be considered for them.
The management APIs
===================
This commit contains the engine itself, its unit tests, and the quota
management APIs. It does not contain any enforcement.
The APIs are documented in-code, and in the swagger docs, and the
integration tests can serve as an example on how to use them.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
- add package counter to repo/user/org overview pages
- add go unit tests for repo/user has/count packages
- add many more unit tests for packages model
- fix error for non-existing packages in DeletePackageByID and SetRepositoryLink
Replace a double select with a simple select.
The complication originates from the initial implementation which
deleted packages instead of selecting them. It was justified to
workaround a problem in MySQL. But it is just a waste of resources
when collecting a list of IDs.
- In the spirit of #4635
- Notify the owner when their account is getting enrolled into TOTP. The
message is changed according if they have security keys or not.
- Integration test added.
The PATCH if issue & pull request switched to use the service
functions instead. However, the service function changing the state is
not idempotent. Instead of doing nothing which changing from open to
open or close to close, it will fail with an error like:
Issue [2472] 0 was already closed
Regression of: 6a4bc0289d
Fixes: https://codeberg.org/forgejo/forgejo/issues/4686
- Currently if the password, primary mail, TOTP or security keys are
changed, no notification is made of that and makes compromising an
account a bit easier as it's essentially undetectable until the original
person tries to log in. Although other changes should be made as
well (re-authing before allowing a password change), this should go a
long way of improving the account security in Forgejo.
- Adds a mail notification for password and primary mail changes. For
the primary mail change, a mail notification is sent to the old primary
mail.
- Add a mail notification when TOTP or a security keys is removed, if no
other 2FA method is configured the mail will also contain that 2FA is
no longer needed to log into their account.
- `MakeEmailAddressPrimary` is refactored to the user service package,
as it now involves calling the mailer service.
- Unit tests added.
- Integration tests added.
- Add https://github.com/playwright-community/eslint-plugin-playwright
as a linter for the playwright tests.
- `no-networkidle` and `no-conditional-in-test` are disabled as fixing
those doesn't seem to really improve testing quality for our use case.
- Some non-recommended linters are enabled to ensure consistency (the
prefer rules).
This leverages the existing `sync_external_users` cron job to
synchronize the `IsActive` flag on users who use an OAuth2 provider set
to synchronize. This synchronization is done by checking for expired
access tokens, and using the stored refresh token to request a new
access token. If the response back from the OAuth2 provider is the
`invalid_grant` error code, the user is marked as inactive. However, the
user is able to reactivate their account by logging in the web browser
through their OAuth2 flow.
Also changed to support this is that a linked `ExternalLoginUser` is
always created upon a login or signup via OAuth2.
Ideally, we would also refresh permissions from the configured OAuth
provider (e.g., admin, restricted and group mappings) to match the
implementation of LDAP. However, the OAuth library used for this `goth`,
doesn't seem to support issuing a session via refresh tokens. The
interface provides a [`RefreshToken`
method](https://github.com/markbates/goth/blob/master/provider.go#L20),
but the returned `oauth.Token` doesn't implement the `goth.Session` we
would need to call `FetchUser`. Due to specific implementations, we
would need to build a compatibility function for every provider, since
they cast to concrete types (e.g.
[Azure](https://github.com/markbates/goth/blob/master/providers/azureadv2/azureadv2.go#L132))
---------
Co-authored-by: Kyle D <kdumontnu@gmail.com>
(cherry picked from commit 416c36f3034e228a27258b5a8a15eec4e5e426ba)
Conflicts:
- tests/integration/auth_ldap_test.go
Trivial conflict resolved by manually applying the change.
- routers/web/auth/oauth.go
Technically not a conflict, but the original PR removed the
modules/util import, which in our version, is still in use. Added it
back.
- Fixes a panic where the file history router would panic if the page
number was set to a page where no commits would be returned. It now
returns a 404 in such case.
- Regresion of a5b1c1b0b3
- Panic log provided by @algernon.
- Minimal integration test added.
Co-authored-by: Gergely Nagy <forgejo@gergo.csillger.hu>
- Currently if you want to update the milestone of an issue or pull
request, your whole page will be reloaded to reflect the newly set
milestone. This is quite unecessary, as only the milestone text is
updated and a new timeline event is added.
- This patch converts the milestone section in the issue/pull request
sidebar to use HTMX, so it becomes a progressive element and avoids
reloading the whole page to update the milestone.
- The update of the milestone section itself is quite straightforward
and nothing special is happening. To support adding new timeline events,
a new element `#insert-timeline` is conviently placed after the last
timeline event, which can be used with
[`hx-swap-oob`](https://htmx.org/attributes/hx-swap-oob/) to position
new timeline events before that element.
- Adds E2E test.
- There were two issues with the profile card since the introduction of
HTMX in 3e8414179c. If an HTMX request
resulted in a flash message, it wasn't being shown and HTMX was
replacing all the HTML content instead of morphing it into the existing
DOM which caused event listeners to be lost for buttons.
- Flash messages are now properly being shown by using `hx-swap-oob`
and sending the alerts on a HTMX request, this does mean it requires
server-side changes in order to support HTMX requests like this, but
it's luckily not a big change either.
- Morphing is now enabled for the profile card by setting
`hx-swap="morph"`, and weirdly, the morphing library was already
installed and included as a dependency. This solves the issue of buttons
losing their event listeners.
- This patch also adds HTMX support to the modals feature, which means
that the blocking feature on the profile card now takes advantage of
HTMX.
- Added a E2E test.
To reproduce:
- make the repo creation form return with an error, like a duplicate name
- click on the Object format dropdown
- the options are missing as the listbox is empty
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4360
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Solomon Victorino <git@solomonvictorino.com>
Co-committed-by: Solomon Victorino <git@solomonvictorino.com>
The `/repos/{owner}/{repo}/issues/comments/{id}` API endpoint returns an
`assets` field, but the route handler did not load attachments, thus,
the field was never populated.
This patch fixes that, and adds a test to exercise it. The test fails
without the fix.
This addresses a bug discovered in Codeberg/Community#1607.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
- We were previously using `github.com/keybase/go-crypto`, because the
package for openpgp by Go itself is deprecated and no longer
maintained. This library provided a maintained version of the openpgp
package. However, it hasn't seen any activity for the last five years,
and I would therefore consider this also unmaintained.
- This patch switches the package to `github.com/ProtonMail/go-crypto`
which provides a maintained version of the openpgp package and was
already being used in the tests.
- Adds unit tests, I've carefully checked the callstacks to ensure the
OpenPGP-related code was covered under either a unit test or integration
tests to avoid regression, as this can easily turn into security
vulnerabilities if a regression happens here.
- Small behavior update, revocations are now checked correctly instead
of checking if they merely exist and the expiry time of a subkey is used
if one is provided (this is just cosmetic and doesn't impact security).
- One more dependency eliminated :D
- Update the `github.com/santhosh-tekuri/jsonschema` library from v5 to
v6.
- Update the migration loader function to a type, which is now required
in V6.
- `github.com/santhosh-tekuri/jsonschema/v6` was already used by gof3,
so removing the v5 library and using the v6 library reduces the binary
size of Forgejo.
- Before: 95912040 bytes
- After: 95706152 bytes
- Don't show the labels-list element, if no labels are selected.
- The labels-list was taking up vertical space, even if no labels were
selected which caused an inconsistency in how the sidebar looked.
- Adds integration test
Fixes https://codeberg.org/forgejo/forgejo/issues/4417 by adding a conditional branch to the `head_opengraph` template to match wiki pages. I tried to be consistent with the other types:
- `og:title` is the wiki page title
- `og:url` is built via `{{AppUrl}}{{.Link}}` like it is done for commit and file views. This has the caveat of doubling the slash (see test below). Should we `{{trimSuffix "/" AppUrl}}` to remove this, if sprig is available?
- `og:description` is the repository description to match GH behaviour. Also, the first sentences of the page might not be descriptive enough. Should we prefix the repo description with the repo name?
- `og:type` and `og:image` are common
Added a `TestOpenGraphProperties` integration test using existing fixtures. Coverage is not 100% but can be improved later.
## Output on a test repo
```html
<meta property="og:title" content="Project architecture">
<meta property="og:url" content="http://localhost:3000//xvello/wiki-test/wiki/Project-architecture">
<meta property="og:description" content="description for a test project">
<meta property="og:type" content="object">
<meta property="og:image" content="http://localhost:3000/avatars/3dd4d1e4eef065d1b4ad4bdb081ab6e7">
```
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4427
Co-authored-by: Xavier Vello <xavier.vello@gmail.com>
Co-committed-by: Xavier Vello <xavier.vello@gmail.com>
I noticed that Forgejo does not allow HTTP range requests when downloading artifacts. All other file downloads like releases and packages support them.
So I looked at the code and found that the artifact download endpoint uses a simple io.Copy to serve the file contents instead of using the established `ServeContentByReadSeeker` function which does take range requests into account.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4218
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: ThetaDev <thetadev@magenta.de>
Co-committed-by: ThetaDev <thetadev@magenta.de>
If a repository has
git config --add push.pushOption submit=".sourcehut/*.yml"
it failed when pushed because of the unknown submit push
option. It will be ignored instead.
Filtering out the push options is done in an earlier stage, when the
hook command runs, before it submits the options map to the private
endpoint.
* move all the push options logic to modules/git/pushoptions
* add 100% test coverage for modules/git/pushoptions
Test coverage for the code paths from which code was moved to the
modules/git/pushoptions package:
* cmd/hook.go:runHookPreReceive
* routers/private/hook_pre_receive.go:validatePushOptions
tests/integration/git_push_test.go:TestOptionsGitPush runs through
both. The test verifying the option is rejected was removed and, if
added again, will fail because the option is now ignored instead of
being rejected.
* cmd/hook.go:runHookProcReceive
* services/agit/agit.go:ProcReceive
tests/integration/git_test.go: doCreateAgitFlowPull runs through
both. It uses variations of AGit related push options.
* cmd/hook.go:runHookPostReceive
* routers/private/hook_post_receive.go:HookPostReceive
tests/integration/git_test.go:doPushCreate called by TestGit/HTTP/sha1/PushCreate
runs through both.
Note that although it provides coverage for this code path it does not use push options.
Fixes: https://codeberg.org/forgejo/forgejo/issues/3651
We haven't decided much (to my knowledge), and I've been using the main branch in production (as one does) and found out even I myself rely on Tab sometimes working to move focus and have been caught off guard by it indenting lines instead.
So this removes Tab handling and instead adds two new buttons to the toolbar. The indentation logic is unchanged (other than now focusing the textarea during button handling, to ensure execCommand works, and thus undo history is preserved).
I'm not sure which terminology to use in tooltips. Could also add keyboard shortcuts for the whole toolbar eventually, but as is this is hopefully an better solution to the problems I previously created than un-merging the whole thing :)
<img width="414" alt="Screenshot with two new buttons" src="/attachments/b7af3aa4-a195-48d1-be0a-1559f25dce8e">
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4263
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Danko Aleksejevs <danko@very.lv>
Co-committed-by: Danko Aleksejevs <danko@very.lv>
#3654 introduced support for searching non-default branches and tags.
However, the results page lacked any indicator (aside from the url) on which branch/tag the searcg was performed. A branch dropdown was introduced to the code search page when git-grep is used both as an indicator and as a intrusive way to switch between branches/tags.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4262
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
Closes #2797
I'm aware of https://github.com/go-gitea/gitea/pull/28163 exists, but since I had it laying around on my drive and collecting dust, I might as well open a PR for it if anyone wants the feature a bit sooner than waiting for upstream to release it or to be a forgejo "native" implementation.
This PR Contains:
- Support for the `workflow_dispatch` trigger
- Inputs: boolean, string, number, choice
Things still to be done:
- [x] API Endpoint `/api/v1/<org>/<repo>/actions/workflows/<workflow id>/dispatches`
- ~~Fixing some UI bugs I had no time figuring out, like why dropdown/choice inputs's menu's behave weirdly~~ Unrelated visual bug with dropdowns inside dropdowns
- [x] Fix bug where opening the branch selection submits the form
- [x] Limit on inputs to render/process
Things not in this PR:
- Inputs: environment (First need support for environments in forgejo)
Things needed to test this:
- A patch for https://code.forgejo.org/forgejo/runner to actually consider the inputs inside the workflow.
~~One possible patch can be seen here: https://code.forgejo.org/Mai-Lapyst/runner/src/branch/support-workflow-inputs~~
[PR](https://code.forgejo.org/forgejo/runner/pulls/199)
![image](/attachments/2db50c9e-898f-41cb-b698-43edeefd2573)
## Testing
- Checkout PR
- Setup new development runner with [this PR](https://code.forgejo.org/forgejo/runner/pulls/199)
- Create a repo with a workflow (see below)
- Go to the actions tab, select the workflow and see the notice as in the screenshot above
- Use the button + dropdown to run the workflow
- Try also running it via the api using the `` endpoint
- ...
- Profit!
<details>
<summary>Example workflow</summary>
```yaml
on:
workflow_dispatch:
inputs:
logLevel:
description: 'Log Level'
required: true
default: 'warning'
type: choice
options:
- info
- warning
- debug
tags:
description: 'Test scenario tags'
required: false
type: boolean
boolean_default_true:
description: 'Test scenario tags'
required: true
type: boolean
default: true
boolean_default_false:
description: 'Test scenario tags'
required: false
type: boolean
default: false
number1_default:
description: 'Number w. default'
default: '100'
type: number
number2:
description: 'Number w/o. default'
type: number
string1_default:
description: 'String w. default'
default: 'Hello world'
type: string
string2:
description: 'String w/o. default'
required: true
type: string
jobs:
test:
runs-on: docker
steps:
- uses: actions/checkout@v3
- run: whoami
- run: cat /etc/issue
- run: uname -a
- run: date
- run: echo ${{ inputs.logLevel }}
- run: echo ${{ inputs.tags }}
- env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "$GITHUB_CONTEXT"
- run: echo "abc"
```
</details>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3334
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Co-committed-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
There are a few changes of template logic which defines when which elements should be shown on profile page. The motivation is to have the elements when needed and don't when they're not relevant.
## Changes
### RSS button
Now displayed if:
* feeds are enabled
AND one or more of:
* the current user is an admin
* the current user is viewing their profile
* the activity is publicly available
So, basically in cases when the .rss feed actually contains any events. Before this change this button was constantly shown and was giving an empty feed if it was unavailable.
### Public activity tab
The tab is displayed if:
* the current user is an admin
* the current user is viewing their profile
* the activity is publicly available
* the current tab is this exact tab, for example, in case it was accessed by adding `?tab=activity` to the URL, so that the UI is not broken w/o a highlighted tab
So, this tab is not displayed when it's not going to contain any information, but still can be accessed.
### Banner "This user has disabled the public visibility of the activity."
For admins:
* always show the big blue banner to warn that sharing a screenshot of this publicly is bad idea
For self:
* always display a little note about the current visibility status with a "Change" link
For others:
* only display a little note to explain why the activity is not shown
### Heatmap and activity feed
Elements are only displayed when relevant, instead of keeping empty leftovers, for easier testing. This template change is also covered by test. **Everything in this Changes section is covered by test unless I forgot something.**
## Preview
There's obviously too many states to screenshot, here are highlights:
![](https://codeberg.org/attachments/47559531-9bcd-46c0-90d4-8b51512da752)
_Warning admin for why they're seeing the information_
![](https://codeberg.org/attachments/3107bf62-955b-4fe5-bce3-6305a928afe1)
_Viewing self - private_
![](https://codeberg.org/attachments/afb63ead-fb0b-4fc7-9d8b-c6c09e9ae62b)
_Viewing self - public_
![](https://codeberg.org/attachments/df3c090a-7490-4827-b33b-771fd4fa0a9f)
_Don't have access to the information_
![](https://codeberg.org/attachments/2dd2b0ac-2fe0-4453-aa4b-e91fd08f4411)
_The tab is not shown when the activity can't be accessed_
![](https://codeberg.org/attachments/ed4c61de-b3b7-4523-b92b-bc76e1d8b7c5)
_Can't access the RSS feed_
![](https://codeberg.org/attachments/5a27f2be-d79c-4fb4-85a5-758348398f1b)
_Can access the RSS feed_
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4189
Reviewed-by: Otto <otto@codeberg.org>
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| code.forgejo.org/f3/gof3/v3 | require | minor | `v3.3.1` -> `v3.4.0` |
---
### Configuration
📅 **Schedule**: Branch creation - "before 4am" (UTC), Automerge - "before 4am" (UTC).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MDkuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQwOS4xIiwidGFyZ2V0QnJhbmNoIjoiZm9yZ2VqbyIsImxhYmVscyI6WyJkZXBlbmRlbmN5LXVwZ3JhZGUiXX0=-->
Co-authored-by: Twenty Panda <twenty-panda@posteo.com>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4196
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Co-committed-by: Renovate Bot <forgejo-renovate-action@forgejo.org>
Ports fuzzy search for `/issues` and `/pulls` from gitea.
Adds fuzzy search for `/user/repo/issues` and `/user/repo/pulls`.
---
## Notes
### Port: [`gitea#be5be0ac81`](be5be0ac81)
- CONFLICT (content): Merge conflict in routers/web/user/home.go
Conflict resolved by
1. keeping both `PageIsOrgIssues` and the newly introduced `IsFuzzy`
2. using `pager.AddParam(ctx, "fuzzy", "IsFuzzy")` rather than `pager.AddParamString("fuzzy", fmt.Sprintf("%v", isFuzzy))`
- CONFLICT (content): Merge conflict in templates/user/dashboard/issues.tmpl
Conflict resolved by keeping the changes from #4096, and picking the `&fuzzy=${{.IsFuzzy}}` inclusion to all urls and `{{if .PageIsPulls}}...`
### Port: [`gitea#fede3cbada`](fede3cbada)
- CONFLICT (content): Merge conflict in templates/user/dashboard/issues.tmpl
Conflict resolved by keeping previous changes and picking the replacement of `{{if .PageIsPulls}}...` with `{{template "shared/search/combo_fuzzy"...` which contains the replacement of `explorer.go` to `explorer.go_to`
### Fixup commit
replaces `Iif` with `if` which was introduced in gitea#fede3cbada
### Feature commit
adds in support for /user/repo/(issues|pulls) + test
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Kerwin Bryant <kerwin612@qq.com>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4160
Reviewed-by: twenty-panda <twenty-panda@noreply.codeberg.org>
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
This adds org-mode readmes to the extensions that are prioritized when
searching for readme. Org-mode readmes come after markdown readmes in
terms of priority and before txt readmes.
Closes #4073
closes #3855
unlike #3854, this implementation uses a generic details html tag and a bit of tailwind magic...
---
## Maintainers Note
- previously tailwind classes of the form `[-a-zA-Z:0-9_.]` was disabled, however they were enabled since they were required for the `group-open:` classes
---
## Manual Testing
1. Visit the code search results after submitting a valid query for repo (if indexer disabled) or repo, user, explore (if indexer enabled)
2. Verify thst
1. the results are unfloded/open by default
2. the chevron points down when open and right when closed
<video src="/attachments/5a55c56f-6159-4422-ab80-962e0121e7d2" title="fold2.mp4" controls></video>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4134
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Beowulf <beowulf@noreply.codeberg.org>
Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
This overrides handling of Tab and Enter keys in the ComboMarkdownEditor, so that:
* Pressing Tab prepending 4 spaces to the line under cursor, or all the lines in the selection.
* Pressing Shift+Tab removes up to 4 spaces.
* Pressing Enter repeats any indentation and a "repeatable" prefix (list or blockquote) from the current line.
Since Tab "capture" can interfere with keyboard navigation, it's only done if there was any previous input in the textarea or if it was selected with a pointer. Additionally, presing Esc will make the textarea lose focus, resuming tab navigation. This seems adequate to me, but I might be wrong.
Had to use the "deprecated" execCommand method, since anything else I tried messes up the undo history. There's a fallback for when (if?) it's actually removed.
Only tested in desktop Firefox and Chrome so far.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4072
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Beowulf <beowulf@noreply.codeberg.org>
Co-authored-by: Danko Aleksejevs <danko@very.lv>
Co-committed-by: Danko Aleksejevs <danko@very.lv>
When a comment was added and saved with the preview tab active, the
preview tab is still active, when the comment is edited again.
This adds a "hacky" solution, but it works and is simple.
Every time the edit is "started" and the editor already exists, the tab
with the edit text field gets clicked to activate it.
Fixes #1334
* disabled the button itself, but added the tooltip to the form, because it didn't work for the button and likely has something to do with JS
* added an integration test to verify the new logic
## Preview
|Signed in|Guest|
|-|-|
|![](/attachments/b1441565-6aec-4a72-a28f-6383914c8918)|![](/attachments/839cc58e-18cf-4a5d-a9d7-f0e3e2556c98)|
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4095
Reviewed-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Adds a feature similar to this https://github.blog/changelog/2021-11-24-specify-theme-context-for-images-in-markdown/ , by adding styles to elements which `src` or `href` attribute ends with `#light-mode-only` or `#dark-mode-only`. To improve compability, the github variants with the `gh-` prefix are also contained.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3985
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Co-committed-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Uses `gopls check <files>` as a linter. Tested locally and brings up 149
errors currently for me. I don't think I want to fix them in this PR,
but I would like at least to get this analysis running on CI.
List of errors:
```
modules/indexer/code/indexer.go:181:11: impossible condition: nil != nil
routers/private/hook_post_receive.go:120:15: tautological condition: nil == nil
services/auth/source/oauth2/providers.go:185:9: tautological condition: nil == nil
services/convert/issue.go:216:11: tautological condition: non-nil != nil
tests/integration/git_test.go:332:9: impossible condition: nil != nil
services/migrations/migrate.go:179:24-43: unused parameter: ctx
services/repository/transfer.go:288:48-69: unused parameter: doer
tests/integration/api_repo_tags_test.go:75:41-61: unused parameter: session
tests/integration/git_test.go:696:64-74: unused parameter: baseBranch
tests/integration/gpg_git_test.go:265:27-39: unused parameter: t
tests/integration/gpg_git_test.go:284:23-29: unused parameter: tmpDir
tests/integration/gpg_git_test.go:284:31-35: unused parameter: name
tests/integration/gpg_git_test.go:284:37-42: unused parameter: email
```
(cherry picked from commit 816222243af523316041692622be6f48ef068693)
Conflicts:
Makefile
trivial context conflict and also ask renovate to watch over it
do not include it in lint-backend because the errors are not fixed
Fixes issue when running `choco info pkgname` where `pkgname` is also a
substring of another package Id.
Relates to #31168
---
This might fix the issue linked, but I'd like to test it with more choco
commands before closing the issue in case I find other problems if
that's ok.
---------
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
(cherry picked from commit c888c933a930ee2ba4e7bb0bf6678aaf45a9778a)
This is a PR for #3616
Currently added a new optional config `SLOGAN` in ini file. When this config is set title page is modified in APP_NAME [ - SLOGAN]
Example in image below
![Selezione_075.png](/attachments/7a72171e-e730-4e57-8c97-ffc94258e00f)
Add the new config value in the admin settings page (readonly)
![Screenshot 2024-05-13 at 18-04-13 My Forgejo.png](/attachments/dad00fc2-29fa-4371-a7b9-5233eadeac13)
## TODO
* [x] Add the possibility to add the `SLOGAN` config from the installation form
* [ ] Update https://forgejo.org/docs/next/admin/config-cheat-sheet
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3752
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: mirko <mirko.perillo@gmail.com>
Co-committed-by: mirko <mirko.perillo@gmail.com>
commit 1be80cfdbca10d5014cec904e96c7a390b338493
Merge: c01b10a593130981af64
Author: Earl Warren <earl-warren@noreply.codeberg.org>
Date: Thu Jun 6 06:36:34 2024 +0000
Merge pull request 'federated-star' (#1680) from meissa/forgejo:forgejo-federated-star into forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/1680
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
commit 130981af64
Merge: 62856e639ec01b10a593
Author: Earl Warren <earl-warren@noreply.codeberg.org>
Date: Thu Jun 6 06:07:34 2024 +0000
Merge branch 'forgejo' into forgejo-federated-star
commit 62856e639e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jun 6 07:26:28 2024 +0200
adjust field name
commit 81236bc9ef
Merge: c0b9ab20601b3ccfffe8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jun 5 07:33:12 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit c0b9ab2060
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Jun 4 12:37:18 2024 +0200
Extend integration test for staring federated repo
commit 98939c4745
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 31 18:05:29 2024 +0200
remove no longer used doc
commit 17e3f6c6f3
Merge: 58b8f57d3ff887972348
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 31 18:03:19 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 58b8f57d3f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 09:20:39 2024 +0200
more lint
commit c3650cb2fe
Merge: 07e2708e3d73f6e8809a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 09:01:00 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 07e2708e3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:59:32 2024 +0200
lint
commit e7580da130
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:58:19 2024 +0200
lint
commit 7b2309592c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:55:47 2024 +0200
remove unused
commit dadfb29ae9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 29 08:44:00 2024 +0200
relax validation
commit 26612aa75b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:53 2024 +0200
Add ToDo
commit fa5806cecf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 15:37:41 2024 +0200
Use StatusSeeOther
commit 75c93e5319
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:54:49 2024 +0200
Update NewRepositoryID with case for following repo
commit 9c9333868c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:38:27 2024 +0200
Add todo
We currently validate RepositoryID uris to be a valid api address from our own server.
commit 69e79e50c2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue May 28 12:36:34 2024 +0200
Lift test env prep one up
commit 72f2f35bd8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:57:03 2024 +0200
wip integration test
commit a133b6de31
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 28 08:53:19 2024 +0200
rename
commit 3d1586d9cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 27 08:20:43 2024 +0200
translation hast to be done in translation tool
commit 108971ddc8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 27 08:18:09 2024 +0200
add migration
commit 6ef691b8d7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 16:34:11 2024 +0200
lint
commit a3c90e3085
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 13:27:37 2024 +0200
field no longer in use
commit 5ace6816ac
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:50:54 2024 +0200
remove todo - no change required
commit 64be24ed0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:49:08 2024 +0200
Format & remove old todos
commit 30e2582f24
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 08:24:54 2024 +0200
mv doc to doc project
commit 2e72b5e05b
Merge: 4c87b0b3eeeea841d25d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 24 07:25:20 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 4c87b0b3ee
Merge: a1acc46c889c7ff70072
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 22 18:23:21 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit a1acc46c88
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 21 18:46:48 2024 +0200
make mocked user consistent
commit a62c2afcea
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue May 21 11:43:15 2024 +0200
Extended integration test
commit 07659a5e7e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 17 08:15:33 2024 +0200
rename fxct name
commit 86db5f612c
Merge: 307b27bbaa45a41811de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu May 16 18:28:43 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 307b27bbaa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu May 16 18:22:09 2024 +0200
choose a not local avail federated userid
commit a9c00d49da
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:55:17 2024 +0200
Set LowerName to name with lower case
commit 6457ace318
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:26:51 2024 +0200
Added migrations for User and FederatedUser
commit 1b3c4dcd85
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu May 16 10:06:13 2024 +0200
Extended AP like-repo integration test
commit 94be68725a
Merge: 08fe47d5c8fe3473fc8b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 15 09:35:02 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 08fe47d5c8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 14 07:48:00 2024 +0200
Do not relay on ID start at 1
commit 57a9729094
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 14:29:54 2024 +0200
linting
commit e55533d64d
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 14:15:36 2024 +0200
Added migration for creation of federation_host table
commit cf9953a612
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:28:31 2024 +0200
linting
commit c3fb34d5b4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:16 2024 +0200
fixed some comments
commit 379b0234eb
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 12:00:02 2024 +0200
added test cases for federationhost
commit 8f42684599
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:24:50 2024 +0200
Renamed field of FederationHost
commit c4f9f8578a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 13 11:14:04 2024 +0200
Introduced ErrNotValid
commit cb4690e570
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 13 07:45:37 2024 +0200
linting
commit 3cc48a5c9f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:44:26 2024 +0200
format
commit 3bf423c97f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:29:49 2024 +0200
assert, that federation-host is present.
commit 8d330fdb5d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 17:01:15 2024 +0200
Now we've an intergration test with second federation server
commit 0665c1252e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 16:25:54 2024 +0200
make start time more flexible
commit c4c03dab4b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 10 15:27:54 2024 +0200
on the way to test with second server
commit 8ec570841a
Merge: e122df36f899d1ae52fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 17:49:26 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit e122df36f8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 17:47:35 2024 +0200
prepare for next pr
commit fdfc21a6b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue May 7 07:38:20 2024 +0200
review results
commit 82fe1d3e42
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon May 6 16:01:23 2024 +0200
make fmt
commit a485837b9c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:52:25 2024 +0200
removed unused code
commit c70b8d28a3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 08:12:43 2024 +0200
linting
commit 8f298a9901
Merge: b99d66b5308c3511a8b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon May 6 07:58:50 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit b99d66b530
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 18:04:12 2024 +0200
linting
commit 3a6dfadcd0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 17:10:16 2024 +0200
linting
commit 510868731d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:58:15 2024 +0200
linting
commit 1a07db1a40
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun May 5 16:35:25 2024 +0200
omit linting next try
commit ca0a53bf5f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat May 4 17:58:54 2024 +0200
omit linting maybe?
commit ee71f86432
Merge: 957b1023e985f2727872
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 3 08:44:49 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 957b1023e9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri May 3 08:00:17 2024 +0200
refactoring: separaate model & module
commit 42837f5dab
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu May 2 08:56:36 2024 +0200
fix linting
commit ded7b60d0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:15 2024 +0200
wix the invalid test
commit 534d692d68
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:46:03 2024 +0200
fix field names
commit 715ff0eb7f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:23:39 2024 +0200
remove unused & fix wording
commit 87036ec719
Merge: be6e6eb96abbec2e2960
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:02:36 2024 +0200
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit be6e6eb96a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 15:02:27 2024 +0200
refactor validation
commit bbec2e2960
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed May 1 14:53:42 2024 +0200
Fix test and add symmetry
This maybe was a mixup with TestActivityValidation.
We now test if the UnmarshalJSON actually threw an error.
commit 4b2802a6ba
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:23 2024 +0200
internal refactoring
commit 6c7cff4f16
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed May 1 14:39:09 2024 +0200
fix NPE
commit e9fed7a488
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 20:13:37 2024 +0200
found NPE
commit 285e72e4e6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 19:51:28 2024 +0200
found issue during test
commit a9a30fc212
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Apr 29 08:40:46 2024 +0200
remove resolved todo & integration test
commit 2f2330c450
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Apr 28 13:52:51 2024 +0200
first integration test
commit 70ae102597
Merge: df2fd904b3d6c36ec406
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 17:16:15 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit df2fd904b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 16:37:16 2024 +0200
drop some words on normalized uri as id
commit 37ed52cfd9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 16:19:31 2024 +0200
start add NormalizedFederatedUri to user
commit f687f79ed0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 26 15:48:56 2024 +0200
start add NormalizedFederatedUri to user
commit b878e74f76
Merge: 71141a5ff337420442de
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:33:57 2024 +0200
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit 71141a5ff3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:33:47 2024 +0200
WIP Refactoring and solving (adding) ToDos
commit fb1d0df791
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:29:32 2024 +0200
Also check for RepoID to be unique
commit f3e58f29b0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 14:24:38 2024 +0200
Pass unvalidated input to field
commit feca77b040
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 12 13:58:55 2024 +0200
Rename for clearer semantics
commit 37420442de
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Apr 12 13:52:26 2024 +0200
unify copyright comment
commit 94091cc144
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:38:49 2024 +0200
Don't use TEXT type
commit 6310e75d8d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:33:13 2024 +0200
Update todo
commit 075857f030
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:32:49 2024 +0200
Update docs
commit 19628b84c6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:51 2024 +0200
use context
commit 80888b80d6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 16:00:28 2024 +0200
Fix imports
commit af0d0f7745
Merge: bbcb8e70609d6389352d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 15:38:11 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit bbcb8e7060
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 14:21:51 2024 +0200
Bits of format
commit bb83a8d85e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:58:28 2024 +0200
make fmt
commit 0eb71098a2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:53:56 2024 +0200
make tidy
commit e2c9653b33
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 12:47:26 2024 +0200
Update go version and protobuf deps
commit 2b9977d843
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:46:11 2024 +0200
Linting
commit 511ef0bf5b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:24:22 2024 +0200
Use federated staring func
commit 8579b7f7bb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 11:21:57 2024 +0200
Use optional.Some
commit 97343470bc
Merge: 213fc3a97d21b1381e36
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 9 10:42:42 2024 +0200
Merge branch 'forgejo' into forgejo-federated-star
commit 213fc3a97d
Merge: c908455998765298814c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Apr 6 10:59:41 2024 +0200
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit c908455998
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Apr 6 10:59:36 2024 +0200
fix multiple federation in one host
commit 765298814c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:07:04 2024 +0200
Add ToDo
commit 33c60ebdff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Apr 5 17:06:57 2024 +0200
Add logging
commit 41f066a1a6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:33:08 2024 +0200
add notes for setup
commit 15bb774409
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Apr 4 18:05:55 2024 +0200
add relation details
commit 8d78c3edca
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:12:41 2024 +0200
make fmt
commit b4e6a7ea3f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:09:40 2024 +0200
make lint-go-fix
commit 92d011f1a5
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 15:08:02 2024 +0200
fix some linting issues
commit 976d79044f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 08:32:37 2024 +0200
show apapiurl in repo settings
commit 73cf1e3901
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Apr 4 07:22:04 2024 +0200
Revert "added repoUri to federationService"
This reverts commit 8cd89bf4d3.
commit 8cd89bf4d3
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 15:39:37 2024 +0200
added repoUri to federationService
This does not work yet. APAPI url OR host and id have to be derived from repoUri.
commit 2b7a22afb3
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 12:26:33 2024 +0200
renamed FederatedRepo to FollowingRepo
commit daccaed157
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Apr 3 12:08:44 2024 +0200
Rename federatedRepo to followingRepo
commit d240a9bc90
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 10:25:40 2024 +0200
trim trailing semicolon
commit 5671566df6
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Apr 3 09:53:19 2024 +0200
adjust fed repo splitting
commit 7a142c876e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Apr 2 18:36:22 2024 +0200
remove federated user in case of user deletion
commit 5edf7d0e61
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Apr 2 17:33:32 2024 +0200
Also trim whitespaces within the list items
commit 431b4c2829
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:38:06 2024 +0200
optimize function
commit 962cd374e2
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 12:36:04 2024 +0200
delete federated repos when deleting repository
commit 8b56159042
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Apr 2 11:13:50 2024 +0200
prevent error when setting no fed repos
commit 9212fb1633
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Apr 2 09:03:49 2024 +0200
feedback from discussion
commit b747342672
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 16:08:29 2024 +0100
separate collecting activities from sending them
commit 2ad685fd2c
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 15:41:43 2024 +0100
fix like target
commit e2b11b93bc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 15:21:40 2024 +0100
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit fc8e2b3f8a
Merge: 4d5c8b55637f19247b0a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 15:05:35 2024 +0100
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit 4d5c8b5563
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 15:00:55 2024 +0100
refactor services
commit 7f19247b0a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 14:27:50 2024 +0100
Moved sendLikeActivities to federation_service
commit 1ad7bdf983
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Thu Mar 28 09:36:08 2024 +0100
fixed tests
part1, one test still failing
commit d624ebb712
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 08:13:00 2024 +0100
use doer coming from api
commit 992fbf6898
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 28 07:44:22 2024 +0100
comments
commit 259c0202c7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:56:32 2024 +0100
fix test & add some review
commit 8eae48761f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:26:55 2024 +0100
add some pictures
commit e75bcb2f89
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 19:02:37 2024 +0100
rename file
commit 97b5e0da91
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Mar 27 16:20:33 2024 +0100
revise NewForgeLike
Also added new test, which still fails since time.Now() does not match
commit 911e916a4f
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Mar 27 11:33:00 2024 +0100
Added new blog post
commit a2a5956d79
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Mar 27 09:29:23 2024 +0100
Added context and choices to new adr
commit dd37e3a7b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:25:16 2024 +0100
wip
commit a950ba4631
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Mar 27 08:21:44 2024 +0100
prepare state of the month
commit 84f73d9db8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:56:06 2024 +0100
Add ToDo
commit 01e9853161
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:54:55 2024 +0100
Add ToDo for storing federated repos
We need to check whether federated repos already exist in db. This way multiple repos on a server (forks) can have the same federated repos.
commit 45cddb4ac7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:53:02 2024 +0100
Add logging
commit 436466dcad
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:28 2024 +0100
Check if federation enabled in StarRepo
commit e9bbdc678b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 16:21:09 2024 +0100
Not using object URL
commit 04f907c8c8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:55 2024 +0100
Revert
commit 32d457f9a3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:36 2024 +0100
StarRepo Wrapper
commit 0b8aa3105c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 15:28:11 2024 +0100
Create object manually
commit b2105de36f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 26 14:39:25 2024 +0100
SendLikeActivity to api
It might not be a good idea to start a possibly long lasting http call during a running DB transaction. I.E. in the case of failing transaction we already sent some data into the world which might not be valid.
commit bbe5096307
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Mar 26 14:02:30 2024 +0100
fixed circular dependencies
next: fix post call error
commit 7f0371056e
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Mar 26 10:23:14 2024 +0100
moved functionality
import of forgefed causes circular dependencies. This has to be solved!
commit d251fc2611
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Mar 26 08:28:22 2024 +0100
set federatedRepoList into context
commit cf8a30efac
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 26 07:58:04 2024 +0100
mob-next: how to store port & schema
commit 5b8173f660
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 26 07:36:09 2024 +0100
do not return invalid result
commit 6d814447d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:52:39 2024 +0100
Use Plural
commit 653ced5596
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:47:18 2024 +0100
Validate before returning
commit 35d3fc199c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:35:35 2024 +0100
Rename to StoreFederatedRepo*
commit ca7d1c6f78
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Mon Mar 25 16:30:02 2024 +0100
Localize error messages
commit 828e7a76f6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 25 09:15:32 2024 +0100
use new table to populate settings
commit a9d18e5327
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 17:01:25 2024 +0100
fixed issues, store now works
commit ce317c33cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 23 15:27:45 2024 +0100
fix context
commit 950dcd959e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 20:14:20 2024 +0100
implement storage of federated_repo
commit 6b767684a7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:51:20 2024 +0100
Add discussion ToDo
commit 0f27f0a05b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:49:29 2024 +0100
Add discussion ToDo
commit 0f9d1c80be
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:42:38 2024 +0100
Implement CreateFederatedRepoList
commit 36c0c1c3c1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:59 2024 +0100
Add DB functionality for federated repos
commit 288dda282c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Mar 22 17:41:36 2024 +0100
Add more ToDos
commit 508b4deac8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:37:06 2024 +0100
add test & fix compile
commit 4938d38e39
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 08:08:54 2024 +0100
more review
commit 9ccad50b05
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:52:03 2024 +0100
review
commit 7316108d56
Merge: 7e355986f83e6eb255b3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:32:30 2024 +0100
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit 7e355986f8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 22 07:32:22 2024 +0100
fix wording
commit 3e6eb255b3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:29:13 2024 +0100
WIP Initial, naive implementation of sending stars to fed repos
Currently no rate limits are respected
The mechanisms to use the Federated repo table need to be used
commit 0c6c43003c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:35 2024 +0100
Implement getting APAPIURL for repo and user
commit ed256ca540
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 16:27:08 2024 +0100
Implement NewForgeLike
commit 2e0584bdf3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 15:37:37 2024 +0100
Clearer error message
"May" is also interchangeable with "could". "Should" fits better in this context.
commit 84f2aab570
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:38 2024 +0100
Add todo
commit 42a41ce2bc
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:16 2024 +0100
Remove todo
commit a02ec0363b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:42:04 2024 +0100
Add todo
commit e4242dafd9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 14:41:11 2024 +0100
Add Function description
commit 689837b63a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 12:59:59 2024 +0100
Fix typos
commit f327c0da24
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 12:18:29 2024 +0100
Cap max size of federated repo list at 2048 bytes
commit 6055b4fca0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Mar 21 11:42:12 2024 +0100
Add todo
commit b4bb41e0e3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Mar 21 08:25:40 2024 +0100
introduce federated repo
commit 3b30c678e7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:22:35 2024 +0100
Remove ToDo
commit b6035c03ae
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:14:54 2024 +0100
Rephrasing for clearness
commit 2e803e10c0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:12:42 2024 +0100
Do not use binding at this stage
It wasn't clear how to utilize the "type" field in the .tmpl for our
purposes.
commit 13bf84e89e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 16:12:20 2024 +0100
Implent checking for list of repos
commit 3dda92b52b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:26:46 2024 +0100
Update Locales to reflect changes
commit ea4471d0db
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:22:56 2024 +0100
Remove ToDos
commit d1190423bb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:21:17 2024 +0100
Implement single Repo validation and saving POC
commit 1cbd5e33cb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:16:53 2024 +0100
Validate Federated Repos Field
Considering this from a POC perspective we might want to avoid misuse
of this field. In other words, we want this field to be used as
intended.
commit 584af0486d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Mar 20 13:13:23 2024 +0100
Add Federation specific URL validation
commit 41da150fb3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 19:28:33 2024 +0100
add review comment
commit 84f236a58d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 15:30:56 2024 +0100
Add more todos
commit 884e38bdab
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 15:25:52 2024 +0100
WIP Implement proper saving of federated repo urls
Added ToDos where relevant
commit 9337274334
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:56:12 2024 +0100
Revert to input
commit abc7aa0972
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:53:00 2024 +0100
Display data on text area
commit 048ff5da11
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:52:14 2024 +0100
Fix typos
commit 4c1d12b2e4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:52:00 2024 +0100
Use textarea as we expect lots of input
commit 09cac163e0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 13:17:27 2024 +0100
Add a field for listing the federated repos
commit a6d45f8b97
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Mar 19 11:56:25 2024 +0100
Implement FederationEnabled function for templates
commit 26eb01b509
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:25:20 2024 +0100
corr var label name
commit 3018769d26
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Mar 19 10:05:31 2024 +0100
Federation settigs :: set label name for internationalisation
commit 6901ae4b99
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Mar 19 08:29:57 2024 +0100
wip: found backend for settings update
commit 9dcdf8d828
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Mar 16 12:46:43 2024 +0100
Locales, field & action
commit fdcff3cc43
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Mar 8 18:25:37 2024 +0100
found the template for frontend
commit 93d7de147b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:57:33 2024 +0100
adjust to new dev-model
commit e41fa653d9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Mar 4 13:43:16 2024 +0100
fix en name of score :-)
commit 0e73dfccbb
Merge: e2ca63ca38db2f896264
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 14 18:23:15 2024 +0100
Merge branch 'forgejo-federated-star' of codeberg.org:meissa/forgejo into forgejo-federated-star
commit e2ca63ca38
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 14 18:23:10 2024 +0100
Add Malicious Controlled Forge - kudos to gusted
commit db2f896264
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Tue Feb 13 11:09:31 2024 +0100
small fix by adding id as pk for FederatedUser
commit 086c66b06a
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:07:15 2024 +0100
make tidy
commit 2e41fe0a46
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Mon Feb 12 13:00:47 2024 +0100
fix import
commit d65cd5a17a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:55:00 2024 +0100
ActorID gets source type from NodeInfo
commit 181d743a8a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:29 2024 +0100
update copyright
commit 9662aee375
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Feb 12 10:14:16 2024 +0100
reflect hard fork
commit 6e6813a88b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 18:17:40 2024 +0100
make operatorid unique
commit 6d17f45986
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:56:17 2024 +0100
fix misspell
commit eecb9b8040
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:46:27 2024 +0100
fmt fix
commit 664144930e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:10:59 2024 +0100
result of lint-fix
commit 5fa62287d6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 17:00:21 2024 +0100
undo rebase conflicts
commit 3ef57385ec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:44:03 2024 +0100
fix linting
commit 3b244d673b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 16:24:51 2024 +0100
small fixes
commit ac82486a95
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:31:58 2024 +0100
This months blog
commit 8917bfca0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:12:49 2024 +0100
add a arch federation overview
commit 94937abc04
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 9 15:12:26 2024 +0100
Source is no longer needed - see adr-federated-star
commit b2cc848e7d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:31:02 2024 +0100
clean up aliases
commit e733809ef2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:16:37 2024 +0100
symetric handling for value/reference
commit d2d5e84977
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 15:16:02 2024 +0100
federated user is not entity - so no need for ID
commit 91f7541add
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 13:31:27 2024 +0100
refactor for semantic and cycle free deps
commit 66bc7a9a0c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 11:09:55 2024 +0100
Search federatedUser instead of loginName
commit e44be72251
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 8 09:56:49 2024 +0100
Add tx around user creation
commit edf7f61b83
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 17:11:43 2024 +0100
mv federated_user_creation to user package
commit e180467760
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 16:42:40 2024 +0100
added user creation from ap
commit a702da69cc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 16:12:23 2024 +0100
added test for federated user
commit 67f3f66be4
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:37:48 2024 +0100
Created FederatedUser
commit e477181e23
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Wed Feb 7 15:03:21 2024 +0100
fix typos
commit a1ca7e958a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 14:59:39 2024 +0100
use local fqdn for generated user email
commit 5a7f6f15a6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 14:30:17 2024 +0100
ensure federation info fqdn to lowercase
commit e05c810823
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Feb 7 13:52:25 2024 +0100
document usermapping chosen
commit e255f73731
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 13:30:09 2024 +0100
make class diagram more accurate
commit 7db83688db
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Feb 6 12:45:33 2024 +0100
updated rebase process
commit ed99dfa993
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Feb 2 17:25:02 2024 +0100
new threats thx to gusted
commit 56660e3a0b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Feb 1 15:48:56 2024 +0100
add aspect resulting from our discussion
commit b02b8a307c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:48:44 2024 +0100
fix wording
commit c45e726383
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 28 12:43:56 2024 +0100
fix wording
commit 5ef823e3af
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 27 15:03:37 2024 +0100
adjust urls to changed username
commit a08e435a1e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 17:16:26 2024 +0100
updated rebase instructions
commit 6b14d1a562
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 26 16:13:55 2024 +0100
updated rebase instructions
commit 49b014f28f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:33:59 2024 +0100
add reply attack to blog
commit c58a995fb2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 19 16:26:16 2024 +0100
refactor FederationInfo -> FederationHost
commit e926ea16e2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:06:56 2024 +0100
improve english ..
commit e1f27a950c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 20:01:22 2024 +0100
improve english ..
commit 2c55c0252f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:48:36 2024 +0100
prepare discussion
commit 2b5360a000
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:15 2024 +0100
work on adr
commit a6b7cc8e70
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 18 19:20:02 2024 +0100
update needed modules
commit 0453598e3d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:36 2024 +0100
add some todos
commit 48c6d62e47
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 09:31:27 2024 +0100
blog: newest on top
commit c6981cdbf6
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 16 08:28:12 2024 +0100
proposals for federatedPerson Mapping
commit e2291fec1e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:40 2024 +0100
think about federated persons
commit 5a88eef78e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 15 08:12:26 2024 +0100
Propose the current solution
commit 0ddc2db46a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 14:53:00 2024 +0100
mitigate Block by future StartTime
commit 1b35bd2911
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sun Jan 14 13:03:51 2024 +0100
lint fix
commit f25eab35fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:16:43 2024 +0100
Update for new implementation
commit c4eb763f4a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 17:06:40 2024 +0100
lint fix
commit 9a9ac33766
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:22:49 2024 +0100
lint fix
commit ca5eaa8c6b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 16:08:12 2024 +0100
introduce FI Factory
commit dabd773f6b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Jan 13 14:17:11 2024 +0100
Fix error handling & add timestamp check
commit 40ec049013
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 18:12:22 2024 +0100
add the next todo
commit 7d30d14c76
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:49:07 2024 +0100
breaking struct adjustment
commit 1f989f2ecd
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 17:27:52 2024 +0100
Added FederationInfo Create function
commit 380d3db0bf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 17:00:17 2024 +0100
integrate federation info in api call
commit 52400f7978
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 16:12:54 2024 +0100
Added FederationInfo get methods for repository
commit bbccc24ed1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 15:34:34 2024 +0100
test federationinfo validation
commit 9c37272ee9
Author: Clemens <clemens.geibel@meissa-gmbh.de.de>
Date: Fri Jan 12 14:57:22 2024 +0100
make validateNotEmpty more generic
commit c67be3b668
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:35:43 2024 +0100
start work on federationinfo
commit 8610d94af8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 12 14:33:52 2024 +0100
start work on federationinfo
commit 12558d62c8
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:43:14 2024 +0100
Remove MaxConnsPerHost limit for outgoing connections
commit 87bfa79f71
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Jan 12 12:29:00 2024 +0100
Configure client against DOS
commit ecf391dcbf
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Jan 9 09:14:52 2024 +0100
add some user creation unittests
commit de2569618c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Jan 8 18:21:55 2024 +0100
fix: wmail should start with char
commit f0af660cf9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 18:19:46 2024 +0100
give names to threats
commit a8b132da80
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:43:18 2024 +0100
provide the next testing
commit 2d98b22604
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 17:11:20 2024 +0100
blog the next test release
commit 0fac86a384
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 16:42:57 2024 +0100
update to new star activity
commit 42eab2d304
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 12:03:36 2024 +0100
add test-release-branch
commit 680213b479
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:43:52 2024 +0100
translate scoring
commit 1fc1dda59d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:40:35 2024 +0100
Fix wording
commit b978642da0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Jan 5 11:34:32 2024 +0100
improve sequence
commit fe9f26305f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:25:43 2024 +0100
update ThreatAnalysis for Like Aktivity
commit 6e46739090
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Jan 4 18:04:46 2024 +0100
validate person
commit 0505baab2b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:52:41 2024 +0100
ad validation for like activity
commit 3ab2d9a449
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:29:12 2024 +0100
rename star -> ForgeLike
commit 4473fb788a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Jan 3 18:10:24 2024 +0100
start refactoring star->like
commit 38438b592f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 18:09:27 2023 +0100
rebase conflicts to fix
commit f673dd1ca7
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 16:31:52 2023 +0100
source no longer needed
commit 084eed82a4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 16:30:58 2023 +0100
use federate-repo users for our local test
commit b2a9b53041
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:54:13 2023 +0100
use nodeInfo.Source instead of startActivity.Source
commit 8116214727
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:45 2023 +0100
introduce nodeinfo
commit 587bd07372
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 15:48:31 2023 +0100
mv more fkt to http-client
commit 310d740cee
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Dec 29 12:10:07 2023 +0100
Start NodeInfo implementation
commit 3c2493902d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 29 09:43:10 2023 +0100
adjust to ugly linting
commit e704e5adcc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 15:10:21 2023 +0100
adjust to ugly linting
commit 1e40b814a1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 15:00:42 2023 +0100
Linting
commit 8585edc47a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 14:52:10 2023 +0100
Linting
commit 7d78fb8adc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:47:34 2023 +0100
adjust to ugly linting
commit a64ce2feb1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 14:20:30 2023 +0100
removed resolved todos
commit 2e031a9763
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:44:45 2023 +0100
WIP Generic IsValid for *Id structs
commit e69e5df089
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 13:42:07 2023 +0100
Assume validated url.URL for NewActorID
commit 6e4467d49d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 22 11:48:24 2023 +0100
experiment on generalization
commit 75cc5b900d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 22 10:19:01 2023 +0100
Add review todo
commit 1dd3084f66
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 15:01:49 2023 +0100
Split test according to actor.go
commit 48cfb521d1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:42 2023 +0100
Add suffix checking helper
commit c887bddb72
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:22:23 2023 +0100
Attempt generalization of Id creation
commit 15775ad891
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 14:21:47 2023 +0100
Fix import
commit 715afb2468
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 21 09:30:07 2023 +0100
Add newlines for readability
commit fff4c3f9fc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 20:12:31 2023 +0100
fix typo
commit 5317832fef
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 13:04:40 2023 +0100
odd one mor picture to the blog
commit 433a38699a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 12:55:28 2023 +0100
improve test description
commit 65e3f1d0ed
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 20 09:33:29 2023 +0100
update adr lining out a second option
commit 4d1492831d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:30:22 2023 +0100
Move char_limiter to utils and rename
commit afc9acd925
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:23:13 2023 +0100
Limit number of characters on body log
commit 3363b3bf0c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:22:03 2023 +0100
Validate response before further processing
commit 2f4b1a5cd4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 12:20:41 2023 +0100
Use id of existing repo for convenience
commit ff146a9430
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 20 11:27:44 2023 +0100
Add review todos
commit 071b47b8d0
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 12:26:55 2023 +0100
Catch edge case: remote user does not exist on remote repo
commit 0378b2dc7d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:55:30 2023 +0100
Add questions for review discussion
commit 8a8b6821ba
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 11:32:57 2023 +0100
Fix bash code block
commit 3327fbc39a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 19 10:19:35 2023 +0100
Fix typos, small rewordings
commit bd640a7099
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 19 09:21:23 2023 +0100
add some pros to the source field
commit 70fbfd6cf3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 19 08:36:02 2023 +0100
reflect the discussion with kik
commit f636de050a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:47:39 2023 +0100
some improvements
commit bc7515fa31
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:45:14 2023 +0100
some improvements
commit f9bbb91f11
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 16 18:38:31 2023 +0100
expose instance for tests
commit 1704ac5bc2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 16:02:50 2023 +0100
fix most of the tests
commit 9e6c45f87d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 15:37:00 2023 +0100
make flows more precise
commit e1d7db178c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 15 14:45:20 2023 +0100
unify logging & minor improvements
commit 42854c9003
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:49:23 2023 +0100
remove global actionUser
commit a0c008b880
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:44:11 2023 +0100
cleand up user creation from ap
commit 6de8fba14d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:53 2023 +0100
minor refactorings
commit 44e10ed65a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 13 16:06:37 2023 +0100
get wo body
commit c2a42587d2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 12 11:08:57 2023 +0100
remove panics - that is not a exception replacement
commit b27460d3fe
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 12 11:04:03 2023 +0100
minor refactorings & reviews
commit e893618cdc
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Dec 11 08:14:18 2023 +0100
add more threats
commit 9633a2005a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:23:48 2023 +0100
add a sql injection threat
commit bad8e04c3c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 19:11:38 2023 +0100
cleanup & minor refactorings
commit 3172eb69d2
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 18:30:47 2023 +0100
introduce RepositoryId
commit 1fe35e14a5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:53:40 2023 +0100
mv our actor code to forgefed
commit abdf56dde1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:27:29 2023 +0100
move forgefed to models
commit 0b2cf2a55b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Sat Dec 9 14:26:49 2023 +0100
remov unused experiments
commit 184388015d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:51:54 2023 +0100
added more tests
commit b5a467e94d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 20:37:26 2023 +0100
remove unused & implement webfinger
commit 73a38ea0d1
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:52:09 2023 +0100
use new factory function
commit e8371ca94c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:43:49 2023 +0100
ActorId -> PersonId
commit 3151c8fe81
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 19:41:22 2023 +0100
make validate more compact
commit be4d3544ae
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:33:26 2023 +0100
Refactor ActorID -> ActorId
commit 7c86f13728
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:09:22 2023 +0100
make route more compact
commit afcc7f0def
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:54 2023 +0100
factory instead of parse & validate
commit 6fef54ed1c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 8 18:08:16 2023 +0100
there is a validation module
commit a10a9141f8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 15:44:00 2023 +0100
Remove useless call to repo, add todos
commit 3c515c2614
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 8 11:54:07 2023 +0100
Add review todos
commit 22d71e6b30
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:53:37 2023 +0100
Update ToDo
commit afe659f9f4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:54:07 2023 +0100
Implement 5s waiting
commit 745598bba4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:24:01 2023 +0100
Implement starring
commit 976256bf3d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:21:26 2023 +0100
Refactor if conditional to switch, use split up functions
commit 75ee273f40
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:18:33 2023 +0100
Split user creation and saving user to db
commit 7f4667696f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 13:17:51 2023 +0100
Cleanup imports
commit 6ad52a6d67
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:42 2023 +0100
Update tests
commit 25d34e0c14
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 12:03:28 2023 +0100
Check for empty path in IRI
commit f84e0b27e1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:45:24 2023 +0100
Use ValidateAndParseIRI, pass this to ParseActorID
commit fa1acd1ebb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:44:59 2023 +0100
Extract url string validation and parsing from ActorID parsing
commit 4d3ab4dda2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:47 2023 +0100
Update Validate()
commit 39d4c8dd2d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 11:24:27 2023 +0100
Generalize validate_is_not_empty
commit 085db0c127
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:58 2023 +0100
Remove todo
commit 54ef78034e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:51:03 2023 +0100
Don't parse received repoID
commit e3defaa212
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:44:35 2023 +0100
Split getPersonByRest function
This leaves us with two easier to read functions, encapsulating
two different functionalities.
commit bdddde8b68
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Dec 7 10:42:05 2023 +0100
Fix erroneous param and deprecated --name
commit 28a290da10
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 6 18:32:26 2023 +0100
reviewed current work
commit 02dc8901af
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:50 2023 +0100
Fix tests
commit 68cd621053
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 16:14:39 2023 +0100
Test for empty string
commit d27cac5bae
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:56:26 2023 +0100
Move federated user creation to func
commit 01506f9836
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:50:38 2023 +0100
Clearer description
commit 77b6402e77
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:58 2023 +0100
Add missing error treatment
commit 946e5cf34c
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:37:14 2023 +0100
Remove typo in func
commit c0f1681fa3
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:16:01 2023 +0100
Allow parsing of repository-id too
commit 4f25e5057a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:15:39 2023 +0100
Make the source an argument to the parser
commit 2fb893843b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 15:13:53 2023 +0100
Move getting person to own function
commit 6d143e74cf
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 13:36:26 2023 +0100
More clear distinction between sender and receiver of star
commit 52e950a492
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 13:06:30 2023 +0100
Check the path for empty strings
commit 65f7124c67
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 12:05:47 2023 +0100
Use u.Hostname() instead of u.Host
u.Host returns hostname:port.
commit 27c9db1027
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Dec 6 11:24:42 2023 +0100
Better function descriptions
commit 9b5d8bbeda
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Dec 6 09:07:09 2023 +0100
If we use user.loginname to store the actor.id we can search for local users earlier
commit ed1af14ceb
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:54:03 2023 +0100
Panic on error, use correct function names
commit 9dcbe0177e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:53:10 2023 +0100
Rename targe to remoteStargazer
commit de9e4dea61
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:52:33 2023 +0100
Update todos, remove comments
commit 68cc74d139
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:50:46 2023 +0100
Use actionsUser for creating http client
commit d65e5aa70e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 14:49:27 2023 +0100
Move helper functions to top
commit 1c145d9d68
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 12:19:22 2023 +0100
WIP: fit generateUUIDMail for testing purposes
commit 11e93784fe
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:46:11 2023 +0100
WIP: log Info User created
commit a20f535211
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Dec 5 11:38:36 2023 +0100
WIP: pwdgen, username
commit 85e09a7ada
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Dec 5 10:37:51 2023 +0100
WIP: Generate User if not exists
commit 94880d64f4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Dec 5 09:26:03 2023 +0100
higlight the need for id normalization
commit 231bdb65b8
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Dec 1 17:06:39 2023 +0100
searching for the local person
commit edd7fb77fd
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 15:07:13 2023 +0100
WIP create user if not exists
commit 159f3dc3aa
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 30 17:41:08 2023 +0100
describe the current state
commit 41e12d09ef
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Dec 1 11:56:12 2023 +0100
WIP create User from person
commit c8456d57ff
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:10:26 2023 +0100
Add thoughts on user creation
commit c61be31c72
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:04:26 2023 +0100
Remove redundant person implementation
commit 22ba03ae4d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:01:20 2023 +0100
Don't use redundant implementation of person
commit b00b5fa7af
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 30 16:00:39 2023 +0100
Add some thoughts on repo testing
commit eab016e896
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 29 09:21:54 2023 +0100
add threat analyses
commit a8d5e7ba77
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:45:04 2023 +0100
Fix typos and format
commit d43c4ba739
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:34:02 2023 +0100
Use person generation
commit 9f016d3673
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:33:22 2023 +0100
Move to extra var
commit 7071117864
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 15:32:15 2023 +0100
Implement Person creation
commit fde8de4f90
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:26:35 2023 +0100
Rename to ParseActorIDFromStarActivity
commit 2c4089ba1d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 13:24:59 2023 +0100
Add star json with links to lokalhost
commit ede86df685
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 29 11:46:24 2023 +0100
Remove todo
commit 7529b9da91
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:59 2023 +0100
Note ToDos for setting up useful tests
commit e60d89cb67
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 15:17:34 2023 +0100
Use correct target for get request
commit 0388240039
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:45 2023 +0100
WIP Use non generated HTTP client
commit 4b490802d7
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 13:03:07 2023 +0100
Test creation of client only
commit 61afc65377
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:53 2023 +0100
Implement Get method on Client struct
commit 56d11bbff4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 28 10:55:18 2023 +0100
Don't hardcode method in NewRequest function
commit 8a53331283
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 14:01:32 2023 +0100
Add ToDo
commit 93d79646de
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:56:53 2023 +0100
Fix api url
commit 9568eab62a
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 13:23:03 2023 +0100
Fix tests
commit 6284355e1e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:51:36 2023 +0100
Remove redundant ValidateStar and err check, call coorect function
commit 43ac3ddca9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:50:15 2023 +0100
Remove star validation as it happens in actor validation now
commit 566b3bc459
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:49:36 2023 +0100
Parse Actor from star activity, Update function declaration order
commit 3a938b6c3f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 12:48:14 2023 +0100
Use and validate source in ActorID struct
commit 546ce50337
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:40:12 2023 +0100
Use PanicIfInvalid in repository.go
commit 9566e9bc5d
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:38:01 2023 +0100
Change tests to use IsValid method
commit fccf5c37ca
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 11:37:29 2023 +0100
Add IsValid and PanicIfInvalid methods for ActorID
commit 8300d3fbde
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 24 09:55:47 2023 +0100
Add ToDos from code review
commit 34c511ae98
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:58 2023 +0100
Use data from actor, improve formatting
commit aee2ee2596
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:04:22 2023 +0100
Also log error on person creation
commit 91baf2be32
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:03:24 2023 +0100
Add get functions for userId and HostAndPort
commit 92c089a4e2
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:02:54 2023 +0100
Add a test for getting host and port
commit 863b340622
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 17:02:36 2023 +0100
Update dev notes with create repo curl cmd
commit 8657f70960
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:50:32 2023 +0100
Add todo
commit 5efce01f6f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 23 14:17:35 2023 +0100
Make test messages consistent
commit ad8adc880f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:40:28 2023 +0100
Create easier to read tests for parser and validator
commit 62eae6564f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:40:03 2023 +0100
Fix bug in validation
commit d205c50a43
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 16:08:14 2023 +0100
Implement generic validation on ActorID
commit 7b5d13a625
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:27:44 2023 +0100
Split check for schema and host
commit 3d2b5115ad
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 15:25:43 2023 +0100
Implement and use Validatable interface
commit 235ed7cd1e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 22 13:28:13 2023 +0100
Rename to actorID
commit 5e111f14ef
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:36 2023 +0100
use the swagger-api
commit 109dbd7d75
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:20:22 2023 +0100
swager generated api
commit 07bd30cf20
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:19:53 2023 +0100
exosy has moved this package to service
commit 604f0a2477
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 17:19:08 2023 +0100
swagger client generation
commit 9e74de829e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 13:38:20 2023 +0100
swagger client generation
commit bc1ff23b23
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:49:01 2023 +0100
swagger client generation
commit d81647b36e
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:37:47 2023 +0100
wip: swagger client generation
commit a954c9764f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:28 2023 +0100
wip: swagger client generation
commit fbff67f11a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 10:10:04 2023 +0100
add some more todos
commit 5c998a5c46
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 17 08:22:27 2023 +0100
add comment
commit 5729cee3e5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:04:50 2023 +0100
Move test to model/activitypub
commit 7193c0bd9b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 16:03:05 2023 +0100
WIP test for parsing the actor
commit 0c367070af
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:06:41 2023 +0100
Call validate star
commit b1f3706575
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:59 2023 +0100
Introduce validation against source
commit 78fc75135f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 15:02:20 2023 +0100
Rename to ActorData
commit 09058c13c5
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:53:54 2023 +0100
Rename to actor
commit 91dcd59e68
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:50:01 2023 +0100
Import parser from model and call validation
commit 273ca49e22
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 16 14:49:05 2023 +0100
Validate on ActorData independently and move to model
commit e44321221e
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 15:07:23 2023 +0100
WIP: Add test for parser
commit ad65976677
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 14:27:47 2023 +0100
Reorder functions
commit d52bb4bf8f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:31:16 2023 +0100
Remove newline from error string
commit b869d91dc1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:29:17 2023 +0100
Parse Actor URL
commit 7541251d63
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:28:26 2023 +0100
Correct API urls
commit 9fa8d19cf4
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 12:10:31 2023 +0100
Fix typo
commit d10c1094d9
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:23:03 2023 +0100
add some pseudocode
commit ab92891091
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:59:55 2023 +0100
Use actor
commit b085ce37a6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Wed Nov 15 08:53:02 2023 +0100
Review
commit d7abff31f6
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:13 2023 +0100
Add ToDos
commit d2b464582f
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:29:00 2023 +0100
Add ToDo
commit e18e90f8df
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:28:38 2023 +0100
Add fieldname and type
commit f48b4d1f55
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 15:27:32 2023 +0100
Get Activity field from star
commit e8013250b8
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:56:16 2023 +0100
Add question
commit 7790e98f47
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Tue Nov 14 14:53:47 2023 +0100
Remove unused funcs and structs
commit 51cb9aded0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 15 09:08:17 2023 +0100
generate ap-person client
commit 14c74f27cb
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 17:00:08 2023 +0100
tests are now working
commit d28ea1a30b
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:43:44 2023 +0100
Start implementing UnmarshalJSON for Star
commit 43014ca473
Author: bom <mattis.boeckle@meissa-gmbh.de>
Date: Fri Nov 10 16:08:15 2023 +0100
Implement MarshallJSON for Star activity
commit a1885a5767
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 15:13:26 2023 +0100
star: test first
commit 1044e44ee5
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:51:33 2023 +0100
we got a parsed actor
commit b08580280a
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:36 2023 +0100
np in case of unauthenticated user
commit 6c1ec05458
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:37:00 2023 +0100
extract the relevant app.ini parts
commit 460e2fb644
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 10 14:10:23 2023 +0100
prepare next steps
commit 5b01517c12
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:26:13 2023 +0100
Get data from form
commit e846e8225b
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Fri Nov 10 14:06:17 2023 +0100
Update dev-notes
commit a1e9783cec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:59:51 2023 +0100
expose star activity to swagger
commit d7dfdca8b9
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 15:38:55 2023 +0100
WIP Add star to swagger
commit 17dfc7bdc1
Author: erik <erik.seiert@meissa-gmbh.de>
Date: Thu Nov 9 14:24:19 2023 +0100
Clearer wording, fix typos
commit 07cf963af3
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Thu Nov 9 21:54:17 2023 +0100
expose star activity to swagger
commit dc1a82bf4c
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Wed Nov 8 08:56:22 2023 +0100
use star as swagger model
commit 18f4c514ec
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Nov 7 18:01:52 2023 +0100
add one more step to rebase procedure
commit 46fb4fec8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Nov 7 09:30:32 2023 +0100
add star activity & bind to swagger
commit ff5a4405fd
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:48 2023 +0100
introduce repo from exosy
commit 157effdd8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 18:29:24 2023 +0100
adjust star activity example
commit a0efbf7d72
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:27:41 2023 +0100
improve git-setup-doc
commit 1f80e99857
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 09:12:09 2023 +0100
improve git-setup-doc
commit cde603dd0e
Author: Mirco <mirco.zachmann@meissa.de>
Date: Fri Nov 3 17:58:47 2023 +0100
improve git sync procedure
commit 7195141805
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 08:50:36 2023 +0100
wip: lets define the post input more close
commit 6587b6d62b
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Nov 6 08:49:58 2023 +0100
log who is doing the inbox post
commit 4e1e65e14f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:53 2023 +0100
log repository under activity
commit fe6f625923
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:45:21 2023 +0100
temp deactivate security
commit b7082b7e98
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Nov 3 17:05:48 2023 +0100
improve rebase procedure
commit 87324d1553
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 20:14:52 2023 +0200
ctx action should no be good enough
commit 0d5702e501
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 20:13:51 2023 +0200
fill in some minimal information to an actor
commit 6ceb1d2040
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 20:13:24 2023 +0200
add f3 dep
commit 0572725204
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:33:14 2023 +0200
add some rought branch sync description
commit fe2a3d86d4
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 14:10:13 2023 +0200
get repo now works somehow
commit da7a38b03d
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 13:24:05 2023 +0200
enable federation
commit 64abf87fb0
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 12:12:31 2023 +0200
added some logs
commit 3dbcf34a16
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 27 11:50:39 2023 +0200
share dev notes
commit 511ab65df4
Author: Mirco <mirco.zachmann@meissa.de>
Date: Tue Oct 24 10:34:53 2023 +0200
Fix syntax error, unexpected new line
commit 154be0a637
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Tue Oct 24 09:10:31 2023 +0200
wip: compile one step further
commit 317b7fac8f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Mon Oct 23 17:16:38 2023 +0200
wip: load repo to ctx
commit 643681663f
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:27:55 2023 +0200
add activity sequence
commit 68318f2632
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 16:12:37 2023 +0200
considerations about star activity
commit d4f507a223
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:45:12 2023 +0200
remove unused imports
commit a87cbda165
Author: Michael Jerger <michael.jerger@meissa-gmbh.de>
Date: Fri Oct 20 15:16:04 2023 +0200
add repository actor
(cherry picked from commit 5c1b550e00e9460078e00c41a32d206b260ef482)
Conflicts:
tests/integration/git_push_test.go
trivial context conflict because of
2ac3dcbd43 test: hook post-receive for sha256 repos
fixes #22907
Tested:
- [x] issue content edit
- [x] issue content change tasklist
- [x] pull request content edit
- [x] pull request change tasklist
![issue-content-edit](https://github.com/go-gitea/gitea/assets/29250154/a0828889-fb96-4bc4-8600-da92e3205812)
(cherry picked from commit aa92b13164e84c26be91153b6022220ce0a27720)
Conflicts:
models/issues/comment.go
c7a389f2b2 [FEAT] allow setting the update date on issues and comments
options/locale/locale_en-US.ini
trivial context conflicts
routers/api/v1/repo/issue_comment.go
routers/api/v1/repo/issue_comment_attachment.go
services/issue/comments.go
services/issue/content.go
user blocking is implemented differently in Forgejo
routers/web/repo/issue.go
trivial difference from 6a0750177f Allow to save empty comment
user blocking is implemented differently in Forgejo
templates/repo/issue/view_content/conversation.tmpl
templates changed a lot in Forgejo but the change is
trivially ported
tests/integration/issue_test.go
other tests were added in the same region
web_src/js/features/repo-issue-edit.js
the code is still web_src/js/features/repo-legacy.js
trivially ported
This PR split the `Board` into two parts. One is the struct has been
renamed to `Column` and the second we have a `Template Type`.
But to make it easier to review, this PR will not change the database
schemas, they are just renames. The database schema changes could be in
future PRs.
---------
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: yp05327 <576951401@qq.com>
(cherry picked from commit 98751108b11dc748cc99230ca0fc1acfdf2c8929)
Conflicts:
docs/content/administration/config-cheat-sheet.en-us.md
docs/content/index.en-us.md
docs/content/installation/comparison.en-us.md
docs/content/usage/permissions.en-us.md
non existent files
options/locale/locale_en-US.ini
routers/web/web.go
templates/repo/header.tmpl
templates/repo/settings/options.tmpl
trivial context conflicts
Verify variations of branch protection that are in play when merging a
pull request as:
* instance admin
* repository admin / owner
* user with write permissions on the repository
In all cases the result is expected to be the same when merging
the pull request via:
* API
* web
Although the implementations are different.
* split into testPullMergeForm which can be called directly if
the caller wants to specify extra parameters.
* testPullMergeForm can expect something different than StatusOK
* http.StatusMethodNotAllowed can be expected: only retry if the
error message is "Please try again later"
* split into doAPIMergePullRequestForm which can be called directly if
the caller wants to specify extra parameters.
Replace #25741
Close #24445
Close #30658
Close #20646
~Depends on #30805~
Since #25741 has been rewritten totally, to make the contribution
easier, I will continue the work in this PR. Thanks @6543
---------
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
(cherry picked from commit c6cf96d31d80ab79d370a6192fd761b4443daec2)
Conflicts:
tests/integration/editor_test.go
trivial context conflict because of 75ce1e2ac1 [GITEA] Allow user to select email for file operations in Web UI
tests/integration/pull_merge_test.go
trivial context conflicts in imports because more tests were added in Forgejo
Fix #30992
(cherry picked from commit 47accfebbd69e5f47d1b97a3e39cf181fab7e597)
Conflicts:
models/unit/unit.go
trivial context conflict because of
e07b0e75ff Add a direct link from repo header to unit settings
the test file used has a size below the default threshold and will
never be compressed because of that, regardless of its extension. Reduce
the threshold to 10 bytes otherwise the test is a false positive.
This adds a new test case to `TestCompareCodeExpand` to exercise the
case where we're viewing a PR's diff.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
When comparing files between the base repo and forked repo, the "blob
excerpt" link should point to the forked repo, because the commit
doesn't exist in base repo.
Co-authored-by: Giteabot <teabot@gitea.io>
(cherry picked from commit f48cc501c46a2d34eb701561f01d888d689d60d5)
Conflicts:
- templates/repo/diff/section_split.tmpl
- templates/repo/diff/section_unified.tmpl
Resolved the conflict by picking Gitea's change over ours, and
porting it.
- tests/integration/compare_test.go
Kept our test, but picked the "compare all of the relevant
links" part of the Gitea test.
PR will finalize the ability to receive a federated star from a remote instance.
This is part of: https://codeberg.org/forgejo/forgejo/pulls/1680
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3871
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
Co-committed-by: Michael Jerger <michael.jerger@meissa-gmbh.de>
This PR ports [gitea#30858](https://github.com/go-gitea/gitea/pull/30858) / [this commit](5c236bd4c0) to forgejo.
[week 2024-20 cherry pick](https://codeberg.org/forgejo/forgejo/pulls/3729)
## Tests
- [ ] Click "edit" to get into edit mode, change the title and then use Alt+Enter to save the title
## Screenshots
Before:
![grafik](/attachments/bb0b2562-7da0-4205-a647-3270d66f2ad7)
![grafik](/attachments/c3d05a21-659d-4616-b357-87de57232182)
After:
![grafik](/attachments/d9af6966-3282-439b-a845-76618a24b9a6)
![grafik](/attachments/5acd6684-69c4-41a4-8e27-7cb75fe3c7e4)
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3797
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Co-committed-by: Mai-Lapyst <mai-lapyst@noreply.codeberg.org>
Hello,
It is more idiomatic to put the date/time before the action in Mandarin (in this context). To achieve this, instead of having the time following the string that's passed to the translating function, I added it as a parameter so that one can reference it and reorder the sentence for better translatability.
Only Traditional Chinese has been changed at the time of opening this PR, as this is more of a proof of concept and I would like to have feedbacks on whether this is a good solution or is there a better alternative.
Thank you and have a nice day :)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3837
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Léana 江 <leana.jiang+git@icloud.com>
Co-committed-by: Léana 江 <leana.jiang+git@icloud.com>
Previously, if no branch was explicitly specified for a workflow, it
defaulted to the default branch of the repo. This worked fine for
workflows that were triggered on push, but it prevented showing badges
for workflows that only run on tags, or on schedule - since they do not
run on a specific branch.
Thus, relax the conditions, and if no branch is specified, just return
the latest run of the given workflow. If one is specified, *then*
restrict it to said branch.
Fixes #3487.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
Current package registry for RubyGems does not work with Bundler, because it implements neither the [compact index](https://guides.rubygems.org/rubygems-org-compact-index-api/) or the [dependency API](https://guides.rubygems.org/rubygems-org-api/). As a result, bundler complains about finding non-existing dependencies when installing anything with dependency: `revealed dependencies not in the API or the lockfile`.
This patch provides a minimal implementation for the compact index API to solve this issue. Specifically, we implemented a version that does not cache the results / do incremental updates; which is consistent with the current implementation.
Testing:
* Modified existing integration tests.
* Manually Verified bundler is able to parse the served versions / info file.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3811
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Haoyuan (Bill) Xing <me@hoppinglife.com>
Co-committed-by: Haoyuan (Bill) Xing <me@hoppinglife.com>
Fixes #30959
Adds an API test for protected tags.
Fix existing tag in combination with fixtures.
(cherry picked from commit b1d8f13bd0ecd9c576ebf2ecbd9c7dbeb3f5254f)
Resolve #30917
Make the APIs for adding labels and replacing labels support both label
IDs and label names so the
[`actions/labeler`](https://github.com/actions/labeler) action can work
in Gitea.
<img width="600px"
src="https://github.com/go-gitea/gitea/assets/15528715/7835c771-f637-4c57-9ce5-e4fbf56fa0d3"
/>
(cherry picked from commit b3beaed147466739de0c24fd80206b5af8b71617)
Conflicts:
- modules/structs/issue_label.go
Resolved by applying the Gitea change by hand.
- tests/integration/api_issue_label_test.go
Resolved by copying the new tests.
When expanding code diffs, the expansion should search for more context
in the commits repo, rather than in the repo in context, because the
commit may not be available in the base repo. For example, when
previewing a pull request, the commit is not in the target repo yet -
it's in the fork.
Fixes #3746.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
The previous implementation will start multiple POST requests from the
frontend when moving a column and another bug is moving the default
column will never be remembered in fact.
- [x] This PR will allow the default column to move to a non-first
position
- [x] And it also uses one request instead of multiple requests when
moving the columns
- [x] Use a star instead of a pin as the icon for setting the default
column action
- [x] Inserted new column will be append to the end
- [x] Fix #30701 the newly added issue will be append to the end of the
default column
- [x] Fix when deleting a column, all issues in it will be displayed
from UI but database records exist.
- [x] Add a limitation for columns in a project to 20. So the sorting
will not be overflow because it's int8.
---------
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
(cherry picked from commit a303c973e0264dab45a787c4afa200e183e0d953)
Conflicts:
routers/web/web.go
e91733468ef726fc9365aa4820cdd5f2ddfdaa23 Add missing database transaction for new issue (#29490) was not cherry-picked
services/issue/issue.go
fe6792dff3 Enable/disable owner and repo projects independently (#28805) was not cherry-picked
When rendering templates for packages, be more forgiving about missing
metadata. For some repository types - like maven - metadata is uploaded
separately. If that upload fails, or does not happen, there will be no
metadata.
In that case, Forgejo should handle it gracefully, and render as much of
the information as possible, without erroring out. Rendering without
metadata allows one to delete a partial package, while if we throw
errors, that becomes a whole lot harder.
This patch adjusts the generic metadata template, and also the maven
template. There may be more cases of the same problem lying around.
Fixes #3663.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
Fix #29514
There are too many usage of `NewRequestWithValues`, so there's no need
to check all of them.
Just one is enough I think.
(cherry picked from commit ecd1d96f494d2400f7659165ff9376354edda395)
Conflicts:
- tests/integration/api_admin_test.go
Conflict resolved by manually applying the change to
`full_name`.
Before explaining the fix itself, lets look at the `action` table, and
how it is populated. Data is only ever inserted into it via
`activities_model.NotifyWatchers`, which will:
- Insert a row for each activity with `UserID` set to the acting user's
ID - this is the original activity, and is always inserted if anything
is to be inserted at all.
- It will insert a copy of each activity with the `UserID` set to the
repo's owner, if the owner is an Organization, and isn't the acting
user.
- It will insert a copy of each activity for every watcher of the repo,
as long as the watcher in question has read permission to the repo
unit the activity is about.
This means that if a repository belongs to an organizations, for most
activities, it will have at least two rows in the table. For
repositories watched by people other than their owner, an additional row
for each watcher.
These are useful duplicates, because they record which activities are
relevant for a particular user. However, for cases where we wish to see
the activities that happen around a repository, without limiting the
results to a particular user, we're *not* interested in the duplicates
stored for the watchers and the org. We only need the originals.
And this is what this change does: it introduces an additional option to
`GetFeedsOptions`: `OnlyPerformedByActor`. When this option is set,
`activities.GetFeeds()` will only return the original activities, where
the user id and the acting user id are the same. As these are *always*
inserted, we're not missing out on any activities. We're just getting
rid of the duplicates. As this is an additional `AND` condition, it can
never introduce items that would not have been included in the result
set before, it can only reduce, not extend.
These duplicates were only affecting call sites where `RequestedRepo`
was set, but `RequestedUser` and `RequestedTeam` were not. Both of those
call sites were updated to set `OnlyPerformedByActor`. As a result,
repository RSS feeds, and the `/repos/{owner}/{repo}/activities/feeds`
API end points no longer return dupes, only the original activities.
Rather than hardcoding this behaviour into `GetFeeds()` itself, I chose
to implement it as an explicit option, for the sake of clarity.
Fixes Codeberg/Community#684, and addresses gitea#20986.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
More about codespell: https://github.com/codespell-project/codespell .
I personally introduced it to dozens if not hundreds of projects already and so far only positive feedback.
```
❯ grep lint-spell Makefile
@echo " - lint-spell lint spelling"
@echo " - lint-spell-fix lint spelling and fix issues"
lint: lint-frontend lint-backend lint-spell
lint-fix: lint-frontend-fix lint-backend-fix lint-spell-fix
.PHONY: lint-spell
lint-spell: lint-codespell
.PHONY: lint-spell-fix
lint-spell-fix: lint-codespell-fix
❯ git grep lint- -- .forgejo/
.forgejo/workflows/testing.yml: - run: make --always-make -j$(nproc) lint-backend checks-backend # ensure the "go-licenses" make target runs
.forgejo/workflows/testing.yml: - run: make lint-frontend
```
so how would you like me to invoke `lint-codespell` on CI? (without that would be IMHO very suboptimal and let typos sneak in)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3270
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Yaroslav Halchenko <debian@onerussian.com>
Co-committed-by: Yaroslav Halchenko <debian@onerussian.com>
- add a new button to the org view that is only shown to the org members
- add integration test to verify the expected navigatability
- add a new translation string to that button
- fix display style of "View <orgname>" button on the dashboard
- fix gap size between buttons on the org view by utilizing the common class top-right-buttons
We should be listing all repositories by default.
Fixes #28483.
(cherry picked from commit 9f0ef3621a3b63ccbe93f302a446b67dc54ad725)
Conflict:
- if ctx.IsSigned && ctx.Doer.IsAdmin || permission.UnitAccessMode(unit_model.TypeCode) >= perm.AccessModeRead {
+ if ctx.IsSigned && ctx.Doer.IsAdmin || permission.HasAccess() {
because of https://codeberg.org/forgejo/forgejo/pulls/2001
Fix #30807
reuse functions in services
(cherry picked from commit a50026e2f30897904704895362da0fb12c7e5b26)
Conflicts:
models/issues/issue_update.go
routers/api/v1/repo/issue.go
trivial context conflict because of 'allow setting the update date on issues and comments'
Before, we would just throw 500 if a user passes an attachment that is
not an allowed type. This commit catches this error and throws a 422
instead since this should be considered a validation error.
(cherry picked from commit 872caa17c0a30d95f85ab75c068d606e07bd10b3)
Conflicts:
tests/integration/api_comment_attachment_test.go
tests/integration/api_issue_attachment_test.go
trivial context conflict because of 'allow setting the update date on issues and comments'
Co-authored-by: silverwind <me@silverwind.io>
(cherry picked from commit be112c1fc30f87a248b30f48e891d1c8c18e8280)
Conflicts:
routers/web/web.go
trivial conflict because of https://codeberg.org/forgejo/forgejo/pulls/1533
This is a follow-up for 5e1bd8af5f, which
was my first commit to Gitea. It is also a follow up for the
Gitea PR #29300 (https://github.com/go-gitea/gitea/pull/23900) created
by myself, which turned stale.
This change partially restores the behavior of Gitea PR #23747
(https://github.com/go-gitea/gitea/pull/23747) by wxiaoguang, but
maintains the lock.
The original idea was to differentiate things from GitHub and GitLab a
little bit, and show the email address on the profile. The profile is
not only a place where the user chooses to show how they present
themselves on an instance, it is also a place where they can assess
their relationship *with* the instance, as it provides features such
as the Public Activity feed that can be only shown to the user, in
private.
It's, in some way, a dashboard. The email was shown there to remind
the user that this is the primary email that will be used by a supposed
administrator to contact them. There were other motivations behind that
change as well, but, long story short, the idea did not work very well,
as some people (e.g. people livestreaming on the Internet, or 'normal'
users sharing their screens) do not want to put their email address
out there when showing their screen to other people.
Other alternatives, such as blurring the text or only showing the real
email address, were explored, but were rejected because of
browser compatibility and simplicity reasons. The padlock icon that
is shown when showing the email address to other people has been kept.
One viable alternative could be displaying the placeholder email
instead, but that requires some more thought.
Fixes https://codeberg.org/forgejo/forgejo/issues/1950.
Backport #30770
If an user is deactivated, it should not be in the list of users who are
suggested to be assigned or review-requested.
old assignees or reviewers are not affected.
---
*Sponsored by Kithara Software GmbH*
(cherry picked from commit f2d8ccc5bb2df25557cc0d4d23f2cdd029358274)
Conflicts:
models/repo/user_repo_test.go
because there is one less fixture user compared to Gitea
Resolve all cases for `unused parameter` and `unnecessary type
arguments`
Related: #30729
---------
Co-authored-by: Giteabot <teabot@gitea.io>
(cherry picked from commit e80466f7349164ce4cf3c07bdac30d736d20f035)
Conflicts:
modules/markup/markdown/transform_codespan.go
modules/setting/incoming_email.go
routers/api/v1/admin/user_badge.go
routers/private/hook_pre_receive.go
tests/integration/repo_search_test.go
resolved by discarding the change, this is linting only and
for the sake of avoiding future conflicts
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: 804ede182b.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:
56763ff918/doc/manual/src/protocols/tarball-fetcher.md
In `repo.RemoveDependency`, use `PostFormValue` instead of
`PostForm.Get`. The latter requires `ParseForm()` to be called prior,
and in this case, has no benefit over `PostFormValue` anyway (which
calls `ParseForm()` if necessary).
While this currently does not cause any issue as far as I can tell, it
feels like a bug lying in wait for the perfect opportunity. Lets squash
it before it can do harm.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
To be able to easily test cases where the repository does not have any
code, where the git repo itself is completely uninitialized, lets
support a case where the `AutoInit` property is false.
For the sake of backwards compatibility, if the option is not set either
way, it will default to `true`.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
When all repository units are deactivated except for the code unit, the activity tab will not be shown.
Since the activities tab also shows contributing stats, it would be good to show the activities tab also when only code is active.
This commit changes the behavior when the activities tab is shown.
Previous it would only be shown when Issues, Pull-Requests or Releases are activated. Now it would additionally be shown when the code unit is activated.
Refs: #3429
| Before (Code + Issues - Owner) | Before (Code - Viewer) | After (Code + Issues - Owner) | After (Code - Viewer) |
| -- | -- | -- | -- |
| ![image](/attachments/2af997bc-1f38-48c6-bdf3-cfbd7087b220) | ![image](/attachments/ef1797f0-5c9a-4a1a-ba82-749f3ab4f403) | ![image](/attachments/fd28a96c-04ca-407e-a70d-d28b393f223d) | ![image](/attachments/2cd0d559-a6de-4ca0-a736-29c5fea81b5a) |
| | `/activity` returns 404 for everyone | ![image](/attachments/e0e97d8f-48cb-4c16-a505-1fafa46c4b8e) | - |
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3455
Reviewed-by: Otto <otto@codeberg.org>
Co-authored-by: Beowulf <beowulf@beocode.eu>
Co-committed-by: Beowulf <beowulf@beocode.eu>
Suggested by logs in #30729
- Remove `math/rand.Seed`
`rand.Seed is deprecated: As of Go 1.20 there is no reason to call Seed
with a random value.`
- Replace `math/rand.Read`
`rand.Read is deprecated: For almost all use cases, [crypto/rand.Read]
is more appropriate.`
- Replace `math/rand` with `math/rand/v2`, which is available since Go
1.22
(cherry picked from commit 7b8e418da1e082786b844562a05864ec1177ce97)
- Add endpoint to list repository action secrets in API routes
- Implement `ListActionsSecrets` function to retrieve action secrets
from the database
- Update Swagger documentation to include the new
`/repos/{owner}/{repo}/actions/secrets` endpoint
- Add `actions` package import and define new routes for actions,
secrets, variables, and runners in `api.go`.
- Refactor action-related API functions into `Action` struct methods in
`org/action.go` and `repo/action.go`.
- Remove `actionAPI` struct and related functions, replacing them with
`NewAction()` calls.
- Rename `variables.go` to `action.go` in `org` directory.
- Delete `runners.go` and `secrets.go` in both `org` and `repo`
directories, consolidating their content into `action.go`.
- Update copyright year and add new imports in `org/action.go`.
- Implement `API` interface in `services/actions/interface.go` for
action-related methods.
- Remove individual action-related functions and replace them with
methods on the `Action` struct in `repo/action.go`.
---------
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
Signed-off-by: appleboy <appleboy.tw@gmail.com>
(cherry picked from commit 852547d0dc70299589c7bf8d00ea462ed709b8e5)
Conflicts:
routers/api/v1/api.go
trivial conflict because of Fix #2512 /api/forgejo/v1/version auth check (#2582)
Noteable additions:
- `redefines-builtin-id` forbid variable names that shadow go builtins
- `empty-lines` remove unnecessary empty lines that `gofumpt` does not
remove for some reason
- `superfluous-else` eliminate more superfluous `else` branches
Rules are also sorted alphabetically and I cleaned up various parts of
`.golangci.yml`.
(cherry picked from commit 74f0c84fa4245a20ce6fb87dac1faf2aeeded2a2)
Conflicts:
.golangci.yml
apply the linter recommendations to Forgejo code as well
When the ldap synchronizer is look for an email address and fails at
finding one, it falls back at creating one using "localhost.local"
domain.
This new field makes this domain name configurable.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3414
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Baptiste Daroussin <bapt@FreeBSD.org>
Co-committed-by: Baptiste Daroussin <bapt@FreeBSD.org>
This will move the settings button back to the right, like known from
older versions.
For this, the overflow-menu was changed when a setting button is
available. If no settings button is available, the behavior will not
change.
Fixes #3301
When converting a `repo_model.Repository` to `api.Repository`, copy the
`ObjectFormatName` field too.
Fixes #3458.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
When in the repository settings, visiting
- `LFS` to `/{owner}/{repo}/settings/lfs`
- `Find pointer files` to `/{owner}/{repo}/settings/lfs/pointers`
- `Find commits` to `/{owner}/{repo}/settings/lfs/find?oid=...`
failed with an error 500 because of an incorrect evaluation of the
template.
Regression introduced by
cbf923e87b
A test is added to visit the page and guard against future
regressions.
Refs: https://codeberg.org/forgejo/forgejo/issues/3438
A remote user (UserTypeRemoteUser) is a placeholder that can be
promoted to a regular user (UserTypeIndividual). It represents users
that exist somewhere else. Although the UserTypeRemoteUser already
exists in Forgejo, it is neither used or documented.
A new login type / source (Remote) is introduced and set to be the login type
of remote users.
Type UserTypeRemoteUser
LogingType Remote
The association between a remote user and its counterpart in another
environment (for instance another forge) is via the OAuth2 login
source:
LoginName set to the unique identifier relative to the login source
LoginSource set to the identifier of the remote source
For instance when migrating from GitLab.com, a user can be created as
if it was authenticated using GitLab.com as an OAuth2 authentication
source.
When a user authenticates to Forejo from the same authentication
source and the identifier match, the remote user is promoted to a
regular user. For instance if 43 is the ID of the GitLab.com OAuth2
login source, 88 is the ID of the Remote loging source, and 48323
is the identifier of the foo user:
Type UserTypeRemoteUser
LogingType Remote
LoginName 48323
LoginSource 88
Email (empty)
Name foo
Will be promoted to the following when the user foo authenticates to
the Forgejo instance using GitLab.com as an OAuth2 provider. All users
with a LoginType of Remote and a LoginName of 48323 are examined. If
the LoginSource has a provider name that matches the provider name of
GitLab.com (usually just "gitlab"), it is a match and can be promoted.
The email is obtained via the OAuth2 provider and the user set to:
Type UserTypeIndividual
LogingType OAuth2
LoginName 48323
LoginSource 43
Email foo@example.com
Name foo
Note: the Remote login source is an indirection to the actual login
source, i.e. the provider string my be set to a login source that does
not exist yet.
Add a new member to `DeclarativeRepoOptions`: `WikiBranch`. If
specified, create a Wiki with the given branch, and a single "Home"
page.
This will be used by an upcoming test.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
Lets introduce a new helper function,
`CreateDeclarativeRepoWithOptions`! This is almost the same as the
existing `CreateDeclarativeRepo` helper, but instead of taking a list of
random parameters the author thought of at the time of its introduction,
it takes a `DeclarativeRepoOptions` struct, with optional members.
This makes it easier to extend the function, as new members can be added
without breaking or having to update existing callsites, as long as the
newly added members default to compatible values.
`CreateDeclarativeRepo` is then reimplemented on top of the new
function. Callsites aren't updated yet, we can do that organically,
whenever touching code that uses the older function.
No new functionality is introduced just yet, this is merely a refactor.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
This adds a new options to releases to hide the links to the automatically generated archives. This is useful, when the automatically generated Archives are broken e.g. because of Submodules.
![grafik](/attachments/5686edf6-f318-4175-8459-89c33973b181)
![grafik](/attachments/74a8bf92-2abb-47a0-876d-d41024770d0b)
Note:
This juts hides the Archives from the UI. Users can still download 5the Archive if they know t correct URL.
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3139
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: JakobDev <jakobdev@gmx.de>
Co-committed-by: JakobDev <jakobdev@gmx.de>
When searching for users, page the results by default, and respect the
default paging limits.
This makes queries like '/api/v1/users/search?limit=1' actually work.
Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>