ngraph dependencies and other dependencies versions
- Dominant language
- JavaScript
- Stars
- 3.9k
- Forks
- 418
- PR merge metrics
- No merged PRs in 30d
Description
I tried to use VivaGraphJS and I'm happy with the first results, but I'm having troubles using it because - although opensource - I don't have access to all the licenses of the specific version pointed in the [VivaGraphJS/package.json](https://github.com/anvaka/VivaGraphJS/blob/v0.12.0/package.json) (I'm on the latest version, which now is v0.12.0) because some of the ngraph dependencies have no tags, thus I cannot point to the source code of the specific version.
The ones I spotted:
- _ngraph.events_ is missing _0.0.3_ version tag (latest version is _1.2.1_, vivagraphjs needs _0.0.3_, there is no _0.3.0_ tag)
- _ngraph.merge_ has no version tags (the version in _package.json_ is _1.0.0_, vivagraphjs needs _0.0.1_)
- _ngraph.centrality_ version has been updated to _2.0.0_ in master, might be worth to create a tag (there is one for _0.3.0_)
- _ngraph.random_ is missing _0.0.1_ version tag, it only has _0.1.0_ and _1.0.0_
- _ngraph.expose_ is missing _0.0.0_ version tag, it has not tags and latest version is _1.0.0_
I also noticed that _vivagraphjs v0.12.0_ needs _ngraph.fromjson v0.1.9_ and _ngraph.graph v0.0.14_, meanwhile _ngraph.fromjson v0.1.9_ needs _ngraph.graph v18.0.0_, which cause a conflict (_ngraph.graph_ is needed both at _v18.0.0_ and _v0.0.14_). There are also a couple more conflicts, but I forgot to take a note... Sorry...
Wouldn't be simpler to pack all the _ngraph.*_ libraries under one single package (e.g. _ngraph_)? In this way everything moves together and it would much easier to track.
For my use case I managed to find the various commit ([ngraph.events: 0.0.3](https://github.com/anvaka/ngraph.events/tree/308f6ce46fd7d4d59577febbb7a68d75720be69a), [ngraph.merge: 0.0.1](https://github.com/anvaka/ngraph.merge/tree/6824fe6454cf914fc0a0730fe6906f9a2875e40f), [ngraph.random: 0.0.1](https://github.com/anvaka/ngraph.random/tree/5dad6311382d23d0edbbbb293bc73c7fd0b1bf0f), [ngraph.expose: 0.0.0](https://github.com/anvaka/ngraph.expose/tree/1c902365c2ac3895e854be98166fac4fa2d718a3)), but I think working only on one library would make your life easier.
This is the list of dependencies that might be put together in one `ngraph.` (they are all written in javascript, to my understanding): gintersect, ngraph.centrality, ngraph.events, ngraph.expose, ngraph.forcelayout, ngraph.fromjson, ngraph.generators, ngraph.graph, ngraph.merge, ngraph.physics.primitives, ngraph.physics.simulator, ngraph.quadtreebh, ngraph.random, ngraph.tojson, simplesvg. (It also might be worth to upgrade add-event-listener).
It's not a strict requirement, honestly it's amazing that there are so little external dependencies (only one, add-event-listener) and you'd ease the adoption for enterprises! :)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with VivaGraphJS/package.json and compare its ngraph dependency versions with the tags and package metadata in the linked ngraph repositories. Map the reported version conflicts and missing tags first; done would require a maintainer-approved dependency or packaging strategy, with all required versions reproducibly available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- build-system, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100