Debugging settings/repos
Dependencies
Change contents
- replacement in ui/vite.config.js at line 18
target: 'https://127.0.0.1:8001',target: 'http://127.0.0.1:8001', - replacement in ui/vite.config.js at line 22
target: 'https://127.0.0.1:8001',target: 'http://127.0.0.1:8001', - replacement in ui/vite.config.js at line 26
target: 'https://127.0.0.1:8001',target: 'http://127.0.0.1:8001', - edit in ui/vite.config.js at line 28
},'/identicon': {target: 'http://127.0.0.1:8001',secure: false - replacement in ui/src/routes/settings/+page.svelte at line 3
import { enhance } from '$app/forms';import Lock from '../Lock.svelte';import Trash from '../Trash.svelte'; - edit in ui/src/routes/settings/+page.svelte at line 9
async function delRepo(ev: { cancel: () => void }, name: string) {if (!window.confirm(`Kill ${name}?`)) {ev.cancel();}} - replacement in ui/src/routes/settings/+page.svelte at line 12
<div class="py-5"><div class="py-5 flex"> - replacement in ui/src/routes/settings/+page.svelte at line 14
<ul class=""><ul class="me-auto flex flex-col gap-3"> - replacement in ui/src/routes/settings/+page.svelte at line 16
<li class=""><formmethod="POST"action="/api/settings/repo/delete"use:enhance={(ev) => delRepo(ev, repo)}><input type="hidden" name="token" value={data.token} /><a id="repo-{repo}" href="/{data.login}/{repo}">{repo}</a>{#if data.repos[repo].private}<i class="bi bi-lock-fill" style="color:#aaa"></i>{/if}<button class="mx-3" name="repo" value={repo} aria-label="Delete"><span class="icon-[tdesign--delete-1] w-4 h-4 text-error"></span></button></form><li class="flex w-full justify-between gap-10"><a id="repo-{repo}" href="/{data.login}/{repo}">{repo}</a>{#if data.repos[repo].private}<Lock />{/if}<buttonclass="btn btn-sm mx-3 text-error"name="repo"value={repo}aria-label="Delete"onclick={() =>(document.getElementById(`del_${repo}`) as HTMLDialogElement).showModal()}><Trash class_="size-5" /></button><dialog id="del_{repo}" class="modal"><div class="modal-box"><h3 class="text-lg font-bold">Delete a repository</h3><p class="py-4">If you are serious about deleting <span class="font-mono text-primary">{repo}</span>, please type its name here:</p><form method="POST" action="/api/settings/repo/delete"><input type="hidden" name="token" value={data.token} /><input type="text" class="input w-full my-3" name="name" /><div class="modal-action"><button class="btn">Close</button><button type="submit" class="btn btn-warning">Ok</button></div></form></div></dialog> - edit in ui/src/routes/[user]/[repo]/tree/[[pos]]/+page.svelte at line 6
import Folder from '../../../../Folder.svelte';import File from '../../../../File.svelte'; - replacement in ui/src/routes/[user]/[repo]/tree/[[pos]]/+page.svelte at line 38[2.56889]→[2.56889:57153](∅→∅),[2.57153]→[3.907:998](∅→∅),[3.998]→[2.57153:57184](∅→∅),[2.57153]→[2.57153:57184](∅→∅),[2.57334]→[2.57334:57353](∅→∅)
<li class="list-row"><div><div class="col text-truncate col-6"><aclass={ch.is_dir ? 'dir' : 'file'}href="/{data.owner}/{data.repo}{channel.length ? ':' + channel : ''}/tree/{ch.pos}"><span class="me-3 icon-[tdesign--{ch.is_dir ? 'folder' : 'file'}]"></span>{ch.name}</a></div><li class="list-row p-1"><div class="text-truncate"><aclass={ch.is_dir ? 'dir' : 'file'}href="/{data.owner}/{data.repo}{channel.length ? ':' + channel : ''}/tree/{ch.pos}">{#if ch.is_dir}<Folder />{:else}<File />{/if}{ch.name}</a> - file addition: Trash.svelte[2.2310]
<script lang="ts">const { class_ = 'size-6' } = $props();</script><svgxmlns="http://www.w3.org/2000/svg"fill="none"viewBox="0 0 24 24"stroke-width="1.5"stroke="currentColor"class={class_}><pathstroke-linecap="round"stroke-linejoin="round"d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" /></svg> - file addition: Lock.svelte[2.2310]
<svgxmlns="http://www.w3.org/2000/svg"fill="none"viewBox="0 0 24 24"stroke-width="1.5"stroke="currentColor"class="size-6"><pathstroke-linecap="round"stroke-linejoin="round"d="M16.5 10.5V6.75a4.5 4.5 0 1 0-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 0 0 2.25-2.25v-6.75a2.25 2.25 0 0 0-2.25-2.25H6.75a2.25 2.25 0 0 0-2.25 2.25v6.75a2.25 2.25 0 0 0 2.25 2.25Z" /></svg> - file addition: Folder.svelte[2.2310]
<svgxmlns="http://www.w3.org/2000/svg"fill="none"viewBox="0 0 24 24"stroke-width="1.5"stroke="currentColor"class="size-4 inline me-1"><pathstroke-linecap="round"stroke-linejoin="round"d="M2.25 12.75V12A2.25 2.25 0 0 1 4.5 9.75h15A2.25 2.25 0 0 1 21.75 12v.75m-8.69-6.44-2.12-2.12a1.5 1.5 0 0 0-1.061-.44H4.5A2.25 2.25 0 0 0 2.25 6v12a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18V9a2.25 2.25 0 0 0-2.25-2.25h-5.379a1.5 1.5 0 0 1-1.06-.44Z" /></svg> - file addition: File.svelte[2.2310]
<svgxmlns="http://www.w3.org/2000/svg"fill="none"viewBox="0 0 24 24"stroke-width="1.5"stroke="currentColor"class="size-4 inline me-1"><pathstroke-linecap="round"stroke-linejoin="round"d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z" /></svg> - file addition: config.toml[2.293060]
repositories = "/home/pe/pijul/nest2/api/repositories" - edit in default.nix at line 36
LD_LIBRARY_PATH="${libsodium}/lib:${openssl.out}/lib"; - replacement in api/src/settings.rs at line 3
use crate::{db, get_user_id_strict, get_user_login_strict, Config, Repo, StatusCode};use crate::{Config, Repo, StatusCode, db, get_user_id_strict, get_user_login_strict}; - replacement in api/src/settings.rs at line 5
debug_handler,Json, Router, debug_handler, - edit in api/src/settings.rs at line 9
Json, Router, - edit in api/src/settings.rs at line 280
debug!("no user with id {:?}", owner); - replacement in api/src/settings.rs at line 345
.await.optional()?.await.optional()? - replacement in api/src/settings.rs at line 384
diesel::delete(pp::profile_pics.find(uid)).execute(&mut db).await?;diesel::delete(pk::publickeys.filter(pk::user_id.eq(uid))).execute(&mut db).await?;diesel::delete(sk::signingkeys.filter(sk::user_id.eq(uid))).execute(&mut db).await?;diesel::delete(pp::profile_pics.find(uid)).execute(&mut db).await?;diesel::delete(pk::publickeys.filter(pk::user_id.eq(uid))).execute(&mut db).await?;diesel::delete(sk::signingkeys.filter(sk::user_id.eq(uid))).execute(&mut db).await?; - replacement in api/src/repository/changestore.rs at line 147
debug!("decompressed {:?} bytes from compressed {:?}", a, b);debug!("decompressed {:?} bytes from compressed {:?} ({:?} < {:?}",a, b, ia, ib); - replacement in api/src/repository/changestore.rs at line 192
debug!("decompressed {:?} bytes from compressed {:?}", a, b);debug!("decompressed {:?} bytes from compressed {:?} {:?} < {:?}",a, b, ia, ib); - replacement in api/src/repository/changestore.rs at line 373
let n = db.execute("UPDATE users SET storage_used = GREATEST(0, storage_used - $2)let n = db.execute("UPDATE users SET storage_used = GREATEST(0, storage_used - $2) - replacement in api/src/repository/changestore.rs at line 377
&[&id, &(meta.len() as i64)]).await?;*/&[&id, &(meta.len() as i64)]).await?;*/ - replacement in api/src/replication.rs at line 67
txn.apply_change_rec(&repo_.changes, &mut *channel_.write(), &hash);txn.apply_change(&repo_.changes, &mut *channel_.write(), &hash); - replacement in api/src/proxy.rs at line 206
debug!("node_proxy_ localhost:5173");debug!("node_proxy_ 127.0.0.1:5173"); - file addition: config.toml[2.310031]
etcd_server = "localhost:2379"repository_cache_size = 128change_cache_size = 128max_body_length = 1048576 # 1Mhard_max_body_length = 10485760lock_file = "./lock_file"repositories_path = "./repositories"profile_pictures_path = "profile_pictures"host = "localhost"hostname = "localhost"version_time = "Mon, 19 Nov 2018 14:37:00 GMT"geoip_database = "/nix/store/53ckc0xvyn24lwfwkxznm2l0dj0nq313-geolite2-city/share/GeoLite2-City.mmdb"failed_auth_timeout_millis = 10pbkdf2_iterations = 1origin = "http://localhost:5173"partial_change_size = 1048576max_password_attempts = 20pro_prix_euros = 10basic_size_limit = 100000000000 # 100Gpro_size_limit = 100000000000 # 100G[email]source = "no-reply@nest.pijul.com"region = "eu-west-1"[time]max_relative_days = 2yesterday_threshold_hours = 7[http]http_port = 8000https_port = 8001ws_port = 8080ws_timeout_secs = 3600time_file = "./time"log_file = "logs"timeout_secs = 20[ssh]port = 2222timeout_secs = 120[ci]key_path = "id_ed25519"port = 2223timeout_secs = 120public_keys = ["AAAAC3NzaC1lZDI1NTE5AAAAILLpIgsG9nAoJwe64F8WNLTZdSz8OgOjL6P8a24ITvRU"]log_path = "/home/pe/pijul/nest/nest/ci_log"tarball_path = "/home/pe/pijul/nest/nest/ci_tarball"[prometheus]buckets_start = 0.0buckets_width = 10n_buckets = 50[replication]port = 2224initial = [ "127.0.0.1" ][editor]port = 4001[webauthn]rp_origin = "https://localhost:8001"rp_id = "localhost"