-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Does it really need index.json? #336
Comments
That's because the clients came out first, and then the index.json. And some clients don't update to use them. The new python client and the node.js client are using index.json When I develop the python client, I think the index.json is a good idea. It's help the program find out whether we support this command and where is the command.
Hmmm, that's ture, it may be annoying sometimes. That's because the index.json need to be updated every time when there is a new command. But only modify the pages won't make any difference. In my opinion, it should be ok. Or, we can come out a better solution? |
That's a very good question. I agree with @lord63, there's definitely value in having it because it simplifies some clients, and could even allows for new features (e.g. search, autocomplete...). Unfortunately some clients can't easily generate metadata because they don't download all pages, either for simplicity reasons or because it's not practical. For example @Ostera's http://www.ostera.io/tldr.js/ probably wouldn't want to download and process all That being said I agree with @igorshubovych that the current Note that also currently run a linter on each commit (requires Ruby, etc...). I'm very keen to keep the linter as part of this repo. However since it doesn't create any files & simply reports success/failure, we could remove the pre-commit hook and just have Travis report the status of linting. This will mean contributors no longer need Ruby to contribute, but we still get nice linting happening, and the index being rebuilt behind the scenes. Thoughts? |
Doesn't Travis or some other github hook / integration support this kind of automatic processing? (I'm asking, I don't know). If we could have some sort of bot or post-commit hook running every time someone makes a commit, we wouldn't need a separate metadata repository. Alternatively (as I've suggested elsewhere), we could simply set up a Travis testing script with informative error messages when something's missing, like the index edit. That way contributors would be informed of the necessary steps to fix their PR (but in an automated manner, rather than as a comment from another human being, which may feel more like nitpicking), and the repo could even be configured to now allow merging of PRs unless the Travis tests pass :) |
Good question, I've never tried creating files / committing to the same repo with Travis. Maybe it works well, hopefully it doesn't re-trigger the build in an infinite loop :) Not sure what is means for access as well, i.e. Travis would need write access to everyone's branches. Definitely worth investigating though. The nice thing if we can get Travis / something else to build |
👍 to @waldyrious, worst case we can use a separate branch If Travis really only checks PR's to master, once they're merged, we need a github post-receive webhook to trigger an index build, commit, and push to the I'll try to have a look at this over the weekend, but ping me if you know of anything. |
I haven't really used Git in this way before, is that a common practice having a branch with completely different data? (i.e. not intended to be merged). I know that's how Github does |
Travis CI integration for my fork: Commit: |
P.S. |
Some updates on my Travis investigation:
You can see the latest build here: The code is in travis branch: |
I have some progress on this index.json:
The results can be seen here: And the pages zip-archive is available here: TODO:
|
Your sir, raise some good points. I like this.
|
The last two items on that TODO List can be turned into discrete issues for any of us to act upon. I'll close this since the conversation appears to have reached an end. We already have #343, and #344 Ultimately, from the Closing this! Great work @igorshubovych |
pages/index.json is a binary file which contains index of pages.
There are several issues with it:
There are several solutions to that:
What do you think?
The text was updated successfully, but these errors were encountered: