-
-
Notifications
You must be signed in to change notification settings - Fork 1
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
Set up build, add basic files #1
Conversation
LICENSE is from the JSON Schema spec repo, replacing "JSON Schema Specification Authors" with "JSON Schema Organization". CONTRIBUTING.md is a highly condensed adaptation of the file in the JSON Schema spec repo. BACKGROUND.md is mostly stuff that was in appendixes of an early draft of a proposal that does not need to be part of a standard at all. There's too much of it to put in the README, but I got feedback that the material was very useful for some folks. Makefile is adapted from the IETF HTTP APIs working group spec repository. The only change is to set the CSS to the style used for published I-Ds. For some reason, that is not the deafult. The presence of "lib/" is .gitignore is because that is where the Makefile checks out the tools and creates a virtual env.
There's a proposed JSON Path usage for Add it in if you like. |
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. Minor editorial comment.
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.
This looks mostly fine to me other than a couple corrections I commented on inline. My only concern is the license. Didn't we find that the JSON Schema license was problematic? It would probably be a good idea not to carry that over here. I think something simple like MIT would be a better choice.
That use-case is exactly the kind of thing my vision for a JSON Reference media type is all about. The same idea can be applied to data being validated by JSON Schema, which is what I implemented several years ago and called Hyperjump Validation. Doing something similar with a JSON querying language like JSON Path was another application of the concept that I was thinking about at the time. |
Glad @gregsdennis brought it up- if there are any other discussions or uses around that align with what you're doing, please let me know or just open a PR and add them later. I just kind of poked around until I had what felt like "enough" but there wasn't exactly a metric involved. |
@jdesrosiers please let me know if this wording feels correct. I am happy to change it further. Regarding the license, yes but then there was this PR that was recently merged and the license is from there. I did just now copy over the text from the README in that repo that's also part of that PR, which I had not noticed before. [EDIT: Originally forgot the OAS 3.1 part but fixed just now] |
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.
The changes are fine, just a small typo.
Co-authored-by: Jason Desrosiers <jdesrosi@gmail.com>
My understanding was that we can't/shouldn't change the license because people have already been using it under the old license. The change in that PR was ok only because it was fixing an ambiguity, but the preference was to go with something different entirely. Since it's apparently not ok to change the license later, I just don't want us to get locked in to something we don't want to get stuck with. I think we should check with @Relequestual since he was way more involved in the license discussion than I was an probably has an opinion. |
@jdesrosiers ah, I did not know that about the license, I wasn't really paying that much attention to it. Hopefully @Relequestual can weigh in on Monday. I don't have an opinion on what it should be, I'll happily put in whatever is considered appropriate. |
Some color on the LICENSE (initially opinionless more or less):
All the above being said... My opinion probably agrees with the suggestion here, that I'd personally skip dual licensing until/unless someone has a reason to. I'd probably just go with the BSD 3-clause (which is half of what's in that file, and legal from OpenJS claimed was more common than BSD 2-clause at this point EDIT: actually the reason they gave was "because it’s arguably slightly more protective of contributors"), and let someone come along later and ask us to dual license under something else if there's ever a reason it's needed (I can't imagine one). But yeah that allows us to be flexible without needing to worry about putting cats back in bags after. The only exception would be if large portions of what's here come from previous other repos (like the spec repo), in which case it's already dual licensed because the place it came from was (in which case for our sanity we should probably stick exactly as is). Hope some of that makes sense (and doesn't involve any armchair lawyering, which I of course am not). |
The license should probably continue to say "Authors" or "Contributors" because "JSON Schema Organization" isn't a legal entity for purposes of copyright, and even if a legal entity was named, either the authors would have to transfer their copyright, or that would have to be clear from context (e.g. it was produced as a "work for hire") |
@Julian since the specifications here are essentially extracted from the JSON Schema spec repo, it sounds like we should actually just keep the spec repo license after all. @awwright good catch, I'll make it "specification authors" in general since "JSON Schema Specification Authors" isn't quite right for this repo and we don't yet have a single named specification here. |
If that's the case then yeah agreed! |
Yup, that's right.
Yup. What constitutes "large portions"? That would be a legal question. However, I feel it's fine to find that out if the questions ever arise. The content of the spec has been shuffled around and rewritten so much that I imagine it's very hard in some situations to find the original author. I feel it makes the most sense to start this repo under a single license such as BSD(three-clause) or MIT. I understand MIT is closer to two-clause BSD. I think I personally prefer three-clause, but I'm not likely to dig into this spec writing much. |
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 like this is off to a great start. Made a few comments and suggestions.
I'd like to see badges added to the repo readme as per the community repo (https://www.repostatus.org as appropriate). Feel free to cover in this PR or create a new issue. |
Co-authored-by: Ben Hutton <relequestual@gmail.com>
GitHub auto-creates LICENSE.md with these contents for the MIT license.
And remove referencess to obsolete communication channels.
I chatted with @Relequestual on IM and he told me it's OK to merge this now. |
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.
I can't signal approval post merge so this will have to do =]
LICENSE is from the JSON Schema spec repo, replacing "JSON Schema Specification Authors" with
"JSON Schema Organization".
CONTRIBUTING.md is a highly condensed adaptation of the file in the JSON Schema spec repo.
BACKGROUND.md is mostly stuff that was in appendixes of an early draft of a proposal that does not need to be part of a standard at all. There's too much of it to put in the README, but I got feedback that the material was very useful for some folks.
Makefile is adapted from the IETF HTTP APIs working group spec repository. The only change is to set the CSS to the style used for published I-Ds. For some reason, that is not the deafult.
The presence of "lib/" is .gitignore is because that is where the Makefile checks out the tools and creates a virtual env.