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

JSON schema importer #4695

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

porunov
Copy link
Member

@porunov porunov commented Oct 14, 2024

Add ability to import schema defined in JSON format via file path or directly via JSON string.
This implementation doesn't migrate or update already defined schema elements. Neither it removes existing defined elements.
SchemaInitStrategy is defined in mind to be able to implement migration and more advance schema management, even so current JSON schema importer implementation is fairly simple. This work is made in hopes to simplify schema definition for beginners, speed-up prototypes development based on JanusGraph, and simplify testing.

Notes to reviewers

Best way to understand how this schema importer work is to read added documentation page docs/schema/schema-init-strategies.md.
By default none of the functionality is affected. New functionality can be activated only by providing non-default values to schema.init.strategy configuration option.


Thank you for contributing to JanusGraph!

In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:

For all changes:

  • Is there an issue associated with this PR? Is it referenced in the commit message?
  • Does your PR body contain #xyz where xyz is the issue number you are trying to resolve?
  • Has your PR been rebased against the latest commit within the target branch (typically master)?
  • Is your initial contribution a single, squashed commit?

For code changes:

  • Have you written and/or updated unit tests to verify your changes?
  • If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
  • If applicable, have you updated the LICENSE.txt file, including the main LICENSE.txt file in the root of this repository?
  • If applicable, have you updated the NOTICE.txt file, including the main NOTICE.txt file found in the root of this repository?

For documentation related changes:

  • Have you ensured that format looks appropriate for the output in which it is rendered?

@porunov porunov added this to the Release v1.1.0 milestone Oct 14, 2024
@porunov porunov force-pushed the feature/json-schema-importer branch 2 times, most recently from 1131de9 to 3adfaae Compare October 14, 2024 16:48
Add ability to import schema defined in JSON format via file path or directly via JSON string.
This implementation doesn't migrate or update already defined schema elements. Neither it removes existing defined elements.
SchemaInitStrategy is defined in mind to be able to implement migration and more advance schema management, even so current JSON schema importer implementation is fairly simple. This work is made in hopes to simplify schema definition for beginners, speed-up prototypes development based on JanusGraph, and simplify testing.

Signed-off-by: Oleksandr Porunov <[email protected]>
@porunov porunov force-pushed the feature/json-schema-importer branch from 3adfaae to 6cd7609 Compare October 15, 2024 04:11
@porunov porunov marked this pull request as ready for review October 15, 2024 04:19
@porunov porunov requested a review from a team October 15, 2024 11:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant