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

Separate jrsonnet-evaluator and stdlib implementation #82

Closed
wants to merge 45 commits into from

Conversation

CertainLach
Copy link
Owner

No description provided.

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
It had no practical use, because it was not comment-preserving
There is in-progress version based on rowan parser, however it shares
no code with current implementation

BREAKING CHANGE: It is no longer possible to build jrsonnet-fmt

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
There was special support to refer to native functions for stdlib, as
otherwise `std.native` was not implementable.
However, now evaluator contains support for fancy builtins, and it is
possible to reimplement standard library without any parser magic.

BREAKING CHANGE: This syntax no longer works: $intrinsic(name),
$intrinsicId, $intrinsicThisFile

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Implementation will be moved to jrsonnet-stdlib crate

BREAKING CHANGE: `State::with_stdlib` was removed

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
New builtins system allows to split standard library to standalone crate

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
When calling functions with wrong arguments, evaluator will now suggest
correct function signature

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Helper for fancier building of user contexts

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Previously `slice` method was only in `ArrayVal`, and for strings it
needed to be implemented manually

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Deep cache only has sense in presence of standalone self, and most of
the time it only takes unnecessary space, and takes time to fill/rehash
the cache map.

Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
@CertainLach CertainLach added the enhancement New feature or request label Aug 7, 2022
@CertainLach CertainLach added this to the v0.5.0 milestone Aug 7, 2022
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Copy link
Collaborator

@JarvisCraft JarvisCraft left a 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, although there is a number of small fixes and a pack of typo/phrasing fixes.

bindings/jsonnet/src/val_extract.rs Outdated Show resolved Hide resolved
bindings/jsonnet/src/val_extract.rs Outdated Show resolved Hide resolved
bindings/jsonnet/src/val_extract.rs Outdated Show resolved Hide resolved
bindings/jsonnet/src/val_extract.rs Outdated Show resolved Hide resolved
bindings/jsonnet/src/val_make.rs Outdated Show resolved Hide resolved
crates/jrsonnet-stdlib/src/math.rs Outdated Show resolved Hide resolved
crates/jrsonnet-stdlib/src/sort.rs Outdated Show resolved Hide resolved
crates/jrsonnet-stdlib/src/sort.rs Outdated Show resolved Hide resolved
crates/jrsonnet-stdlib/src/types.rs Show resolved Hide resolved
tests/src/lib.rs Outdated Show resolved Hide resolved
@JarvisCraft JarvisCraft self-requested a review September 15, 2022 11:16
Copy link
Collaborator

@JarvisCraft JarvisCraft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything looks good although there is a number of small fixes and enhancements

CertainLach and others added 8 commits September 18, 2022 10:24
Co-authored-by: Petr Portnov | PROgrm_JARvis <gh@progrm-jarvis.ru>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
@CertainLach CertainLach disabled auto-merge October 15, 2022 18:38
@CertainLach CertainLach deleted the split-stdlib branch October 17, 2022 18:43
CertainLach added a commit that referenced this pull request Oct 17, 2022
 Separate jrsonnet-evaluator and stdlib implementation #82
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants