Uploaded image for project: 'Dev - Nexus Repo'
  1. Dev - Nexus Repo
  2. NEXUS-26638

gzip compress conda repository metadata responses if client indicates support

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • 3.29.2
    • Conda
    • 3
    • 3

    Description

      Conda clients will indicate support for compression of HTTP responses.

      Official conda repositories will reply with a compressed reply, while NXRM does not.

      This consumes more bandwidth than should be required, possibly making builds using NXRM slower than they otherwise would be.

      curl -v https://repo.anaconda.com/pkgs/main/noarch/repodata.json -H "Accept: */*" -H "Accept-Encoding: gzip, deflate, compress, identity" -o /dev/null
      < HTTP/2 200 
      < date: Tue, 09 Feb 2021 15:10:25 GMT
      < content-type: application/json
      < set-cookie: __cfduid=d5eaa83fddd9f05653733c86bbcdba6121612883425; expires=Thu, 11-Mar-21 15:10:25 GMT; path=/; domain=.anaconda.com; HttpOnly; SameSite=Lax; Secure
      < x-amz-id-2: 6tV77IWbBzxUiogNYhQWVhhQfkyohRPQ0USjxEQ9Gwdhk65hScfsMDcB1sMuUnvuUv6H9OIAJQk=
      < x-amz-request-id: F5BF72DC57435EC3
      < last-modified: Mon, 08 Feb 2021 20:39:24 GMT
      < x-amz-version-id: 7DV2byaD0mGa4onEFBWmpyEjs2U9pn8O
      < etag: W/"9b9831a707e0f5283f27cfddeb9667b2"
      < cf-cache-status: HIT
      < age: 118
      < expires: Tue, 09 Feb 2021 15:10:55 GMT
      < cache-control: public, max-age=30
      < cf-request-id: 0828f110940000f01d1398a000000001
      < expect-ct: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
      < vary: Accept-Encoding
      < server: cloudflare
      < cf-ray: 61ee8460efe7f01d-EWR
      < content-encoding: gzip
      { [788 bytes data]
      100  520k    0  520k    0     0  1729k      0 --:--:-- --:--:-- --:--:-- 1729k
      
      
      * Connection #0 to host repo.anaconda.com left intact
      > GET /repository/anaconda-proxy/noarch/repodata.json HTTP/1.1
      > Host: localhost:8081
      > User-Agent: curl/7.74.0
      > Accept: */*
      > Accept-Encoding: gzip, deflate, compress, identity
      > 
      * Mark bundle as not supporting multiuse
      < HTTP/1.1 200 OK
      < Date: Tue, 09 Feb 2021 15:19:09 GMT
      < Server: Nexus/3.29.2-02 (PRO)
      < X-Content-Type-Options: nosniff
      < Content-Security-Policy: sandbox allow-forms allow-modals allow-popups allow-presentation allow-scripts allow-top-navigation
      < X-XSS-Protection: 1; mode=block
      < Last-Modified: Mon, 08 Feb 2021 20:39:24 GMT
      < ETag: W/"9b9831a707e0f5283f27cfddeb9667b2"
      < Content-Type: application/json
      < Content-Length: 3177552
      < 
      { [81868 bytes data]
      100 3103k  100 3103k    0     0  5396k      0 --:--:-- --:--:-- --:--:-- 5387k
      

      Expected

      If a requesting client indicates it accepts compressed content, then compress that content in the reply. Do this only for textual content types.

      Attachments

        Activity

          People

            plynch Peter Lynch
            plynch Peter Lynch
            Peter Lynch Peter Lynch
            NXRM - Mad Max
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              tigCommentSecurity.panel-title