forgejo-contrib-forgejo-cli-pulls-219.md
Watch20
Star402
Fork
You've already forked forgejo-cli
CodeIssues 44Pull requests 8Releases 11Packages 2WikiActivity
ssh_url_parse, not .parse::<Url>#219Merged
Cyborusmerged 1 commit from cyborus/agit-fix-wrong-parse into main 2025-09-21 20:44:47 +02:00AGit
Conversation 7Commits 1Files changed 1 +6 -5
Cyborus commented 2025-09-20 15:18:41 +02:00
Member
Copy link
The URL was being parsed using str::parse, which fails on SSH-style URLs. Now it uses the proper ssh_url_parse function
Fixes #218
The URL was being parsed using str::parse, which fails on SSH-style URLs. Now it uses the proper ssh_url_parse function Fixes #218
Cyborus added 1 commit 2025-09-20 15:18:42 +02:00
fix: use ssh_url_parse, not .parse::<Url>
All checks were successful
ci/woodpecker/pr/check Pipeline was successful
Cyborus commented 2025-09-20 15:19:34 +02:00
Author
Member
Copy link
@untitaker Does this fix your issue?
@untitaker Does this fix your issue?
untitaker commented 2025-09-20 15:27:33 +02:00
First-time contributor
Copy link
it appears to work with fj pr create test but not fj --host codeberg.org pr create test
I have --host codeberg.org set all of the time using an alias.
it appears to work with fj pr create test but not fj --host codeberg.org pr create test I have --host codeberg.org set all of the time using an alias.
Cyborus commented 2025-09-20 15:33:30 +02:00
Author
Member
Copy link
And it's the same error still?
And it's the same error still?
untitaker commented 2025-09-20 15:37:27 +02:00
First-time contributor
Copy link
yes:
$ cb pr create
[src/repo.rs:196: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: None,
remote_name: Some(
"origin",
),
}
Error: can't figure what repo to access, try specifying with `--repo`
Location:
src/prs.rs:415:17
(i only patched one debug stmt in again)
yes: $ cb pr create [src/repo.rs:196: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: None, remote_name: Some( "origin", ), } Error: can't figure what repo to access, try specifying with `--repo` Location: src/prs.rs:415:17 (i only patched one debug stmt in again)
Cyborus commented 2025-09-20 15:44:16 +02:00
Author
Member
Copy link
That's... very odd. That isn't the same error, for some reason it's not even getting to the change I made. Did you change anything about your setup?
That's... very odd. That isn't the same error, for some reason it's not even getting to the change I made. Did you change anything about your setup?
untitaker commented 2025-09-20 15:48:23 +02:00
First-time contributor
Copy link
ugh i'm sorry, the original bug report was faulty. what i posted just now is the original error. the bug report contained this additional patch:
#click to expand
diff --git a/src/repo.rs b/src/repo.rs
index 8d292ef..975698e 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>,
@@ -164,7 +165,7 @@ impl RepoInfo {
(repo_url, repo_name)
} else if repo_name.is_some() {
(host_url.or(remote_url), repo_name)
- } else if remote.is_some() {
+ } else if remote_url.is_some() {
...skipping...
name: Option<RepoName>,
@@ -164,7 +165,7 @@ impl RepoInfo {
(repo_url, repo_name)
} else if repo_name.is_some() {
(host_url.or(remote_url), repo_name)
- } else if remote.is_some() {
+ } else if remote_url.is_some() {
(remote_url, remote_repo_name)
} else if host_url.is_none() || remote_url == host_url {
(remote_url, remote_repo_name)
@@ -192,6 +193,7 @@ impl RepoInfo {
(None, None) => eyre::bail!("no repo info specified"),
};
+ dbg!(&info);
Ok(info)
}
as i tried to fix the issue myself
ugh i'm sorry, the original bug report was faulty. what i posted just now is the original error. the bug report contained this additional patch: <details><summary>click to expand</summary> diff diff --git a/src/repo.rs b/src/repo.rs index 8d292ef..975698e 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\>, @@ -164,7 +165,7 @@ impl RepoInfo { (repo_url, repo_name) } else if repo_name.is_some() { (host_url.or(remote_url), repo_name) - } else if remote.is_some() { + } else if remote_url.is_some() { ...skipping... name: Option\<RepoName\>, @@ -164,7 +165,7 @@ impl RepoInfo { (repo_url, repo_name) } else if repo_name.is_some() { (host_url.or(remote_url), repo_name) - } else if remote.is_some() { + } else if remote_url.is_some() { (remote_url, remote_repo_name) } else if host_url.is_none() || remote_url == host_url { (remote_url, remote_repo_name) @@ -192,6 +193,7 @@ impl RepoInfo { (None, None) =\> eyre::bail!("no repo info specified"), }; + dbg!(&info); Ok(info) } </details> as i tried to fix the issue myself
Cyborus commented 2025-09-21 20:33:02 +02:00
Author
Member
Copy link
I'll go ahead and merge this pr anyway since it does seem to fix the issue you didn't mean to report. I'll make separate one for the other problem
I'll go ahead and merge this pr anyway since it does seem to fix the issue you didn't mean to report. I'll make separate one for the other problem
Cyborus merged commit 7c32bed32b into main 2025-09-21 20:44:47 +02:00
Cyborus referenced this pull request from a commit 2025-09-21 20:44:50 +02:00
Merge pull request 'use ssh_url_parse, not .parse::\<Url\>' (#219) from cyborus/agit-fix-wrong-parse into main
Cyborus added this to the v0.4.0 milestone 2025-12-01 17:02:56 +01:00
Sign in to join this conversation.
Reviewers
No reviewers
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/pulls?labels=173012) [ Priority
High ](/forgejo-contrib/forgejo-cli/pulls?labels=173013) [ Priority
Low ](/forgejo-contrib/forgejo-cli/pulls?labels=173015) [ Priority
Medium ](/forgejo-contrib/forgejo-cli/pulls?labels=173014) [ Reviewed
Confirmed ](/forgejo-contrib/forgejo-cli/pulls?labels=173007) [ Reviewed
Duplicate ](/forgejo-contrib/forgejo-cli/pulls?labels=173005) [ Reviewed
Invalid ](/forgejo-contrib/forgejo-cli/pulls?labels=173006) [ Reviewed
Won't Fix ](/forgejo-contrib/forgejo-cli/pulls?labels=173008) [ Status
Abandoned ](/forgejo-contrib/forgejo-cli/pulls?labels=173011) [ Status
Blocked ](/forgejo-contrib/forgejo-cli/pulls?labels=173010) [ Status
Need More Info ](/forgejo-contrib/forgejo-cli/pulls?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!219
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 "cyborus/agit-fix-wrong-parse"
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