Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

paket outdated goes off on a useless search when using the v3 api #1242

Closed
albertjan opened this issue Nov 19, 2015 · 17 comments
Closed

paket outdated goes off on a useless search when using the v3 api #1242

albertjan opened this issue Nov 19, 2015 · 17 comments

Comments

@albertjan
Copy link
Member

dependencies:

redirects: on

source https://api.nuget.org/v3/index.json
source https://www.nuget.org/api/v2/

nuget FSharp.Control.Reactive
nuget FSharp.Data framework: >= net40
nuget FsLexYacc framework: >= net40
nuget FsUnit framework: >= net45
nuget Newtonsoft.Json framework: >= net40
nuget NLog.FSharp 3.2.1 framework: >= net40
nuget NLog 3.2.1 framework: >= net40
nuget SnmpSharpNet
nuget NUnit.Runners
nuget FAKE ~> 4
nuget FSharp.Formatting.CommandTool
nuget FSharp.Core ~> 4 framework: >= net40
nuget ILRepack

Output:

Paket version 2.27.2.0
Resolving packages for group Main:
 - FAKE 4.9.3
 - FSharp.Core 4.0.0.1
 - NLog is pinned to 3.2.1
 - NLog.FSharp is pinned to 3.2.1
 - FSharp.Control.Reactive 3.2.0
 - FSharp.Formatting.CommandTool 2.12.0
 - ILRepack 2.0.8
 - NUnit.Runners 3.0.0
 - SnmpSharpNet 0.9.4
 - SnmpSharpNet 0.9.3
 - SnmpSharpNet 0.9.2
 - FSharp.Data 2.2.5
 - FsLexYacc 6.1.0
 - FsLexYacc 6.0.4
 - FsLexYacc 6.0.3
 - FsLexYacc 6.0.2
 - FsLexYacc 6.0.1
 - FsLexYacc 6.0.0
 - Newtonsoft.Json 7.0.1
 - Newtonsoft.Json 6.0.8
 - Newtonsoft.Json 6.0.7
 - Newtonsoft.Json 6.0.6
 - Newtonsoft.Json 6.0.5
 - Newtonsoft.Json 6.0.4
 - Newtonsoft.Json 6.0.3
 - Newtonsoft.Json 6.0.2
 - Newtonsoft.Json 6.0.1
 - Newtonsoft.Json 5.0.8
 - Newtonsoft.Json 5.0.7
 - Newtonsoft.Json 5.0.6
 - Newtonsoft.Json 5.0.5
 - Newtonsoft.Json 5.0.4
 - Newtonsoft.Json 5.0.3
 - Newtonsoft.Json 5.0.2
 - Newtonsoft.Json 5.0.1
 - Newtonsoft.Json 4.5.11
 - Newtonsoft.Json 4.5.10
 - Newtonsoft.Json 4.5.9
 - Newtonsoft.Json 4.5.8
 - Newtonsoft.Json 4.5.7
 - Newtonsoft.Json 4.5.6
 - Newtonsoft.Json 4.5.5
 - Newtonsoft.Json 4.5.4
 - Newtonsoft.Json 4.5.3
 - Newtonsoft.Json 4.5.2
 - Newtonsoft.Json 4.5.1
 - Newtonsoft.Json 4.0.8
 - Newtonsoft.Json 4.0.7
 - Newtonsoft.Json 4.0.6
 - Newtonsoft.Json 4.0.5
 - Newtonsoft.Json 4.0.4
 - Newtonsoft.Json 4.0.3
 - Newtonsoft.Json 4.0.2
 - Newtonsoft.Json 4.0.1
 - Newtonsoft.Json 3.5.8
 - FsUnit 1.4.0
 - NUnit.Console 3.0.0
 - NUnit 2.6.4
 - FsLexYacc.Runtime 6.1.0
 - Rx-Core 2.2.5
 - Rx-Interfaces 2.2.5
 - Rx-Linq 2.2.5
Outdated packages found:
  Group: Main
    * FAKE 4.7.2 -> 4.9.3
    * FsUnit 1.3.1 -> 1.4.0
    * NUnit.Runners 2.6.4 -> 3.0.0

If I remove the v3 source

Paket version 2.27.2.0
Resolving packages for group Main:
 - FAKE 4.9.3
 - FSharp.Core 4.0.0.1
 - NLog is pinned to 3.2.1
 - NLog.FSharp is pinned to 3.2.1
 - FSharp.Control.Reactive 3.2.0
 - FSharp.Formatting.CommandTool 2.12.0
 - ILRepack 2.0.8
 - NUnit.Runners 3.0.0
 - SnmpSharpNet 0.9.4
 - FSharp.Data 2.2.5
 - FsLexYacc 6.1.0
 - Newtonsoft.Json 7.0.1
 - FsUnit 1.4.0
 - NUnit.Console 3.0.0
 - NUnit 2.6.4
 - FsLexYacc.Runtime 6.1.0
 - Rx-Core 2.2.5
 - Rx-Interfaces 2.2.5
 - Rx-Linq 2.2.5
Outdated packages found:
  Group: Main
    * FAKE 4.7.2 -> 4.9.3
    * FsUnit 1.3.1.0 -> 1.4.0
    * NUnit.Runners 2.6.4 -> 3.0.0
11 seconds - ready.
@forki
Copy link
Member

forki commented Nov 19, 2015

@xavierzwirtz ideas?

@forki
Copy link
Member

forki commented Nov 19, 2015

I can reproduce with "paket update"

@xavierzwirtz
Copy link
Contributor

I've seen it do that as well, not entirely sure what's causing it yet. It always resolves to the same packages as the v2 api, but it takes it awhile.

@forki
Copy link
Member

forki commented Nov 19, 2015

I found something.

image

somehow the unlisted property gets set.

@forki
Copy link
Member

forki commented Nov 19, 2015

but https://www.nuget.org/packages/SnmpSharpNet/0.9.3 shows it as listed

@forki
Copy link
Member

forki commented Nov 19, 2015

{
  "@id": "https://api.nuget.org/v3/catalog0/data/2015.02.05.19.22.15/snmpsharpnet.0.9.4.json",
  "@type": [
    "PackageDetails",
    "catalog:Permalink"
  ],
  "authors": "msinadinovic",
  "catalog:commitId": "b26aa970-6b5c-4263-b0af-498f6ef82201",
  "catalog:commitTimeStamp": "2015-02-05T19:22:15.3388193Z",
  "created": "2014-07-04T04:37:04.91Z",
  "description": "Simple Network Management Protocol Open Source library written in c# with support for SNMP version 1, 2c and 3.\n\nSupport for Get, Get-Next, Get-Bulk and Set requests, Response and Report replies and Trap, V2Trap and Inform Notifications is implemented. SNMP version 1 Traps have a dedicated packet class SnmpV1TrapPacket because they are substantially different from other SNMP version 1 packets. SNMP version 2 and 3 V2Trap parsing is included in the general request/response parsing class for each protocol. Inform handling for both SNMP version 2 and 3 is included and tested. In version 3, V2Trap and Inform support for authentication and privacy is included.\n\nSNMP version 3 currently support noAuthNoPriv (no privacy and no authentication) security model, authNoPriv using MD5 and SHA-1 authentication and authPriv using, again, MD5 and SHA-1 authentication with DES, AES-128, AES-192, AES-256 and TripleDES privacy encryption.",
  "id": "SnmpSharpNet",
  "isPrerelease": false,
  "language": "en-US",
  "lastEdited": "0001-01-01T00:00:00Z",
  "licenseUrl": "http://opensource.org/licenses/lgpl-3.0.html",
  "packageHash": "rSOYS5EFKW+7nFjq5V6Xq5Bo1Y4rkzXIDi2RW5JzIoVhif+GDyxCvz6v2kSxkjrjb18psI9stFMHRHPk1odcYA==",
  "packageHashAlgorithm": "SHA512",
  "packageSize": 60786,
  "projectUrl": "https://sourceforge.net/projects/snmpsharpnet/",
  "published": "2014-07-04T04:37:04.91Z",
  "requireLicenseAcceptance": false,
  "summary": "SNMP Open Source library written in c# with support for SNMP version 1, 2c and 3.",
  "title": "SNMP#NET",
  "version": "0.9.4",
  "tags": [
    "snmp"
  ],
  "@context": {
    "@vocab": "http://schema.nuget.org/schema#",
    "catalog": "http://schema.nuget.org/catalog#",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dependencies": {
      "@id": "dependency",
      "@container": "@set"
    },
    "dependencyGroups": {
      "@id": "dependencyGroup",
      "@container": "@set"
    },
    "packageEntries": {
      "@id": "packageEntry",
      "@container": "@set"
    },
    "supportedFrameworks": {
      "@id": "supportedFramework",
      "@container": "@set"
    },
    "tags": {
      "@id": "tag",
      "@container": "@set"
    },
    "published": {
      "@type": "xsd:dateTime"
    },
    "created": {
      "@type": "xsd:dateTime"
    },
    "lastEdited": {
      "@type": "xsd:dateTime"
    },
    "catalog:commitTimeStamp": {
      "@type": "xsd:dateTime"
    }
  }
}

@forki
Copy link
Member

forki commented Nov 19, 2015

vs. FAKE:

{
  "@id": "https://api.nuget.org/v3/catalog0/data/2015.11.17.14.59.50/fake.4.9.3.json",
  "@type": [
    "PackageDetails",
    "catalog:Permalink"
  ],
  "authors": "Steffen Forkmann, Mauricio Scheffer, Colin Bull",
  "catalog:commitId": "75e19ce6-ff50-4dde-b566-9ad689555935",
  "catalog:commitTimeStamp": "2015-11-17T14:59:50.8934709Z",
  "created": "2015-11-17T14:59:15.953Z",
  "description": "FAKE - F# Make - is a build automation tool for .NET. Tasks and dependencies are specified in a DSL which is integrated in F#. This package bundles all extensions.",
  "iconUrl": "https://raw.githubusercontent.com/fsharp/FAKE/master/help/pics/logo.png",
  "id": "FAKE",
  "isPrerelease": false,
  "language": "en-US",
  "lastEdited": "0001-01-01T00:00:00Z",
  "licenseNames": "",
  "licenseReportUrl": "",
  "licenseUrl": "http://www.github.com/fsharp/Fake/blob/master/License.txt",
  "listed": true,
  "packageHash": "ZydxDY9tf/BA6mN9CN+vB9bQJMD6cvLIrZchJoQIOnYl2v82s5VMj/gccgVJlNu+u1T92tQr+yzX5F3ixb9yCQ==",
  "packageHashAlgorithm": "SHA512",
  "packageSize": 14941642,
  "projectUrl": "http://www.github.com/fsharp/Fake",
  "published": "2015-11-17T14:59:15.953Z",
  "releaseNotes": "BUGFIX: Fix case on MsBuild LogFile option - https://github.com/fsharp/FAKE/pull/1008",
  "requireLicenseAcceptance": false,
  "summary": "FAKE - F# Make - Get rid of the noise in your build scripts.",
  "verbatimVersion": "4.9.3",
  "version": "4.9.3",
  "tags": [
    "build",
    "fake",
    "f#"
  ],
  "@context": {
    "@vocab": "http://schema.nuget.org/schema#",
    "catalog": "http://schema.nuget.org/catalog#",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dependencies": {
      "@id": "dependency",
      "@container": "@set"
    },
    "dependencyGroups": {
      "@id": "dependencyGroup",
      "@container": "@set"
    },
    "packageEntries": {
      "@id": "packageEntry",
      "@container": "@set"
    },
    "supportedFrameworks": {
      "@id": "supportedFramework",
      "@container": "@set"
    },
    "tags": {
      "@id": "tag",
      "@container": "@set"
    },
    "published": {
      "@type": "xsd:dateTime"
    },
    "created": {
      "@type": "xsd:dateTime"
    },
    "lastEdited": {
      "@type": "xsd:dateTime"
    },
    "catalog:commitTimeStamp": {
      "@type": "xsd:dateTime"
    }
  }
}

@forki
Copy link
Member

forki commented Nov 19, 2015

so it seems "listed" is not always set. And when it's not set we should assume "true".

@xavierzwirtz what do you think about it? Can you do a PR?

@forki
Copy link
Member

forki commented Nov 19, 2015

/cc @maartenba do you know why the listed property is sometimes not set. Even when nuget.org shows the package as listed?

@maartenba
Copy link

Listed by default indeed, we have had a version of the schema that excluded the trues for a bit in the first months of the year.

@forki
Copy link
Member

forki commented Nov 19, 2015

Isn't that a Json "violation" in some sense? why didn't you use "unlisted" with default false?

Just kidding. ;-) we can fix that in paket.

BTW: can you comment on #1230 (comment)? Please only that single comment. I don't want to reraise the whole pointless discussion on that thread. But this comment seems related.

@maartenba
Copy link

If I find a few hours I want to document the API a bit better (and hopefully officially as well), should help a lot imo.

On that thread, no idea on the reasons there...

@xavierzwirtz
Copy link
Contributor

Documentation would be great. Had to black box most of this implementation with fiddler.

@maartenba
Copy link

Preaching to the choir :-) I hear you.

@xavierzwirtz
Copy link
Contributor

You want me to submit a PR to fix this @forki?

@forki
Copy link
Member

forki commented Nov 19, 2015

Yes would be great
On Nov 19, 2015 6:09 PM, "Xavier Zwirtz" notifications@github.com wrote:

You want me to submit a PR to fix this @forki https://github.com/forki?


Reply to this email directly or view it on GitHub
#1242 (comment).

@albertjan
Copy link
Member Author

Thanks everyone!

@deapsquatter looks like our paket anomaly has been solved 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants