Docs Sprint September 2011

Docs Sprint September 2011

Logistics

Date: Thursday and Friday, Sept. 8 & 9, 2011
Time: 9:30am EDT - 4:30pm EDT each day
Coordination: the #fluid-work IRC Channel

Where to work

  • If you're not sure where to put something, ask in the channel or make your best guess. We'll be cleaning things up after the sprint, so don't fret about it.

  • When you create or update a page, please add a link to it to this page (if there is none).

Topics and Suggested Authors

Must-Haves (API changes)

  • Update the Table of Contents API to reflect any changes (Anastasia)

  • Review new UI Enhancer docs (Michelle?)

    • UI Enhancer API docs

    • Tutorial - Page Enhancer

      • check for missing/wrong things (e.g. list of options or configurable subcomponents is correct?)

      • fill in actual text descriptions of things

      • add missing examples, etc.

  • Review and update existing IoC docs (Yura)

    • These docs have become out-of-date with recent changes to the framework

  • How to create something with IoC (Yura)

    • simple program as basis for a tutorial

    • James/Caroline's data visualization app?

    • Update How to Use Infusion IoC to more current recommendations

  • Framework Debugging Guide (Antranig and Yura)

    • How to turn on logging

    • How to read the logging output

    • Firebug tips?

    • Where in a typical demands-resolution call stack to look for things, and what to look for

    • Maybe include a "trouble-shooting" section: symptoms of typical problems and what the likely causes are

  • Pseudoarguments (Colin?)

    • how to use them

    • how to define them using the "argumentMap" option

  • Update the docs on Renderer Decorators (Michelle?)

    • including new functions:

      • fluid.renderer.getDecoratorComponents (most useful)

      • fluid.renderer.clearDecorators

      • fluid.renderer.visitDecorators

Would Really Be Great

  • General Guide To Working With IoC-Enabled Infusion Components (Anastasia?)

    • what it means when a component has subcomponents

    • the difference between configuring using options and configuring using demands blocks

    • understanding specificity of demands blocks, and how to figure out how specific to make yours

    • understanding why you may have to replicate the contents of an existing demands blocks in your demands blocks

    • etc.

  • UI Options 1.4 Upgrade tutorial (Mike?)

  • Docs on component tree expanders (Colin?)

    • e.g. deferredCall, deferredInvokeCall, deferredFetcher and noexpand

  • UI Options "instructional demos" (Anastasia)

  • Explain "instantiators" (Yura?)

  • A page on fluid.fetchResources (Cindy?)

    • including the use of "fetchClass" to enable "Proleptic Joinsets"

  • Event Priorities (Mike?)

    • specify "priority: <val>" as an option

    • acceptable vals are "first", "last" or integers; higher numbers go first, lower numbers go last; negatives allowed;

    • default is "undefined" if not specified; typeFounts automatically first

    • how sorted for undefined? last, except for "last"

If We Have Time

  • Component priorities (Cindy?)

  • Demands blocks: when to use nickname, when to use fully qualified (Michelle/Colin/Yura?)

  • fluid.progressiveCheckerForComponent (Colin?)

  • Document new framework functions (everyone!)

    • NOTE: We have a template for function API pages - if you're going to work on them, ask how to use it

    • fluid.tryCatch

    • fluid.log (new parameters)

    • fluid.hasGrade

    • fluid.typeTag

    • fluid.typeFount

      • also a gradeName of the same name?

      • currently used by the progressive checkers.

      • requires an option named "targetTypeName"

      • returns a type tag with that name

      • note: creation priority defaults to "first" (but can be overriden)

      • general purpose of a typeFount might be to define something that might guide the instantiation of other component (e.g. the progressive checkers)

      • see http://issues.fluidproject.org/browse/FLUID-4191

    • fluid.deferredCall

    • fluid.deferredInvokeCall

    • fluid.expander.deferredCall

    • fluid.expander.noexpand

    • fluid.expandOptions

    • fluid.fetchContextReference

    • fluid.invoke

    • fluid.makeFreeInvoker

    • fluid.makeInvoker

    • fluid.noexpand

    • fluid.parseContextReference

    • fluid.renderContextReference

    • fluid.resolveEnvironment

    • fluid.singleThreadLocal

    • fluid.staticEnvironment.environmentClass

    • fluid.threadLocal

    • fluid.freeInstantiator

    • fluid.explode

    • fluid.explodeSelectionToInputs

    • fluid.extractTemplate

    • fluid.resolveMessageSource

    • fluid.ariaLabeller

    • ... and many more!

  • Tutorial: Creating an FSS Theme (Anastasia)

  • Tutorials for renderer component tree expanders (Yura?)

    • e.g. fluid.renderer.repeat, fluid.renderer.condition, etc.

  • Aria labeller (Heidi?)