-
Notifications
You must be signed in to change notification settings - Fork 38
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
FYI: Different Java port of jsonata-js #275
Comments
OK...
this sound interesting.
We will test it
BR
Martin
28.07.2023 20:40:09 Nathaniel Mills ***@***.***>:
…
I received this email today and wanted to inform this group of the work:
Dear Andrew and Nathan,
first of all we’d like to thank you guys for inventing Jsonata, we really love it and it’s a great fit to our Low Code platform!
Today we’re happy to release jsonata-java:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=5F2biZ7k_fLQw0oXAaur51jGAcLkZlAHC2IlXcJWOMs&e=
jsonata-java is an Apache-licensed 1:1 Java port of the jsonata-js reference that stays as close to the original source structure as possible.
Why?
We needed a Jsonata in the (Java) backend that behaves exactly like Jsonata in the frontend,
100% compatible, 100% reference test coverage(*), small and performant.
How?
Wherever possible we used language constructs as close as possible to the Javascript ones:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava_blob_main_README.md-23design&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=ri1xfL7inFcg-Uduai27l_dECw9_eGNEoloteU8havM&e=
Also we decided to use no third party dependencies, so it can easily be used with any JSON lib (Jackson, Gson, …),
and can also very easily be compiled as native executable
(a CLI Jsonata like jq is on our laundry list - TBD)
It would be great to get your feedback and touch base.
It would also be great to be listed as additional Jsonata implementation, is there a central Jsonata impl page?
Thanks in advance, and best regards,
Uli Walther and Andi Eberhart
(*) Well maybe 98%… out of the >1600 test cases there are around 30 described differences - most of them unsupported $toMillis etc features:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava_blob_main_test_test-2Doverrides.json&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=AHW6LXVE05rzcj_sQvGfUoVr1x1koxCi5EGkEa3TPvM&e=
To be honest to get to 100% test coverage was more work than expected (the last 20% nearly cost as much as the 80% before that, as is always the case…)
—
Dashjoin GmbH
Rapidly Build Data-Driven Apps
https://urldefense.proofpoint.com/v2/url?u=https-3A__dashjoin.com&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=ibiFKl2V7JeRqRcPwYEURAqP3gvmWgAp2oUZBrPDf4w&e= <https://urldefense.proofpoint.com/v2/url?u=https-3A__dashjoin.com_&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=aDDfn6ecV3HibeyUxv-3l0PDD8okmU6j9R558HZkrCU&e= >
—
Reply to this email directly, view it on GitHub[#275], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AAJ3CV3CINJ755CZDO2J3ZTXSQBQPANCNFSM6AAAAAA233G3TA].
You are receiving this because you are subscribed to this thread.[Verfolgungsbild][https://github.com/notifications/beacon/AAJ3CVYWYH6SFXYUW6SWOQDXSQBQPA5CNFSM6AAAAAA233G3TCWGG33NNVSW45C7OR4XAZNFJFZXG5LFVJRW63LNMVXHIX3JMTHGZZERNI.gif]
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I received this email today and wanted to inform this group of the work:
Dear Andrew and Nathan,
first of all we’d like to thank you guys for inventing Jsonata, we really love it and it’s a great fit to our Low Code platform!
Today we’re happy to release jsonata-java:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=5F2biZ7k_fLQw0oXAaur51jGAcLkZlAHC2IlXcJWOMs&e=
jsonata-java is an Apache-licensed 1:1 Java port of the jsonata-js reference that stays as close to the original source structure as possible.
Why?
We needed a Jsonata in the (Java) backend that behaves exactly like Jsonata in the frontend,
100% compatible, 100% reference test coverage(*), small and performant.
How?
Wherever possible we used language constructs as close as possible to the Javascript ones:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava_blob_main_README.md-23design&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=ri1xfL7inFcg-Uduai27l_dECw9_eGNEoloteU8havM&e=
Also we decided to use no third party dependencies, so it can easily be used with any JSON lib (Jackson, Gson, …),
and can also very easily be compiled as native executable
(a CLI Jsonata like jq is on our laundry list - TBD)
It would be great to get your feedback and touch base.
It would also be great to be listed as additional Jsonata implementation, is there a central Jsonata impl page?
Thanks in advance, and best regards,
Uli Walther and Andi Eberhart
(*) Well maybe 98%… out of the >1600 test cases there are around 30 described differences - most of them unsupported $toMillis etc features:
https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dashjoin_jsonata-2Djava_blob_main_test_test-2Doverrides.json&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=AHW6LXVE05rzcj_sQvGfUoVr1x1koxCi5EGkEa3TPvM&e=
To be honest to get to 100% test coverage was more work than expected (the last 20% nearly cost as much as the 80% before that, as is always the case…)
—
Dashjoin GmbH
Rapidly Build Data-Driven Apps
https://urldefense.proofpoint.com/v2/url?u=https-3A__dashjoin.com&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=ibiFKl2V7JeRqRcPwYEURAqP3gvmWgAp2oUZBrPDf4w&e= <https://urldefense.proofpoint.com/v2/url?u=https-3A__dashjoin.com_&d=DwIGaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=EYX3AEyQAwmdbWQyzpxSNg&m=BfBxUJe2_1afrlE5S6vRVP6THcp5kqviZYYTZ120GdFdSABXgPWJLG9ITr2_a18T&s=aDDfn6ecV3HibeyUxv-3l0PDD8okmU6j9R558HZkrCU&e= >
The text was updated successfully, but these errors were encountered: