@@ -7,7 +7,8 @@ use std::rc::Rc;
77use std:: task:: Poll ;
88
99use anyhow:: { bail, format_err, Context as _} ;
10- use git_url_parse:: { GitUrl , Scheme } ;
10+ use gix:: bstr:: BStr ;
11+ use gix:: url:: { parse, Scheme } ;
1112use ops:: FilterRule ;
1213use serde:: { Deserialize , Serialize } ;
1314
@@ -538,14 +539,15 @@ enum InstallSuggestion {
538539/// to rerun cargo install with
539540fn was_git_url_miscategorised_as_a_registry_dep ( dep : & Dependency ) -> InstallSuggestion {
540541 if dep. source_id ( ) . is_registry ( ) {
541- if let Ok ( git_url) = GitUrl :: parse ( & dep. package_name ( ) ) {
542+ if let Ok ( git_url) = parse ( BStr :: new ( dep. package_name ( ) . as_bytes ( ) ) ) {
542543 let final_git_url: Option < InternedString > = match git_url. scheme {
543544 // cargo doesn't support cargo install git@ urls, so
544- Scheme :: Ssh | Scheme :: Git | Scheme :: GitSsh => {
545- if let ( Some ( host) , Some ( owner) ) = ( git_url. host , git_url. owner ) {
545+ Scheme :: Ssh | Scheme :: Git => {
546+ if let ( Some ( host) , Some ( owner) ) = ( git_url. host ( ) , git_url. user ( ) ) {
546547 let https_git_url = format ! (
547548 "https://{host}/{owner}/{repo_name}" ,
548- repo_name = git_url. name
549+ // repo_name = git_url.name()
550+ repo_name = "TODO"
549551 ) ;
550552 Some ( InternedString :: from ( https_git_url) )
551553 } else {
0 commit comments