-
-
Notifications
You must be signed in to change notification settings - Fork 97
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
GraalVM native-image build support #337
Conversation
Needs an update to pass the tests. |
tests.edn
Outdated
@@ -3,6 +3,6 @@ | |||
#_{:id :cljs | |||
:type :kaocha.type/cljs | |||
:ns-patterns ["datahike.test."]} | |||
{:id :integration | |||
#_{:id :integration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs to be uncommented and working
Blocked by #542 |
b20f3e2
to
5127656
Compare
5127656
to
4f4bdf1
Compare
@jsmassa Except for the This PR now only makes sure that the |
* fixup! ci: add pipeline for native-image
* fixup! ci: correct env backward-compatibility-tests (#569)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. But as you say, it needs proper release versions for the dependencies and some benchmark checks
* ci: add native-image test
Shorten command line tool name.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me in general.
I am personally not a big fan of the package / directory name 'impl' though as it doesn't really say anything about the content. Since 'java' is taken, I guess I would choose something like 'interop' or 'native' in this case. But since we will have to do some restructuring anyway when changing to polylith, I am also ok with leaving it as is for now.
I agree, I strongly dislike |
* Use konserve synchronous IO. Support native-image compilation. * Remove sleeping to make times match. * Handler InterruptedException. * ci: add pipeline for native-image * fixup! ci: add pipeline for native-image * 336 native image cli (#568) * fixup! ci: add pipeline for native-image * ci: correct env backward-compatibility-tests (#569) * changed ci and script to improve local run (#570) * fixup! ci: correct env backward-compatibility-tests (#569) * from-datom slipped in again during rebase; remove. * Use released versions of hh-tree and konserve. * ci: add native-image test (#573) * ci: add native-image test * Try konserve version that detects small headers for backwards compat. * Use release version of konserve * Fix reflection error. * Update Java API, export as native shared lib, update native cli. * Add resources. * Complete CLI interface. * Update help for cli. * Add CBOR serialization. * Fix format. * Support different formats for transact piping and inputs. * Handle variable input/output formats, exceptions in shared library. Shorten command line tool name. * Handle memory of return type through callback. * Complete first stage shared library and cli. * Fix cicrcleci path to cli. * Ensure UTF8 encoding. * Use base64 encoding for CBOR for now to avoid char* truncation. Co-authored-by: Timo Kramer <fw-github@timokramer.de> Co-authored-by: Timo Kramer <4785848+TimoKramer@users.noreply.github.com> Co-authored-by: Judith <j.massa@lambdaforge.io>
* Use konserve synchronous IO. Support native-image compilation. * Remove sleeping to make times match. * Handler InterruptedException. * ci: add pipeline for native-image * fixup! ci: add pipeline for native-image * 336 native image cli (#568) * fixup! ci: add pipeline for native-image * ci: correct env backward-compatibility-tests (#569) * changed ci and script to improve local run (#570) * fixup! ci: correct env backward-compatibility-tests (#569) * from-datom slipped in again during rebase; remove. * Use released versions of hh-tree and konserve. * ci: add native-image test (#573) * ci: add native-image test * Try konserve version that detects small headers for backwards compat. * Use release version of konserve * Fix reflection error. * Update Java API, export as native shared lib, update native cli. * Add resources. * Complete CLI interface. * Update help for cli. * Add CBOR serialization. * Fix format. * Support different formats for transact piping and inputs. * Handle variable input/output formats, exceptions in shared library. Shorten command line tool name. * Handle memory of return type through callback. * Complete first stage shared library and cli. * Fix cicrcleci path to cli. * Ensure UTF8 encoding. * Use base64 encoding for CBOR for now to avoid char* truncation. Co-authored-by: Timo Kramer <fw-github@timokramer.de> Co-authored-by: Timo Kramer <4785848+TimoKramer@users.noreply.github.com> Co-authored-by: Judith <j.massa@lambdaforge.io>
* Use konserve synchronous IO. Support native-image compilation. * Remove sleeping to make times match. * Handler InterruptedException. * ci: add pipeline for native-image * fixup! ci: add pipeline for native-image * 336 native image cli (#568) * fixup! ci: add pipeline for native-image * ci: correct env backward-compatibility-tests (#569) * changed ci and script to improve local run (#570) * fixup! ci: correct env backward-compatibility-tests (#569) * from-datom slipped in again during rebase; remove. * Use released versions of hh-tree and konserve. * ci: add native-image test (#573) * ci: add native-image test * Try konserve version that detects small headers for backwards compat. * Use release version of konserve * Fix reflection error. * Update Java API, export as native shared lib, update native cli. * Add resources. * Complete CLI interface. * Update help for cli. * Add CBOR serialization. * Fix format. * Support different formats for transact piping and inputs. * Handle variable input/output formats, exceptions in shared library. Shorten command line tool name. * Handle memory of return type through callback. * Complete first stage shared library and cli. * Fix cicrcleci path to cli. * Ensure UTF8 encoding. * Use base64 encoding for CBOR for now to avoid char* truncation. Co-authored-by: Timo Kramer <fw-github@timokramer.de> Co-authored-by: Timo Kramer <4785848+TimoKramer@users.noreply.github.com> Co-authored-by: Judith <j.massa@lambdaforge.io>
* Use konserve synchronous IO. Support native-image compilation. * Remove sleeping to make times match. * Handler InterruptedException. * ci: add pipeline for native-image * fixup! ci: add pipeline for native-image * 336 native image cli (#568) * fixup! ci: add pipeline for native-image * ci: correct env backward-compatibility-tests (#569) * changed ci and script to improve local run (#570) * fixup! ci: correct env backward-compatibility-tests (#569) * from-datom slipped in again during rebase; remove. * Use released versions of hh-tree and konserve. * ci: add native-image test (#573) * ci: add native-image test * Try konserve version that detects small headers for backwards compat. * Use release version of konserve * Fix reflection error. * Update Java API, export as native shared lib, update native cli. * Add resources. * Complete CLI interface. * Update help for cli. * Add CBOR serialization. * Fix format. * Support different formats for transact piping and inputs. * Handle variable input/output formats, exceptions in shared library. Shorten command line tool name. * Handle memory of return type through callback. * Complete first stage shared library and cli. * Fix cicrcleci path to cli. * Ensure UTF8 encoding. * Use base64 encoding for CBOR for now to avoid char* truncation. Co-authored-by: Timo Kramer <fw-github@timokramer.de> Co-authored-by: Timo Kramer <4785848+TimoKramer@users.noreply.github.com> Co-authored-by: Judith <j.massa@lambdaforge.io>
This branch provides a prototype CLI tools built as a native image. The build uses https://github.com/taylorwood/clj.native-image. Preliminary documentation for the CLI can be found under
doc/cli.md
.