Skip to content
This repository has been archived by the owner on Feb 22, 2018. It is now read-only.

pub.dartlang.org should display the dependencies of each package #368

Open
DartBot opened this issue Jun 5, 2015 · 4 comments
Open

pub.dartlang.org should display the dependencies of each package #368

DartBot opened this issue Jun 5, 2015 · 4 comments

Comments

@DartBot
Copy link

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/129084?v=3" align="left" width="96" height="96"hspace="10"> Issue by skybrian
Originally opened as dart-lang/sdk#21234


What steps will reproduce the problem?

  1. visit https://pub.dartlang.org/packages/barback
  2. see that none of the tabs show the dependencies of the barback package. In particular, it's not obvious whether this is a client-side package, server-side, or both.

What is the expected output? What do you see instead?

A minimal implementation would be to add a tab displaying the pubspec.yaml file as-is, to save having to search for it. Better would be to add a link to the pub.dartlang.org page for each dependency. Nicer still would be to compute the transitive closure and show the whole graph. Packages that depend on dart:html could be marked client-side and packages that depend on dart:io marked server-side.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/648527?v=3" align="left" width="48" height="48"hspace="10"> Comment by Fox32


A integration of pubviz (https://github.com/kevmoo/pubviz) with nodes that link to packages would be nice. But this should be available not only for the package globally, but all versions of a package.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/405837?v=3" align="left" width="48" height="48"hspace="10"> Comment by zoechi


I think the transitive closure is very difficult. Which version of a dependency should be used for the graph when the version constraint allows a range of versions. It is often the case, that one version of a package has different dependencies than another version.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/648527?v=3" align="left" width="48" height="48"hspace="10"> Comment by Fox32


Another challenge is that the pubspec.yaml doesn't cover dependencies to dart:io / dart:html. So it wouldn't help to solve point 2. A simple analysis of the includes in also not a solution as a package could be a client-side package on one side, but also contain a cli tool in the bin/ folder that depends on dart:io.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/2156198?v=3" align="left" width="48" height="48"hspace="10"> Comment by kasperl


Added Area-PubSite, Triaged labels.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Development

No branches or pull requests

1 participant