Skip to content

Document our public API #307

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

Closed
gsnedders opened this issue Oct 24, 2016 · 6 comments
Closed

Document our public API #307

gsnedders opened this issue Oct 24, 2016 · 6 comments
Milestone

Comments

@gsnedders
Copy link
Member

For semver to make any sense, we really need to actually define what our public API is. We probably want to do this both through documentation and through the de-facto Python standard of underscore-prefixing (though that will likely break stuff again, le sight, but if people are using the private API they'll likely complain when we do break it in some 1.x release).

@gsnedders gsnedders added this to the 1.0 milestone Oct 24, 2016
@spacekitteh
Copy link

Is this being worked on at all?

@gsnedders
Copy link
Member Author

@spacekitteh Pretty much no; I basically got burnt out from a bunch of OSS stuff I was doing in my spare time, this included, so pretty much nothing has happened since the last release.

@spacekitteh
Copy link

Sorry to hear :(

@gsnedders
Copy link
Member Author

gsnedders commented Dec 29, 2016

FWIW, I have two separate transatlantic trips next month, so I'm hopeful of getting something done then because flights to the West Coast are just Too Damned Long to not run out of things to do.

Half the problem with documenting the API is the fact that some of the arcane parts I don't really know what the API even is. There's basically two halves: the half that almost anyone could write (realistically, this extends little beyond what's included in html5lib.__all__ as well as the treewalker and filter API), and then there's the other half (primarily the treebuilder API) which I couldn't write.

If anyone wants to help with the former, absolutely do! I can't promise I'll be great at dealing with PRs, though, for the reasons above… :\ Even if I don't get back to you in a timely manner, there's every chance your work will end up getting included when I do start working on it again.

@willkg
Copy link
Contributor

willkg commented Nov 27, 2017

I think the punch list is something like this:

  1. Go through the README and docs/movingparts.rst and verifying examples work and cover only publicly supported API bits
  2. Figure out why treebuilders is listed twice in subpackages with different things in it
  3. Go through html5lib.constants and document publicly supported API bits
  4. Go through html5lib.html5parser and document publicly supported API bits
  5. Go through html5lib.serializer and document publicly supported API bits
  6. Go through html5lib.filters and document publicly supported API bits
  7. Go through html5lib.treebuilders and document publicly supported API bits
  8. Go through html5lib.treewalkers and document publicly supported API bits
  9. Go through html5lib.treeadapters and document publicly supported API bits

I'll go through these one at a time, do a first pass, and set up a PR.

@willkg
Copy link
Contributor

willkg commented Dec 5, 2017

The work here finished except for any post-review work to do. Just waiting on @gsnedders to review PR #386.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants