Skip to content
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

Update architecture documentation #100

Closed
11 of 12 tasks
arnecls opened this issue Apr 24, 2017 · 4 comments
Closed
11 of 12 tasks

Update architecture documentation #100

arnecls opened this issue Apr 24, 2017 · 4 comments
Projects
Milestone

Comments

@arnecls
Copy link
Contributor

arnecls commented Apr 24, 2017

The current architecture documentation (read the docs RST files) are still from the 0.3.x era.
Change them according to the new structure and add FAQ about architecture by plugin developers.

  • High level architecture of message passing
  • Explaining the "stream width" (ModulatorQueues)
  • Purpose of the different plugin types
  • Components, purposes and type hierarchy
  • Basic implementation examples

Update - Open tasks before v0.5.0 release:

  • Finalise release notes
  • Describe Metadata handling in Terminology
  • Add Guide to update plugins from v0.4 to v0.5
  • Run gollum benchmark of v0.4 VS v0.5
  • Add docs for metrics
  • Add docs for healthchecks
  • Describe buffered- and batched-producer components (optional)
@arnecls arnecls added this to the v0.5.0 milestone Apr 24, 2017
@arnecls arnecls added this to Backlog in v0.5.0 Apr 24, 2017
@ppar
Copy link
Contributor

ppar commented May 5, 2017

For the end user docs, rIght now there's a lot of duplication between comments in the source code and the .rst files (namely plugins' config settings), and also between the .rst files themselves (a lot of them begin with the same boilerplate text).

How can we avoid this? Can we autogenerate some/all of the docs from the sources and use some include mechanism for the repeated parts?

A visual architecture overview would be really useful for the end user as well, to explain how the plugins do (and don't) interact, and where to implement specific functionality (e.g. that messages can only be modified at the consumer stage and not during routing and the retry logic (#99) rationale behind this).

@arnecls
Copy link
Contributor Author

arnecls commented May 5, 2017

The rst files are generated by an internal tool from the source code comments.

@ppar
Copy link
Contributor

ppar commented May 5, 2017

Which one and how?

I couldn't find any, the top level makefile doesn't have a target for this and docs/Makefile just seems to generate docs from the .rsts

@arnecls
Copy link
Contributor Author

arnecls commented May 5, 2017

It's called gollum-docs and it's one big, ugly file with a lot of unchecked assumptions in it.
It's on the list of the "things-to-clean-up-and-release".
Probably a good thing to do along with this task.

@arnecls arnecls moved this from Backlog to In progress in v0.5.0 Jul 21, 2017
@arnecls arnecls moved this from In progress to Done in v0.5.0 Aug 9, 2017
@arnecls arnecls closed this as completed Aug 9, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

No branches or pull requests

2 participants