ozanmakes / markup.rocks

Pandoc based document editor and converter in your browser.
http://markup.rocks
MIT License
382 stars 22 forks source link

License #1

Closed jgm closed 9 years ago

jgm commented 9 years ago

Neat. Shouldn't you license this GPL, to respect pandoc's GPL license?

ozanmakes commented 9 years ago

To be honest, I haven't really paid attention to license. My fork of pandoc is not included in this repo and my modifications are publicly available (I'm not building a different version of this for http://markup.rocks) so I don't think this app is bound by pandoc's license. Please feel free to correct me though.

ozanmakes commented 9 years ago

Oh, I just realized you're the author of pandoc, thanks for the amazing software! Please let me know if you have any concerns about this.

jgm commented 9 years ago

From https://github.com/jgm/pandoc/blob/master/COPYING

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

So I think that technically, you can distribute the code in this repository under any license you choose. However, the derivative work created when you combine this code with your modified pandoc code to produce a JavaScript program is covered by the terms of the GPL and should conform to it. So it might be clearer if you just licensed all of this as GPL. Otherwise there's a risk people may not realize that the compiled result is GPL. But I think it's up to you. (Also: I'm not a lawyer.) At the very least you might want to note in the README that pandoc is GPL, so the compiled JS code will be too.

jgm commented 9 years ago

If your code is pretty general purpose and could be used with any X-to-Y markup processor, then maybe that's good reason to leave it with a liberal license. (In fact, I might be tempted to use the UI code with commonmark.js!) But I think a note in the README about the derived JS code being subject to GPL is a good idea.

ozanmakes commented 9 years ago

@jgm I'm definitely thinking about adding other JS based backends that increase the performance of some paths like Markdown -> HTML. My reasoning was this is mostly glue code and an interface that ties various other tools together in a non-widespread way and people should be free to grab any useful snippet they find in my (poor) Haskell code to make their browser app work as there is a definite shortage of documentation regarding libraries like Reflex.

I realize the fact that I'm also hosting this on a (albeit non-profit) website and delivering the compiler output that includes Pandoc instead of using it in a server-side service puts me on a tough spot. I think this matter is unrelated to the repo's license as even if it was GPL this wouldn't have anything to do with the file hosted at http://markup.rocks/static/all.js which might just as well be generated by cat pandoc.exe >> all.js.

I've updated the Readme. Please let me know if this is clear enough for you.

jgm commented 9 years ago

+++ Ozan Sener [May 08 15 14:13 ]:

[1]@jgm I'm definitely thinking about adding other JS based backends that increase the performance of some paths like Markdown -> HTML.

The problem here is that no available JS based parser will parse Markdown the way pandoc does. (In fact, no two will agree with each other---leaving aside commonmark-compliant implementations.)

I've updated the [4]Readme. Please let me know if this is clear enough for you.

Sure, this seems fine (except for a typo, "it's" for "its").

ozanmakes commented 9 years ago

I agree, this is why I was not eager to do that but it might be useful for someone using this tool to preview Markdown documents instead of converting them.

Thanks for your understanding and insight about the license.