Docs Sprint September 2011

On This Page

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?)