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

support for elm 0.17.x #34

Open
francisdb opened this issue Jul 5, 2016 · 16 comments
Open

support for elm 0.17.x #34

francisdb opened this issue Jul 5, 2016 · 16 comments

Comments

@francisdb
Copy link

the title says it all, anybody working on this already?

@seliopou
Copy link
Owner

seliopou commented Jul 8, 2016

Just came across some spare beach time on the Mediterranean, so I'll be working on it over the weekend.

@seliopou
Copy link
Owner

seliopou commented Jul 8, 2016

Fixing this should fix #32.

@francisdb
Copy link
Author

great, enjoy the 🏖

@seliopou
Copy link
Owner

seliopou commented Jul 8, 2016

I'm going to keep a bit of a journal of the process here, both to help others that may have to do a port like this in the future, and certainly to keep things straight in my head right now.

@mango314
Copy link

mango314 commented Jul 8, 2016

@seliopou I started to do some migration myself... but having difficulty turning signals into subscriptions

There was also some conflict as to using Native code (as you have chosen) or Ports.

@francisdb
Copy link
Author

@seliopou any progress?

@ffos
Copy link

ffos commented Jul 29, 2016

I was hoping to leverage your awesome library to showcase Elm 0.17 with some work related stuff. Do you think you could provide an ETA on this? I'd prefer the library rather than peddle with ports :)

@seliopou
Copy link
Owner

seliopou commented Jul 29, 2016

Sorry for the radio silence. I did some digging into the current state of Elm's native interfaces, and the situation is not great with respect to a speedy port to 0.17. Essentially, everything about the runtime has changed, which means that this will likely be a significant lift. That will be a bit of coding for sure, but even before getting to that I have to identify how to surface native events to application code, and also providing a custom rendering function. I'll look a bit more tonight, but being realistic here, I wouldn't expect a quick turnaround.

If anybody has any pointers, I'm all ears.

@ffos
Copy link

ffos commented Jul 29, 2016

Thank you for the update - helps me prioritize stuff on my end.

@jadbox
Copy link

jadbox commented Sep 15, 2016

@seliopou Can you outline the "Elm's native interface" changes that affect elm-d3? I.e. what are the tasks required to migrate up?

@rvazquezglez
Copy link

rvazquezglez commented Nov 10, 2016

Edit: @MonsieurCactus mentioned the issue (and possible solutions) with native code on a pull request.

@hoelzro wrote a great article about a migration from 0.16 to 0.17

@jadbox, I think @seliopou is referring to how elm-d3 uses the JavaScript files located in this directory

It seems that the native API changes very quickly and it is not recommended

@francisdb
Copy link
Author

As long as the work is more or less mechanical / testing I can also help out.

@rvazquezglez
Copy link

rvazquezglez commented Nov 10, 2016

@francisdb the mechanical part (syntax changes, dependency versions update) was already done by @MonsieurCactus. As I see, these are the steps required:

  1. Change the native code to ports (requires understanding of both)
  2. Change the uses of Signal to Commands (this was a conceptual change introduced in 0.17)

@l0rinc
Copy link

l0rinc commented Jan 29, 2017

0.18?

@clevinson
Copy link

clevinson commented May 10, 2017

Looking to use elm + d3 for a project i'm about to begin work on... Is there any status update on this (0.18 compatibility now)?

I'm also happy to help w/ any mechanical / testing work to be done.

@mango314
Copy link

@clevinson what would you like to see in a port from Elm to D3? Elm is not at v0.18 and D3 is not at v4. Therefore I might open a new issue.

I noticed I am approximate many of D3's canvas and SVG features purely within Elm. Not 100% of systematically. I have considered going back to work on this.

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

8 participants