bible-technology / scripture-burrito

Scripture Burrito Schema & Docs 🌯
http://docs.burrito.bible/
MIT License
21 stars 13 forks source link

Add npm support to scripture-burrito #203

Closed smorrison closed 4 years ago

smorrison commented 4 years ago

So that I can add programmatic validation to the document sample repos that I'm creating, I'd like to be able to import the schema definition as a Node package from github (and, eventually, the npm repo).

Adding package.json to the repo allows for installing via npm.

I defined the license as MIT in package.json, we should probably discuss this in the next meeting.

smorrison commented 4 years ago

@jag3773 this branch -seems- broken because TravisCI can't build, but it can't build because the travis jobs are broken, not because the change breaks the build.

I also see that you're moving the CI to use GitHub actions. Should I redo the PR to be built on the develop branch?

It's of some concern to me because validating the sample document I'm trying to write depends on being able to source the validation code from scripture-burrito, so this is a (minor) blocker for me. (I can work around it by importing from my dev branch for now).

jag3773 commented 4 years ago

@smorrison Everything needs to merge into develop first. You'll see that the Github Actions check out properly if you do it that way.

Also, note that there is a Github Action defined here https://github.com/bible-technology/sb_textStories/blob/master/.github/workflows/main.yml for validating a SB against the SB develop branch, which is suitable for our own development (but not for an NPM package).

Further, we'll actually have to cut a new release in order for validation to work, since 0.2.0-beta isn't a valid version according to the schema tagged as v0.2.0-beta :(

smorrison commented 4 years ago

@jag3773 Thanks for the reply, I'm going to base this PR on develop vs. master, which requires I re-base first.

Thanks also for the info on the validation action. I didn't know about it. I'll attribute that to still getting up to speed. I'll rebuild my sample on that.

Do you agree that this repo should eventually be published in npm? It seems obvious to me, but I haven't been involved in all discussion. Note that the prototype service that was being built when Mark was let go copies the schema into it's source tree (https://github.com/bible-technology/scripture-burrito-store-js/tree/master/schema/sb), which has already drifted from this repo.

jag3773 commented 4 years ago

The validation action is new as of yesterday, so you aren't behind!

Yes, I agree that an NPM package would be great. I think we'll want to officially bump everything to 0.2.0-beta.2 for everything to work together (which means that will need added to the meta_version enum).

smorrison commented 4 years ago

@jag3773 I made the changes, and even considered adding a 'test-python' script to use the python validation script, but decided against it as there's no facility for installing python dependencies.

jag3773 commented 4 years ago

@smorrison We probably should also setup an Action to handle the publishing to NPM based on our tags, e.g. https://github.com/marketplace/actions/publish-to-npm . Should that go into this PR too?

smorrison commented 4 years ago

@jag3773 wrt. publish to npm, I can add that. We'll need to be careful about versioning going forward.

I -assume- that the publish action would be on a new release only. Can you confirm?