patternfly / patternfly-timeline

A time based / event series interactive visualization using d3.js. Use drag and zoom to navigate in time.
MIT License
136 stars 39 forks source link

Update outdated d3 and other deps #40

Open AllenBW opened 7 years ago

AllenBW commented 7 years ago

After ensuring "d3": "3.5.3" was installed alongside the latest patternfly-timeline I see the following when attempting to start my app.

screen shot 2017-05-10 at 1 01 41 pm

Been trying to troubleshoot exactly what this is, best I can manage is dependency jsdom being used by "d3": "3.5.3" is at 1.0.0 but we're looking for 1.0.0-pre.6 as per the devDependencies (also if you look at the jsdom deps, the ones its asking for are in the pre.6 version).

dgutride commented 7 years ago

This appears to be a webpack configuration error: https://github.com/webpack/webpack/issues/718 - you probably will need to modify your configuration to make sure jsdom is appropriately available on the window (just a guess). The timeline demo app is still functioning correctly with a full clear/reinstall of the node_modules locally so the dependency tree outlined in the package.json is still valid.

AllenBW commented 7 years ago

oh! Hmm thanks for the lead, lets see where it leads...

Update on this... looks like outdated deps are the issue... reverting to same level deps creates other issues from getting this to work.. le sigh 😑

AllenBW commented 7 years ago

Updating this pr to be a request to update the deps the lib specifically d3 from 3.x.x -> 4.x.x 👈 the migration guide is really thorough but alas, after stabbing at this all yesterday determined it is likely going to be a non-trivial amount of work to get this done...

TL;DR - stale deps for patternfly-timeline prevent sui from incorporating the lib https://www.pivotaltracker.com/story/show/142772825

@himdel giving ya a shout by request 🙇‍♀️

jeff-phillips-18 commented 7 years ago

Hmmm.... The current patternfly dependency is 3.7 which also has dependencies on D3 3.x as does angular-patternfly (via patternfly). This would mean an update to both of those repositories as well.

himdel commented 7 years ago

@jeff-phillips-18 Perhaps the jsdom dependency is simply too specific here? I mean, 1.0.0-pre.6 sounds like it should have a ^ or ~...

Upgrading to d3 4 can't quite happen for patternfly until a version of c3 which supports it is released .. https://github.com/c3js/c3/issues/1648

AllenBW commented 7 years ago

I'll make any pr yall wants ANY PR i take back what was said earlier about d3 4.x it was a silly and miserable idea, many regrets...

AllenBW commented 7 years ago

While this lib does need a dep update for all things that can be, repurposing this issue just to make jsdom a little more flexible in hopes of fixing the above mentioned issue

dgutride commented 7 years ago

@allenbw - does the jsdom dependency update fix this for you? it's not intended to be a runtime dependency in the timeline (those would be managed within d3 and are outside the scope of this repo)

chriskacerguis commented 7 years ago

@AllenBW could you please address @dgutride question?

AllenBW commented 7 years ago

😃 will add that pt to current sprint

AllenBW commented 7 years ago

@chriskacerguis @dgutride no bueno on updating only jsdom dep

dgutride commented 7 years ago

@AllenBW - we've updated D3 to a version that works with webpack, can you try to see if this addresses your problem by using the latest hash in master-dist: https://github.com/patternfly/patternfly-timeline/tree/master-dist in your package.json file?

msipavicius commented 7 years ago

@dgutride I haave the same issue and can confirm that it does solve the problem.

nnti3n commented 7 years ago

@dgutride tks for pointing out