Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    Cargo "CC" package - (500) Server Error Version 2025.15 (Build 9)

    Scheduled Pinned Locked Moved Support
    9 Posts 2 Posters 17 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • K Offline
      kinedax339_3276
      last edited by kinedax339_3276

      My company is going to switch from jfrog artifactory to proget, but can't because cc crate won't download.

      64eb9227-d84d-4efd-88e0-3bbcce7af909-image.png
      Clicking on "cc" will display the image below:
      3a43ef4a-fd8e-446a-a252-c3556f8c49c0-image.png

      An error occurred in the web application: Sequence contains no elements
      
      URL: http://mydomain.com:8624/feeds/public-cargo/cc/versions
      Referrer: http://mydomain.com:8624/feeds/public-cargo?Search=cc
      User: Admin
      User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0
      IP Address: ::ffff:10.10.20
      Stack trace:    at System.Linq.ThrowHelper.ThrowNoElementsException()
         at Inedo.ProGet.WebApplication.Pages.Packages.Versions.ListPackageVersionsPageBase.CreateChildControlsAsync()
         at Inedo.ProGet.WebApplication.Pages.ProGetSimplePage.InitializeAsync() in C:\Users\builds\AppData\Local\Temp\InedoAgent\BuildMaster\192.168.44.60\Temp\_E614013\Src\src\ProGet\WebApplication\Pages\ProGetSimplePage.cs:line 69
         at Inedo.Web.PageFree.SimplePageBase.ExecutePageLifeCycleAsync()
         at Inedo.Web.PageFree.SimplePageBase.ProcessRequestAsync(AhHttpContext context)
         at Inedo.Web.AhWebMiddleware.InvokeAsync(HttpContext context)
      
      ::Web Error on 12/10/2025 10:02:06::
      
      atrippA 1 Reply Last reply Reply Quote 0
      • atrippA Offline
        atripp inedo-engineer @kinedax339_3276
        last edited by

        Hi @kinedax339_3276 ,

        It looks like this is an error with the sparse index parsing for short names (e.g. a goes to
        https://index.crates.io/1/a, cc goes to
        https://index.crates.io/2/cc, syn goes to https://index.crates.io/3/s/syn, etc). Easy fix, we'll get it via PG-3177 in the upcoming maintenance release (Dec 19).

        Or you can use the prerelease container image (25.0.17-ci.5) which is being built now.

        Thanks,
        Alana

        K 2 Replies Last reply Reply Quote 0
        • K Offline
          kinedax339_3276 @atripp
          last edited by

          @atripp Oh thank you

          1 Reply Last reply Reply Quote 0
          • K Offline
            kinedax339_3276 @atripp
            last edited by kinedax339_3276

            @atripp After updating ProGet to 25.0.17-ci.5, I do still get the "error: the crate cc could not be found in registry index." on my Linux machine. But opening it via the GUI works so that's great. Do you want me to open a new issue?

            [registries]
            proget = {index = "sparse+https://mydomain.com/cargo/public-cargo/" }

            [registry]
            default = "proget"

            [source]
            [source.proget]
            registry = "sparse+https://mydomain.com/cargo/public-cargo/"
            [source.crates-io]
            replace-with = "proget"

            atrippA 1 Reply Last reply Reply Quote 0
            • atrippA Offline
              atripp inedo-engineer @kinedax339_3276
              last edited by atripp

              @kinedax339_3276 thanks for checking!

              Maybe it's a similar issue.... but honestly I've never used /crate before myself. There's a lot of overhead in figuring all that out for the first time.... so if you can find the URLs being invoked I could probably track it down really easily.

              Is ther ea verbose mode we can see that shows urls ?

              Here are our internal API notes on the implemented endpoints:

              GET /config.json [CargoIndexHandler]
              - generates a config.json file
                - "dl" - download URL for crates
                - "api" - API base url for the Web API
                - "auth-required" - boolean indicating if authentication is required to access the registry.
                  - This is determined by if the feed has anonymous access for Feeds_DownloadPackage.
              
              GET  /crates/{packagename}/{version}/download [CargoIndexHandler]
              - Downloads a crate
                
              GET /{prefix}/{packagename} [CargoIndexHandler]
              - Downloads basic package version information
              - Not true JSON, but each line is a JSON object representing a package version
              

              Maybe it's that last one, with the {prefix} , since those were wrong elswhere. Maybe the matching regex is off?

                  [GeneratedRegex(@"^(1-2)/(?<1>[^/]+)$|^(3)/./(?<1>[^/]+)$|^(?![1-3]/)../../(?<1>[^/]+)$", RegexOptions.ExplicitCapture)]
              

              Cheers,
              Alana

              K 1 Reply Last reply Reply Quote 0
              • K Offline
                kinedax339_3276 @atripp
                last edited by

                @atripp When I run cargo build it first goes to /cargo/public-cargo/config.json and it seems fine. Then it starts doing GET requests for every package. Anyhow is downloaded from /cargo/public-cargo/an/yh/anyhow

                But when it's going to get cc it goes to /cargo/public-cargo/2/cc and gets a 404 Not Found with the answe:

                Inedo.Web.HttpException: Endpoint not available at this url.
                   at Inedo.ProGet.WebApplication.FeedEndpoints.Cargo.CargoFeedHandler.ProcessRequestAsync(AhHttpContext context, WebApiContext apiContext, CargoFeed feed, String relativeUrl)
                      i C:\Users\builds\AppData\Local\Temp\InedoAgent\BuildMaster\192.168.44.60\Temp\_E619576\Src\src\ProGet\WebApplication\FeedEndpoints\Cargo\CargoFeedHandler.cs:rad 111
                   at Inedo.ProGet.WebApplication.FeedEndpoints.CanonicalFeedHandler`1.Inedo.Web.IHttpAsyncHandler.ProcessRequestAsync(AhHttpContext context)
                      i C:\Users\builds\AppData\Local\Temp\InedoAgent\BuildMaster\192.168.44.60\Temp\_E619576\Src\src\ProGet\WebApplication\FeedEndpoints\CanonicalFeedHandler.cs:rad 85
                
                

                It works for packages with a length of 3, for example, ryu it will download from /cargo/public-cargo/3/r/ryu and that works.

                I think the regex should be "([1-2])" in the beginning where it's "(1-2)"

                atrippA 1 Reply Last reply Reply Quote 0
                • atrippA Offline
                  atripp inedo-engineer @kinedax339_3276
                  last edited by

                  Thanks @kinedax339_3276, that was really helpful!

                  Easy fix to the regex, and I made sure the following work

                  • http://localhost:8624/cargo/pants/1/a
                  • http://localhost:8624/cargo/pants/2/cc
                  • http://localhost:8624/cargo/pants/3/s/syn
                  • http://localhost:8624/cargo/pants/an/yh/anyhow

                  Before, the first two returned the same 404.

                  Anyway this change should be in image 25.0.17-ci.7, which is building now! hopefully this will do the trick

                  K 1 Reply Last reply Reply Quote 0
                  • K Offline
                    kinedax339_3276 @atripp
                    last edited by

                    @atripp Thank you too! It works to downlaod cc so I'm happy

                    atrippA 1 Reply Last reply Reply Quote 0
                    • atrippA Offline
                      atripp inedo-engineer @kinedax339_3276
                      last edited by

                      @kinedax339_3276 great news!! Appreciate the help

                      1 Reply Last reply Reply Quote 0

                      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                      With your input, this post could be even better 💗

                      Register Login
                      • 1 / 1
                      • First post
                        Last post
                      Inedo Website Home • Support Home • Code of Conduct • Forums Guide • Documentation