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

PoC - d3v4 support #1363

Closed
wants to merge 42 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
bb7b419
pie-charts all test cases passing with d3v4
kum-deepak Feb 18, 2018
09698c5
Better alignment to build infrastructure
kum-deepak Feb 20, 2018
771a714
.selectAll('anything')[0] -> .selectAll('anything').nodes()
kum-deepak Feb 20, 2018
3cc0ee2
interpolate and tension semantics have changed.
kum-deepak Feb 20, 2018
9253b90
Updated for semantics of D3v4 .enter()
kum-deepak Feb 20, 2018
159e768
Discovered that more D3 functions that are used.
kum-deepak Feb 20, 2018
e86896f
Updated for semantics of D3v4 .enter()
kum-deepak Feb 20, 2018
d3feee0
Updated for semantics of D3v4 .enter() and fixed test cases.
kum-deepak Feb 21, 2018
2d624bb
All test cases for number display and row chart passing
kum-deepak Feb 21, 2018
5561b74
Tests passing
kum-deepak Feb 21, 2018
7d8e196
Axis, Scales - temp
kum-deepak Feb 23, 2018
0d3c238
Added d3-compat to examples
kum-deepak Feb 25, 2018
fc59bdd
Brushing - initial work
kum-deepak Feb 25, 2018
e18a8bb
Many examples working :)
kum-deepak Feb 28, 2018
2d082ee
Zoom and focus working
kum-deepak Feb 28, 2018
d5b4b26
Home page charts works (issue with brushes)
kum-deepak Feb 28, 2018
5c3c412
Fixing some of the specs
kum-deepak Mar 1, 2018
205facc
X Axis brushing
kum-deepak Mar 1, 2018
4a5e35c
Brushing for Scatter Plot
kum-deepak Mar 2, 2018
69561b0
Brush extents and background color
kum-deepak Mar 2, 2018
923fa0b
Brush extent specs
kum-deepak Mar 2, 2018
51ba3f8
Brushing works :)
kum-deepak Mar 3, 2018
6dbceed
Current status
kum-deepak Mar 3, 2018
9c4abdf
Bar width corrected
kum-deepak Mar 3, 2018
04ed7c9
Area is working
kum-deepak Mar 3, 2018
e08d8ff
geoChoroplethChart
kum-deepak Mar 3, 2018
9390423
Functional completeness
kum-deepak Mar 3, 2018
10aebbb
dispatch directly implemented, compatibility code discarded.
kum-deepak Mar 4, 2018
5b7cdca
All specs passing
kum-deepak Mar 4, 2018
8056643
All specs passing
kum-deepak Mar 6, 2018
a832f1c
Merged D3v3-compat
kum-deepak Mar 9, 2018
1fa542f
Minor cleanup
kum-deepak Mar 9, 2018
07bbcd4
Merge d3 compat
kum-deepak Mar 11, 2018
d339be3
Cleanup brush related code
kum-deepak Mar 12, 2018
cd8e4b2
Updated test case
kum-deepak Mar 12, 2018
3cb6512
Travis
kum-deepak Mar 12, 2018
cc33e99
Inline docs - d3 documentation links and minor changes
kum-deepak Mar 17, 2018
4fcabdc
Extend copyright years to 2020
kum-deepak Mar 17, 2018
f7d6c21
Language correction
kum-deepak Mar 17, 2018
c29d5ff
Upgrade guide draft
kum-deepak Mar 17, 2018
b597177
Update copyright notice
kum-deepak Mar 18, 2018
84f1608
Cleanup
kum-deepak Mar 18, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
sudo: false
language: node_js
node_js:
- '6'
- '8'
script:
- 'if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then grunt ci; else grunt ci-pull; fi'
env:
Expand Down
35 changes: 35 additions & 0 deletions D3v4 Upgrade Notes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
##Non working examples

- http://localhost:8888/web/examples/filter-stacks.html
(fading is peculiar)
- http://localhost:8888/web/zoom/restrict-panning.html
Need to increase height of range chart - currently height of
brushable area is zero. New implementation needs it be more than zero.
- http://localhost:8888/web/
Range brushing inconsistent with previous version
If the range chart is brushed first it works correctly
If the Focus chart is zoomed first, brushing range chart fails.


##Issues to be fixed

- Peculiar fading in filter-stacks.html (Medium)


##Before release

- All High priority issues
- Possibly Medium priority issues
- Prepare upgrade guide (Initial version ready)


### Next set of pull requests

- Cleanup of zoom behavior. Testing of restrict panning etc.
- dc.event.trigger
- exit/enter/update sequence
- Additional test cases for dc.util.add and dc.util.subtract
- One for each new chart type - original PRs from community
- Consider removing transitions for zooming and brushing
- d3 stack to D3v4
- Changing .tension call in lineChart
3 changes: 2 additions & 1 deletion Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ module.exports = function (grunt) {
'<%= conf.pkg.name %>.js.map',
'<%= conf.pkg.name %>.min.js',
'<%= conf.pkg.name %>.min.js.map',
'node_modules/d3/d3.js',
'node_modules/d3/build/d3.js',
'node_modules/crossfilter2/crossfilter.js',
'node_modules/queue-async/build/queue.js',
'node_modules/grunt-saucelabs/examples/jasmine/lib/jasmine-jsreporter/jasmine-jsreporter.js',
Expand Down Expand Up @@ -452,6 +452,7 @@ module.exports = function (grunt) {

module.exports.jsFiles = [
'src/banner.js', // NOTE: keep this first
'src/d3v3-compat.js',
'src/core.js',
'src/errors.js',
'src/utils.js',
Expand Down
22 changes: 22 additions & 0 deletions docs/dc-v3-upgrade-guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# dc v3 Upgrade Guide

The dc has undergone significant internal changes while moving to v3.
Effort has been made to keep the API as close as possible.

d3 team has released version 4 which is not backward compatible with
their version 3. dc relies very heavily on d3. It is quite likely that
your code uses bits of d3.

Outline of the upgrade process:

- First of all update all d3 functions calls in your code. Most of these
would start with d3. Check https://github.com/d3/d3/blob/master/CHANGES.md
for new function name corresponding to old functions.
- dc.lineChart .interpolate earlier took string parameter, these will get
replaced by specialized curve functions. For example 'step-before'
changes to `d3.curveStepBefore` and 'cardinal' to `d3.curveCardinal`.
See https://github.com/d3/d3/blob/master/CHANGES.md#shapes-d3-shape
for equivalent function calls.
- For dc.geoChoroplethChart earlier `d3.geoAlbersUsa()` was the default
for .projection. If you are plotting US states please call
`.projection(d3.geoAlbersUsa())` explicitly on your chart.
2 changes: 1 addition & 1 deletion jsdoc.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"outputSourcePath": true,
"systemName": "dc.js",
"footer": "",
"copyright": "dc.js Copyright © 2012-2016 Copyright 2012-2016 Nick Zhu & the dc.js Developers",
"copyright": "dc.js Copyright © 2012-2018 Nick Zhu & the dc.js Developers",
"navType": "vertical",
"theme": "cosmo",
"linenums": true,
Expand Down
Loading