forgejo-contrib-forgejo-cli-issues-218.md
Watch20
Star402
Fork
You've already forked forgejo-cli
CodeIssues 44Pull requests 8Releases 11Packages 2WikiActivity
fj pr create et al cannot find repo #218Closed
opened 2025-09-20 13:37:38 +02:00 by untitaker · 0 comments
untitaker commented 2025-09-20 13:37:38 +02:00
Copy link
I'm struggling to make fj pr create find the repository. Here is my local git remotes:
$ git remote --verbose
origin [email protected]:untitaker/mastodon-list-bot (fetch)
origin [email protected]:untitaker/mastodon-list-bot (push)
debugging output:
$ cb pr create
[src/repo.rs:96:17] &name = Some(
"origin",
)
[src/repo.rs:166:9] &remote_repo_name = Some(
RepoName {
owner: "untitaker",
name: "mastodon-list-bot",
},
)
[src/repo.rs:167:9] &repo_name = None
[src/repo.rs:168:9] &repo_url = None
[src/repo.rs:169:9] &remote = None
[src/repo.rs:170:9] &host_url = Some(
Url {
scheme: "https",
cannot_be_a_base: false,
username: "",
password: None,
host: Some(
Domain(
"codeberg.org",
),
),
port: None,
path: "/",
query: None,
fragment: None,
},
)
[src/repo.rs:171:9] &remote_url = Some(
Url {
scheme: "ssh",
cannot_be_a_base: false,
username: "git",
password: None,
host: Some(
Domain(
"codeberg.org",
),
),
port: None,
path: "/",
query: None,
fragment: None,
},
)
[src/repo.rs:205:9] &info = RepoInfo {
url: Url {
scheme: "https",
cannot_be_a_base: false,
username: "",
password: None,
host: Some(
Domain(
"codeberg.org",
),
),
port: None,
path: "/",
query: None,
fragment: None,
},
name: Some(
RepoName {
owner: "untitaker",
name: "mastodon-list-bot",
},
),
remote_name: Some(
"origin",
),
}
Error: relative URL without a base
Location:
src/prs.rs:963:30
applied git patch to try and debug this:
#click to expand
diff --git a/src/repo.rs b/src/repo.rs
index 8d292ef..621c88a 100644
--- a/src/repo.rs
+++ b/src/repo.rs
@@ -8,6 +8,7 @@ use url::Url;
use crate::SpecialRender;
+#[derive(Debug)]
pub struct RepoInfo {
url: Url,
name: Option<RepoName>,
@@ -92,6 +93,8 @@ impl RepoInfo {
}
}
+ dbg!(&name);
+
// if the current branch is tracking a remote branch, use that remote
if name.is_none() {
let head = local_repo.head()?;
@@ -160,6 +163,13 @@ impl RepoInfo {
out
};
+ dbg!(&remote_repo_name);
+ dbg!(&repo_name);
+ dbg!(&repo_url);
+ dbg!(&remote);
+ dbg!(&host_url);
+ dbg!(&remote_url);
+
let (url, name) = if repo_url.is_some() {
(repo_url, repo_name)
} else if repo_name.is_some() {
@@ -192,6 +202,7 @@ impl RepoInfo {
(None, None) => eyre::bail!("no repo info specified"),
};
+ dbg!(&info);
Ok(info)
}
version is 5db78c8b64971546e3f91f4b5cd3c650fdc49a6b (main branch)
I'm struggling to make fj pr create find the repository. Here is my local git remotes: $ git remote --verbose origin [email protected]:untitaker/mastodon-list-bot (fetch) origin [email protected]:untitaker/mastodon-list-bot (push) debugging output: $ cb pr create [src/repo.rs:96:17] &name = Some( "origin", ) [src/repo.rs:166:9] &remote_repo_name = Some( RepoName { owner: "untitaker", name: "mastodon-list-bot", }, ) [src/repo.rs:167:9] &repo_name = None [src/repo.rs:168:9] &repo_url = None [src/repo.rs:169:9] &remote = None [src/repo.rs:170:9] &host_url = Some( Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some( Domain( "codeberg.org", ), ), port: None, path: "/", query: None, fragment: None, }, ) [src/repo.rs:171:9] &remote_url = Some( Url { scheme: "ssh", cannot_be_a_base: false, username: "git", password: None, host: Some( Domain( "codeberg.org", ), ), port: None, path: "/", query: None, fragment: None, }, ) [src/repo.rs:205:9] &info = RepoInfo { url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some( Domain( "codeberg.org", ), ), port: None, path: "/", query: None, fragment: None, }, name: Some( RepoName { owner: "untitaker", name: "mastodon-list-bot", }, ), remote_name: Some( "origin", ), } Error: relative URL without a base Location: src/prs.rs:963:30 applied git patch to try and debug this: <details><summary>click to expand</summary> diff diff --git a/src/repo.rs b/src/repo.rs index 8d292ef..621c88a 100644 --- a/src/repo.rs +++ b/src/repo.rs @@ -8,6 +8,7 @@ use url::Url; use crate::SpecialRender; +#[derive(Debug)] pub struct RepoInfo { url: Url, name: Option\<RepoName\>, @@ -92,6 +93,8 @@ impl RepoInfo { } } + dbg!(&name); + // if the current branch is tracking a remote branch, use that remote if name.is_none() { let head = local_repo.head()?; @@ -160,6 +163,13 @@ impl RepoInfo { out }; + dbg!(&remote_repo_name); + dbg!(&repo_name); + dbg!(&repo_url); + dbg!(&remote); + dbg!(&host_url); + dbg!(&remote_url); + let (url, name) = if repo_url.is_some() { (repo_url, repo_name) } else if repo_name.is_some() { @@ -192,6 +202,7 @@ impl RepoInfo { (None, None) =\> eyre::bail!("no repo info specified"), }; + dbg!(&info); Ok(info) } </details> version is 5db78c8b64971546e3f91f4b5cd3c650fdc49a6b (main branch)
Cyborus referenced this issue from a pull request that will close it, 2025-09-20 15:18:42 +02:00
use ssh_url_parse, not .parse::<Url> #219
Cyborus closed this issue 2025-09-21 20:44:48 +02:00
Cyborus added this to the v0.4.0 milestone 2025-12-01 17:02:21 +01:00
Sign in to join this conversation.
No Branch/Tag specified
main
renovate/lock-file-maintenance
renovate/serde-saphyr-0.x
docs/contributing
no-port-in-refspec
login/v16.next.forgejo.org
crates-io-publish
0.5.x
compile-time-fluent
0.4.x
localization-alias-demo
api_url_field
v0.5.0
v0.4.1
v0.4.0
v0.3.0
v0.2.0
v0.1.1
v0.1.0
v0.0.4
v0.0.3
v0.0.2
v0.0.1
Labels
Clear labels[ Kind/Breaking Breaking change that won't be backward compatible
](#)[ Kind/Bug Something is not working
](#)[ Kind/Design Discussion about UI/UX design
](#)[ Kind/Documentation Documentation changes
](#)[ Kind/Enhancement Improve existing functionality
](#)[ Kind/Feature New functionality
](#)[ Kind/Security This is security issue
](#)[ Kind/Testing Issue or pull request related to testing
](#)[ Kind/Upstream This is an issue with upstream software (Forgejo) that is probably not our fault
](#)
[ Priority
Critical The priority is critical
](#)[ Priority
High The priority is high
](#)[ Priority
Low The priority is low
](#)[ Priority
Medium The priority is medium
](#)
[ Reviewed
Confirmed Issue has been confirmed
](#)[ Reviewed
Duplicate This issue or pull request already exists
](#)[ Reviewed
Invalid Invalid issue
](#)[ Reviewed
Won't Fix This issue won't be fixed
](#)
[ Status
Abandoned Somebody has started to work on this but abandoned work
](#)[ Status
Blocked Something is blocking this issue or pull request
](#)[ Status
Need More Info Feedback is required to reproduce issue or to continue work
](#)
[ Suspicious
](#)
No labels Kind/Breaking Kind/Bug Kind/Design Kind/Documentation Kind/Enhancement Kind/Feature Kind/Security Kind/Testing Kind/Upstream [ Priority
Critical ](/forgejo-contrib/forgejo-cli/issues?labels=173012) [ Priority
High ](/forgejo-contrib/forgejo-cli/issues?labels=173013) [ Priority
Low ](/forgejo-contrib/forgejo-cli/issues?labels=173015) [ Priority
Medium ](/forgejo-contrib/forgejo-cli/issues?labels=173014) [ Reviewed
Confirmed ](/forgejo-contrib/forgejo-cli/issues?labels=173007) [ Reviewed
Duplicate ](/forgejo-contrib/forgejo-cli/issues?labels=173005) [ Reviewed
Invalid ](/forgejo-contrib/forgejo-cli/issues?labels=173006) [ Reviewed
Won't Fix ](/forgejo-contrib/forgejo-cli/issues?labels=173008) [ Status
Abandoned ](/forgejo-contrib/forgejo-cli/issues?labels=173011) [ Status
Blocked ](/forgejo-contrib/forgejo-cli/issues?labels=173010) [ Status
Need More Info ](/forgejo-contrib/forgejo-cli/issues?labels=173009) Suspicious
Milestone
Clear milestone
No items
No milestone v0.4.0
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
Notifications Subscribe
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
forgejo-contrib/forgejo-cli#218
WritePreview
Loading…
Add table
| Rows | | | Columns | |
CancelOK
Add a link
Url Description Hint: With a URL in your clipboard, you can paste directly into the editor to create a link.
CancelOK
CancelSave
Reference in a new issue
Repository
forgejo-contrib/forgejo-cli
Title
Body
Create issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
No Yes