Skip to content

Specification#4

Merged
kasiabulat merged 5 commits intomasterfrom
kasiabulat/spec
Aug 1, 2019
Merged

Specification#4
kasiabulat merged 5 commits intomasterfrom
kasiabulat/spec

Conversation

@kasiabulat
Copy link
Owner

@kasiabulat kasiabulat commented Jul 31, 2019

@kasiabulat
Copy link
Owner Author

I'm working on adding the following sections:

  • Design choices
  • Implementation details
  • Open questions

Copy link

@ahsonkhan ahsonkhan left a comment

Choose a reason for hiding this comment

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

Otherwise, looks great. Thanks for the write-up.

@JamesNK
Copy link

JamesNK commented Jul 31, 2019

I have lots of thoughts on this. What is the best way to communicate? Will there be a design meeting to go over the API?

Co-Authored-By: Ahson Khan <ahkha@microsoft.com>
Co-Authored-By: James Newton-King <james@newtonking.com>
@kasiabulat
Copy link
Owner Author

I have lots of thoughts on this. What is the best way to communicate? Will there be a design meeting to go over the API?

We don't have the specific date yet, but the API review meeting is planned to be organized in August after more functionalities are implemented. We can probably also organize a smaller meeting earlier or discuss some issues on github. @ericstj ?@terrajobst ?

@joperezr
Copy link

I have lots of thoughts on this. What is the best way to communicate? Will there be a design meeting to go over the API?

As @kasiabulat pointed out, the idea for now is to start working on the implementation with the API that she has worked on so far and has been reviewed by a small set of devs from the .NET team. Also as she pointed out the idea is to have an all up ApiReview for this project around August, to which we were planning on forwarding that invite to you in order to get your input.

If you have concrete feedback of big pitfalls that we might be running into it would be valuable to point them out now, and we can discuss anything else during the API Review in August. Does that sound good?

Copy link

@joperezr joperezr left a comment

Choose a reason for hiding this comment

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

Doc looks good to me, thanks for getting this down @kasiabulat

@JamesNK
Copy link

JamesNK commented Aug 1, 2019

I think the main thing to consider is whether nodes track there own position in the JSON graph. That allows for properties like Parent, Next and Previous.

It adds some additional work. When a node is added to a parent (e.g. adding a JsonString to JsonArray) then you need to check if it already has a parent and make a copy if it has.

On the other hand it makes other things easier. You never need to worry about querying or writing JSON when someone has created a recursive loop:

JsonArray a = new JsonArray();
a.Add(a);

string s = a.ToString(); // Explode

Its a big design decision you need to make.

@kasiabulat
Copy link
Owner Author

I am merging it and I will create a PR to main corefx.

@kasiabulat kasiabulat merged commit 2fd512e into master Aug 1, 2019
@kasiabulat kasiabulat deleted the kasiabulat/spec branch August 1, 2019 15:48
kasiabulat added a commit that referenced this pull request Aug 1, 2019
* specification consisting of following sections added:
  - introduction
  - goals
  - todos
  - example scenarios
  - design choices
  - implementation details
  - open questions
  - useful links
* review comments included
kasiabulat added a commit that referenced this pull request Aug 10, 2019
* Specification (#4)

* specification consisting of following sections added:
  - introduction
  - goals
  - todos
  - example scenarios
  - design choices
  - implementation details
  - open questions
  - useful links
* review comments included
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants