pyramid
pyramid copied to clipboard
Update all the diagrams with SVG versions
All diagrams should complement each other and be consistent in design. Some may be "zoom" or "detail" views, kind of like an inset on paper maps.
Here's the repo where I push each version of a diagram until it is ready for a PR to the Pyramid repo: https://github.com/stevepiercy/pyramid_request_diagram
Here are all the diagrams that I have in my queue:
- [x] Request Processing (See #1472)
- [ ] Request Processing with Exceptions
- [x] Router (See #1479)
- [ ] Traversal
- [ ] Pyramid Onion
- [ ] Pyramid excview_tween
@mmerickel @blaflamme @mcdonc @tseaver @bertjwregeer Feedback and suggestions requested.
Re: the first two diagrams: I don't know about the value of having two such similar diagrams -- let's just adopt the "with exceptions" one and use it wherever.
The text size / spacing is all messed up on the third one.
Similar font issues for the fourth one.
The fifth looks fine.
The sixth is obviously NRFPT.
Excellent work on the diagrams (they help immensely).
An issue: The diagrams appear to look correct in Chrome and Opera, but Firefox is showing text running outside of some boxes and also overlapping text in some boxes.
Is this a known issue/concern?
@jsivak need more info. They all look fine to me in latest version of FF.
https://github.com/stevepiercy/pyramid_request_diagram/blob/master/pyramid_onion.svg
Router executes the tweens...
WSGI -> Router -> Tweens -> View -> Tweens -> Router -> WSGI
@bertjwregeer I currently have three tweens, toolbar_tween
, excview_tween
, and tm_tween
. Should I keep them separate or combine them into the single "Tweens"?
toolbar_tween is only ever there when the toolbar is active. It is registered by the user. excview_tween you can leave, it is always there. It is registered by Pyramid. tm_tween will soon wrap all of the above, but it too is only loaded when it is registered by the user.
Thanks, that helps a lot. I think I can come up with a visualization of optional tweens.
@bertjwregeer well, I toyed around with visual concepts, but none worked, so I just went with "(optional)" https://github.com/stevepiercy/pyramid_request_diagram/blob/master/pyramid_onion.svg
@stevepiercy I'm checking from home now and you're right (no display problems), they look correct. I saw the issue from work; will have to re-check it on Monday.
@stevepiercy , you're right, the SVG images are fine.. I had a corrupt profile in my Firefox at work.
Huge fan of diagrams (I'm a visual learner). I'm digging into Request Processing with Pyramid 2.0, and am trying to understand where the newer 2.0 Security Policy is invoked (vs the deprecated authentication and authorization policies), and can't exactly determine if it happens at the same spot (first in view pipeline) or not. Does the diagram need an update, or does the document need to update the language?
Yeah, both the legacy authz/authn policy and the new security policy use the same secured_view
view deriver, so it's in the same spot in the pipeline.