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

Still maintained? #130

Open
agaurav opened this issue Jan 6, 2016 · 14 comments
Open

Still maintained? #130

agaurav opened this issue Jan 6, 2016 · 14 comments

Comments

@agaurav
Copy link

agaurav commented Jan 6, 2016

Last commit been 2 years back and a number of pull request are still pending. Its really great d3 plugin and one of the only one in javascript which is actually optimised for time-series data. Though it still supports latest d3 version, would love to know if it is going to be maintained for future releases & any additions are in roadmap ?

@RandomEtc
Copy link
Collaborator

It's not actively maintained or seeing much use here at Square these days.
I'll take another look at outstanding PRs and see if I can move them along.
If it isn't compatible with d3 v4 I'll definitely be around to help fix.

Feel free to highlight any PRs here if you think they are worth expediting.

On Wednesday, January 6, 2016, Ashish Gaurav [email protected]
wrote:

Last commit been 2 years back and a number of pull request are still
pending. Its really great d3 plugin and one of the only one in javascript
which is actually optimised for time-series data. Though it still supports
latest d3 version, would love to know if it is going to be maintained for
future releases & any additions are in roadmap ?


Reply to this email directly or view it on GitHub
#130.

@opavader
Copy link

opavader commented Jan 7, 2016

Thanks for reply @RandomEtc and great to know that you will be around for help.

As for current pull request, #129 seems of value.

@kerneis
Copy link

kerneis commented Jul 7, 2016

If it isn't compatible with d3 v4 I'll definitely be around to help fix.

It is not compatible, because of the changes to d3.format and d3.time. The fix is relatively easy, and I'd be happy to provide a PR, but I'm not sure how to proceed: it would be a breaking change forcing people using the library to upgrade to d3.v4. I'm not sure if keeping compatibility with both d3.v3 and d3.v4 is possible, or even desirable. Would you be okay with the idea of doing a cubism v2.0 release, that mandates d3 v4 (and existing users on d3 v3 can keep using v 1.6)?

@kerneis
Copy link

kerneis commented Jul 7, 2016

In fact, it's going to be more complicated than expected, because of src/axis.js. The d3-axis API has changed in v4, getting rid of "orient" (https://github.com/d3/d3/blob/master/CHANGES.md#axes-d3-axis) . Some creative work will be needed to understand what is going on in src/axis.js (which rebinds d3.axis, a thing that is not longer possible in v4) and design a clean new API.

On an unrelated note, "make package.json" fails for me on a freshly cloned repo with the following error:

$ npm install && make
[…]
node src/package.js > package.json

cubism/cubism.v1.js:187
var cubism_cubeFormatDate = d3.time.format.iso;
                            ^
ReferenceError: d3 is not defined
    at cubism/cubism.v1.js:187:29
    at Object.<anonymous> (cubism/cubism.v1.js:1331:3)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (cubism/src/package.js:6:14)
    at Module._compile (module.js:456:26)
make: *** [package.json] Error 8

I'm not sure what I'm doing wrong.

@agaurav
Copy link
Author

agaurav commented Jul 7, 2016

@kerneis In package.js change line#6 to

cubism = require("./cubism").cubism;

As for d3 v4, I too will suggest on keeping the current version as it is and develop a version 2 separately. As cubism is not actively maintained by square anymore, may be it will be a better idea to move it to a separate fork like crossfilter for v2.
I too will be happy to help in v4 migration for d3 as well as any support in future.

@anomalizer
Copy link

@RandomEtc Would you be able to help with some form of a succession plan as far as maintenance of this library is concerned? It is perfectly acceptable for an OSS project to be in a situation wherein the original creators are no longer actively interested in the project as long as the baton is passed onto someone in the community.

@RandomEtc
Copy link
Collaborator

I think cubism is a small enough library that it shouldn't be too horrible to update to d3 v4 - thanks to those who have already investigated.

Unlike Cube and Crossfilter I'm optimistic we can accept a PR to update the library, provided the work is targeted. I'm listening, and will happily publish a new version. I'll try to take a look myself soon.

@TylerRick
Copy link

Any word on upgrading this for D3 4.x?

It seems to cause errors when I tried installing it (with npm) alongside D3 4.x. I would love to use cubism but will probably have to look for an alternative if it doesn't work with D3 v4. :/

BTW, does anyone know of a good alternative plugin for D3 4?

@TylerRick
Copy link

TylerRick commented Sep 4, 2017

BTW, found a couple options for horizon charts in D3 4:

But they seriously don't look or work as well as Cubism. 🙁 For example, it doesn't provide an axis or a vertical line for viewing values.

@TylerRick
Copy link

Tried changing the d3 script tag on (a copy of) https://bost.ocks.org/mike/cubism/intro/demo-stocks.html (for example) to:

<script src="//d3js.org/d3.v4.min.js" charset="utf-8"></script>

and it throws a bunch of JS errors.

Cubism makes such beautiful charts (and I love the vertical bar feature that you can use to inspect values at any point!). It would be such a shame for this project to be abandoned. I hope someone more familiar with the code will get a chance to update Cubism to D3 4.x.

@BigFatDog
Copy link

BigFatDog commented May 5, 2018

@RandomEtc
I've made a cubism-es based on ES6 and D3V5: cubism-es

Status

5 demo that are collected from cubism's tutorials work. Graphite, Cube and GangliaWeb have not been verified yet.

API breaks

// in cubism
d3.select(...).call(cubism.context)

// in cubism-es
const a = d3.select(...)
cubism.context(a).height(30)

Technology

ES6, D3 V5 modules, Rollup

I want to make a PR when I've finished. Since I've changed so much code, could you please give me some input before submitting a PR? E.g., coding model, api. Any advice is appreciated.

Thank you.
Yun Xing

@tristansokol
Copy link
Contributor

tristansokol commented Jul 3, 2018

@RandomEtc @mbostock I'm officially making a motion to archive this repo. It is is unmaintained, and seems to have a logical successor.

Would love your (or anyones input) but my gameplan is to update the readme explaining its archival status, link to the above cubism port, and then flip the archive switch. I'll move forward with this in a couple weeks with no input, or sooner if we can get consensus.

@BigFatDog
Copy link

I haven't made a pull request because the whole project structure (including packaging method and release format) has been changed in my port.

Currently I tend to maintain my port in a separate project. However, if anyone think it is a good idea to make a pull request, please let me know.

@aspiers
Copy link

aspiers commented Feb 6, 2021

I think it would be a good idea. The community gets more confused and fragmented when there are multiple forks and it's not immediately clear that they all exist or which one to use. I almost didn't notice this issue and might have wasted hours trying to figure out why it wasn't working for me.

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

9 participants