otterdog icon indicating copy to clipboard operation
otterdog copied to clipboard

Replace jsonbender with jsonata for transformation of json documents

Open netomi opened this issue 1 year ago • 14 comments

Python implementation: https://pypi.org/project/jsonata-python/

netomi avatar Sep 16 '24 06:09 netomi

JSONBender works great and I would like to continue using it, though the repo on GitHub has been deleted.

netomi avatar Sep 27 '24 08:09 netomi

Did you try to reach out to the original developer? It may be worth initiating a conversation. WDYT?

mbarbero avatar Sep 27 '24 08:09 mbarbero

An option would also be to fork it ourselves.

It works great, though the choice of DSL is also a bit questionable and would be a good thing to change.

jsonata is also a good option, though JSONBender does exactly what I need and with jsonata you need to go through the hoops of writing a transformation in json and parse it later on. With JSONBender everything is in python code which is clearly an advantage.

netomi avatar Sep 27 '24 08:09 netomi

I did not reach out to the original author as it was created > 10 years ago and the last release from the fork was 6 years ago, so long time dead already, no hopes of any revival.

netomi avatar Sep 27 '24 08:09 netomi

I did not reach out to the original author as it was created > 10 years ago and the last release from the fork was 6 years ago, so long time dead already, no hopes of any revival.

gotcha, makes sense.

An option would also be to fork it ourselves.

I think I would be less worried if we were doing that. However, I cannot find anything license information in the pypi package. Do we know the original license of the code?

mbarbero avatar Sep 27 '24 08:09 mbarbero

here is a link to another still existent fork updated to the latest released version https://github.com/Formlabs/jsonbender/blob/develop/LICENSE

should be like MIT

netomi avatar Sep 27 '24 09:09 netomi

the original repo does not have a LICENSE though: https://github.com/eduardostalinho/jsonbender,

actually all commits come from this developer https://github.com/etandel so that code was copied around it seems. I cant find any reference to the original code on GitHub by this user.

netomi avatar Sep 27 '24 09:09 netomi

From a IP perspective, it is very shady. Did it pass the EF IP review?

mbarbero avatar Sep 27 '24 09:09 mbarbero

yes

netomi avatar Sep 27 '24 09:09 netomi

Ok, then please fork this with the license EMO has detected. Do you want to make the fork internal to otterdog, or as a separate repo in CSI?

mbarbero avatar Sep 27 '24 09:09 mbarbero

hmm I want to reach out to the original author first and see what he has to say. He seems to be active just there is no trace of this project anymore from him.

netomi avatar Sep 27 '24 10:09 netomi

looking at his linkedin profile, he worked for the company that published JSONBender to pypi. So this repo was the canonical source.

netomi avatar Sep 27 '24 11:09 netomi

so I did not receive any answer from the original author of JSONBender on keybase.

netomi avatar Oct 07 '24 14:10 netomi

so I am inclined to rewrite JSONBender with a DSL that would be more fitting. It should not be too hard, using jsonata feels a bit like an overkill.

netomi avatar Nov 14 '24 21:11 netomi