commits
this was incorrectly adding the current pull into the formatpatch twice.
Signed-off-by: oppiliappan <me@oppi.li>
generic websocket consumer for one or more event streams from knots
Signed-off-by: oppiliappan <me@oppi.li>
useful for bigger stacks to reduce the amount of vertical space
occupied.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
this is a helper derivation to speed up go builds, it builds sqlite
shared objects and header files which are then passed into
buildGoModule.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
And a high-level cache package for future use.
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
old knots will not attach a commit to a branch. sorting by commit time
fails in these responses.
Signed-off-by: oppiliappan <me@oppi.li>
- removes characters that bsky.app inserts for handles
- better errors for handles that do not conform to atproto format
Signed-off-by: oppiliappan <me@oppi.li>
fix highlighting for zon files.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
if the client is nil, posthog fails to enqueue a request, it crashes the
route and prevents redirect (as seen while creating pull comments and
pull requests)
Signed-off-by: oppiliappan <me@oppi.li>
the pull listing should be less noisy now.
Signed-off-by: oppiliappan <me@oppi.li>
break out summarizedHeader and summarizedPullState into resuable
fragments.
Signed-off-by: oppiliappan <me@oppi.li>
allows subscribers to stream git operations from knotserver. includes a
very primitive backfill implementation such that we can upgrade to xrpc
streams down the line.
Signed-off-by: oppiliappan <me@oppi.li>
Notifier is a semaphore that can be used to indicate a change in a
resource.
Signed-off-by: oppiliappan <me@oppi.li>
records git operations in an "oplog" table. this table can be routinely
cleaned up as necessary.
Signed-off-by: oppiliappan <me@oppi.li>
these should be accessible by hooks.
Signed-off-by: oppiliappan <me@oppi.li>
returns an identity instead, this can be passed along as env vars to
hooks.
Signed-off-by: oppiliappan <me@oppi.li>
$PWD gives us the absolute path to the git repository without using the
bash builtin.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
These cross-build statically to x86_64-linux (gnu64). Also bumps the
flake hash.
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
These should now let us reconstruct the commit object (or at least the
git cat-file equivalent) appview-side.
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
this also populates the script with the correct executable path for
the `knot` command.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
performing rev-list and filetree in sequential occupy a large amount of
the client budget. we can parallelize all these expensive operations.
Signed-off-by: oppiliappan <me@oppi.li>
uses `git log --name-only` to speed things along. the performance
tradeoff here is that active repositories tend to load last-commit times
really quickly, but directories with one file that was modified 20k
commits ago will result in the entire log being walked through.
git-log command is parsed as it streams to avoid having to wait for the
entire command to complete, and as soon as the entire directory's
listing is hydrated, we cancel the command. most of the time, this
results in hydration of subdirectories also (this gets cached),
resulting in good experience when browsing a repo (typically moving down
directories gets faster with each click, as fewer files need hydration).
Signed-off-by: oppiliappan <me@oppi.li>
RepoIndex and RepoLog should no longer take longer on bigger
repositories. all endpoints are still backwards compatible.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: oppiliappan <me@oppi.li>
replace with `knot guard` instead.
Signed-off-by: oppiliappan <me@oppi.li>
this was incorrectly adding the current pull into the formatpatch twice.
Signed-off-by: oppiliappan <me@oppi.li>
Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
uses `git log --name-only` to speed things along. the performance
tradeoff here is that active repositories tend to load last-commit times
really quickly, but directories with one file that was modified 20k
commits ago will result in the entire log being walked through.
git-log command is parsed as it streams to avoid having to wait for the
entire command to complete, and as soon as the entire directory's
listing is hydrated, we cancel the command. most of the time, this
results in hydration of subdirectories also (this gets cached),
resulting in good experience when browsing a repo (typically moving down
directories gets faster with each click, as fewer files need hydration).
Signed-off-by: oppiliappan <me@oppi.li>