You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by Joe Schaefer <jo...@yahoo.com> on 2014/03/16 17:44:58 UTC

reconsidering the Apache CMS...

As it so happens I am interested in working on supporting
thrift's use case as a potential user of the Apache CMS.
While the CMS works well for massive projects there are
things it could do better at supporting for more moderate
sized sites like thrift's.

I'd therefore like to engage you folks in a brainstorming session
about what sorts of features you want for your site and to find
simple ways of supporting those features for you.

Thanks.

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
You guys have a really bad habit of cramming stuff on the
line immediately following a heading and that's just never
going to work well with any markdown parser.  Work with the
parser, not against it, by keeping separate textual objects
separated by blank lines.  Note: this does NOT apply to lists,
but it sure as hell does to headings followed with an HTML block
on the immediate next line.  Where ever you do that I guarantee
there are some bogus html constructs in the markdown parser's output
while the parser chokes on what you mean for it to do.  Yes there are
bugs in any markdown parser, and perhaps this qualifies, but IMO it's
not even readable to humans which is the first-order target for
any markdown document.

I "fixed" the js.md tutorial so its rendering cleanly on staging,
but I really would like to see the snippet stuff reapplied to that
file instead.  Just remember to do it like all the other md files
that use the snippet and keep it separated from your other content
with surrounding blank lines.



> On Wednesday, March 26, 2014 6:32 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Just added a newline before the [snippet:...] stuff.
> Working fine now... keep in mind what's happening behind 
> the scenes: the snippet wrapper view parses the [snippet:..]
> block into an object method call via django: {{ 
> snippetA.fetch|markdown }}.
> Then the templating engine parses that and converts it into
> HTML, which is fed back into the document for a final full
> markdown pass.  When that markdown pass gets confused about
> the snippet HTML generated by the template pass, you get lots
> of weird rendering artifacts caused by markdown doing stuff with
> the indentation in the HTML (which it thinks is still raw markdown).
> 
> To avoid problems in *.md snippet files, set the [snippet: ...]
> block at the start of a new line that's surrounded be blank lines
> above and below.  Maybe this markdown HTML parsing issue will be
> resolved in a future release of the python markdown package, but
> it shouldn't matter if you are careful and understand what's going on.
> 
> 
> 
> 
>>  On Wednesday, March 26, 2014 6:23 PM, Roger Meier 
> <ro...@bufferoverflow.ch> wrote:
>>  > Hi Joe
>> 
>>  I tried to use
>>  [snippet:path=tutorial/js/tutorial.html:lang=js:lines=47,65]
>>  within
>>  content/tutorial/js.md
>> 
>>  there is a rendering issue, related to js?
>>  i used lang=javascript and lang=js with the same effect
>> 
>>  -roger
>> 
>> 
>>  On 26.03.2014 20:56, Joe Schaefer wrote:
>>>   Yay! Thanks Roger that's great to hear!
>>> 
>>> 
>>> 
>>>>   On Wednesday, March 26, 2014 3:53 PM, Roger Meier 
>>  <ro...@bufferoverflow.ch> wrote:
>>>>>   Joe, it helps.
>>>>   the process to update the site is much faster and easier as I 
> thought
>>>>   before...
>>>> 
>>>>   thanks
>>>>   -roger
>>>> 
>>>>   On 26.03.2014 04:00, Joe Schaefer wrote:
>>>>>     I made a start at updating the website docs for committers
>>>>>     here at 
>>  http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite
>>>>> 
>>>>>     I left the old stuff in there for someone to go through and 
>>  replace it with
>>>>>     the comparable text for dealing with the CMS.
>>>>> 
>>>>>     HTH
>>>>> 
>>>>> 
>>>>> 
>>>>>>     On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer
>>>>   <jo...@yahoo.com> wrote:
>>>>>>>     FWIW until you get accustomed to the CMS 
>>  bookmarklet/webgui
>>>>>>     stuff I recommend downloading 
> http://s.apache.org/cms-cli
>>>>>>     and installing the CPAN prereqs for it on your local 
> host.
>>>>>>     That way you can publish, which is a separate step 
> involving
>>>>>>     the script, while you are working on the svn tree.  If 
> you
>>>>>>     name the script publish.pl invoking it as
>>>>>> 
>>>>>>     % ./publish.pl thrift
>>>>>> 
>>>>>>     will get you where you need to be.  You might even 
> consider
>>>>>>     setting up an svn external to pull that file out of svn 
> and
>>>>>>     place it at the base of your cms tree for committers to 
> use.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>       On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer
>>>>>>     <jo...@yahoo.com> wrote:
>>>>>>>       > Done Jake thanks!  One remark for Roger...
>>>>>>> 
>>>>>>>       The file extension used for stuff in content/test/ 
> 
>>  really
>>>>   doesn't
>>>>>>     matter as
>>>>>>>       far as the build goes.  What you need to do is 
> supply a
>>>>   'lang=text'
>>>>>> 
>>>>>>>       argument to each snippet that is not a native 
> markdown 
>>  file; the
>>>>   build will
>>>>>> 
>>>>>>>       automatically strip file extensions off the 
> internal 
>>  links in the
>>>>   markdown
>>>>>>>       sources so httpd will do the right thing and 
> resolve 
>>  the
>>>>   extension via the
>>>>>>>       MultiViews feature.
>>>>>>> 
>>>>>>>       In the case of test/ThriftTest.thrift, I'd 
>>  recommend changing
>>>>   the
>>>>>>     extension
>>>>>>>       to .txt or even .md (in the content/test/ tree on 
> the 
>>  site
>>>>   sources in svn,
>>>>>>     not
>>>>>>>       the code sources in git) so the CMS's webgui 
> will 
>>  fetch you a
>>>>   decent
>>>>>>     editor
>>>>>>>       for that file.  Otherwise again the extension 
>>  doesn't matter-
>>>>   the build
>>>>>>     will
>>>>>>>       always convert it to html.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>        On Tuesday, March 25, 2014 9:34 AM, Jake 
> Farrell
>>>>>>>       <jf...@apache.org> wrote:
>>>>>>>>        > Hey Joe
>>>>>>>>        Thanks for making the additions to the Apache 
> CMS 
>>  to meet
>>>>   our use
>>>>>>     case.
>>>>>>>       I'm
>>>>>>>>        not seeing any blockers at the moment, lets 
> cut 
>>  over and we
>>>>   can fix
>>>>>>     any
>>>>>>>>        edge cases if needed
>>>>>>>> 
>>>>>>>>        -Jake
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>        On Mon, Mar 24, 2014 at 1:39 PM, Joseph 
> Schaefer
>>>>>>>>        <jo...@yahoo.com>wrote:
>>>>>>>> 
>>>>>>>>>         Done.  Anything else we need to look at 
>>  before going
>>>>   live?
>>>>>>>>> 
>>>>>>>>>         Sent from my iPhone
>>>>>>>>> 
>>>>>>>>>         > On Mar 23, 2014, at 3:53 PM, Roger 
> Meier
>>>>>>>>        <ro...@bufferoverflow.ch>
>>>>>>>>>         wrote:
>>>>>>>>>         >
>>>>>>>>>         > any idea how to fix this URL:
>>>>>>>>>         >
>>>>   http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>>>>>>         > we need to keep the filename for 
> working 
>>  links
>>>>   within the
>>>>>>>>>         > test/README.md file.
>>>>>>>>>         >
>>>>>>>>>         > What about a footer for docs 
> genertated 
>>  from
>>>>   source tree?
>>>>>>>>>         > [snippet:path=test/README.md, 
> footer=1]
>>>>>>>>>         >
>>>>>>>>>         > I added the following snippet to
>>>>   content/test/index.md:
>>>>>>>>>         > ---SNIP---
>>>>>>>>>         > This page was generated from Apache 
> 
>>  Thrift's
>>>>   **source
>>>>>>     tree
>>>>>>>       docs**:
>>>>>>>>>         > [test/README.md](
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>> 
>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>>>>>>         )
>>>>>>>>>         > ---SNIP---
>>>>>>>>>         >
>>>>>>>>>         > would be great to get this 
> generated 
>>  into the page
>>>>   via
>>>>>>     snippet.
>>>>>>>>>         >
>>>>>>>>>         > -roger
>>>>>>>>>         >
>>>>>>>>>         >
>>>>>>>>>         >> On 23.03.2014 19:04, Joe 
> Schaefer 
>>  wrote:
>>>>>>>>>         >> The CMS codebase as well as the 
> 
>>  thrift build
>>>>   system
>>>>>>>>>         >> already supports it Roger, 
> someone 
>>  just needs
>>>>   to create
>>>>>>>>>         >> the files in the content tree 
> that 
>>  point at
>>>>   the source
>>>>>>>>>         >> files in the git repo.  If you 
> want 
>>  to script
>>>>   this
>>>>>>     process
>>>>>>>>>         >> in scripting language du jour, 
> go 
>>  for it, but
>>>>   I cannot
>>>>>>>>>         >> justify spending contractor 
> time 
>>  doing this
>>>>   work for the
>>>>>>>>>         >> community's behalf as it is 
> 
>>  unlikely to be
>>>>   needed
>>>>>>>       elsewhere.
>>>>>>>>>         >> I would think you only need the 
> 
>>  script to run
>>>>   when some
>>>>>>>>>         >> path to a README.md file 
> changes in 
>>  the
>>>>   thrift.git tree,
>>>>>>>>>         >> so it doesn't need to be 
>>  incorporated into
>>>>   each site
>>>>>> 
>>>>>>>       build.
>>>>>>>>>         >>
>>>>>>>>>         >>
>>>>>>>>>         >>
>>>>>>>>>         >>>> On Sunday, March 23, 
> 2014 
>>  9:15 AM,
>>>>   Roger Meier
>>>>>>     <
>>>>>>>>>        roger@bufferoverflow.ch> wrote:
>>>>>>>>>         >>>> Hi
>>>>>>>>>         >>>
>>>>>>>>>         >>>> On 23.03.2014 03:19, 
> Jake 
>>  Farrell
>>>>   wrote:
>>>>>>>>>         >>>>  Hey Joe
>>>>>>>>>         >>>>  Reviewing the staging 
> site 
>>  it looks
>>>>   like its
>>>>>>     almost
>>>>>>>       99%
>>>>>>>>        there other
>>>>>>>>>         than
>>>>>>>>>         >>>>  some styling within 
> the 
>>  code
>>>>   snippets. I'm
>>>>>>     good
>>>>>>>       if we
>>>>>>>>        want to cut
>>>>>>>>>         over
>>>>>>>>>         >>> to
>>>>>>>>>         >>>>  using this and then 
> work on 
>>  the
>>>>   additional
>>>>>>     features
>>>>>>>       that
>>>>>>>>        had been
>>>>>>>>>         mentioned
>>>>>>>>>         >>>>  afterwords. Any 
> objections 
>>  to cutting
>>>>   over?
>>>>>>>>>         >>> I would really like to see 
> this 
>>  automatic
>>>>   README.md
>>>>>>>       includes
>>>>>>>>        from
>>>>>>>>>         source
>>>>>>>>>         >>> tree, to have a real 
> additional 
>>  feature
>>>>   beside of
>>>>>>     what we
>>>>>>> 
>>>>>>>>        already have
>>>>>>>>>         >>> today.
>>>>>>>>>         >>>
>>>>>>>>>         >>> I'm absolutely with 
> you.
>>>>>>>>>         >>> Apache projects shall use 
> other 
>>  Apache
>>>>   projects
>>>>>>     whenever
>>>>>>>>        possible.
>>>>>>>>>         >>>
>>>>>>>>>         >>>>  On Sat, Mar 22, 2014 
> at 
>>  4:36 PM, Joe
>>>>   Schaefer
>>>>>>>>>         >>> 
>>  <jo...@yahoo.com>wrote:
>>>>>>>>>         >>>>
>>>>>>>>>         >>>>>  May I suggest a 
> script 
>>  that
>>>>   creates files
>>>>>>     in
>>>>>>>       content/
>>>>>>>>>         >>>>>  containing a 
> single 
>>  line
>>>>>>>>>         >>>>>
>>>>>>>>>         >>>>>  [snippet:path=...]
>>>>>>>>>         >>> this sounds like a plan
>>>>>>>>>         >>>
>>>>>>>>>         >>>>>
>>>>>>>>>         >>>>>  (with no 
> 'lang' 
>>  argument)
>>>>   that lets
>>>>>>     the
>>>>>>>       CMS
>>>>>>>>        pull raw content
>>>>>>>>>         >>> from
>>>>>>>>>         >>>>>  thrift.git
>>>>>>>>>         >>>>>  and add it 
> directly to 
>>  the built
>>>>   pages.
>>>>>>     That
>>>>>>>       way you
>>>>>>>>        only need to
>>>>>>>>>         run
>>>>>>>>>         >>> the
>>>>>>>>>         >>>>>  script that 
> generates 
>>  these files
>>>>   when a
>>>>>>     path
>>>>>>>       changes
>>>>>>>>        in your
>>>>>>>>>         >>> thrift.git
>>>>>>>>>         >>>>>  repo.
>>>>>>>>>         >>> What I had in mind is a 
>>  automatic search
>>>>   of
>>>>>>     README.md
>>>>>>>       files
>>>>>>>>        across the
>>>>>>>>>         >>> source tree and generate 
> the 
>>  site with
>>>>   these
>>>>>>>       automatically.
>>>>>>>>>         >>> Kind of a central 
> controller 
>>  that maps all
>>>>   the
>>>>>>     URL's.
>>>>>>>>>         >>> no additional work when a 
> new 
>>  README.md
>>>>   file is
>>>>>>     added.
>>>>>>>>>         >>> however, a script can do 
> this as 
>>  interim
>>>>   soultion.
>>>>>>>>>         >>>>>
>>>>>>>>>         >>>>>  You can commit 
> directly 
>>  to the
>>>>   cms svn tree
>>>>>>     or
>>>>>>>       via
>>>>>>>>        the webgui which
>>>>>>>>>         >>> does
>>>>>>>>>         >>>>>  the same thing.
>>>>>>>>>         >>> Great!
>>>>>>>>>         >>>
>>>>>>>>>         >>> What about local preview 
> when 
>>  doing perl
>>>>>>     modifications?
>>>>>>>>>         >>>
>>>>>>>>>         >>> -roger
>>>>>>>>>         >>>
>>>>>>>>>         >>>
>>>>>>>>>         >>>>>
>>>>>>>>>         >>>>>
>>>>>>>>>         >>>>>>  On Saturday, 
> March 
>>  22, 2014
>>>>   4:20 PM,
>>>>>>     Roger
>>>>>>>       Meier
>>>>>>>>        <
>>>>>>>>>         >>>>>  
>>  roger@bufferoverflow.ch>
>>>>   wrote:
>>>>>>>>>         >>>>>>>  I still 
> see 
>>  some issues
>>>>   and still
>>>>>>     miss
>>>>>>>       to
>>>>>>>>        feature mentioned.
>>>>>>>>>         >>>>>>  Now we have 
>>  nonoc.ws and
>>>>   I'm able
>>>>>>     to
>>>>>>>       hack
>>>>>>>>        this a bit.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  We had no real 
> big 
>>  issue, the
>>>>   thing I
>>>>>>     missed
>>>>>>>       was
>>>>>>>>        the code snippet
>>>>>>>>>         >>> thing
>>>>>>>>>         >>>>>>  and this is in 
> on 
>>  nanoc.ws
>>>>   and now also
>>>>>>     on
>>>>>>>       Apache
>>>>>>>>        CMS.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  The thing we 
> really 
>>  need is
>>>>   the
>>>>>>>       documentation
>>>>>>>>        located within source
>>>>>>>>>         >>> code
>>>>>>>>>         >>>>>>  integrated on 
> the 
>>  web site.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  most hosting 
>>  platforms do
>>>>   render
>>>>>>     README.md
>>>>>>>       and
>>>>>>>>        that's why lot
>>>>>>>>>         >>> of doc
>>>>>>>>>         >>>>>>  will stay 
> within 
>>  the code and
>>>>   we should
>>>>>> 
>>>>>>>       benefit
>>>>>>>>        as well by
>>>>>>>>>         >>> rendering
>>>>>>>>>         >>>>>>  that to the 
> web 
>>  site and
>>>>   enhance the
>>>>>>>>        documentation very easily.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  I would like 
> to 
>>  render the 41
>>>>   README.md
>>>>>> 
>>>>>>>       files to
>>>>>>>>        with the following
>>>>>>>>>         >>>>>>  pattern, 
> that's 
>>  a must
>>>>   have before
>>>>>>>       switching
>>>>>>>>        to another CMS.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  test/README.md 
> 
>>  =>
>>>>>>     thrift.apache.org/test
>>>>>>>>>         >>>>>>  test/STATUS.md 
> 
>>  =>
>>>>>>>>        thrift.apache.org/test/status
>>>>>>>>>         >>>>>>  
> test/keys/README.md 
>>  =>
>>>>>>>>        thrift.apache.org/test/keys
>>>>>>>>>         >>>>>>  
>>  lib/<lang>/README.md
>>>>   =>
>>>>>>>>        thrift.apache.org/lib/<lang>
>>>>>>>>>         >>>>>>
>>>>   lib/<lang>/test/README.md =>
>>>>>>>>>         >>> 
>>  thrift.apache.org/lib/<lang>/test
>>>>>>>>>         >>>>>>
>>>>   lib/<lang>/examples/README.md
>>>>>>     =>
>>>>>>>>>         >>>>>>
>>>>>>     thrift.apache.org/lib/<lang>/examples
>>>>>>>>>         >>>>>>  
>>  compiler/cpp/README.md =>
>>>>>>>>        thrift.apache.org/compiler
>>>>>>>>>         >>>>>>  
> debian/README.md 
>>  =>
>>>>>>>       thrift.apache.org/debian
>>>>>>>>>         >>>>>>
>>>>   contrib/<topic>/README.md =>
>>>>>>>>>         >>> 
> thrift.apache.org/<topic>
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  CPP tutorial 
> seems 
>>  to be
>>>>   broken on
>>>>>>     staging.
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  Do you commit 
> to
>>>>>>>>>         >>>
>>>>>>    https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>>>>>         >>>>>>  or is it web 
> gui 
>>  only?
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  How do you 
> generate 
>>  the site
>>>>   on your
>>>>>>     local
>>>>>>>>        machine?
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  Should I 
> reactivate 
>>  my perl
>>>>   or do we
>>>>>>     stay
>>>>>>>       with
>>>>>>>>        ruby?
>>>>>>>>>         >>>>>>  Committers and 
> 
>>  contributors,
>>>>   what do
>>>>>>     you
>>>>>>>       think?
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>  all the best
>>>>>>>>>         >>>>>>  -roger
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>
>>>>>>>>>         >>>>>>>  On 
> 22.03.2014 
>>  18:07, Joe
>>>>   Schaefer
>>>>>>     wrote:
>>>>>>>>>         >>>>>>>
>>>>>>>>>         >>>>>>>
>>>>>>>>>         >>>>>>>    Ok 
> I've 
>>  now done
>>>>   the basic
>>>>>>>       necessities
>>>>>>>>        involved in
>>>>>>>>>         >>> porting
>>>>>>>>>         >>>>>>>    the site 
> 
>>  over.  Links
>>>>   have been
>>>>>>>       adjusted,
>>>>>>>>        templates ported,
>>>>>>>>>         >>> files
>>>>>>>>>         >>>>>  created,
>>>>>>>>>         >>>>>>>    snippet 
>>  feature
>>>>   activated.  At
>>>>>>     this
>>>>>>>       point
>>>>>>>>        I'm happy to
>>>>>>>>>         >>> declare
>>>>>>>>>         >>>>>>>    victory 
> and 
>>  migrate the
>>>>   thrift
>>>>>>     live
>>>>>>>       site
>>>>>>>>        over, as anything
>>>>>>>>>         >>> broken that
>>>>>>>>>         >>>>>>>    still 
> remains 
>>  can be
>>>>   dealt with
>>>>>>     on a
>>>>>>>>        per-page basis with the
>>>>>>>>>         >>>>>  bookmarklet.
>>>>>>>>>         >>>>>>>
>>>>>>>>>         >>>>>>>
>>>>>>>>>         >>>>>>>
>>>>>>>>>         >>>>>>>>    On 
>>  Thursday, March
>>>>   20, 2014
>>>>>>     11:19
>>>>>>>       AM,
>>>>>>>>        Joe Schaefer
>>>>>>>>>         >>>>>>
>>>>   <jo...@yahoo.com> wrote:
>>>>>>>>>         >>>>>>>>>    
>>  Modulo some
>>>>   bizarre
>>>>>>     content
>>>>>>>>        truncation out of
>>>>>>>>>         >>> git-wip-us.apache.org
>>>>>>>>>         >>>>>>>>    the 
>>  snippet support
>>>>   is now
>>>>>>     active.
>>>>>>>       At
>>>>>>>>        this point I think
>>>>>>>>>         >>> all the build
>>>>>>>>>         >>>>>>>>    
> support 
>>  you need in
>>>>   this
>>>>>>     project
>>>>>>>       to
>>>>>>>>        support every type of
>>>>>>>>>         >>>>>  brainstorming
>>>>>>>>>         >>>>>>>>    
> activity 
>>  we've
>>>>   discussed
>>>>>>     is
>>>>>>>       now
>>>>>>>>        there, so it's
>>>>>>>>>         >>> just up to you
>>>>>>>>>         >>>>>>  guys to
>>>>>>>>>         >>>>>>>>    now 
>>  familiarize
>>>>   yourselves
>>>>>>     with
>>>>>>>       the
>>>>>>>>        build technology and
>>>>>>>>>         >>> how to apply
>>>>>>>>>         >>>>>>>>    it 
> to 
>>  your needs.
>>>>   The site
>>>>>>     builds
>>>>>>>       with
>>>>>>>>        snippet support
>>>>>>>>>         >>> are running
>>>>>>>>>         >>>>>>  around
>>>>>>>>>         >>>>>>>>    10 
>>  seconds, which
>>>>   is to be
>>>>>>>       expected
>>>>>>>>        with the network
>>>>>>>>>         >>> interactions
>>>>>>>>>         >>>>>>  involved.
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>    
> I'm 
>>  always
>>>>   willing to
>>>>>>     answer
>>>>>>>       any
>>>>>>>>        questions that come
>>>>>>>>>         >>> up in the
>>>>>>>>>         >>>>>>  interim,
>>>>>>>>>         >>>>>>>>    but 
> I 
>>  wish you guys
>>>>   the best
>>>>>>     of
>>>>>>>       luck in
>>>>>>>>        the remaining
>>>>>>>>>         >>> porting work to
>>>>>>>>>         >>>>>>  be done.
>>>>>>>>>         >>>>>>>>    All 
> I see 
>>  really
>>>>   are some
>>>>>>     links
>>>>>>>       that
>>>>>>>>        need to have the
>>>>>>>>>         >>> trailing slashes
>>>>>>>>>         >>>>>>  removed
>>>>>>>>>         >>>>>>>>    and 
>>  whatever <%=
>>>>   %>
>>>>>>     template
>>>>>>> 
>>>>>>>>        constructs that remain
>>>>>>>>>         >>> need to be
>>>>>>>>>         >>>>>>  ported to
>>>>>>>>>         >>>>>>>>    
> django.  
>>  So it
>>>>   should be
>>>>>>     smooth
>>>>>>>>        sailing, but as I said if
>>>>>>>>>         >>> you hit any
>>>>>>>>>         >>>>>>  snags
>>>>>>>>>         >>>>>>>>    
> holler.  
>>  I'd
>>>>   really like
>>>>>>     to
>>>>>>>       see the
>>>>>>>>        live site tech
>>>>>>>>>         >>> switched over to
>>>>>>>>>         >>>>>>  the cms
>>>>>>>>>         >>>>>>>>    
> stuff 
>>  before
>>>>   Apachecon ends
>>>>>>     in
>>>>>>>       early
>>>>>>>>        April, hint hint.
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  On
>>>>   Wednesday, March
>>>>>>     19,
>>>>>>>       2014
>>>>>>>>        10:41 PM, Joe Schaefer
>>>>>>>>>         >>>>>>>>>
>>>>>>     <jo...@yahoo.com>
>>>>>>> 
>>>>>>>>        wrote:
>>>>>>>>>         >>>>>>>>>    
>   
>>>   While I
>>>>   don't
>>>>>>     yet
>>>>>>>       know
>>>>>>>>        the url magic to
>>>>>>>>>         >>> support branches
>>>>>>>>>         >>>>>>  and tags
>>>>>>>>>         >>>>>>>>    in 
> git,
>>>>>>>>>         >>>>>>>>>    
>   I 
>>  can say
>>>>   that the
>>>>>>     snippet
>>>>>>>>        support is ready to play
>>>>>>>>>         >>> with.  I
>>>>>>>>>         >>>>>>  suggest just
>>>>>>>>>         >>>>>>>>>    
>   
>>  focusing on
>>>>   the
>>>>>>     /index.md
>>>>>>>       page
>>>>>>>>        first to see how it
>>>>>>>>>         >>> works in
>>>>>>>>>         >>>>>>  practice
>>>>>>>>>         >>>>>>>>    
> because
>>>>>>>>>         >>>>>>>>>    
>   
>>  once it's
>>>>   fully
>>>>>>     enabled
>>>>>>>       the
>>>>>>>>        build will break
>>>>>>>>>         >>> until all the
>>>>>>>>>         >>>>>>  snippet
>>>>>>>>>         >>>>>>>>    
> sources
>>>>>>>>>         >>>>>>>>>    
>   
>>  have been
>>>>   altered to
>>>>>>     conform
>>>>>>>       with
>>>>>>>>        the new style.
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   To 
>>  turn it on
>>>>   for
>>>>>>     index.md
>>>>>>>>        testing, there are a
>>>>>>>>>         >>> couple of things
>>>>>>>>>         >>>>>>  that need
>>>>>>>>>         >>>>>>>>    to
>>>>>>>>>         >>>>>>>>>    
>   
>>  happen. First
>>>>   the
>>>>>>>       [snippet:...]
>>>>>>>>        marker should be
>>>>>>>>>         >>> edited to be
>>>>>>>>>         >>>>>>>>    
>>  [XXXsnippet:...]
>>>>>>>>>         >>>>>>>>>    
>   to 
>>  enable
>>>>   testing
>>>>>>     without
>>>>>>>>        breaking the build.
>>>>>>>>>         >>> Second each marker
>>>>>>>>>         >>>>>>  contains
>>>>>>>>>         >>>>>>>>    a
>>>>>>>>>         >>>>>>>>>
>>>>   "token"
>>>>>>     argument
>>>>>>>>        instead of line numbers
>>>>>>>>>         >>> for more
>>>>>>>>>         >>>>>>  stability 
> under
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   
>>  edits to the
>>>>   source
>>>>>>     code.
>>>>>>>       The
>>>>>>>>        token argument is an
>>>>>>>>>         >>> arbitrary
>>>>>>>>>         >>>>>>  string that
>>>>>>>>>         >>>>>>>>    is
>>>>>>>>>         >>>>>>>>>    
>   
>>  used to
>>>>   denote the
>>>>>>>       boundaries of
>>>>>>>>        the snippet within
>>>>>>>>>         >>> the source
>>>>>>>>>         >>>>>>  code.
>>>>>>>>>         >>>>>>>>>
>>>>   ASF::Value::Snippet
>>>>>>     will
>>>>>>>       pull
>>>>>>>>        out the lines from
>>>>>>>>>         >>> the source file
>>>>>>>>>         >>>>>>  between
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         >>>>>>>>>    
>   
>>  lines that
>>>>   contain the
>>>>>>     token
>>>>>>> 
>>>>>>>>        argument and format
>>>>>>>>>         >>> them as a code
>>>>>>>>>         >>>>>>  snippet
>>>>>>>>>         >>>>>>>>    
> embedded
>>>>>>>>>         >>>>>>>>>    
>   
>>  into
>>>>   markdown. To get
>>>>>>>       started
>>>>>>>>        I'll copy over
>>>>>>>>>         >>> the code
>>>>>>>>>         >>>>>>  highlighting 
> css
>>>>>>>>>         >>>>>>>>    from
>>>>>>>>>         >>>>>>>>>
>>>>   www.apache.org but note
>>>>>>     that
>>>>>>>       this
>>>>>>>>        is all based on
>>>>>>>>>         >>> python pygments
>>>>>>>>>         >>>>>>  and there
>>>>>>>>>         >>>>>>>>    are
>>>>>>>>>         >>>>>>>>>    
>   a 
>>  variety of
>>>>   online css
>>>>>> 
>>>>>>>       files to
>>>>>>>>        choose from if
>>>>>>>>>         >>> this one is not
>>>>>>>>>         >>>>>>  to the
>>>>>>>>>         >>>>>>>>>    
>   
>>  group's
>>>>   liking.
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  On
>>>>   Wednesday,
>>>>>>     March 19,
>>>>>>>       2014
>>>>>>>>        4:16 PM, Joe
>>>>>>>>>         >>> Schaefer
>>>>>>>>>         >>>>>>>>>
>>>>>>>       <jo...@yahoo.com>
>>>>>>>>        wrote:
>>>>>>>>>         
>>>>>>>>>>>       
>>> 
>>>>   Sorry I need
>>>>>>     to
>>>>>>>       clarify
>>>>>>>>        with an example:
>>>>>>>>>         >>> look at
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>        http://thrift.staging.apache.org/tutorial/
>>>>>>>>>         >>> versus
>>>>>>>>>         >>>
>>>>   http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>>>         
>>>>>>>>>>>       
>>  former
>>>>   is
>>>>>>     generated
>>>>>>>       from
>>>>>>>>>         >>> content/tutorial/index.html
>>>>>>>>>         
>>>>>>>>>>>       
>>  and the
>>>>   latter
>>>>>>     from
>>>>>>>>        content/tutorial.md.  The
>>>>>>>>>         >>> latter file
>>>>>>>>>         
>>>>>>>>>>>       
>>  needs to
>>>>   be
>>>>>>     removed
>>>>>>>       from the
>>>>>>>>        tree now that
>>>>>>>>>         >>> it's content
>>>>>>>>>         
>>>>>>>>>>>       
>>  has been
>>>>   ported to
>>>>>>>>>         >>> 
> content/tutorial/index.html.  
>>  This
>>>>>>>>>         
>>>>>>>>>>>       
>>  uses
>>>>   django
>>>>>>     template
>>>>>>>>        inheritance to maintain
>>>>>>>>>         >>> simplicity.
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  Other
>>>>   directories
>>>>>>     that
>>>>>>>>        follow a similar
>>>>>>>>>         >>> pattern should
>>>>>>>>>         
>>>>>>>>>>>       
>>  also be
>>>>   ported in
>>>>>>     the
>>>>>>>       same
>>>>>>>>        fashion.
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>>   
>>        On
>>>>   Wednesday,
>>>>>> 
>>>>>>>       March 19,
>>>>>>>>        2014 9:46 AM, Joe
>>>>>>>>>         >>> Schaefer
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>     If
>>>>>>>       someone's
>>>>>>>>        looking for a way
>>>>>>>>>         >>> to help with
>>>>>>>>>         >>>>>>  the porting
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   effort,
>>>>>>     consider
>>>>>>>>        tackling the creation of
>>>>>>>>>         >>> an index.html
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   page in each
>>>>>>>       subdir of
>>>>>>>>        the content/ tree
>>>>>>>>>         >>> (other than
>>>>>>>>>         >>>>>>  the
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   base which
>>>>>>     has an
>>>>>>>>        /index.md).  The
>>>>>>>>>         >>> contents of the file
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   should be
>>>>>>     just
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   {%
>>>>>>     include
>>>>>>>>        'default' %}
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   (see the docs
>>>>>>     dir
>>>>>>>       for
>>>>>>>>        an example page
>>>>>>>>>         >>> that can be
>>>>>>>>>         >>>>>>  copied)
>>>>>>>>>         
>>>>>>>>>>>>   
>>        and
>>>>   the build
>>>>>> 
>>>>>>>       system
>>>>>>>>        will take care of
>>>>>>>>>         >>> generating the
>>>>>>>>>         >>>>>>  page
>>>>>>>>>         
>>>>>>>>>>>>   
>>        in
>>>>   a
>>>>>>     consistent
>>>>>>>       fashion
>>>>>>>>        with the rest of
>>>>>>>>>         >>> the site.
>>>>>>>>>         >>>>>>  Once
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   that is done
>>>>>>     there
>>>>>>>       are
>>>>>>>>        a lot of pages
>>>>>>>>>         >>> that function
>>>>>>>>>         >>>>>>  like
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   index pages
>>>>>>     but
>>>>>>>       are
>>>>>>>>        written in markdown
>>>>>>>>>         >>> that can be
>>>>>>>>>         >>>>>>  deleted,
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   like docs.md
>>>>>>     and
>>>>>>>       its
>>>>>>>>        ilk.  Nanoc
>>>>>>>>>         >>> transforms that file
>>>>>>>>>         >>>>>>  into
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>     /docs/index.html
>>>>>>>       but
>>>>>>>>        that's kinda
>>>>>>>>>         >>> crufty and not
>>>>>>>>>         >>>>>>  supported
>>>>>>>>>         
>>>>>>>>>>>>   
>>        by
>>>>   the CMS,
>>>>>>     which
>>>>>>>       only
>>>>>>>>        lets you alter
>>>>>>>>>         >>> file extensions
>>>>>>>>>         >>>>>>  not paths.
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   On
>>>>>>     Wednesday,
>>>>>>> 
>>>>>>>>        March 19, 2014 8:54
>>>>>>>>>         >>> AM, Joe Schaefer
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>     I
>>>>>>     just
>>>>>>>>        pencilled in snippet
>>>>>>>>>         >>> preprocessing
>>>>>>>>>         >>>>>>  support into
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   the
>>>>>>     thrift
>>>>>>>>        builds.  Once Jake and I
>>>>>>>>>         >>> have settled
>>>>>>>>>         >>>>>>  on the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   feature
>>>>>>     set
>>>>>>>       of
>>>>>>>>        ASF::Value::Snippet,
>>>>>>>>>         >>> and we have
>>>>>>>>>         >>>>>>  ported
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   the
>>>>>>     snippet
>>>>>>>>        calling text within the
>>>>>>>>>         >>> markdown pages
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   to the
>>>>>>     new
>>>>>>>       format,
>>>>>>>>        things will just
>>>>>>>>>         >>> work (knock on
>>>>>>>>>         >>>>>>  wood).
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          On
>>>>>>>       Wednesday,
>>>>>>>>        March 19, 2014
>>>>>>>>>         >>> 6:48 AM, Joseph
>>>>>>>>>         >>>>>>  Schaefer
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>>         >>> wrote:
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>> 
>>>>>>>       Sure I
>>>>>>>>        understand that
>>>>>>>>>         >>> need.  If
>>>>>>>>>         >>>>>>  there's a 
> way
>>>>>>>>>         >>>>>>>>    of
>>>>>>>>>         
>>>>>>>>>>>       
>>  pulling
>>>>   the
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   document
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     sources
>>>>>>>>        directly from the web I
>>>>>>>>>         >>> can parse the
>>>>>>>>>         >>>>>>  content
>>>>>>>>>         >>>>>>>>    to
>>>>>>>>>         >>>>>>>>>    
>   
>>  look for
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   snippet
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     markers
>>>>>>>       and
>>>>>>>>        make those
>>>>>>>>>         >>> available to the
>>>>>>>>>         >>>>>>  template
>>>>>>>>>         >>>>>>>>    
> system.
>>>>>>>>>         >>>>>>>>>>
>>>>   That's
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   pretty
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   much
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          how
>>>>>> 
>>>>>>>>        www.apache.org is
>>>>>>>>>         >>> generated.
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     Sent
>>>>>>>       from my
>>>>>>>>        iPhone
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>         On
>>>>>>>       Mar
>>>>>>>>        19, 2014, at 5:28
>>>>>>>>>         >>> AM, Henrique
>>>>>>>>>         >>>>>>  Mendonça
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>        <he...@apache.org>
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>         Hi
>>>>>>>       Joe,
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       Thanks
>>>>>>>>        for your effort. I
>>>>>>>>>         >>> just wanted to
>>>>>>>>>         >>>>>>  add that
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         >>>>>>>>>    
>   
>>  code
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   snippets
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   are a
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       crucial
>>>>>>>>        feature for this
>>>>>>>>>         >>> project, which
>>>>>>>>>         >>>>>>  has way
>>>>>>>>>         >>>>>>>>    more
>>>>>>>>>         >>>>>>>>>    
>   
>>  target
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   languages
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   than
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       active
>>>>>>>>        contributors. In
>>>>>>>>>         >>> our case,
>>>>>>>>>         >>>>>>  reducing 
> manual
>>>>>>>>>         >>>>>>>>>>
>>>>   maintenance
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   costs is
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   much
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       more
>>>>>>>>        important than the
>>>>>>>>>         >>> total site build
>>>>>>>>>         >>>>>>  time.
>>>>>>>>>         >>>>>>>>    
> Perhaps
>>>>>>>>>         >>>>>>>>>    
>   we
>>>>>>>>>         
>>>>>>>>>>>       
>>  can
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   also
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   solve
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       this in
>>>>>>>>        the CMS, though.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>         -
>>>>>>>>        Henrique
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       On
>>>>>>>>        19 March 2014
>>>>>>>>>         >>> 03:17, Joe Schaefer
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       A
>>>>>>>>        couple more thoughts
>>>>>>>>>         >>> regarding the
>>>>>>>>>         >>>>>>>>    
>>  background on
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  CMS...
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>>        bulk of the focus
>>>>>>>>>         >>> of the CMS up
>>>>>>>>>         >>>>>>  until now
>>>>>>>>>         >>>>>>>>    has
>>>>>>>>>         >>>>>>>>>    
>   
>>  been
>>>>>>>>>         
>>>>>>>>>>>       
>>  to
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        support really big
>>>>>>>>>         >>> sites like maven
>>>>>>>>>         >>>>>>  and
>>>>>>>>>         >>>>>>>>    
>>  openoffice,
>>>>>>>>>         >>>>>>>>>    
>   
>>  both
>>>>>>>>>         
>>>>>>>>>>>       
>>  of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        which have websites
>>>>>>>>>         >>> well over 5GB
>>>>>>>>>         >>>>>>  worth of
>>>>>>>>>         >>>>>>>>    text
>>>>>>>>>         >>>>>>>>>    
>   
>>  files.
>>>>>>>>>         
>>>>>>>>>>>       
>>  The
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        build system was
>>>>>>>>>         >>> hollowed out and
>>>>>>>>>         >>>>>>  revamped to
>>>>>>>>>         >>>>>>>>>    
>   
>>  support
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   external
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        builds in other
>>>>>>>>>         >>> programming
>>>>>>>>>         >>>>>>  languages, as 
> well
>>>>>>>>>         >>>>>>>>    as
>>>>>>>>>         
>>>>>>>>>>>       
>>  scaling
>>>>   up
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>>        perl builds to
>>>>>>>>>         >>> provide about 8
>>>>>>>>>         >>>>>>  child
>>>>>>>>>         >>>>>>>>    
> processes
>>>>>>>>>         >>>>>>>>>    
>   
>>  that
>>>>>>>>>         
>>>>>>>>>>>       
>>  build
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>>        site in parallel
>>>>>>>>>         >>> by default.
>>>>>>>>>         >>>>>>  Full site
>>>>>>>>>         >>>>>>>>    
> build
>>>>>>>>>         >>>>>>>>>    
>   
>>  times
>>>>>>>>>         
>>>>>>>>>>>       
>>  for
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        openoffice went from
>>>>>>>>>         >>> over 30 minutes
>>>>>>>>>         >>>>>>  to
>>>>>>>>>         >>>>>>>>    
> between 5
>>>>>>>>>         >>>>>>>>>    
>   to 
>>  10
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   minutes
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        depending on disk
>>>>>>>>>         >>> activity, which
>>>>>>>>>         >>>>>>  made
>>>>>>>>>         >>>>>>>>>
>>>>   experimentation
>>>>>>>>>         
>>>>>>>>>>>       
>>  with
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     site-wide
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        changes feasible on a
>>>>>>>>>         >>> reasonable
>>>>>>>>>         >>>>>>  timeframe.
>>>>>>>>>         >>>>>>>>    At
>>>>>>>>>         >>>>>>>>>    
>   
>>  first
>>>>>>>>>         
>>>>>>>>>>>       
>>  the
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   project
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   was
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          in
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>>        habit of running
>>>>>>>>>         >>> the builds
>>>>>>>>>         >>>>>>  locally before
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   
>>  checking
>>>>>>>>>         
>>>>>>>>>>>       
>>  in
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   their
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     changes
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        because the delay in
>>>>>>>>>         >>> feedback
>>>>>>>>>         >>>>>>  post-commit 
> was
>>>>>>>>>         >>>>>>>>>>
>>>>   unreasonable,
>>>>>>>>>         
>>>>>>>>>>>>   
>>        but
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   with
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     smart
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       use
>>>>>>>>        of SSI the were
>>>>>>>>>         >>> able to cut down
>>>>>>>>>         >>>>>>  on the
>>>>>>>>>         >>>>>>>>    
> number
>>>>>>>>>         >>>>>>>>>    
>   of
>>>>>>>>>         
>>>>>>>>>>>       
>>  changes
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   that
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     required
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       full
>>>>>>>>        site builds and
>>>>>>>>>         >>> hence no longer
>>>>>>>>>         >>>>>>  bother
>>>>>>>>>         >>>>>>>>    with
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  whole
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     pre-build
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     mumbo
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        jumbo before checking
>>>>>>>>>         >>> in changes.
>>>>>>>>>         >>>>>>  The CMS is
>>>>>>>>>         >>>>>>>>>    
>   
>>  designed
>>>>>>>>>         
>>>>>>>>>>>       
>>  to
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   only
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   build
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     pages
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       that
>>>>>>>>        were altered, and
>>>>>>>>>         >>> if you just
>>>>>>>>>         >>>>>>  edit a page
>>>>>>>>>         >>>>>>>>    or
>>>>>>>>>         >>>>>>>>>    
>   two
>>>>>>>>>         
>>>>>>>>>>>       
>>  only
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   those
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   pages
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          and
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>>        pages that depend
>>>>>>>>>         >>> on them will
>>>>>>>>>         >>>>>>  be built.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       Now
>>>>>>>>        that I've
>>>>>>>>>         >>> turned my
>>>>>>>>>         >>>>>>  attention to
>>>>>>>>>         >>>>>>>>    
> thrift,
>>>>>>>>>         >>>>>>>>>    
>   
>>  there
>>>>>>>>>         
>>>>>>>>>>>       
>>  are
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   several
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     aspects
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       that
>>>>>>>>        are better off
>>>>>>>>>         >>> being retuned
>>>>>>>>>         >>>>>>  based on the
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   
>>  modest
>>>>>>>>>         
>>>>>>>>>>>       
>>  size of
>>>>>>>>>         
>>>>>>>>>>>>   
>>        the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   site.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        First of all you have
>>>>>>>>>         >>> a sitemap url
>>>>>>>>>         >>>>>>  that lists
>>>>>>>>>         >>>>>>>>    all
>>>>>>>>>         >>>>>>>>>    
>   of
>>>>>>>>>         
>>>>>>>>>>>       
>>  your
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>        markdown-based
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        pages, which would be
>>>>>>>>>         >>> a nonstarter
>>>>>>>>>         >>>>>>  for a site
>>>>>>>>>         >>>>>>>>    like
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   openoffice.
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   The
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        implications of the
>>>>>>>>>         >>> sitemap url are
>>>>>>>>>         >>>>>>  that every
>>>>>>>>>         >>>>>>>>    page
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  needs to
>>>>>>>>>         
>>>>>>>>>>>>   
>>        be
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   built
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          in
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        memory just to
>>>>>>>>>         >>> generate that page,
>>>>>>>>>         >>>>>>  which leads
>>>>>>>>>         >>>>>>>>    to a
>>>>>>>>>         >>>>>>>>>    
>   lot
>>>>>>>>>         
>>>>>>>>>>>       
>>  of
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     redundancy
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          in
>>>>>>     a
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        build system designed
>>>>>>>>>         >>> to run as
>>>>>>>>>         >>>>>>  forked child
>>>>>>>>>         >>>>>>>>>    
>   
>>  processes.
>>>>>>>>>         
>>>>>>>>>>>       
>>  We
>>>>>>>>>         
>>>>>>>>>>>>   
>>        can
>>>>   do
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>       better...
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        I've done two
>>>>>>>>>         >>> things to make
>>>>>>>>>         >>>>>>  this work
>>>>>>>>>         >>>>>>>>    
> well-
>>>>>>>>>         >>>>>>>>>    
>   
>>  first I
>>>>>>>>>         
>>>>>>>>>>>       
>>  made
>>>>>>>>>         
>>>>>>>>>>>>   
>>        the
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     number
>>>>>>>       of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        child processes
>>>>>>>>>         >>> "aka
>>>>>>>>>         >>>>>>  runners"
>>>>>>>>>         >>>>>>>>    
> tunable 
>>  on
>>>>>>>>>         >>>>>>>>>    
>   a
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   per-project
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   basis,
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          and
>>>>>> 
>>>>>>>       since the
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        sitemap is going to
>>>>>>>>>         >>> build every page
>>>>>>>>>         >>>>>>  anyway as
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         
>>>>>>>>>>>       
>>  slowest
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   page to
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     build, I
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        memoized the main view
>>>>>>>>>         >>> that builds
>>>>>>>>>         >>>>>>  the
>>>>>>>>>         >>>>>>>>    
> markdown
>>>>>>>>>         >>>>>>>>>    
>   
>>  pages
>>>>>>>>>         
>>>>>>>>>>>       
>>  for
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   thrift.
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   The
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     best
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        results are when
>>>>>>>>>         >>> there's only
>>>>>>>>>         >>>>>>  one runner
>>>>>>>>>         >>>>>>>>    so 
> we
>>>>>>>>>         >>>>>>>>>    
>   get
>>>>>>>>>         
>>>>>>>>>>>       
>>  the
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   full
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   benefit
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        memoization: typical
>>>>>>>>>         >>> site build
>>>>>>>>>         >>>>>>  times are
>>>>>>>>>         >>>>>>>>>    
>   
>>  consistently
>>>>>>>>>         
>>>>>>>>>>>       
>>  under
>>>>>>>>>         
>>>>>>>>>>>>   
>>        2
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   seconds
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     now.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        You'll appreciate
>>>>>>>>>         >>> why I am such
>>>>>>>>>         >>>>>>  a
>>>>>>>>>         >>>>>>>>    
>>  performance
>>>>>>>>>         
>>>>>>>>>>>       
>>  stickler
>>>>>>>>>         
>>>>>>>>>>>>   
>>        for
>>>>   the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   CMS
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     when
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       you
>>>>>>>>        start using the
>>>>>>>>>         >>> bookmarklet,
>>>>>>>>>         >>>>>>  since builds
>>>>>>>>>         >>>>>>>>    are
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  only
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     asynchronous
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       part
>>>>>>>>        of the process
>>>>>>>>>         >>> from making a
>>>>>>>>>         >>>>>>  change to a
>>>>>>>>>         >>>>>>>>    page
>>>>>>>>>         >>>>>>>>>    
>   and
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   publishing
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   the
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        results.  Ideally when
>>>>>>>>>         >>> the system is
>>>>>>>>>         >>>>>>  working
>>>>>>>>>         >>>>>>>>    well
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  builds
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   happen
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     before
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       you
>>>>>>>>        have time to go
>>>>>>>>>         >>> looking for
>>>>>>>>>         >>>>>>  them, but you
>>>>>>>>>         >>>>>>>>    do
>>>>>>>>>         >>>>>>>>>    
>   
>>  need to
>>>>>>>>>         
>>>>>>>>>>>       
>>  be
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   mindful
>>>>>>     of
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          not
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        publishing before the
>>>>>>>>>         >>> built pages
>>>>>>>>>         >>>>>>  have been
>>>>>>>>>         >>>>>>>>>    
>   
>>  committed
>>>>>>>>>         
>>>>>>>>>>>       
>>  back to
>>>>>>>>>         
>>>>>>>>>>>>   
>>        svn
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   by
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        buildbot.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        On Monday, March
>>>>>>>>>         >>> 17, 2014 11:59
>>>>>>>>>         >>>>>>  PM, Joe
>>>>>>>>>         >>>>>>>>>    
>   
>>  Schaefer
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           Ok there's
>>>>>>>>>         >>> enough of an
>>>>>>>>>         >>>>>>  idea about
>>>>>>>>>         >>>>>>>>    how
>>>>>>>>>         >>>>>>>>>    
>   to
>>>>>>>>>         
>>>>>>>>>>>       
>>  port
>>>>>>>>>         
>>>>>>>>>>>>   
>>        the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   rest of
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          the
>>>>>> 
>>>>>>>>        site's
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        pages over based
>>>>>>>>>         >>> on the porting
>>>>>>>>>         >>>>>>  work
>>>>>>>>>         >>>>>>>>    
> I've
>>>>>>>>>         
>>>>>>>>>>>       
>>  already
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   done
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   that
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     it's
>>>>>>>       time
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        for me to step
>>>>>>>>>         >>> back and let you
>>>>>>>>>         >>>>>>  guys catch
>>>>>>>>>         >>>>>>>>    up.
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>   Basically
>>>>>>>>>         
>>>>>>>>>>>>   
>>        the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   idea
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          is
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       that
>>>>>>>>        while
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        there is
>>>>>>>>>         >>> templating support in
>>>>>>>>>         >>>>>>  the
>>>>>>>>>         >>>>>>>>    
> markdown
>>>>>>>>>         >>>>>>>>>    
>   
>>  sources,
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   it's
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     fairly
>>>>>>>>        limited
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        compared to what
>>>>>>>>>         >>> nanoc offers,
>>>>>>>>>         >>>>>>  but instead
>>>>>>>>>         >>>>>>>>    of
>>>>>>>>>         
>>>>>>>>>>>       
>>  writing
>>>>   a
>>>>>>>>>         
>>>>>>>>>>>>   
>>        lot
>>>>   of
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     complex
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        template
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        code into your
>>>>>>>>>         >>> sources, with the
>>>>>>>>>         >>>>>>  cms you
>>>>>>>>>         >>>>>>>>    just
>>>>>>>>>         >>>>>>>>>    
>   add
>>>>>>>>>         
>>>>>>>>>>>       
>>  code to
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>        lib/view.pmand/or
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        lib/path.pm to
>>>>>>>>>         >>> keep the document
>>>>>>>>>         >>>>>>  sources
>>>>>>>>>         >>>>>>>>    
> simple
>>>>>>>>>         >>>>>>>>>    
>   and
>>>>>>>>>         
>>>>>>>>>>>       
>>  just
>>>>>>>>>         
>>>>>>>>>>>>   
>>        add
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   more
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        template
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        variables.  What I
>>>>>>>>>         >>> just finished
>>>>>>>>>         >>>>>>  in
>>>>>>>>>         >>>>>>>>    
>>  lib/view.pm
>>>>>>>>>         >>>>>>>>>    
>   and
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     lib/path.pm
>>>>>>>       is
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        directory
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        listing support
>>>>>>>>>         >>> for /docs.html
>>>>>>>>>         >>>>>>  but it can
>>>>>>>>>         >>>>>>>>    be
>>>>>>>>>         >>>>>>>>>    
>   
>>  carried
>>>>>>>>>         
>>>>>>>>>>>       
>>  over
>>>>>>>>>         
>>>>>>>>>>>>   
>>        to
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     similar
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>        pages.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           On Monday,
>>>>>>>>>         >>> March 17, 2014
>>>>>>>>>         >>>>>>  9:16 PM, Joe
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   
>>  Schaefer
>>>>>>>>>         >>> 
> <jo...@yahoo.com>
>>>>>>>>>         >>>>>>  wrote:
>>>>>>>>>         >>> Interesting ideas,
>>>>>>>>>         >>>>>>  thanks.  FWIW 
> I
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>    
>   
>>  think
>>>>>>>>>         
>>>>>>>>>>>       
>>  that
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   sort
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           of thing might
>>>>>>>>>         >>> be best
>>>>>>>>>         >>>>>>  supported as a
>>>>>>>>>         >>>>>>>>>    
>   
>>  periodic
>>>>>>>>>         
>>>>>>>>>>>       
>>  cron
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           if we can
>>>>>>>>>         >>> write something
>>>>>>>>>         >>>>>>  stable
>>>>>>>>>         >>>>>>>>    
> enough,
>>>>>>>>>         >>>>>>>>>    
>   
>>  because
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   pulling
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           stuff out of
>>>>>>>>>         >>> the git repo is
>>>>>>>>>         >>>>>>  something
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         >>>>>>>>>    
>   CMS
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   isn't
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   going
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           to do all that
>>>>>>>>>         >>> well being an
>>>>>>>>>         >>>>>>  svn
>>>>>>>>>         >>>>>>>>>    
>   
>>  application.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           The CMS build
>>>>>>>>>         >>> results are
>>>>>>>>>         >>>>>>  available at
>>>>>>>>>         >>> 
>>  http://thrift.staging.apache.org/
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           feel free to
>>>>>>>>>         >>> play with the
>>>>>>>>>         >>>>>>  sources in
>>>>>>>>>         >>> 
> repos/asf/thrift/cms-site/trunk.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           It's very
>>>>>>>>>         >>> fast, probably
>>>>>>>>>         >>>>>>  an order
>>>>>>>>>         >>>>>>>>    of
>>>>>>>>>         >>>>>>>>>>
>>>>   magnitude
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   faster
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   than
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     your
>>>>>>>       current
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           tech.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           Whole site
>>>>>>>>>         >>> builds in two
>>>>>>>>>         >>>>>>  seconds;
>>>>>>>>>         >>>>>>>>    
> fractions
>>>>>>>>>         >>>>>>>>>    
>   of 
>>  a
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   second
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   for
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     typical
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>       mods
>>>>>>>>        to
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           content/
>>>>>>>>>         >>> markdown pages.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           The CMS
>>>>>>>>>         >>> bookmarklet is
>>>>>>>>>         >>>>>>  compatible 
> with
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         
>>>>>>>>>>>       
>>  staging
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   site
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   FWIW.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                On
>>>>>>>>>         >>> Monday, March 17,
>>>>>>>>>         >>>>>>  2014 7:40
>>>>>>>>>         >>>>>>>>    PM,
>>>>>>>>>         >>>>>>>>>    
>   
>>  Roger
>>>>>>>>>         
>>>>>>>>>>>       
>>  Meier
>>>>>>>>>         >>>>>>
>>>>   <ro...@bufferoverflow.ch> wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>               Hi Joe
>>>>>>>>>         >>> & Co
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                thanks
>>>>>>>>>         >>> for this test
>>>>>>>>>         >>>>>>  run with
>>>>>>>>>         >>>>>>>>    
> Apache
>>>>>>>>>         >>>>>>>>>    
>   
>>  CMS!
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                What I
>>>>>>>>>         >>> would love to
>>>>>>>>>         >>>>>>  see is this:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                Source
>>>>>>>>>         >>> file: => Web
>>>>>>>>>         >>>>>>  Site URL:
>>>>>>>>>         >>> test/README.md =>
>>>>>>>>>         >>>>>>>>>
>>>>   thrift.apache.org/test
>>>>>>>>>         >>> test/STATUS.md =>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>        thrift.apache.org/test/status
>>>>>>>>>         >>> test/keys/README.md
>>>>>>>>>         >>>>>>  =>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>        thrift.apache.org/test/keys
>>>>>>>>>         >>>>>>  
>>  lib/<lang>/README.md
>>>>   =>
>>>>>>>>>         >>> 
>>  thrift.apache.org/lib/<lang>
>>>>>>>>>         >>>>>>
>>>>   lib/<lang>/test/README.md
>>>>>>>>>         >>>>>>>>    
> =>
>>>>>>>>>         >>>>>>>>
>>>>>>>       thrift.apache.org/lib/<lang>/test
>>>>>>>>>         >>>>>>>>
>>>>>>>       lib/<lang>/examples/README.md
>>>>>>>>>         >>>>>>>>>    
>   
>>  =>
>>>>>>>>>         >>>>>>>>>
>>>>>>>>        thrift.apache.org/lib/<lang>/examples
>>>>>>>>>         >>> compiler/cpp/README.md
>>>>>>>>>         >>>>>>  =>
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>>>        thrift.apache.org/compiler
>>>>>>>>>         >>> debian/README.md =>
>>>>>>>>>         >>>>>>>>>>
>>>>>>>       thrift.apache.org/debian
>>>>>>>>>         >>>>>>
>>>>   contrib/<topic>/README.md
>>>>>>>>>         >>>>>>>>    
> =>
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>>        thrift.apache.org/<topic>
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                just made
>>>>>>>>>         >>> the following
>>>>>>>>>         >>>>>>  patch to
>>>>>>>>>         >>>>>>>>>    
>   
>>  rename all
>>>>>>>>>         
>>>>>>>>>>>       
>>  file
>>>>>>>>>         
>>>>>>>>>>>>   
>>        to
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   .md
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     within
>>>>>>>       our
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        source
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                tree:
>>>>>>>>>         >>>
>>>>   https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                ... we
>>>>>>>>>         >>> have *41*
>>>>>>>>>         >>>>>>  md's 
> within
>>>>>>>>>         >>>>>>>>    the
>>>>>>>>>         >>>>>>>>>    
>   
>>  source
>>>>>>>>>         
>>>>>>>>>>>       
>>  tree
>>>>>>>>>         
>>>>>>>>>>>>   
>>        and
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>       that's
>>>>>>>>        the
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        place
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           where
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                people
>>>>>>>>>         >>> look for
>>>>>>>>>         >>>>>>  documentation
>>>>>>>>>         >>>>>>>>    
> first.
>>>>>>>>>         >>>>>>>>>    
>   
>>  =>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   simple to
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     manage
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                Would be
>>>>>>>>>         >>> user friendly
>>>>>>>>>         >>>>>>  to have
>>>>>>>>>         >>>>>>>>    all 
> of
>>>>>>>>>         >>>>>>>>>    
>   
>>  this
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   online
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   with
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     each
>>>>>>>       release
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                with the
>>>>>>>>>         >>> URL layout
>>>>>>>>>         >>>>>>  mentioned
>>>>>>>>>         >>>>>>>>    
> above.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                just
>>>>>>>>>         >>> received the
>>>>>>>>>         >>>>>>  buildboot...
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                Do you
>>>>>>>>>         >>> have kind of a
>>>>>>>>>         >>>>>>  preview of
>>>>>>>>>         >>>>>>>>    your
>>>>>>>>>         >>>>>>>>>>
>>>>   prototype?
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                all the
>>>>>>>>>         >>> best!
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                -roger
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                ;-r
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                Quoting
>>>>>>>>>         >>> Jake Farrell
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>>>>>        <jf...@apache.org>:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>                 No
>>>>>>>>>         >>> objections from
>>>>>>>>>         >>>>>>  me
>>>>>>>>>         >>> -Jake
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>                 On
>>>>>>>>>         >>> Mon, Mar 17,
>>>>>>>>>         >>>>>>  2014 at
>>>>>>>>>         >>>>>>>>    
> 12:04 PM,
>>>>>>>>>         >>>>>>>>>    
>   Joe
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   Schaefer
>>>>>>>>>         >>>>>>>>
>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>> Any objections
>>>>>>>>>         >>>>>>  to me
>>>>>>>>>         >>>>>>>>    
> making a
>>>>>>>>>         >>>>>>>>>    
>   
>>  copy
>>>>>>>>>         
>>>>>>>>>>>       
>>  of
>>>>>>>>>         
>>>>>>>>>>>>   
>>        the
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   site
>>>>>>>>>         >>> tree alongside
>>>>>>>>>         >>>>>>  it called
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>   cms-site?
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   I'd
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   like
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          to
>>>>>>>>>         >>> get cracking
>>>>>>>>>         >>>>>>  on knocking
>>>>>>>>>         >>>>>>>>    up
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   supporting
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   perl
>>>>>>>>>         >>> for this so we
>>>>>>>>>         >>>>>>  can
>>>>>>>>>         >>>>>>>>    
> continue
>>>>>>>>>         >>>>>>>>>    
>   to
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   brainstorm...
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>   On Sunday,
>>>>>>>>>         >>>>>>  March 16,
>>>>>>>>>         >>>>>>>>    2014
>>>>>>>>>         >>>>>>>>>    
>   
>>  1:53
>>>>>>>>>         
>>>>>>>>>>>       
>>  PM,
>>>>>>>>>         
>>>>>>>>>>>>   
>>        Joe
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   Schaefer
>>>>>>>>>         >>>>>>
>>>>   <jo...@yahoo.com>
>>>>>>>>>         >>> wrote:
>>>>>>>>>         >>>       On
>>>>>>>>>         >>>>>>  Sunday, March
>>>>>>>>>         >>>>>>>>    16,
>>>>>>>>>         >>>>>>>>>    
>   
>>  2014
>>>>>>>>>         
>>>>>>>>>>>       
>>  1:40
>>>>>>>>>         
>>>>>>>>>>>>   
>>        PM,
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   Jake
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     Farrell
>>>>>>>>>         >>>>>>  
>>  <jf...@apache.org>
>>>>>>>>>         >>>   wrote:
>>>>>>>>>         >>>   Hey Joe
>>>>>>>>>         >>>       Thanks
>>>>>>>>>         >>>>>>  for
>>>>>>>>>         >>>>>>>>    
> reaching
>>>>>>>>>         >>>>>>>>>    
>   
>>  out, we
>>>>>>>>>         
>>>>>>>>>>>       
>>  chose
>>>>>>>>>         
>>>>>>>>>>>>   
>>        to
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   go
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     with a
>>>>>>>       site
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           generator
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                over the
>>>>>>>>>         >>>       Apache
>>>>>>>>>         >>>>>>  CMS due to
>>>>>>>>>         >>>>>>>>    it
>>>>>>>>>         >>>>>>>>>>
>>>>   initially
>>>>>>>>>         
>>>>>>>>>>>>   
>>        not
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   meeting
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          all
>>>>>>     of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        our
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           needs.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                Our
>>>>>>>>>         >>> current
>>>>>>>>>         >>>       needs
>>>>>>>>>         >>>>>>  for the site
>>>>>>>>>         >>>>>>>>    are
>>>>>>>>>         >>>       -
>>>>>>>>>         >>>>>>  Markdown to 
> html
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>   conversion
>>>>>>>>>         >>>   That
>>>>>>>>>         >>>>>>  one's 
> easy-
>>>>>>>>>         >>>>>>>>    its
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  default
>>>>>>>>>         
>>>>>>>>>>>>   
>>        for
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   the
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     cms.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>       - Global
>>>>>>>>>         >>>>>>>>>
>>>>   variables/config
>>>>>>>>>         
>>>>>>>>>>>       
>>  usable
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     throughout
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          in
>>>>>>     a
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        template
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                based
>>>>>>>>>         >>> layout
>>>>>>>>>         >>>   Easy too-
>>>>>>>>>         >>>>>>  just create
>>>>>>>>>         >>>>>>>>    a
>>>>>>>>>         >>>>>>>>>    
>   
>>  perl
>>>>>>>>>         
>>>>>>>>>>>       
>>  hash
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     somewhere and
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     make it
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           available
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                to
>>>>>>>>>         >>> your views.
>>>>>>>>>         >>>   Code your
>>>>>>>>>         >>>>>>  views to
>>>>>>>>>         >>>>>>>>    pass
>>>>>>>>>         >>>>>>>>>    
>   
>>  that
>>>>>>>>>         
>>>>>>>>>>>       
>>  hash
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   along to
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   your
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        templates
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           and you
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                are
>>>>>>>>>         >>> all set.
>>>>>>>>>         >>>   Note if your
>>>>>>>>>         >>>>>>  hash
>>>>>>>>>         >>>>>>>>    
> contains
>>>>>>>>>         
>>>>>>>>>>>       
>>  objects
>>>>>>>>>         
>>>>>>>>>>>>   
>>        you
>>>>   can
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   make
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     method
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        calls
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           on
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                them in
>>>>>>>>>         >>> your
>>>>>>>>>         >>>   templates.
>>>>>>>>>         >>>>>>  Note:
>>>>>>>>>         >>>>>>>>    
> while I
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   wouldn't
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>       recommend
>>>>>>>>        this in
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           general,
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                for
>>>>>>>>>         >>> smaller
>>>>>>>>>         >>>   projects
>>>>>>>>>         >>>>>>  like thrift
>>>>>>>>>         >>>>>>>>    that
>>>>>>>>>         >>>>>>>>>    
>   
>>  prefer
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     convenience
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     over
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        separation
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                concerns
>>>>>>>>>         >>> you can
>>>>>>>>>         >>>   have the
>>>>>>>>>         >>>>>>  django
>>>>>>>>>         >>>>>>>>    
> template
>>>>>>>>>         >>>>>>>>>    
>   
>>  engine
>>>>>>>>>         
>>>>>>>>>>>       
>>  do a
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   pass
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   over
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     your
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        markdown
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                before
>>>>>>>>>         >>> passing it
>>>>>>>>>         >>>   along to
>>>>>>>>>         >>>>>>  your actual
>>>>>>>>>         >>>>>>>>>    
>   
>>  template
>>>>>>>>>         
>>>>>>>>>>>       
>>  page,
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   just
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   as is
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>>       seemingly
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           common to
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                other
>>>>>>>>>         >>> popular
>>>>>>>>>         >>>   site
>>>>>>>>>         >>>>>>  generation
>>>>>>>>>         >>>>>>>>    
> software.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>       - Syntax
>>>>>>>>>         >>>>>>>>    
>>  highlighting
>>>>>>>>>         >>>   Comes with
>>>>>>>>>         >>>>>>>>    
>>  python's
>>>>>>>>>         >>>>>>>>>    
>   
>>  markdown
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   support,
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   but
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     some
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        people
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           prefer
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                the look
>>>>>>>>>         >>> of
>>>>>>>>>         >>>   javascript
>>>>>>>>>         >>>>>>>>    
>>  highlighters.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>       - Easily
>>>>>>>>>         >>>>>>  include
>>>>>>>>>         >>>>>>>>    code
>>>>>>>>>         
>>>>>>>>>>>       
>>  snippets
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   from
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   our
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     source
>>>>>>>       code
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        base
>>>>>>>>>         >>>   Statically I
>>>>>>>>>         >>>>>>  hope.  No
>>>>>>>>>         >>>>>>>>    idea
>>>>>>>>>         >>>>>>>>>    
>   how
>>>>>>>>>         
>>>>>>>>>>>       
>>  to
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   pull
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     snippets
>>>>>>>       out
>>>>>>>>        of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        your
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           git
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                repo
>>>>>>>>>         >>> via the
>>>>>>>>>         >>>   cms.
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>       -
>>>>>>>>>         >>>>>>  Ability to
>>>>>>>>>         >>>>>>>>    
> locally
>>>>>>>>>         >>>>>>>>>    
>   
>>  test
>>>>>>>>>         
>>>>>>>>>>>       
>>  before
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     committing
>>>>>>>>>         >>>   Belt and
>>>>>>>>>         >>>>>>  suspenders
>>>>>>>>>         >>>>>>>>    with
>>>>>>>>>         >>>>>>>>>    
>   the
>>>>>>>>>         
>>>>>>>>>>>       
>>  cms- you
>>>>>>>>>         
>>>>>>>>>>>>   
>>        can
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   build
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     your
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        changes
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                before
>>>>>>>>>         >>> committing
>>>>>>>>>         >>>   with the
>>>>>>>>>         >>>>>>  build
>>>>>>>>>         >>>>>>>>    
> scripts,
>>>>>>>>>         >>>>>>>>>    
>   
>>  browse
>>>>>>>>>         
>>>>>>>>>>>       
>>  your
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   changes
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     before
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        committing
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           via
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                the cms
>>>>>>>>>         >>>   webgui, or
>>>>>>>>>         >>>>>>  simply
>>>>>>>>>         >>>>>>>>    
> commit
>>>>>>>>>         >>>>>>>>>    
>   
>>  your
>>>>>>>>>         
>>>>>>>>>>>       
>>  changes
>>>>>>>>>         
>>>>>>>>>>>>   
>>        and
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   view
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          the
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        staging
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           site
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                prior to
>>>>>>>>>         >>> live
>>>>>>>>>         >>>   publication
>>>>>>>>>         >>>>>>  (which is
>>>>>>>>>         >>>>>>>>    a
>>>>>>>>>         >>>>>>>>>    
>   
>>  separate
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   step).
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>       -Jake
>>>>>>>>>         >>>       On Sun,
>>>>>>>>>         >>>>>>  Mar 16,
>>>>>>>>>         >>>>>>>>    2014 
> at
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  12:44
>>>>   PM,
>>>>>>>>>         
>>>>>>>>>>>>   
>>        Joe
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     Schaefer
>>>>>>>>>         >>>>>>>>>>
>>>>>>>>        <jo...@yahoo.com>wrote:
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>> 
>>>>>>>>>         >>>         As
>>>>>>>>>         >>>>>>  it so
>>>>>>>>>         >>>>>>>>    
> happens I
>>>>>>>>>         >>>>>>>>>    
>   am
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   interested
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   in
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     working
>>>>>>>       on
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           supporting
>>>>>>>>>         >>>>>>  thrift's
>>>>>>>>>         >>>>>>>>    use
>>>>>>>>>         >>>>>>>>>    
>   
>>  case as
>>>>>>>>>         
>>>>>>>>>>>       
>>  a
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     potential
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     user of
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        the
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           Apache
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                CMS.
>>>>>>>>>         >>>>>>  While the CMS
>>>>>>>>>         >>>>>>>>    
> works
>>>>>>>>>         >>>>>>>>>    
>   
>>  well
>>>>>>>>>         
>>>>>>>>>>>       
>>  for
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   massive
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     projects
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        there
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           are
>>>>>>>>>         >>>>>>  things it
>>>>>>>>>         >>>>>>>>    
> could do
>>>>>>>>>         
>>>>>>>>>>>       
>>  better
>>>>   at
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>>>     supporting
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          for
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        more
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           moderate
>>>>>>>>>         >>>>>>  sized sites
>>>>>>>>>         >>>>>>>>    like
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   thrift's.
>>>>>>>>>         >>>>>>  I'd
>>>>>>>>>         >>>>>>>>    
> therefore
>>>>>>>>>         >>>>>>>>>    
>   
>>  like
>>>>>>>>>         
>>>>>>>>>>>       
>>  to
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   engage
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   you
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     folks in
>>>>>>>       a
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>         >>> brainstorming session
>>>>>>>>>         >>>>>>  about what
>>>>>>>>>         >>>>>>>>    
> sorts of
>>>>>>>>>         >>>>>>>>>
>>>>>>>>>         
>>>>>>>>>>>       
>>  features
>>>>>>>>>         
>>>>>>>>>>>>   
>>        you
>>>>>>>>>        
>>>>>>>>>>>>>> 
>>>>   want
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>          for
>>>>>>     your
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        site
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>>> 
>>>>>>>>           and
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>>>> 
>>>>>>>>                to find
>>>>>>>>>         >>>>>>  simple ways of
>>>>>>>>>         >>>>>>>>
>>>>>>>>>         >>>>>>>>>>
>>>>   supporting
>>>>>>>>>         
>>>>>>>>>>>> 
>>>>   those
>>>>>>>>>        
>>>>>>>>>>>>>>> 
>>>>>>     features
>>>>>>>       for
>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>> 
>>>>>>>>        you.
>>>>>>>>>         >>>>>>  Thanks.
>>>>>>>>>         >
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Just added a newline before the [snippet:...] stuff.
Working fine now... keep in mind what's happening behind 
the scenes: the snippet wrapper view parses the [snippet:..]
block into an object method call via django: {{ snippetA.fetch|markdown }}.
Then the templating engine parses that and converts it into
HTML, which is fed back into the document for a final full
markdown pass.  When that markdown pass gets confused about
the snippet HTML generated by the template pass, you get lots
of weird rendering artifacts caused by markdown doing stuff with
the indentation in the HTML (which it thinks is still raw markdown).

To avoid problems in *.md snippet files, set the [snippet: ...]
block at the start of a new line that's surrounded be blank lines
above and below.  Maybe this markdown HTML parsing issue will be
resolved in a future release of the python markdown package, but
it shouldn't matter if you are careful and understand what's going on.




> On Wednesday, March 26, 2014 6:23 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> > Hi Joe
> 
> I tried to use
> [snippet:path=tutorial/js/tutorial.html:lang=js:lines=47,65]
> within
> content/tutorial/js.md
> 
> there is a rendering issue, related to js?
> i used lang=javascript and lang=js with the same effect
> 
> -roger
> 
> 
> On 26.03.2014 20:56, Joe Schaefer wrote:
>>  Yay! Thanks Roger that's great to hear!
>> 
>> 
>> 
>>>  On Wednesday, March 26, 2014 3:53 PM, Roger Meier 
> <ro...@bufferoverflow.ch> wrote:
>>>>  Joe, it helps.
>>>  the process to update the site is much faster and easier as I thought
>>>  before...
>>> 
>>>  thanks
>>>  -roger
>>> 
>>>  On 26.03.2014 04:00, Joe Schaefer wrote:
>>>>    I made a start at updating the website docs for committers
>>>>    here at 
> http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite
>>>> 
>>>>    I left the old stuff in there for someone to go through and 
> replace it with
>>>>    the comparable text for dealing with the CMS.
>>>> 
>>>>    HTH
>>>> 
>>>> 
>>>> 
>>>>>    On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer
>>>  <jo...@yahoo.com> wrote:
>>>>>>    FWIW until you get accustomed to the CMS 
> bookmarklet/webgui
>>>>>    stuff I recommend downloading http://s.apache.org/cms-cli
>>>>>    and installing the CPAN prereqs for it on your local host.
>>>>>    That way you can publish, which is a separate step involving
>>>>>    the script, while you are working on the svn tree.  If you
>>>>>    name the script publish.pl invoking it as
>>>>> 
>>>>>    % ./publish.pl thrift
>>>>> 
>>>>>    will get you where you need to be.  You might even consider
>>>>>    setting up an svn external to pull that file out of svn and
>>>>>    place it at the base of your cms tree for committers to use.
>>>>> 
>>>>> 
>>>>> 
>>>>>>      On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer
>>>>>    <jo...@yahoo.com> wrote:
>>>>>>      > Done Jake thanks!  One remark for Roger...
>>>>>> 
>>>>>>      The file extension used for stuff in content/test/ 
> really
>>>  doesn't
>>>>>    matter as
>>>>>>      far as the build goes.  What you need to do is supply a
>>>  'lang=text'
>>>>> 
>>>>>>      argument to each snippet that is not a native markdown 
> file; the
>>>  build will
>>>>> 
>>>>>>      automatically strip file extensions off the internal 
> links in the
>>>  markdown
>>>>>>      sources so httpd will do the right thing and resolve 
> the
>>>  extension via the
>>>>>>      MultiViews feature.
>>>>>> 
>>>>>>      In the case of test/ThriftTest.thrift, I'd 
> recommend changing
>>>  the
>>>>>    extension
>>>>>>      to .txt or even .md (in the content/test/ tree on the 
> site
>>>  sources in svn,
>>>>>    not
>>>>>>      the code sources in git) so the CMS's webgui will 
> fetch you a
>>>  decent
>>>>>    editor
>>>>>>      for that file.  Otherwise again the extension 
> doesn't matter-
>>>  the build
>>>>>    will
>>>>>>      always convert it to html.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>       On Tuesday, March 25, 2014 9:34 AM, Jake Farrell
>>>>>>      <jf...@apache.org> wrote:
>>>>>>>       > Hey Joe
>>>>>>>       Thanks for making the additions to the Apache CMS 
> to meet
>>>  our use
>>>>>    case.
>>>>>>      I'm
>>>>>>>       not seeing any blockers at the moment, lets cut 
> over and we
>>>  can fix
>>>>>    any
>>>>>>>       edge cases if needed
>>>>>>> 
>>>>>>>       -Jake
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>       On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer
>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>> 
>>>>>>>>        Done.  Anything else we need to look at 
> before going
>>>  live?
>>>>>>>> 
>>>>>>>>        Sent from my iPhone
>>>>>>>> 
>>>>>>>>        > On Mar 23, 2014, at 3:53 PM, Roger Meier
>>>>>>>       <ro...@bufferoverflow.ch>
>>>>>>>>        wrote:
>>>>>>>>        >
>>>>>>>>        > any idea how to fix this URL:
>>>>>>>>        >
>>>  http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>>>>>        > we need to keep the filename for working 
> links
>>>  within the
>>>>>>>>        > test/README.md file.
>>>>>>>>        >
>>>>>>>>        > What about a footer for docs genertated 
> from
>>>  source tree?
>>>>>>>>        > [snippet:path=test/README.md, footer=1]
>>>>>>>>        >
>>>>>>>>        > I added the following snippet to
>>>  content/test/index.md:
>>>>>>>>        > ---SNIP---
>>>>>>>>        > This page was generated from Apache 
> Thrift's
>>>  **source
>>>>>    tree
>>>>>>      docs**:
>>>>>>>>        > [test/README.md](
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>>>>>        )
>>>>>>>>        > ---SNIP---
>>>>>>>>        >
>>>>>>>>        > would be great to get this generated 
> into the page
>>>  via
>>>>>    snippet.
>>>>>>>>        >
>>>>>>>>        > -roger
>>>>>>>>        >
>>>>>>>>        >
>>>>>>>>        >> On 23.03.2014 19:04, Joe Schaefer 
> wrote:
>>>>>>>>        >> The CMS codebase as well as the 
> thrift build
>>>  system
>>>>>>>>        >> already supports it Roger, someone 
> just needs
>>>  to create
>>>>>>>>        >> the files in the content tree that 
> point at
>>>  the source
>>>>>>>>        >> files in the git repo.  If you want 
> to script
>>>  this
>>>>>    process
>>>>>>>>        >> in scripting language du jour, go 
> for it, but
>>>  I cannot
>>>>>>>>        >> justify spending contractor time 
> doing this
>>>  work for the
>>>>>>>>        >> community's behalf as it is 
> unlikely to be
>>>  needed
>>>>>>      elsewhere.
>>>>>>>>        >> I would think you only need the 
> script to run
>>>  when some
>>>>>>>>        >> path to a README.md file changes in 
> the
>>>  thrift.git tree,
>>>>>>>>        >> so it doesn't need to be 
> incorporated into
>>>  each site
>>>>> 
>>>>>>      build.
>>>>>>>>        >>
>>>>>>>>        >>
>>>>>>>>        >>
>>>>>>>>        >>>> On Sunday, March 23, 2014 
> 9:15 AM,
>>>  Roger Meier
>>>>>    <
>>>>>>>>       roger@bufferoverflow.ch> wrote:
>>>>>>>>        >>>> Hi
>>>>>>>>        >>>
>>>>>>>>        >>>> On 23.03.2014 03:19, Jake 
> Farrell
>>>  wrote:
>>>>>>>>        >>>>  Hey Joe
>>>>>>>>        >>>>  Reviewing the staging site 
> it looks
>>>  like its
>>>>>    almost
>>>>>>      99%
>>>>>>>       there other
>>>>>>>>        than
>>>>>>>>        >>>>  some styling within the 
> code
>>>  snippets. I'm
>>>>>    good
>>>>>>      if we
>>>>>>>       want to cut
>>>>>>>>        over
>>>>>>>>        >>> to
>>>>>>>>        >>>>  using this and then work on 
> the
>>>  additional
>>>>>    features
>>>>>>      that
>>>>>>>       had been
>>>>>>>>        mentioned
>>>>>>>>        >>>>  afterwords. Any objections 
> to cutting
>>>  over?
>>>>>>>>        >>> I would really like to see this 
> automatic
>>>  README.md
>>>>>>      includes
>>>>>>>       from
>>>>>>>>        source
>>>>>>>>        >>> tree, to have a real additional 
> feature
>>>  beside of
>>>>>    what we
>>>>>> 
>>>>>>>       already have
>>>>>>>>        >>> today.
>>>>>>>>        >>>
>>>>>>>>        >>> I'm absolutely with you.
>>>>>>>>        >>> Apache projects shall use other 
> Apache
>>>  projects
>>>>>    whenever
>>>>>>>       possible.
>>>>>>>>        >>>
>>>>>>>>        >>>>  On Sat, Mar 22, 2014 at 
> 4:36 PM, Joe
>>>  Schaefer
>>>>>>>>        >>> 
> <jo...@yahoo.com>wrote:
>>>>>>>>        >>>>
>>>>>>>>        >>>>>  May I suggest a script 
> that
>>>  creates files
>>>>>    in
>>>>>>      content/
>>>>>>>>        >>>>>  containing a single 
> line
>>>>>>>>        >>>>>
>>>>>>>>        >>>>>  [snippet:path=...]
>>>>>>>>        >>> this sounds like a plan
>>>>>>>>        >>>
>>>>>>>>        >>>>>
>>>>>>>>        >>>>>  (with no 'lang' 
> argument)
>>>  that lets
>>>>>    the
>>>>>>      CMS
>>>>>>>       pull raw content
>>>>>>>>        >>> from
>>>>>>>>        >>>>>  thrift.git
>>>>>>>>        >>>>>  and add it directly to 
> the built
>>>  pages.
>>>>>    That
>>>>>>      way you
>>>>>>>       only need to
>>>>>>>>        run
>>>>>>>>        >>> the
>>>>>>>>        >>>>>  script that generates 
> these files
>>>  when a
>>>>>    path
>>>>>>      changes
>>>>>>>       in your
>>>>>>>>        >>> thrift.git
>>>>>>>>        >>>>>  repo.
>>>>>>>>        >>> What I had in mind is a 
> automatic search
>>>  of
>>>>>    README.md
>>>>>>      files
>>>>>>>       across the
>>>>>>>>        >>> source tree and generate the 
> site with
>>>  these
>>>>>>      automatically.
>>>>>>>>        >>> Kind of a central controller 
> that maps all
>>>  the
>>>>>    URL's.
>>>>>>>>        >>> no additional work when a new 
> README.md
>>>  file is
>>>>>    added.
>>>>>>>>        >>> however, a script can do this as 
> interim
>>>  soultion.
>>>>>>>>        >>>>>
>>>>>>>>        >>>>>  You can commit directly 
> to the
>>>  cms svn tree
>>>>>    or
>>>>>>      via
>>>>>>>       the webgui which
>>>>>>>>        >>> does
>>>>>>>>        >>>>>  the same thing.
>>>>>>>>        >>> Great!
>>>>>>>>        >>>
>>>>>>>>        >>> What about local preview when 
> doing perl
>>>>>    modifications?
>>>>>>>>        >>>
>>>>>>>>        >>> -roger
>>>>>>>>        >>>
>>>>>>>>        >>>
>>>>>>>>        >>>>>
>>>>>>>>        >>>>>
>>>>>>>>        >>>>>>  On Saturday, March 
> 22, 2014
>>>  4:20 PM,
>>>>>    Roger
>>>>>>      Meier
>>>>>>>       <
>>>>>>>>        >>>>>  
> roger@bufferoverflow.ch>
>>>  wrote:
>>>>>>>>        >>>>>>>  I still see 
> some issues
>>>  and still
>>>>>    miss
>>>>>>      to
>>>>>>>       feature mentioned.
>>>>>>>>        >>>>>>  Now we have 
> nonoc.ws and
>>>  I'm able
>>>>>    to
>>>>>>      hack
>>>>>>>       this a bit.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  We had no real big 
> issue, the
>>>  thing I
>>>>>    missed
>>>>>>      was
>>>>>>>       the code snippet
>>>>>>>>        >>> thing
>>>>>>>>        >>>>>>  and this is in on 
> nanoc.ws
>>>  and now also
>>>>>    on
>>>>>>      Apache
>>>>>>>       CMS.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  The thing we really 
> need is
>>>  the
>>>>>>      documentation
>>>>>>>       located within source
>>>>>>>>        >>> code
>>>>>>>>        >>>>>>  integrated on the 
> web site.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  most hosting 
> platforms do
>>>  render
>>>>>    README.md
>>>>>>      and
>>>>>>>       that's why lot
>>>>>>>>        >>> of doc
>>>>>>>>        >>>>>>  will stay within 
> the code and
>>>  we should
>>>>> 
>>>>>>      benefit
>>>>>>>       as well by
>>>>>>>>        >>> rendering
>>>>>>>>        >>>>>>  that to the web 
> site and
>>>  enhance the
>>>>>>>       documentation very easily.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  I would like to 
> render the 41
>>>  README.md
>>>>> 
>>>>>>      files to
>>>>>>>       with the following
>>>>>>>>        >>>>>>  pattern, that's 
> a must
>>>  have before
>>>>>>      switching
>>>>>>>       to another CMS.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  test/README.md 
> =>
>>>>>    thrift.apache.org/test
>>>>>>>>        >>>>>>  test/STATUS.md 
> =>
>>>>>>>       thrift.apache.org/test/status
>>>>>>>>        >>>>>>  test/keys/README.md 
> =>
>>>>>>>       thrift.apache.org/test/keys
>>>>>>>>        >>>>>>  
> lib/<lang>/README.md
>>>  =>
>>>>>>>       thrift.apache.org/lib/<lang>
>>>>>>>>        >>>>>>
>>>  lib/<lang>/test/README.md =>
>>>>>>>>        >>> 
> thrift.apache.org/lib/<lang>/test
>>>>>>>>        >>>>>>
>>>  lib/<lang>/examples/README.md
>>>>>    =>
>>>>>>>>        >>>>>>
>>>>>    thrift.apache.org/lib/<lang>/examples
>>>>>>>>        >>>>>>  
> compiler/cpp/README.md =>
>>>>>>>       thrift.apache.org/compiler
>>>>>>>>        >>>>>>  debian/README.md 
> =>
>>>>>>      thrift.apache.org/debian
>>>>>>>>        >>>>>>
>>>  contrib/<topic>/README.md =>
>>>>>>>>        >>> thrift.apache.org/<topic>
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  CPP tutorial seems 
> to be
>>>  broken on
>>>>>    staging.
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  Do you commit to
>>>>>>>>        >>>
>>>>>   https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>>>>        >>>>>>  or is it web gui 
> only?
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  How do you generate 
> the site
>>>  on your
>>>>>    local
>>>>>>>       machine?
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  Should I reactivate 
> my perl
>>>  or do we
>>>>>    stay
>>>>>>      with
>>>>>>>       ruby?
>>>>>>>>        >>>>>>  Committers and 
> contributors,
>>>  what do
>>>>>    you
>>>>>>      think?
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>  all the best
>>>>>>>>        >>>>>>  -roger
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>
>>>>>>>>        >>>>>>>  On 22.03.2014 
> 18:07, Joe
>>>  Schaefer
>>>>>    wrote:
>>>>>>>>        >>>>>>>
>>>>>>>>        >>>>>>>
>>>>>>>>        >>>>>>>    Ok I've 
> now done
>>>  the basic
>>>>>>      necessities
>>>>>>>       involved in
>>>>>>>>        >>> porting
>>>>>>>>        >>>>>>>    the site 
> over.  Links
>>>  have been
>>>>>>      adjusted,
>>>>>>>       templates ported,
>>>>>>>>        >>> files
>>>>>>>>        >>>>>  created,
>>>>>>>>        >>>>>>>    snippet 
> feature
>>>  activated.  At
>>>>>    this
>>>>>>      point
>>>>>>>       I'm happy to
>>>>>>>>        >>> declare
>>>>>>>>        >>>>>>>    victory and 
> migrate the
>>>  thrift
>>>>>    live
>>>>>>      site
>>>>>>>       over, as anything
>>>>>>>>        >>> broken that
>>>>>>>>        >>>>>>>    still remains 
> can be
>>>  dealt with
>>>>>    on a
>>>>>>>       per-page basis with the
>>>>>>>>        >>>>>  bookmarklet.
>>>>>>>>        >>>>>>>
>>>>>>>>        >>>>>>>
>>>>>>>>        >>>>>>>
>>>>>>>>        >>>>>>>>    On 
> Thursday, March
>>>  20, 2014
>>>>>    11:19
>>>>>>      AM,
>>>>>>>       Joe Schaefer
>>>>>>>>        >>>>>>
>>>  <jo...@yahoo.com> wrote:
>>>>>>>>        >>>>>>>>>    
> Modulo some
>>>  bizarre
>>>>>    content
>>>>>>>       truncation out of
>>>>>>>>        >>> git-wip-us.apache.org
>>>>>>>>        >>>>>>>>    the 
> snippet support
>>>  is now
>>>>>    active.
>>>>>>      At
>>>>>>>       this point I think
>>>>>>>>        >>> all the build
>>>>>>>>        >>>>>>>>    support 
> you need in
>>>  this
>>>>>    project
>>>>>>      to
>>>>>>>       support every type of
>>>>>>>>        >>>>>  brainstorming
>>>>>>>>        >>>>>>>>    activity 
> we've
>>>  discussed
>>>>>    is
>>>>>>      now
>>>>>>>       there, so it's
>>>>>>>>        >>> just up to you
>>>>>>>>        >>>>>>  guys to
>>>>>>>>        >>>>>>>>    now 
> familiarize
>>>  yourselves
>>>>>    with
>>>>>>      the
>>>>>>>       build technology and
>>>>>>>>        >>> how to apply
>>>>>>>>        >>>>>>>>    it to 
> your needs.
>>>  The site
>>>>>    builds
>>>>>>      with
>>>>>>>       snippet support
>>>>>>>>        >>> are running
>>>>>>>>        >>>>>>  around
>>>>>>>>        >>>>>>>>    10 
> seconds, which
>>>  is to be
>>>>>>      expected
>>>>>>>       with the network
>>>>>>>>        >>> interactions
>>>>>>>>        >>>>>>  involved.
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>    I'm 
> always
>>>  willing to
>>>>>    answer
>>>>>>      any
>>>>>>>       questions that come
>>>>>>>>        >>> up in the
>>>>>>>>        >>>>>>  interim,
>>>>>>>>        >>>>>>>>    but I 
> wish you guys
>>>  the best
>>>>>    of
>>>>>>      luck in
>>>>>>>       the remaining
>>>>>>>>        >>> porting work to
>>>>>>>>        >>>>>>  be done.
>>>>>>>>        >>>>>>>>    All I see 
> really
>>>  are some
>>>>>    links
>>>>>>      that
>>>>>>>       need to have the
>>>>>>>>        >>> trailing slashes
>>>>>>>>        >>>>>>  removed
>>>>>>>>        >>>>>>>>    and 
> whatever <%=
>>>  %>
>>>>>    template
>>>>>> 
>>>>>>>       constructs that remain
>>>>>>>>        >>> need to be
>>>>>>>>        >>>>>>  ported to
>>>>>>>>        >>>>>>>>    django.  
> So it
>>>  should be
>>>>>    smooth
>>>>>>>       sailing, but as I said if
>>>>>>>>        >>> you hit any
>>>>>>>>        >>>>>>  snags
>>>>>>>>        >>>>>>>>    holler.  
> I'd
>>>  really like
>>>>>    to
>>>>>>      see the
>>>>>>>       live site tech
>>>>>>>>        >>> switched over to
>>>>>>>>        >>>>>>  the cms
>>>>>>>>        >>>>>>>>    stuff 
> before
>>>  Apachecon ends
>>>>>    in
>>>>>>      early
>>>>>>>       April, hint hint.
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> On
>>>  Wednesday, March
>>>>>    19,
>>>>>>      2014
>>>>>>>       10:41 PM, Joe Schaefer
>>>>>>>>        >>>>>>>>>
>>>>>    <jo...@yahoo.com>
>>>>>> 
>>>>>>>       wrote:
>>>>>>>>        >>>>>>>>>      
>>  While I
>>>  don't
>>>>>    yet
>>>>>>      know
>>>>>>>       the url magic to
>>>>>>>>        >>> support branches
>>>>>>>>        >>>>>>  and tags
>>>>>>>>        >>>>>>>>    in git,
>>>>>>>>        >>>>>>>>>      I 
> can say
>>>  that the
>>>>>    snippet
>>>>>>>       support is ready to play
>>>>>>>>        >>> with.  I
>>>>>>>>        >>>>>>  suggest just
>>>>>>>>        >>>>>>>>>      
> focusing on
>>>  the
>>>>>    /index.md
>>>>>>      page
>>>>>>>       first to see how it
>>>>>>>>        >>> works in
>>>>>>>>        >>>>>>  practice
>>>>>>>>        >>>>>>>>    because
>>>>>>>>        >>>>>>>>>      
> once it's
>>>  fully
>>>>>    enabled
>>>>>>      the
>>>>>>>       build will break
>>>>>>>>        >>> until all the
>>>>>>>>        >>>>>>  snippet
>>>>>>>>        >>>>>>>>    sources
>>>>>>>>        >>>>>>>>>      
> have been
>>>  altered to
>>>>>    conform
>>>>>>      with
>>>>>>>       the new style.
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>      To 
> turn it on
>>>  for
>>>>>    index.md
>>>>>>>       testing, there are a
>>>>>>>>        >>> couple of things
>>>>>>>>        >>>>>>  that need
>>>>>>>>        >>>>>>>>    to
>>>>>>>>        >>>>>>>>>      
> happen. First
>>>  the
>>>>>>      [snippet:...]
>>>>>>>       marker should be
>>>>>>>>        >>> edited to be
>>>>>>>>        >>>>>>>>    
> [XXXsnippet:...]
>>>>>>>>        >>>>>>>>>      to 
> enable
>>>  testing
>>>>>    without
>>>>>>>       breaking the build.
>>>>>>>>        >>> Second each marker
>>>>>>>>        >>>>>>  contains
>>>>>>>>        >>>>>>>>    a
>>>>>>>>        >>>>>>>>>
>>>  "token"
>>>>>    argument
>>>>>>>       instead of line numbers
>>>>>>>>        >>> for more
>>>>>>>>        >>>>>>  stability under
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>      
> edits to the
>>>  source
>>>>>    code.
>>>>>>      The
>>>>>>>       token argument is an
>>>>>>>>        >>> arbitrary
>>>>>>>>        >>>>>>  string that
>>>>>>>>        >>>>>>>>    is
>>>>>>>>        >>>>>>>>>      
> used to
>>>  denote the
>>>>>>      boundaries of
>>>>>>>       the snippet within
>>>>>>>>        >>> the source
>>>>>>>>        >>>>>>  code.
>>>>>>>>        >>>>>>>>>
>>>  ASF::Value::Snippet
>>>>>    will
>>>>>>      pull
>>>>>>>       out the lines from
>>>>>>>>        >>> the source file
>>>>>>>>        >>>>>>  between
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>      
> lines that
>>>  contain the
>>>>>    token
>>>>>> 
>>>>>>>       argument and format
>>>>>>>>        >>> them as a code
>>>>>>>>        >>>>>>  snippet
>>>>>>>>        >>>>>>>>    embedded
>>>>>>>>        >>>>>>>>>      
> into
>>>  markdown. To get
>>>>>>      started
>>>>>>>       I'll copy over
>>>>>>>>        >>> the code
>>>>>>>>        >>>>>>  highlighting css
>>>>>>>>        >>>>>>>>    from
>>>>>>>>        >>>>>>>>>
>>>  www.apache.org but note
>>>>>    that
>>>>>>      this
>>>>>>>       is all based on
>>>>>>>>        >>> python pygments
>>>>>>>>        >>>>>>  and there
>>>>>>>>        >>>>>>>>    are
>>>>>>>>        >>>>>>>>>      a 
> variety of
>>>  online css
>>>>> 
>>>>>>      files to
>>>>>>>       choose from if
>>>>>>>>        >>> this one is not
>>>>>>>>        >>>>>>  to the
>>>>>>>>        >>>>>>>>>      
> group's
>>>  liking.
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> On
>>>  Wednesday,
>>>>>    March 19,
>>>>>>      2014
>>>>>>>       4:16 PM, Joe
>>>>>>>>        >>> Schaefer
>>>>>>>>        >>>>>>>>>
>>>>>>      <jo...@yahoo.com>
>>>>>>>       wrote:
>>>>>>>>        >>>>>>>>>>      
>> 
>>>  Sorry I need
>>>>>    to
>>>>>>      clarify
>>>>>>>       with an example:
>>>>>>>>        >>> look at
>>>>>>>>        >>>>>>>>>>
>>>>>>>       http://thrift.staging.apache.org/tutorial/
>>>>>>>>        >>> versus
>>>>>>>>        >>>
>>>  http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>>        >>>>>>>>>>      
> former
>>>  is
>>>>>    generated
>>>>>>      from
>>>>>>>>        >>> content/tutorial/index.html
>>>>>>>>        >>>>>>>>>>      
> and the
>>>  latter
>>>>>    from
>>>>>>>       content/tutorial.md.  The
>>>>>>>>        >>> latter file
>>>>>>>>        >>>>>>>>>>      
> needs to
>>>  be
>>>>>    removed
>>>>>>      from the
>>>>>>>       tree now that
>>>>>>>>        >>> it's content
>>>>>>>>        >>>>>>>>>>      
> has been
>>>  ported to
>>>>>>>>        >>> content/tutorial/index.html.  
> This
>>>>>>>>        >>>>>>>>>>      
> uses
>>>  django
>>>>>    template
>>>>>>>       inheritance to maintain
>>>>>>>>        >>> simplicity.
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> Other
>>>  directories
>>>>>    that
>>>>>>>       follow a similar
>>>>>>>>        >>> pattern should
>>>>>>>>        >>>>>>>>>>      
> also be
>>>  ported in
>>>>>    the
>>>>>>      same
>>>>>>>       fashion.
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>  
>       On
>>>  Wednesday,
>>>>> 
>>>>>>      March 19,
>>>>>>>       2014 9:46 AM, Joe
>>>>>>>>        >>> Schaefer
>>>>>>>>        >>>>>>>>>>
>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>        >>>>>>>>>>>
>>>>    If
>>>>>>      someone's
>>>>>>>       looking for a way
>>>>>>>>        >>> to help with
>>>>>>>>        >>>>>>  the porting
>>>>>>>>        >>>>>>>>>>>
>>>  effort,
>>>>>    consider
>>>>>>>       tackling the creation of
>>>>>>>>        >>> an index.html
>>>>>>>>        >>>>>>>>>>>
>>>  page in each
>>>>>>      subdir of
>>>>>>>       the content/ tree
>>>>>>>>        >>> (other than
>>>>>>>>        >>>>>>  the
>>>>>>>>        >>>>>>>>>>>
>>>  base which
>>>>>    has an
>>>>>>>       /index.md).  The
>>>>>>>>        >>> contents of the file
>>>>>>>>        >>>>>>>>>>>
>>>  should be
>>>>>    just
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  {%
>>>>>    include
>>>>>>>       'default' %}
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  (see the docs
>>>>>    dir
>>>>>>      for
>>>>>>>       an example page
>>>>>>>>        >>> that can be
>>>>>>>>        >>>>>>  copied)
>>>>>>>>        >>>>>>>>>>>  
>       and
>>>  the build
>>>>> 
>>>>>>      system
>>>>>>>       will take care of
>>>>>>>>        >>> generating the
>>>>>>>>        >>>>>>  page
>>>>>>>>        >>>>>>>>>>>  
>       in
>>>  a
>>>>>    consistent
>>>>>>      fashion
>>>>>>>       with the rest of
>>>>>>>>        >>> the site.
>>>>>>>>        >>>>>>  Once
>>>>>>>>        >>>>>>>>>>>
>>>  that is done
>>>>>    there
>>>>>>      are
>>>>>>>       a lot of pages
>>>>>>>>        >>> that function
>>>>>>>>        >>>>>>  like
>>>>>>>>        >>>>>>>>>>>
>>>  index pages
>>>>>    but
>>>>>>      are
>>>>>>>       written in markdown
>>>>>>>>        >>> that can be
>>>>>>>>        >>>>>>  deleted,
>>>>>>>>        >>>>>>>>>>>
>>>  like docs.md
>>>>>    and
>>>>>>      its
>>>>>>>       ilk.  Nanoc
>>>>>>>>        >>> transforms that file
>>>>>>>>        >>>>>>  into
>>>>>>>>        >>>>>>>>>>>
>>>>>    /docs/index.html
>>>>>>      but
>>>>>>>       that's kinda
>>>>>>>>        >>> crufty and not
>>>>>>>>        >>>>>>  supported
>>>>>>>>        >>>>>>>>>>>  
>       by
>>>  the CMS,
>>>>>    which
>>>>>>      only
>>>>>>>       lets you alter
>>>>>>>>        >>> file extensions
>>>>>>>>        >>>>>>  not paths.
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  On
>>>>>    Wednesday,
>>>>>> 
>>>>>>>       March 19, 2014 8:54
>>>>>>>>        >>> AM, Joe Schaefer
>>>>>>>>        >>>>>>>>>>>
>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>    I
>>>>>    just
>>>>>>>       pencilled in snippet
>>>>>>>>        >>> preprocessing
>>>>>>>>        >>>>>>  support into
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  the
>>>>>    thrift
>>>>>>>       builds.  Once Jake and I
>>>>>>>>        >>> have settled
>>>>>>>>        >>>>>>  on the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  feature
>>>>>    set
>>>>>>      of
>>>>>>>       ASF::Value::Snippet,
>>>>>>>>        >>> and we have
>>>>>>>>        >>>>>>  ported
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  the
>>>>>    snippet
>>>>>>>       calling text within the
>>>>>>>>        >>> markdown pages
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  to the
>>>>>    new
>>>>>>      format,
>>>>>>>       things will just
>>>>>>>>        >>> work (knock on
>>>>>>>>        >>>>>>  wood).
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         On
>>>>>>      Wednesday,
>>>>>>>       March 19, 2014
>>>>>>>>        >>> 6:48 AM, Joseph
>>>>>>>>        >>>>>>  Schaefer
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>       <jo...@yahoo.com>
>>>>>>>>        >>> wrote:
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>      Sure I
>>>>>>>       understand that
>>>>>>>>        >>> need.  If
>>>>>>>>        >>>>>>  there's a way
>>>>>>>>        >>>>>>>>    of
>>>>>>>>        >>>>>>>>>>      
> pulling
>>>  the
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  document
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    sources
>>>>>>>       directly from the web I
>>>>>>>>        >>> can parse the
>>>>>>>>        >>>>>>  content
>>>>>>>>        >>>>>>>>    to
>>>>>>>>        >>>>>>>>>      
> look for
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  snippet
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    markers
>>>>>>      and
>>>>>>>       make those
>>>>>>>>        >>> available to the
>>>>>>>>        >>>>>>  template
>>>>>>>>        >>>>>>>>    system.
>>>>>>>>        >>>>>>>>>>
>>>  That's
>>>>>>>>        >>>>>>>>>>>
>>>  pretty
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  much
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         how
>>>>> 
>>>>>>>       www.apache.org is
>>>>>>>>        >>> generated.
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    Sent
>>>>>>      from my
>>>>>>>       iPhone
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>        On
>>>>>>      Mar
>>>>>>>       19, 2014, at 5:28
>>>>>>>>        >>> AM, Henrique
>>>>>>>>        >>>>>>  Mendonça
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>       <he...@apache.org>
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>        Hi
>>>>>>      Joe,
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      Thanks
>>>>>>>       for your effort. I
>>>>>>>>        >>> just wanted to
>>>>>>>>        >>>>>>  add that
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>      
> code
>>>>>>>>        >>>>>>>>>>>
>>>  snippets
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  are a
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      crucial
>>>>>>>       feature for this
>>>>>>>>        >>> project, which
>>>>>>>>        >>>>>>  has way
>>>>>>>>        >>>>>>>>    more
>>>>>>>>        >>>>>>>>>      
> target
>>>>>>>>        >>>>>>>>>>>
>>>  languages
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  than
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      active
>>>>>>>       contributors. In
>>>>>>>>        >>> our case,
>>>>>>>>        >>>>>>  reducing manual
>>>>>>>>        >>>>>>>>>>
>>>  maintenance
>>>>>>>>        >>>>>>>>>>>
>>>  costs is
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  much
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      more
>>>>>>>       important than the
>>>>>>>>        >>> total site build
>>>>>>>>        >>>>>>  time.
>>>>>>>>        >>>>>>>>    Perhaps
>>>>>>>>        >>>>>>>>>      we
>>>>>>>>        >>>>>>>>>>      
> can
>>>>>>>>        >>>>>>>>>>>
>>>  also
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  solve
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      this in
>>>>>>>       the CMS, though.
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>        -
>>>>>>>       Henrique
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      On
>>>>>>>       19 March 2014
>>>>>>>>        >>> 03:17, Joe Schaefer
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>       <jo...@yahoo.com>
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      A
>>>>>>>       couple more thoughts
>>>>>>>>        >>> regarding the
>>>>>>>>        >>>>>>>>    
> background on
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> CMS...
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      the
>>>>>>>       bulk of the focus
>>>>>>>>        >>> of the CMS up
>>>>>>>>        >>>>>>  until now
>>>>>>>>        >>>>>>>>    has
>>>>>>>>        >>>>>>>>>      
> been
>>>>>>>>        >>>>>>>>>>      
> to
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       support really big
>>>>>>>>        >>> sites like maven
>>>>>>>>        >>>>>>  and
>>>>>>>>        >>>>>>>>    
> openoffice,
>>>>>>>>        >>>>>>>>>      
> both
>>>>>>>>        >>>>>>>>>>      
> of
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       which have websites
>>>>>>>>        >>> well over 5GB
>>>>>>>>        >>>>>>  worth of
>>>>>>>>        >>>>>>>>    text
>>>>>>>>        >>>>>>>>>      
> files.
>>>>>>>>        >>>>>>>>>>      
> The
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       build system was
>>>>>>>>        >>> hollowed out and
>>>>>>>>        >>>>>>  revamped to
>>>>>>>>        >>>>>>>>>      
> support
>>>>>>>>        >>>>>>>>>>>
>>>  external
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       builds in other
>>>>>>>>        >>> programming
>>>>>>>>        >>>>>>  languages, as well
>>>>>>>>        >>>>>>>>    as
>>>>>>>>        >>>>>>>>>>      
> scaling
>>>  up
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      the
>>>>>>>       perl builds to
>>>>>>>>        >>> provide about 8
>>>>>>>>        >>>>>>  child
>>>>>>>>        >>>>>>>>    processes
>>>>>>>>        >>>>>>>>>      
> that
>>>>>>>>        >>>>>>>>>>      
> build
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      the
>>>>>>>       site in parallel
>>>>>>>>        >>> by default.
>>>>>>>>        >>>>>>  Full site
>>>>>>>>        >>>>>>>>    build
>>>>>>>>        >>>>>>>>>      
> times
>>>>>>>>        >>>>>>>>>>      
> for
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       openoffice went from
>>>>>>>>        >>> over 30 minutes
>>>>>>>>        >>>>>>  to
>>>>>>>>        >>>>>>>>    between 5
>>>>>>>>        >>>>>>>>>      to 
> 10
>>>>>>>>        >>>>>>>>>>>
>>>  minutes
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       depending on disk
>>>>>>>>        >>> activity, which
>>>>>>>>        >>>>>>  made
>>>>>>>>        >>>>>>>>>
>>>  experimentation
>>>>>>>>        >>>>>>>>>>      
> with
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    site-wide
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       changes feasible on a
>>>>>>>>        >>> reasonable
>>>>>>>>        >>>>>>  timeframe.
>>>>>>>>        >>>>>>>>    At
>>>>>>>>        >>>>>>>>>      
> first
>>>>>>>>        >>>>>>>>>>      
> the
>>>>>>>>        >>>>>>>>>>>
>>>  project
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  was
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         in
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      the
>>>>>>>       habit of running
>>>>>>>>        >>> the builds
>>>>>>>>        >>>>>>  locally before
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>      
> checking
>>>>>>>>        >>>>>>>>>>      
> in
>>>>>>>>        >>>>>>>>>>>
>>>  their
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    changes
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       because the delay in
>>>>>>>>        >>> feedback
>>>>>>>>        >>>>>>  post-commit was
>>>>>>>>        >>>>>>>>>>
>>>  unreasonable,
>>>>>>>>        >>>>>>>>>>>  
>       but
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  with
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    smart
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      use
>>>>>>>       of SSI the were
>>>>>>>>        >>> able to cut down
>>>>>>>>        >>>>>>  on the
>>>>>>>>        >>>>>>>>    number
>>>>>>>>        >>>>>>>>>      of
>>>>>>>>        >>>>>>>>>>      
> changes
>>>>>>>>        >>>>>>>>>>>
>>>  that
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    required
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      full
>>>>>>>       site builds and
>>>>>>>>        >>> hence no longer
>>>>>>>>        >>>>>>  bother
>>>>>>>>        >>>>>>>>    with
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> whole
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    pre-build
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    mumbo
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       jumbo before checking
>>>>>>>>        >>> in changes.
>>>>>>>>        >>>>>>  The CMS is
>>>>>>>>        >>>>>>>>>      
> designed
>>>>>>>>        >>>>>>>>>>      
> to
>>>>>>>>        >>>>>>>>>>>
>>>  only
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  build
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    pages
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      that
>>>>>>>       were altered, and
>>>>>>>>        >>> if you just
>>>>>>>>        >>>>>>  edit a page
>>>>>>>>        >>>>>>>>    or
>>>>>>>>        >>>>>>>>>      two
>>>>>>>>        >>>>>>>>>>      
> only
>>>>>>>>        >>>>>>>>>>>
>>>  those
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  pages
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         and
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      the
>>>>>>>       pages that depend
>>>>>>>>        >>> on them will
>>>>>>>>        >>>>>>  be built.
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      Now
>>>>>>>       that I've
>>>>>>>>        >>> turned my
>>>>>>>>        >>>>>>  attention to
>>>>>>>>        >>>>>>>>    thrift,
>>>>>>>>        >>>>>>>>>      
> there
>>>>>>>>        >>>>>>>>>>      
> are
>>>>>>>>        >>>>>>>>>>>
>>>  several
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    aspects
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      that
>>>>>>>       are better off
>>>>>>>>        >>> being retuned
>>>>>>>>        >>>>>>  based on the
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>      
> modest
>>>>>>>>        >>>>>>>>>>      
> size of
>>>>>>>>        >>>>>>>>>>>  
>       the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  site.
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       First of all you have
>>>>>>>>        >>> a sitemap url
>>>>>>>>        >>>>>>  that lists
>>>>>>>>        >>>>>>>>    all
>>>>>>>>        >>>>>>>>>      of
>>>>>>>>        >>>>>>>>>>      
> your
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>       markdown-based
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       pages, which would be
>>>>>>>>        >>> a nonstarter
>>>>>>>>        >>>>>>  for a site
>>>>>>>>        >>>>>>>>    like
>>>>>>>>        >>>>>>>>>>>
>>>  openoffice.
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  The
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       implications of the
>>>>>>>>        >>> sitemap url are
>>>>>>>>        >>>>>>  that every
>>>>>>>>        >>>>>>>>    page
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> needs to
>>>>>>>>        >>>>>>>>>>>  
>       be
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  built
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         in
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       memory just to
>>>>>>>>        >>> generate that page,
>>>>>>>>        >>>>>>  which leads
>>>>>>>>        >>>>>>>>    to a
>>>>>>>>        >>>>>>>>>      lot
>>>>>>>>        >>>>>>>>>>      
> of
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    redundancy
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         in
>>>>>    a
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       build system designed
>>>>>>>>        >>> to run as
>>>>>>>>        >>>>>>  forked child
>>>>>>>>        >>>>>>>>>      
> processes.
>>>>>>>>        >>>>>>>>>>      
> We
>>>>>>>>        >>>>>>>>>>>  
>       can
>>>  do
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>      better...
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       I've done two
>>>>>>>>        >>> things to make
>>>>>>>>        >>>>>>  this work
>>>>>>>>        >>>>>>>>    well-
>>>>>>>>        >>>>>>>>>      
> first I
>>>>>>>>        >>>>>>>>>>      
> made
>>>>>>>>        >>>>>>>>>>>  
>       the
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    number
>>>>>>      of
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       child processes
>>>>>>>>        >>> "aka
>>>>>>>>        >>>>>>  runners"
>>>>>>>>        >>>>>>>>    tunable 
> on
>>>>>>>>        >>>>>>>>>      a
>>>>>>>>        >>>>>>>>>>>
>>>  per-project
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  basis,
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         and
>>>>> 
>>>>>>      since the
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       sitemap is going to
>>>>>>>>        >>> build every page
>>>>>>>>        >>>>>>  anyway as
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>>      
> slowest
>>>>>>>>        >>>>>>>>>>>
>>>  page to
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    build, I
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       memoized the main view
>>>>>>>>        >>> that builds
>>>>>>>>        >>>>>>  the
>>>>>>>>        >>>>>>>>    markdown
>>>>>>>>        >>>>>>>>>      
> pages
>>>>>>>>        >>>>>>>>>>      
> for
>>>>>>>>        >>>>>>>>>>>
>>>  thrift.
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  The
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    best
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       results are when
>>>>>>>>        >>> there's only
>>>>>>>>        >>>>>>  one runner
>>>>>>>>        >>>>>>>>    so we
>>>>>>>>        >>>>>>>>>      get
>>>>>>>>        >>>>>>>>>>      
> the
>>>>>>>>        >>>>>>>>>>>
>>>  full
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  benefit
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         of
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       memoization: typical
>>>>>>>>        >>> site build
>>>>>>>>        >>>>>>  times are
>>>>>>>>        >>>>>>>>>      
> consistently
>>>>>>>>        >>>>>>>>>>      
> under
>>>>>>>>        >>>>>>>>>>>  
>       2
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  seconds
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    now.
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       You'll appreciate
>>>>>>>>        >>> why I am such
>>>>>>>>        >>>>>>  a
>>>>>>>>        >>>>>>>>    
> performance
>>>>>>>>        >>>>>>>>>>      
> stickler
>>>>>>>>        >>>>>>>>>>>  
>       for
>>>  the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  CMS
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    when
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      you
>>>>>>>       start using the
>>>>>>>>        >>> bookmarklet,
>>>>>>>>        >>>>>>  since builds
>>>>>>>>        >>>>>>>>    are
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> only
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    asynchronous
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      part
>>>>>>>       of the process
>>>>>>>>        >>> from making a
>>>>>>>>        >>>>>>  change to a
>>>>>>>>        >>>>>>>>    page
>>>>>>>>        >>>>>>>>>      and
>>>>>>>>        >>>>>>>>>>>
>>>  publishing
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  the
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       results.  Ideally when
>>>>>>>>        >>> the system is
>>>>>>>>        >>>>>>  working
>>>>>>>>        >>>>>>>>    well
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> builds
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  happen
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    before
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      you
>>>>>>>       have time to go
>>>>>>>>        >>> looking for
>>>>>>>>        >>>>>>  them, but you
>>>>>>>>        >>>>>>>>    do
>>>>>>>>        >>>>>>>>>      
> need to
>>>>>>>>        >>>>>>>>>>      
> be
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  mindful
>>>>>    of
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         not
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       publishing before the
>>>>>>>>        >>> built pages
>>>>>>>>        >>>>>>  have been
>>>>>>>>        >>>>>>>>>      
> committed
>>>>>>>>        >>>>>>>>>>      
> back to
>>>>>>>>        >>>>>>>>>>>  
>       svn
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  by
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       buildbot.
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       On Monday, March
>>>>>>>>        >>> 17, 2014 11:59
>>>>>>>>        >>>>>>  PM, Joe
>>>>>>>>        >>>>>>>>>      
> Schaefer
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>       <jo...@yahoo.com>
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          Ok there's
>>>>>>>>        >>> enough of an
>>>>>>>>        >>>>>>  idea about
>>>>>>>>        >>>>>>>>    how
>>>>>>>>        >>>>>>>>>      to
>>>>>>>>        >>>>>>>>>>      
> port
>>>>>>>>        >>>>>>>>>>>  
>       the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  rest of
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         the
>>>>> 
>>>>>>>       site's
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       pages over based
>>>>>>>>        >>> on the porting
>>>>>>>>        >>>>>>  work
>>>>>>>>        >>>>>>>>    I've
>>>>>>>>        >>>>>>>>>>      
> already
>>>>>>>>        >>>>>>>>>>>
>>>  done
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  that
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    it's
>>>>>>      time
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       for me to step
>>>>>>>>        >>> back and let you
>>>>>>>>        >>>>>>  guys catch
>>>>>>>>        >>>>>>>>    up.
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>  Basically
>>>>>>>>        >>>>>>>>>>>  
>       the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  idea
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         is
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      that
>>>>>>>       while
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       there is
>>>>>>>>        >>> templating support in
>>>>>>>>        >>>>>>  the
>>>>>>>>        >>>>>>>>    markdown
>>>>>>>>        >>>>>>>>>      
> sources,
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  it's
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    fairly
>>>>>>>       limited
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       compared to what
>>>>>>>>        >>> nanoc offers,
>>>>>>>>        >>>>>>  but instead
>>>>>>>>        >>>>>>>>    of
>>>>>>>>        >>>>>>>>>>      
> writing
>>>  a
>>>>>>>>        >>>>>>>>>>>  
>       lot
>>>  of
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    complex
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       template
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       code into your
>>>>>>>>        >>> sources, with the
>>>>>>>>        >>>>>>  cms you
>>>>>>>>        >>>>>>>>    just
>>>>>>>>        >>>>>>>>>      add
>>>>>>>>        >>>>>>>>>>      
> code to
>>>>>>>>        >>>>>>>>>>>
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>       lib/view.pmand/or
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       lib/path.pm to
>>>>>>>>        >>> keep the document
>>>>>>>>        >>>>>>  sources
>>>>>>>>        >>>>>>>>    simple
>>>>>>>>        >>>>>>>>>      and
>>>>>>>>        >>>>>>>>>>      
> just
>>>>>>>>        >>>>>>>>>>>  
>       add
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  more
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       template
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       variables.  What I
>>>>>>>>        >>> just finished
>>>>>>>>        >>>>>>  in
>>>>>>>>        >>>>>>>>    
> lib/view.pm
>>>>>>>>        >>>>>>>>>      and
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    lib/path.pm
>>>>>>      is
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       directory
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       listing support
>>>>>>>>        >>> for /docs.html
>>>>>>>>        >>>>>>  but it can
>>>>>>>>        >>>>>>>>    be
>>>>>>>>        >>>>>>>>>      
> carried
>>>>>>>>        >>>>>>>>>>      
> over
>>>>>>>>        >>>>>>>>>>>  
>       to
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    similar
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>       pages.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          On Monday,
>>>>>>>>        >>> March 17, 2014
>>>>>>>>        >>>>>>  9:16 PM, Joe
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>      
> Schaefer
>>>>>>>>        >>> <jo...@yahoo.com>
>>>>>>>>        >>>>>>  wrote:
>>>>>>>>        >>> Interesting ideas,
>>>>>>>>        >>>>>>  thanks.  FWIW I
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>      
> think
>>>>>>>>        >>>>>>>>>>      
> that
>>>>>>>>        >>>>>>>>>>>
>>>  sort
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          of thing might
>>>>>>>>        >>> be best
>>>>>>>>        >>>>>>  supported as a
>>>>>>>>        >>>>>>>>>      
> periodic
>>>>>>>>        >>>>>>>>>>      
> cron
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          if we can
>>>>>>>>        >>> write something
>>>>>>>>        >>>>>>  stable
>>>>>>>>        >>>>>>>>    enough,
>>>>>>>>        >>>>>>>>>      
> because
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  pulling
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          stuff out of
>>>>>>>>        >>> the git repo is
>>>>>>>>        >>>>>>  something
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>      CMS
>>>>>>>>        >>>>>>>>>>>
>>>  isn't
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  going
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          to do all that
>>>>>>>>        >>> well being an
>>>>>>>>        >>>>>>  svn
>>>>>>>>        >>>>>>>>>      
> application.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          The CMS build
>>>>>>>>        >>> results are
>>>>>>>>        >>>>>>  available at
>>>>>>>>        >>> 
> http://thrift.staging.apache.org/
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          feel free to
>>>>>>>>        >>> play with the
>>>>>>>>        >>>>>>  sources in
>>>>>>>>        >>> repos/asf/thrift/cms-site/trunk.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          It's very
>>>>>>>>        >>> fast, probably
>>>>>>>>        >>>>>>  an order
>>>>>>>>        >>>>>>>>    of
>>>>>>>>        >>>>>>>>>>
>>>  magnitude
>>>>>>>>        >>>>>>>>>>>
>>>  faster
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  than
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    your
>>>>>>      current
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          tech.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          Whole site
>>>>>>>>        >>> builds in two
>>>>>>>>        >>>>>>  seconds;
>>>>>>>>        >>>>>>>>    fractions
>>>>>>>>        >>>>>>>>>      of 
> a
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  second
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  for
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    typical
>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>      mods
>>>>>>>       to
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          content/
>>>>>>>>        >>> markdown pages.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          The CMS
>>>>>>>>        >>> bookmarklet is
>>>>>>>>        >>>>>>  compatible with
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>>      
> staging
>>>>>>>>        >>>>>>>>>>>
>>>  site
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  FWIW.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               On
>>>>>>>>        >>> Monday, March 17,
>>>>>>>>        >>>>>>  2014 7:40
>>>>>>>>        >>>>>>>>    PM,
>>>>>>>>        >>>>>>>>>      
> Roger
>>>>>>>>        >>>>>>>>>>      
> Meier
>>>>>>>>        >>>>>>
>>>  <ro...@bufferoverflow.ch> wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>              Hi Joe
>>>>>>>>        >>> & Co
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               thanks
>>>>>>>>        >>> for this test
>>>>>>>>        >>>>>>  run with
>>>>>>>>        >>>>>>>>    Apache
>>>>>>>>        >>>>>>>>>      
> CMS!
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               What I
>>>>>>>>        >>> would love to
>>>>>>>>        >>>>>>  see is this:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               Source
>>>>>>>>        >>> file: => Web
>>>>>>>>        >>>>>>  Site URL:
>>>>>>>>        >>> test/README.md =>
>>>>>>>>        >>>>>>>>>
>>>  thrift.apache.org/test
>>>>>>>>        >>> test/STATUS.md =>
>>>>>>>>        >>>>>>>>>>>
>>>>>>>       thrift.apache.org/test/status
>>>>>>>>        >>> test/keys/README.md
>>>>>>>>        >>>>>>  =>
>>>>>>>>        >>>>>>>>>>>
>>>>>>>       thrift.apache.org/test/keys
>>>>>>>>        >>>>>>  
> lib/<lang>/README.md
>>>  =>
>>>>>>>>        >>> 
> thrift.apache.org/lib/<lang>
>>>>>>>>        >>>>>>
>>>  lib/<lang>/test/README.md
>>>>>>>>        >>>>>>>>    =>
>>>>>>>>        >>>>>>>>
>>>>>>      thrift.apache.org/lib/<lang>/test
>>>>>>>>        >>>>>>>>
>>>>>>      lib/<lang>/examples/README.md
>>>>>>>>        >>>>>>>>>      
> =>
>>>>>>>>        >>>>>>>>>
>>>>>>>       thrift.apache.org/lib/<lang>/examples
>>>>>>>>        >>> compiler/cpp/README.md
>>>>>>>>        >>>>>>  =>
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>>>       thrift.apache.org/compiler
>>>>>>>>        >>> debian/README.md =>
>>>>>>>>        >>>>>>>>>>
>>>>>>      thrift.apache.org/debian
>>>>>>>>        >>>>>>
>>>  contrib/<topic>/README.md
>>>>>>>>        >>>>>>>>    =>
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>>       thrift.apache.org/<topic>
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               just made
>>>>>>>>        >>> the following
>>>>>>>>        >>>>>>  patch to
>>>>>>>>        >>>>>>>>>      
> rename all
>>>>>>>>        >>>>>>>>>>      
> file
>>>>>>>>        >>>>>>>>>>>  
>       to
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  .md
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    within
>>>>>>      our
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       source
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               tree:
>>>>>>>>        >>>
>>>  https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               ... we
>>>>>>>>        >>> have *41*
>>>>>>>>        >>>>>>  md's within
>>>>>>>>        >>>>>>>>    the
>>>>>>>>        >>>>>>>>>      
> source
>>>>>>>>        >>>>>>>>>>      
> tree
>>>>>>>>        >>>>>>>>>>>  
>       and
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>      that's
>>>>>>>       the
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       place
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          where
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               people
>>>>>>>>        >>> look for
>>>>>>>>        >>>>>>  documentation
>>>>>>>>        >>>>>>>>    first.
>>>>>>>>        >>>>>>>>>      
> =>
>>>>>>>>        >>>>>>>>>>>
>>>  simple to
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    manage
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               Would be
>>>>>>>>        >>> user friendly
>>>>>>>>        >>>>>>  to have
>>>>>>>>        >>>>>>>>    all of
>>>>>>>>        >>>>>>>>>      
> this
>>>>>>>>        >>>>>>>>>>>
>>>  online
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  with
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    each
>>>>>>      release
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               with the
>>>>>>>>        >>> URL layout
>>>>>>>>        >>>>>>  mentioned
>>>>>>>>        >>>>>>>>    above.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               just
>>>>>>>>        >>> received the
>>>>>>>>        >>>>>>  buildboot...
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               Do you
>>>>>>>>        >>> have kind of a
>>>>>>>>        >>>>>>  preview of
>>>>>>>>        >>>>>>>>    your
>>>>>>>>        >>>>>>>>>>
>>>  prototype?
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               all the
>>>>>>>>        >>> best!
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               -roger
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               ;-r
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               Quoting
>>>>>>>>        >>> Jake Farrell
>>>>>>>>        >>>>>>>>>>>
>>>>>>>       <jf...@apache.org>:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>                No
>>>>>>>>        >>> objections from
>>>>>>>>        >>>>>>  me
>>>>>>>>        >>> -Jake
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>                On
>>>>>>>>        >>> Mon, Mar 17,
>>>>>>>>        >>>>>>  2014 at
>>>>>>>>        >>>>>>>>    12:04 PM,
>>>>>>>>        >>>>>>>>>      Joe
>>>>>>>>        >>>>>>>>>>>
>>>  Schaefer
>>>>>>>>        >>>>>>>>
>>>>>>      <jo...@yahoo.com>wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>> Any objections
>>>>>>>>        >>>>>>  to me
>>>>>>>>        >>>>>>>>    making a
>>>>>>>>        >>>>>>>>>      
> copy
>>>>>>>>        >>>>>>>>>>      
> of
>>>>>>>>        >>>>>>>>>>>  
>       the
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  site
>>>>>>>>        >>> tree alongside
>>>>>>>>        >>>>>>  it called
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>  cms-site?
>>>>>>>>        >>>>>>>>>>>
>>>  I'd
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  like
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         to
>>>>>>>>        >>> get cracking
>>>>>>>>        >>>>>>  on knocking
>>>>>>>>        >>>>>>>>    up
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>>
>>>  supporting
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  perl
>>>>>>>>        >>> for this so we
>>>>>>>>        >>>>>>  can
>>>>>>>>        >>>>>>>>    continue
>>>>>>>>        >>>>>>>>>      to
>>>>>>>>        >>>>>>>>>>>
>>>  brainstorm...
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>   On Sunday,
>>>>>>>>        >>>>>>  March 16,
>>>>>>>>        >>>>>>>>    2014
>>>>>>>>        >>>>>>>>>      
> 1:53
>>>>>>>>        >>>>>>>>>>      
> PM,
>>>>>>>>        >>>>>>>>>>>  
>       Joe
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  Schaefer
>>>>>>>>        >>>>>>
>>>  <jo...@yahoo.com>
>>>>>>>>        >>> wrote:
>>>>>>>>        >>>       On
>>>>>>>>        >>>>>>  Sunday, March
>>>>>>>>        >>>>>>>>    16,
>>>>>>>>        >>>>>>>>>      
> 2014
>>>>>>>>        >>>>>>>>>>      
> 1:40
>>>>>>>>        >>>>>>>>>>>  
>       PM,
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  Jake
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    Farrell
>>>>>>>>        >>>>>>  
> <jf...@apache.org>
>>>>>>>>        >>>   wrote:
>>>>>>>>        >>>   Hey Joe
>>>>>>>>        >>>       Thanks
>>>>>>>>        >>>>>>  for
>>>>>>>>        >>>>>>>>    reaching
>>>>>>>>        >>>>>>>>>      
> out, we
>>>>>>>>        >>>>>>>>>>      
> chose
>>>>>>>>        >>>>>>>>>>>  
>       to
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  go
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    with a
>>>>>>      site
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          generator
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               over the
>>>>>>>>        >>>       Apache
>>>>>>>>        >>>>>>  CMS due to
>>>>>>>>        >>>>>>>>    it
>>>>>>>>        >>>>>>>>>>
>>>  initially
>>>>>>>>        >>>>>>>>>>>  
>       not
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  meeting
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         all
>>>>>    of
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       our
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          needs.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               Our
>>>>>>>>        >>> current
>>>>>>>>        >>>       needs
>>>>>>>>        >>>>>>  for the site
>>>>>>>>        >>>>>>>>    are
>>>>>>>>        >>>       -
>>>>>>>>        >>>>>>  Markdown to html
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>  conversion
>>>>>>>>        >>>   That
>>>>>>>>        >>>>>>  one's easy-
>>>>>>>>        >>>>>>>>    its
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> default
>>>>>>>>        >>>>>>>>>>>  
>       for
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  the
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    cms.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>       - Global
>>>>>>>>        >>>>>>>>>
>>>  variables/config
>>>>>>>>        >>>>>>>>>>      
> usable
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    throughout
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         in
>>>>>    a
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       template
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               based
>>>>>>>>        >>> layout
>>>>>>>>        >>>   Easy too-
>>>>>>>>        >>>>>>  just create
>>>>>>>>        >>>>>>>>    a
>>>>>>>>        >>>>>>>>>      
> perl
>>>>>>>>        >>>>>>>>>>      
> hash
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    somewhere and
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    make it
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          available
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               to
>>>>>>>>        >>> your views.
>>>>>>>>        >>>   Code your
>>>>>>>>        >>>>>>  views to
>>>>>>>>        >>>>>>>>    pass
>>>>>>>>        >>>>>>>>>      
> that
>>>>>>>>        >>>>>>>>>>      
> hash
>>>>>>>>        >>>>>>>>>>>
>>>  along to
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  your
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       templates
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          and you
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               are
>>>>>>>>        >>> all set.
>>>>>>>>        >>>   Note if your
>>>>>>>>        >>>>>>  hash
>>>>>>>>        >>>>>>>>    contains
>>>>>>>>        >>>>>>>>>>      
> objects
>>>>>>>>        >>>>>>>>>>>  
>       you
>>>  can
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  make
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    method
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       calls
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          on
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               them in
>>>>>>>>        >>> your
>>>>>>>>        >>>   templates.
>>>>>>>>        >>>>>>  Note:
>>>>>>>>        >>>>>>>>    while I
>>>>>>>>        >>>>>>>>>>>
>>>  wouldn't
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>      recommend
>>>>>>>       this in
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          general,
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               for
>>>>>>>>        >>> smaller
>>>>>>>>        >>>   projects
>>>>>>>>        >>>>>>  like thrift
>>>>>>>>        >>>>>>>>    that
>>>>>>>>        >>>>>>>>>      
> prefer
>>>>>>>>        >>>>>>>>>>
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    convenience
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    over
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       separation
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          of
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               concerns
>>>>>>>>        >>> you can
>>>>>>>>        >>>   have the
>>>>>>>>        >>>>>>  django
>>>>>>>>        >>>>>>>>    template
>>>>>>>>        >>>>>>>>>      
> engine
>>>>>>>>        >>>>>>>>>>      
> do a
>>>>>>>>        >>>>>>>>>>>
>>>  pass
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  over
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    your
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       markdown
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               before
>>>>>>>>        >>> passing it
>>>>>>>>        >>>   along to
>>>>>>>>        >>>>>>  your actual
>>>>>>>>        >>>>>>>>>      
> template
>>>>>>>>        >>>>>>>>>>      
> page,
>>>>>>>>        >>>>>>>>>>>
>>>  just
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  as is
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>>      seemingly
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          common to
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               other
>>>>>>>>        >>> popular
>>>>>>>>        >>>   site
>>>>>>>>        >>>>>>  generation
>>>>>>>>        >>>>>>>>    software.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>       - Syntax
>>>>>>>>        >>>>>>>>    
> highlighting
>>>>>>>>        >>>   Comes with
>>>>>>>>        >>>>>>>>    
> python's
>>>>>>>>        >>>>>>>>>      
> markdown
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  support,
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  but
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    some
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       people
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          prefer
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               the look
>>>>>>>>        >>> of
>>>>>>>>        >>>   javascript
>>>>>>>>        >>>>>>>>    
> highlighters.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>       - Easily
>>>>>>>>        >>>>>>  include
>>>>>>>>        >>>>>>>>    code
>>>>>>>>        >>>>>>>>>>      
> snippets
>>>>>>>>        >>>>>>>>>>>
>>>  from
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  our
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    source
>>>>>>      code
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       base
>>>>>>>>        >>>   Statically I
>>>>>>>>        >>>>>>  hope.  No
>>>>>>>>        >>>>>>>>    idea
>>>>>>>>        >>>>>>>>>      how
>>>>>>>>        >>>>>>>>>>      
> to
>>>>>>>>        >>>>>>>>>>>
>>>  pull
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    snippets
>>>>>>      out
>>>>>>>       of
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       your
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          git
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               repo
>>>>>>>>        >>> via the
>>>>>>>>        >>>   cms.
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>       -
>>>>>>>>        >>>>>>  Ability to
>>>>>>>>        >>>>>>>>    locally
>>>>>>>>        >>>>>>>>>      
> test
>>>>>>>>        >>>>>>>>>>      
> before
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    committing
>>>>>>>>        >>>   Belt and
>>>>>>>>        >>>>>>  suspenders
>>>>>>>>        >>>>>>>>    with
>>>>>>>>        >>>>>>>>>      the
>>>>>>>>        >>>>>>>>>>      
> cms- you
>>>>>>>>        >>>>>>>>>>>  
>       can
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  build
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    your
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       changes
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               before
>>>>>>>>        >>> committing
>>>>>>>>        >>>   with the
>>>>>>>>        >>>>>>  build
>>>>>>>>        >>>>>>>>    scripts,
>>>>>>>>        >>>>>>>>>      
> browse
>>>>>>>>        >>>>>>>>>>      
> your
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  changes
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    before
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       committing
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          via
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               the cms
>>>>>>>>        >>>   webgui, or
>>>>>>>>        >>>>>>  simply
>>>>>>>>        >>>>>>>>    commit
>>>>>>>>        >>>>>>>>>      
> your
>>>>>>>>        >>>>>>>>>>      
> changes
>>>>>>>>        >>>>>>>>>>>  
>       and
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  view
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         the
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       staging
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          site
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               prior to
>>>>>>>>        >>> live
>>>>>>>>        >>>   publication
>>>>>>>>        >>>>>>  (which is
>>>>>>>>        >>>>>>>>    a
>>>>>>>>        >>>>>>>>>      
> separate
>>>>>>>>        >>>>>>>>>>
>>>>>>>>        >>>>>>>>>>>
>>>  step).
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>       -Jake
>>>>>>>>        >>>       On Sun,
>>>>>>>>        >>>>>>  Mar 16,
>>>>>>>>        >>>>>>>>    2014 at
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> 12:44
>>>  PM,
>>>>>>>>        >>>>>>>>>>>  
>       Joe
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    Schaefer
>>>>>>>>        >>>>>>>>>>
>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>>        >>>         As
>>>>>>>>        >>>>>>  it so
>>>>>>>>        >>>>>>>>    happens I
>>>>>>>>        >>>>>>>>>      am
>>>>>>>>        >>>>>>>>>>>
>>>  interested
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  in
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    working
>>>>>>      on
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          supporting
>>>>>>>>        >>>>>>  thrift's
>>>>>>>>        >>>>>>>>    use
>>>>>>>>        >>>>>>>>>      
> case as
>>>>>>>>        >>>>>>>>>>      
> a
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    potential
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    user of
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       the
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          Apache
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               CMS.
>>>>>>>>        >>>>>>  While the CMS
>>>>>>>>        >>>>>>>>    works
>>>>>>>>        >>>>>>>>>      
> well
>>>>>>>>        >>>>>>>>>>      
> for
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  massive
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    projects
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       there
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          are
>>>>>>>>        >>>>>>  things it
>>>>>>>>        >>>>>>>>    could do
>>>>>>>>        >>>>>>>>>>      
> better
>>>  at
>>>>>>>>       
>>>>>>>>>>>>> 
>>>>>    supporting
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         for
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       more
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          moderate
>>>>>>>>        >>>>>>  sized sites
>>>>>>>>        >>>>>>>>    like
>>>>>>>>        >>>>>>>>>>>
>>>  thrift's.
>>>>>>>>        >>>>>>  I'd
>>>>>>>>        >>>>>>>>    therefore
>>>>>>>>        >>>>>>>>>      
> like
>>>>>>>>        >>>>>>>>>>      
> to
>>>>>>>>        >>>>>>>>>>>
>>>  engage
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  you
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    folks in
>>>>>>      a
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>        >>> brainstorming session
>>>>>>>>        >>>>>>  about what
>>>>>>>>        >>>>>>>>    sorts of
>>>>>>>>        >>>>>>>>>
>>>>>>>>        >>>>>>>>>>      
> features
>>>>>>>>        >>>>>>>>>>>  
>       you
>>>>>>>>       
>>>>>>>>>>>>> 
>>>  want
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>         for
>>>>>    your
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       site
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>          and
>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>>>               to find
>>>>>>>>        >>>>>>  simple ways of
>>>>>>>>        >>>>>>>>
>>>>>>>>        >>>>>>>>>>
>>>  supporting
>>>>>>>>        >>>>>>>>>>>
>>>  those
>>>>>>>>       
>>>>>>>>>>>>>> 
>>>>>    features
>>>>>>      for
>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>> 
>>>>>> 
>>>>>>>       you.
>>>>>>>>        >>>>>>  Thanks.
>>>>>>>>        >
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
Hi Joe

I tried to use
[snippet:path=tutorial/js/tutorial.html:lang=js:lines=47,65]
within
content/tutorial/js.md

there is a rendering issue, related to js?
i used lang=javascript and lang=js with the same effect

-roger


On 26.03.2014 20:56, Joe Schaefer wrote:
> Yay! Thanks Roger that's great to hear!
>
>
>
>> On Wednesday, March 26, 2014 3:53 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
>>> Joe, it helps.
>> the process to update the site is much faster and easier as I thought
>> before...
>>
>> thanks
>> -roger
>>
>> On 26.03.2014 04:00, Joe Schaefer wrote:
>>>   I made a start at updating the website docs for committers
>>>   here at http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite
>>>
>>>   I left the old stuff in there for someone to go through and replace it with
>>>   the comparable text for dealing with the CMS.
>>>
>>>   HTH
>>>
>>>
>>>
>>>>   On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer
>> <jo...@yahoo.com> wrote:
>>>>>   FWIW until you get accustomed to the CMS bookmarklet/webgui
>>>>   stuff I recommend downloading http://s.apache.org/cms-cli
>>>>   and installing the CPAN prereqs for it on your local host.
>>>>   That way you can publish, which is a separate step involving
>>>>   the script, while you are working on the svn tree.  If you
>>>>   name the script publish.pl invoking it as
>>>>
>>>>   % ./publish.pl thrift
>>>>
>>>>   will get you where you need to be.  You might even consider
>>>>   setting up an svn external to pull that file out of svn and
>>>>   place it at the base of your cms tree for committers to use.
>>>>
>>>>
>>>>
>>>>>     On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer
>>>>   <jo...@yahoo.com> wrote:
>>>>>     > Done Jake thanks!  One remark for Roger...
>>>>>
>>>>>     The file extension used for stuff in content/test/ really
>> doesn't
>>>>   matter as
>>>>>     far as the build goes.  What you need to do is supply a
>> 'lang=text'
>>>>
>>>>>     argument to each snippet that is not a native markdown file; the
>> build will
>>>>
>>>>>     automatically strip file extensions off the internal links in the
>> markdown
>>>>>     sources so httpd will do the right thing and resolve the
>> extension via the
>>>>>     MultiViews feature.
>>>>>
>>>>>     In the case of test/ThriftTest.thrift, I'd recommend changing
>> the
>>>>   extension
>>>>>     to .txt or even .md (in the content/test/ tree on the site
>> sources in svn,
>>>>   not
>>>>>     the code sources in git) so the CMS's webgui will fetch you a
>> decent
>>>>   editor
>>>>>     for that file.  Otherwise again the extension doesn't matter-
>> the build
>>>>   will
>>>>>     always convert it to html.
>>>>>
>>>>>
>>>>>
>>>>>>      On Tuesday, March 25, 2014 9:34 AM, Jake Farrell
>>>>>     <jf...@apache.org> wrote:
>>>>>>      > Hey Joe
>>>>>>      Thanks for making the additions to the Apache CMS to meet
>> our use
>>>>   case.
>>>>>     I'm
>>>>>>      not seeing any blockers at the moment, lets cut over and we
>> can fix
>>>>   any
>>>>>>      edge cases if needed
>>>>>>
>>>>>>      -Jake
>>>>>>
>>>>>>
>>>>>>
>>>>>>      On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer
>>>>>>      <jo...@yahoo.com>wrote:
>>>>>>
>>>>>>>       Done.  Anything else we need to look at before going
>> live?
>>>>>>>
>>>>>>>       Sent from my iPhone
>>>>>>>
>>>>>>>       > On Mar 23, 2014, at 3:53 PM, Roger Meier
>>>>>>      <ro...@bufferoverflow.ch>
>>>>>>>       wrote:
>>>>>>>       >
>>>>>>>       > any idea how to fix this URL:
>>>>>>>       >
>> http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>>>>       > we need to keep the filename for working links
>> within the
>>>>>>>       > test/README.md file.
>>>>>>>       >
>>>>>>>       > What about a footer for docs genertated from
>> source tree?
>>>>>>>       > [snippet:path=test/README.md, footer=1]
>>>>>>>       >
>>>>>>>       > I added the following snippet to
>> content/test/index.md:
>>>>>>>       > ---SNIP---
>>>>>>>       > This page was generated from Apache Thrift's
>> **source
>>>>   tree
>>>>>     docs**:
>>>>>>>       > [test/README.md](
>>>>>>>
>>>>>>
>>>>>
>>>>
>> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>>>>       )
>>>>>>>       > ---SNIP---
>>>>>>>       >
>>>>>>>       > would be great to get this generated into the page
>> via
>>>>   snippet.
>>>>>>>       >
>>>>>>>       > -roger
>>>>>>>       >
>>>>>>>       >
>>>>>>>       >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>>>>>       >> The CMS codebase as well as the thrift build
>> system
>>>>>>>       >> already supports it Roger, someone just needs
>> to create
>>>>>>>       >> the files in the content tree that point at
>> the source
>>>>>>>       >> files in the git repo.  If you want to script
>> this
>>>>   process
>>>>>>>       >> in scripting language du jour, go for it, but
>> I cannot
>>>>>>>       >> justify spending contractor time doing this
>> work for the
>>>>>>>       >> community's behalf as it is unlikely to be
>> needed
>>>>>     elsewhere.
>>>>>>>       >> I would think you only need the script to run
>> when some
>>>>>>>       >> path to a README.md file changes in the
>> thrift.git tree,
>>>>>>>       >> so it doesn't need to be incorporated into
>> each site
>>>>
>>>>>     build.
>>>>>>>       >>
>>>>>>>       >>
>>>>>>>       >>
>>>>>>>       >>>> On Sunday, March 23, 2014 9:15 AM,
>> Roger Meier
>>>>   <
>>>>>>>      roger@bufferoverflow.ch> wrote:
>>>>>>>       >>>> Hi
>>>>>>>       >>>
>>>>>>>       >>>> On 23.03.2014 03:19, Jake Farrell
>> wrote:
>>>>>>>       >>>>  Hey Joe
>>>>>>>       >>>>  Reviewing the staging site it looks
>> like its
>>>>   almost
>>>>>     99%
>>>>>>      there other
>>>>>>>       than
>>>>>>>       >>>>  some styling within the code
>> snippets. I'm
>>>>   good
>>>>>     if we
>>>>>>      want to cut
>>>>>>>       over
>>>>>>>       >>> to
>>>>>>>       >>>>  using this and then work on the
>> additional
>>>>   features
>>>>>     that
>>>>>>      had been
>>>>>>>       mentioned
>>>>>>>       >>>>  afterwords. Any objections to cutting
>> over?
>>>>>>>       >>> I would really like to see this automatic
>> README.md
>>>>>     includes
>>>>>>      from
>>>>>>>       source
>>>>>>>       >>> tree, to have a real additional feature
>> beside of
>>>>   what we
>>>>>
>>>>>>      already have
>>>>>>>       >>> today.
>>>>>>>       >>>
>>>>>>>       >>> I'm absolutely with you.
>>>>>>>       >>> Apache projects shall use other Apache
>> projects
>>>>   whenever
>>>>>>      possible.
>>>>>>>       >>>
>>>>>>>       >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe
>> Schaefer
>>>>>>>       >>> <jo...@yahoo.com>wrote:
>>>>>>>       >>>>
>>>>>>>       >>>>>  May I suggest a script that
>> creates files
>>>>   in
>>>>>     content/
>>>>>>>       >>>>>  containing a single line
>>>>>>>       >>>>>
>>>>>>>       >>>>>  [snippet:path=...]
>>>>>>>       >>> this sounds like a plan
>>>>>>>       >>>
>>>>>>>       >>>>>
>>>>>>>       >>>>>  (with no 'lang' argument)
>> that lets
>>>>   the
>>>>>     CMS
>>>>>>      pull raw content
>>>>>>>       >>> from
>>>>>>>       >>>>>  thrift.git
>>>>>>>       >>>>>  and add it directly to the built
>> pages.
>>>>   That
>>>>>     way you
>>>>>>      only need to
>>>>>>>       run
>>>>>>>       >>> the
>>>>>>>       >>>>>  script that generates these files
>> when a
>>>>   path
>>>>>     changes
>>>>>>      in your
>>>>>>>       >>> thrift.git
>>>>>>>       >>>>>  repo.
>>>>>>>       >>> What I had in mind is a automatic search
>> of
>>>>   README.md
>>>>>     files
>>>>>>      across the
>>>>>>>       >>> source tree and generate the site with
>> these
>>>>>     automatically.
>>>>>>>       >>> Kind of a central controller that maps all
>> the
>>>>   URL's.
>>>>>>>       >>> no additional work when a new README.md
>> file is
>>>>   added.
>>>>>>>       >>> however, a script can do this as interim
>> soultion.
>>>>>>>       >>>>>
>>>>>>>       >>>>>  You can commit directly to the
>> cms svn tree
>>>>   or
>>>>>     via
>>>>>>      the webgui which
>>>>>>>       >>> does
>>>>>>>       >>>>>  the same thing.
>>>>>>>       >>> Great!
>>>>>>>       >>>
>>>>>>>       >>> What about local preview when doing perl
>>>>   modifications?
>>>>>>>       >>>
>>>>>>>       >>> -roger
>>>>>>>       >>>
>>>>>>>       >>>
>>>>>>>       >>>>>
>>>>>>>       >>>>>
>>>>>>>       >>>>>>  On Saturday, March 22, 2014
>> 4:20 PM,
>>>>   Roger
>>>>>     Meier
>>>>>>      <
>>>>>>>       >>>>>  roger@bufferoverflow.ch>
>> wrote:
>>>>>>>       >>>>>>>  I still see some issues
>> and still
>>>>   miss
>>>>>     to
>>>>>>      feature mentioned.
>>>>>>>       >>>>>>  Now we have nonoc.ws and
>> I'm able
>>>>   to
>>>>>     hack
>>>>>>      this a bit.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  We had no real big issue, the
>> thing I
>>>>   missed
>>>>>     was
>>>>>>      the code snippet
>>>>>>>       >>> thing
>>>>>>>       >>>>>>  and this is in on nanoc.ws
>> and now also
>>>>   on
>>>>>     Apache
>>>>>>      CMS.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  The thing we really need is
>> the
>>>>>     documentation
>>>>>>      located within source
>>>>>>>       >>> code
>>>>>>>       >>>>>>  integrated on the web site.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  most hosting platforms do
>> render
>>>>   README.md
>>>>>     and
>>>>>>      that's why lot
>>>>>>>       >>> of doc
>>>>>>>       >>>>>>  will stay within the code and
>> we should
>>>>
>>>>>     benefit
>>>>>>      as well by
>>>>>>>       >>> rendering
>>>>>>>       >>>>>>  that to the web site and
>> enhance the
>>>>>>      documentation very easily.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  I would like to render the 41
>> README.md
>>>>
>>>>>     files to
>>>>>>      with the following
>>>>>>>       >>>>>>  pattern, that's a must
>> have before
>>>>>     switching
>>>>>>      to another CMS.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  test/README.md =>
>>>>   thrift.apache.org/test
>>>>>>>       >>>>>>  test/STATUS.md =>
>>>>>>      thrift.apache.org/test/status
>>>>>>>       >>>>>>  test/keys/README.md =>
>>>>>>      thrift.apache.org/test/keys
>>>>>>>       >>>>>>  lib/<lang>/README.md
>> =>
>>>>>>      thrift.apache.org/lib/<lang>
>>>>>>>       >>>>>>
>> lib/<lang>/test/README.md =>
>>>>>>>       >>> thrift.apache.org/lib/<lang>/test
>>>>>>>       >>>>>>
>> lib/<lang>/examples/README.md
>>>>   =>
>>>>>>>       >>>>>>
>>>>   thrift.apache.org/lib/<lang>/examples
>>>>>>>       >>>>>>  compiler/cpp/README.md =>
>>>>>>      thrift.apache.org/compiler
>>>>>>>       >>>>>>  debian/README.md =>
>>>>>     thrift.apache.org/debian
>>>>>>>       >>>>>>
>> contrib/<topic>/README.md =>
>>>>>>>       >>> thrift.apache.org/<topic>
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  CPP tutorial seems to be
>> broken on
>>>>   staging.
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  Do you commit to
>>>>>>>       >>>
>>>>   https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>>>       >>>>>>  or is it web gui only?
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  How do you generate the site
>> on your
>>>>   local
>>>>>>      machine?
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  Should I reactivate my perl
>> or do we
>>>>   stay
>>>>>     with
>>>>>>      ruby?
>>>>>>>       >>>>>>  Committers and contributors,
>> what do
>>>>   you
>>>>>     think?
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>  all the best
>>>>>>>       >>>>>>  -roger
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>
>>>>>>>       >>>>>>>  On 22.03.2014 18:07, Joe
>> Schaefer
>>>>   wrote:
>>>>>>>       >>>>>>>
>>>>>>>       >>>>>>>
>>>>>>>       >>>>>>>    Ok I've now done
>> the basic
>>>>>     necessities
>>>>>>      involved in
>>>>>>>       >>> porting
>>>>>>>       >>>>>>>    the site over.  Links
>> have been
>>>>>     adjusted,
>>>>>>      templates ported,
>>>>>>>       >>> files
>>>>>>>       >>>>>  created,
>>>>>>>       >>>>>>>    snippet feature
>> activated.  At
>>>>   this
>>>>>     point
>>>>>>      I'm happy to
>>>>>>>       >>> declare
>>>>>>>       >>>>>>>    victory and migrate the
>> thrift
>>>>   live
>>>>>     site
>>>>>>      over, as anything
>>>>>>>       >>> broken that
>>>>>>>       >>>>>>>    still remains can be
>> dealt with
>>>>   on a
>>>>>>      per-page basis with the
>>>>>>>       >>>>>  bookmarklet.
>>>>>>>       >>>>>>>
>>>>>>>       >>>>>>>
>>>>>>>       >>>>>>>
>>>>>>>       >>>>>>>>    On Thursday, March
>> 20, 2014
>>>>   11:19
>>>>>     AM,
>>>>>>      Joe Schaefer
>>>>>>>       >>>>>>
>> <jo...@yahoo.com> wrote:
>>>>>>>       >>>>>>>>>    Modulo some
>> bizarre
>>>>   content
>>>>>>      truncation out of
>>>>>>>       >>> git-wip-us.apache.org
>>>>>>>       >>>>>>>>    the snippet support
>> is now
>>>>   active.
>>>>>     At
>>>>>>      this point I think
>>>>>>>       >>> all the build
>>>>>>>       >>>>>>>>    support you need in
>> this
>>>>   project
>>>>>     to
>>>>>>      support every type of
>>>>>>>       >>>>>  brainstorming
>>>>>>>       >>>>>>>>    activity we've
>> discussed
>>>>   is
>>>>>     now
>>>>>>      there, so it's
>>>>>>>       >>> just up to you
>>>>>>>       >>>>>>  guys to
>>>>>>>       >>>>>>>>    now familiarize
>> yourselves
>>>>   with
>>>>>     the
>>>>>>      build technology and
>>>>>>>       >>> how to apply
>>>>>>>       >>>>>>>>    it to your needs.
>> The site
>>>>   builds
>>>>>     with
>>>>>>      snippet support
>>>>>>>       >>> are running
>>>>>>>       >>>>>>  around
>>>>>>>       >>>>>>>>    10 seconds, which
>> is to be
>>>>>     expected
>>>>>>      with the network
>>>>>>>       >>> interactions
>>>>>>>       >>>>>>  involved.
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>    I'm always
>> willing to
>>>>   answer
>>>>>     any
>>>>>>      questions that come
>>>>>>>       >>> up in the
>>>>>>>       >>>>>>  interim,
>>>>>>>       >>>>>>>>    but I wish you guys
>> the best
>>>>   of
>>>>>     luck in
>>>>>>      the remaining
>>>>>>>       >>> porting work to
>>>>>>>       >>>>>>  be done.
>>>>>>>       >>>>>>>>    All I see really
>> are some
>>>>   links
>>>>>     that
>>>>>>      need to have the
>>>>>>>       >>> trailing slashes
>>>>>>>       >>>>>>  removed
>>>>>>>       >>>>>>>>    and whatever <%=
>> %>
>>>>   template
>>>>>
>>>>>>      constructs that remain
>>>>>>>       >>> need to be
>>>>>>>       >>>>>>  ported to
>>>>>>>       >>>>>>>>    django.  So it
>> should be
>>>>   smooth
>>>>>>      sailing, but as I said if
>>>>>>>       >>> you hit any
>>>>>>>       >>>>>>  snags
>>>>>>>       >>>>>>>>    holler.  I'd
>> really like
>>>>   to
>>>>>     see the
>>>>>>      live site tech
>>>>>>>       >>> switched over to
>>>>>>>       >>>>>>  the cms
>>>>>>>       >>>>>>>>    stuff before
>> Apachecon ends
>>>>   in
>>>>>     early
>>>>>>      April, hint hint.
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>>      On
>> Wednesday, March
>>>>   19,
>>>>>     2014
>>>>>>      10:41 PM, Joe Schaefer
>>>>>>>       >>>>>>>>>
>>>>   <jo...@yahoo.com>
>>>>>
>>>>>>      wrote:
>>>>>>>       >>>>>>>>>      > While I
>> don't
>>>>   yet
>>>>>     know
>>>>>>      the url magic to
>>>>>>>       >>> support branches
>>>>>>>       >>>>>>  and tags
>>>>>>>       >>>>>>>>    in git,
>>>>>>>       >>>>>>>>>      I can say
>> that the
>>>>   snippet
>>>>>>      support is ready to play
>>>>>>>       >>> with.  I
>>>>>>>       >>>>>>  suggest just
>>>>>>>       >>>>>>>>>      focusing on
>> the
>>>>   /index.md
>>>>>     page
>>>>>>      first to see how it
>>>>>>>       >>> works in
>>>>>>>       >>>>>>  practice
>>>>>>>       >>>>>>>>    because
>>>>>>>       >>>>>>>>>      once it's
>> fully
>>>>   enabled
>>>>>     the
>>>>>>      build will break
>>>>>>>       >>> until all the
>>>>>>>       >>>>>>  snippet
>>>>>>>       >>>>>>>>    sources
>>>>>>>       >>>>>>>>>      have been
>> altered to
>>>>   conform
>>>>>     with
>>>>>>      the new style.
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>      To turn it on
>> for
>>>>   index.md
>>>>>>      testing, there are a
>>>>>>>       >>> couple of things
>>>>>>>       >>>>>>  that need
>>>>>>>       >>>>>>>>    to
>>>>>>>       >>>>>>>>>      happen. First
>> the
>>>>>     [snippet:...]
>>>>>>      marker should be
>>>>>>>       >>> edited to be
>>>>>>>       >>>>>>>>    [XXXsnippet:...]
>>>>>>>       >>>>>>>>>      to enable
>> testing
>>>>   without
>>>>>>      breaking the build.
>>>>>>>       >>> Second each marker
>>>>>>>       >>>>>>  contains
>>>>>>>       >>>>>>>>    a
>>>>>>>       >>>>>>>>>
>> "token"
>>>>   argument
>>>>>>      instead of line numbers
>>>>>>>       >>> for more
>>>>>>>       >>>>>>  stability under
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>      edits to the
>> source
>>>>   code.
>>>>>     The
>>>>>>      token argument is an
>>>>>>>       >>> arbitrary
>>>>>>>       >>>>>>  string that
>>>>>>>       >>>>>>>>    is
>>>>>>>       >>>>>>>>>      used to
>> denote the
>>>>>     boundaries of
>>>>>>      the snippet within
>>>>>>>       >>> the source
>>>>>>>       >>>>>>  code.
>>>>>>>       >>>>>>>>>
>> ASF::Value::Snippet
>>>>   will
>>>>>     pull
>>>>>>      out the lines from
>>>>>>>       >>> the source file
>>>>>>>       >>>>>>  between
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>      lines that
>> contain the
>>>>   token
>>>>>
>>>>>>      argument and format
>>>>>>>       >>> them as a code
>>>>>>>       >>>>>>  snippet
>>>>>>>       >>>>>>>>    embedded
>>>>>>>       >>>>>>>>>      into
>> markdown. To get
>>>>>     started
>>>>>>      I'll copy over
>>>>>>>       >>> the code
>>>>>>>       >>>>>>  highlighting css
>>>>>>>       >>>>>>>>    from
>>>>>>>       >>>>>>>>>
>> www.apache.org but note
>>>>   that
>>>>>     this
>>>>>>      is all based on
>>>>>>>       >>> python pygments
>>>>>>>       >>>>>>  and there
>>>>>>>       >>>>>>>>    are
>>>>>>>       >>>>>>>>>      a variety of
>> online css
>>>>
>>>>>     files to
>>>>>>      choose from if
>>>>>>>       >>> this one is not
>>>>>>>       >>>>>>  to the
>>>>>>>       >>>>>>>>>      group's
>> liking.
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>>       On
>> Wednesday,
>>>>   March 19,
>>>>>     2014
>>>>>>      4:16 PM, Joe
>>>>>>>       >>> Schaefer
>>>>>>>       >>>>>>>>>
>>>>>     <jo...@yahoo.com>
>>>>>>      wrote:
>>>>>>>       >>>>>>>>>>       >
>> Sorry I need
>>>>   to
>>>>>     clarify
>>>>>>      with an example:
>>>>>>>       >>> look at
>>>>>>>       >>>>>>>>>>
>>>>>>      http://thrift.staging.apache.org/tutorial/
>>>>>>>       >>> versus
>>>>>>>       >>>
>> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>       >>>>>>>>>>       former
>> is
>>>>   generated
>>>>>     from
>>>>>>>       >>> content/tutorial/index.html
>>>>>>>       >>>>>>>>>>       and the
>> latter
>>>>   from
>>>>>>      content/tutorial.md.  The
>>>>>>>       >>> latter file
>>>>>>>       >>>>>>>>>>       needs to
>> be
>>>>   removed
>>>>>     from the
>>>>>>      tree now that
>>>>>>>       >>> it's content
>>>>>>>       >>>>>>>>>>       has been
>> ported to
>>>>>>>       >>> content/tutorial/index.html.  This
>>>>>>>       >>>>>>>>>>       uses
>> django
>>>>   template
>>>>>>      inheritance to maintain
>>>>>>>       >>> simplicity.
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>       Other
>> directories
>>>>   that
>>>>>>      follow a similar
>>>>>>>       >>> pattern should
>>>>>>>       >>>>>>>>>>       also be
>> ported in
>>>>   the
>>>>>     same
>>>>>>      fashion.
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>        On
>> Wednesday,
>>>>
>>>>>     March 19,
>>>>>>      2014 9:46 AM, Joe
>>>>>>>       >>> Schaefer
>>>>>>>       >>>>>>>>>>
>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>       >>>>>>>>>>>
>>>   If
>>>>>     someone's
>>>>>>      looking for a way
>>>>>>>       >>> to help with
>>>>>>>       >>>>>>  the porting
>>>>>>>       >>>>>>>>>>>
>> effort,
>>>>   consider
>>>>>>      tackling the creation of
>>>>>>>       >>> an index.html
>>>>>>>       >>>>>>>>>>>
>> page in each
>>>>>     subdir of
>>>>>>      the content/ tree
>>>>>>>       >>> (other than
>>>>>>>       >>>>>>  the
>>>>>>>       >>>>>>>>>>>
>> base which
>>>>   has an
>>>>>>      /index.md).  The
>>>>>>>       >>> contents of the file
>>>>>>>       >>>>>>>>>>>
>> should be
>>>>   just
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> {%
>>>>   include
>>>>>>      'default' %}
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> (see the docs
>>>>   dir
>>>>>     for
>>>>>>      an example page
>>>>>>>       >>> that can be
>>>>>>>       >>>>>>  copied)
>>>>>>>       >>>>>>>>>>>        and
>> the build
>>>>
>>>>>     system
>>>>>>      will take care of
>>>>>>>       >>> generating the
>>>>>>>       >>>>>>  page
>>>>>>>       >>>>>>>>>>>        in
>> a
>>>>   consistent
>>>>>     fashion
>>>>>>      with the rest of
>>>>>>>       >>> the site.
>>>>>>>       >>>>>>  Once
>>>>>>>       >>>>>>>>>>>
>> that is done
>>>>   there
>>>>>     are
>>>>>>      a lot of pages
>>>>>>>       >>> that function
>>>>>>>       >>>>>>  like
>>>>>>>       >>>>>>>>>>>
>> index pages
>>>>   but
>>>>>     are
>>>>>>      written in markdown
>>>>>>>       >>> that can be
>>>>>>>       >>>>>>  deleted,
>>>>>>>       >>>>>>>>>>>
>> like docs.md
>>>>   and
>>>>>     its
>>>>>>      ilk.  Nanoc
>>>>>>>       >>> transforms that file
>>>>>>>       >>>>>>  into
>>>>>>>       >>>>>>>>>>>
>>>>   /docs/index.html
>>>>>     but
>>>>>>      that's kinda
>>>>>>>       >>> crufty and not
>>>>>>>       >>>>>>  supported
>>>>>>>       >>>>>>>>>>>        by
>> the CMS,
>>>>   which
>>>>>     only
>>>>>>      lets you alter
>>>>>>>       >>> file extensions
>>>>>>>       >>>>>>  not paths.
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>> On
>>>>   Wednesday,
>>>>>
>>>>>>      March 19, 2014 8:54
>>>>>>>       >>> AM, Joe Schaefer
>>>>>>>       >>>>>>>>>>>
>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>       >>>>>>>>>>>>
>>>   I
>>>>   just
>>>>>>      pencilled in snippet
>>>>>>>       >>> preprocessing
>>>>>>>       >>>>>>  support into
>>>>>>>       >>>>>>>>>>>>
>> the
>>>>   thrift
>>>>>>      builds.  Once Jake and I
>>>>>>>       >>> have settled
>>>>>>>       >>>>>>  on the
>>>>>>>       >>>>>>>>>>>>
>> feature
>>>>   set
>>>>>     of
>>>>>>      ASF::Value::Snippet,
>>>>>>>       >>> and we have
>>>>>>>       >>>>>>  ported
>>>>>>>       >>>>>>>>>>>>
>> the
>>>>   snippet
>>>>>>      calling text within the
>>>>>>>       >>> markdown pages
>>>>>>>       >>>>>>>>>>>>
>> to the
>>>>   new
>>>>>     format,
>>>>>>      things will just
>>>>>>>       >>> work (knock on
>>>>>>>       >>>>>>  wood).
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>        On
>>>>>     Wednesday,
>>>>>>      March 19, 2014
>>>>>>>       >>> 6:48 AM, Joseph
>>>>>>>       >>>>>>  Schaefer
>>>>>>>       >>>>>>>>>>>>
>>>>>>      <jo...@yahoo.com>
>>>>>>>       >>> wrote:
>>>>>>>       >>>>>>>>>>>>>
>>>>>
>>>>>     Sure I
>>>>>>      understand that
>>>>>>>       >>> need.  If
>>>>>>>       >>>>>>  there's a way
>>>>>>>       >>>>>>>>    of
>>>>>>>       >>>>>>>>>>       pulling
>> the
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>> document
>>>>>>>       >>>>>>>>>>>>>
>>>>   sources
>>>>>>      directly from the web I
>>>>>>>       >>> can parse the
>>>>>>>       >>>>>>  content
>>>>>>>       >>>>>>>>    to
>>>>>>>       >>>>>>>>>      look for
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> snippet
>>>>>>>       >>>>>>>>>>>>>
>>>>   markers
>>>>>     and
>>>>>>      make those
>>>>>>>       >>> available to the
>>>>>>>       >>>>>>  template
>>>>>>>       >>>>>>>>    system.
>>>>>>>       >>>>>>>>>>
>> That's
>>>>>>>       >>>>>>>>>>>
>> pretty
>>>>>>>       >>>>>>>>>>>>
>> much
>>>>>>>       >>>>>>>>>>>>>
>>        how
>>>>
>>>>>>      www.apache.org is
>>>>>>>       >>> generated.
>>>>>>>       >>>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>   Sent
>>>>>     from my
>>>>>>      iPhone
>>>>>>>       >>>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>       On
>>>>>     Mar
>>>>>>      19, 2014, at 5:28
>>>>>>>       >>> AM, Henrique
>>>>>>>       >>>>>>  Mendonça
>>>>>>>       >>>>>>>>>>>>
>>>>>>      <he...@apache.org>
>>>>>>>       >>>>>>>>>>>>>
>>>>   wrote:
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>       Hi
>>>>>     Joe,
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>
>>>>>     Thanks
>>>>>>      for your effort. I
>>>>>>>       >>> just wanted to
>>>>>>>       >>>>>>  add that
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>      code
>>>>>>>       >>>>>>>>>>>
>> snippets
>>>>>>>       >>>>>>>>>>>>
>> are a
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>
>>>>>     crucial
>>>>>>      feature for this
>>>>>>>       >>> project, which
>>>>>>>       >>>>>>  has way
>>>>>>>       >>>>>>>>    more
>>>>>>>       >>>>>>>>>      target
>>>>>>>       >>>>>>>>>>>
>> languages
>>>>>>>       >>>>>>>>>>>>
>> than
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>
>>>>>     active
>>>>>>      contributors. In
>>>>>>>       >>> our case,
>>>>>>>       >>>>>>  reducing manual
>>>>>>>       >>>>>>>>>>
>> maintenance
>>>>>>>       >>>>>>>>>>>
>> costs is
>>>>>>>       >>>>>>>>>>>>
>> much
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>
>>>>>     more
>>>>>>      important than the
>>>>>>>       >>> total site build
>>>>>>>       >>>>>>  time.
>>>>>>>       >>>>>>>>    Perhaps
>>>>>>>       >>>>>>>>>      we
>>>>>>>       >>>>>>>>>>       can
>>>>>>>       >>>>>>>>>>>
>> also
>>>>>>>       >>>>>>>>>>>>
>> solve
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>
>>>>>     this in
>>>>>>      the CMS, though.
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>       -
>>>>>>      Henrique
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     On
>>>>>>      19 March 2014
>>>>>>>       >>> 03:17, Joe Schaefer
>>>>>>>       >>>>>>>>>>>>
>>>>>>      <jo...@yahoo.com>
>>>>>>>       >>>>>>>>>>>>>
>>>>   wrote:
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     A
>>>>>>      couple more thoughts
>>>>>>>       >>> regarding the
>>>>>>>       >>>>>>>>    background on
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       CMS...
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     the
>>>>>>      bulk of the focus
>>>>>>>       >>> of the CMS up
>>>>>>>       >>>>>>  until now
>>>>>>>       >>>>>>>>    has
>>>>>>>       >>>>>>>>>      been
>>>>>>>       >>>>>>>>>>       to
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      support really big
>>>>>>>       >>> sites like maven
>>>>>>>       >>>>>>  and
>>>>>>>       >>>>>>>>    openoffice,
>>>>>>>       >>>>>>>>>      both
>>>>>>>       >>>>>>>>>>       of
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      which have websites
>>>>>>>       >>> well over 5GB
>>>>>>>       >>>>>>  worth of
>>>>>>>       >>>>>>>>    text
>>>>>>>       >>>>>>>>>      files.
>>>>>>>       >>>>>>>>>>       The
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      build system was
>>>>>>>       >>> hollowed out and
>>>>>>>       >>>>>>  revamped to
>>>>>>>       >>>>>>>>>      support
>>>>>>>       >>>>>>>>>>>
>> external
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      builds in other
>>>>>>>       >>> programming
>>>>>>>       >>>>>>  languages, as well
>>>>>>>       >>>>>>>>    as
>>>>>>>       >>>>>>>>>>       scaling
>> up
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     the
>>>>>>      perl builds to
>>>>>>>       >>> provide about 8
>>>>>>>       >>>>>>  child
>>>>>>>       >>>>>>>>    processes
>>>>>>>       >>>>>>>>>      that
>>>>>>>       >>>>>>>>>>       build
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     the
>>>>>>      site in parallel
>>>>>>>       >>> by default.
>>>>>>>       >>>>>>  Full site
>>>>>>>       >>>>>>>>    build
>>>>>>>       >>>>>>>>>      times
>>>>>>>       >>>>>>>>>>       for
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      openoffice went from
>>>>>>>       >>> over 30 minutes
>>>>>>>       >>>>>>  to
>>>>>>>       >>>>>>>>    between 5
>>>>>>>       >>>>>>>>>      to 10
>>>>>>>       >>>>>>>>>>>
>> minutes
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      depending on disk
>>>>>>>       >>> activity, which
>>>>>>>       >>>>>>  made
>>>>>>>       >>>>>>>>>
>> experimentation
>>>>>>>       >>>>>>>>>>       with
>>>>>>>       >>>>>>>>>>>>
>>>>   site-wide
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      changes feasible on a
>>>>>>>       >>> reasonable
>>>>>>>       >>>>>>  timeframe.
>>>>>>>       >>>>>>>>    At
>>>>>>>       >>>>>>>>>      first
>>>>>>>       >>>>>>>>>>       the
>>>>>>>       >>>>>>>>>>>
>> project
>>>>>>>       >>>>>>>>>>>>
>> was
>>>>>>>       >>>>>>>>>>>>>
>>        in
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     the
>>>>>>      habit of running
>>>>>>>       >>> the builds
>>>>>>>       >>>>>>  locally before
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>      checking
>>>>>>>       >>>>>>>>>>       in
>>>>>>>       >>>>>>>>>>>
>> their
>>>>>>>       >>>>>>>>>>>>>
>>>>   changes
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      because the delay in
>>>>>>>       >>> feedback
>>>>>>>       >>>>>>  post-commit was
>>>>>>>       >>>>>>>>>>
>> unreasonable,
>>>>>>>       >>>>>>>>>>>        but
>>>>>>>       >>>>>>>>>>>>
>> with
>>>>>>>       >>>>>>>>>>>>>
>>>>   smart
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     use
>>>>>>      of SSI the were
>>>>>>>       >>> able to cut down
>>>>>>>       >>>>>>  on the
>>>>>>>       >>>>>>>>    number
>>>>>>>       >>>>>>>>>      of
>>>>>>>       >>>>>>>>>>       changes
>>>>>>>       >>>>>>>>>>>
>> that
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>   required
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     full
>>>>>>      site builds and
>>>>>>>       >>> hence no longer
>>>>>>>       >>>>>>  bother
>>>>>>>       >>>>>>>>    with
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       whole
>>>>>>>       >>>>>>>>>>>>
>>>>   pre-build
>>>>>>>       >>>>>>>>>>>>>
>>>>   mumbo
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      jumbo before checking
>>>>>>>       >>> in changes.
>>>>>>>       >>>>>>  The CMS is
>>>>>>>       >>>>>>>>>      designed
>>>>>>>       >>>>>>>>>>       to
>>>>>>>       >>>>>>>>>>>
>> only
>>>>>>>       >>>>>>>>>>>>
>> build
>>>>>>>       >>>>>>>>>>>>>
>>>>   pages
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     that
>>>>>>      were altered, and
>>>>>>>       >>> if you just
>>>>>>>       >>>>>>  edit a page
>>>>>>>       >>>>>>>>    or
>>>>>>>       >>>>>>>>>      two
>>>>>>>       >>>>>>>>>>       only
>>>>>>>       >>>>>>>>>>>
>> those
>>>>>>>       >>>>>>>>>>>>
>> pages
>>>>>>>       >>>>>>>>>>>>>
>>        and
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     the
>>>>>>      pages that depend
>>>>>>>       >>> on them will
>>>>>>>       >>>>>>  be built.
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     Now
>>>>>>      that I've
>>>>>>>       >>> turned my
>>>>>>>       >>>>>>  attention to
>>>>>>>       >>>>>>>>    thrift,
>>>>>>>       >>>>>>>>>      there
>>>>>>>       >>>>>>>>>>       are
>>>>>>>       >>>>>>>>>>>
>> several
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>   aspects
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     that
>>>>>>      are better off
>>>>>>>       >>> being retuned
>>>>>>>       >>>>>>  based on the
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>      modest
>>>>>>>       >>>>>>>>>>       size of
>>>>>>>       >>>>>>>>>>>        the
>>>>>>>       >>>>>>>>>>>>
>> site.
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      First of all you have
>>>>>>>       >>> a sitemap url
>>>>>>>       >>>>>>  that lists
>>>>>>>       >>>>>>>>    all
>>>>>>>       >>>>>>>>>      of
>>>>>>>       >>>>>>>>>>       your
>>>>>>>       >>>>>>>>>>>>>
>>>>>>      markdown-based
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      pages, which would be
>>>>>>>       >>> a nonstarter
>>>>>>>       >>>>>>  for a site
>>>>>>>       >>>>>>>>    like
>>>>>>>       >>>>>>>>>>>
>> openoffice.
>>>>>>>       >>>>>>>>>>>>
>> The
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      implications of the
>>>>>>>       >>> sitemap url are
>>>>>>>       >>>>>>  that every
>>>>>>>       >>>>>>>>    page
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>>       needs to
>>>>>>>       >>>>>>>>>>>        be
>>>>>>>       >>>>>>>>>>>>
>> built
>>>>>>>       >>>>>>>>>>>>>
>>        in
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      memory just to
>>>>>>>       >>> generate that page,
>>>>>>>       >>>>>>  which leads
>>>>>>>       >>>>>>>>    to a
>>>>>>>       >>>>>>>>>      lot
>>>>>>>       >>>>>>>>>>       of
>>>>>>>       >>>>>>>>>>>>
>>>>   redundancy
>>>>>>>       >>>>>>>>>>>>>
>>        in
>>>>   a
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      build system designed
>>>>>>>       >>> to run as
>>>>>>>       >>>>>>  forked child
>>>>>>>       >>>>>>>>>      processes.
>>>>>>>       >>>>>>>>>>       We
>>>>>>>       >>>>>>>>>>>        can
>> do
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>>     better...
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      I've done two
>>>>>>>       >>> things to make
>>>>>>>       >>>>>>  this work
>>>>>>>       >>>>>>>>    well-
>>>>>>>       >>>>>>>>>      first I
>>>>>>>       >>>>>>>>>>       made
>>>>>>>       >>>>>>>>>>>        the
>>>>>>>       >>>>>>>>>>>>>
>>>>   number
>>>>>     of
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      child processes
>>>>>>>       >>> "aka
>>>>>>>       >>>>>>  runners"
>>>>>>>       >>>>>>>>    tunable on
>>>>>>>       >>>>>>>>>      a
>>>>>>>       >>>>>>>>>>>
>> per-project
>>>>>>>       >>>>>>>>>>>>
>> basis,
>>>>>>>       >>>>>>>>>>>>>
>>        and
>>>>
>>>>>     since the
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      sitemap is going to
>>>>>>>       >>> build every page
>>>>>>>       >>>>>>  anyway as
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>>       slowest
>>>>>>>       >>>>>>>>>>>
>> page to
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>   build, I
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      memoized the main view
>>>>>>>       >>> that builds
>>>>>>>       >>>>>>  the
>>>>>>>       >>>>>>>>    markdown
>>>>>>>       >>>>>>>>>      pages
>>>>>>>       >>>>>>>>>>       for
>>>>>>>       >>>>>>>>>>>
>> thrift.
>>>>>>>       >>>>>>>>>>>>
>> The
>>>>>>>       >>>>>>>>>>>>>
>>>>   best
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      results are when
>>>>>>>       >>> there's only
>>>>>>>       >>>>>>  one runner
>>>>>>>       >>>>>>>>    so we
>>>>>>>       >>>>>>>>>      get
>>>>>>>       >>>>>>>>>>       the
>>>>>>>       >>>>>>>>>>>
>> full
>>>>>>>       >>>>>>>>>>>>
>> benefit
>>>>>>>       >>>>>>>>>>>>>
>>        of
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      memoization: typical
>>>>>>>       >>> site build
>>>>>>>       >>>>>>  times are
>>>>>>>       >>>>>>>>>      consistently
>>>>>>>       >>>>>>>>>>       under
>>>>>>>       >>>>>>>>>>>        2
>>>>>>>       >>>>>>>>>>>>
>> seconds
>>>>>>>       >>>>>>>>>>>>>
>>>>   now.
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      You'll appreciate
>>>>>>>       >>> why I am such
>>>>>>>       >>>>>>  a
>>>>>>>       >>>>>>>>    performance
>>>>>>>       >>>>>>>>>>       stickler
>>>>>>>       >>>>>>>>>>>        for
>> the
>>>>>>>       >>>>>>>>>>>>
>> CMS
>>>>>>>       >>>>>>>>>>>>>
>>>>   when
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     you
>>>>>>      start using the
>>>>>>>       >>> bookmarklet,
>>>>>>>       >>>>>>  since builds
>>>>>>>       >>>>>>>>    are
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       only
>>>>>>>       >>>>>>>>>>>>
>>>>   asynchronous
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     part
>>>>>>      of the process
>>>>>>>       >>> from making a
>>>>>>>       >>>>>>  change to a
>>>>>>>       >>>>>>>>    page
>>>>>>>       >>>>>>>>>      and
>>>>>>>       >>>>>>>>>>>
>> publishing
>>>>>>>       >>>>>>>>>>>>
>> the
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      results.  Ideally when
>>>>>>>       >>> the system is
>>>>>>>       >>>>>>  working
>>>>>>>       >>>>>>>>    well
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       builds
>>>>>>>       >>>>>>>>>>>>
>> happen
>>>>>>>       >>>>>>>>>>>>>
>>>>   before
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     you
>>>>>>      have time to go
>>>>>>>       >>> looking for
>>>>>>>       >>>>>>  them, but you
>>>>>>>       >>>>>>>>    do
>>>>>>>       >>>>>>>>>      need to
>>>>>>>       >>>>>>>>>>       be
>>>>>>>       >>>>>>>>>>>>
>> mindful
>>>>   of
>>>>>>>       >>>>>>>>>>>>>
>>        not
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      publishing before the
>>>>>>>       >>> built pages
>>>>>>>       >>>>>>  have been
>>>>>>>       >>>>>>>>>      committed
>>>>>>>       >>>>>>>>>>       back to
>>>>>>>       >>>>>>>>>>>        svn
>>>>>>>       >>>>>>>>>>>>
>> by
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      buildbot.
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      On Monday, March
>>>>>>>       >>> 17, 2014 11:59
>>>>>>>       >>>>>>  PM, Joe
>>>>>>>       >>>>>>>>>      Schaefer
>>>>>>>       >>>>>>>>>>>>>
>>>>>>      <jo...@yahoo.com>
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      wrote:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         Ok there's
>>>>>>>       >>> enough of an
>>>>>>>       >>>>>>  idea about
>>>>>>>       >>>>>>>>    how
>>>>>>>       >>>>>>>>>      to
>>>>>>>       >>>>>>>>>>       port
>>>>>>>       >>>>>>>>>>>        the
>>>>>>>       >>>>>>>>>>>>
>> rest of
>>>>>>>       >>>>>>>>>>>>>
>>        the
>>>>
>>>>>>      site's
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      pages over based
>>>>>>>       >>> on the porting
>>>>>>>       >>>>>>  work
>>>>>>>       >>>>>>>>    I've
>>>>>>>       >>>>>>>>>>       already
>>>>>>>       >>>>>>>>>>>
>> done
>>>>>>>       >>>>>>>>>>>>
>> that
>>>>>>>       >>>>>>>>>>>>>
>>>>   it's
>>>>>     time
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      for me to step
>>>>>>>       >>> back and let you
>>>>>>>       >>>>>>  guys catch
>>>>>>>       >>>>>>>>    up.
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>>
>> Basically
>>>>>>>       >>>>>>>>>>>        the
>>>>>>>       >>>>>>>>>>>>
>> idea
>>>>>>>       >>>>>>>>>>>>>
>>        is
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     that
>>>>>>      while
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      there is
>>>>>>>       >>> templating support in
>>>>>>>       >>>>>>  the
>>>>>>>       >>>>>>>>    markdown
>>>>>>>       >>>>>>>>>      sources,
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> it's
>>>>>>>       >>>>>>>>>>>>>
>>>>   fairly
>>>>>>      limited
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      compared to what
>>>>>>>       >>> nanoc offers,
>>>>>>>       >>>>>>  but instead
>>>>>>>       >>>>>>>>    of
>>>>>>>       >>>>>>>>>>       writing
>> a
>>>>>>>       >>>>>>>>>>>        lot
>> of
>>>>>>>       >>>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>   complex
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      template
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      code into your
>>>>>>>       >>> sources, with the
>>>>>>>       >>>>>>  cms you
>>>>>>>       >>>>>>>>    just
>>>>>>>       >>>>>>>>>      add
>>>>>>>       >>>>>>>>>>       code to
>>>>>>>       >>>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>>
>>>>>>      lib/view.pmand/or
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      lib/path.pm to
>>>>>>>       >>> keep the document
>>>>>>>       >>>>>>  sources
>>>>>>>       >>>>>>>>    simple
>>>>>>>       >>>>>>>>>      and
>>>>>>>       >>>>>>>>>>       just
>>>>>>>       >>>>>>>>>>>        add
>>>>>>>       >>>>>>>>>>>>
>> more
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      template
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      variables.  What I
>>>>>>>       >>> just finished
>>>>>>>       >>>>>>  in
>>>>>>>       >>>>>>>>    lib/view.pm
>>>>>>>       >>>>>>>>>      and
>>>>>>>       >>>>>>>>>>>>
>>>>   lib/path.pm
>>>>>     is
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      directory
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      listing support
>>>>>>>       >>> for /docs.html
>>>>>>>       >>>>>>  but it can
>>>>>>>       >>>>>>>>    be
>>>>>>>       >>>>>>>>>      carried
>>>>>>>       >>>>>>>>>>       over
>>>>>>>       >>>>>>>>>>>        to
>>>>>>>       >>>>>>>>>>>>>
>>>>   similar
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>>      pages.
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         On Monday,
>>>>>>>       >>> March 17, 2014
>>>>>>>       >>>>>>  9:16 PM, Joe
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>      Schaefer
>>>>>>>       >>> <jo...@yahoo.com>
>>>>>>>       >>>>>>  wrote:
>>>>>>>       >>> Interesting ideas,
>>>>>>>       >>>>>>  thanks.  FWIW I
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>      think
>>>>>>>       >>>>>>>>>>       that
>>>>>>>       >>>>>>>>>>>
>> sort
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         of thing might
>>>>>>>       >>> be best
>>>>>>>       >>>>>>  supported as a
>>>>>>>       >>>>>>>>>      periodic
>>>>>>>       >>>>>>>>>>       cron
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         if we can
>>>>>>>       >>> write something
>>>>>>>       >>>>>>  stable
>>>>>>>       >>>>>>>>    enough,
>>>>>>>       >>>>>>>>>      because
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> pulling
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         stuff out of
>>>>>>>       >>> the git repo is
>>>>>>>       >>>>>>  something
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>      CMS
>>>>>>>       >>>>>>>>>>>
>> isn't
>>>>>>>       >>>>>>>>>>>>
>> going
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         to do all that
>>>>>>>       >>> well being an
>>>>>>>       >>>>>>  svn
>>>>>>>       >>>>>>>>>      application.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         The CMS build
>>>>>>>       >>> results are
>>>>>>>       >>>>>>  available at
>>>>>>>       >>> http://thrift.staging.apache.org/
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         feel free to
>>>>>>>       >>> play with the
>>>>>>>       >>>>>>  sources in
>>>>>>>       >>> repos/asf/thrift/cms-site/trunk.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         It's very
>>>>>>>       >>> fast, probably
>>>>>>>       >>>>>>  an order
>>>>>>>       >>>>>>>>    of
>>>>>>>       >>>>>>>>>>
>> magnitude
>>>>>>>       >>>>>>>>>>>
>> faster
>>>>>>>       >>>>>>>>>>>>
>> than
>>>>>>>       >>>>>>>>>>>>>
>>>>   your
>>>>>     current
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         tech.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         Whole site
>>>>>>>       >>> builds in two
>>>>>>>       >>>>>>  seconds;
>>>>>>>       >>>>>>>>    fractions
>>>>>>>       >>>>>>>>>      of a
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> second
>>>>>>>       >>>>>>>>>>>>
>> for
>>>>>>>       >>>>>>>>>>>>>
>>>>   typical
>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>
>>>>>     mods
>>>>>>      to
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         content/
>>>>>>>       >>> markdown pages.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         The CMS
>>>>>>>       >>> bookmarklet is
>>>>>>>       >>>>>>  compatible with
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>>       staging
>>>>>>>       >>>>>>>>>>>
>> site
>>>>>>>       >>>>>>>>>>>>
>> FWIW.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              On
>>>>>>>       >>> Monday, March 17,
>>>>>>>       >>>>>>  2014 7:40
>>>>>>>       >>>>>>>>    PM,
>>>>>>>       >>>>>>>>>      Roger
>>>>>>>       >>>>>>>>>>       Meier
>>>>>>>       >>>>>>
>> <ro...@bufferoverflow.ch> wrote:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>             Hi Joe
>>>>>>>       >>> & Co
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              thanks
>>>>>>>       >>> for this test
>>>>>>>       >>>>>>  run with
>>>>>>>       >>>>>>>>    Apache
>>>>>>>       >>>>>>>>>      CMS!
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              What I
>>>>>>>       >>> would love to
>>>>>>>       >>>>>>  see is this:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              Source
>>>>>>>       >>> file: => Web
>>>>>>>       >>>>>>  Site URL:
>>>>>>>       >>> test/README.md =>
>>>>>>>       >>>>>>>>>
>> thrift.apache.org/test
>>>>>>>       >>> test/STATUS.md =>
>>>>>>>       >>>>>>>>>>>
>>>>>>      thrift.apache.org/test/status
>>>>>>>       >>> test/keys/README.md
>>>>>>>       >>>>>>  =>
>>>>>>>       >>>>>>>>>>>
>>>>>>      thrift.apache.org/test/keys
>>>>>>>       >>>>>>  lib/<lang>/README.md
>> =>
>>>>>>>       >>> thrift.apache.org/lib/<lang>
>>>>>>>       >>>>>>
>> lib/<lang>/test/README.md
>>>>>>>       >>>>>>>>    =>
>>>>>>>       >>>>>>>>
>>>>>     thrift.apache.org/lib/<lang>/test
>>>>>>>       >>>>>>>>
>>>>>     lib/<lang>/examples/README.md
>>>>>>>       >>>>>>>>>      =>
>>>>>>>       >>>>>>>>>
>>>>>>      thrift.apache.org/lib/<lang>/examples
>>>>>>>       >>> compiler/cpp/README.md
>>>>>>>       >>>>>>  =>
>>>>>>>       >>>>>>>>>>>>
>>>>>>      thrift.apache.org/compiler
>>>>>>>       >>> debian/README.md =>
>>>>>>>       >>>>>>>>>>
>>>>>     thrift.apache.org/debian
>>>>>>>       >>>>>>
>> contrib/<topic>/README.md
>>>>>>>       >>>>>>>>    =>
>>>>>>>       >>>>>>>>>>>>>
>>>>>>      thrift.apache.org/<topic>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              just made
>>>>>>>       >>> the following
>>>>>>>       >>>>>>  patch to
>>>>>>>       >>>>>>>>>      rename all
>>>>>>>       >>>>>>>>>>       file
>>>>>>>       >>>>>>>>>>>        to
>>>>>>>       >>>>>>>>>>>>
>> .md
>>>>>>>       >>>>>>>>>>>>>
>>>>   within
>>>>>     our
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      source
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              tree:
>>>>>>>       >>>
>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              ... we
>>>>>>>       >>> have *41*
>>>>>>>       >>>>>>  md's within
>>>>>>>       >>>>>>>>    the
>>>>>>>       >>>>>>>>>      source
>>>>>>>       >>>>>>>>>>       tree
>>>>>>>       >>>>>>>>>>>        and
>>>>>>>       >>>>>>>>>>>>>
>>>>>     that's
>>>>>>      the
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      place
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         where
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              people
>>>>>>>       >>> look for
>>>>>>>       >>>>>>  documentation
>>>>>>>       >>>>>>>>    first.
>>>>>>>       >>>>>>>>>      =>
>>>>>>>       >>>>>>>>>>>
>> simple to
>>>>>>>       >>>>>>>>>>>>>
>>>>   manage
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              Would be
>>>>>>>       >>> user friendly
>>>>>>>       >>>>>>  to have
>>>>>>>       >>>>>>>>    all of
>>>>>>>       >>>>>>>>>      this
>>>>>>>       >>>>>>>>>>>
>> online
>>>>>>>       >>>>>>>>>>>>
>> with
>>>>>>>       >>>>>>>>>>>>>
>>>>   each
>>>>>     release
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              with the
>>>>>>>       >>> URL layout
>>>>>>>       >>>>>>  mentioned
>>>>>>>       >>>>>>>>    above.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              just
>>>>>>>       >>> received the
>>>>>>>       >>>>>>  buildboot...
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              Do you
>>>>>>>       >>> have kind of a
>>>>>>>       >>>>>>  preview of
>>>>>>>       >>>>>>>>    your
>>>>>>>       >>>>>>>>>>
>> prototype?
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              all the
>>>>>>>       >>> best!
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              -roger
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              ;-r
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              Quoting
>>>>>>>       >>> Jake Farrell
>>>>>>>       >>>>>>>>>>>
>>>>>>      <jf...@apache.org>:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>               No
>>>>>>>       >>> objections from
>>>>>>>       >>>>>>  me
>>>>>>>       >>> -Jake
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>               On
>>>>>>>       >>> Mon, Mar 17,
>>>>>>>       >>>>>>  2014 at
>>>>>>>       >>>>>>>>    12:04 PM,
>>>>>>>       >>>>>>>>>      Joe
>>>>>>>       >>>>>>>>>>>
>> Schaefer
>>>>>>>       >>>>>>>>
>>>>>     <jo...@yahoo.com>wrote:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>> Any objections
>>>>>>>       >>>>>>  to me
>>>>>>>       >>>>>>>>    making a
>>>>>>>       >>>>>>>>>      copy
>>>>>>>       >>>>>>>>>>       of
>>>>>>>       >>>>>>>>>>>        the
>>>>>>>       >>>>>>>>>>>>
>> site
>>>>>>>       >>> tree alongside
>>>>>>>       >>>>>>  it called
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>>
>> cms-site?
>>>>>>>       >>>>>>>>>>>
>> I'd
>>>>>>>       >>>>>>>>>>>>
>> like
>>>>>>>       >>>>>>>>>>>>>
>>        to
>>>>>>>       >>> get cracking
>>>>>>>       >>>>>>  on knocking
>>>>>>>       >>>>>>>>    up
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>>
>> supporting
>>>>>>>       >>>>>>>>>>>>
>> perl
>>>>>>>       >>> for this so we
>>>>>>>       >>>>>>  can
>>>>>>>       >>>>>>>>    continue
>>>>>>>       >>>>>>>>>      to
>>>>>>>       >>>>>>>>>>>
>> brainstorm...
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>   On Sunday,
>>>>>>>       >>>>>>  March 16,
>>>>>>>       >>>>>>>>    2014
>>>>>>>       >>>>>>>>>      1:53
>>>>>>>       >>>>>>>>>>       PM,
>>>>>>>       >>>>>>>>>>>        Joe
>>>>>>>       >>>>>>>>>>>>
>> Schaefer
>>>>>>>       >>>>>>
>> <jo...@yahoo.com>
>>>>>>>       >>> wrote:
>>>>>>>       >>>       On
>>>>>>>       >>>>>>  Sunday, March
>>>>>>>       >>>>>>>>    16,
>>>>>>>       >>>>>>>>>      2014
>>>>>>>       >>>>>>>>>>       1:40
>>>>>>>       >>>>>>>>>>>        PM,
>>>>>>>       >>>>>>>>>>>>
>> Jake
>>>>>>>       >>>>>>>>>>>>>
>>>>   Farrell
>>>>>>>       >>>>>>  <jf...@apache.org>
>>>>>>>       >>>   wrote:
>>>>>>>       >>>   Hey Joe
>>>>>>>       >>>       Thanks
>>>>>>>       >>>>>>  for
>>>>>>>       >>>>>>>>    reaching
>>>>>>>       >>>>>>>>>      out, we
>>>>>>>       >>>>>>>>>>       chose
>>>>>>>       >>>>>>>>>>>        to
>>>>>>>       >>>>>>>>>>>>
>> go
>>>>>>>       >>>>>>>>>>>>>
>>>>   with a
>>>>>     site
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         generator
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              over the
>>>>>>>       >>>       Apache
>>>>>>>       >>>>>>  CMS due to
>>>>>>>       >>>>>>>>    it
>>>>>>>       >>>>>>>>>>
>> initially
>>>>>>>       >>>>>>>>>>>        not
>>>>>>>       >>>>>>>>>>>>
>> meeting
>>>>>>>       >>>>>>>>>>>>>
>>        all
>>>>   of
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      our
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         needs.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              Our
>>>>>>>       >>> current
>>>>>>>       >>>       needs
>>>>>>>       >>>>>>  for the site
>>>>>>>       >>>>>>>>    are
>>>>>>>       >>>       -
>>>>>>>       >>>>>>  Markdown to html
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>>
>> conversion
>>>>>>>       >>>   That
>>>>>>>       >>>>>>  one's easy-
>>>>>>>       >>>>>>>>    its
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       default
>>>>>>>       >>>>>>>>>>>        for
>>>>>>>       >>>>>>>>>>>>
>> the
>>>>>>>       >>>>>>>>>>>>>
>>>>   cms.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>       - Global
>>>>>>>       >>>>>>>>>
>> variables/config
>>>>>>>       >>>>>>>>>>       usable
>>>>>>>       >>>>>>>>>>>>
>>>>   throughout
>>>>>>>       >>>>>>>>>>>>>
>>        in
>>>>   a
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      template
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              based
>>>>>>>       >>> layout
>>>>>>>       >>>   Easy too-
>>>>>>>       >>>>>>  just create
>>>>>>>       >>>>>>>>    a
>>>>>>>       >>>>>>>>>      perl
>>>>>>>       >>>>>>>>>>       hash
>>>>>>>       >>>>>>>>>>>>
>>>>   somewhere and
>>>>>>>       >>>>>>>>>>>>>
>>>>   make it
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         available
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              to
>>>>>>>       >>> your views.
>>>>>>>       >>>   Code your
>>>>>>>       >>>>>>  views to
>>>>>>>       >>>>>>>>    pass
>>>>>>>       >>>>>>>>>      that
>>>>>>>       >>>>>>>>>>       hash
>>>>>>>       >>>>>>>>>>>
>> along to
>>>>>>>       >>>>>>>>>>>>
>> your
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      templates
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         and you
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              are
>>>>>>>       >>> all set.
>>>>>>>       >>>   Note if your
>>>>>>>       >>>>>>  hash
>>>>>>>       >>>>>>>>    contains
>>>>>>>       >>>>>>>>>>       objects
>>>>>>>       >>>>>>>>>>>        you
>> can
>>>>>>>       >>>>>>>>>>>>
>> make
>>>>>>>       >>>>>>>>>>>>>
>>>>   method
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      calls
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         on
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              them in
>>>>>>>       >>> your
>>>>>>>       >>>   templates.
>>>>>>>       >>>>>>  Note:
>>>>>>>       >>>>>>>>    while I
>>>>>>>       >>>>>>>>>>>
>> wouldn't
>>>>>>>       >>>>>>>>>>>>>
>>>>>     recommend
>>>>>>      this in
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         general,
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              for
>>>>>>>       >>> smaller
>>>>>>>       >>>   projects
>>>>>>>       >>>>>>  like thrift
>>>>>>>       >>>>>>>>    that
>>>>>>>       >>>>>>>>>      prefer
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>>
>>>>   convenience
>>>>>>>       >>>>>>>>>>>>>
>>>>   over
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      separation
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         of
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              concerns
>>>>>>>       >>> you can
>>>>>>>       >>>   have the
>>>>>>>       >>>>>>  django
>>>>>>>       >>>>>>>>    template
>>>>>>>       >>>>>>>>>      engine
>>>>>>>       >>>>>>>>>>       do a
>>>>>>>       >>>>>>>>>>>
>> pass
>>>>>>>       >>>>>>>>>>>>
>> over
>>>>>>>       >>>>>>>>>>>>>
>>>>   your
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      markdown
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              before
>>>>>>>       >>> passing it
>>>>>>>       >>>   along to
>>>>>>>       >>>>>>  your actual
>>>>>>>       >>>>>>>>>      template
>>>>>>>       >>>>>>>>>>       page,
>>>>>>>       >>>>>>>>>>>
>> just
>>>>>>>       >>>>>>>>>>>>
>> as is
>>>>>>>       >>>>>>>>>>>>>
>>>>>     seemingly
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         common to
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              other
>>>>>>>       >>> popular
>>>>>>>       >>>   site
>>>>>>>       >>>>>>  generation
>>>>>>>       >>>>>>>>    software.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>       - Syntax
>>>>>>>       >>>>>>>>    highlighting
>>>>>>>       >>>   Comes with
>>>>>>>       >>>>>>>>    python's
>>>>>>>       >>>>>>>>>      markdown
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> support,
>>>>>>>       >>>>>>>>>>>>
>> but
>>>>>>>       >>>>>>>>>>>>>
>>>>   some
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      people
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         prefer
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              the look
>>>>>>>       >>> of
>>>>>>>       >>>   javascript
>>>>>>>       >>>>>>>>    highlighters.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>       - Easily
>>>>>>>       >>>>>>  include
>>>>>>>       >>>>>>>>    code
>>>>>>>       >>>>>>>>>>       snippets
>>>>>>>       >>>>>>>>>>>
>> from
>>>>>>>       >>>>>>>>>>>>
>> our
>>>>>>>       >>>>>>>>>>>>>
>>>>   source
>>>>>     code
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      base
>>>>>>>       >>>   Statically I
>>>>>>>       >>>>>>  hope.  No
>>>>>>>       >>>>>>>>    idea
>>>>>>>       >>>>>>>>>      how
>>>>>>>       >>>>>>>>>>       to
>>>>>>>       >>>>>>>>>>>
>> pull
>>>>>>>       >>>>>>>>>>>>>
>>>>   snippets
>>>>>     out
>>>>>>      of
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      your
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         git
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              repo
>>>>>>>       >>> via the
>>>>>>>       >>>   cms.
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>       -
>>>>>>>       >>>>>>  Ability to
>>>>>>>       >>>>>>>>    locally
>>>>>>>       >>>>>>>>>      test
>>>>>>>       >>>>>>>>>>       before
>>>>>>>       >>>>>>>>>>>>
>>>>   committing
>>>>>>>       >>>   Belt and
>>>>>>>       >>>>>>  suspenders
>>>>>>>       >>>>>>>>    with
>>>>>>>       >>>>>>>>>      the
>>>>>>>       >>>>>>>>>>       cms- you
>>>>>>>       >>>>>>>>>>>        can
>>>>>>>       >>>>>>>>>>>>
>> build
>>>>>>>       >>>>>>>>>>>>>
>>>>   your
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      changes
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              before
>>>>>>>       >>> committing
>>>>>>>       >>>   with the
>>>>>>>       >>>>>>  build
>>>>>>>       >>>>>>>>    scripts,
>>>>>>>       >>>>>>>>>      browse
>>>>>>>       >>>>>>>>>>       your
>>>>>>>       >>>>>>>>>>>>
>> changes
>>>>>>>       >>>>>>>>>>>>>
>>>>   before
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      committing
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         via
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              the cms
>>>>>>>       >>>   webgui, or
>>>>>>>       >>>>>>  simply
>>>>>>>       >>>>>>>>    commit
>>>>>>>       >>>>>>>>>      your
>>>>>>>       >>>>>>>>>>       changes
>>>>>>>       >>>>>>>>>>>        and
>>>>>>>       >>>>>>>>>>>>
>> view
>>>>>>>       >>>>>>>>>>>>>
>>        the
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      staging
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         site
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              prior to
>>>>>>>       >>> live
>>>>>>>       >>>   publication
>>>>>>>       >>>>>>  (which is
>>>>>>>       >>>>>>>>    a
>>>>>>>       >>>>>>>>>      separate
>>>>>>>       >>>>>>>>>>
>>>>>>>       >>>>>>>>>>>
>> step).
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>       -Jake
>>>>>>>       >>>       On Sun,
>>>>>>>       >>>>>>  Mar 16,
>>>>>>>       >>>>>>>>    2014 at
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>>       12:44
>> PM,
>>>>>>>       >>>>>>>>>>>        Joe
>>>>>>>       >>>>>>>>>>>>>
>>>>   Schaefer
>>>>>>>       >>>>>>>>>>
>>>>>>      <jo...@yahoo.com>wrote:
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>>       >>>         As
>>>>>>>       >>>>>>  it so
>>>>>>>       >>>>>>>>    happens I
>>>>>>>       >>>>>>>>>      am
>>>>>>>       >>>>>>>>>>>
>> interested
>>>>>>>       >>>>>>>>>>>>
>> in
>>>>>>>       >>>>>>>>>>>>>
>>>>   working
>>>>>     on
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         supporting
>>>>>>>       >>>>>>  thrift's
>>>>>>>       >>>>>>>>    use
>>>>>>>       >>>>>>>>>      case as
>>>>>>>       >>>>>>>>>>       a
>>>>>>>       >>>>>>>>>>>>
>>>>   potential
>>>>>>>       >>>>>>>>>>>>>
>>>>   user of
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      the
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         Apache
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              CMS.
>>>>>>>       >>>>>>  While the CMS
>>>>>>>       >>>>>>>>    works
>>>>>>>       >>>>>>>>>      well
>>>>>>>       >>>>>>>>>>       for
>>>>>>>       >>>>>>>>>>>>
>> massive
>>>>>>>       >>>>>>>>>>>>>
>>>>   projects
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      there
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         are
>>>>>>>       >>>>>>  things it
>>>>>>>       >>>>>>>>    could do
>>>>>>>       >>>>>>>>>>       better
>> at
>>>>>>>       >>>>>>>>>>>>
>>>>   supporting
>>>>>>>       >>>>>>>>>>>>>
>>        for
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      more
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         moderate
>>>>>>>       >>>>>>  sized sites
>>>>>>>       >>>>>>>>    like
>>>>>>>       >>>>>>>>>>>
>> thrift's.
>>>>>>>       >>>>>>  I'd
>>>>>>>       >>>>>>>>    therefore
>>>>>>>       >>>>>>>>>      like
>>>>>>>       >>>>>>>>>>       to
>>>>>>>       >>>>>>>>>>>
>> engage
>>>>>>>       >>>>>>>>>>>>
>> you
>>>>>>>       >>>>>>>>>>>>>
>>>>   folks in
>>>>>     a
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>       >>> brainstorming session
>>>>>>>       >>>>>>  about what
>>>>>>>       >>>>>>>>    sorts of
>>>>>>>       >>>>>>>>>
>>>>>>>       >>>>>>>>>>       features
>>>>>>>       >>>>>>>>>>>        you
>>>>>>>       >>>>>>>>>>>>
>> want
>>>>>>>       >>>>>>>>>>>>>
>>        for
>>>>   your
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      site
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>         and
>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>
>>>>>>              to find
>>>>>>>       >>>>>>  simple ways of
>>>>>>>       >>>>>>>>
>>>>>>>       >>>>>>>>>>
>> supporting
>>>>>>>       >>>>>>>>>>>
>> those
>>>>>>>       >>>>>>>>>>>>>
>>>>   features
>>>>>     for
>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>
>>>>>
>>>>>>      you.
>>>>>>>       >>>>>>  Thanks.
>>>>>>>       >
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Yay! Thanks Roger that's great to hear!



> On Wednesday, March 26, 2014 3:53 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> > Joe, it helps.
> the process to update the site is much faster and easier as I thought 
> before...
> 
> thanks
> -roger
> 
> On 26.03.2014 04:00, Joe Schaefer wrote:
>>  I made a start at updating the website docs for committers
>>  here at http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite
>> 
>>  I left the old stuff in there for someone to go through and replace it with
>>  the comparable text for dealing with the CMS.
>> 
>>  HTH
>> 
>> 
>> 
>>>  On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>>>  FWIW until you get accustomed to the CMS bookmarklet/webgui
>>>  stuff I recommend downloading http://s.apache.org/cms-cli
>>>  and installing the CPAN prereqs for it on your local host.
>>>  That way you can publish, which is a separate step involving
>>>  the script, while you are working on the svn tree.  If you
>>>  name the script publish.pl invoking it as
>>> 
>>>  % ./publish.pl thrift
>>> 
>>>  will get you where you need to be.  You might even consider
>>>  setting up an svn external to pull that file out of svn and
>>>  place it at the base of your cms tree for committers to use.
>>> 
>>> 
>>> 
>>>>    On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer
>>>  <jo...@yahoo.com> wrote:
>>>>    > Done Jake thanks!  One remark for Roger...
>>>> 
>>>>    The file extension used for stuff in content/test/ really 
> doesn't
>>>  matter as
>>>>    far as the build goes.  What you need to do is supply a 
> 'lang=text'
>>> 
>>>>    argument to each snippet that is not a native markdown file; the 
> build will
>>> 
>>>>    automatically strip file extensions off the internal links in the 
> markdown
>>>>    sources so httpd will do the right thing and resolve the 
> extension via the
>>>>    MultiViews feature.
>>>> 
>>>>    In the case of test/ThriftTest.thrift, I'd recommend changing 
> the
>>>  extension
>>>>    to .txt or even .md (in the content/test/ tree on the site 
> sources in svn,
>>>  not
>>>>    the code sources in git) so the CMS's webgui will fetch you a 
> decent
>>>  editor
>>>>    for that file.  Otherwise again the extension doesn't matter- 
> the build
>>>  will
>>>>    always convert it to html.
>>>> 
>>>> 
>>>> 
>>>>>     On Tuesday, March 25, 2014 9:34 AM, Jake Farrell
>>>>    <jf...@apache.org> wrote:
>>>>>     > Hey Joe
>>>>>     Thanks for making the additions to the Apache CMS to meet 
> our use
>>>  case.
>>>>    I'm
>>>>>     not seeing any blockers at the moment, lets cut over and we 
> can fix
>>>  any
>>>>>     edge cases if needed
>>>>> 
>>>>>     -Jake
>>>>> 
>>>>> 
>>>>> 
>>>>>     On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer
>>>>>     <jo...@yahoo.com>wrote:
>>>>> 
>>>>>>      Done.  Anything else we need to look at before going 
> live?
>>>>>> 
>>>>>>      Sent from my iPhone
>>>>>> 
>>>>>>      > On Mar 23, 2014, at 3:53 PM, Roger Meier
>>>>>     <ro...@bufferoverflow.ch>
>>>>>>      wrote:
>>>>>>      >
>>>>>>      > any idea how to fix this URL:
>>>>>>      > 
> http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>>>      > we need to keep the filename for working links 
> within the
>>>>>>      > test/README.md file.
>>>>>>      >
>>>>>>      > What about a footer for docs genertated from 
> source tree?
>>>>>>      > [snippet:path=test/README.md, footer=1]
>>>>>>      >
>>>>>>      > I added the following snippet to 
> content/test/index.md:
>>>>>>      > ---SNIP---
>>>>>>      > This page was generated from Apache Thrift's 
> **source
>>>  tree
>>>>    docs**:
>>>>>>      > [test/README.md](
>>>>>> 
>>>>> 
>>>> 
>>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>>>      )
>>>>>>      > ---SNIP---
>>>>>>      >
>>>>>>      > would be great to get this generated into the page 
> via
>>>  snippet.
>>>>>>      >
>>>>>>      > -roger
>>>>>>      >
>>>>>>      >
>>>>>>      >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>>>>      >> The CMS codebase as well as the thrift build 
> system
>>>>>>      >> already supports it Roger, someone just needs 
> to create
>>>>>>      >> the files in the content tree that point at 
> the source
>>>>>>      >> files in the git repo.  If you want to script 
> this
>>>  process
>>>>>>      >> in scripting language du jour, go for it, but 
> I cannot
>>>>>>      >> justify spending contractor time doing this 
> work for the
>>>>>>      >> community's behalf as it is unlikely to be 
> needed
>>>>    elsewhere.
>>>>>>      >> I would think you only need the script to run 
> when some
>>>>>>      >> path to a README.md file changes in the 
> thrift.git tree,
>>>>>>      >> so it doesn't need to be incorporated into 
> each site
>>> 
>>>>    build.
>>>>>>      >>
>>>>>>      >>
>>>>>>      >>
>>>>>>      >>>> On Sunday, March 23, 2014 9:15 AM, 
> Roger Meier
>>>  <
>>>>>>     roger@bufferoverflow.ch> wrote:
>>>>>>      >>>> Hi
>>>>>>      >>>
>>>>>>      >>>> On 23.03.2014 03:19, Jake Farrell 
> wrote:
>>>>>>      >>>>  Hey Joe
>>>>>>      >>>>  Reviewing the staging site it looks 
> like its
>>>  almost
>>>>    99%
>>>>>     there other
>>>>>>      than
>>>>>>      >>>>  some styling within the code 
> snippets. I'm
>>>  good
>>>>    if we
>>>>>     want to cut
>>>>>>      over
>>>>>>      >>> to
>>>>>>      >>>>  using this and then work on the 
> additional
>>>  features
>>>>    that
>>>>>     had been
>>>>>>      mentioned
>>>>>>      >>>>  afterwords. Any objections to cutting 
> over?
>>>>>>      >>> I would really like to see this automatic 
> README.md
>>>>    includes
>>>>>     from
>>>>>>      source
>>>>>>      >>> tree, to have a real additional feature 
> beside of
>>>  what we
>>>> 
>>>>>     already have
>>>>>>      >>> today.
>>>>>>      >>>
>>>>>>      >>> I'm absolutely with you.
>>>>>>      >>> Apache projects shall use other Apache 
> projects
>>>  whenever
>>>>>     possible.
>>>>>>      >>>
>>>>>>      >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe 
> Schaefer
>>>>>>      >>> <jo...@yahoo.com>wrote:
>>>>>>      >>>>
>>>>>>      >>>>>  May I suggest a script that 
> creates files
>>>  in
>>>>    content/
>>>>>>      >>>>>  containing a single line
>>>>>>      >>>>>
>>>>>>      >>>>>  [snippet:path=...]
>>>>>>      >>> this sounds like a plan
>>>>>>      >>>
>>>>>>      >>>>>
>>>>>>      >>>>>  (with no 'lang' argument) 
> that lets
>>>  the
>>>>    CMS
>>>>>     pull raw content
>>>>>>      >>> from
>>>>>>      >>>>>  thrift.git
>>>>>>      >>>>>  and add it directly to the built 
> pages.
>>>  That
>>>>    way you
>>>>>     only need to
>>>>>>      run
>>>>>>      >>> the
>>>>>>      >>>>>  script that generates these files 
> when a
>>>  path
>>>>    changes
>>>>>     in your
>>>>>>      >>> thrift.git
>>>>>>      >>>>>  repo.
>>>>>>      >>> What I had in mind is a automatic search 
> of
>>>  README.md
>>>>    files
>>>>>     across the
>>>>>>      >>> source tree and generate the site with 
> these
>>>>    automatically.
>>>>>>      >>> Kind of a central controller that maps all 
> the
>>>  URL's.
>>>>>>      >>> no additional work when a new README.md 
> file is
>>>  added.
>>>>>>      >>> however, a script can do this as interim 
> soultion.
>>>>>>      >>>>>
>>>>>>      >>>>>  You can commit directly to the 
> cms svn tree
>>>  or
>>>>    via
>>>>>     the webgui which
>>>>>>      >>> does
>>>>>>      >>>>>  the same thing.
>>>>>>      >>> Great!
>>>>>>      >>>
>>>>>>      >>> What about local preview when doing perl
>>>  modifications?
>>>>>>      >>>
>>>>>>      >>> -roger
>>>>>>      >>>
>>>>>>      >>>
>>>>>>      >>>>>
>>>>>>      >>>>>
>>>>>>      >>>>>>  On Saturday, March 22, 2014 
> 4:20 PM,
>>>  Roger
>>>>    Meier
>>>>>     <
>>>>>>      >>>>>  roger@bufferoverflow.ch> 
> wrote:
>>>>>>      >>>>>>>  I still see some issues 
> and still
>>>  miss
>>>>    to
>>>>>     feature mentioned.
>>>>>>      >>>>>>  Now we have nonoc.ws and 
> I'm able
>>>  to
>>>>    hack
>>>>>     this a bit.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  We had no real big issue, the 
> thing I
>>>  missed
>>>>    was
>>>>>     the code snippet
>>>>>>      >>> thing
>>>>>>      >>>>>>  and this is in on nanoc.ws 
> and now also
>>>  on
>>>>    Apache
>>>>>     CMS.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  The thing we really need is 
> the
>>>>    documentation
>>>>>     located within source
>>>>>>      >>> code
>>>>>>      >>>>>>  integrated on the web site.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  most hosting platforms do 
> render
>>>  README.md
>>>>    and
>>>>>     that's why lot
>>>>>>      >>> of doc
>>>>>>      >>>>>>  will stay within the code and 
> we should
>>> 
>>>>    benefit
>>>>>     as well by
>>>>>>      >>> rendering
>>>>>>      >>>>>>  that to the web site and 
> enhance the
>>>>>     documentation very easily.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  I would like to render the 41 
> README.md
>>> 
>>>>    files to
>>>>>     with the following
>>>>>>      >>>>>>  pattern, that's a must 
> have before
>>>>    switching
>>>>>     to another CMS.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  test/README.md =>
>>>  thrift.apache.org/test
>>>>>>      >>>>>>  test/STATUS.md =>
>>>>>     thrift.apache.org/test/status
>>>>>>      >>>>>>  test/keys/README.md =>
>>>>>     thrift.apache.org/test/keys
>>>>>>      >>>>>>  lib/<lang>/README.md 
> =>
>>>>>     thrift.apache.org/lib/<lang>
>>>>>>      >>>>>>  
> lib/<lang>/test/README.md =>
>>>>>>      >>> thrift.apache.org/lib/<lang>/test
>>>>>>      >>>>>>  
> lib/<lang>/examples/README.md
>>>  =>
>>>>>>      >>>>>>
>>>  thrift.apache.org/lib/<lang>/examples
>>>>>>      >>>>>>  compiler/cpp/README.md =>
>>>>>     thrift.apache.org/compiler
>>>>>>      >>>>>>  debian/README.md =>
>>>>    thrift.apache.org/debian
>>>>>>      >>>>>>  
> contrib/<topic>/README.md =>
>>>>>>      >>> thrift.apache.org/<topic>
>>>>>>      >>>>>>
>>>>>>      >>>>>>  CPP tutorial seems to be 
> broken on
>>>  staging.
>>>>>>      >>>>>>
>>>>>>      >>>>>>  Do you commit to
>>>>>>      >>>
>>>  https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>>      >>>>>>  or is it web gui only?
>>>>>>      >>>>>>
>>>>>>      >>>>>>  How do you generate the site 
> on your
>>>  local
>>>>>     machine?
>>>>>>      >>>>>>
>>>>>>      >>>>>>
>>>>>>      >>>>>>  Should I reactivate my perl 
> or do we
>>>  stay
>>>>    with
>>>>>     ruby?
>>>>>>      >>>>>>  Committers and contributors, 
> what do
>>>  you
>>>>    think?
>>>>>>      >>>>>>
>>>>>>      >>>>>>
>>>>>>      >>>>>>  all the best
>>>>>>      >>>>>>  -roger
>>>>>>      >>>>>>
>>>>>>      >>>>>>
>>>>>>      >>>>>>>  On 22.03.2014 18:07, Joe 
> Schaefer
>>>  wrote:
>>>>>>      >>>>>>>
>>>>>>      >>>>>>>
>>>>>>      >>>>>>>    Ok I've now done 
> the basic
>>>>    necessities
>>>>>     involved in
>>>>>>      >>> porting
>>>>>>      >>>>>>>    the site over.  Links 
> have been
>>>>    adjusted,
>>>>>     templates ported,
>>>>>>      >>> files
>>>>>>      >>>>>  created,
>>>>>>      >>>>>>>    snippet feature 
> activated.  At
>>>  this
>>>>    point
>>>>>     I'm happy to
>>>>>>      >>> declare
>>>>>>      >>>>>>>    victory and migrate the 
> thrift
>>>  live
>>>>    site
>>>>>     over, as anything
>>>>>>      >>> broken that
>>>>>>      >>>>>>>    still remains can be 
> dealt with
>>>  on a
>>>>>     per-page basis with the
>>>>>>      >>>>>  bookmarklet.
>>>>>>      >>>>>>>
>>>>>>      >>>>>>>
>>>>>>      >>>>>>>
>>>>>>      >>>>>>>>    On Thursday, March 
> 20, 2014
>>>  11:19
>>>>    AM,
>>>>>     Joe Schaefer
>>>>>>      >>>>>>  
> <jo...@yahoo.com> wrote:
>>>>>>      >>>>>>>>>    Modulo some 
> bizarre
>>>  content
>>>>>     truncation out of
>>>>>>      >>> git-wip-us.apache.org
>>>>>>      >>>>>>>>    the snippet support 
> is now
>>>  active.
>>>>    At
>>>>>     this point I think
>>>>>>      >>> all the build
>>>>>>      >>>>>>>>    support you need in 
> this
>>>  project
>>>>    to
>>>>>     support every type of
>>>>>>      >>>>>  brainstorming
>>>>>>      >>>>>>>>    activity we've 
> discussed
>>>  is
>>>>    now
>>>>>     there, so it's
>>>>>>      >>> just up to you
>>>>>>      >>>>>>  guys to
>>>>>>      >>>>>>>>    now familiarize 
> yourselves
>>>  with
>>>>    the
>>>>>     build technology and
>>>>>>      >>> how to apply
>>>>>>      >>>>>>>>    it to your needs.  
> The site
>>>  builds
>>>>    with
>>>>>     snippet support
>>>>>>      >>> are running
>>>>>>      >>>>>>  around
>>>>>>      >>>>>>>>    10 seconds, which 
> is to be
>>>>    expected
>>>>>     with the network
>>>>>>      >>> interactions
>>>>>>      >>>>>>  involved.
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>    I'm always 
> willing to
>>>  answer
>>>>    any
>>>>>     questions that come
>>>>>>      >>> up in the
>>>>>>      >>>>>>  interim,
>>>>>>      >>>>>>>>    but I wish you guys 
> the best
>>>  of
>>>>    luck in
>>>>>     the remaining
>>>>>>      >>> porting work to
>>>>>>      >>>>>>  be done.
>>>>>>      >>>>>>>>    All I see really 
> are some
>>>  links
>>>>    that
>>>>>     need to have the
>>>>>>      >>> trailing slashes
>>>>>>      >>>>>>  removed
>>>>>>      >>>>>>>>    and whatever <%= 
> %>
>>>  template
>>>> 
>>>>>     constructs that remain
>>>>>>      >>> need to be
>>>>>>      >>>>>>  ported to
>>>>>>      >>>>>>>>    django.  So it 
> should be
>>>  smooth
>>>>>     sailing, but as I said if
>>>>>>      >>> you hit any
>>>>>>      >>>>>>  snags
>>>>>>      >>>>>>>>    holler.  I'd 
> really like
>>>  to
>>>>    see the
>>>>>     live site tech
>>>>>>      >>> switched over to
>>>>>>      >>>>>>  the cms
>>>>>>      >>>>>>>>    stuff before 
> Apachecon ends
>>>  in
>>>>    early
>>>>>     April, hint hint.
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>>      On 
> Wednesday, March
>>>  19,
>>>>    2014
>>>>>     10:41 PM, Joe Schaefer
>>>>>>      >>>>>>>>>
>>>  <jo...@yahoo.com>
>>>> 
>>>>>     wrote:
>>>>>>      >>>>>>>>>      > While I 
> don't
>>>  yet
>>>>    know
>>>>>     the url magic to
>>>>>>      >>> support branches
>>>>>>      >>>>>>  and tags
>>>>>>      >>>>>>>>    in git,
>>>>>>      >>>>>>>>>      I can say 
> that the
>>>  snippet
>>>>>     support is ready to play
>>>>>>      >>> with.  I
>>>>>>      >>>>>>  suggest just
>>>>>>      >>>>>>>>>      focusing on 
> the
>>>  /index.md
>>>>    page
>>>>>     first to see how it
>>>>>>      >>> works in
>>>>>>      >>>>>>  practice
>>>>>>      >>>>>>>>    because
>>>>>>      >>>>>>>>>      once it's 
> fully
>>>  enabled
>>>>    the
>>>>>     build will break
>>>>>>      >>> until all the
>>>>>>      >>>>>>  snippet
>>>>>>      >>>>>>>>    sources
>>>>>>      >>>>>>>>>      have been 
> altered to
>>>  conform
>>>>    with
>>>>>     the new style.
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>      To turn it on 
> for
>>>  index.md
>>>>>     testing, there are a
>>>>>>      >>> couple of things
>>>>>>      >>>>>>  that need
>>>>>>      >>>>>>>>    to
>>>>>>      >>>>>>>>>      happen. First 
> the
>>>>    [snippet:...]
>>>>>     marker should be
>>>>>>      >>> edited to be
>>>>>>      >>>>>>>>    [XXXsnippet:...]
>>>>>>      >>>>>>>>>      to enable 
> testing
>>>  without
>>>>>     breaking the build.
>>>>>>      >>> Second each marker
>>>>>>      >>>>>>  contains
>>>>>>      >>>>>>>>    a
>>>>>>      >>>>>>>>>      
> "token"
>>>  argument
>>>>>     instead of line numbers
>>>>>>      >>> for more
>>>>>>      >>>>>>  stability under
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>      edits to the 
> source
>>>  code.
>>>>    The
>>>>>     token argument is an
>>>>>>      >>> arbitrary
>>>>>>      >>>>>>  string that
>>>>>>      >>>>>>>>    is
>>>>>>      >>>>>>>>>      used to 
> denote the
>>>>    boundaries of
>>>>>     the snippet within
>>>>>>      >>> the source
>>>>>>      >>>>>>  code.
>>>>>>      >>>>>>>>>      
> ASF::Value::Snippet
>>>  will
>>>>    pull
>>>>>     out the lines from
>>>>>>      >>> the source file
>>>>>>      >>>>>>  between
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>      lines that 
> contain the
>>>  token
>>>> 
>>>>>     argument and format
>>>>>>      >>> them as a code
>>>>>>      >>>>>>  snippet
>>>>>>      >>>>>>>>    embedded
>>>>>>      >>>>>>>>>      into 
> markdown. To get
>>>>    started
>>>>>     I'll copy over
>>>>>>      >>> the code
>>>>>>      >>>>>>  highlighting css
>>>>>>      >>>>>>>>    from
>>>>>>      >>>>>>>>>      
> www.apache.org but note
>>>  that
>>>>    this
>>>>>     is all based on
>>>>>>      >>> python pygments
>>>>>>      >>>>>>  and there
>>>>>>      >>>>>>>>    are
>>>>>>      >>>>>>>>>      a variety of 
> online css
>>> 
>>>>    files to
>>>>>     choose from if
>>>>>>      >>> this one is not
>>>>>>      >>>>>>  to the
>>>>>>      >>>>>>>>>      group's 
> liking.
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>>       On 
> Wednesday,
>>>  March 19,
>>>>    2014
>>>>>     4:16 PM, Joe
>>>>>>      >>> Schaefer
>>>>>>      >>>>>>>>>
>>>>    <jo...@yahoo.com>
>>>>>     wrote:
>>>>>>      >>>>>>>>>>       > 
> Sorry I need
>>>  to
>>>>    clarify
>>>>>     with an example:
>>>>>>      >>> look at
>>>>>>      >>>>>>>>>>
>>>>>     http://thrift.staging.apache.org/tutorial/
>>>>>>      >>> versus
>>>>>>      >>> 
> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>      >>>>>>>>>>       former 
> is
>>>  generated
>>>>    from
>>>>>>      >>> content/tutorial/index.html
>>>>>>      >>>>>>>>>>       and the 
> latter
>>>  from
>>>>>     content/tutorial.md.  The
>>>>>>      >>> latter file
>>>>>>      >>>>>>>>>>       needs to 
> be
>>>  removed
>>>>    from the
>>>>>     tree now that
>>>>>>      >>> it's content
>>>>>>      >>>>>>>>>>       has been 
> ported to
>>>>>>      >>> content/tutorial/index.html.  This
>>>>>>      >>>>>>>>>>       uses 
> django
>>>  template
>>>>>     inheritance to maintain
>>>>>>      >>> simplicity.
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>       Other 
> directories
>>>  that
>>>>>     follow a similar
>>>>>>      >>> pattern should
>>>>>>      >>>>>>>>>>       also be 
> ported in
>>>  the
>>>>    same
>>>>>     fashion.
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        On 
> Wednesday,
>>> 
>>>>    March 19,
>>>>>     2014 9:46 AM, Joe
>>>>>>      >>> Schaefer
>>>>>>      >>>>>>>>>>
>>>>>     <jo...@yahoo.com> wrote:
>>>>>>      >>>>>>>>>>>        
>>  If
>>>>    someone's
>>>>>     looking for a way
>>>>>>      >>> to help with
>>>>>>      >>>>>>  the porting
>>>>>>      >>>>>>>>>>>        
> effort,
>>>  consider
>>>>>     tackling the creation of
>>>>>>      >>> an index.html
>>>>>>      >>>>>>>>>>>        
> page in each
>>>>    subdir of
>>>>>     the content/ tree
>>>>>>      >>> (other than
>>>>>>      >>>>>>  the
>>>>>>      >>>>>>>>>>>        
> base which
>>>  has an
>>>>>     /index.md).  The
>>>>>>      >>> contents of the file
>>>>>>      >>>>>>>>>>>        
> should be
>>>  just
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> {%
>>>  include
>>>>>     'default' %}
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> (see the docs
>>>  dir
>>>>    for
>>>>>     an example page
>>>>>>      >>> that can be
>>>>>>      >>>>>>  copied)
>>>>>>      >>>>>>>>>>>        and 
> the build
>>> 
>>>>    system
>>>>>     will take care of
>>>>>>      >>> generating the
>>>>>>      >>>>>>  page
>>>>>>      >>>>>>>>>>>        in 
> a
>>>  consistent
>>>>    fashion
>>>>>     with the rest of
>>>>>>      >>> the site.
>>>>>>      >>>>>>  Once
>>>>>>      >>>>>>>>>>>        
> that is done
>>>  there
>>>>    are
>>>>>     a lot of pages
>>>>>>      >>> that function
>>>>>>      >>>>>>  like
>>>>>>      >>>>>>>>>>>        
> index pages
>>>  but
>>>>    are
>>>>>     written in markdown
>>>>>>      >>> that can be
>>>>>>      >>>>>>  deleted,
>>>>>>      >>>>>>>>>>>        
> like docs.md
>>>  and
>>>>    its
>>>>>     ilk.  Nanoc
>>>>>>      >>> transforms that file
>>>>>>      >>>>>>  into
>>>>>>      >>>>>>>>>>>
>>>  /docs/index.html
>>>>    but
>>>>>     that's kinda
>>>>>>      >>> crufty and not
>>>>>>      >>>>>>  supported
>>>>>>      >>>>>>>>>>>        by 
> the CMS,
>>>  which
>>>>    only
>>>>>     lets you alter
>>>>>>      >>> file extensions
>>>>>>      >>>>>>  not paths.
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>        
> On
>>>  Wednesday,
>>>> 
>>>>>     March 19, 2014 8:54
>>>>>>      >>> AM, Joe Schaefer
>>>>>>      >>>>>>>>>>>
>>>>>     <jo...@yahoo.com> wrote:
>>>>>>      >>>>>>>>>>>>        
>>  I
>>>  just
>>>>>     pencilled in snippet
>>>>>>      >>> preprocessing
>>>>>>      >>>>>>  support into
>>>>>>      >>>>>>>>>>>>        
> the
>>>  thrift
>>>>>     builds.  Once Jake and I
>>>>>>      >>> have settled
>>>>>>      >>>>>>  on the
>>>>>>      >>>>>>>>>>>>        
> feature
>>>  set
>>>>    of
>>>>>     ASF::Value::Snippet,
>>>>>>      >>> and we have
>>>>>>      >>>>>>  ported
>>>>>>      >>>>>>>>>>>>        
> the
>>>  snippet
>>>>>     calling text within the
>>>>>>      >>> markdown pages
>>>>>>      >>>>>>>>>>>>        
> to the
>>>  new
>>>>    format,
>>>>>     things will just
>>>>>>      >>> work (knock on
>>>>>>      >>>>>>  wood).
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>    
>       On
>>>>    Wednesday,
>>>>>     March 19, 2014
>>>>>>      >>> 6:48 AM, Joseph
>>>>>>      >>>>>>  Schaefer
>>>>>>      >>>>>>>>>>>>
>>>>>     <jo...@yahoo.com>
>>>>>>      >>> wrote:
>>>>>>      >>>>>>>>>>>>>
>>>> 
>>>>    Sure I
>>>>>     understand that
>>>>>>      >>> need.  If
>>>>>>      >>>>>>  there's a way
>>>>>>      >>>>>>>>    of
>>>>>>      >>>>>>>>>>       pulling 
> the
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>        
> document
>>>>>>      >>>>>>>>>>>>>
>>>  sources
>>>>>     directly from the web I
>>>>>>      >>> can parse the
>>>>>>      >>>>>>  content
>>>>>>      >>>>>>>>    to
>>>>>>      >>>>>>>>>      look for
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> snippet
>>>>>>      >>>>>>>>>>>>>
>>>  markers
>>>>    and
>>>>>     make those
>>>>>>      >>> available to the
>>>>>>      >>>>>>  template
>>>>>>      >>>>>>>>    system.
>>>>>>      >>>>>>>>>>      
> That's
>>>>>>      >>>>>>>>>>>        
> pretty
>>>>>>      >>>>>>>>>>>>        
> much
>>>>>>      >>>>>>>>>>>>>    
>       how
>>> 
>>>>>     www.apache.org is
>>>>>>      >>> generated.
>>>>>>      >>>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>  Sent
>>>>    from my
>>>>>     iPhone
>>>>>>      >>>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>>>>     
>>>>>>>>>>>>>>> 
>>>      On
>>>>    Mar
>>>>>     19, 2014, at 5:28
>>>>>>      >>> AM, Henrique
>>>>>>      >>>>>>  Mendonça
>>>>>>      >>>>>>>>>>>>
>>>>>     <he...@apache.org>
>>>>>>      >>>>>>>>>>>>>
>>>  wrote:
>>>>>>     
>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>> 
>>>      Hi
>>>>    Joe,
>>>>>>     
>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>> 
>>> 
>>>>    Thanks
>>>>>     for your effort. I
>>>>>>      >>> just wanted to
>>>>>>      >>>>>>  add that
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>      code
>>>>>>      >>>>>>>>>>>        
> snippets
>>>>>>      >>>>>>>>>>>>        
> are a
>>>>>>     
>>>>>>>>>>>>>>> 
>>> 
>>>>    crucial
>>>>>     feature for this
>>>>>>      >>> project, which
>>>>>>      >>>>>>  has way
>>>>>>      >>>>>>>>    more
>>>>>>      >>>>>>>>>      target
>>>>>>      >>>>>>>>>>>        
> languages
>>>>>>      >>>>>>>>>>>>        
> than
>>>>>>     
>>>>>>>>>>>>>>> 
>>> 
>>>>    active
>>>>>     contributors. In
>>>>>>      >>> our case,
>>>>>>      >>>>>>  reducing manual
>>>>>>      >>>>>>>>>>      
> maintenance
>>>>>>      >>>>>>>>>>>        
> costs is
>>>>>>      >>>>>>>>>>>>        
> much
>>>>>>     
>>>>>>>>>>>>>>> 
>>> 
>>>>    more
>>>>>     important than the
>>>>>>      >>> total site build
>>>>>>      >>>>>>  time.
>>>>>>      >>>>>>>>    Perhaps
>>>>>>      >>>>>>>>>      we
>>>>>>      >>>>>>>>>>       can
>>>>>>      >>>>>>>>>>>        
> also
>>>>>>      >>>>>>>>>>>>        
> solve
>>>>>>     
>>>>>>>>>>>>>>> 
>>> 
>>>>    this in
>>>>>     the CMS, though.
>>>>>>     
>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>> 
>>>      -
>>>>>     Henrique
>>>>>>     
>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    On
>>>>>     19 March 2014
>>>>>>      >>> 03:17, Joe Schaefer
>>>>>>      >>>>>>>>>>>>
>>>>>     <jo...@yahoo.com>
>>>>>>      >>>>>>>>>>>>>
>>>  wrote:
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    A
>>>>>     couple more thoughts
>>>>>>      >>> regarding the
>>>>>>      >>>>>>>>    background on
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       CMS...
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    the
>>>>>     bulk of the focus
>>>>>>      >>> of the CMS up
>>>>>>      >>>>>>  until now
>>>>>>      >>>>>>>>    has
>>>>>>      >>>>>>>>>      been
>>>>>>      >>>>>>>>>>       to
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     support really big
>>>>>>      >>> sites like maven
>>>>>>      >>>>>>  and
>>>>>>      >>>>>>>>    openoffice,
>>>>>>      >>>>>>>>>      both
>>>>>>      >>>>>>>>>>       of
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     which have websites
>>>>>>      >>> well over 5GB
>>>>>>      >>>>>>  worth of
>>>>>>      >>>>>>>>    text
>>>>>>      >>>>>>>>>      files.
>>>>>>      >>>>>>>>>>       The
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     build system was
>>>>>>      >>> hollowed out and
>>>>>>      >>>>>>  revamped to
>>>>>>      >>>>>>>>>      support
>>>>>>      >>>>>>>>>>>        
> external
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     builds in other
>>>>>>      >>> programming
>>>>>>      >>>>>>  languages, as well
>>>>>>      >>>>>>>>    as
>>>>>>      >>>>>>>>>>       scaling 
> up
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    the
>>>>>     perl builds to
>>>>>>      >>> provide about 8
>>>>>>      >>>>>>  child
>>>>>>      >>>>>>>>    processes
>>>>>>      >>>>>>>>>      that
>>>>>>      >>>>>>>>>>       build
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    the
>>>>>     site in parallel
>>>>>>      >>> by default.
>>>>>>      >>>>>>  Full site
>>>>>>      >>>>>>>>    build
>>>>>>      >>>>>>>>>      times
>>>>>>      >>>>>>>>>>       for
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     openoffice went from
>>>>>>      >>> over 30 minutes
>>>>>>      >>>>>>  to
>>>>>>      >>>>>>>>    between 5
>>>>>>      >>>>>>>>>      to 10
>>>>>>      >>>>>>>>>>>        
> minutes
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     depending on disk
>>>>>>      >>> activity, which
>>>>>>      >>>>>>  made
>>>>>>      >>>>>>>>>      
> experimentation
>>>>>>      >>>>>>>>>>       with
>>>>>>      >>>>>>>>>>>>
>>>  site-wide
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     changes feasible on a
>>>>>>      >>> reasonable
>>>>>>      >>>>>>  timeframe.
>>>>>>      >>>>>>>>    At
>>>>>>      >>>>>>>>>      first
>>>>>>      >>>>>>>>>>       the
>>>>>>      >>>>>>>>>>>        
> project
>>>>>>      >>>>>>>>>>>>        
> was
>>>>>>      >>>>>>>>>>>>>    
>       in
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    the
>>>>>     habit of running
>>>>>>      >>> the builds
>>>>>>      >>>>>>  locally before
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>      checking
>>>>>>      >>>>>>>>>>       in
>>>>>>      >>>>>>>>>>>        
> their
>>>>>>      >>>>>>>>>>>>>
>>>  changes
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     because the delay in
>>>>>>      >>> feedback
>>>>>>      >>>>>>  post-commit was
>>>>>>      >>>>>>>>>>      
> unreasonable,
>>>>>>      >>>>>>>>>>>        but
>>>>>>      >>>>>>>>>>>>        
> with
>>>>>>      >>>>>>>>>>>>>
>>>  smart
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    use
>>>>>     of SSI the were
>>>>>>      >>> able to cut down
>>>>>>      >>>>>>  on the
>>>>>>      >>>>>>>>    number
>>>>>>      >>>>>>>>>      of
>>>>>>      >>>>>>>>>>       changes
>>>>>>      >>>>>>>>>>>        
> that
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>  required
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    full
>>>>>     site builds and
>>>>>>      >>> hence no longer
>>>>>>      >>>>>>  bother
>>>>>>      >>>>>>>>    with
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       whole
>>>>>>      >>>>>>>>>>>>
>>>  pre-build
>>>>>>      >>>>>>>>>>>>>
>>>  mumbo
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     jumbo before checking
>>>>>>      >>> in changes.
>>>>>>      >>>>>>  The CMS is
>>>>>>      >>>>>>>>>      designed
>>>>>>      >>>>>>>>>>       to
>>>>>>      >>>>>>>>>>>        
> only
>>>>>>      >>>>>>>>>>>>        
> build
>>>>>>      >>>>>>>>>>>>>
>>>  pages
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    that
>>>>>     were altered, and
>>>>>>      >>> if you just
>>>>>>      >>>>>>  edit a page
>>>>>>      >>>>>>>>    or
>>>>>>      >>>>>>>>>      two
>>>>>>      >>>>>>>>>>       only
>>>>>>      >>>>>>>>>>>        
> those
>>>>>>      >>>>>>>>>>>>        
> pages
>>>>>>      >>>>>>>>>>>>>    
>       and
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    the
>>>>>     pages that depend
>>>>>>      >>> on them will
>>>>>>      >>>>>>  be built.
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    Now
>>>>>     that I've
>>>>>>      >>> turned my
>>>>>>      >>>>>>  attention to
>>>>>>      >>>>>>>>    thrift,
>>>>>>      >>>>>>>>>      there
>>>>>>      >>>>>>>>>>       are
>>>>>>      >>>>>>>>>>>        
> several
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>  aspects
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    that
>>>>>     are better off
>>>>>>      >>> being retuned
>>>>>>      >>>>>>  based on the
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>      modest
>>>>>>      >>>>>>>>>>       size of
>>>>>>      >>>>>>>>>>>        the
>>>>>>      >>>>>>>>>>>>        
> site.
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     First of all you have
>>>>>>      >>> a sitemap url
>>>>>>      >>>>>>  that lists
>>>>>>      >>>>>>>>    all
>>>>>>      >>>>>>>>>      of
>>>>>>      >>>>>>>>>>       your
>>>>>>      >>>>>>>>>>>>>
>>>>>     markdown-based
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     pages, which would be
>>>>>>      >>> a nonstarter
>>>>>>      >>>>>>  for a site
>>>>>>      >>>>>>>>    like
>>>>>>      >>>>>>>>>>>        
> openoffice.
>>>>>>      >>>>>>>>>>>>        
> The
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     implications of the
>>>>>>      >>> sitemap url are
>>>>>>      >>>>>>  that every
>>>>>>      >>>>>>>>    page
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>>       needs to
>>>>>>      >>>>>>>>>>>        be
>>>>>>      >>>>>>>>>>>>        
> built
>>>>>>      >>>>>>>>>>>>>    
>       in
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     memory just to
>>>>>>      >>> generate that page,
>>>>>>      >>>>>>  which leads
>>>>>>      >>>>>>>>    to a
>>>>>>      >>>>>>>>>      lot
>>>>>>      >>>>>>>>>>       of
>>>>>>      >>>>>>>>>>>>
>>>  redundancy
>>>>>>      >>>>>>>>>>>>>    
>       in
>>>  a
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     build system designed
>>>>>>      >>> to run as
>>>>>>      >>>>>>  forked child
>>>>>>      >>>>>>>>>      processes.
>>>>>>      >>>>>>>>>>       We
>>>>>>      >>>>>>>>>>>        can 
> do
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>>    better...
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     I've done two
>>>>>>      >>> things to make
>>>>>>      >>>>>>  this work
>>>>>>      >>>>>>>>    well-
>>>>>>      >>>>>>>>>      first I
>>>>>>      >>>>>>>>>>       made
>>>>>>      >>>>>>>>>>>        the
>>>>>>      >>>>>>>>>>>>>
>>>  number
>>>>    of
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     child processes
>>>>>>      >>> "aka
>>>>>>      >>>>>>  runners"
>>>>>>      >>>>>>>>    tunable on
>>>>>>      >>>>>>>>>      a
>>>>>>      >>>>>>>>>>>        
> per-project
>>>>>>      >>>>>>>>>>>>        
> basis,
>>>>>>      >>>>>>>>>>>>>    
>       and
>>> 
>>>>    since the
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     sitemap is going to
>>>>>>      >>> build every page
>>>>>>      >>>>>>  anyway as
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>>       slowest
>>>>>>      >>>>>>>>>>>        
> page to
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>  build, I
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     memoized the main view
>>>>>>      >>> that builds
>>>>>>      >>>>>>  the
>>>>>>      >>>>>>>>    markdown
>>>>>>      >>>>>>>>>      pages
>>>>>>      >>>>>>>>>>       for
>>>>>>      >>>>>>>>>>>        
> thrift.
>>>>>>      >>>>>>>>>>>>        
> The
>>>>>>      >>>>>>>>>>>>>
>>>  best
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     results are when
>>>>>>      >>> there's only
>>>>>>      >>>>>>  one runner
>>>>>>      >>>>>>>>    so we
>>>>>>      >>>>>>>>>      get
>>>>>>      >>>>>>>>>>       the
>>>>>>      >>>>>>>>>>>        
> full
>>>>>>      >>>>>>>>>>>>        
> benefit
>>>>>>      >>>>>>>>>>>>>    
>       of
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     memoization: typical
>>>>>>      >>> site build
>>>>>>      >>>>>>  times are
>>>>>>      >>>>>>>>>      consistently
>>>>>>      >>>>>>>>>>       under
>>>>>>      >>>>>>>>>>>        2
>>>>>>      >>>>>>>>>>>>        
> seconds
>>>>>>      >>>>>>>>>>>>>
>>>  now.
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     You'll appreciate
>>>>>>      >>> why I am such
>>>>>>      >>>>>>  a
>>>>>>      >>>>>>>>    performance
>>>>>>      >>>>>>>>>>       stickler
>>>>>>      >>>>>>>>>>>        for 
> the
>>>>>>      >>>>>>>>>>>>        
> CMS
>>>>>>      >>>>>>>>>>>>>
>>>  when
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    you
>>>>>     start using the
>>>>>>      >>> bookmarklet,
>>>>>>      >>>>>>  since builds
>>>>>>      >>>>>>>>    are
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       only
>>>>>>      >>>>>>>>>>>>
>>>  asynchronous
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    part
>>>>>     of the process
>>>>>>      >>> from making a
>>>>>>      >>>>>>  change to a
>>>>>>      >>>>>>>>    page
>>>>>>      >>>>>>>>>      and
>>>>>>      >>>>>>>>>>>        
> publishing
>>>>>>      >>>>>>>>>>>>        
> the
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     results.  Ideally when
>>>>>>      >>> the system is
>>>>>>      >>>>>>  working
>>>>>>      >>>>>>>>    well
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       builds
>>>>>>      >>>>>>>>>>>>        
> happen
>>>>>>      >>>>>>>>>>>>>
>>>  before
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    you
>>>>>     have time to go
>>>>>>      >>> looking for
>>>>>>      >>>>>>  them, but you
>>>>>>      >>>>>>>>    do
>>>>>>      >>>>>>>>>      need to
>>>>>>      >>>>>>>>>>       be
>>>>>>      >>>>>>>>>>>>        
> mindful
>>>  of
>>>>>>      >>>>>>>>>>>>>    
>       not
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     publishing before the
>>>>>>      >>> built pages
>>>>>>      >>>>>>  have been
>>>>>>      >>>>>>>>>      committed
>>>>>>      >>>>>>>>>>       back to
>>>>>>      >>>>>>>>>>>        svn
>>>>>>      >>>>>>>>>>>>        
> by
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     buildbot.
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     On Monday, March
>>>>>>      >>> 17, 2014 11:59
>>>>>>      >>>>>>  PM, Joe
>>>>>>      >>>>>>>>>      Schaefer
>>>>>>      >>>>>>>>>>>>>
>>>>>     <jo...@yahoo.com>
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     wrote:
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        Ok there's
>>>>>>      >>> enough of an
>>>>>>      >>>>>>  idea about
>>>>>>      >>>>>>>>    how
>>>>>>      >>>>>>>>>      to
>>>>>>      >>>>>>>>>>       port
>>>>>>      >>>>>>>>>>>        the
>>>>>>      >>>>>>>>>>>>        
> rest of
>>>>>>      >>>>>>>>>>>>>    
>       the
>>> 
>>>>>     site's
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     pages over based
>>>>>>      >>> on the porting
>>>>>>      >>>>>>  work
>>>>>>      >>>>>>>>    I've
>>>>>>      >>>>>>>>>>       already
>>>>>>      >>>>>>>>>>>        
> done
>>>>>>      >>>>>>>>>>>>        
> that
>>>>>>      >>>>>>>>>>>>>
>>>  it's
>>>>    time
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     for me to step
>>>>>>      >>> back and let you
>>>>>>      >>>>>>  guys catch
>>>>>>      >>>>>>>>    up.
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>>      
> Basically
>>>>>>      >>>>>>>>>>>        the
>>>>>>      >>>>>>>>>>>>        
> idea
>>>>>>      >>>>>>>>>>>>>    
>       is
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    that
>>>>>     while
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     there is
>>>>>>      >>> templating support in
>>>>>>      >>>>>>  the
>>>>>>      >>>>>>>>    markdown
>>>>>>      >>>>>>>>>      sources,
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> it's
>>>>>>      >>>>>>>>>>>>>
>>>  fairly
>>>>>     limited
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     compared to what
>>>>>>      >>> nanoc offers,
>>>>>>      >>>>>>  but instead
>>>>>>      >>>>>>>>    of
>>>>>>      >>>>>>>>>>       writing 
> a
>>>>>>      >>>>>>>>>>>        lot 
> of
>>>>>>      >>>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>  complex
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     template
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     code into your
>>>>>>      >>> sources, with the
>>>>>>      >>>>>>  cms you
>>>>>>      >>>>>>>>    just
>>>>>>      >>>>>>>>>      add
>>>>>>      >>>>>>>>>>       code to
>>>>>>      >>>>>>>>>>>
>>>>>>      >>>>>>>>>>>>>
>>>>>     lib/view.pmand/or
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     lib/path.pm to
>>>>>>      >>> keep the document
>>>>>>      >>>>>>  sources
>>>>>>      >>>>>>>>    simple
>>>>>>      >>>>>>>>>      and
>>>>>>      >>>>>>>>>>       just
>>>>>>      >>>>>>>>>>>        add
>>>>>>      >>>>>>>>>>>>        
> more
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     template
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     variables.  What I
>>>>>>      >>> just finished
>>>>>>      >>>>>>  in
>>>>>>      >>>>>>>>    lib/view.pm
>>>>>>      >>>>>>>>>      and
>>>>>>      >>>>>>>>>>>>
>>>  lib/path.pm
>>>>    is
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     directory
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     listing support
>>>>>>      >>> for /docs.html
>>>>>>      >>>>>>  but it can
>>>>>>      >>>>>>>>    be
>>>>>>      >>>>>>>>>      carried
>>>>>>      >>>>>>>>>>       over
>>>>>>      >>>>>>>>>>>        to
>>>>>>      >>>>>>>>>>>>>
>>>  similar
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>>     pages.
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        On Monday,
>>>>>>      >>> March 17, 2014
>>>>>>      >>>>>>  9:16 PM, Joe
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>      Schaefer
>>>>>>      >>> <jo...@yahoo.com>
>>>>>>      >>>>>>  wrote:
>>>>>>      >>> Interesting ideas,
>>>>>>      >>>>>>  thanks.  FWIW I
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>      think
>>>>>>      >>>>>>>>>>       that
>>>>>>      >>>>>>>>>>>        
> sort
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        of thing might
>>>>>>      >>> be best
>>>>>>      >>>>>>  supported as a
>>>>>>      >>>>>>>>>      periodic
>>>>>>      >>>>>>>>>>       cron
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        if we can
>>>>>>      >>> write something
>>>>>>      >>>>>>  stable
>>>>>>      >>>>>>>>    enough,
>>>>>>      >>>>>>>>>      because
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> pulling
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        stuff out of
>>>>>>      >>> the git repo is
>>>>>>      >>>>>>  something
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>      CMS
>>>>>>      >>>>>>>>>>>        
> isn't
>>>>>>      >>>>>>>>>>>>        
> going
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        to do all that
>>>>>>      >>> well being an
>>>>>>      >>>>>>  svn
>>>>>>      >>>>>>>>>      application.
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        The CMS build
>>>>>>      >>> results are
>>>>>>      >>>>>>  available at
>>>>>>      >>> http://thrift.staging.apache.org/
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        feel free to
>>>>>>      >>> play with the
>>>>>>      >>>>>>  sources in
>>>>>>      >>> repos/asf/thrift/cms-site/trunk.
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        It's very
>>>>>>      >>> fast, probably
>>>>>>      >>>>>>  an order
>>>>>>      >>>>>>>>    of
>>>>>>      >>>>>>>>>>      
> magnitude
>>>>>>      >>>>>>>>>>>        
> faster
>>>>>>      >>>>>>>>>>>>        
> than
>>>>>>      >>>>>>>>>>>>>
>>>  your
>>>>    current
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        tech.
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        Whole site
>>>>>>      >>> builds in two
>>>>>>      >>>>>>  seconds;
>>>>>>      >>>>>>>>    fractions
>>>>>>      >>>>>>>>>      of a
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> second
>>>>>>      >>>>>>>>>>>>        
> for
>>>>>>      >>>>>>>>>>>>>
>>>  typical
>>>>>>     
>>>>>>>>>>>>>>>> 
>>> 
>>>>    mods
>>>>>     to
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        content/
>>>>>>      >>> markdown pages.
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        The CMS
>>>>>>      >>> bookmarklet is
>>>>>>      >>>>>>  compatible with
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>>       staging
>>>>>>      >>>>>>>>>>>        
> site
>>>>>>      >>>>>>>>>>>>        
> FWIW.
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             On
>>>>>>      >>> Monday, March 17,
>>>>>>      >>>>>>  2014 7:40
>>>>>>      >>>>>>>>    PM,
>>>>>>      >>>>>>>>>      Roger
>>>>>>      >>>>>>>>>>       Meier
>>>>>>      >>>>>>  
> <ro...@bufferoverflow.ch> wrote:
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>            Hi Joe
>>>>>>      >>> & Co
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             thanks
>>>>>>      >>> for this test
>>>>>>      >>>>>>  run with
>>>>>>      >>>>>>>>    Apache
>>>>>>      >>>>>>>>>      CMS!
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             What I
>>>>>>      >>> would love to
>>>>>>      >>>>>>  see is this:
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             Source
>>>>>>      >>> file: => Web
>>>>>>      >>>>>>  Site URL:
>>>>>>      >>> test/README.md =>
>>>>>>      >>>>>>>>>      
> thrift.apache.org/test
>>>>>>      >>> test/STATUS.md =>
>>>>>>      >>>>>>>>>>>
>>>>>     thrift.apache.org/test/status
>>>>>>      >>> test/keys/README.md
>>>>>>      >>>>>>  =>
>>>>>>      >>>>>>>>>>>
>>>>>     thrift.apache.org/test/keys
>>>>>>      >>>>>>  lib/<lang>/README.md 
> =>
>>>>>>      >>> thrift.apache.org/lib/<lang>
>>>>>>      >>>>>>  
> lib/<lang>/test/README.md
>>>>>>      >>>>>>>>    =>
>>>>>>      >>>>>>>>
>>>>    thrift.apache.org/lib/<lang>/test
>>>>>>      >>>>>>>>
>>>>    lib/<lang>/examples/README.md
>>>>>>      >>>>>>>>>      =>
>>>>>>      >>>>>>>>>
>>>>>     thrift.apache.org/lib/<lang>/examples
>>>>>>      >>> compiler/cpp/README.md
>>>>>>      >>>>>>  =>
>>>>>>      >>>>>>>>>>>>
>>>>>     thrift.apache.org/compiler
>>>>>>      >>> debian/README.md =>
>>>>>>      >>>>>>>>>>
>>>>    thrift.apache.org/debian
>>>>>>      >>>>>>  
> contrib/<topic>/README.md
>>>>>>      >>>>>>>>    =>
>>>>>>      >>>>>>>>>>>>>
>>>>>     thrift.apache.org/<topic>
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             just made
>>>>>>      >>> the following
>>>>>>      >>>>>>  patch to
>>>>>>      >>>>>>>>>      rename all
>>>>>>      >>>>>>>>>>       file
>>>>>>      >>>>>>>>>>>        to
>>>>>>      >>>>>>>>>>>>        
> .md
>>>>>>      >>>>>>>>>>>>>
>>>  within
>>>>    our
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     source
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             tree:
>>>>>>      >>> 
> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             ... we
>>>>>>      >>> have *41*
>>>>>>      >>>>>>  md's within
>>>>>>      >>>>>>>>    the
>>>>>>      >>>>>>>>>      source
>>>>>>      >>>>>>>>>>       tree
>>>>>>      >>>>>>>>>>>        and
>>>>>>      >>>>>>>>>>>>>
>>>>    that's
>>>>>     the
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     place
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        where
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             people
>>>>>>      >>> look for
>>>>>>      >>>>>>  documentation
>>>>>>      >>>>>>>>    first.
>>>>>>      >>>>>>>>>      =>
>>>>>>      >>>>>>>>>>>        
> simple to
>>>>>>      >>>>>>>>>>>>>
>>>  manage
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             Would be
>>>>>>      >>> user friendly
>>>>>>      >>>>>>  to have
>>>>>>      >>>>>>>>    all of
>>>>>>      >>>>>>>>>      this
>>>>>>      >>>>>>>>>>>        
> online
>>>>>>      >>>>>>>>>>>>        
> with
>>>>>>      >>>>>>>>>>>>>
>>>  each
>>>>    release
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             with the
>>>>>>      >>> URL layout
>>>>>>      >>>>>>  mentioned
>>>>>>      >>>>>>>>    above.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             just
>>>>>>      >>> received the
>>>>>>      >>>>>>  buildboot...
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             Do you
>>>>>>      >>> have kind of a
>>>>>>      >>>>>>  preview of
>>>>>>      >>>>>>>>    your
>>>>>>      >>>>>>>>>>      
> prototype?
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             all the
>>>>>>      >>> best!
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             -roger
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             ;-r
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             Quoting
>>>>>>      >>> Jake Farrell
>>>>>>      >>>>>>>>>>>
>>>>>     <jf...@apache.org>:
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>              No
>>>>>>      >>> objections from
>>>>>>      >>>>>>  me
>>>>>>      >>> -Jake
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>              On
>>>>>>      >>> Mon, Mar 17,
>>>>>>      >>>>>>  2014 at
>>>>>>      >>>>>>>>    12:04 PM,
>>>>>>      >>>>>>>>>      Joe
>>>>>>      >>>>>>>>>>>        
> Schaefer
>>>>>>      >>>>>>>>
>>>>    <jo...@yahoo.com>wrote:
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>> Any objections
>>>>>>      >>>>>>  to me
>>>>>>      >>>>>>>>    making a
>>>>>>      >>>>>>>>>      copy
>>>>>>      >>>>>>>>>>       of
>>>>>>      >>>>>>>>>>>        the
>>>>>>      >>>>>>>>>>>>        
> site
>>>>>>      >>> tree alongside
>>>>>>      >>>>>>  it called
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>>      
> cms-site?
>>>>>>      >>>>>>>>>>>        
> I'd
>>>>>>      >>>>>>>>>>>>        
> like
>>>>>>      >>>>>>>>>>>>>    
>       to
>>>>>>      >>> get cracking
>>>>>>      >>>>>>  on knocking
>>>>>>      >>>>>>>>    up
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>>        
> supporting
>>>>>>      >>>>>>>>>>>>        
> perl
>>>>>>      >>> for this so we
>>>>>>      >>>>>>  can
>>>>>>      >>>>>>>>    continue
>>>>>>      >>>>>>>>>      to
>>>>>>      >>>>>>>>>>>        
> brainstorm...
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>   On Sunday,
>>>>>>      >>>>>>  March 16,
>>>>>>      >>>>>>>>    2014
>>>>>>      >>>>>>>>>      1:53
>>>>>>      >>>>>>>>>>       PM,
>>>>>>      >>>>>>>>>>>        Joe
>>>>>>      >>>>>>>>>>>>        
> Schaefer
>>>>>>      >>>>>>  
> <jo...@yahoo.com>
>>>>>>      >>> wrote:
>>>>>>      >>>       On
>>>>>>      >>>>>>  Sunday, March
>>>>>>      >>>>>>>>    16,
>>>>>>      >>>>>>>>>      2014
>>>>>>      >>>>>>>>>>       1:40
>>>>>>      >>>>>>>>>>>        PM,
>>>>>>      >>>>>>>>>>>>        
> Jake
>>>>>>      >>>>>>>>>>>>>
>>>  Farrell
>>>>>>      >>>>>>  <jf...@apache.org>
>>>>>>      >>>   wrote:
>>>>>>      >>>   Hey Joe
>>>>>>      >>>       Thanks
>>>>>>      >>>>>>  for
>>>>>>      >>>>>>>>    reaching
>>>>>>      >>>>>>>>>      out, we
>>>>>>      >>>>>>>>>>       chose
>>>>>>      >>>>>>>>>>>        to
>>>>>>      >>>>>>>>>>>>        
> go
>>>>>>      >>>>>>>>>>>>>
>>>  with a
>>>>    site
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        generator
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             over the
>>>>>>      >>>       Apache
>>>>>>      >>>>>>  CMS due to
>>>>>>      >>>>>>>>    it
>>>>>>      >>>>>>>>>>      
> initially
>>>>>>      >>>>>>>>>>>        not
>>>>>>      >>>>>>>>>>>>        
> meeting
>>>>>>      >>>>>>>>>>>>>    
>       all
>>>  of
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     our
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        needs.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             Our
>>>>>>      >>> current
>>>>>>      >>>       needs
>>>>>>      >>>>>>  for the site
>>>>>>      >>>>>>>>    are
>>>>>>      >>>       -
>>>>>>      >>>>>>  Markdown to html
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>>      
> conversion
>>>>>>      >>>   That
>>>>>>      >>>>>>  one's easy-
>>>>>>      >>>>>>>>    its
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       default
>>>>>>      >>>>>>>>>>>        for
>>>>>>      >>>>>>>>>>>>        
> the
>>>>>>      >>>>>>>>>>>>>
>>>  cms.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>       - Global
>>>>>>      >>>>>>>>>      
> variables/config
>>>>>>      >>>>>>>>>>       usable
>>>>>>      >>>>>>>>>>>>
>>>  throughout
>>>>>>      >>>>>>>>>>>>>    
>       in
>>>  a
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     template
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             based
>>>>>>      >>> layout
>>>>>>      >>>   Easy too-
>>>>>>      >>>>>>  just create
>>>>>>      >>>>>>>>    a
>>>>>>      >>>>>>>>>      perl
>>>>>>      >>>>>>>>>>       hash
>>>>>>      >>>>>>>>>>>>
>>>  somewhere and
>>>>>>      >>>>>>>>>>>>>
>>>  make it
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        available
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             to
>>>>>>      >>> your views.
>>>>>>      >>>   Code your
>>>>>>      >>>>>>  views to
>>>>>>      >>>>>>>>    pass
>>>>>>      >>>>>>>>>      that
>>>>>>      >>>>>>>>>>       hash
>>>>>>      >>>>>>>>>>>        
> along to
>>>>>>      >>>>>>>>>>>>        
> your
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     templates
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        and you
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             are
>>>>>>      >>> all set.
>>>>>>      >>>   Note if your
>>>>>>      >>>>>>  hash
>>>>>>      >>>>>>>>    contains
>>>>>>      >>>>>>>>>>       objects
>>>>>>      >>>>>>>>>>>        you 
> can
>>>>>>      >>>>>>>>>>>>        
> make
>>>>>>      >>>>>>>>>>>>>
>>>  method
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     calls
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        on
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             them in
>>>>>>      >>> your
>>>>>>      >>>   templates.
>>>>>>      >>>>>>  Note:
>>>>>>      >>>>>>>>    while I
>>>>>>      >>>>>>>>>>>        
> wouldn't
>>>>>>      >>>>>>>>>>>>>
>>>>    recommend
>>>>>     this in
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        general,
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             for
>>>>>>      >>> smaller
>>>>>>      >>>   projects
>>>>>>      >>>>>>  like thrift
>>>>>>      >>>>>>>>    that
>>>>>>      >>>>>>>>>      prefer
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>>
>>>  convenience
>>>>>>      >>>>>>>>>>>>>
>>>  over
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     separation
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        of
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             concerns
>>>>>>      >>> you can
>>>>>>      >>>   have the
>>>>>>      >>>>>>  django
>>>>>>      >>>>>>>>    template
>>>>>>      >>>>>>>>>      engine
>>>>>>      >>>>>>>>>>       do a
>>>>>>      >>>>>>>>>>>        
> pass
>>>>>>      >>>>>>>>>>>>        
> over
>>>>>>      >>>>>>>>>>>>>
>>>  your
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     markdown
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             before
>>>>>>      >>> passing it
>>>>>>      >>>   along to
>>>>>>      >>>>>>  your actual
>>>>>>      >>>>>>>>>      template
>>>>>>      >>>>>>>>>>       page,
>>>>>>      >>>>>>>>>>>        
> just
>>>>>>      >>>>>>>>>>>>        
> as is
>>>>>>      >>>>>>>>>>>>>
>>>>    seemingly
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        common to
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             other
>>>>>>      >>> popular
>>>>>>      >>>   site
>>>>>>      >>>>>>  generation
>>>>>>      >>>>>>>>    software.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>       - Syntax
>>>>>>      >>>>>>>>    highlighting
>>>>>>      >>>   Comes with
>>>>>>      >>>>>>>>    python's
>>>>>>      >>>>>>>>>      markdown
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> support,
>>>>>>      >>>>>>>>>>>>        
> but
>>>>>>      >>>>>>>>>>>>>
>>>  some
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     people
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        prefer
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             the look
>>>>>>      >>> of
>>>>>>      >>>   javascript
>>>>>>      >>>>>>>>    highlighters.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>       - Easily
>>>>>>      >>>>>>  include
>>>>>>      >>>>>>>>    code
>>>>>>      >>>>>>>>>>       snippets
>>>>>>      >>>>>>>>>>>        
> from
>>>>>>      >>>>>>>>>>>>        
> our
>>>>>>      >>>>>>>>>>>>>
>>>  source
>>>>    code
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     base
>>>>>>      >>>   Statically I
>>>>>>      >>>>>>  hope.  No
>>>>>>      >>>>>>>>    idea
>>>>>>      >>>>>>>>>      how
>>>>>>      >>>>>>>>>>       to
>>>>>>      >>>>>>>>>>>        
> pull
>>>>>>      >>>>>>>>>>>>>
>>>  snippets
>>>>    out
>>>>>     of
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     your
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        git
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             repo
>>>>>>      >>> via the
>>>>>>      >>>   cms.
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>       -
>>>>>>      >>>>>>  Ability to
>>>>>>      >>>>>>>>    locally
>>>>>>      >>>>>>>>>      test
>>>>>>      >>>>>>>>>>       before
>>>>>>      >>>>>>>>>>>>
>>>  committing
>>>>>>      >>>   Belt and
>>>>>>      >>>>>>  suspenders
>>>>>>      >>>>>>>>    with
>>>>>>      >>>>>>>>>      the
>>>>>>      >>>>>>>>>>       cms- you
>>>>>>      >>>>>>>>>>>        can
>>>>>>      >>>>>>>>>>>>        
> build
>>>>>>      >>>>>>>>>>>>>
>>>  your
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     changes
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             before
>>>>>>      >>> committing
>>>>>>      >>>   with the
>>>>>>      >>>>>>  build
>>>>>>      >>>>>>>>    scripts,
>>>>>>      >>>>>>>>>      browse
>>>>>>      >>>>>>>>>>       your
>>>>>>      >>>>>>>>>>>>        
> changes
>>>>>>      >>>>>>>>>>>>>
>>>  before
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     committing
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        via
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             the cms
>>>>>>      >>>   webgui, or
>>>>>>      >>>>>>  simply
>>>>>>      >>>>>>>>    commit
>>>>>>      >>>>>>>>>      your
>>>>>>      >>>>>>>>>>       changes
>>>>>>      >>>>>>>>>>>        and
>>>>>>      >>>>>>>>>>>>        
> view
>>>>>>      >>>>>>>>>>>>>    
>       the
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     staging
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        site
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             prior to
>>>>>>      >>> live
>>>>>>      >>>   publication
>>>>>>      >>>>>>  (which is
>>>>>>      >>>>>>>>    a
>>>>>>      >>>>>>>>>      separate
>>>>>>      >>>>>>>>>>
>>>>>>      >>>>>>>>>>>        
> step).
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>       -Jake
>>>>>>      >>>       On Sun,
>>>>>>      >>>>>>  Mar 16,
>>>>>>      >>>>>>>>    2014 at
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>>       12:44 
> PM,
>>>>>>      >>>>>>>>>>>        Joe
>>>>>>      >>>>>>>>>>>>>
>>>  Schaefer
>>>>>>      >>>>>>>>>>
>>>>>     <jo...@yahoo.com>wrote:
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>>      >>>         As
>>>>>>      >>>>>>  it so
>>>>>>      >>>>>>>>    happens I
>>>>>>      >>>>>>>>>      am
>>>>>>      >>>>>>>>>>>        
> interested
>>>>>>      >>>>>>>>>>>>        
> in
>>>>>>      >>>>>>>>>>>>>
>>>  working
>>>>    on
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        supporting
>>>>>>      >>>>>>  thrift's
>>>>>>      >>>>>>>>    use
>>>>>>      >>>>>>>>>      case as
>>>>>>      >>>>>>>>>>       a
>>>>>>      >>>>>>>>>>>>
>>>  potential
>>>>>>      >>>>>>>>>>>>>
>>>  user of
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     the
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        Apache
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             CMS.
>>>>>>      >>>>>>  While the CMS
>>>>>>      >>>>>>>>    works
>>>>>>      >>>>>>>>>      well
>>>>>>      >>>>>>>>>>       for
>>>>>>      >>>>>>>>>>>>        
> massive
>>>>>>      >>>>>>>>>>>>>
>>>  projects
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     there
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        are
>>>>>>      >>>>>>  things it
>>>>>>      >>>>>>>>    could do
>>>>>>      >>>>>>>>>>       better 
> at
>>>>>>      >>>>>>>>>>>>
>>>  supporting
>>>>>>      >>>>>>>>>>>>>    
>       for
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     more
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        moderate
>>>>>>      >>>>>>  sized sites
>>>>>>      >>>>>>>>    like
>>>>>>      >>>>>>>>>>>        
> thrift's.
>>>>>>      >>>>>>  I'd
>>>>>>      >>>>>>>>    therefore
>>>>>>      >>>>>>>>>      like
>>>>>>      >>>>>>>>>>       to
>>>>>>      >>>>>>>>>>>        
> engage
>>>>>>      >>>>>>>>>>>>        
> you
>>>>>>      >>>>>>>>>>>>>
>>>  folks in
>>>>    a
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>>>>>      >>> brainstorming session
>>>>>>      >>>>>>  about what
>>>>>>      >>>>>>>>    sorts of
>>>>>>      >>>>>>>>>
>>>>>>      >>>>>>>>>>       features
>>>>>>      >>>>>>>>>>>        you
>>>>>>      >>>>>>>>>>>>        
> want
>>>>>>      >>>>>>>>>>>>>    
>       for
>>>  your
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     site
>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>        and
>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>             to find
>>>>>>      >>>>>>  simple ways of
>>>>>>      >>>>>>>>
>>>>>>      >>>>>>>>>>      
> supporting
>>>>>>      >>>>>>>>>>>        
> those
>>>>>>      >>>>>>>>>>>>>
>>>  features
>>>>    for
>>>>>>     
>>>>>>>>>>>>>>>>> 
>>> 
>>>> 
>>>>>     you.
>>>>>>      >>>>>>  Thanks.
>>>>>>      >
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
Joe, it helps.
the process to update the site is much faster and easier as I thought 
before...

thanks
-roger

On 26.03.2014 04:00, Joe Schaefer wrote:
> I made a start at updating the website docs for committers
> here at http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite
>
> I left the old stuff in there for someone to go through and replace it with
> the comparable text for dealing with the CMS.
>
> HTH
>
>
>
>> On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer <jo...@yahoo.com> wrote:
>>> FWIW until you get accustomed to the CMS bookmarklet/webgui
>> stuff I recommend downloading http://s.apache.org/cms-cli
>> and installing the CPAN prereqs for it on your local host.
>> That way you can publish, which is a separate step involving
>> the script, while you are working on the svn tree.  If you
>> name the script publish.pl invoking it as
>>
>> % ./publish.pl thrift
>>
>> will get you where you need to be.  You might even consider
>> setting up an svn external to pull that file out of svn and
>> place it at the base of your cms tree for committers to use.
>>
>>
>>
>>>   On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer
>> <jo...@yahoo.com> wrote:
>>>   > Done Jake thanks!  One remark for Roger...
>>>
>>>   The file extension used for stuff in content/test/ really doesn't
>> matter as
>>>   far as the build goes.  What you need to do is supply a 'lang=text'
>>
>>>   argument to each snippet that is not a native markdown file; the build will
>>
>>>   automatically strip file extensions off the internal links in the markdown
>>>   sources so httpd will do the right thing and resolve the extension via the
>>>   MultiViews feature.
>>>
>>>   In the case of test/ThriftTest.thrift, I'd recommend changing the
>> extension
>>>   to .txt or even .md (in the content/test/ tree on the site sources in svn,
>> not
>>>   the code sources in git) so the CMS's webgui will fetch you a decent
>> editor
>>>   for that file.  Otherwise again the extension doesn't matter- the build
>> will
>>>   always convert it to html.
>>>
>>>
>>>
>>>>    On Tuesday, March 25, 2014 9:34 AM, Jake Farrell
>>>   <jf...@apache.org> wrote:
>>>>    > Hey Joe
>>>>    Thanks for making the additions to the Apache CMS to meet our use
>> case.
>>>   I'm
>>>>    not seeing any blockers at the moment, lets cut over and we can fix
>> any
>>>>    edge cases if needed
>>>>
>>>>    -Jake
>>>>
>>>>
>>>>
>>>>    On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer
>>>>    <jo...@yahoo.com>wrote:
>>>>
>>>>>     Done.  Anything else we need to look at before going live?
>>>>>
>>>>>     Sent from my iPhone
>>>>>
>>>>>     > On Mar 23, 2014, at 3:53 PM, Roger Meier
>>>>    <ro...@bufferoverflow.ch>
>>>>>     wrote:
>>>>>     >
>>>>>     > any idea how to fix this URL:
>>>>>     > http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>>     > we need to keep the filename for working links within the
>>>>>     > test/README.md file.
>>>>>     >
>>>>>     > What about a footer for docs genertated from source tree?
>>>>>     > [snippet:path=test/README.md, footer=1]
>>>>>     >
>>>>>     > I added the following snippet to content/test/index.md:
>>>>>     > ---SNIP---
>>>>>     > This page was generated from Apache Thrift's **source
>> tree
>>>   docs**:
>>>>>     > [test/README.md](
>>>>>
>>>>
>>>
>> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>>     )
>>>>>     > ---SNIP---
>>>>>     >
>>>>>     > would be great to get this generated into the page via
>> snippet.
>>>>>     >
>>>>>     > -roger
>>>>>     >
>>>>>     >
>>>>>     >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>>>     >> The CMS codebase as well as the thrift build system
>>>>>     >> already supports it Roger, someone just needs to create
>>>>>     >> the files in the content tree that point at the source
>>>>>     >> files in the git repo.  If you want to script this
>> process
>>>>>     >> in scripting language du jour, go for it, but I cannot
>>>>>     >> justify spending contractor time doing this work for the
>>>>>     >> community's behalf as it is unlikely to be needed
>>>   elsewhere.
>>>>>     >> I would think you only need the script to run when some
>>>>>     >> path to a README.md file changes in the thrift.git tree,
>>>>>     >> so it doesn't need to be incorporated into each site
>>
>>>   build.
>>>>>     >>
>>>>>     >>
>>>>>     >>
>>>>>     >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier
>> <
>>>>>     roger@bufferoverflow.ch> wrote:
>>>>>     >>>> Hi
>>>>>     >>>
>>>>>     >>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>>>     >>>>  Hey Joe
>>>>>     >>>>  Reviewing the staging site it looks like its
>> almost
>>>   99%
>>>>    there other
>>>>>     than
>>>>>     >>>>  some styling within the code snippets. I'm
>> good
>>>   if we
>>>>    want to cut
>>>>>     over
>>>>>     >>> to
>>>>>     >>>>  using this and then work on the additional
>> features
>>>   that
>>>>    had been
>>>>>     mentioned
>>>>>     >>>>  afterwords. Any objections to cutting over?
>>>>>     >>> I would really like to see this automatic README.md
>>>   includes
>>>>    from
>>>>>     source
>>>>>     >>> tree, to have a real additional feature beside of
>> what we
>>>
>>>>    already have
>>>>>     >>> today.
>>>>>     >>>
>>>>>     >>> I'm absolutely with you.
>>>>>     >>> Apache projects shall use other Apache projects
>> whenever
>>>>    possible.
>>>>>     >>>
>>>>>     >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>>>>     >>> <jo...@yahoo.com>wrote:
>>>>>     >>>>
>>>>>     >>>>>  May I suggest a script that creates files
>> in
>>>   content/
>>>>>     >>>>>  containing a single line
>>>>>     >>>>>
>>>>>     >>>>>  [snippet:path=...]
>>>>>     >>> this sounds like a plan
>>>>>     >>>
>>>>>     >>>>>
>>>>>     >>>>>  (with no 'lang' argument) that lets
>> the
>>>   CMS
>>>>    pull raw content
>>>>>     >>> from
>>>>>     >>>>>  thrift.git
>>>>>     >>>>>  and add it directly to the built pages.
>> That
>>>   way you
>>>>    only need to
>>>>>     run
>>>>>     >>> the
>>>>>     >>>>>  script that generates these files when a
>> path
>>>   changes
>>>>    in your
>>>>>     >>> thrift.git
>>>>>     >>>>>  repo.
>>>>>     >>> What I had in mind is a automatic search of
>> README.md
>>>   files
>>>>    across the
>>>>>     >>> source tree and generate the site with these
>>>   automatically.
>>>>>     >>> Kind of a central controller that maps all the
>> URL's.
>>>>>     >>> no additional work when a new README.md file is
>> added.
>>>>>     >>> however, a script can do this as interim soultion.
>>>>>     >>>>>
>>>>>     >>>>>  You can commit directly to the cms svn tree
>> or
>>>   via
>>>>    the webgui which
>>>>>     >>> does
>>>>>     >>>>>  the same thing.
>>>>>     >>> Great!
>>>>>     >>>
>>>>>     >>> What about local preview when doing perl
>> modifications?
>>>>>     >>>
>>>>>     >>> -roger
>>>>>     >>>
>>>>>     >>>
>>>>>     >>>>>
>>>>>     >>>>>
>>>>>     >>>>>>  On Saturday, March 22, 2014 4:20 PM,
>> Roger
>>>   Meier
>>>>    <
>>>>>     >>>>>  roger@bufferoverflow.ch> wrote:
>>>>>     >>>>>>>  I still see some issues and still
>> miss
>>>   to
>>>>    feature mentioned.
>>>>>     >>>>>>  Now we have nonoc.ws and I'm able
>> to
>>>   hack
>>>>    this a bit.
>>>>>     >>>>>>
>>>>>     >>>>>>  We had no real big issue, the thing I
>> missed
>>>   was
>>>>    the code snippet
>>>>>     >>> thing
>>>>>     >>>>>>  and this is in on nanoc.ws and now also
>> on
>>>   Apache
>>>>    CMS.
>>>>>     >>>>>>
>>>>>     >>>>>>  The thing we really need is the
>>>   documentation
>>>>    located within source
>>>>>     >>> code
>>>>>     >>>>>>  integrated on the web site.
>>>>>     >>>>>>
>>>>>     >>>>>>  most hosting platforms do render
>> README.md
>>>   and
>>>>    that's why lot
>>>>>     >>> of doc
>>>>>     >>>>>>  will stay within the code and we should
>>
>>>   benefit
>>>>    as well by
>>>>>     >>> rendering
>>>>>     >>>>>>  that to the web site and enhance the
>>>>    documentation very easily.
>>>>>     >>>>>>
>>>>>     >>>>>>  I would like to render the 41 README.md
>>
>>>   files to
>>>>    with the following
>>>>>     >>>>>>  pattern, that's a must have before
>>>   switching
>>>>    to another CMS.
>>>>>     >>>>>>
>>>>>     >>>>>>  test/README.md =>
>> thrift.apache.org/test
>>>>>     >>>>>>  test/STATUS.md =>
>>>>    thrift.apache.org/test/status
>>>>>     >>>>>>  test/keys/README.md =>
>>>>    thrift.apache.org/test/keys
>>>>>     >>>>>>  lib/<lang>/README.md =>
>>>>    thrift.apache.org/lib/<lang>
>>>>>     >>>>>>  lib/<lang>/test/README.md =>
>>>>>     >>> thrift.apache.org/lib/<lang>/test
>>>>>     >>>>>>  lib/<lang>/examples/README.md
>> =>
>>>>>     >>>>>>
>> thrift.apache.org/lib/<lang>/examples
>>>>>     >>>>>>  compiler/cpp/README.md =>
>>>>    thrift.apache.org/compiler
>>>>>     >>>>>>  debian/README.md =>
>>>   thrift.apache.org/debian
>>>>>     >>>>>>  contrib/<topic>/README.md =>
>>>>>     >>> thrift.apache.org/<topic>
>>>>>     >>>>>>
>>>>>     >>>>>>  CPP tutorial seems to be broken on
>> staging.
>>>>>     >>>>>>
>>>>>     >>>>>>  Do you commit to
>>>>>     >>>
>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>     >>>>>>  or is it web gui only?
>>>>>     >>>>>>
>>>>>     >>>>>>  How do you generate the site on your
>> local
>>>>    machine?
>>>>>     >>>>>>
>>>>>     >>>>>>
>>>>>     >>>>>>  Should I reactivate my perl or do we
>> stay
>>>   with
>>>>    ruby?
>>>>>     >>>>>>  Committers and contributors, what do
>> you
>>>   think?
>>>>>     >>>>>>
>>>>>     >>>>>>
>>>>>     >>>>>>  all the best
>>>>>     >>>>>>  -roger
>>>>>     >>>>>>
>>>>>     >>>>>>
>>>>>     >>>>>>>  On 22.03.2014 18:07, Joe Schaefer
>> wrote:
>>>>>     >>>>>>>
>>>>>     >>>>>>>
>>>>>     >>>>>>>    Ok I've now done the basic
>>>   necessities
>>>>    involved in
>>>>>     >>> porting
>>>>>     >>>>>>>    the site over.  Links have been
>>>   adjusted,
>>>>    templates ported,
>>>>>     >>> files
>>>>>     >>>>>  created,
>>>>>     >>>>>>>    snippet feature activated.  At
>> this
>>>   point
>>>>    I'm happy to
>>>>>     >>> declare
>>>>>     >>>>>>>    victory and migrate the thrift
>> live
>>>   site
>>>>    over, as anything
>>>>>     >>> broken that
>>>>>     >>>>>>>    still remains can be dealt with
>> on a
>>>>    per-page basis with the
>>>>>     >>>>>  bookmarklet.
>>>>>     >>>>>>>
>>>>>     >>>>>>>
>>>>>     >>>>>>>
>>>>>     >>>>>>>>    On Thursday, March 20, 2014
>> 11:19
>>>   AM,
>>>>    Joe Schaefer
>>>>>     >>>>>>  <jo...@yahoo.com> wrote:
>>>>>     >>>>>>>>>    Modulo some bizarre
>> content
>>>>    truncation out of
>>>>>     >>> git-wip-us.apache.org
>>>>>     >>>>>>>>    the snippet support is now
>> active.
>>>   At
>>>>    this point I think
>>>>>     >>> all the build
>>>>>     >>>>>>>>    support you need in this
>> project
>>>   to
>>>>    support every type of
>>>>>     >>>>>  brainstorming
>>>>>     >>>>>>>>    activity we've discussed
>> is
>>>   now
>>>>    there, so it's
>>>>>     >>> just up to you
>>>>>     >>>>>>  guys to
>>>>>     >>>>>>>>    now familiarize yourselves
>> with
>>>   the
>>>>    build technology and
>>>>>     >>> how to apply
>>>>>     >>>>>>>>    it to your needs.  The site
>> builds
>>>   with
>>>>    snippet support
>>>>>     >>> are running
>>>>>     >>>>>>  around
>>>>>     >>>>>>>>    10 seconds, which is to be
>>>   expected
>>>>    with the network
>>>>>     >>> interactions
>>>>>     >>>>>>  involved.
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>    I'm always willing to
>> answer
>>>   any
>>>>    questions that come
>>>>>     >>> up in the
>>>>>     >>>>>>  interim,
>>>>>     >>>>>>>>    but I wish you guys the best
>> of
>>>   luck in
>>>>    the remaining
>>>>>     >>> porting work to
>>>>>     >>>>>>  be done.
>>>>>     >>>>>>>>    All I see really are some
>> links
>>>   that
>>>>    need to have the
>>>>>     >>> trailing slashes
>>>>>     >>>>>>  removed
>>>>>     >>>>>>>>    and whatever <%= %>
>> template
>>>
>>>>    constructs that remain
>>>>>     >>> need to be
>>>>>     >>>>>>  ported to
>>>>>     >>>>>>>>    django.  So it should be
>> smooth
>>>>    sailing, but as I said if
>>>>>     >>> you hit any
>>>>>     >>>>>>  snags
>>>>>     >>>>>>>>    holler.  I'd really like
>> to
>>>   see the
>>>>    live site tech
>>>>>     >>> switched over to
>>>>>     >>>>>>  the cms
>>>>>     >>>>>>>>    stuff before Apachecon ends
>> in
>>>   early
>>>>    April, hint hint.
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>>      On Wednesday, March
>> 19,
>>>   2014
>>>>    10:41 PM, Joe Schaefer
>>>>>     >>>>>>>>>
>> <jo...@yahoo.com>
>>>
>>>>    wrote:
>>>>>     >>>>>>>>>      > While I don't
>> yet
>>>   know
>>>>    the url magic to
>>>>>     >>> support branches
>>>>>     >>>>>>  and tags
>>>>>     >>>>>>>>    in git,
>>>>>     >>>>>>>>>      I can say that the
>> snippet
>>>>    support is ready to play
>>>>>     >>> with.  I
>>>>>     >>>>>>  suggest just
>>>>>     >>>>>>>>>      focusing on the
>> /index.md
>>>   page
>>>>    first to see how it
>>>>>     >>> works in
>>>>>     >>>>>>  practice
>>>>>     >>>>>>>>    because
>>>>>     >>>>>>>>>      once it's fully
>> enabled
>>>   the
>>>>    build will break
>>>>>     >>> until all the
>>>>>     >>>>>>  snippet
>>>>>     >>>>>>>>    sources
>>>>>     >>>>>>>>>      have been altered to
>> conform
>>>   with
>>>>    the new style.
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>      To turn it on for
>> index.md
>>>>    testing, there are a
>>>>>     >>> couple of things
>>>>>     >>>>>>  that need
>>>>>     >>>>>>>>    to
>>>>>     >>>>>>>>>      happen. First the
>>>   [snippet:...]
>>>>    marker should be
>>>>>     >>> edited to be
>>>>>     >>>>>>>>    [XXXsnippet:...]
>>>>>     >>>>>>>>>      to enable testing
>> without
>>>>    breaking the build.
>>>>>     >>> Second each marker
>>>>>     >>>>>>  contains
>>>>>     >>>>>>>>    a
>>>>>     >>>>>>>>>      "token"
>> argument
>>>>    instead of line numbers
>>>>>     >>> for more
>>>>>     >>>>>>  stability under
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>      edits to the source
>> code.
>>>   The
>>>>    token argument is an
>>>>>     >>> arbitrary
>>>>>     >>>>>>  string that
>>>>>     >>>>>>>>    is
>>>>>     >>>>>>>>>      used to denote the
>>>   boundaries of
>>>>    the snippet within
>>>>>     >>> the source
>>>>>     >>>>>>  code.
>>>>>     >>>>>>>>>       ASF::Value::Snippet
>> will
>>>   pull
>>>>    out the lines from
>>>>>     >>> the source file
>>>>>     >>>>>>  between
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>      lines that contain the
>> token
>>>
>>>>    argument and format
>>>>>     >>> them as a code
>>>>>     >>>>>>  snippet
>>>>>     >>>>>>>>    embedded
>>>>>     >>>>>>>>>      into markdown. To get
>>>   started
>>>>    I'll copy over
>>>>>     >>> the code
>>>>>     >>>>>>  highlighting css
>>>>>     >>>>>>>>    from
>>>>>     >>>>>>>>>      www.apache.org but note
>> that
>>>   this
>>>>    is all based on
>>>>>     >>> python pygments
>>>>>     >>>>>>  and there
>>>>>     >>>>>>>>    are
>>>>>     >>>>>>>>>      a variety of online css
>>
>>>   files to
>>>>    choose from if
>>>>>     >>> this one is not
>>>>>     >>>>>>  to the
>>>>>     >>>>>>>>>      group's liking.
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>>       On Wednesday,
>> March 19,
>>>   2014
>>>>    4:16 PM, Joe
>>>>>     >>> Schaefer
>>>>>     >>>>>>>>>
>>>   <jo...@yahoo.com>
>>>>    wrote:
>>>>>     >>>>>>>>>>       > Sorry I need
>> to
>>>   clarify
>>>>    with an example:
>>>>>     >>> look at
>>>>>     >>>>>>>>>>
>>>>    http://thrift.staging.apache.org/tutorial/
>>>>>     >>> versus
>>>>>     >>> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>     >>>>>>>>>>       former is
>> generated
>>>   from
>>>>>     >>> content/tutorial/index.html
>>>>>     >>>>>>>>>>       and the latter
>> from
>>>>    content/tutorial.md.  The
>>>>>     >>> latter file
>>>>>     >>>>>>>>>>       needs to be
>> removed
>>>   from the
>>>>    tree now that
>>>>>     >>> it's content
>>>>>     >>>>>>>>>>       has been ported to
>>>>>     >>> content/tutorial/index.html.  This
>>>>>     >>>>>>>>>>       uses django
>> template
>>>>    inheritance to maintain
>>>>>     >>> simplicity.
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>       Other directories
>> that
>>>>    follow a similar
>>>>>     >>> pattern should
>>>>>     >>>>>>>>>>       also be ported in
>> the
>>>   same
>>>>    fashion.
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        On Wednesday,
>>
>>>   March 19,
>>>>    2014 9:46 AM, Joe
>>>>>     >>> Schaefer
>>>>>     >>>>>>>>>>
>>>>    <jo...@yahoo.com> wrote:
>>>>>     >>>>>>>>>>>        > If
>>>   someone's
>>>>    looking for a way
>>>>>     >>> to help with
>>>>>     >>>>>>  the porting
>>>>>     >>>>>>>>>>>        effort,
>> consider
>>>>    tackling the creation of
>>>>>     >>> an index.html
>>>>>     >>>>>>>>>>>        page in each
>>>   subdir of
>>>>    the content/ tree
>>>>>     >>> (other than
>>>>>     >>>>>>  the
>>>>>     >>>>>>>>>>>        base which
>> has an
>>>>    /index.md).  The
>>>>>     >>> contents of the file
>>>>>     >>>>>>>>>>>        should be
>> just
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>        {%
>> include
>>>>    'default' %}
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>        (see the docs
>> dir
>>>   for
>>>>    an example page
>>>>>     >>> that can be
>>>>>     >>>>>>  copied)
>>>>>     >>>>>>>>>>>        and the build
>>
>>>   system
>>>>    will take care of
>>>>>     >>> generating the
>>>>>     >>>>>>  page
>>>>>     >>>>>>>>>>>        in a
>> consistent
>>>   fashion
>>>>    with the rest of
>>>>>     >>> the site.
>>>>>     >>>>>>  Once
>>>>>     >>>>>>>>>>>        that is done
>> there
>>>   are
>>>>    a lot of pages
>>>>>     >>> that function
>>>>>     >>>>>>  like
>>>>>     >>>>>>>>>>>        index pages
>> but
>>>   are
>>>>    written in markdown
>>>>>     >>> that can be
>>>>>     >>>>>>  deleted,
>>>>>     >>>>>>>>>>>        like docs.md
>> and
>>>   its
>>>>    ilk.  Nanoc
>>>>>     >>> transforms that file
>>>>>     >>>>>>  into
>>>>>     >>>>>>>>>>>
>> /docs/index.html
>>>   but
>>>>    that's kinda
>>>>>     >>> crufty and not
>>>>>     >>>>>>  supported
>>>>>     >>>>>>>>>>>        by the CMS,
>> which
>>>   only
>>>>    lets you alter
>>>>>     >>> file extensions
>>>>>     >>>>>>  not paths.
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>>         On
>> Wednesday,
>>>
>>>>    March 19, 2014 8:54
>>>>>     >>> AM, Joe Schaefer
>>>>>     >>>>>>>>>>>
>>>>    <jo...@yahoo.com> wrote:
>>>>>     >>>>>>>>>>>>         > I
>> just
>>>>    pencilled in snippet
>>>>>     >>> preprocessing
>>>>>     >>>>>>  support into
>>>>>     >>>>>>>>>>>>         the
>> thrift
>>>>    builds.  Once Jake and I
>>>>>     >>> have settled
>>>>>     >>>>>>  on the
>>>>>     >>>>>>>>>>>>         feature
>> set
>>>   of
>>>>    ASF::Value::Snippet,
>>>>>     >>> and we have
>>>>>     >>>>>>  ported
>>>>>     >>>>>>>>>>>>         the
>> snippet
>>>>    calling text within the
>>>>>     >>> markdown pages
>>>>>     >>>>>>>>>>>>         to the
>> new
>>>   format,
>>>>    things will just
>>>>>     >>> work (knock on
>>>>>     >>>>>>  wood).
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>          On
>>>   Wednesday,
>>>>    March 19, 2014
>>>>>     >>> 6:48 AM, Joseph
>>>>>     >>>>>>  Schaefer
>>>>>     >>>>>>>>>>>>
>>>>    <jo...@yahoo.com>
>>>>>     >>> wrote:
>>>>>     >>>>>>>>>>>>>
>>>
>>>   Sure I
>>>>    understand that
>>>>>     >>> need.  If
>>>>>     >>>>>>  there's a way
>>>>>     >>>>>>>>    of
>>>>>     >>>>>>>>>>       pulling the
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>>         document
>>>>>     >>>>>>>>>>>>>
>> sources
>>>>    directly from the web I
>>>>>     >>> can parse the
>>>>>     >>>>>>  content
>>>>>     >>>>>>>>    to
>>>>>     >>>>>>>>>      look for
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        snippet
>>>>>     >>>>>>>>>>>>>
>> markers
>>>   and
>>>>    make those
>>>>>     >>> available to the
>>>>>     >>>>>>  template
>>>>>     >>>>>>>>    system.
>>>>>     >>>>>>>>>>       That's
>>>>>     >>>>>>>>>>>        pretty
>>>>>     >>>>>>>>>>>>         much
>>>>>     >>>>>>>>>>>>>          how
>>
>>>>    www.apache.org is
>>>>>     >>> generated.
>>>>>     >>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>> Sent
>>>   from my
>>>>    iPhone
>>>>>     >>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>
>>     On
>>>   Mar
>>>>    19, 2014, at 5:28
>>>>>     >>> AM, Henrique
>>>>>     >>>>>>  Mendonça
>>>>>     >>>>>>>>>>>>
>>>>    <he...@apache.org>
>>>>>     >>>>>>>>>>>>>
>> wrote:
>>>>>     >>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>
>>     Hi
>>>   Joe,
>>>>>     >>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>
>>
>>>   Thanks
>>>>    for your effort. I
>>>>>     >>> just wanted to
>>>>>     >>>>>>  add that
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>      code
>>>>>     >>>>>>>>>>>        snippets
>>>>>     >>>>>>>>>>>>         are a
>>>>>     >>>>>>>>>>>>>>
>>
>>>   crucial
>>>>    feature for this
>>>>>     >>> project, which
>>>>>     >>>>>>  has way
>>>>>     >>>>>>>>    more
>>>>>     >>>>>>>>>      target
>>>>>     >>>>>>>>>>>        languages
>>>>>     >>>>>>>>>>>>         than
>>>>>     >>>>>>>>>>>>>>
>>
>>>   active
>>>>    contributors. In
>>>>>     >>> our case,
>>>>>     >>>>>>  reducing manual
>>>>>     >>>>>>>>>>       maintenance
>>>>>     >>>>>>>>>>>        costs is
>>>>>     >>>>>>>>>>>>         much
>>>>>     >>>>>>>>>>>>>>
>>
>>>   more
>>>>    important than the
>>>>>     >>> total site build
>>>>>     >>>>>>  time.
>>>>>     >>>>>>>>    Perhaps
>>>>>     >>>>>>>>>      we
>>>>>     >>>>>>>>>>       can
>>>>>     >>>>>>>>>>>        also
>>>>>     >>>>>>>>>>>>         solve
>>>>>     >>>>>>>>>>>>>>
>>
>>>   this in
>>>>    the CMS, though.
>>>>>     >>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>
>>     -
>>>>    Henrique
>>>>>     >>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   On
>>>>    19 March 2014
>>>>>     >>> 03:17, Joe Schaefer
>>>>>     >>>>>>>>>>>>
>>>>    <jo...@yahoo.com>
>>>>>     >>>>>>>>>>>>>
>> wrote:
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   A
>>>>    couple more thoughts
>>>>>     >>> regarding the
>>>>>     >>>>>>>>    background on
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       CMS...
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   the
>>>>    bulk of the focus
>>>>>     >>> of the CMS up
>>>>>     >>>>>>  until now
>>>>>     >>>>>>>>    has
>>>>>     >>>>>>>>>      been
>>>>>     >>>>>>>>>>       to
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    support really big
>>>>>     >>> sites like maven
>>>>>     >>>>>>  and
>>>>>     >>>>>>>>    openoffice,
>>>>>     >>>>>>>>>      both
>>>>>     >>>>>>>>>>       of
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    which have websites
>>>>>     >>> well over 5GB
>>>>>     >>>>>>  worth of
>>>>>     >>>>>>>>    text
>>>>>     >>>>>>>>>      files.
>>>>>     >>>>>>>>>>       The
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    build system was
>>>>>     >>> hollowed out and
>>>>>     >>>>>>  revamped to
>>>>>     >>>>>>>>>      support
>>>>>     >>>>>>>>>>>        external
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    builds in other
>>>>>     >>> programming
>>>>>     >>>>>>  languages, as well
>>>>>     >>>>>>>>    as
>>>>>     >>>>>>>>>>       scaling up
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   the
>>>>    perl builds to
>>>>>     >>> provide about 8
>>>>>     >>>>>>  child
>>>>>     >>>>>>>>    processes
>>>>>     >>>>>>>>>      that
>>>>>     >>>>>>>>>>       build
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   the
>>>>    site in parallel
>>>>>     >>> by default.
>>>>>     >>>>>>  Full site
>>>>>     >>>>>>>>    build
>>>>>     >>>>>>>>>      times
>>>>>     >>>>>>>>>>       for
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    openoffice went from
>>>>>     >>> over 30 minutes
>>>>>     >>>>>>  to
>>>>>     >>>>>>>>    between 5
>>>>>     >>>>>>>>>      to 10
>>>>>     >>>>>>>>>>>        minutes
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    depending on disk
>>>>>     >>> activity, which
>>>>>     >>>>>>  made
>>>>>     >>>>>>>>>      experimentation
>>>>>     >>>>>>>>>>       with
>>>>>     >>>>>>>>>>>>
>> site-wide
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    changes feasible on a
>>>>>     >>> reasonable
>>>>>     >>>>>>  timeframe.
>>>>>     >>>>>>>>    At
>>>>>     >>>>>>>>>      first
>>>>>     >>>>>>>>>>       the
>>>>>     >>>>>>>>>>>        project
>>>>>     >>>>>>>>>>>>         was
>>>>>     >>>>>>>>>>>>>          in
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   the
>>>>    habit of running
>>>>>     >>> the builds
>>>>>     >>>>>>  locally before
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>      checking
>>>>>     >>>>>>>>>>       in
>>>>>     >>>>>>>>>>>        their
>>>>>     >>>>>>>>>>>>>
>> changes
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    because the delay in
>>>>>     >>> feedback
>>>>>     >>>>>>  post-commit was
>>>>>     >>>>>>>>>>       unreasonable,
>>>>>     >>>>>>>>>>>        but
>>>>>     >>>>>>>>>>>>         with
>>>>>     >>>>>>>>>>>>>
>> smart
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   use
>>>>    of SSI the were
>>>>>     >>> able to cut down
>>>>>     >>>>>>  on the
>>>>>     >>>>>>>>    number
>>>>>     >>>>>>>>>      of
>>>>>     >>>>>>>>>>       changes
>>>>>     >>>>>>>>>>>        that
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>> required
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   full
>>>>    site builds and
>>>>>     >>> hence no longer
>>>>>     >>>>>>  bother
>>>>>     >>>>>>>>    with
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       whole
>>>>>     >>>>>>>>>>>>
>> pre-build
>>>>>     >>>>>>>>>>>>>
>> mumbo
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    jumbo before checking
>>>>>     >>> in changes.
>>>>>     >>>>>>  The CMS is
>>>>>     >>>>>>>>>      designed
>>>>>     >>>>>>>>>>       to
>>>>>     >>>>>>>>>>>        only
>>>>>     >>>>>>>>>>>>         build
>>>>>     >>>>>>>>>>>>>
>> pages
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   that
>>>>    were altered, and
>>>>>     >>> if you just
>>>>>     >>>>>>  edit a page
>>>>>     >>>>>>>>    or
>>>>>     >>>>>>>>>      two
>>>>>     >>>>>>>>>>       only
>>>>>     >>>>>>>>>>>        those
>>>>>     >>>>>>>>>>>>         pages
>>>>>     >>>>>>>>>>>>>          and
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   the
>>>>    pages that depend
>>>>>     >>> on them will
>>>>>     >>>>>>  be built.
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   Now
>>>>    that I've
>>>>>     >>> turned my
>>>>>     >>>>>>  attention to
>>>>>     >>>>>>>>    thrift,
>>>>>     >>>>>>>>>      there
>>>>>     >>>>>>>>>>       are
>>>>>     >>>>>>>>>>>        several
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>> aspects
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   that
>>>>    are better off
>>>>>     >>> being retuned
>>>>>     >>>>>>  based on the
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>      modest
>>>>>     >>>>>>>>>>       size of
>>>>>     >>>>>>>>>>>        the
>>>>>     >>>>>>>>>>>>         site.
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    First of all you have
>>>>>     >>> a sitemap url
>>>>>     >>>>>>  that lists
>>>>>     >>>>>>>>    all
>>>>>     >>>>>>>>>      of
>>>>>     >>>>>>>>>>       your
>>>>>     >>>>>>>>>>>>>
>>>>    markdown-based
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    pages, which would be
>>>>>     >>> a nonstarter
>>>>>     >>>>>>  for a site
>>>>>     >>>>>>>>    like
>>>>>     >>>>>>>>>>>        openoffice.
>>>>>     >>>>>>>>>>>>         The
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    implications of the
>>>>>     >>> sitemap url are
>>>>>     >>>>>>  that every
>>>>>     >>>>>>>>    page
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>>       needs to
>>>>>     >>>>>>>>>>>        be
>>>>>     >>>>>>>>>>>>         built
>>>>>     >>>>>>>>>>>>>          in
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    memory just to
>>>>>     >>> generate that page,
>>>>>     >>>>>>  which leads
>>>>>     >>>>>>>>    to a
>>>>>     >>>>>>>>>      lot
>>>>>     >>>>>>>>>>       of
>>>>>     >>>>>>>>>>>>
>> redundancy
>>>>>     >>>>>>>>>>>>>          in
>> a
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    build system designed
>>>>>     >>> to run as
>>>>>     >>>>>>  forked child
>>>>>     >>>>>>>>>      processes.
>>>>>     >>>>>>>>>>       We
>>>>>     >>>>>>>>>>>        can do
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>>>   better...
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    I've done two
>>>>>     >>> things to make
>>>>>     >>>>>>  this work
>>>>>     >>>>>>>>    well-
>>>>>     >>>>>>>>>      first I
>>>>>     >>>>>>>>>>       made
>>>>>     >>>>>>>>>>>        the
>>>>>     >>>>>>>>>>>>>
>> number
>>>   of
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    child processes
>>>>>     >>> "aka
>>>>>     >>>>>>  runners"
>>>>>     >>>>>>>>    tunable on
>>>>>     >>>>>>>>>      a
>>>>>     >>>>>>>>>>>        per-project
>>>>>     >>>>>>>>>>>>         basis,
>>>>>     >>>>>>>>>>>>>          and
>>
>>>   since the
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    sitemap is going to
>>>>>     >>> build every page
>>>>>     >>>>>>  anyway as
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>>       slowest
>>>>>     >>>>>>>>>>>        page to
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>> build, I
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    memoized the main view
>>>>>     >>> that builds
>>>>>     >>>>>>  the
>>>>>     >>>>>>>>    markdown
>>>>>     >>>>>>>>>      pages
>>>>>     >>>>>>>>>>       for
>>>>>     >>>>>>>>>>>        thrift.
>>>>>     >>>>>>>>>>>>         The
>>>>>     >>>>>>>>>>>>>
>> best
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    results are when
>>>>>     >>> there's only
>>>>>     >>>>>>  one runner
>>>>>     >>>>>>>>    so we
>>>>>     >>>>>>>>>      get
>>>>>     >>>>>>>>>>       the
>>>>>     >>>>>>>>>>>        full
>>>>>     >>>>>>>>>>>>         benefit
>>>>>     >>>>>>>>>>>>>          of
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    memoization: typical
>>>>>     >>> site build
>>>>>     >>>>>>  times are
>>>>>     >>>>>>>>>      consistently
>>>>>     >>>>>>>>>>       under
>>>>>     >>>>>>>>>>>        2
>>>>>     >>>>>>>>>>>>         seconds
>>>>>     >>>>>>>>>>>>>
>> now.
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    You'll appreciate
>>>>>     >>> why I am such
>>>>>     >>>>>>  a
>>>>>     >>>>>>>>    performance
>>>>>     >>>>>>>>>>       stickler
>>>>>     >>>>>>>>>>>        for the
>>>>>     >>>>>>>>>>>>         CMS
>>>>>     >>>>>>>>>>>>>
>> when
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   you
>>>>    start using the
>>>>>     >>> bookmarklet,
>>>>>     >>>>>>  since builds
>>>>>     >>>>>>>>    are
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       only
>>>>>     >>>>>>>>>>>>
>> asynchronous
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   part
>>>>    of the process
>>>>>     >>> from making a
>>>>>     >>>>>>  change to a
>>>>>     >>>>>>>>    page
>>>>>     >>>>>>>>>      and
>>>>>     >>>>>>>>>>>        publishing
>>>>>     >>>>>>>>>>>>         the
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    results.  Ideally when
>>>>>     >>> the system is
>>>>>     >>>>>>  working
>>>>>     >>>>>>>>    well
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       builds
>>>>>     >>>>>>>>>>>>         happen
>>>>>     >>>>>>>>>>>>>
>> before
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   you
>>>>    have time to go
>>>>>     >>> looking for
>>>>>     >>>>>>  them, but you
>>>>>     >>>>>>>>    do
>>>>>     >>>>>>>>>      need to
>>>>>     >>>>>>>>>>       be
>>>>>     >>>>>>>>>>>>         mindful
>> of
>>>>>     >>>>>>>>>>>>>          not
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    publishing before the
>>>>>     >>> built pages
>>>>>     >>>>>>  have been
>>>>>     >>>>>>>>>      committed
>>>>>     >>>>>>>>>>       back to
>>>>>     >>>>>>>>>>>        svn
>>>>>     >>>>>>>>>>>>         by
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    buildbot.
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    On Monday, March
>>>>>     >>> 17, 2014 11:59
>>>>>     >>>>>>  PM, Joe
>>>>>     >>>>>>>>>      Schaefer
>>>>>     >>>>>>>>>>>>>
>>>>    <jo...@yahoo.com>
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    wrote:
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       Ok there's
>>>>>     >>> enough of an
>>>>>     >>>>>>  idea about
>>>>>     >>>>>>>>    how
>>>>>     >>>>>>>>>      to
>>>>>     >>>>>>>>>>       port
>>>>>     >>>>>>>>>>>        the
>>>>>     >>>>>>>>>>>>         rest of
>>>>>     >>>>>>>>>>>>>          the
>>
>>>>    site's
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    pages over based
>>>>>     >>> on the porting
>>>>>     >>>>>>  work
>>>>>     >>>>>>>>    I've
>>>>>     >>>>>>>>>>       already
>>>>>     >>>>>>>>>>>        done
>>>>>     >>>>>>>>>>>>         that
>>>>>     >>>>>>>>>>>>>
>> it's
>>>   time
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    for me to step
>>>>>     >>> back and let you
>>>>>     >>>>>>  guys catch
>>>>>     >>>>>>>>    up.
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>>       Basically
>>>>>     >>>>>>>>>>>        the
>>>>>     >>>>>>>>>>>>         idea
>>>>>     >>>>>>>>>>>>>          is
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   that
>>>>    while
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    there is
>>>>>     >>> templating support in
>>>>>     >>>>>>  the
>>>>>     >>>>>>>>    markdown
>>>>>     >>>>>>>>>      sources,
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        it's
>>>>>     >>>>>>>>>>>>>
>> fairly
>>>>    limited
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    compared to what
>>>>>     >>> nanoc offers,
>>>>>     >>>>>>  but instead
>>>>>     >>>>>>>>    of
>>>>>     >>>>>>>>>>       writing a
>>>>>     >>>>>>>>>>>        lot of
>>>>>     >>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>> complex
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    template
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    code into your
>>>>>     >>> sources, with the
>>>>>     >>>>>>  cms you
>>>>>     >>>>>>>>    just
>>>>>     >>>>>>>>>      add
>>>>>     >>>>>>>>>>       code to
>>>>>     >>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>
>>>>    lib/view.pmand/or
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    lib/path.pm to
>>>>>     >>> keep the document
>>>>>     >>>>>>  sources
>>>>>     >>>>>>>>    simple
>>>>>     >>>>>>>>>      and
>>>>>     >>>>>>>>>>       just
>>>>>     >>>>>>>>>>>        add
>>>>>     >>>>>>>>>>>>         more
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    template
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    variables.  What I
>>>>>     >>> just finished
>>>>>     >>>>>>  in
>>>>>     >>>>>>>>    lib/view.pm
>>>>>     >>>>>>>>>      and
>>>>>     >>>>>>>>>>>>
>> lib/path.pm
>>>   is
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    directory
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    listing support
>>>>>     >>> for /docs.html
>>>>>     >>>>>>  but it can
>>>>>     >>>>>>>>    be
>>>>>     >>>>>>>>>      carried
>>>>>     >>>>>>>>>>       over
>>>>>     >>>>>>>>>>>        to
>>>>>     >>>>>>>>>>>>>
>> similar
>>>>>     >>>>>>>>>>>>>>>
>>
>>>>    pages.
>>>>>     >>>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>>
>>>>>     >>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       On Monday,
>>>>>     >>> March 17, 2014
>>>>>     >>>>>>  9:16 PM, Joe
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>      Schaefer
>>>>>     >>> <jo...@yahoo.com>
>>>>>     >>>>>>  wrote:
>>>>>     >>> Interesting ideas,
>>>>>     >>>>>>  thanks.  FWIW I
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>      think
>>>>>     >>>>>>>>>>       that
>>>>>     >>>>>>>>>>>        sort
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       of thing might
>>>>>     >>> be best
>>>>>     >>>>>>  supported as a
>>>>>     >>>>>>>>>      periodic
>>>>>     >>>>>>>>>>       cron
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       if we can
>>>>>     >>> write something
>>>>>     >>>>>>  stable
>>>>>     >>>>>>>>    enough,
>>>>>     >>>>>>>>>      because
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        pulling
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       stuff out of
>>>>>     >>> the git repo is
>>>>>     >>>>>>  something
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>      CMS
>>>>>     >>>>>>>>>>>        isn't
>>>>>     >>>>>>>>>>>>         going
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       to do all that
>>>>>     >>> well being an
>>>>>     >>>>>>  svn
>>>>>     >>>>>>>>>      application.
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       The CMS build
>>>>>     >>> results are
>>>>>     >>>>>>  available at
>>>>>     >>> http://thrift.staging.apache.org/
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       feel free to
>>>>>     >>> play with the
>>>>>     >>>>>>  sources in
>>>>>     >>> repos/asf/thrift/cms-site/trunk.
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       It's very
>>>>>     >>> fast, probably
>>>>>     >>>>>>  an order
>>>>>     >>>>>>>>    of
>>>>>     >>>>>>>>>>       magnitude
>>>>>     >>>>>>>>>>>        faster
>>>>>     >>>>>>>>>>>>         than
>>>>>     >>>>>>>>>>>>>
>> your
>>>   current
>>>>>     >>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       tech.
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       Whole site
>>>>>     >>> builds in two
>>>>>     >>>>>>  seconds;
>>>>>     >>>>>>>>    fractions
>>>>>     >>>>>>>>>      of a
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        second
>>>>>     >>>>>>>>>>>>         for
>>>>>     >>>>>>>>>>>>>
>> typical
>>>>>     >>>>>>>>>>>>>>>
>>
>>>   mods
>>>>    to
>>>>>     >>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       content/
>>>>>     >>> markdown pages.
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       The CMS
>>>>>     >>> bookmarklet is
>>>>>     >>>>>>  compatible with
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>>       staging
>>>>>     >>>>>>>>>>>        site
>>>>>     >>>>>>>>>>>>         FWIW.
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            On
>>>>>     >>> Monday, March 17,
>>>>>     >>>>>>  2014 7:40
>>>>>     >>>>>>>>    PM,
>>>>>     >>>>>>>>>      Roger
>>>>>     >>>>>>>>>>       Meier
>>>>>     >>>>>>  <ro...@bufferoverflow.ch> wrote:
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>           Hi Joe
>>>>>     >>> & Co
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            thanks
>>>>>     >>> for this test
>>>>>     >>>>>>  run with
>>>>>     >>>>>>>>    Apache
>>>>>     >>>>>>>>>      CMS!
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            What I
>>>>>     >>> would love to
>>>>>     >>>>>>  see is this:
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            Source
>>>>>     >>> file: => Web
>>>>>     >>>>>>  Site URL:
>>>>>     >>> test/README.md =>
>>>>>     >>>>>>>>>      thrift.apache.org/test
>>>>>     >>> test/STATUS.md =>
>>>>>     >>>>>>>>>>>
>>>>    thrift.apache.org/test/status
>>>>>     >>> test/keys/README.md
>>>>>     >>>>>>  =>
>>>>>     >>>>>>>>>>>
>>>>    thrift.apache.org/test/keys
>>>>>     >>>>>>  lib/<lang>/README.md =>
>>>>>     >>> thrift.apache.org/lib/<lang>
>>>>>     >>>>>>  lib/<lang>/test/README.md
>>>>>     >>>>>>>>    =>
>>>>>     >>>>>>>>
>>>   thrift.apache.org/lib/<lang>/test
>>>>>     >>>>>>>>
>>>   lib/<lang>/examples/README.md
>>>>>     >>>>>>>>>      =>
>>>>>     >>>>>>>>>
>>>>    thrift.apache.org/lib/<lang>/examples
>>>>>     >>> compiler/cpp/README.md
>>>>>     >>>>>>  =>
>>>>>     >>>>>>>>>>>>
>>>>    thrift.apache.org/compiler
>>>>>     >>> debian/README.md =>
>>>>>     >>>>>>>>>>
>>>   thrift.apache.org/debian
>>>>>     >>>>>>  contrib/<topic>/README.md
>>>>>     >>>>>>>>    =>
>>>>>     >>>>>>>>>>>>>
>>>>    thrift.apache.org/<topic>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            just made
>>>>>     >>> the following
>>>>>     >>>>>>  patch to
>>>>>     >>>>>>>>>      rename all
>>>>>     >>>>>>>>>>       file
>>>>>     >>>>>>>>>>>        to
>>>>>     >>>>>>>>>>>>         .md
>>>>>     >>>>>>>>>>>>>
>> within
>>>   our
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    source
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            tree:
>>>>>     >>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            ... we
>>>>>     >>> have *41*
>>>>>     >>>>>>  md's within
>>>>>     >>>>>>>>    the
>>>>>     >>>>>>>>>      source
>>>>>     >>>>>>>>>>       tree
>>>>>     >>>>>>>>>>>        and
>>>>>     >>>>>>>>>>>>>
>>>   that's
>>>>    the
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    place
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       where
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            people
>>>>>     >>> look for
>>>>>     >>>>>>  documentation
>>>>>     >>>>>>>>    first.
>>>>>     >>>>>>>>>      =>
>>>>>     >>>>>>>>>>>        simple to
>>>>>     >>>>>>>>>>>>>
>> manage
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            Would be
>>>>>     >>> user friendly
>>>>>     >>>>>>  to have
>>>>>     >>>>>>>>    all of
>>>>>     >>>>>>>>>      this
>>>>>     >>>>>>>>>>>        online
>>>>>     >>>>>>>>>>>>         with
>>>>>     >>>>>>>>>>>>>
>> each
>>>   release
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            with the
>>>>>     >>> URL layout
>>>>>     >>>>>>  mentioned
>>>>>     >>>>>>>>    above.
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            just
>>>>>     >>> received the
>>>>>     >>>>>>  buildboot...
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            Do you
>>>>>     >>> have kind of a
>>>>>     >>>>>>  preview of
>>>>>     >>>>>>>>    your
>>>>>     >>>>>>>>>>       prototype?
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            all the
>>>>>     >>> best!
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            -roger
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            ;-r
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            Quoting
>>>>>     >>> Jake Farrell
>>>>>     >>>>>>>>>>>
>>>>    <jf...@apache.org>:
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>             No
>>>>>     >>> objections from
>>>>>     >>>>>>  me
>>>>>     >>> -Jake
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>             On
>>>>>     >>> Mon, Mar 17,
>>>>>     >>>>>>  2014 at
>>>>>     >>>>>>>>    12:04 PM,
>>>>>     >>>>>>>>>      Joe
>>>>>     >>>>>>>>>>>        Schaefer
>>>>>     >>>>>>>>
>>>   <jo...@yahoo.com>wrote:
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>> Any objections
>>>>>     >>>>>>  to me
>>>>>     >>>>>>>>    making a
>>>>>     >>>>>>>>>      copy
>>>>>     >>>>>>>>>>       of
>>>>>     >>>>>>>>>>>        the
>>>>>     >>>>>>>>>>>>         site
>>>>>     >>> tree alongside
>>>>>     >>>>>>  it called
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>>       cms-site?
>>>>>     >>>>>>>>>>>        I'd
>>>>>     >>>>>>>>>>>>         like
>>>>>     >>>>>>>>>>>>>          to
>>>>>     >>> get cracking
>>>>>     >>>>>>  on knocking
>>>>>     >>>>>>>>    up
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>>        supporting
>>>>>     >>>>>>>>>>>>         perl
>>>>>     >>> for this so we
>>>>>     >>>>>>  can
>>>>>     >>>>>>>>    continue
>>>>>     >>>>>>>>>      to
>>>>>     >>>>>>>>>>>        brainstorm...
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>   On Sunday,
>>>>>     >>>>>>  March 16,
>>>>>     >>>>>>>>    2014
>>>>>     >>>>>>>>>      1:53
>>>>>     >>>>>>>>>>       PM,
>>>>>     >>>>>>>>>>>        Joe
>>>>>     >>>>>>>>>>>>         Schaefer
>>>>>     >>>>>>  <jo...@yahoo.com>
>>>>>     >>> wrote:
>>>>>     >>>       On
>>>>>     >>>>>>  Sunday, March
>>>>>     >>>>>>>>    16,
>>>>>     >>>>>>>>>      2014
>>>>>     >>>>>>>>>>       1:40
>>>>>     >>>>>>>>>>>        PM,
>>>>>     >>>>>>>>>>>>         Jake
>>>>>     >>>>>>>>>>>>>
>> Farrell
>>>>>     >>>>>>  <jf...@apache.org>
>>>>>     >>>   wrote:
>>>>>     >>>   Hey Joe
>>>>>     >>>       Thanks
>>>>>     >>>>>>  for
>>>>>     >>>>>>>>    reaching
>>>>>     >>>>>>>>>      out, we
>>>>>     >>>>>>>>>>       chose
>>>>>     >>>>>>>>>>>        to
>>>>>     >>>>>>>>>>>>         go
>>>>>     >>>>>>>>>>>>>
>> with a
>>>   site
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       generator
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            over the
>>>>>     >>>       Apache
>>>>>     >>>>>>  CMS due to
>>>>>     >>>>>>>>    it
>>>>>     >>>>>>>>>>       initially
>>>>>     >>>>>>>>>>>        not
>>>>>     >>>>>>>>>>>>         meeting
>>>>>     >>>>>>>>>>>>>          all
>> of
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    our
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       needs.
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            Our
>>>>>     >>> current
>>>>>     >>>       needs
>>>>>     >>>>>>  for the site
>>>>>     >>>>>>>>    are
>>>>>     >>>       -
>>>>>     >>>>>>  Markdown to html
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>>       conversion
>>>>>     >>>   That
>>>>>     >>>>>>  one's easy-
>>>>>     >>>>>>>>    its
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       default
>>>>>     >>>>>>>>>>>        for
>>>>>     >>>>>>>>>>>>         the
>>>>>     >>>>>>>>>>>>>
>> cms.
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>       - Global
>>>>>     >>>>>>>>>      variables/config
>>>>>     >>>>>>>>>>       usable
>>>>>     >>>>>>>>>>>>
>> throughout
>>>>>     >>>>>>>>>>>>>          in
>> a
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    template
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            based
>>>>>     >>> layout
>>>>>     >>>   Easy too-
>>>>>     >>>>>>  just create
>>>>>     >>>>>>>>    a
>>>>>     >>>>>>>>>      perl
>>>>>     >>>>>>>>>>       hash
>>>>>     >>>>>>>>>>>>
>> somewhere and
>>>>>     >>>>>>>>>>>>>
>> make it
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       available
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            to
>>>>>     >>> your views.
>>>>>     >>>   Code your
>>>>>     >>>>>>  views to
>>>>>     >>>>>>>>    pass
>>>>>     >>>>>>>>>      that
>>>>>     >>>>>>>>>>       hash
>>>>>     >>>>>>>>>>>        along to
>>>>>     >>>>>>>>>>>>         your
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    templates
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       and you
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            are
>>>>>     >>> all set.
>>>>>     >>>   Note if your
>>>>>     >>>>>>  hash
>>>>>     >>>>>>>>    contains
>>>>>     >>>>>>>>>>       objects
>>>>>     >>>>>>>>>>>        you can
>>>>>     >>>>>>>>>>>>         make
>>>>>     >>>>>>>>>>>>>
>> method
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    calls
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       on
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            them in
>>>>>     >>> your
>>>>>     >>>   templates.
>>>>>     >>>>>>  Note:
>>>>>     >>>>>>>>    while I
>>>>>     >>>>>>>>>>>        wouldn't
>>>>>     >>>>>>>>>>>>>
>>>   recommend
>>>>    this in
>>>>>     >>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       general,
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            for
>>>>>     >>> smaller
>>>>>     >>>   projects
>>>>>     >>>>>>  like thrift
>>>>>     >>>>>>>>    that
>>>>>     >>>>>>>>>      prefer
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>>
>> convenience
>>>>>     >>>>>>>>>>>>>
>> over
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    separation
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       of
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            concerns
>>>>>     >>> you can
>>>>>     >>>   have the
>>>>>     >>>>>>  django
>>>>>     >>>>>>>>    template
>>>>>     >>>>>>>>>      engine
>>>>>     >>>>>>>>>>       do a
>>>>>     >>>>>>>>>>>        pass
>>>>>     >>>>>>>>>>>>         over
>>>>>     >>>>>>>>>>>>>
>> your
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    markdown
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            before
>>>>>     >>> passing it
>>>>>     >>>   along to
>>>>>     >>>>>>  your actual
>>>>>     >>>>>>>>>      template
>>>>>     >>>>>>>>>>       page,
>>>>>     >>>>>>>>>>>        just
>>>>>     >>>>>>>>>>>>         as is
>>>>>     >>>>>>>>>>>>>
>>>   seemingly
>>>>>     >>>>>>>>>>>>>>>>
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       common to
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            other
>>>>>     >>> popular
>>>>>     >>>   site
>>>>>     >>>>>>  generation
>>>>>     >>>>>>>>    software.
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>       - Syntax
>>>>>     >>>>>>>>    highlighting
>>>>>     >>>   Comes with
>>>>>     >>>>>>>>    python's
>>>>>     >>>>>>>>>      markdown
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        support,
>>>>>     >>>>>>>>>>>>         but
>>>>>     >>>>>>>>>>>>>
>> some
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    people
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       prefer
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            the look
>>>>>     >>> of
>>>>>     >>>   javascript
>>>>>     >>>>>>>>    highlighters.
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>       - Easily
>>>>>     >>>>>>  include
>>>>>     >>>>>>>>    code
>>>>>     >>>>>>>>>>       snippets
>>>>>     >>>>>>>>>>>        from
>>>>>     >>>>>>>>>>>>         our
>>>>>     >>>>>>>>>>>>>
>> source
>>>   code
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    base
>>>>>     >>>   Statically I
>>>>>     >>>>>>  hope.  No
>>>>>     >>>>>>>>    idea
>>>>>     >>>>>>>>>      how
>>>>>     >>>>>>>>>>       to
>>>>>     >>>>>>>>>>>        pull
>>>>>     >>>>>>>>>>>>>
>> snippets
>>>   out
>>>>    of
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    your
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       git
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            repo
>>>>>     >>> via the
>>>>>     >>>   cms.
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>       -
>>>>>     >>>>>>  Ability to
>>>>>     >>>>>>>>    locally
>>>>>     >>>>>>>>>      test
>>>>>     >>>>>>>>>>       before
>>>>>     >>>>>>>>>>>>
>> committing
>>>>>     >>>   Belt and
>>>>>     >>>>>>  suspenders
>>>>>     >>>>>>>>    with
>>>>>     >>>>>>>>>      the
>>>>>     >>>>>>>>>>       cms- you
>>>>>     >>>>>>>>>>>        can
>>>>>     >>>>>>>>>>>>         build
>>>>>     >>>>>>>>>>>>>
>> your
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    changes
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            before
>>>>>     >>> committing
>>>>>     >>>   with the
>>>>>     >>>>>>  build
>>>>>     >>>>>>>>    scripts,
>>>>>     >>>>>>>>>      browse
>>>>>     >>>>>>>>>>       your
>>>>>     >>>>>>>>>>>>         changes
>>>>>     >>>>>>>>>>>>>
>> before
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    committing
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       via
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            the cms
>>>>>     >>>   webgui, or
>>>>>     >>>>>>  simply
>>>>>     >>>>>>>>    commit
>>>>>     >>>>>>>>>      your
>>>>>     >>>>>>>>>>       changes
>>>>>     >>>>>>>>>>>        and
>>>>>     >>>>>>>>>>>>         view
>>>>>     >>>>>>>>>>>>>          the
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    staging
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       site
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            prior to
>>>>>     >>> live
>>>>>     >>>   publication
>>>>>     >>>>>>  (which is
>>>>>     >>>>>>>>    a
>>>>>     >>>>>>>>>      separate
>>>>>     >>>>>>>>>>
>>>>>     >>>>>>>>>>>        step).
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>       -Jake
>>>>>     >>>       On Sun,
>>>>>     >>>>>>  Mar 16,
>>>>>     >>>>>>>>    2014 at
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>>       12:44 PM,
>>>>>     >>>>>>>>>>>        Joe
>>>>>     >>>>>>>>>>>>>
>> Schaefer
>>>>>     >>>>>>>>>>
>>>>    <jo...@yahoo.com>wrote:
>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>
>>>
>>>>>     >>>         As
>>>>>     >>>>>>  it so
>>>>>     >>>>>>>>    happens I
>>>>>     >>>>>>>>>      am
>>>>>     >>>>>>>>>>>        interested
>>>>>     >>>>>>>>>>>>         in
>>>>>     >>>>>>>>>>>>>
>> working
>>>   on
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       supporting
>>>>>     >>>>>>  thrift's
>>>>>     >>>>>>>>    use
>>>>>     >>>>>>>>>      case as
>>>>>     >>>>>>>>>>       a
>>>>>     >>>>>>>>>>>>
>> potential
>>>>>     >>>>>>>>>>>>>
>> user of
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    the
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       Apache
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            CMS.
>>>>>     >>>>>>  While the CMS
>>>>>     >>>>>>>>    works
>>>>>     >>>>>>>>>      well
>>>>>     >>>>>>>>>>       for
>>>>>     >>>>>>>>>>>>         massive
>>>>>     >>>>>>>>>>>>>
>> projects
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    there
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       are
>>>>>     >>>>>>  things it
>>>>>     >>>>>>>>    could do
>>>>>     >>>>>>>>>>       better at
>>>>>     >>>>>>>>>>>>
>> supporting
>>>>>     >>>>>>>>>>>>>          for
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    more
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       moderate
>>>>>     >>>>>>  sized sites
>>>>>     >>>>>>>>    like
>>>>>     >>>>>>>>>>>        thrift's.
>>>>>     >>>>>>  I'd
>>>>>     >>>>>>>>    therefore
>>>>>     >>>>>>>>>      like
>>>>>     >>>>>>>>>>       to
>>>>>     >>>>>>>>>>>        engage
>>>>>     >>>>>>>>>>>>         you
>>>>>     >>>>>>>>>>>>>
>> folks in
>>>   a
>>>>>     >>>>>>>>>>>>>>>>
>>>>>     >>> brainstorming session
>>>>>     >>>>>>  about what
>>>>>     >>>>>>>>    sorts of
>>>>>     >>>>>>>>>
>>>>>     >>>>>>>>>>       features
>>>>>     >>>>>>>>>>>        you
>>>>>     >>>>>>>>>>>>         want
>>>>>     >>>>>>>>>>>>>          for
>> your
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    site
>>>>>
>>>>>>>>>>>>>>>>>>>
>>>
>>>>       and
>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>
>>>>            to find
>>>>>     >>>>>>  simple ways of
>>>>>     >>>>>>>>
>>>>>     >>>>>>>>>>       supporting
>>>>>     >>>>>>>>>>>        those
>>>>>     >>>>>>>>>>>>>
>> features
>>>   for
>>>>>     >>>>>>>>>>>>>>>>
>>
>>>
>>>>    you.
>>>>>     >>>>>>  Thanks.
>>>>>     >
>>>>>
>>>>
>>>
>>
>


Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
I made a start at updating the website docs for committers
here at http://thrift.staging.apache.org/docs/committers/HowToThriftWebsite

I left the old stuff in there for someone to go through and replace it with
the comparable text for dealing with the CMS.

HTH



> On Tuesday, March 25, 2014 5:19 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > FWIW until you get accustomed to the CMS bookmarklet/webgui
> stuff I recommend downloading http://s.apache.org/cms-cli 
> and installing the CPAN prereqs for it on your local host.
> That way you can publish, which is a separate step involving
> the script, while you are working on the svn tree.  If you
> name the script publish.pl invoking it as 
> 
> % ./publish.pl thrift
> 
> will get you where you need to be.  You might even consider 
> setting up an svn external to pull that file out of svn and
> place it at the base of your cms tree for committers to use.
> 
> 
> 
>>  On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > Done Jake thanks!  One remark for Roger...
>> 
>>  The file extension used for stuff in content/test/ really doesn't 
> matter as 
>>  far as the build goes.  What you need to do is supply a 'lang=text' 
> 
>>  argument to each snippet that is not a native markdown file; the build will 
> 
>>  automatically strip file extensions off the internal links in the markdown 
>>  sources so httpd will do the right thing and resolve the extension via the 
>>  MultiViews feature.
>> 
>>  In the case of test/ThriftTest.thrift, I'd recommend changing the 
> extension 
>>  to .txt or even .md (in the content/test/ tree on the site sources in svn, 
> not 
>>  the code sources in git) so the CMS's webgui will fetch you a decent 
> editor 
>>  for that file.  Otherwise again the extension doesn't matter- the build 
> will 
>>  always convert it to html.
>> 
>> 
>> 
>>>   On Tuesday, March 25, 2014 9:34 AM, Jake Farrell 
>>  <jf...@apache.org> wrote:
>>>   > Hey Joe
>>>   Thanks for making the additions to the Apache CMS to meet our use 
> case. 
>>  I'm
>>>   not seeing any blockers at the moment, lets cut over and we can fix 
> any
>>>   edge cases if needed
>>> 
>>>   -Jake
>>> 
>>> 
>>> 
>>>   On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer 
>>>   <jo...@yahoo.com>wrote:
>>> 
>>>>    Done.  Anything else we need to look at before going live?
>>>> 
>>>>    Sent from my iPhone
>>>> 
>>>>    > On Mar 23, 2014, at 3:53 PM, Roger Meier 
>>>   <ro...@bufferoverflow.ch>
>>>>    wrote:
>>>>    >
>>>>    > any idea how to fix this URL:
>>>>    > http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>>    > we need to keep the filename for working links within the
>>>>    > test/README.md file.
>>>>    >
>>>>    > What about a footer for docs genertated from source tree?
>>>>    > [snippet:path=test/README.md, footer=1]
>>>>    >
>>>>    > I added the following snippet to content/test/index.md:
>>>>    > ---SNIP---
>>>>    > This page was generated from Apache Thrift's **source 
> tree 
>>  docs**:
>>>>    > [test/README.md](
>>>> 
>>> 
>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>>    )
>>>>    > ---SNIP---
>>>>    >
>>>>    > would be great to get this generated into the page via 
> snippet.
>>>>    >
>>>>    > -roger
>>>>    >
>>>>    >
>>>>    >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>>    >> The CMS codebase as well as the thrift build system
>>>>    >> already supports it Roger, someone just needs to create
>>>>    >> the files in the content tree that point at the source
>>>>    >> files in the git repo.  If you want to script this 
> process
>>>>    >> in scripting language du jour, go for it, but I cannot
>>>>    >> justify spending contractor time doing this work for the
>>>>    >> community's behalf as it is unlikely to be needed 
>>  elsewhere.
>>>>    >> I would think you only need the script to run when some
>>>>    >> path to a README.md file changes in the thrift.git tree,
>>>>    >> so it doesn't need to be incorporated into each site 
> 
>>  build.
>>>>    >>
>>>>    >>
>>>>    >>
>>>>    >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier 
> <
>>>>    roger@bufferoverflow.ch> wrote:
>>>>    >>>> Hi
>>>>    >>>
>>>>    >>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>>    >>>>  Hey Joe
>>>>    >>>>  Reviewing the staging site it looks like its 
> almost 
>>  99% 
>>>   there other
>>>>    than
>>>>    >>>>  some styling within the code snippets. I'm 
> good 
>>  if we 
>>>   want to cut
>>>>    over
>>>>    >>> to
>>>>    >>>>  using this and then work on the additional 
> features 
>>  that 
>>>   had been
>>>>    mentioned
>>>>    >>>>  afterwords. Any objections to cutting over?
>>>>    >>> I would really like to see this automatic README.md 
>>  includes 
>>>   from
>>>>    source
>>>>    >>> tree, to have a real additional feature beside of 
> what we 
>> 
>>>   already have
>>>>    >>> today.
>>>>    >>>
>>>>    >>> I'm absolutely with you.
>>>>    >>> Apache projects shall use other Apache projects 
> whenever 
>>>   possible.
>>>>    >>>
>>>>    >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>>>    >>> <jo...@yahoo.com>wrote:
>>>>    >>>>
>>>>    >>>>>  May I suggest a script that creates files 
> in 
>>  content/
>>>>    >>>>>  containing a single line
>>>>    >>>>>
>>>>    >>>>>  [snippet:path=...]
>>>>    >>> this sounds like a plan
>>>>    >>>
>>>>    >>>>>
>>>>    >>>>>  (with no 'lang' argument) that lets 
> the 
>>  CMS 
>>>   pull raw content
>>>>    >>> from
>>>>    >>>>>  thrift.git
>>>>    >>>>>  and add it directly to the built pages.  
> That 
>>  way you 
>>>   only need to
>>>>    run
>>>>    >>> the
>>>>    >>>>>  script that generates these files when a 
> path 
>>  changes 
>>>   in your
>>>>    >>> thrift.git
>>>>    >>>>>  repo.
>>>>    >>> What I had in mind is a automatic search of 
> README.md 
>>  files 
>>>   across the
>>>>    >>> source tree and generate the site with these 
>>  automatically.
>>>>    >>> Kind of a central controller that maps all the 
> URL's.
>>>>    >>> no additional work when a new README.md file is 
> added.
>>>>    >>> however, a script can do this as interim soultion.
>>>>    >>>>>
>>>>    >>>>>  You can commit directly to the cms svn tree 
> or 
>>  via 
>>>   the webgui which
>>>>    >>> does
>>>>    >>>>>  the same thing.
>>>>    >>> Great!
>>>>    >>>
>>>>    >>> What about local preview when doing perl 
> modifications?
>>>>    >>>
>>>>    >>> -roger
>>>>    >>>
>>>>    >>>
>>>>    >>>>>
>>>>    >>>>>
>>>>    >>>>>>  On Saturday, March 22, 2014 4:20 PM, 
> Roger 
>>  Meier 
>>>   <
>>>>    >>>>>  roger@bufferoverflow.ch> wrote:
>>>>    >>>>>>>  I still see some issues and still 
> miss 
>>  to 
>>>   feature mentioned.
>>>>    >>>>>>  Now we have nonoc.ws and I'm able 
> to 
>>  hack 
>>>   this a bit.
>>>>    >>>>>>
>>>>    >>>>>>  We had no real big issue, the thing I 
> missed 
>>  was 
>>>   the code snippet
>>>>    >>> thing
>>>>    >>>>>>  and this is in on nanoc.ws and now also 
> on 
>>  Apache 
>>>   CMS.
>>>>    >>>>>>
>>>>    >>>>>>  The thing we really need is the 
>>  documentation 
>>>   located within source
>>>>    >>> code
>>>>    >>>>>>  integrated on the web site.
>>>>    >>>>>>
>>>>    >>>>>>  most hosting platforms do render 
> README.md 
>>  and 
>>>   that's why lot
>>>>    >>> of doc
>>>>    >>>>>>  will stay within the code and we should 
> 
>>  benefit 
>>>   as well by
>>>>    >>> rendering
>>>>    >>>>>>  that to the web site and enhance the 
>>>   documentation very easily.
>>>>    >>>>>>
>>>>    >>>>>>  I would like to render the 41 README.md 
> 
>>  files to 
>>>   with the following
>>>>    >>>>>>  pattern, that's a must have before 
>>  switching 
>>>   to another CMS.
>>>>    >>>>>>
>>>>    >>>>>>  test/README.md => 
> thrift.apache.org/test
>>>>    >>>>>>  test/STATUS.md => 
>>>   thrift.apache.org/test/status
>>>>    >>>>>>  test/keys/README.md => 
>>>   thrift.apache.org/test/keys
>>>>    >>>>>>  lib/<lang>/README.md => 
>>>   thrift.apache.org/lib/<lang>
>>>>    >>>>>>  lib/<lang>/test/README.md =>
>>>>    >>> thrift.apache.org/lib/<lang>/test
>>>>    >>>>>>  lib/<lang>/examples/README.md 
> =>
>>>>    >>>>>>  
> thrift.apache.org/lib/<lang>/examples
>>>>    >>>>>>  compiler/cpp/README.md => 
>>>   thrift.apache.org/compiler
>>>>    >>>>>>  debian/README.md => 
>>  thrift.apache.org/debian
>>>>    >>>>>>  contrib/<topic>/README.md =>
>>>>    >>> thrift.apache.org/<topic>
>>>>    >>>>>>
>>>>    >>>>>>  CPP tutorial seems to be broken on 
> staging.
>>>>    >>>>>>
>>>>    >>>>>>  Do you commit to
>>>>    >>> 
> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>    >>>>>>  or is it web gui only?
>>>>    >>>>>>
>>>>    >>>>>>  How do you generate the site on your 
> local 
>>>   machine?
>>>>    >>>>>>
>>>>    >>>>>>
>>>>    >>>>>>  Should I reactivate my perl or do we 
> stay 
>>  with 
>>>   ruby?
>>>>    >>>>>>  Committers and contributors, what do 
> you 
>>  think?
>>>>    >>>>>>
>>>>    >>>>>>
>>>>    >>>>>>  all the best
>>>>    >>>>>>  -roger
>>>>    >>>>>>
>>>>    >>>>>>
>>>>    >>>>>>>  On 22.03.2014 18:07, Joe Schaefer 
> wrote:
>>>>    >>>>>>>
>>>>    >>>>>>>
>>>>    >>>>>>>    Ok I've now done the basic 
>>  necessities 
>>>   involved in
>>>>    >>> porting
>>>>    >>>>>>>    the site over.  Links have been 
>>  adjusted, 
>>>   templates ported,
>>>>    >>> files
>>>>    >>>>>  created,
>>>>    >>>>>>>    snippet feature activated.  At 
> this 
>>  point 
>>>   I'm happy to
>>>>    >>> declare
>>>>    >>>>>>>    victory and migrate the thrift 
> live 
>>  site 
>>>   over, as anything
>>>>    >>> broken that
>>>>    >>>>>>>    still remains can be dealt with 
> on a 
>>>   per-page basis with the
>>>>    >>>>>  bookmarklet.
>>>>    >>>>>>>
>>>>    >>>>>>>
>>>>    >>>>>>>
>>>>    >>>>>>>>    On Thursday, March 20, 2014 
> 11:19 
>>  AM, 
>>>   Joe Schaefer
>>>>    >>>>>>  <jo...@yahoo.com> wrote:
>>>>    >>>>>>>>>    Modulo some bizarre 
> content 
>>>   truncation out of
>>>>    >>> git-wip-us.apache.org
>>>>    >>>>>>>>    the snippet support is now 
> active. 
>>  At 
>>>   this point I think
>>>>    >>> all the build
>>>>    >>>>>>>>    support you need in this 
> project 
>>  to 
>>>   support every type of
>>>>    >>>>>  brainstorming
>>>>    >>>>>>>>    activity we've discussed 
> is 
>>  now 
>>>   there, so it's
>>>>    >>> just up to you
>>>>    >>>>>>  guys to
>>>>    >>>>>>>>    now familiarize yourselves 
> with 
>>  the 
>>>   build technology and
>>>>    >>> how to apply
>>>>    >>>>>>>>    it to your needs.  The site 
> builds 
>>  with 
>>>   snippet support
>>>>    >>> are running
>>>>    >>>>>>  around
>>>>    >>>>>>>>    10 seconds, which is to be 
>>  expected 
>>>   with the network
>>>>    >>> interactions
>>>>    >>>>>>  involved.
>>>>    >>>>>>>>
>>>>    >>>>>>>>    I'm always willing to 
> answer 
>>  any 
>>>   questions that come
>>>>    >>> up in the
>>>>    >>>>>>  interim,
>>>>    >>>>>>>>    but I wish you guys the best 
> of 
>>  luck in 
>>>   the remaining
>>>>    >>> porting work to
>>>>    >>>>>>  be done.
>>>>    >>>>>>>>    All I see really are some 
> links 
>>  that 
>>>   need to have the
>>>>    >>> trailing slashes
>>>>    >>>>>>  removed
>>>>    >>>>>>>>    and whatever <%= %> 
> template 
>> 
>>>   constructs that remain
>>>>    >>> need to be
>>>>    >>>>>>  ported to
>>>>    >>>>>>>>    django.  So it should be 
> smooth 
>>>   sailing, but as I said if
>>>>    >>> you hit any
>>>>    >>>>>>  snags
>>>>    >>>>>>>>    holler.  I'd really like 
> to 
>>  see the 
>>>   live site tech
>>>>    >>> switched over to
>>>>    >>>>>>  the cms
>>>>    >>>>>>>>    stuff before Apachecon ends 
> in 
>>  early 
>>>   April, hint hint.
>>>>    >>>>>>>>
>>>>    >>>>>>>>
>>>>    >>>>>>>>
>>>>    >>>>>>>>
>>>>    >>>>>>>>
>>>>    >>>>>>>>>>      On Wednesday, March 
> 19, 
>>  2014 
>>>   10:41 PM, Joe Schaefer
>>>>    >>>>>>>>>    
> <jo...@yahoo.com> 
>> 
>>>   wrote:
>>>>    >>>>>>>>>      > While I don't 
> yet 
>>  know 
>>>   the url magic to
>>>>    >>> support branches
>>>>    >>>>>>  and tags
>>>>    >>>>>>>>    in git,
>>>>    >>>>>>>>>      I can say that the 
> snippet 
>>>   support is ready to play
>>>>    >>> with.  I
>>>>    >>>>>>  suggest just
>>>>    >>>>>>>>>      focusing on the 
> /index.md 
>>  page 
>>>   first to see how it
>>>>    >>> works in
>>>>    >>>>>>  practice
>>>>    >>>>>>>>    because
>>>>    >>>>>>>>>      once it's fully 
> enabled 
>>  the 
>>>   build will break
>>>>    >>> until all the
>>>>    >>>>>>  snippet
>>>>    >>>>>>>>    sources
>>>>    >>>>>>>>>      have been altered to 
> conform 
>>  with 
>>>   the new style.
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>      To turn it on for 
> index.md 
>>>   testing, there are a
>>>>    >>> couple of things
>>>>    >>>>>>  that need
>>>>    >>>>>>>>    to
>>>>    >>>>>>>>>      happen. First the 
>>  [snippet:...] 
>>>   marker should be
>>>>    >>> edited to be
>>>>    >>>>>>>>    [XXXsnippet:...]
>>>>    >>>>>>>>>      to enable testing 
> without 
>>>   breaking the build.
>>>>    >>> Second each marker
>>>>    >>>>>>  contains
>>>>    >>>>>>>>    a
>>>>    >>>>>>>>>      "token" 
> argument 
>>>   instead of line numbers
>>>>    >>> for more
>>>>    >>>>>>  stability under
>>>>    >>>>>>>>
>>>>    >>>>>>>>>      edits to the source 
> code.  
>>  The 
>>>   token argument is an
>>>>    >>> arbitrary
>>>>    >>>>>>  string that
>>>>    >>>>>>>>    is
>>>>    >>>>>>>>>      used to denote the 
>>  boundaries of 
>>>   the snippet within
>>>>    >>> the source
>>>>    >>>>>>  code.
>>>>    >>>>>>>>>       ASF::Value::Snippet 
> will 
>>  pull 
>>>   out the lines from
>>>>    >>> the source file
>>>>    >>>>>>  between
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>      lines that contain the 
> token 
>> 
>>>   argument and format
>>>>    >>> them as a code
>>>>    >>>>>>  snippet
>>>>    >>>>>>>>    embedded
>>>>    >>>>>>>>>      into markdown. To get 
>>  started 
>>>   I'll copy over
>>>>    >>> the code
>>>>    >>>>>>  highlighting css
>>>>    >>>>>>>>    from
>>>>    >>>>>>>>>      www.apache.org but note 
> that 
>>  this 
>>>   is all based on
>>>>    >>> python pygments
>>>>    >>>>>>  and there
>>>>    >>>>>>>>    are
>>>>    >>>>>>>>>      a variety of online css 
> 
>>  files to 
>>>   choose from if
>>>>    >>> this one is not
>>>>    >>>>>>  to the
>>>>    >>>>>>>>>      group's liking.
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>>       On Wednesday, 
> March 19, 
>>  2014 
>>>   4:16 PM, Joe
>>>>    >>> Schaefer
>>>>    >>>>>>>>>      
>>  <jo...@yahoo.com> 
>>>   wrote:
>>>>    >>>>>>>>>>       > Sorry I need 
> to 
>>  clarify 
>>>   with an example:
>>>>    >>> look at
>>>>    >>>>>>>>>>      
>>>   http://thrift.staging.apache.org/tutorial/
>>>>    >>> versus
>>>>    >>> http://thrift.staging.apache.org/tutorial.html.  The
>>>>    >>>>>>>>>>       former is 
> generated 
>>  from
>>>>    >>> content/tutorial/index.html
>>>>    >>>>>>>>>>       and the latter 
> from 
>>>   content/tutorial.md.  The
>>>>    >>> latter file
>>>>    >>>>>>>>>>       needs to be 
> removed 
>>  from the 
>>>   tree now that
>>>>    >>> it's content
>>>>    >>>>>>>>>>       has been ported to
>>>>    >>> content/tutorial/index.html.  This
>>>>    >>>>>>>>>>       uses django 
> template 
>>>   inheritance to maintain
>>>>    >>> simplicity.
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>       Other directories 
> that 
>>>   follow a similar
>>>>    >>> pattern should
>>>>    >>>>>>>>>>       also be ported in 
> the 
>>  same 
>>>   fashion.
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        On Wednesday, 
> 
>>  March 19, 
>>>   2014 9:46 AM, Joe
>>>>    >>> Schaefer
>>>>    >>>>>>>>>>      
>>>   <jo...@yahoo.com> wrote:
>>>>    >>>>>>>>>>>        > If 
>>  someone's 
>>>   looking for a way
>>>>    >>> to help with
>>>>    >>>>>>  the porting
>>>>    >>>>>>>>>>>        effort, 
> consider 
>>>   tackling the creation of
>>>>    >>> an index.html
>>>>    >>>>>>>>>>>        page in each 
>>  subdir of 
>>>   the content/ tree
>>>>    >>> (other than
>>>>    >>>>>>  the
>>>>    >>>>>>>>>>>        base which 
> has an 
>>>   /index.md).  The
>>>>    >>> contents of the file
>>>>    >>>>>>>>>>>        should be 
> just
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>        {% 
> include 
>>>   'default' %}
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>        (see the docs 
> dir 
>>  for 
>>>   an example page
>>>>    >>> that can be
>>>>    >>>>>>  copied)
>>>>    >>>>>>>>>>>        and the build 
> 
>>  system 
>>>   will take care of
>>>>    >>> generating the
>>>>    >>>>>>  page
>>>>    >>>>>>>>>>>        in a 
> consistent 
>>  fashion 
>>>   with the rest of
>>>>    >>> the site.
>>>>    >>>>>>  Once
>>>>    >>>>>>>>>>>        that is done 
> there 
>>  are 
>>>   a lot of pages
>>>>    >>> that function
>>>>    >>>>>>  like
>>>>    >>>>>>>>>>>        index pages 
> but 
>>  are 
>>>   written in markdown
>>>>    >>> that can be
>>>>    >>>>>>  deleted,
>>>>    >>>>>>>>>>>        like docs.md 
> and 
>>  its 
>>>   ilk.  Nanoc
>>>>    >>> transforms that file
>>>>    >>>>>>  into
>>>>    >>>>>>>>>>>        
> /docs/index.html 
>>  but 
>>>   that's kinda
>>>>    >>> crufty and not
>>>>    >>>>>>  supported
>>>>    >>>>>>>>>>>        by the CMS, 
> which 
>>  only 
>>>   lets you alter
>>>>    >>> file extensions
>>>>    >>>>>>  not paths.
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>>         On 
> Wednesday, 
>> 
>>>   March 19, 2014 8:54
>>>>    >>> AM, Joe Schaefer
>>>>    >>>>>>>>>>>        
>>>   <jo...@yahoo.com> wrote:
>>>>    >>>>>>>>>>>>         > I 
> just 
>>>   pencilled in snippet
>>>>    >>> preprocessing
>>>>    >>>>>>  support into
>>>>    >>>>>>>>>>>>         the 
> thrift 
>>>   builds.  Once Jake and I
>>>>    >>> have settled
>>>>    >>>>>>  on the
>>>>    >>>>>>>>>>>>         feature 
> set 
>>  of 
>>>   ASF::Value::Snippet,
>>>>    >>> and we have
>>>>    >>>>>>  ported
>>>>    >>>>>>>>>>>>         the 
> snippet 
>>>   calling text within the
>>>>    >>> markdown pages
>>>>    >>>>>>>>>>>>         to the 
> new 
>>  format, 
>>>   things will just
>>>>    >>> work (knock on
>>>>    >>>>>>  wood).
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          On 
>>  Wednesday, 
>>>   March 19, 2014
>>>>    >>> 6:48 AM, Joseph
>>>>    >>>>>>  Schaefer
>>>>    >>>>>>>>>>>>        
>>>   <jo...@yahoo.com>
>>>>    >>> wrote:
>>>>    >>>>>>>>>>>>>          
>> 
>>  Sure I 
>>>   understand that
>>>>    >>> need.  If
>>>>    >>>>>>  there's a way
>>>>    >>>>>>>>    of
>>>>    >>>>>>>>>>       pulling the
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>>         document
>>>>    >>>>>>>>>>>>>          
> sources 
>>>   directly from the web I
>>>>    >>> can parse the
>>>>    >>>>>>  content
>>>>    >>>>>>>>    to
>>>>    >>>>>>>>>      look for
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        snippet
>>>>    >>>>>>>>>>>>>          
> markers 
>>  and 
>>>   make those
>>>>    >>> available to the
>>>>    >>>>>>  template
>>>>    >>>>>>>>    system.
>>>>    >>>>>>>>>>       That's
>>>>    >>>>>>>>>>>        pretty
>>>>    >>>>>>>>>>>>         much
>>>>    >>>>>>>>>>>>>          how 
> 
>>>   www.apache.org is
>>>>    >>> generated.
>>>>    >>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
> Sent 
>>  from my 
>>>   iPhone
>>>>    >>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>        
>    On 
>>  Mar 
>>>   19, 2014, at 5:28
>>>>    >>> AM, Henrique
>>>>    >>>>>>  Mendonça
>>>>    >>>>>>>>>>>>        
>>>   <he...@apache.org>
>>>>    >>>>>>>>>>>>>          
> wrote:
>>>>    >>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>        
>    Hi 
>>  Joe,
>>>>    >>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>        
>    
>>  Thanks 
>>>   for your effort. I
>>>>    >>> just wanted to
>>>>    >>>>>>  add that
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>      code
>>>>    >>>>>>>>>>>        snippets
>>>>    >>>>>>>>>>>>         are a
>>>>    >>>>>>>>>>>>>>        
>    
>>  crucial 
>>>   feature for this
>>>>    >>> project, which
>>>>    >>>>>>  has way
>>>>    >>>>>>>>    more
>>>>    >>>>>>>>>      target
>>>>    >>>>>>>>>>>        languages
>>>>    >>>>>>>>>>>>         than
>>>>    >>>>>>>>>>>>>>        
>    
>>  active 
>>>   contributors. In
>>>>    >>> our case,
>>>>    >>>>>>  reducing manual
>>>>    >>>>>>>>>>       maintenance
>>>>    >>>>>>>>>>>        costs is
>>>>    >>>>>>>>>>>>         much
>>>>    >>>>>>>>>>>>>>        
>    
>>  more 
>>>   important than the
>>>>    >>> total site build
>>>>    >>>>>>  time.
>>>>    >>>>>>>>    Perhaps
>>>>    >>>>>>>>>      we
>>>>    >>>>>>>>>>       can
>>>>    >>>>>>>>>>>        also
>>>>    >>>>>>>>>>>>         solve
>>>>    >>>>>>>>>>>>>>        
>    
>>  this in 
>>>   the CMS, though.
>>>>    >>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>        
>    - 
>>>   Henrique
>>>>    >>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>      
>      
>>  On 
>>>   19 March 2014
>>>>    >>> 03:17, Joe Schaefer
>>>>    >>>>>>>>>>>>        
>>>   <jo...@yahoo.com>
>>>>    >>>>>>>>>>>>>          
> wrote:
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>      
>      
>>  A 
>>>   couple more thoughts
>>>>    >>> regarding the
>>>>    >>>>>>>>    background on
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       CMS...
>>>>    >>>>>>>>>>>>>>>      
>      
>>  the 
>>>   bulk of the focus
>>>>    >>> of the CMS up
>>>>    >>>>>>  until now
>>>>    >>>>>>>>    has
>>>>    >>>>>>>>>      been
>>>>    >>>>>>>>>>       to
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   support really big
>>>>    >>> sites like maven
>>>>    >>>>>>  and
>>>>    >>>>>>>>    openoffice,
>>>>    >>>>>>>>>      both
>>>>    >>>>>>>>>>       of
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   which have websites
>>>>    >>> well over 5GB
>>>>    >>>>>>  worth of
>>>>    >>>>>>>>    text
>>>>    >>>>>>>>>      files.
>>>>    >>>>>>>>>>       The
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   build system was
>>>>    >>> hollowed out and
>>>>    >>>>>>  revamped to
>>>>    >>>>>>>>>      support
>>>>    >>>>>>>>>>>        external
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   builds in other
>>>>    >>> programming
>>>>    >>>>>>  languages, as well
>>>>    >>>>>>>>    as
>>>>    >>>>>>>>>>       scaling up
>>>>    >>>>>>>>>>>>>>>      
>      
>>  the 
>>>   perl builds to
>>>>    >>> provide about 8
>>>>    >>>>>>  child
>>>>    >>>>>>>>    processes
>>>>    >>>>>>>>>      that
>>>>    >>>>>>>>>>       build
>>>>    >>>>>>>>>>>>>>>      
>      
>>  the 
>>>   site in parallel
>>>>    >>> by default.
>>>>    >>>>>>  Full site
>>>>    >>>>>>>>    build
>>>>    >>>>>>>>>      times
>>>>    >>>>>>>>>>       for
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   openoffice went from
>>>>    >>> over 30 minutes
>>>>    >>>>>>  to
>>>>    >>>>>>>>    between 5
>>>>    >>>>>>>>>      to 10
>>>>    >>>>>>>>>>>        minutes
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   depending on disk
>>>>    >>> activity, which
>>>>    >>>>>>  made
>>>>    >>>>>>>>>      experimentation
>>>>    >>>>>>>>>>       with
>>>>    >>>>>>>>>>>>         
> site-wide
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   changes feasible on a
>>>>    >>> reasonable
>>>>    >>>>>>  timeframe.
>>>>    >>>>>>>>    At
>>>>    >>>>>>>>>      first
>>>>    >>>>>>>>>>       the
>>>>    >>>>>>>>>>>        project
>>>>    >>>>>>>>>>>>         was
>>>>    >>>>>>>>>>>>>          in
>>>>    >>>>>>>>>>>>>>>      
>      
>>  the 
>>>   habit of running
>>>>    >>> the builds
>>>>    >>>>>>  locally before
>>>>    >>>>>>>>
>>>>    >>>>>>>>>      checking
>>>>    >>>>>>>>>>       in
>>>>    >>>>>>>>>>>        their
>>>>    >>>>>>>>>>>>>          
> changes
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   because the delay in
>>>>    >>> feedback
>>>>    >>>>>>  post-commit was
>>>>    >>>>>>>>>>       unreasonable,
>>>>    >>>>>>>>>>>        but
>>>>    >>>>>>>>>>>>         with
>>>>    >>>>>>>>>>>>>          
> smart
>>>>    >>>>>>>>>>>>>>>      
>      
>>  use 
>>>   of SSI the were
>>>>    >>> able to cut down
>>>>    >>>>>>  on the
>>>>    >>>>>>>>    number
>>>>    >>>>>>>>>      of
>>>>    >>>>>>>>>>       changes
>>>>    >>>>>>>>>>>        that
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
> required
>>>>    >>>>>>>>>>>>>>>      
>      
>>  full 
>>>   site builds and
>>>>    >>> hence no longer
>>>>    >>>>>>  bother
>>>>    >>>>>>>>    with
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       whole
>>>>    >>>>>>>>>>>>         
> pre-build
>>>>    >>>>>>>>>>>>>          
> mumbo
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   jumbo before checking
>>>>    >>> in changes.
>>>>    >>>>>>  The CMS is
>>>>    >>>>>>>>>      designed
>>>>    >>>>>>>>>>       to
>>>>    >>>>>>>>>>>        only
>>>>    >>>>>>>>>>>>         build
>>>>    >>>>>>>>>>>>>          
> pages
>>>>    >>>>>>>>>>>>>>>      
>      
>>  that 
>>>   were altered, and
>>>>    >>> if you just
>>>>    >>>>>>  edit a page
>>>>    >>>>>>>>    or
>>>>    >>>>>>>>>      two
>>>>    >>>>>>>>>>       only
>>>>    >>>>>>>>>>>        those
>>>>    >>>>>>>>>>>>         pages
>>>>    >>>>>>>>>>>>>          and
>>>>    >>>>>>>>>>>>>>>      
>      
>>  the 
>>>   pages that depend
>>>>    >>> on them will
>>>>    >>>>>>  be built.
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>      
>      
>>  Now 
>>>   that I've
>>>>    >>> turned my
>>>>    >>>>>>  attention to
>>>>    >>>>>>>>    thrift,
>>>>    >>>>>>>>>      there
>>>>    >>>>>>>>>>       are
>>>>    >>>>>>>>>>>        several
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
> aspects
>>>>    >>>>>>>>>>>>>>>      
>      
>>  that 
>>>   are better off
>>>>    >>> being retuned
>>>>    >>>>>>  based on the
>>>>    >>>>>>>>
>>>>    >>>>>>>>>      modest
>>>>    >>>>>>>>>>       size of
>>>>    >>>>>>>>>>>        the
>>>>    >>>>>>>>>>>>         site.
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   First of all you have
>>>>    >>> a sitemap url
>>>>    >>>>>>  that lists
>>>>    >>>>>>>>    all
>>>>    >>>>>>>>>      of
>>>>    >>>>>>>>>>       your
>>>>    >>>>>>>>>>>>>          
>>>   markdown-based
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   pages, which would be
>>>>    >>> a nonstarter
>>>>    >>>>>>  for a site
>>>>    >>>>>>>>    like
>>>>    >>>>>>>>>>>        openoffice.
>>>>    >>>>>>>>>>>>         The
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   implications of the
>>>>    >>> sitemap url are
>>>>    >>>>>>  that every
>>>>    >>>>>>>>    page
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>>       needs to
>>>>    >>>>>>>>>>>        be
>>>>    >>>>>>>>>>>>         built
>>>>    >>>>>>>>>>>>>          in
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   memory just to
>>>>    >>> generate that page,
>>>>    >>>>>>  which leads
>>>>    >>>>>>>>    to a
>>>>    >>>>>>>>>      lot
>>>>    >>>>>>>>>>       of
>>>>    >>>>>>>>>>>>         
> redundancy
>>>>    >>>>>>>>>>>>>          in 
> a
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   build system designed
>>>>    >>> to run as
>>>>    >>>>>>  forked child
>>>>    >>>>>>>>>      processes.
>>>>    >>>>>>>>>>       We
>>>>    >>>>>>>>>>>        can do
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
>>  better...
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   I've done two
>>>>    >>> things to make
>>>>    >>>>>>  this work
>>>>    >>>>>>>>    well-
>>>>    >>>>>>>>>      first I
>>>>    >>>>>>>>>>       made
>>>>    >>>>>>>>>>>        the
>>>>    >>>>>>>>>>>>>          
> number 
>>  of
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   child processes
>>>>    >>> "aka
>>>>    >>>>>>  runners"
>>>>    >>>>>>>>    tunable on
>>>>    >>>>>>>>>      a
>>>>    >>>>>>>>>>>        per-project
>>>>    >>>>>>>>>>>>         basis,
>>>>    >>>>>>>>>>>>>          and 
> 
>>  since the
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   sitemap is going to
>>>>    >>> build every page
>>>>    >>>>>>  anyway as
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>>       slowest
>>>>    >>>>>>>>>>>        page to
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
> build, I
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   memoized the main view
>>>>    >>> that builds
>>>>    >>>>>>  the
>>>>    >>>>>>>>    markdown
>>>>    >>>>>>>>>      pages
>>>>    >>>>>>>>>>       for
>>>>    >>>>>>>>>>>        thrift.
>>>>    >>>>>>>>>>>>         The
>>>>    >>>>>>>>>>>>>          
> best
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   results are when
>>>>    >>> there's only
>>>>    >>>>>>  one runner
>>>>    >>>>>>>>    so we
>>>>    >>>>>>>>>      get
>>>>    >>>>>>>>>>       the
>>>>    >>>>>>>>>>>        full
>>>>    >>>>>>>>>>>>         benefit
>>>>    >>>>>>>>>>>>>          of
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   memoization: typical
>>>>    >>> site build
>>>>    >>>>>>  times are
>>>>    >>>>>>>>>      consistently
>>>>    >>>>>>>>>>       under
>>>>    >>>>>>>>>>>        2
>>>>    >>>>>>>>>>>>         seconds
>>>>    >>>>>>>>>>>>>          
> now.
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   You'll appreciate
>>>>    >>> why I am such
>>>>    >>>>>>  a
>>>>    >>>>>>>>    performance
>>>>    >>>>>>>>>>       stickler
>>>>    >>>>>>>>>>>        for the
>>>>    >>>>>>>>>>>>         CMS
>>>>    >>>>>>>>>>>>>          
> when
>>>>    >>>>>>>>>>>>>>>      
>      
>>  you 
>>>   start using the
>>>>    >>> bookmarklet,
>>>>    >>>>>>  since builds
>>>>    >>>>>>>>    are
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       only
>>>>    >>>>>>>>>>>>         
> asynchronous
>>>>    >>>>>>>>>>>>>>>      
>      
>>  part 
>>>   of the process
>>>>    >>> from making a
>>>>    >>>>>>  change to a
>>>>    >>>>>>>>    page
>>>>    >>>>>>>>>      and
>>>>    >>>>>>>>>>>        publishing
>>>>    >>>>>>>>>>>>         the
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   results.  Ideally when
>>>>    >>> the system is
>>>>    >>>>>>  working
>>>>    >>>>>>>>    well
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       builds
>>>>    >>>>>>>>>>>>         happen
>>>>    >>>>>>>>>>>>>          
> before
>>>>    >>>>>>>>>>>>>>>      
>      
>>  you 
>>>   have time to go
>>>>    >>> looking for
>>>>    >>>>>>  them, but you
>>>>    >>>>>>>>    do
>>>>    >>>>>>>>>      need to
>>>>    >>>>>>>>>>       be
>>>>    >>>>>>>>>>>>         mindful 
> of
>>>>    >>>>>>>>>>>>>          not
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   publishing before the
>>>>    >>> built pages
>>>>    >>>>>>  have been
>>>>    >>>>>>>>>      committed
>>>>    >>>>>>>>>>       back to
>>>>    >>>>>>>>>>>        svn
>>>>    >>>>>>>>>>>>         by
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   buildbot.
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   On Monday, March
>>>>    >>> 17, 2014 11:59
>>>>    >>>>>>  PM, Joe
>>>>    >>>>>>>>>      Schaefer
>>>>    >>>>>>>>>>>>>          
>>>   <jo...@yahoo.com>
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   wrote:
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      Ok there's
>>>>    >>> enough of an
>>>>    >>>>>>  idea about
>>>>    >>>>>>>>    how
>>>>    >>>>>>>>>      to
>>>>    >>>>>>>>>>       port
>>>>    >>>>>>>>>>>        the
>>>>    >>>>>>>>>>>>         rest of
>>>>    >>>>>>>>>>>>>          the 
> 
>>>   site's
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   pages over based
>>>>    >>> on the porting
>>>>    >>>>>>  work
>>>>    >>>>>>>>    I've
>>>>    >>>>>>>>>>       already
>>>>    >>>>>>>>>>>        done
>>>>    >>>>>>>>>>>>         that
>>>>    >>>>>>>>>>>>>          
> it's 
>>  time
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   for me to step
>>>>    >>> back and let you
>>>>    >>>>>>  guys catch
>>>>    >>>>>>>>    up.
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>>       Basically
>>>>    >>>>>>>>>>>        the
>>>>    >>>>>>>>>>>>         idea
>>>>    >>>>>>>>>>>>>          is
>>>>    >>>>>>>>>>>>>>>      
>      
>>  that 
>>>   while
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   there is
>>>>    >>> templating support in
>>>>    >>>>>>  the
>>>>    >>>>>>>>    markdown
>>>>    >>>>>>>>>      sources,
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        it's
>>>>    >>>>>>>>>>>>>          
> fairly 
>>>   limited
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   compared to what
>>>>    >>> nanoc offers,
>>>>    >>>>>>  but instead
>>>>    >>>>>>>>    of
>>>>    >>>>>>>>>>       writing a
>>>>    >>>>>>>>>>>        lot of
>>>>    >>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
> complex
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   template
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   code into your
>>>>    >>> sources, with the
>>>>    >>>>>>  cms you
>>>>    >>>>>>>>    just
>>>>    >>>>>>>>>      add
>>>>    >>>>>>>>>>       code to
>>>>    >>>>>>>>>>>
>>>>    >>>>>>>>>>>>>          
>>>   lib/view.pmand/or
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   lib/path.pm to
>>>>    >>> keep the document
>>>>    >>>>>>  sources
>>>>    >>>>>>>>    simple
>>>>    >>>>>>>>>      and
>>>>    >>>>>>>>>>       just
>>>>    >>>>>>>>>>>        add
>>>>    >>>>>>>>>>>>         more
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   template
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   variables.  What I
>>>>    >>> just finished
>>>>    >>>>>>  in
>>>>    >>>>>>>>    lib/view.pm
>>>>    >>>>>>>>>      and
>>>>    >>>>>>>>>>>>         
> lib/path.pm 
>>  is
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   directory
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   listing support
>>>>    >>> for /docs.html
>>>>    >>>>>>  but it can
>>>>    >>>>>>>>    be
>>>>    >>>>>>>>>      carried
>>>>    >>>>>>>>>>       over
>>>>    >>>>>>>>>>>        to
>>>>    >>>>>>>>>>>>>          
> similar
>>>>    >>>>>>>>>>>>>>>      
>     
>>>   pages.
>>>>    >>>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>>
>>>>    >>>>>>>>>>>>>>>>
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      On Monday,
>>>>    >>> March 17, 2014
>>>>    >>>>>>  9:16 PM, Joe
>>>>    >>>>>>>>
>>>>    >>>>>>>>>      Schaefer
>>>>    >>> <jo...@yahoo.com>
>>>>    >>>>>>  wrote:
>>>>    >>> Interesting ideas,
>>>>    >>>>>>  thanks.  FWIW I
>>>>    >>>>>>>>
>>>>    >>>>>>>>>      think
>>>>    >>>>>>>>>>       that
>>>>    >>>>>>>>>>>        sort
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      of thing might
>>>>    >>> be best
>>>>    >>>>>>  supported as a
>>>>    >>>>>>>>>      periodic
>>>>    >>>>>>>>>>       cron
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      if we can
>>>>    >>> write something
>>>>    >>>>>>  stable
>>>>    >>>>>>>>    enough,
>>>>    >>>>>>>>>      because
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        pulling
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      stuff out of
>>>>    >>> the git repo is
>>>>    >>>>>>  something
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>      CMS
>>>>    >>>>>>>>>>>        isn't
>>>>    >>>>>>>>>>>>         going
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      to do all that
>>>>    >>> well being an
>>>>    >>>>>>  svn
>>>>    >>>>>>>>>      application.
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      The CMS build
>>>>    >>> results are
>>>>    >>>>>>  available at
>>>>    >>> http://thrift.staging.apache.org/
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      feel free to
>>>>    >>> play with the
>>>>    >>>>>>  sources in
>>>>    >>> repos/asf/thrift/cms-site/trunk.
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      It's very
>>>>    >>> fast, probably
>>>>    >>>>>>  an order
>>>>    >>>>>>>>    of
>>>>    >>>>>>>>>>       magnitude
>>>>    >>>>>>>>>>>        faster
>>>>    >>>>>>>>>>>>         than
>>>>    >>>>>>>>>>>>>          
> your 
>>  current
>>>>    >>>>>>>>>>>>>>>>
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      tech.
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      Whole site
>>>>    >>> builds in two
>>>>    >>>>>>  seconds;
>>>>    >>>>>>>>    fractions
>>>>    >>>>>>>>>      of a
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        second
>>>>    >>>>>>>>>>>>         for
>>>>    >>>>>>>>>>>>>          
> typical
>>>>    >>>>>>>>>>>>>>>      
>      
>>  mods 
>>>   to
>>>>    >>>>>>>>>>>>>>>>
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      content/
>>>>    >>> markdown pages.
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      The CMS
>>>>    >>> bookmarklet is
>>>>    >>>>>>  compatible with
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>>       staging
>>>>    >>>>>>>>>>>        site
>>>>    >>>>>>>>>>>>         FWIW.
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           On
>>>>    >>> Monday, March 17,
>>>>    >>>>>>  2014 7:40
>>>>    >>>>>>>>    PM,
>>>>    >>>>>>>>>      Roger
>>>>    >>>>>>>>>>       Meier
>>>>    >>>>>>  <ro...@bufferoverflow.ch> wrote:
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>      
>>>          Hi Joe
>>>>    >>> & Co
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           thanks
>>>>    >>> for this test
>>>>    >>>>>>  run with
>>>>    >>>>>>>>    Apache
>>>>    >>>>>>>>>      CMS!
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           What I
>>>>    >>> would love to
>>>>    >>>>>>  see is this:
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           Source
>>>>    >>> file: => Web
>>>>    >>>>>>  Site URL:
>>>>    >>> test/README.md =>
>>>>    >>>>>>>>>      thrift.apache.org/test
>>>>    >>> test/STATUS.md =>
>>>>    >>>>>>>>>>>        
>>>   thrift.apache.org/test/status
>>>>    >>> test/keys/README.md
>>>>    >>>>>>  =>
>>>>    >>>>>>>>>>>        
>>>   thrift.apache.org/test/keys
>>>>    >>>>>>  lib/<lang>/README.md =>
>>>>    >>> thrift.apache.org/lib/<lang>
>>>>    >>>>>>  lib/<lang>/test/README.md
>>>>    >>>>>>>>    =>
>>>>    >>>>>>>>    
>>  thrift.apache.org/lib/<lang>/test
>>>>    >>>>>>>>    
>>  lib/<lang>/examples/README.md
>>>>    >>>>>>>>>      =>
>>>>    >>>>>>>>>      
>>>   thrift.apache.org/lib/<lang>/examples
>>>>    >>> compiler/cpp/README.md
>>>>    >>>>>>  =>
>>>>    >>>>>>>>>>>>        
>>>   thrift.apache.org/compiler
>>>>    >>> debian/README.md =>
>>>>    >>>>>>>>>>       
>>  thrift.apache.org/debian
>>>>    >>>>>>  contrib/<topic>/README.md
>>>>    >>>>>>>>    =>
>>>>    >>>>>>>>>>>>>          
>>>   thrift.apache.org/<topic>
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           just made
>>>>    >>> the following
>>>>    >>>>>>  patch to
>>>>    >>>>>>>>>      rename all
>>>>    >>>>>>>>>>       file
>>>>    >>>>>>>>>>>        to
>>>>    >>>>>>>>>>>>         .md
>>>>    >>>>>>>>>>>>>          
> within 
>>  our
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   source
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           tree:
>>>>    >>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           ... we
>>>>    >>> have *41*
>>>>    >>>>>>  md's within
>>>>    >>>>>>>>    the
>>>>    >>>>>>>>>      source
>>>>    >>>>>>>>>>       tree
>>>>    >>>>>>>>>>>        and
>>>>    >>>>>>>>>>>>>          
>>  that's 
>>>   the
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   place
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      where
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           people
>>>>    >>> look for
>>>>    >>>>>>  documentation
>>>>    >>>>>>>>    first.
>>>>    >>>>>>>>>      =>
>>>>    >>>>>>>>>>>        simple to
>>>>    >>>>>>>>>>>>>          
> manage
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           Would be
>>>>    >>> user friendly
>>>>    >>>>>>  to have
>>>>    >>>>>>>>    all of
>>>>    >>>>>>>>>      this
>>>>    >>>>>>>>>>>        online
>>>>    >>>>>>>>>>>>         with
>>>>    >>>>>>>>>>>>>          
> each 
>>  release
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           with the
>>>>    >>> URL layout
>>>>    >>>>>>  mentioned
>>>>    >>>>>>>>    above.
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           just
>>>>    >>> received the
>>>>    >>>>>>  buildboot...
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           Do you
>>>>    >>> have kind of a
>>>>    >>>>>>  preview of
>>>>    >>>>>>>>    your
>>>>    >>>>>>>>>>       prototype?
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           all the
>>>>    >>> best!
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           -roger
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           ;-r
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           Quoting
>>>>    >>> Jake Farrell
>>>>    >>>>>>>>>>>        
>>>   <jf...@apache.org>:
>>>>    
>>>>>>>>>>>>>>>>>>>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>      
>>>            No
>>>>    >>> objections from
>>>>    >>>>>>  me
>>>>    >>> -Jake
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>      
>>>            On
>>>>    >>> Mon, Mar 17,
>>>>    >>>>>>  2014 at
>>>>    >>>>>>>>    12:04 PM,
>>>>    >>>>>>>>>      Joe
>>>>    >>>>>>>>>>>        Schaefer
>>>>    >>>>>>>>    
>>  <jo...@yahoo.com>wrote:
>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>> Any objections
>>>>    >>>>>>  to me
>>>>    >>>>>>>>    making a
>>>>    >>>>>>>>>      copy
>>>>    >>>>>>>>>>       of
>>>>    >>>>>>>>>>>        the
>>>>    >>>>>>>>>>>>         site
>>>>    >>> tree alongside
>>>>    >>>>>>  it called
>>>>    >>>>>>>>
>>>>    >>>>>>>>>>       cms-site?
>>>>    >>>>>>>>>>>        I'd
>>>>    >>>>>>>>>>>>         like
>>>>    >>>>>>>>>>>>>          to
>>>>    >>> get cracking
>>>>    >>>>>>  on knocking
>>>>    >>>>>>>>    up
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>>        supporting
>>>>    >>>>>>>>>>>>         perl
>>>>    >>> for this so we
>>>>    >>>>>>  can
>>>>    >>>>>>>>    continue
>>>>    >>>>>>>>>      to
>>>>    >>>>>>>>>>>        brainstorm...
>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>   On Sunday,
>>>>    >>>>>>  March 16,
>>>>    >>>>>>>>    2014
>>>>    >>>>>>>>>      1:53
>>>>    >>>>>>>>>>       PM,
>>>>    >>>>>>>>>>>        Joe
>>>>    >>>>>>>>>>>>         Schaefer
>>>>    >>>>>>  <jo...@yahoo.com>
>>>>    >>> wrote:
>>>>    >>>       On
>>>>    >>>>>>  Sunday, March
>>>>    >>>>>>>>    16,
>>>>    >>>>>>>>>      2014
>>>>    >>>>>>>>>>       1:40
>>>>    >>>>>>>>>>>        PM,
>>>>    >>>>>>>>>>>>         Jake
>>>>    >>>>>>>>>>>>>          
> Farrell
>>>>    >>>>>>  <jf...@apache.org>
>>>>    >>>   wrote:
>>>>    >>>   Hey Joe
>>>>    >>>       Thanks
>>>>    >>>>>>  for
>>>>    >>>>>>>>    reaching
>>>>    >>>>>>>>>      out, we
>>>>    >>>>>>>>>>       chose
>>>>    >>>>>>>>>>>        to
>>>>    >>>>>>>>>>>>         go
>>>>    >>>>>>>>>>>>>          
> with a 
>>  site
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      generator
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           over the
>>>>    >>>       Apache
>>>>    >>>>>>  CMS due to
>>>>    >>>>>>>>    it
>>>>    >>>>>>>>>>       initially
>>>>    >>>>>>>>>>>        not
>>>>    >>>>>>>>>>>>         meeting
>>>>    >>>>>>>>>>>>>          all 
> of
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   our
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      needs.
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           Our
>>>>    >>> current
>>>>    >>>       needs
>>>>    >>>>>>  for the site
>>>>    >>>>>>>>    are
>>>>    >>>       -
>>>>    >>>>>>  Markdown to html
>>>>    >>>>>>>>
>>>>    >>>>>>>>>>       conversion
>>>>    >>>   That
>>>>    >>>>>>  one's easy-
>>>>    >>>>>>>>    its
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       default
>>>>    >>>>>>>>>>>        for
>>>>    >>>>>>>>>>>>         the
>>>>    >>>>>>>>>>>>>          
> cms.
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>       - Global
>>>>    >>>>>>>>>      variables/config
>>>>    >>>>>>>>>>       usable
>>>>    >>>>>>>>>>>>         
> throughout
>>>>    >>>>>>>>>>>>>          in 
> a
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   template
>>>>    
>>>>>>>>>>>>>>>>>> 
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           based
>>>>    >>> layout
>>>>    >>>   Easy too-
>>>>    >>>>>>  just create
>>>>    >>>>>>>>    a
>>>>    >>>>>>>>>      perl
>>>>    >>>>>>>>>>       hash
>>>>    >>>>>>>>>>>>         
> somewhere and
>>>>    >>>>>>>>>>>>>          
> make it
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      available
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           to
>>>>    >>> your views.
>>>>    >>>   Code your
>>>>    >>>>>>  views to
>>>>    >>>>>>>>    pass
>>>>    >>>>>>>>>      that
>>>>    >>>>>>>>>>       hash
>>>>    >>>>>>>>>>>        along to
>>>>    >>>>>>>>>>>>         your
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   templates
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      and you
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           are
>>>>    >>> all set.
>>>>    >>>   Note if your
>>>>    >>>>>>  hash
>>>>    >>>>>>>>    contains
>>>>    >>>>>>>>>>       objects
>>>>    >>>>>>>>>>>        you can
>>>>    >>>>>>>>>>>>         make
>>>>    >>>>>>>>>>>>>          
> method
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   calls
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      on
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           them in
>>>>    >>> your
>>>>    >>>   templates.
>>>>    >>>>>>  Note:
>>>>    >>>>>>>>    while I
>>>>    >>>>>>>>>>>        wouldn't
>>>>    >>>>>>>>>>>>>          
>>  recommend 
>>>   this in
>>>>    >>>>>>>>>>>>>>>>
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      general,
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           for
>>>>    >>> smaller
>>>>    >>>   projects
>>>>    >>>>>>  like thrift
>>>>    >>>>>>>>    that
>>>>    >>>>>>>>>      prefer
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>>         
> convenience
>>>>    >>>>>>>>>>>>>          
> over
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   separation
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      of
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           concerns
>>>>    >>> you can
>>>>    >>>   have the
>>>>    >>>>>>  django
>>>>    >>>>>>>>    template
>>>>    >>>>>>>>>      engine
>>>>    >>>>>>>>>>       do a
>>>>    >>>>>>>>>>>        pass
>>>>    >>>>>>>>>>>>         over
>>>>    >>>>>>>>>>>>>          
> your
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   markdown
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           before
>>>>    >>> passing it
>>>>    >>>   along to
>>>>    >>>>>>  your actual
>>>>    >>>>>>>>>      template
>>>>    >>>>>>>>>>       page,
>>>>    >>>>>>>>>>>        just
>>>>    >>>>>>>>>>>>         as is
>>>>    >>>>>>>>>>>>>          
>>  seemingly
>>>>    >>>>>>>>>>>>>>>>
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      common to
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           other
>>>>    >>> popular
>>>>    >>>   site
>>>>    >>>>>>  generation
>>>>    >>>>>>>>    software.
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>       - Syntax
>>>>    >>>>>>>>    highlighting
>>>>    >>>   Comes with
>>>>    >>>>>>>>    python's
>>>>    >>>>>>>>>      markdown
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        support,
>>>>    >>>>>>>>>>>>         but
>>>>    >>>>>>>>>>>>>          
> some
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   people
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      prefer
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           the look
>>>>    >>> of
>>>>    >>>   javascript
>>>>    >>>>>>>>    highlighters.
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>       - Easily
>>>>    >>>>>>  include
>>>>    >>>>>>>>    code
>>>>    >>>>>>>>>>       snippets
>>>>    >>>>>>>>>>>        from
>>>>    >>>>>>>>>>>>         our
>>>>    >>>>>>>>>>>>>          
> source 
>>  code
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   base
>>>>    >>>   Statically I
>>>>    >>>>>>  hope.  No
>>>>    >>>>>>>>    idea
>>>>    >>>>>>>>>      how
>>>>    >>>>>>>>>>       to
>>>>    >>>>>>>>>>>        pull
>>>>    >>>>>>>>>>>>>          
> snippets 
>>  out 
>>>   of
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   your
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      git
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           repo
>>>>    >>> via the
>>>>    >>>   cms.
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>       -
>>>>    >>>>>>  Ability to
>>>>    >>>>>>>>    locally
>>>>    >>>>>>>>>      test
>>>>    >>>>>>>>>>       before
>>>>    >>>>>>>>>>>>         
> committing
>>>>    >>>   Belt and
>>>>    >>>>>>  suspenders
>>>>    >>>>>>>>    with
>>>>    >>>>>>>>>      the
>>>>    >>>>>>>>>>       cms- you
>>>>    >>>>>>>>>>>        can
>>>>    >>>>>>>>>>>>         build
>>>>    >>>>>>>>>>>>>          
> your
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   changes
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           before
>>>>    >>> committing
>>>>    >>>   with the
>>>>    >>>>>>  build
>>>>    >>>>>>>>    scripts,
>>>>    >>>>>>>>>      browse
>>>>    >>>>>>>>>>       your
>>>>    >>>>>>>>>>>>         changes
>>>>    >>>>>>>>>>>>>          
> before
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   committing
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      via
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           the cms
>>>>    >>>   webgui, or
>>>>    >>>>>>  simply
>>>>    >>>>>>>>    commit
>>>>    >>>>>>>>>      your
>>>>    >>>>>>>>>>       changes
>>>>    >>>>>>>>>>>        and
>>>>    >>>>>>>>>>>>         view
>>>>    >>>>>>>>>>>>>          the
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   staging
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      site
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           prior to
>>>>    >>> live
>>>>    >>>   publication
>>>>    >>>>>>  (which is
>>>>    >>>>>>>>    a
>>>>    >>>>>>>>>      separate
>>>>    >>>>>>>>>>
>>>>    >>>>>>>>>>>        step).
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>       -Jake
>>>>    >>>       On Sun,
>>>>    >>>>>>  Mar 16,
>>>>    >>>>>>>>    2014 at
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>>       12:44 PM,
>>>>    >>>>>>>>>>>        Joe
>>>>    >>>>>>>>>>>>>          
> Schaefer
>>>>    >>>>>>>>>>      
>>>   <jo...@yahoo.com>wrote:
>>>> 
>>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>> 
>>>>    >>>         As
>>>>    >>>>>>  it so
>>>>    >>>>>>>>    happens I
>>>>    >>>>>>>>>      am
>>>>    >>>>>>>>>>>        interested
>>>>    >>>>>>>>>>>>         in
>>>>    >>>>>>>>>>>>>          
> working 
>>  on
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      supporting
>>>>    >>>>>>  thrift's
>>>>    >>>>>>>>    use
>>>>    >>>>>>>>>      case as
>>>>    >>>>>>>>>>       a
>>>>    >>>>>>>>>>>>         
> potential
>>>>    >>>>>>>>>>>>>          
> user of
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   the
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      Apache
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           CMS.
>>>>    >>>>>>  While the CMS
>>>>    >>>>>>>>    works
>>>>    >>>>>>>>>      well
>>>>    >>>>>>>>>>       for
>>>>    >>>>>>>>>>>>         massive
>>>>    >>>>>>>>>>>>>          
> projects
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   there
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      are
>>>>    >>>>>>  things it
>>>>    >>>>>>>>    could do
>>>>    >>>>>>>>>>       better at
>>>>    >>>>>>>>>>>>         
> supporting
>>>>    >>>>>>>>>>>>>          for
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   more
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      moderate
>>>>    >>>>>>  sized sites
>>>>    >>>>>>>>    like
>>>>    >>>>>>>>>>>        thrift's.
>>>>    >>>>>>  I'd
>>>>    >>>>>>>>    therefore
>>>>    >>>>>>>>>      like
>>>>    >>>>>>>>>>       to
>>>>    >>>>>>>>>>>        engage
>>>>    >>>>>>>>>>>>         you
>>>>    >>>>>>>>>>>>>          
> folks in 
>>  a
>>>>    >>>>>>>>>>>>>>>>
>>>>    >>> brainstorming session
>>>>    >>>>>>  about what
>>>>    >>>>>>>>    sorts of
>>>>    >>>>>>>>>
>>>>    >>>>>>>>>>       features
>>>>    >>>>>>>>>>>        you
>>>>    >>>>>>>>>>>>         want
>>>>    >>>>>>>>>>>>>          for 
> your
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   site
>>>>    
>>>>>>>>>>>>>>>>>>   
>>        
>>>      and
>>>>    
>>>>>>>>>>>>>>>>>>>>      
> 
>>>           to find
>>>>    >>>>>>  simple ways of
>>>>    >>>>>>>>
>>>>    >>>>>>>>>>       supporting
>>>>    >>>>>>>>>>>        those
>>>>    >>>>>>>>>>>>>          
> features 
>>  for
>>>>    >>>>>>>>>>>>>>>>  
>     
>>      
>>>   you.
>>>>    >>>>>>  Thanks.
>>>>    >
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
FWIW until you get accustomed to the CMS bookmarklet/webgui
stuff I recommend downloading http://s.apache.org/cms-cli 
and installing the CPAN prereqs for it on your local host.
That way you can publish, which is a separate step involving
the script, while you are working on the svn tree.  If you
name the script publish.pl invoking it as 

% ./publish.pl thrift

will get you where you need to be.  You might even consider 
setting up an svn external to pull that file out of svn and
place it at the base of your cms tree for committers to use.



> On Tuesday, March 25, 2014 9:42 AM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Done Jake thanks!  One remark for Roger...
> 
> The file extension used for stuff in content/test/ really doesn't matter as 
> far as the build goes.  What you need to do is supply a 'lang=text' 
> argument to each snippet that is not a native markdown file; the build will 
> automatically strip file extensions off the internal links in the markdown 
> sources so httpd will do the right thing and resolve the extension via the 
> MultiViews feature.
> 
> In the case of test/ThriftTest.thrift, I'd recommend changing the extension 
> to .txt or even .md (in the content/test/ tree on the site sources in svn, not 
> the code sources in git) so the CMS's webgui will fetch you a decent editor 
> for that file.  Otherwise again the extension doesn't matter- the build will 
> always convert it to html.
> 
> 
> 
>>  On Tuesday, March 25, 2014 9:34 AM, Jake Farrell 
> <jf...@apache.org> wrote:
>>  > Hey Joe
>>  Thanks for making the additions to the Apache CMS to meet our use case. 
> I'm
>>  not seeing any blockers at the moment, lets cut over and we can fix any
>>  edge cases if needed
>> 
>>  -Jake
>> 
>> 
>> 
>>  On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer 
>>  <jo...@yahoo.com>wrote:
>> 
>>>   Done.  Anything else we need to look at before going live?
>>> 
>>>   Sent from my iPhone
>>> 
>>>   > On Mar 23, 2014, at 3:53 PM, Roger Meier 
>>  <ro...@bufferoverflow.ch>
>>>   wrote:
>>>   >
>>>   > any idea how to fix this URL:
>>>   > http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>   > we need to keep the filename for working links within the
>>>   > test/README.md file.
>>>   >
>>>   > What about a footer for docs genertated from source tree?
>>>   > [snippet:path=test/README.md, footer=1]
>>>   >
>>>   > I added the following snippet to content/test/index.md:
>>>   > ---SNIP---
>>>   > This page was generated from Apache Thrift's **source tree 
> docs**:
>>>   > [test/README.md](
>>> 
>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>   )
>>>   > ---SNIP---
>>>   >
>>>   > would be great to get this generated into the page via snippet.
>>>   >
>>>   > -roger
>>>   >
>>>   >
>>>   >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>   >> The CMS codebase as well as the thrift build system
>>>   >> already supports it Roger, someone just needs to create
>>>   >> the files in the content tree that point at the source
>>>   >> files in the git repo.  If you want to script this process
>>>   >> in scripting language du jour, go for it, but I cannot
>>>   >> justify spending contractor time doing this work for the
>>>   >> community's behalf as it is unlikely to be needed 
> elsewhere.
>>>   >> I would think you only need the script to run when some
>>>   >> path to a README.md file changes in the thrift.git tree,
>>>   >> so it doesn't need to be incorporated into each site 
> build.
>>>   >>
>>>   >>
>>>   >>
>>>   >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <
>>>   roger@bufferoverflow.ch> wrote:
>>>   >>>> Hi
>>>   >>>
>>>   >>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>   >>>>  Hey Joe
>>>   >>>>  Reviewing the staging site it looks like its almost 
> 99% 
>>  there other
>>>   than
>>>   >>>>  some styling within the code snippets. I'm good 
> if we 
>>  want to cut
>>>   over
>>>   >>> to
>>>   >>>>  using this and then work on the additional features 
> that 
>>  had been
>>>   mentioned
>>>   >>>>  afterwords. Any objections to cutting over?
>>>   >>> I would really like to see this automatic README.md 
> includes 
>>  from
>>>   source
>>>   >>> tree, to have a real additional feature beside of what we 
> 
>>  already have
>>>   >>> today.
>>>   >>>
>>>   >>> I'm absolutely with you.
>>>   >>> Apache projects shall use other Apache projects whenever 
>>  possible.
>>>   >>>
>>>   >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>>   >>> <jo...@yahoo.com>wrote:
>>>   >>>>
>>>   >>>>>  May I suggest a script that creates files in 
> content/
>>>   >>>>>  containing a single line
>>>   >>>>>
>>>   >>>>>  [snippet:path=...]
>>>   >>> this sounds like a plan
>>>   >>>
>>>   >>>>>
>>>   >>>>>  (with no 'lang' argument) that lets the 
> CMS 
>>  pull raw content
>>>   >>> from
>>>   >>>>>  thrift.git
>>>   >>>>>  and add it directly to the built pages.  That 
> way you 
>>  only need to
>>>   run
>>>   >>> the
>>>   >>>>>  script that generates these files when a path 
> changes 
>>  in your
>>>   >>> thrift.git
>>>   >>>>>  repo.
>>>   >>> What I had in mind is a automatic search of README.md 
> files 
>>  across the
>>>   >>> source tree and generate the site with these 
> automatically.
>>>   >>> Kind of a central controller that maps all the URL's.
>>>   >>> no additional work when a new README.md file is added.
>>>   >>> however, a script can do this as interim soultion.
>>>   >>>>>
>>>   >>>>>  You can commit directly to the cms svn tree or 
> via 
>>  the webgui which
>>>   >>> does
>>>   >>>>>  the same thing.
>>>   >>> Great!
>>>   >>>
>>>   >>> What about local preview when doing perl modifications?
>>>   >>>
>>>   >>> -roger
>>>   >>>
>>>   >>>
>>>   >>>>>
>>>   >>>>>
>>>   >>>>>>  On Saturday, March 22, 2014 4:20 PM, Roger 
> Meier 
>>  <
>>>   >>>>>  roger@bufferoverflow.ch> wrote:
>>>   >>>>>>>  I still see some issues and still miss 
> to 
>>  feature mentioned.
>>>   >>>>>>  Now we have nonoc.ws and I'm able to 
> hack 
>>  this a bit.
>>>   >>>>>>
>>>   >>>>>>  We had no real big issue, the thing I missed 
> was 
>>  the code snippet
>>>   >>> thing
>>>   >>>>>>  and this is in on nanoc.ws and now also on 
> Apache 
>>  CMS.
>>>   >>>>>>
>>>   >>>>>>  The thing we really need is the 
> documentation 
>>  located within source
>>>   >>> code
>>>   >>>>>>  integrated on the web site.
>>>   >>>>>>
>>>   >>>>>>  most hosting platforms do render README.md 
> and 
>>  that's why lot
>>>   >>> of doc
>>>   >>>>>>  will stay within the code and we should 
> benefit 
>>  as well by
>>>   >>> rendering
>>>   >>>>>>  that to the web site and enhance the 
>>  documentation very easily.
>>>   >>>>>>
>>>   >>>>>>  I would like to render the 41 README.md 
> files to 
>>  with the following
>>>   >>>>>>  pattern, that's a must have before 
> switching 
>>  to another CMS.
>>>   >>>>>>
>>>   >>>>>>  test/README.md => thrift.apache.org/test
>>>   >>>>>>  test/STATUS.md => 
>>  thrift.apache.org/test/status
>>>   >>>>>>  test/keys/README.md => 
>>  thrift.apache.org/test/keys
>>>   >>>>>>  lib/<lang>/README.md => 
>>  thrift.apache.org/lib/<lang>
>>>   >>>>>>  lib/<lang>/test/README.md =>
>>>   >>> thrift.apache.org/lib/<lang>/test
>>>   >>>>>>  lib/<lang>/examples/README.md =>
>>>   >>>>>>  thrift.apache.org/lib/<lang>/examples
>>>   >>>>>>  compiler/cpp/README.md => 
>>  thrift.apache.org/compiler
>>>   >>>>>>  debian/README.md => 
> thrift.apache.org/debian
>>>   >>>>>>  contrib/<topic>/README.md =>
>>>   >>> thrift.apache.org/<topic>
>>>   >>>>>>
>>>   >>>>>>  CPP tutorial seems to be broken on staging.
>>>   >>>>>>
>>>   >>>>>>  Do you commit to
>>>   >>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>   >>>>>>  or is it web gui only?
>>>   >>>>>>
>>>   >>>>>>  How do you generate the site on your local 
>>  machine?
>>>   >>>>>>
>>>   >>>>>>
>>>   >>>>>>  Should I reactivate my perl or do we stay 
> with 
>>  ruby?
>>>   >>>>>>  Committers and contributors, what do you 
> think?
>>>   >>>>>>
>>>   >>>>>>
>>>   >>>>>>  all the best
>>>   >>>>>>  -roger
>>>   >>>>>>
>>>   >>>>>>
>>>   >>>>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
>>>   >>>>>>>
>>>   >>>>>>>
>>>   >>>>>>>    Ok I've now done the basic 
> necessities 
>>  involved in
>>>   >>> porting
>>>   >>>>>>>    the site over.  Links have been 
> adjusted, 
>>  templates ported,
>>>   >>> files
>>>   >>>>>  created,
>>>   >>>>>>>    snippet feature activated.  At this 
> point 
>>  I'm happy to
>>>   >>> declare
>>>   >>>>>>>    victory and migrate the thrift live 
> site 
>>  over, as anything
>>>   >>> broken that
>>>   >>>>>>>    still remains can be dealt with on a 
>>  per-page basis with the
>>>   >>>>>  bookmarklet.
>>>   >>>>>>>
>>>   >>>>>>>
>>>   >>>>>>>
>>>   >>>>>>>>    On Thursday, March 20, 2014 11:19 
> AM, 
>>  Joe Schaefer
>>>   >>>>>>  <jo...@yahoo.com> wrote:
>>>   >>>>>>>>>    Modulo some bizarre content 
>>  truncation out of
>>>   >>> git-wip-us.apache.org
>>>   >>>>>>>>    the snippet support is now active. 
> At 
>>  this point I think
>>>   >>> all the build
>>>   >>>>>>>>    support you need in this project 
> to 
>>  support every type of
>>>   >>>>>  brainstorming
>>>   >>>>>>>>    activity we've discussed is 
> now 
>>  there, so it's
>>>   >>> just up to you
>>>   >>>>>>  guys to
>>>   >>>>>>>>    now familiarize yourselves with 
> the 
>>  build technology and
>>>   >>> how to apply
>>>   >>>>>>>>    it to your needs.  The site builds 
> with 
>>  snippet support
>>>   >>> are running
>>>   >>>>>>  around
>>>   >>>>>>>>    10 seconds, which is to be 
> expected 
>>  with the network
>>>   >>> interactions
>>>   >>>>>>  involved.
>>>   >>>>>>>>
>>>   >>>>>>>>    I'm always willing to answer 
> any 
>>  questions that come
>>>   >>> up in the
>>>   >>>>>>  interim,
>>>   >>>>>>>>    but I wish you guys the best of 
> luck in 
>>  the remaining
>>>   >>> porting work to
>>>   >>>>>>  be done.
>>>   >>>>>>>>    All I see really are some links 
> that 
>>  need to have the
>>>   >>> trailing slashes
>>>   >>>>>>  removed
>>>   >>>>>>>>    and whatever <%= %> template 
> 
>>  constructs that remain
>>>   >>> need to be
>>>   >>>>>>  ported to
>>>   >>>>>>>>    django.  So it should be smooth 
>>  sailing, but as I said if
>>>   >>> you hit any
>>>   >>>>>>  snags
>>>   >>>>>>>>    holler.  I'd really like to 
> see the 
>>  live site tech
>>>   >>> switched over to
>>>   >>>>>>  the cms
>>>   >>>>>>>>    stuff before Apachecon ends in 
> early 
>>  April, hint hint.
>>>   >>>>>>>>
>>>   >>>>>>>>
>>>   >>>>>>>>
>>>   >>>>>>>>
>>>   >>>>>>>>
>>>   >>>>>>>>>>      On Wednesday, March 19, 
> 2014 
>>  10:41 PM, Joe Schaefer
>>>   >>>>>>>>>    <jo...@yahoo.com> 
> 
>>  wrote:
>>>   >>>>>>>>>      > While I don't yet 
> know 
>>  the url magic to
>>>   >>> support branches
>>>   >>>>>>  and tags
>>>   >>>>>>>>    in git,
>>>   >>>>>>>>>      I can say that the snippet 
>>  support is ready to play
>>>   >>> with.  I
>>>   >>>>>>  suggest just
>>>   >>>>>>>>>      focusing on the /index.md 
> page 
>>  first to see how it
>>>   >>> works in
>>>   >>>>>>  practice
>>>   >>>>>>>>    because
>>>   >>>>>>>>>      once it's fully enabled 
> the 
>>  build will break
>>>   >>> until all the
>>>   >>>>>>  snippet
>>>   >>>>>>>>    sources
>>>   >>>>>>>>>      have been altered to conform 
> with 
>>  the new style.
>>>   >>>>>>>>>
>>>   >>>>>>>>>      To turn it on for index.md 
>>  testing, there are a
>>>   >>> couple of things
>>>   >>>>>>  that need
>>>   >>>>>>>>    to
>>>   >>>>>>>>>      happen. First the 
> [snippet:...] 
>>  marker should be
>>>   >>> edited to be
>>>   >>>>>>>>    [XXXsnippet:...]
>>>   >>>>>>>>>      to enable testing without 
>>  breaking the build.
>>>   >>> Second each marker
>>>   >>>>>>  contains
>>>   >>>>>>>>    a
>>>   >>>>>>>>>      "token" argument 
>>  instead of line numbers
>>>   >>> for more
>>>   >>>>>>  stability under
>>>   >>>>>>>>
>>>   >>>>>>>>>      edits to the source code.  
> The 
>>  token argument is an
>>>   >>> arbitrary
>>>   >>>>>>  string that
>>>   >>>>>>>>    is
>>>   >>>>>>>>>      used to denote the 
> boundaries of 
>>  the snippet within
>>>   >>> the source
>>>   >>>>>>  code.
>>>   >>>>>>>>>       ASF::Value::Snippet will 
> pull 
>>  out the lines from
>>>   >>> the source file
>>>   >>>>>>  between
>>>   >>>>>>>>    the
>>>   >>>>>>>>>      lines that contain the token 
> 
>>  argument and format
>>>   >>> them as a code
>>>   >>>>>>  snippet
>>>   >>>>>>>>    embedded
>>>   >>>>>>>>>      into markdown. To get 
> started 
>>  I'll copy over
>>>   >>> the code
>>>   >>>>>>  highlighting css
>>>   >>>>>>>>    from
>>>   >>>>>>>>>      www.apache.org but note that 
> this 
>>  is all based on
>>>   >>> python pygments
>>>   >>>>>>  and there
>>>   >>>>>>>>    are
>>>   >>>>>>>>>      a variety of online css 
> files to 
>>  choose from if
>>>   >>> this one is not
>>>   >>>>>>  to the
>>>   >>>>>>>>>      group's liking.
>>>   >>>>>>>>>
>>>   >>>>>>>>>
>>>   >>>>>>>>>
>>>   >>>>>>>>>>       On Wednesday, March 19, 
> 2014 
>>  4:16 PM, Joe
>>>   >>> Schaefer
>>>   >>>>>>>>>      
> <jo...@yahoo.com> 
>>  wrote:
>>>   >>>>>>>>>>       > Sorry I need to 
> clarify 
>>  with an example:
>>>   >>> look at
>>>   >>>>>>>>>>      
>>  http://thrift.staging.apache.org/tutorial/
>>>   >>> versus
>>>   >>> http://thrift.staging.apache.org/tutorial.html.  The
>>>   >>>>>>>>>>       former is generated 
> from
>>>   >>> content/tutorial/index.html
>>>   >>>>>>>>>>       and the latter from 
>>  content/tutorial.md.  The
>>>   >>> latter file
>>>   >>>>>>>>>>       needs to be removed 
> from the 
>>  tree now that
>>>   >>> it's content
>>>   >>>>>>>>>>       has been ported to
>>>   >>> content/tutorial/index.html.  This
>>>   >>>>>>>>>>       uses django template 
>>  inheritance to maintain
>>>   >>> simplicity.
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>       Other directories that 
>>  follow a similar
>>>   >>> pattern should
>>>   >>>>>>>>>>       also be ported in the 
> same 
>>  fashion.
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        On Wednesday, 
> March 19, 
>>  2014 9:46 AM, Joe
>>>   >>> Schaefer
>>>   >>>>>>>>>>      
>>  <jo...@yahoo.com> wrote:
>>>   >>>>>>>>>>>        > If 
> someone's 
>>  looking for a way
>>>   >>> to help with
>>>   >>>>>>  the porting
>>>   >>>>>>>>>>>        effort, consider 
>>  tackling the creation of
>>>   >>> an index.html
>>>   >>>>>>>>>>>        page in each 
> subdir of 
>>  the content/ tree
>>>   >>> (other than
>>>   >>>>>>  the
>>>   >>>>>>>>>>>        base which has an 
>>  /index.md).  The
>>>   >>> contents of the file
>>>   >>>>>>>>>>>        should be just
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>        {% include 
>>  'default' %}
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>        (see the docs dir 
> for 
>>  an example page
>>>   >>> that can be
>>>   >>>>>>  copied)
>>>   >>>>>>>>>>>        and the build 
> system 
>>  will take care of
>>>   >>> generating the
>>>   >>>>>>  page
>>>   >>>>>>>>>>>        in a consistent 
> fashion 
>>  with the rest of
>>>   >>> the site.
>>>   >>>>>>  Once
>>>   >>>>>>>>>>>        that is done there 
> are 
>>  a lot of pages
>>>   >>> that function
>>>   >>>>>>  like
>>>   >>>>>>>>>>>        index pages but 
> are 
>>  written in markdown
>>>   >>> that can be
>>>   >>>>>>  deleted,
>>>   >>>>>>>>>>>        like docs.md and 
> its 
>>  ilk.  Nanoc
>>>   >>> transforms that file
>>>   >>>>>>  into
>>>   >>>>>>>>>>>        /docs/index.html 
> but 
>>  that's kinda
>>>   >>> crufty and not
>>>   >>>>>>  supported
>>>   >>>>>>>>>>>        by the CMS, which 
> only 
>>  lets you alter
>>>   >>> file extensions
>>>   >>>>>>  not paths.
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>>         On Wednesday, 
> 
>>  March 19, 2014 8:54
>>>   >>> AM, Joe Schaefer
>>>   >>>>>>>>>>>        
>>  <jo...@yahoo.com> wrote:
>>>   >>>>>>>>>>>>         > I just 
>>  pencilled in snippet
>>>   >>> preprocessing
>>>   >>>>>>  support into
>>>   >>>>>>>>>>>>         the thrift 
>>  builds.  Once Jake and I
>>>   >>> have settled
>>>   >>>>>>  on the
>>>   >>>>>>>>>>>>         feature set 
> of 
>>  ASF::Value::Snippet,
>>>   >>> and we have
>>>   >>>>>>  ported
>>>   >>>>>>>>>>>>         the snippet 
>>  calling text within the
>>>   >>> markdown pages
>>>   >>>>>>>>>>>>         to the new 
> format, 
>>  things will just
>>>   >>> work (knock on
>>>   >>>>>>  wood).
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          On 
> Wednesday, 
>>  March 19, 2014
>>>   >>> 6:48 AM, Joseph
>>>   >>>>>>  Schaefer
>>>   >>>>>>>>>>>>        
>>  <jo...@yahoo.com>
>>>   >>> wrote:
>>>   >>>>>>>>>>>>>          > 
> Sure I 
>>  understand that
>>>   >>> need.  If
>>>   >>>>>>  there's a way
>>>   >>>>>>>>    of
>>>   >>>>>>>>>>       pulling the
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>>         document
>>>   >>>>>>>>>>>>>          sources 
>>  directly from the web I
>>>   >>> can parse the
>>>   >>>>>>  content
>>>   >>>>>>>>    to
>>>   >>>>>>>>>      look for
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        snippet
>>>   >>>>>>>>>>>>>          markers 
> and 
>>  make those
>>>   >>> available to the
>>>   >>>>>>  template
>>>   >>>>>>>>    system.
>>>   >>>>>>>>>>       That's
>>>   >>>>>>>>>>>        pretty
>>>   >>>>>>>>>>>>         much
>>>   >>>>>>>>>>>>>          how 
>>  www.apache.org is
>>>   >>> generated.
>>>   >>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          Sent 
> from my 
>>  iPhone
>>>   >>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>           On 
> Mar 
>>  19, 2014, at 5:28
>>>   >>> AM, Henrique
>>>   >>>>>>  Mendonça
>>>   >>>>>>>>>>>>        
>>  <he...@apache.org>
>>>   >>>>>>>>>>>>>          wrote:
>>>   >>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>           Hi 
> Joe,
>>>   >>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>           
> Thanks 
>>  for your effort. I
>>>   >>> just wanted to
>>>   >>>>>>  add that
>>>   >>>>>>>>    the
>>>   >>>>>>>>>      code
>>>   >>>>>>>>>>>        snippets
>>>   >>>>>>>>>>>>         are a
>>>   >>>>>>>>>>>>>>           
> crucial 
>>  feature for this
>>>   >>> project, which
>>>   >>>>>>  has way
>>>   >>>>>>>>    more
>>>   >>>>>>>>>      target
>>>   >>>>>>>>>>>        languages
>>>   >>>>>>>>>>>>         than
>>>   >>>>>>>>>>>>>>           
> active 
>>  contributors. In
>>>   >>> our case,
>>>   >>>>>>  reducing manual
>>>   >>>>>>>>>>       maintenance
>>>   >>>>>>>>>>>        costs is
>>>   >>>>>>>>>>>>         much
>>>   >>>>>>>>>>>>>>           
> more 
>>  important than the
>>>   >>> total site build
>>>   >>>>>>  time.
>>>   >>>>>>>>    Perhaps
>>>   >>>>>>>>>      we
>>>   >>>>>>>>>>       can
>>>   >>>>>>>>>>>        also
>>>   >>>>>>>>>>>>         solve
>>>   >>>>>>>>>>>>>>           
> this in 
>>  the CMS, though.
>>>   >>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>           - 
>>  Henrique
>>>   >>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>           
> On 
>>  19 March 2014
>>>   >>> 03:17, Joe Schaefer
>>>   >>>>>>>>>>>>        
>>  <jo...@yahoo.com>
>>>   >>>>>>>>>>>>>          wrote:
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>           
> A 
>>  couple more thoughts
>>>   >>> regarding the
>>>   >>>>>>>>    background on
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       CMS...
>>>   >>>>>>>>>>>>>>>           
> the 
>>  bulk of the focus
>>>   >>> of the CMS up
>>>   >>>>>>  until now
>>>   >>>>>>>>    has
>>>   >>>>>>>>>      been
>>>   >>>>>>>>>>       to
>>>   >>>>>>>>>>>>>>>          
>>  support really big
>>>   >>> sites like maven
>>>   >>>>>>  and
>>>   >>>>>>>>    openoffice,
>>>   >>>>>>>>>      both
>>>   >>>>>>>>>>       of
>>>   >>>>>>>>>>>>>>>          
>>  which have websites
>>>   >>> well over 5GB
>>>   >>>>>>  worth of
>>>   >>>>>>>>    text
>>>   >>>>>>>>>      files.
>>>   >>>>>>>>>>       The
>>>   >>>>>>>>>>>>>>>          
>>  build system was
>>>   >>> hollowed out and
>>>   >>>>>>  revamped to
>>>   >>>>>>>>>      support
>>>   >>>>>>>>>>>        external
>>>   >>>>>>>>>>>>>>>          
>>  builds in other
>>>   >>> programming
>>>   >>>>>>  languages, as well
>>>   >>>>>>>>    as
>>>   >>>>>>>>>>       scaling up
>>>   >>>>>>>>>>>>>>>           
> the 
>>  perl builds to
>>>   >>> provide about 8
>>>   >>>>>>  child
>>>   >>>>>>>>    processes
>>>   >>>>>>>>>      that
>>>   >>>>>>>>>>       build
>>>   >>>>>>>>>>>>>>>           
> the 
>>  site in parallel
>>>   >>> by default.
>>>   >>>>>>  Full site
>>>   >>>>>>>>    build
>>>   >>>>>>>>>      times
>>>   >>>>>>>>>>       for
>>>   >>>>>>>>>>>>>>>          
>>  openoffice went from
>>>   >>> over 30 minutes
>>>   >>>>>>  to
>>>   >>>>>>>>    between 5
>>>   >>>>>>>>>      to 10
>>>   >>>>>>>>>>>        minutes
>>>   >>>>>>>>>>>>>>>          
>>  depending on disk
>>>   >>> activity, which
>>>   >>>>>>  made
>>>   >>>>>>>>>      experimentation
>>>   >>>>>>>>>>       with
>>>   >>>>>>>>>>>>         site-wide
>>>   >>>>>>>>>>>>>>>          
>>  changes feasible on a
>>>   >>> reasonable
>>>   >>>>>>  timeframe.
>>>   >>>>>>>>    At
>>>   >>>>>>>>>      first
>>>   >>>>>>>>>>       the
>>>   >>>>>>>>>>>        project
>>>   >>>>>>>>>>>>         was
>>>   >>>>>>>>>>>>>          in
>>>   >>>>>>>>>>>>>>>           
> the 
>>  habit of running
>>>   >>> the builds
>>>   >>>>>>  locally before
>>>   >>>>>>>>
>>>   >>>>>>>>>      checking
>>>   >>>>>>>>>>       in
>>>   >>>>>>>>>>>        their
>>>   >>>>>>>>>>>>>          changes
>>>   >>>>>>>>>>>>>>>          
>>  because the delay in
>>>   >>> feedback
>>>   >>>>>>  post-commit was
>>>   >>>>>>>>>>       unreasonable,
>>>   >>>>>>>>>>>        but
>>>   >>>>>>>>>>>>         with
>>>   >>>>>>>>>>>>>          smart
>>>   >>>>>>>>>>>>>>>           
> use 
>>  of SSI the were
>>>   >>> able to cut down
>>>   >>>>>>  on the
>>>   >>>>>>>>    number
>>>   >>>>>>>>>      of
>>>   >>>>>>>>>>       changes
>>>   >>>>>>>>>>>        that
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          required
>>>   >>>>>>>>>>>>>>>           
> full 
>>  site builds and
>>>   >>> hence no longer
>>>   >>>>>>  bother
>>>   >>>>>>>>    with
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       whole
>>>   >>>>>>>>>>>>         pre-build
>>>   >>>>>>>>>>>>>          mumbo
>>>   >>>>>>>>>>>>>>>          
>>  jumbo before checking
>>>   >>> in changes.
>>>   >>>>>>  The CMS is
>>>   >>>>>>>>>      designed
>>>   >>>>>>>>>>       to
>>>   >>>>>>>>>>>        only
>>>   >>>>>>>>>>>>         build
>>>   >>>>>>>>>>>>>          pages
>>>   >>>>>>>>>>>>>>>           
> that 
>>  were altered, and
>>>   >>> if you just
>>>   >>>>>>  edit a page
>>>   >>>>>>>>    or
>>>   >>>>>>>>>      two
>>>   >>>>>>>>>>       only
>>>   >>>>>>>>>>>        those
>>>   >>>>>>>>>>>>         pages
>>>   >>>>>>>>>>>>>          and
>>>   >>>>>>>>>>>>>>>           
> the 
>>  pages that depend
>>>   >>> on them will
>>>   >>>>>>  be built.
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>           
> Now 
>>  that I've
>>>   >>> turned my
>>>   >>>>>>  attention to
>>>   >>>>>>>>    thrift,
>>>   >>>>>>>>>      there
>>>   >>>>>>>>>>       are
>>>   >>>>>>>>>>>        several
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          aspects
>>>   >>>>>>>>>>>>>>>           
> that 
>>  are better off
>>>   >>> being retuned
>>>   >>>>>>  based on the
>>>   >>>>>>>>
>>>   >>>>>>>>>      modest
>>>   >>>>>>>>>>       size of
>>>   >>>>>>>>>>>        the
>>>   >>>>>>>>>>>>         site.
>>>   >>>>>>>>>>>>>>>          
>>  First of all you have
>>>   >>> a sitemap url
>>>   >>>>>>  that lists
>>>   >>>>>>>>    all
>>>   >>>>>>>>>      of
>>>   >>>>>>>>>>       your
>>>   >>>>>>>>>>>>>          
>>  markdown-based
>>>   >>>>>>>>>>>>>>>          
>>  pages, which would be
>>>   >>> a nonstarter
>>>   >>>>>>  for a site
>>>   >>>>>>>>    like
>>>   >>>>>>>>>>>        openoffice.
>>>   >>>>>>>>>>>>         The
>>>   >>>>>>>>>>>>>>>          
>>  implications of the
>>>   >>> sitemap url are
>>>   >>>>>>  that every
>>>   >>>>>>>>    page
>>>   >>>>>>>>>
>>>   >>>>>>>>>>       needs to
>>>   >>>>>>>>>>>        be
>>>   >>>>>>>>>>>>         built
>>>   >>>>>>>>>>>>>          in
>>>   >>>>>>>>>>>>>>>          
>>  memory just to
>>>   >>> generate that page,
>>>   >>>>>>  which leads
>>>   >>>>>>>>    to a
>>>   >>>>>>>>>      lot
>>>   >>>>>>>>>>       of
>>>   >>>>>>>>>>>>         redundancy
>>>   >>>>>>>>>>>>>          in a
>>>   >>>>>>>>>>>>>>>          
>>  build system designed
>>>   >>> to run as
>>>   >>>>>>  forked child
>>>   >>>>>>>>>      processes.
>>>   >>>>>>>>>>       We
>>>   >>>>>>>>>>>        can do
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          
> better...
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>          
>>  I've done two
>>>   >>> things to make
>>>   >>>>>>  this work
>>>   >>>>>>>>    well-
>>>   >>>>>>>>>      first I
>>>   >>>>>>>>>>       made
>>>   >>>>>>>>>>>        the
>>>   >>>>>>>>>>>>>          number 
> of
>>>   >>>>>>>>>>>>>>>          
>>  child processes
>>>   >>> "aka
>>>   >>>>>>  runners"
>>>   >>>>>>>>    tunable on
>>>   >>>>>>>>>      a
>>>   >>>>>>>>>>>        per-project
>>>   >>>>>>>>>>>>         basis,
>>>   >>>>>>>>>>>>>          and 
> since the
>>>   >>>>>>>>>>>>>>>          
>>  sitemap is going to
>>>   >>> build every page
>>>   >>>>>>  anyway as
>>>   >>>>>>>>    the
>>>   >>>>>>>>>>       slowest
>>>   >>>>>>>>>>>        page to
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          build, I
>>>   >>>>>>>>>>>>>>>          
>>  memoized the main view
>>>   >>> that builds
>>>   >>>>>>  the
>>>   >>>>>>>>    markdown
>>>   >>>>>>>>>      pages
>>>   >>>>>>>>>>       for
>>>   >>>>>>>>>>>        thrift.
>>>   >>>>>>>>>>>>         The
>>>   >>>>>>>>>>>>>          best
>>>   >>>>>>>>>>>>>>>          
>>  results are when
>>>   >>> there's only
>>>   >>>>>>  one runner
>>>   >>>>>>>>    so we
>>>   >>>>>>>>>      get
>>>   >>>>>>>>>>       the
>>>   >>>>>>>>>>>        full
>>>   >>>>>>>>>>>>         benefit
>>>   >>>>>>>>>>>>>          of
>>>   >>>>>>>>>>>>>>>          
>>  memoization: typical
>>>   >>> site build
>>>   >>>>>>  times are
>>>   >>>>>>>>>      consistently
>>>   >>>>>>>>>>       under
>>>   >>>>>>>>>>>        2
>>>   >>>>>>>>>>>>         seconds
>>>   >>>>>>>>>>>>>          now.
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>          
>>  You'll appreciate
>>>   >>> why I am such
>>>   >>>>>>  a
>>>   >>>>>>>>    performance
>>>   >>>>>>>>>>       stickler
>>>   >>>>>>>>>>>        for the
>>>   >>>>>>>>>>>>         CMS
>>>   >>>>>>>>>>>>>          when
>>>   >>>>>>>>>>>>>>>           
> you 
>>  start using the
>>>   >>> bookmarklet,
>>>   >>>>>>  since builds
>>>   >>>>>>>>    are
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       only
>>>   >>>>>>>>>>>>         asynchronous
>>>   >>>>>>>>>>>>>>>           
> part 
>>  of the process
>>>   >>> from making a
>>>   >>>>>>  change to a
>>>   >>>>>>>>    page
>>>   >>>>>>>>>      and
>>>   >>>>>>>>>>>        publishing
>>>   >>>>>>>>>>>>         the
>>>   >>>>>>>>>>>>>>>          
>>  results.  Ideally when
>>>   >>> the system is
>>>   >>>>>>  working
>>>   >>>>>>>>    well
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       builds
>>>   >>>>>>>>>>>>         happen
>>>   >>>>>>>>>>>>>          before
>>>   >>>>>>>>>>>>>>>           
> you 
>>  have time to go
>>>   >>> looking for
>>>   >>>>>>  them, but you
>>>   >>>>>>>>    do
>>>   >>>>>>>>>      need to
>>>   >>>>>>>>>>       be
>>>   >>>>>>>>>>>>         mindful of
>>>   >>>>>>>>>>>>>          not
>>>   >>>>>>>>>>>>>>>          
>>  publishing before the
>>>   >>> built pages
>>>   >>>>>>  have been
>>>   >>>>>>>>>      committed
>>>   >>>>>>>>>>       back to
>>>   >>>>>>>>>>>        svn
>>>   >>>>>>>>>>>>         by
>>>   >>>>>>>>>>>>>>>          
>>  buildbot.
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>      
>     
>>  On Monday, March
>>>   >>> 17, 2014 11:59
>>>   >>>>>>  PM, Joe
>>>   >>>>>>>>>      Schaefer
>>>   >>>>>>>>>>>>>          
>>  <jo...@yahoo.com>
>>>   >>>>>>>>>>>>>>>          
>>  wrote:
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     Ok there's
>>>   >>> enough of an
>>>   >>>>>>  idea about
>>>   >>>>>>>>    how
>>>   >>>>>>>>>      to
>>>   >>>>>>>>>>       port
>>>   >>>>>>>>>>>        the
>>>   >>>>>>>>>>>>         rest of
>>>   >>>>>>>>>>>>>          the 
>>  site's
>>>   >>>>>>>>>>>>>>>>      
>     
>>  pages over based
>>>   >>> on the porting
>>>   >>>>>>  work
>>>   >>>>>>>>    I've
>>>   >>>>>>>>>>       already
>>>   >>>>>>>>>>>        done
>>>   >>>>>>>>>>>>         that
>>>   >>>>>>>>>>>>>          it's 
> time
>>>   >>>>>>>>>>>>>>>>      
>     
>>  for me to step
>>>   >>> back and let you
>>>   >>>>>>  guys catch
>>>   >>>>>>>>    up.
>>>   >>>>>>>>>
>>>   >>>>>>>>>>       Basically
>>>   >>>>>>>>>>>        the
>>>   >>>>>>>>>>>>         idea
>>>   >>>>>>>>>>>>>          is
>>>   >>>>>>>>>>>>>>>           
> that 
>>  while
>>>   >>>>>>>>>>>>>>>>      
>     
>>  there is
>>>   >>> templating support in
>>>   >>>>>>  the
>>>   >>>>>>>>    markdown
>>>   >>>>>>>>>      sources,
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        it's
>>>   >>>>>>>>>>>>>          fairly 
>>  limited
>>>   >>>>>>>>>>>>>>>>      
>     
>>  compared to what
>>>   >>> nanoc offers,
>>>   >>>>>>  but instead
>>>   >>>>>>>>    of
>>>   >>>>>>>>>>       writing a
>>>   >>>>>>>>>>>        lot of
>>>   >>>>>>>>>>>>
>>>   >>>>>>>>>>>>>          complex
>>>   >>>>>>>>>>>>>>>          
>>  template
>>>   >>>>>>>>>>>>>>>>      
>     
>>  code into your
>>>   >>> sources, with the
>>>   >>>>>>  cms you
>>>   >>>>>>>>    just
>>>   >>>>>>>>>      add
>>>   >>>>>>>>>>       code to
>>>   >>>>>>>>>>>
>>>   >>>>>>>>>>>>>          
>>  lib/view.pmand/or
>>>   >>>>>>>>>>>>>>>>      
>     
>>  lib/path.pm to
>>>   >>> keep the document
>>>   >>>>>>  sources
>>>   >>>>>>>>    simple
>>>   >>>>>>>>>      and
>>>   >>>>>>>>>>       just
>>>   >>>>>>>>>>>        add
>>>   >>>>>>>>>>>>         more
>>>   >>>>>>>>>>>>>>>          
>>  template
>>>   >>>>>>>>>>>>>>>>      
>     
>>  variables.  What I
>>>   >>> just finished
>>>   >>>>>>  in
>>>   >>>>>>>>    lib/view.pm
>>>   >>>>>>>>>      and
>>>   >>>>>>>>>>>>         lib/path.pm 
> is
>>>   >>>>>>>>>>>>>>>          
>>  directory
>>>   >>>>>>>>>>>>>>>>      
>     
>>  listing support
>>>   >>> for /docs.html
>>>   >>>>>>  but it can
>>>   >>>>>>>>    be
>>>   >>>>>>>>>      carried
>>>   >>>>>>>>>>       over
>>>   >>>>>>>>>>>        to
>>>   >>>>>>>>>>>>>          similar
>>>   >>>>>>>>>>>>>>>          
>>  pages.
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     On Monday,
>>>   >>> March 17, 2014
>>>   >>>>>>  9:16 PM, Joe
>>>   >>>>>>>>
>>>   >>>>>>>>>      Schaefer
>>>   >>> <jo...@yahoo.com>
>>>   >>>>>>  wrote:
>>>   >>> Interesting ideas,
>>>   >>>>>>  thanks.  FWIW I
>>>   >>>>>>>>
>>>   >>>>>>>>>      think
>>>   >>>>>>>>>>       that
>>>   >>>>>>>>>>>        sort
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     of thing might
>>>   >>> be best
>>>   >>>>>>  supported as a
>>>   >>>>>>>>>      periodic
>>>   >>>>>>>>>>       cron
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     if we can
>>>   >>> write something
>>>   >>>>>>  stable
>>>   >>>>>>>>    enough,
>>>   >>>>>>>>>      because
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        pulling
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     stuff out of
>>>   >>> the git repo is
>>>   >>>>>>  something
>>>   >>>>>>>>    the
>>>   >>>>>>>>>      CMS
>>>   >>>>>>>>>>>        isn't
>>>   >>>>>>>>>>>>         going
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     to do all that
>>>   >>> well being an
>>>   >>>>>>  svn
>>>   >>>>>>>>>      application.
>>>   >>>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     The CMS build
>>>   >>> results are
>>>   >>>>>>  available at
>>>   >>> http://thrift.staging.apache.org/
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     feel free to
>>>   >>> play with the
>>>   >>>>>>  sources in
>>>   >>> repos/asf/thrift/cms-site/trunk.
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     It's very
>>>   >>> fast, probably
>>>   >>>>>>  an order
>>>   >>>>>>>>    of
>>>   >>>>>>>>>>       magnitude
>>>   >>>>>>>>>>>        faster
>>>   >>>>>>>>>>>>         than
>>>   >>>>>>>>>>>>>          your 
> current
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     tech.
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     Whole site
>>>   >>> builds in two
>>>   >>>>>>  seconds;
>>>   >>>>>>>>    fractions
>>>   >>>>>>>>>      of a
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        second
>>>   >>>>>>>>>>>>         for
>>>   >>>>>>>>>>>>>          typical
>>>   >>>>>>>>>>>>>>>           
> mods 
>>  to
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     content/
>>>   >>> markdown pages.
>>>   >>>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     The CMS
>>>   >>> bookmarklet is
>>>   >>>>>>  compatible with
>>>   >>>>>>>>    the
>>>   >>>>>>>>>>       staging
>>>   >>>>>>>>>>>        site
>>>   >>>>>>>>>>>>         FWIW.
>>>   >>>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          On
>>>   >>> Monday, March 17,
>>>   >>>>>>  2014 7:40
>>>   >>>>>>>>    PM,
>>>   >>>>>>>>>      Roger
>>>   >>>>>>>>>>       Meier
>>>   >>>>>>  <ro...@bufferoverflow.ch> wrote:
>>> 
>>>>>>>>>>>>>>>>>>>>> 
>     
>>         Hi Joe
>>>   >>> & Co
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          thanks
>>>   >>> for this test
>>>   >>>>>>  run with
>>>   >>>>>>>>    Apache
>>>   >>>>>>>>>      CMS!
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          What I
>>>   >>> would love to
>>>   >>>>>>  see is this:
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          Source
>>>   >>> file: => Web
>>>   >>>>>>  Site URL:
>>>   >>> test/README.md =>
>>>   >>>>>>>>>      thrift.apache.org/test
>>>   >>> test/STATUS.md =>
>>>   >>>>>>>>>>>        
>>  thrift.apache.org/test/status
>>>   >>> test/keys/README.md
>>>   >>>>>>  =>
>>>   >>>>>>>>>>>        
>>  thrift.apache.org/test/keys
>>>   >>>>>>  lib/<lang>/README.md =>
>>>   >>> thrift.apache.org/lib/<lang>
>>>   >>>>>>  lib/<lang>/test/README.md
>>>   >>>>>>>>    =>
>>>   >>>>>>>>    
> thrift.apache.org/lib/<lang>/test
>>>   >>>>>>>>    
> lib/<lang>/examples/README.md
>>>   >>>>>>>>>      =>
>>>   >>>>>>>>>      
>>  thrift.apache.org/lib/<lang>/examples
>>>   >>> compiler/cpp/README.md
>>>   >>>>>>  =>
>>>   >>>>>>>>>>>>        
>>  thrift.apache.org/compiler
>>>   >>> debian/README.md =>
>>>   >>>>>>>>>>       
> thrift.apache.org/debian
>>>   >>>>>>  contrib/<topic>/README.md
>>>   >>>>>>>>    =>
>>>   >>>>>>>>>>>>>          
>>  thrift.apache.org/<topic>
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          just made
>>>   >>> the following
>>>   >>>>>>  patch to
>>>   >>>>>>>>>      rename all
>>>   >>>>>>>>>>       file
>>>   >>>>>>>>>>>        to
>>>   >>>>>>>>>>>>         .md
>>>   >>>>>>>>>>>>>          within 
> our
>>>   >>>>>>>>>>>>>>>>      
>     
>>  source
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          tree:
>>>   >>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          ... we
>>>   >>> have *41*
>>>   >>>>>>  md's within
>>>   >>>>>>>>    the
>>>   >>>>>>>>>      source
>>>   >>>>>>>>>>       tree
>>>   >>>>>>>>>>>        and
>>>   >>>>>>>>>>>>>          
> that's 
>>  the
>>>   >>>>>>>>>>>>>>>>      
>     
>>  place
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     where
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          people
>>>   >>> look for
>>>   >>>>>>  documentation
>>>   >>>>>>>>    first.
>>>   >>>>>>>>>      =>
>>>   >>>>>>>>>>>        simple to
>>>   >>>>>>>>>>>>>          manage
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          Would be
>>>   >>> user friendly
>>>   >>>>>>  to have
>>>   >>>>>>>>    all of
>>>   >>>>>>>>>      this
>>>   >>>>>>>>>>>        online
>>>   >>>>>>>>>>>>         with
>>>   >>>>>>>>>>>>>          each 
> release
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          with the
>>>   >>> URL layout
>>>   >>>>>>  mentioned
>>>   >>>>>>>>    above.
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          just
>>>   >>> received the
>>>   >>>>>>  buildboot...
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          Do you
>>>   >>> have kind of a
>>>   >>>>>>  preview of
>>>   >>>>>>>>    your
>>>   >>>>>>>>>>       prototype?
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          all the
>>>   >>> best!
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          -roger
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          ;-r
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>> 
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          Quoting
>>>   >>> Jake Farrell
>>>   >>>>>>>>>>>        
>>  <jf...@apache.org>:
>>>   
>>>>>>>>>>>>>>>>>>> 
>>> 
>>>>>>>>>>>>>>>>>>>>> 
>     
>>           No
>>>   >>> objections from
>>>   >>>>>>  me
>>>   >>> -Jake
>>> 
>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>> 
>     
>>           On
>>>   >>> Mon, Mar 17,
>>>   >>>>>>  2014 at
>>>   >>>>>>>>    12:04 PM,
>>>   >>>>>>>>>      Joe
>>>   >>>>>>>>>>>        Schaefer
>>>   >>>>>>>>    
> <jo...@yahoo.com>wrote:
>>> 
>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>> Any objections
>>>   >>>>>>  to me
>>>   >>>>>>>>    making a
>>>   >>>>>>>>>      copy
>>>   >>>>>>>>>>       of
>>>   >>>>>>>>>>>        the
>>>   >>>>>>>>>>>>         site
>>>   >>> tree alongside
>>>   >>>>>>  it called
>>>   >>>>>>>>
>>>   >>>>>>>>>>       cms-site?
>>>   >>>>>>>>>>>        I'd
>>>   >>>>>>>>>>>>         like
>>>   >>>>>>>>>>>>>          to
>>>   >>> get cracking
>>>   >>>>>>  on knocking
>>>   >>>>>>>>    up
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>>        supporting
>>>   >>>>>>>>>>>>         perl
>>>   >>> for this so we
>>>   >>>>>>  can
>>>   >>>>>>>>    continue
>>>   >>>>>>>>>      to
>>>   >>>>>>>>>>>        brainstorm...
>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>   On Sunday,
>>>   >>>>>>  March 16,
>>>   >>>>>>>>    2014
>>>   >>>>>>>>>      1:53
>>>   >>>>>>>>>>       PM,
>>>   >>>>>>>>>>>        Joe
>>>   >>>>>>>>>>>>         Schaefer
>>>   >>>>>>  <jo...@yahoo.com>
>>>   >>> wrote:
>>>   >>>       On
>>>   >>>>>>  Sunday, March
>>>   >>>>>>>>    16,
>>>   >>>>>>>>>      2014
>>>   >>>>>>>>>>       1:40
>>>   >>>>>>>>>>>        PM,
>>>   >>>>>>>>>>>>         Jake
>>>   >>>>>>>>>>>>>          Farrell
>>>   >>>>>>  <jf...@apache.org>
>>>   >>>   wrote:
>>>   >>>   Hey Joe
>>>   >>>       Thanks
>>>   >>>>>>  for
>>>   >>>>>>>>    reaching
>>>   >>>>>>>>>      out, we
>>>   >>>>>>>>>>       chose
>>>   >>>>>>>>>>>        to
>>>   >>>>>>>>>>>>         go
>>>   >>>>>>>>>>>>>          with a 
> site
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     generator
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          over the
>>>   >>>       Apache
>>>   >>>>>>  CMS due to
>>>   >>>>>>>>    it
>>>   >>>>>>>>>>       initially
>>>   >>>>>>>>>>>        not
>>>   >>>>>>>>>>>>         meeting
>>>   >>>>>>>>>>>>>          all of
>>>   >>>>>>>>>>>>>>>>      
>     
>>  our
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     needs.
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          Our
>>>   >>> current
>>>   >>>       needs
>>>   >>>>>>  for the site
>>>   >>>>>>>>    are
>>>   >>>       -
>>>   >>>>>>  Markdown to html
>>>   >>>>>>>>
>>>   >>>>>>>>>>       conversion
>>>   >>>   That
>>>   >>>>>>  one's easy-
>>>   >>>>>>>>    its
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       default
>>>   >>>>>>>>>>>        for
>>>   >>>>>>>>>>>>         the
>>>   >>>>>>>>>>>>>          cms.
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>       - Global
>>>   >>>>>>>>>      variables/config
>>>   >>>>>>>>>>       usable
>>>   >>>>>>>>>>>>         throughout
>>>   >>>>>>>>>>>>>          in a
>>>   >>>>>>>>>>>>>>>>      
>     
>>  template
>>>   >>>>>>>>>>>>>>>>>
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          based
>>>   >>> layout
>>>   >>>   Easy too-
>>>   >>>>>>  just create
>>>   >>>>>>>>    a
>>>   >>>>>>>>>      perl
>>>   >>>>>>>>>>       hash
>>>   >>>>>>>>>>>>         somewhere and
>>>   >>>>>>>>>>>>>          make it
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     available
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          to
>>>   >>> your views.
>>>   >>>   Code your
>>>   >>>>>>  views to
>>>   >>>>>>>>    pass
>>>   >>>>>>>>>      that
>>>   >>>>>>>>>>       hash
>>>   >>>>>>>>>>>        along to
>>>   >>>>>>>>>>>>         your
>>>   >>>>>>>>>>>>>>>>      
>     
>>  templates
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     and you
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          are
>>>   >>> all set.
>>>   >>>   Note if your
>>>   >>>>>>  hash
>>>   >>>>>>>>    contains
>>>   >>>>>>>>>>       objects
>>>   >>>>>>>>>>>        you can
>>>   >>>>>>>>>>>>         make
>>>   >>>>>>>>>>>>>          method
>>>   >>>>>>>>>>>>>>>>      
>     
>>  calls
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     on
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          them in
>>>   >>> your
>>>   >>>   templates.
>>>   >>>>>>  Note:
>>>   >>>>>>>>    while I
>>>   >>>>>>>>>>>        wouldn't
>>>   >>>>>>>>>>>>>          
> recommend 
>>  this in
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     general,
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          for
>>>   >>> smaller
>>>   >>>   projects
>>>   >>>>>>  like thrift
>>>   >>>>>>>>    that
>>>   >>>>>>>>>      prefer
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>>         convenience
>>>   >>>>>>>>>>>>>          over
>>>   >>>>>>>>>>>>>>>>      
>     
>>  separation
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     of
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          concerns
>>>   >>> you can
>>>   >>>   have the
>>>   >>>>>>  django
>>>   >>>>>>>>    template
>>>   >>>>>>>>>      engine
>>>   >>>>>>>>>>       do a
>>>   >>>>>>>>>>>        pass
>>>   >>>>>>>>>>>>         over
>>>   >>>>>>>>>>>>>          your
>>>   >>>>>>>>>>>>>>>>      
>     
>>  markdown
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          before
>>>   >>> passing it
>>>   >>>   along to
>>>   >>>>>>  your actual
>>>   >>>>>>>>>      template
>>>   >>>>>>>>>>       page,
>>>   >>>>>>>>>>>        just
>>>   >>>>>>>>>>>>         as is
>>>   >>>>>>>>>>>>>          
> seemingly
>>>   >>>>>>>>>>>>>>>>
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     common to
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          other
>>>   >>> popular
>>>   >>>   site
>>>   >>>>>>  generation
>>>   >>>>>>>>    software.
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>       - Syntax
>>>   >>>>>>>>    highlighting
>>>   >>>   Comes with
>>>   >>>>>>>>    python's
>>>   >>>>>>>>>      markdown
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        support,
>>>   >>>>>>>>>>>>         but
>>>   >>>>>>>>>>>>>          some
>>>   >>>>>>>>>>>>>>>>      
>     
>>  people
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     prefer
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          the look
>>>   >>> of
>>>   >>>   javascript
>>>   >>>>>>>>    highlighters.
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>       - Easily
>>>   >>>>>>  include
>>>   >>>>>>>>    code
>>>   >>>>>>>>>>       snippets
>>>   >>>>>>>>>>>        from
>>>   >>>>>>>>>>>>         our
>>>   >>>>>>>>>>>>>          source 
> code
>>>   >>>>>>>>>>>>>>>>      
>     
>>  base
>>>   >>>   Statically I
>>>   >>>>>>  hope.  No
>>>   >>>>>>>>    idea
>>>   >>>>>>>>>      how
>>>   >>>>>>>>>>       to
>>>   >>>>>>>>>>>        pull
>>>   >>>>>>>>>>>>>          snippets 
> out 
>>  of
>>>   >>>>>>>>>>>>>>>>      
>     
>>  your
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     git
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          repo
>>>   >>> via the
>>>   >>>   cms.
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>       -
>>>   >>>>>>  Ability to
>>>   >>>>>>>>    locally
>>>   >>>>>>>>>      test
>>>   >>>>>>>>>>       before
>>>   >>>>>>>>>>>>         committing
>>>   >>>   Belt and
>>>   >>>>>>  suspenders
>>>   >>>>>>>>    with
>>>   >>>>>>>>>      the
>>>   >>>>>>>>>>       cms- you
>>>   >>>>>>>>>>>        can
>>>   >>>>>>>>>>>>         build
>>>   >>>>>>>>>>>>>          your
>>>   >>>>>>>>>>>>>>>>      
>     
>>  changes
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          before
>>>   >>> committing
>>>   >>>   with the
>>>   >>>>>>  build
>>>   >>>>>>>>    scripts,
>>>   >>>>>>>>>      browse
>>>   >>>>>>>>>>       your
>>>   >>>>>>>>>>>>         changes
>>>   >>>>>>>>>>>>>          before
>>>   >>>>>>>>>>>>>>>>      
>     
>>  committing
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     via
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          the cms
>>>   >>>   webgui, or
>>>   >>>>>>  simply
>>>   >>>>>>>>    commit
>>>   >>>>>>>>>      your
>>>   >>>>>>>>>>       changes
>>>   >>>>>>>>>>>        and
>>>   >>>>>>>>>>>>         view
>>>   >>>>>>>>>>>>>          the
>>>   >>>>>>>>>>>>>>>>      
>     
>>  staging
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     site
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          prior to
>>>   >>> live
>>>   >>>   publication
>>>   >>>>>>  (which is
>>>   >>>>>>>>    a
>>>   >>>>>>>>>      separate
>>>   >>>>>>>>>>
>>>   >>>>>>>>>>>        step).
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>> 
>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>       -Jake
>>>   >>>       On Sun,
>>>   >>>>>>  Mar 16,
>>>   >>>>>>>>    2014 at
>>>   >>>>>>>>>
>>>   >>>>>>>>>>       12:44 PM,
>>>   >>>>>>>>>>>        Joe
>>>   >>>>>>>>>>>>>          Schaefer
>>>   >>>>>>>>>>      
>>  <jo...@yahoo.com>wrote:
>>> 
>>>>>>>>>>>>>>>>>>>>>>>> 
> 
>>>   >>>         As
>>>   >>>>>>  it so
>>>   >>>>>>>>    happens I
>>>   >>>>>>>>>      am
>>>   >>>>>>>>>>>        interested
>>>   >>>>>>>>>>>>         in
>>>   >>>>>>>>>>>>>          working 
> on
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     supporting
>>>   >>>>>>  thrift's
>>>   >>>>>>>>    use
>>>   >>>>>>>>>      case as
>>>   >>>>>>>>>>       a
>>>   >>>>>>>>>>>>         potential
>>>   >>>>>>>>>>>>>          user of
>>>   >>>>>>>>>>>>>>>>      
>     
>>  the
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     Apache
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          CMS.
>>>   >>>>>>  While the CMS
>>>   >>>>>>>>    works
>>>   >>>>>>>>>      well
>>>   >>>>>>>>>>       for
>>>   >>>>>>>>>>>>         massive
>>>   >>>>>>>>>>>>>          projects
>>>   >>>>>>>>>>>>>>>>      
>     
>>  there
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     are
>>>   >>>>>>  things it
>>>   >>>>>>>>    could do
>>>   >>>>>>>>>>       better at
>>>   >>>>>>>>>>>>         supporting
>>>   >>>>>>>>>>>>>          for
>>>   >>>>>>>>>>>>>>>>      
>     
>>  more
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     moderate
>>>   >>>>>>  sized sites
>>>   >>>>>>>>    like
>>>   >>>>>>>>>>>        thrift's.
>>>   >>>>>>  I'd
>>>   >>>>>>>>    therefore
>>>   >>>>>>>>>      like
>>>   >>>>>>>>>>       to
>>>   >>>>>>>>>>>        engage
>>>   >>>>>>>>>>>>         you
>>>   >>>>>>>>>>>>>          folks in 
> a
>>>   >>>>>>>>>>>>>>>>
>>>   >>> brainstorming session
>>>   >>>>>>  about what
>>>   >>>>>>>>    sorts of
>>>   >>>>>>>>>
>>>   >>>>>>>>>>       features
>>>   >>>>>>>>>>>        you
>>>   >>>>>>>>>>>>         want
>>>   >>>>>>>>>>>>>          for your
>>>   >>>>>>>>>>>>>>>>      
>     
>>  site
>>>   >>>>>>>>>>>>>>>>>  
>       
>>     and
>>>   
>>>>>>>>>>>>>>>>>>>     
>>          to find
>>>   >>>>>>  simple ways of
>>>   >>>>>>>>
>>>   >>>>>>>>>>       supporting
>>>   >>>>>>>>>>>        those
>>>   >>>>>>>>>>>>>          features 
> for
>>>   >>>>>>>>>>>>>>>>      
>     
>>  you.
>>>   >>>>>>  Thanks.
>>>   >
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
Thank you Joe!

You did a great job here and I really appreciate especially the nice  
feature with the code snippet and the direct link to the source on git  
web ui. You did exactly the thing I had in mind, source documentation  
on the web site.

just fantastic!
-roger

Quoting Joe Schaefer <jo...@yahoo.com>:

> Done Jake thanks!  One remark for Roger...
>
> The file extension used for stuff in content/test/ really doesn't  
> matter as far as the build goes.  What you need to do is supply a  
> 'lang=text' argument to each snippet that is not a native markdown  
> file; the build will automatically strip file extensions off the  
> internal links in the markdown sources so httpd will do the right  
> thing and resolve the extension via the MultiViews feature.
>
> In the case of test/ThriftTest.thrift, I'd recommend changing the  
> extension to .txt or even .md (in the content/test/ tree on the site  
> sources in svn, not the code sources in git) so the CMS's webgui  
> will fetch you a decent editor for that file.  Otherwise again the  
> extension doesn't matter- the build will always convert it to html.

Thanks for this explanation!
-roger

>
>
>
>> On Tuesday, March 25, 2014 9:34 AM, Jake Farrell  
>> <jf...@apache.org> wrote:
>> > Hey Joe
>> Thanks for making the additions to the Apache CMS to meet our use case. I'm
>> not seeing any blockers at the moment, lets cut over and we can fix any
>> edge cases if needed
>>
>> -Jake
>>
>>
>>
>> On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer
>> <jo...@yahoo.com>wrote:
>>
>>>  Done.  Anything else we need to look at before going live?
>>>
>>>  Sent from my iPhone
>>>
>>>  > On Mar 23, 2014, at 3:53 PM, Roger Meier
>> <ro...@bufferoverflow.ch>
>>>  wrote:
>>>  >
>>>  > any idea how to fix this URL:
>>>  > http://thrift.staging.apache.org/test/ThriftTest.thrift
>>>  > we need to keep the filename for working links within the
>>>  > test/README.md file.
>>>  >
>>>  > What about a footer for docs genertated from source tree?
>>>  > [snippet:path=test/README.md, footer=1]
>>>  >
>>>  > I added the following snippet to content/test/index.md:
>>>  > ---SNIP---
>>>  > This page was generated from Apache Thrift's **source tree docs**:
>>>  > [test/README.md](
>>>
>> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>>  )
>>>  > ---SNIP---
>>>  >
>>>  > would be great to get this generated into the page via snippet.
>>>  >
>>>  > -roger
>>>  >
>>>  >
>>>  >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>>  >> The CMS codebase as well as the thrift build system
>>>  >> already supports it Roger, someone just needs to create
>>>  >> the files in the content tree that point at the source
>>>  >> files in the git repo.  If you want to script this process
>>>  >> in scripting language du jour, go for it, but I cannot
>>>  >> justify spending contractor time doing this work for the
>>>  >> community's behalf as it is unlikely to be needed elsewhere.
>>>  >> I would think you only need the script to run when some
>>>  >> path to a README.md file changes in the thrift.git tree,
>>>  >> so it doesn't need to be incorporated into each site build.
>>>  >>
>>>  >>
>>>  >>
>>>  >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <
>>>  roger@bufferoverflow.ch> wrote:
>>>  >>>> Hi
>>>  >>>
>>>  >>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>  >>>>  Hey Joe
>>>  >>>>  Reviewing the staging site it looks like its almost 99%
>> there other
>>>  than
>>>  >>>>  some styling within the code snippets. I'm good if we
>> want to cut
>>>  over
>>>  >>> to
>>>  >>>>  using this and then work on the additional features that
>> had been
>>>  mentioned
>>>  >>>>  afterwords. Any objections to cutting over?
>>>  >>> I would really like to see this automatic README.md includes
>> from
>>>  source
>>>  >>> tree, to have a real additional feature beside of what we
>> already have
>>>  >>> today.
>>>  >>>
>>>  >>> I'm absolutely with you.
>>>  >>> Apache projects shall use other Apache projects whenever
>> possible.
>>>  >>>
>>>  >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>>  >>> <jo...@yahoo.com>wrote:
>>>  >>>>
>>>  >>>>>  May I suggest a script that creates files in content/
>>>  >>>>>  containing a single line
>>>  >>>>>
>>>  >>>>>  [snippet:path=...]
>>>  >>> this sounds like a plan
>>>  >>>
>>>  >>>>>
>>>  >>>>>  (with no 'lang' argument) that lets the CMS
>> pull raw content
>>>  >>> from
>>>  >>>>>  thrift.git
>>>  >>>>>  and add it directly to the built pages.  That way you
>> only need to
>>>  run
>>>  >>> the
>>>  >>>>>  script that generates these files when a path changes
>> in your
>>>  >>> thrift.git
>>>  >>>>>  repo.
>>>  >>> What I had in mind is a automatic search of README.md files
>> across the
>>>  >>> source tree and generate the site with these automatically.
>>>  >>> Kind of a central controller that maps all the URL's.
>>>  >>> no additional work when a new README.md file is added.
>>>  >>> however, a script can do this as interim soultion.
>>>  >>>>>
>>>  >>>>>  You can commit directly to the cms svn tree or via
>> the webgui which
>>>  >>> does
>>>  >>>>>  the same thing.
>>>  >>> Great!
>>>  >>>
>>>  >>> What about local preview when doing perl modifications?
>>>  >>>
>>>  >>> -roger
>>>  >>>
>>>  >>>
>>>  >>>>>
>>>  >>>>>
>>>  >>>>>>  On Saturday, March 22, 2014 4:20 PM, Roger Meier
>> <
>>>  >>>>>  roger@bufferoverflow.ch> wrote:
>>>  >>>>>>>  I still see some issues and still miss to
>> feature mentioned.
>>>  >>>>>>  Now we have nonoc.ws and I'm able to hack
>> this a bit.
>>>  >>>>>>
>>>  >>>>>>  We had no real big issue, the thing I missed was
>> the code snippet
>>>  >>> thing
>>>  >>>>>>  and this is in on nanoc.ws and now also on Apache
>> CMS.
>>>  >>>>>>
>>>  >>>>>>  The thing we really need is the documentation
>> located within source
>>>  >>> code
>>>  >>>>>>  integrated on the web site.
>>>  >>>>>>
>>>  >>>>>>  most hosting platforms do render README.md and
>> that's why lot
>>>  >>> of doc
>>>  >>>>>>  will stay within the code and we should benefit
>> as well by
>>>  >>> rendering
>>>  >>>>>>  that to the web site and enhance the
>> documentation very easily.
>>>  >>>>>>
>>>  >>>>>>  I would like to render the 41 README.md files to
>> with the following
>>>  >>>>>>  pattern, that's a must have before switching
>> to another CMS.
>>>  >>>>>>
>>>  >>>>>>  test/README.md => thrift.apache.org/test
>>>  >>>>>>  test/STATUS.md =>
>> thrift.apache.org/test/status
>>>  >>>>>>  test/keys/README.md =>
>> thrift.apache.org/test/keys
>>>  >>>>>>  lib/<lang>/README.md =>
>> thrift.apache.org/lib/<lang>
>>>  >>>>>>  lib/<lang>/test/README.md =>
>>>  >>> thrift.apache.org/lib/<lang>/test
>>>  >>>>>>  lib/<lang>/examples/README.md =>
>>>  >>>>>>  thrift.apache.org/lib/<lang>/examples
>>>  >>>>>>  compiler/cpp/README.md =>
>> thrift.apache.org/compiler
>>>  >>>>>>  debian/README.md => thrift.apache.org/debian
>>>  >>>>>>  contrib/<topic>/README.md =>
>>>  >>> thrift.apache.org/<topic>
>>>  >>>>>>
>>>  >>>>>>  CPP tutorial seems to be broken on staging.
>>>  >>>>>>
>>>  >>>>>>  Do you commit to
>>>  >>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>  >>>>>>  or is it web gui only?
>>>  >>>>>>
>>>  >>>>>>  How do you generate the site on your local
>> machine?
>>>  >>>>>>
>>>  >>>>>>
>>>  >>>>>>  Should I reactivate my perl or do we stay with
>> ruby?
>>>  >>>>>>  Committers and contributors, what do you think?
>>>  >>>>>>
>>>  >>>>>>
>>>  >>>>>>  all the best
>>>  >>>>>>  -roger
>>>  >>>>>>
>>>  >>>>>>
>>>  >>>>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
>>>  >>>>>>>

>>>  >>>>>>>
>>>  >>>>>>>    Ok I've now done the basic necessities
>> involved in
>>>  >>> porting
>>>  >>>>>>>    the site over.  Links have been adjusted,
>> templates ported,
>>>  >>> files
>>>  >>>>>  created,
>>>  >>>>>>>    snippet feature activated.  At this point
>> I'm happy to
>>>  >>> declare
>>>  >>>>>>>    victory and migrate the thrift live site
>> over, as anything
>>>  >>> broken that
>>>  >>>>>>>    still remains can be dealt with on a
>> per-page basis with the
>>>  >>>>>  bookmarklet.
>>>  >>>>>>>
>>>  >>>>>>>
>>>  >>>>>>>
>>>  >>>>>>>>    On Thursday, March 20, 2014 11:19 AM,
>> Joe Schaefer
>>>  >>>>>>  <jo...@yahoo.com> wrote:
>>>  >>>>>>>>>    Modulo some bizarre content
>> truncation out of
>>>  >>> git-wip-us.apache.org
>>>  >>>>>>>>    the snippet support is now active. At
>> this point I think
>>>  >>> all the build
>>>  >>>>>>>>    support you need in this project to
>> support every type of
>>>  >>>>>  brainstorming
>>>  >>>>>>>>    activity we've discussed is now
>> there, so it's
>>>  >>> just up to you
>>>  >>>>>>  guys to
>>>  >>>>>>>>    now familiarize yourselves with the
>> build technology and
>>>  >>> how to apply
>>>  >>>>>>>>    it to your needs.  The site builds with
>> snippet support
>>>  >>> are running
>>>  >>>>>>  around
>>>  >>>>>>>>    10 seconds, which is to be expected
>> with the network
>>>  >>> interactions
>>>  >>>>>>  involved.
>>>  >>>>>>>>
>>>  >>>>>>>>    I'm always willing to answer any
>> questions that come
>>>  >>> up in the
>>>  >>>>>>  interim,
>>>  >>>>>>>>    but I wish you guys the best of luck in
>> the remaining
>>>  >>> porting work to
>>>  >>>>>>  be done.
>>>  >>>>>>>>    All I see really are some links that
>> need to have the
>>>  >>> trailing slashes
>>>  >>>>>>  removed
>>>  >>>>>>>>    and whatever <%= %> template
>> constructs that remain
>>>  >>> need to be
>>>  >>>>>>  ported to
>>>  >>>>>>>>    django.  So it should be smooth
>> sailing, but as I said if
>>>  >>> you hit any
>>>  >>>>>>  snags
>>>  >>>>>>>>    holler.  I'd really like to see the
>> live site tech
>>>  >>> switched over to
>>>  >>>>>>  the cms
>>>  >>>>>>>>    stuff before Apachecon ends in early
>> April, hint hint.
>>>  >>>>>>>>
>>>  >>>>>>>>
>>>  >>>>>>>>
>>>  >>>>>>>>
>>>  >>>>>>>>
>>>  >>>>>>>>>>      On Wednesday, March 19, 2014
>> 10:41 PM, Joe Schaefer
>>>  >>>>>>>>>    <jo...@yahoo.com>
>> wrote:
>>>  >>>>>>>>>      > While I don't yet know
>> the url magic to
>>>  >>> support branches
>>>  >>>>>>  and tags
>>>  >>>>>>>>    in git,
>>>  >>>>>>>>>      I can say that the snippet
>> support is ready to play
>>>  >>> with.  I
>>>  >>>>>>  suggest just
>>>  >>>>>>>>>      focusing on the /index.md page
>> first to see how it
>>>  >>> works in
>>>  >>>>>>  practice
>>>  >>>>>>>>    because
>>>  >>>>>>>>>      once it's fully enabled the
>> build will break
>>>  >>> until all the
>>>  >>>>>>  snippet
>>>  >>>>>>>>    sources
>>>  >>>>>>>>>      have been altered to conform with
>> the new style.
>>>  >>>>>>>>>
>>>  >>>>>>>>>      To turn it on for index.md
>> testing, there are a
>>>  >>> couple of things
>>>  >>>>>>  that need
>>>  >>>>>>>>    to
>>>  >>>>>>>>>      happen. First the [snippet:...]
>> marker should be
>>>  >>> edited to be
>>>  >>>>>>>>    [XXXsnippet:...]
>>>  >>>>>>>>>      to enable testing without
>> breaking the build.
>>>  >>> Second each marker
>>>  >>>>>>  contains
>>>  >>>>>>>>    a
>>>  >>>>>>>>>      "token" argument
>> instead of line numbers
>>>  >>> for more
>>>  >>>>>>  stability under
>>>  >>>>>>>>
>>>  >>>>>>>>>      edits to the source code.  The
>> token argument is an
>>>  >>> arbitrary
>>>  >>>>>>  string that
>>>  >>>>>>>>    is
>>>  >>>>>>>>>      used to denote the boundaries of
>> the snippet within
>>>  >>> the source
>>>  >>>>>>  code.
>>>  >>>>>>>>>       ASF::Value::Snippet will pull
>> out the lines from
>>>  >>> the source file
>>>  >>>>>>  between
>>>  >>>>>>>>    the
>>>  >>>>>>>>>      lines that contain the token
>> argument and format
>>>  >>> them as a code
>>>  >>>>>>  snippet
>>>  >>>>>>>>    embedded
>>>  >>>>>>>>>      into markdown. To get started
>> I'll copy over
>>>  >>> the code
>>>  >>>>>>  highlighting css
>>>  >>>>>>>>    from
>>>  >>>>>>>>>      www.apache.org but note that this
>> is all based on
>>>  >>> python pygments
>>>  >>>>>>  and there
>>>  >>>>>>>>    are
>>>  >>>>>>>>>      a variety of online css files to
>> choose from if
>>>  >>> this one is not
>>>  >>>>>>  to the
>>>  >>>>>>>>>      group's liking.
>>>  >>>>>>>>>
>>>  >>>>>>>>>
>>>  >>>>>>>>>
>>>  >>>>>>>>>>       On Wednesday, March 19, 2014
>> 4:16 PM, Joe
>>>  >>> Schaefer
>>>  >>>>>>>>>      <jo...@yahoo.com>
>> wrote:
>>>  >>>>>>>>>>       > Sorry I need to clarify
>> with an example:
>>>  >>> look at
>>>  >>>>>>>>>>     
>> http://thrift.staging.apache.org/tutorial/
>>>  >>> versus
>>>  >>> http://thrift.staging.apache.org/tutorial.html.  The
>>>  >>>>>>>>>>       former is generated from
>>>  >>> content/tutorial/index.html
>>>  >>>>>>>>>>       and the latter from
>> content/tutorial.md.  The
>>>  >>> latter file
>>>  >>>>>>>>>>       needs to be removed from the
>> tree now that
>>>  >>> it's content
>>>  >>>>>>>>>>       has been ported to
>>>  >>> content/tutorial/index.html.  This
>>>  >>>>>>>>>>       uses django template
>> inheritance to maintain
>>>  >>> simplicity.
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>       Other directories that
>> follow a similar
>>>  >>> pattern should
>>>  >>>>>>>>>>       also be ported in the same
>> fashion.
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        On Wednesday, March 19,
>> 2014 9:46 AM, Joe
>>>  >>> Schaefer
>>>  >>>>>>>>>>     
>> <jo...@yahoo.com> wrote:
>>>  >>>>>>>>>>>        > If someone's
>> looking for a way
>>>  >>> to help with
>>>  >>>>>>  the porting
>>>  >>>>>>>>>>>        effort, consider
>> tackling the creation of
>>>  >>> an index.html
>>>  >>>>>>>>>>>        page in each subdir of
>> the content/ tree
>>>  >>> (other than
>>>  >>>>>>  the
>>>  >>>>>>>>>>>        base which has an
>> /index.md).  The
>>>  >>> contents of the file
>>>  >>>>>>>>>>>        should be just
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>        {% include
>> 'default' %}
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>        (see the docs dir for
>> an example page
>>>  >>> that can be
>>>  >>>>>>  copied)
>>>  >>>>>>>>>>>        and the build system
>> will take care of
>>>  >>> generating the
>>>  >>>>>>  page
>>>  >>>>>>>>>>>        in a consistent fashion
>> with the rest of
>>>  >>> the site.
>>>  >>>>>>  Once
>>>  >>>>>>>>>>>        that is done there are
>> a lot of pages
>>>  >>> that function
>>>  >>>>>>  like
>>>  >>>>>>>>>>>        index pages but are
>> written in markdown
>>>  >>> that can be
>>>  >>>>>>  deleted,
>>>  >>>>>>>>>>>        like docs.md and its
>> ilk.  Nanoc
>>>  >>> transforms that file
>>>  >>>>>>  into
>>>  >>>>>>>>>>>        /docs/index.html but
>> that's kinda
>>>  >>> crufty and not
>>>  >>>>>>  supported
>>>  >>>>>>>>>>>        by the CMS, which only
>> lets you alter
>>>  >>> file extensions
>>>  >>>>>>  not paths.
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>>         On Wednesday,
>> March 19, 2014 8:54
>>>  >>> AM, Joe Schaefer
>>>  >>>>>>>>>>>       
>> <jo...@yahoo.com> wrote:
>>>  >>>>>>>>>>>>         > I just
>> pencilled in snippet
>>>  >>> preprocessing
>>>  >>>>>>  support into
>>>  >>>>>>>>>>>>         the thrift
>> builds.  Once Jake and I
>>>  >>> have settled
>>>  >>>>>>  on the
>>>  >>>>>>>>>>>>         feature set of
>> ASF::Value::Snippet,
>>>  >>> and we have
>>>  >>>>>>  ported
>>>  >>>>>>>>>>>>         the snippet
>> calling text within the
>>>  >>> markdown pages
>>>  >>>>>>>>>>>>         to the new format,
>> things will just
>>>  >>> work (knock on
>>>  >>>>>>  wood).
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          On Wednesday,
>> March 19, 2014
>>>  >>> 6:48 AM, Joseph
>>>  >>>>>>  Schaefer
>>>  >>>>>>>>>>>>       
>> <jo...@yahoo.com>
>>>  >>> wrote:
>>>  >>>>>>>>>>>>>          > Sure I
>> understand that
>>>  >>> need.  If
>>>  >>>>>>  there's a way
>>>  >>>>>>>>    of
>>>  >>>>>>>>>>       pulling the
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>>         document
>>>  >>>>>>>>>>>>>          sources
>> directly from the web I
>>>  >>> can parse the
>>>  >>>>>>  content
>>>  >>>>>>>>    to
>>>  >>>>>>>>>      look for
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        snippet
>>>  >>>>>>>>>>>>>          markers and
>> make those
>>>  >>> available to the
>>>  >>>>>>  template
>>>  >>>>>>>>    system.
>>>  >>>>>>>>>>       That's
>>>  >>>>>>>>>>>        pretty
>>>  >>>>>>>>>>>>         much
>>>  >>>>>>>>>>>>>          how
>> www.apache.org is
>>>  >>> generated.
>>>  >>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          Sent from my
>> iPhone
>>>  >>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>           On Mar
>> 19, 2014, at 5:28
>>>  >>> AM, Henrique
>>>  >>>>>>  Mendonça
>>>  >>>>>>>>>>>>       
>> <he...@apache.org>
>>>  >>>>>>>>>>>>>          wrote:
>>>  >>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>           Hi Joe,
>>>  >>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>           Thanks
>> for your effort. I
>>>  >>> just wanted to
>>>  >>>>>>  add that
>>>  >>>>>>>>    the
>>>  >>>>>>>>>      code
>>>  >>>>>>>>>>>        snippets
>>>  >>>>>>>>>>>>         are a
>>>  >>>>>>>>>>>>>>           crucial
>> feature for this
>>>  >>> project, which
>>>  >>>>>>  has way
>>>  >>>>>>>>    more
>>>  >>>>>>>>>      target
>>>  >>>>>>>>>>>        languages
>>>  >>>>>>>>>>>>         than
>>>  >>>>>>>>>>>>>>           active
>> contributors. In
>>>  >>> our case,
>>>  >>>>>>  reducing manual
>>>  >>>>>>>>>>       maintenance
>>>  >>>>>>>>>>>        costs is
>>>  >>>>>>>>>>>>         much
>>>  >>>>>>>>>>>>>>           more
>> important than the
>>>  >>> total site build
>>>  >>>>>>  time.
>>>  >>>>>>>>    Perhaps
>>>  >>>>>>>>>      we
>>>  >>>>>>>>>>       can
>>>  >>>>>>>>>>>        also
>>>  >>>>>>>>>>>>         solve
>>>  >>>>>>>>>>>>>>           this in
>> the CMS, though.
>>>  >>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>           -
>> Henrique
>>>  >>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>           On
>> 19 March 2014
>>>  >>> 03:17, Joe Schaefer
>>>  >>>>>>>>>>>>       
>> <jo...@yahoo.com>
>>>  >>>>>>>>>>>>>          wrote:
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>           A
>> couple more thoughts
>>>  >>> regarding the
>>>  >>>>>>>>    background on
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       CMS...
>>>  >>>>>>>>>>>>>>>           the
>> bulk of the focus
>>>  >>> of the CMS up
>>>  >>>>>>  until now
>>>  >>>>>>>>    has
>>>  >>>>>>>>>      been
>>>  >>>>>>>>>>       to
>>>  >>>>>>>>>>>>>>>         
>> support really big
>>>  >>> sites like maven
>>>  >>>>>>  and
>>>  >>>>>>>>    openoffice,
>>>  >>>>>>>>>      both
>>>  >>>>>>>>>>       of
>>>  >>>>>>>>>>>>>>>         
>> which have websites
>>>  >>> well over 5GB
>>>  >>>>>>  worth of
>>>  >>>>>>>>    text
>>>  >>>>>>>>>      files.
>>>  >>>>>>>>>>       The
>>>  >>>>>>>>>>>>>>>         
>> build system was
>>>  >>> hollowed out and
>>>  >>>>>>  revamped to
>>>  >>>>>>>>>      support
>>>  >>>>>>>>>>>        external
>>>  >>>>>>>>>>>>>>>         
>> builds in other
>>>  >>> programming
>>>  >>>>>>  languages, as well
>>>  >>>>>>>>    as
>>>  >>>>>>>>>>       scaling up
>>>  >>>>>>>>>>>>>>>           the
>> perl builds to
>>>  >>> provide about 8
>>>  >>>>>>  child
>>>  >>>>>>>>    processes
>>>  >>>>>>>>>      that
>>>  >>>>>>>>>>       build
>>>  >>>>>>>>>>>>>>>           the
>> site in parallel
>>>  >>> by default.
>>>  >>>>>>  Full site
>>>  >>>>>>>>    build
>>>  >>>>>>>>>      times
>>>  >>>>>>>>>>       for
>>>  >>>>>>>>>>>>>>>         
>> openoffice went from
>>>  >>> over 30 minutes
>>>  >>>>>>  to
>>>  >>>>>>>>    between 5
>>>  >>>>>>>>>      to 10
>>>  >>>>>>>>>>>        minutes
>>>  >>>>>>>>>>>>>>>         
>> depending on disk
>>>  >>> activity, which
>>>  >>>>>>  made
>>>  >>>>>>>>>      experimentation
>>>  >>>>>>>>>>       with
>>>  >>>>>>>>>>>>         site-wide
>>>  >>>>>>>>>>>>>>>         
>> changes feasible on a
>>>  >>> reasonable
>>>  >>>>>>  timeframe.
>>>  >>>>>>>>    At
>>>  >>>>>>>>>      first
>>>  >>>>>>>>>>       the
>>>  >>>>>>>>>>>        project
>>>  >>>>>>>>>>>>         was
>>>  >>>>>>>>>>>>>          in
>>>  >>>>>>>>>>>>>>>           the
>> habit of running
>>>  >>> the builds
>>>  >>>>>>  locally before
>>>  >>>>>>>>
>>>  >>>>>>>>>      checking
>>>  >>>>>>>>>>       in
>>>  >>>>>>>>>>>        their
>>>  >>>>>>>>>>>>>          changes
>>>  >>>>>>>>>>>>>>>         
>> because the delay in
>>>  >>> feedback
>>>  >>>>>>  post-commit was
>>>  >>>>>>>>>>       unreasonable,
>>>  >>>>>>>>>>>        but
>>>  >>>>>>>>>>>>         with
>>>  >>>>>>>>>>>>>          smart
>>>  >>>>>>>>>>>>>>>           use
>> of SSI the were
>>>  >>> able to cut down
>>>  >>>>>>  on the
>>>  >>>>>>>>    number
>>>  >>>>>>>>>      of
>>>  >>>>>>>>>>       changes
>>>  >>>>>>>>>>>        that
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          required
>>>  >>>>>>>>>>>>>>>           full
>> site builds and
>>>  >>> hence no longer
>>>  >>>>>>  bother
>>>  >>>>>>>>    with
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       whole
>>>  >>>>>>>>>>>>         pre-build
>>>  >>>>>>>>>>>>>          mumbo
>>>  >>>>>>>>>>>>>>>         
>> jumbo before checking
>>>  >>> in changes.
>>>  >>>>>>  The CMS is
>>>  >>>>>>>>>      designed
>>>  >>>>>>>>>>       to
>>>  >>>>>>>>>>>        only
>>>  >>>>>>>>>>>>         build
>>>  >>>>>>>>>>>>>          pages
>>>  >>>>>>>>>>>>>>>           that
>> were altered, and
>>>  >>> if you just
>>>  >>>>>>  edit a page
>>>  >>>>>>>>    or
>>>  >>>>>>>>>      two
>>>  >>>>>>>>>>       only
>>>  >>>>>>>>>>>        those
>>>  >>>>>>>>>>>>         pages
>>>  >>>>>>>>>>>>>          and
>>>  >>>>>>>>>>>>>>>           the
>> pages that depend
>>>  >>> on them will
>>>  >>>>>>  be built.
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>           Now
>> that I've
>>>  >>> turned my
>>>  >>>>>>  attention to
>>>  >>>>>>>>    thrift,
>>>  >>>>>>>>>      there
>>>  >>>>>>>>>>       are
>>>  >>>>>>>>>>>        several
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          aspects
>>>  >>>>>>>>>>>>>>>           that
>> are better off
>>>  >>> being retuned
>>>  >>>>>>  based on the
>>>  >>>>>>>>
>>>  >>>>>>>>>      modest
>>>  >>>>>>>>>>       size of
>>>  >>>>>>>>>>>        the
>>>  >>>>>>>>>>>>         site.
>>>  >>>>>>>>>>>>>>>         
>> First of all you have
>>>  >>> a sitemap url
>>>  >>>>>>  that lists
>>>  >>>>>>>>    all
>>>  >>>>>>>>>      of
>>>  >>>>>>>>>>       your
>>>  >>>>>>>>>>>>>         
>> markdown-based
>>>  >>>>>>>>>>>>>>>         
>> pages, which would be
>>>  >>> a nonstarter
>>>  >>>>>>  for a site
>>>  >>>>>>>>    like
>>>  >>>>>>>>>>>        openoffice.
>>>  >>>>>>>>>>>>         The
>>>  >>>>>>>>>>>>>>>         
>> implications of the
>>>  >>> sitemap url are
>>>  >>>>>>  that every
>>>  >>>>>>>>    page
>>>  >>>>>>>>>
>>>  >>>>>>>>>>       needs to
>>>  >>>>>>>>>>>        be
>>>  >>>>>>>>>>>>         built
>>>  >>>>>>>>>>>>>          in
>>>  >>>>>>>>>>>>>>>         
>> memory just to
>>>  >>> generate that page,
>>>  >>>>>>  which leads
>>>  >>>>>>>>    to a
>>>  >>>>>>>>>      lot
>>>  >>>>>>>>>>       of
>>>  >>>>>>>>>>>>         redundancy
>>>  >>>>>>>>>>>>>          in a
>>>  >>>>>>>>>>>>>>>         
>> build system designed
>>>  >>> to run as
>>>  >>>>>>  forked child
>>>  >>>>>>>>>      processes.
>>>  >>>>>>>>>>       We
>>>  >>>>>>>>>>>        can do
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          better...
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>         
>> I've done two
>>>  >>> things to make
>>>  >>>>>>  this work
>>>  >>>>>>>>    well-
>>>  >>>>>>>>>      first I
>>>  >>>>>>>>>>       made
>>>  >>>>>>>>>>>        the
>>>  >>>>>>>>>>>>>          number of
>>>  >>>>>>>>>>>>>>>         
>> child processes
>>>  >>> "aka
>>>  >>>>>>  runners"
>>>  >>>>>>>>    tunable on
>>>  >>>>>>>>>      a
>>>  >>>>>>>>>>>        per-project
>>>  >>>>>>>>>>>>         basis,
>>>  >>>>>>>>>>>>>          and since the
>>>  >>>>>>>>>>>>>>>         
>> sitemap is going to
>>>  >>> build every page
>>>  >>>>>>  anyway as
>>>  >>>>>>>>    the
>>>  >>>>>>>>>>       slowest
>>>  >>>>>>>>>>>        page to
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          build, I
>>>  >>>>>>>>>>>>>>>         
>> memoized the main view
>>>  >>> that builds
>>>  >>>>>>  the
>>>  >>>>>>>>    markdown
>>>  >>>>>>>>>      pages
>>>  >>>>>>>>>>       for
>>>  >>>>>>>>>>>        thrift.
>>>  >>>>>>>>>>>>         The
>>>  >>>>>>>>>>>>>          best
>>>  >>>>>>>>>>>>>>>         
>> results are when
>>>  >>> there's only
>>>  >>>>>>  one runner
>>>  >>>>>>>>    so we
>>>  >>>>>>>>>      get
>>>  >>>>>>>>>>       the
>>>  >>>>>>>>>>>        full
>>>  >>>>>>>>>>>>         benefit
>>>  >>>>>>>>>>>>>          of
>>>  >>>>>>>>>>>>>>>         
>> memoization: typical
>>>  >>> site build
>>>  >>>>>>  times are
>>>  >>>>>>>>>      consistently
>>>  >>>>>>>>>>       under
>>>  >>>>>>>>>>>        2
>>>  >>>>>>>>>>>>         seconds
>>>  >>>>>>>>>>>>>          now.
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>         
>> You'll appreciate
>>>  >>> why I am such
>>>  >>>>>>  a
>>>  >>>>>>>>    performance
>>>  >>>>>>>>>>       stickler
>>>  >>>>>>>>>>>        for the
>>>  >>>>>>>>>>>>         CMS
>>>  >>>>>>>>>>>>>          when
>>>  >>>>>>>>>>>>>>>           you
>> start using the
>>>  >>> bookmarklet,
>>>  >>>>>>  since builds
>>>  >>>>>>>>    are
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       only
>>>  >>>>>>>>>>>>         asynchronous
>>>  >>>>>>>>>>>>>>>           part
>> of the process
>>>  >>> from making a
>>>  >>>>>>  change to a
>>>  >>>>>>>>    page
>>>  >>>>>>>>>      and
>>>  >>>>>>>>>>>        publishing
>>>  >>>>>>>>>>>>         the
>>>  >>>>>>>>>>>>>>>         
>> results.  Ideally when
>>>  >>> the system is
>>>  >>>>>>  working
>>>  >>>>>>>>    well
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       builds
>>>  >>>>>>>>>>>>         happen
>>>  >>>>>>>>>>>>>          before
>>>  >>>>>>>>>>>>>>>           you
>> have time to go
>>>  >>> looking for
>>>  >>>>>>  them, but you
>>>  >>>>>>>>    do
>>>  >>>>>>>>>      need to
>>>  >>>>>>>>>>       be
>>>  >>>>>>>>>>>>         mindful of
>>>  >>>>>>>>>>>>>          not
>>>  >>>>>>>>>>>>>>>         
>> publishing before the
>>>  >>> built pages
>>>  >>>>>>  have been
>>>  >>>>>>>>>      committed
>>>  >>>>>>>>>>       back to
>>>  >>>>>>>>>>>        svn
>>>  >>>>>>>>>>>>         by
>>>  >>>>>>>>>>>>>>>         
>> buildbot.
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>         
>> On Monday, March
>>>  >>> 17, 2014 11:59
>>>  >>>>>>  PM, Joe
>>>  >>>>>>>>>      Schaefer
>>>  >>>>>>>>>>>>>         
>> <jo...@yahoo.com>
>>>  >>>>>>>>>>>>>>>         
>> wrote:
>>>  >>>>>>>>>>>>>>>>>       
>>    Ok there's
>>>  >>> enough of an
>>>  >>>>>>  idea about
>>>  >>>>>>>>    how
>>>  >>>>>>>>>      to
>>>  >>>>>>>>>>       port
>>>  >>>>>>>>>>>        the
>>>  >>>>>>>>>>>>         rest of
>>>  >>>>>>>>>>>>>          the
>> site's
>>>  >>>>>>>>>>>>>>>>         
>> pages over based
>>>  >>> on the porting
>>>  >>>>>>  work
>>>  >>>>>>>>    I've
>>>  >>>>>>>>>>       already
>>>  >>>>>>>>>>>        done
>>>  >>>>>>>>>>>>         that
>>>  >>>>>>>>>>>>>          it's time
>>>  >>>>>>>>>>>>>>>>         
>> for me to step
>>>  >>> back and let you
>>>  >>>>>>  guys catch
>>>  >>>>>>>>    up.
>>>  >>>>>>>>>
>>>  >>>>>>>>>>       Basically
>>>  >>>>>>>>>>>        the
>>>  >>>>>>>>>>>>         idea
>>>  >>>>>>>>>>>>>          is
>>>  >>>>>>>>>>>>>>>           that
>> while
>>>  >>>>>>>>>>>>>>>>         
>> there is
>>>  >>> templating support in
>>>  >>>>>>  the
>>>  >>>>>>>>    markdown
>>>  >>>>>>>>>      sources,
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        it's
>>>  >>>>>>>>>>>>>          fairly
>> limited
>>>  >>>>>>>>>>>>>>>>         
>> compared to what
>>>  >>> nanoc offers,
>>>  >>>>>>  but instead
>>>  >>>>>>>>    of
>>>  >>>>>>>>>>       writing a
>>>  >>>>>>>>>>>        lot of
>>>  >>>>>>>>>>>>
>>>  >>>>>>>>>>>>>          complex
>>>  >>>>>>>>>>>>>>>         
>> template
>>>  >>>>>>>>>>>>>>>>         
>> code into your
>>>  >>> sources, with the
>>>  >>>>>>  cms you
>>>  >>>>>>>>    just
>>>  >>>>>>>>>      add
>>>  >>>>>>>>>>       code to
>>>  >>>>>>>>>>>
>>>  >>>>>>>>>>>>>         
>> lib/view.pmand/or
>>>  >>>>>>>>>>>>>>>>         
>> lib/path.pm to
>>>  >>> keep the document
>>>  >>>>>>  sources
>>>  >>>>>>>>    simple
>>>  >>>>>>>>>      and
>>>  >>>>>>>>>>       just
>>>  >>>>>>>>>>>        add
>>>  >>>>>>>>>>>>         more
>>>  >>>>>>>>>>>>>>>         
>> template
>>>  >>>>>>>>>>>>>>>>         
>> variables.  What I
>>>  >>> just finished
>>>  >>>>>>  in
>>>  >>>>>>>>    lib/view.pm
>>>  >>>>>>>>>      and
>>>  >>>>>>>>>>>>         lib/path.pm is
>>>  >>>>>>>>>>>>>>>         
>> directory
>>>  >>>>>>>>>>>>>>>>         
>> listing support
>>>  >>> for /docs.html
>>>  >>>>>>  but it can
>>>  >>>>>>>>    be
>>>  >>>>>>>>>      carried
>>>  >>>>>>>>>>       over
>>>  >>>>>>>>>>>        to
>>>  >>>>>>>>>>>>>          similar
>>>  >>>>>>>>>>>>>>>         
>> pages.
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    On Monday,
>>>  >>> March 17, 2014
>>>  >>>>>>  9:16 PM, Joe
>>>  >>>>>>>>
>>>  >>>>>>>>>      Schaefer
>>>  >>> <jo...@yahoo.com>
>>>  >>>>>>  wrote:
>>>  >>> Interesting ideas,
>>>  >>>>>>  thanks.  FWIW I
>>>  >>>>>>>>
>>>  >>>>>>>>>      think
>>>  >>>>>>>>>>       that
>>>  >>>>>>>>>>>        sort
>>>  >>>>>>>>>>>>>>>>>       
>>    of thing might
>>>  >>> be best
>>>  >>>>>>  supported as a
>>>  >>>>>>>>>      periodic
>>>  >>>>>>>>>>       cron
>>>  >>>>>>>>>>>>>>>>>       
>>    if we can
>>>  >>> write something
>>>  >>>>>>  stable
>>>  >>>>>>>>    enough,
>>>  >>>>>>>>>      because
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        pulling
>>>  >>>>>>>>>>>>>>>>>       
>>    stuff out of
>>>  >>> the git repo is
>>>  >>>>>>  something
>>>  >>>>>>>>    the
>>>  >>>>>>>>>      CMS
>>>  >>>>>>>>>>>        isn't
>>>  >>>>>>>>>>>>         going
>>>  >>>>>>>>>>>>>>>>>       
>>    to do all that
>>>  >>> well being an
>>>  >>>>>>  svn
>>>  >>>>>>>>>      application.
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    The CMS build
>>>  >>> results are
>>>  >>>>>>  available at
>>>  >>> http://thrift.staging.apache.org/
>>>  >>>>>>>>>>>>>>>>>       
>>    feel free to
>>>  >>> play with the
>>>  >>>>>>  sources in
>>>  >>> repos/asf/thrift/cms-site/trunk.
>>>  >>>>>>>>>>>>>>>>>       
>>    It's very
>>>  >>> fast, probably
>>>  >>>>>>  an order
>>>  >>>>>>>>    of
>>>  >>>>>>>>>>       magnitude
>>>  >>>>>>>>>>>        faster
>>>  >>>>>>>>>>>>         than
>>>  >>>>>>>>>>>>>          your current
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    tech.
>>>  >>>>>>>>>>>>>>>>>       
>>    Whole site
>>>  >>> builds in two
>>>  >>>>>>  seconds;
>>>  >>>>>>>>    fractions
>>>  >>>>>>>>>      of a
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        second
>>>  >>>>>>>>>>>>         for
>>>  >>>>>>>>>>>>>          typical
>>>  >>>>>>>>>>>>>>>           mods
>> to
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    content/
>>>  >>> markdown pages.
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    The CMS
>>>  >>> bookmarklet is
>>>  >>>>>>  compatible with
>>>  >>>>>>>>    the
>>>  >>>>>>>>>>       staging
>>>  >>>>>>>>>>>        site
>>>  >>>>>>>>>>>>         FWIW.
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         On
>>>  >>> Monday, March 17,
>>>  >>>>>>  2014 7:40
>>>  >>>>>>>>    PM,
>>>  >>>>>>>>>      Roger
>>>  >>>>>>>>>>       Meier
>>>  >>>>>>  <ro...@bufferoverflow.ch> wrote:
>>>
>>>>>>>>>>>>>>>>>>>>>    
>>        Hi Joe
>>>  >>> & Co
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         thanks
>>>  >>> for this test
>>>  >>>>>>  run with
>>>  >>>>>>>>    Apache
>>>  >>>>>>>>>      CMS!
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         What I
>>>  >>> would love to
>>>  >>>>>>  see is this:
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         Source
>>>  >>> file: => Web
>>>  >>>>>>  Site URL:
>>>  >>> test/README.md =>
>>>  >>>>>>>>>      thrift.apache.org/test
>>>  >>> test/STATUS.md =>
>>>  >>>>>>>>>>>       
>> thrift.apache.org/test/status
>>>  >>> test/keys/README.md
>>>  >>>>>>  =>
>>>  >>>>>>>>>>>       
>> thrift.apache.org/test/keys
>>>  >>>>>>  lib/<lang>/README.md =>
>>>  >>> thrift.apache.org/lib/<lang>
>>>  >>>>>>  lib/<lang>/test/README.md
>>>  >>>>>>>>    =>
>>>  >>>>>>>>    thrift.apache.org/lib/<lang>/test
>>>  >>>>>>>>    lib/<lang>/examples/README.md
>>>  >>>>>>>>>      =>
>>>  >>>>>>>>>     
>> thrift.apache.org/lib/<lang>/examples
>>>  >>> compiler/cpp/README.md
>>>  >>>>>>  =>
>>>  >>>>>>>>>>>>       
>> thrift.apache.org/compiler
>>>  >>> debian/README.md =>
>>>  >>>>>>>>>>       thrift.apache.org/debian
>>>  >>>>>>  contrib/<topic>/README.md
>>>  >>>>>>>>    =>
>>>  >>>>>>>>>>>>>         
>> thrift.apache.org/<topic>
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         just made
>>>  >>> the following
>>>  >>>>>>  patch to
>>>  >>>>>>>>>      rename all
>>>  >>>>>>>>>>       file
>>>  >>>>>>>>>>>        to
>>>  >>>>>>>>>>>>         .md
>>>  >>>>>>>>>>>>>          within our
>>>  >>>>>>>>>>>>>>>>         
>> source
>>>  >>>>>>>>>>>>>>>>>>   
>>         tree:
>>>  >>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>  >>>>>>>>>>>>>>>>>>   
>>         ... we
>>>  >>> have *41*
>>>  >>>>>>  md's within
>>>  >>>>>>>>    the
>>>  >>>>>>>>>      source
>>>  >>>>>>>>>>       tree
>>>  >>>>>>>>>>>        and
>>>  >>>>>>>>>>>>>          that's
>> the
>>>  >>>>>>>>>>>>>>>>         
>> place
>>>  >>>>>>>>>>>>>>>>>       
>>    where
>>>  >>>>>>>>>>>>>>>>>>   
>>         people
>>>  >>> look for
>>>  >>>>>>  documentation
>>>  >>>>>>>>    first.
>>>  >>>>>>>>>      =>
>>>  >>>>>>>>>>>        simple to
>>>  >>>>>>>>>>>>>          manage
>>>  >>>>>>>>>>>>>>>>>>   
>>         Would be
>>>  >>> user friendly
>>>  >>>>>>  to have
>>>  >>>>>>>>    all of
>>>  >>>>>>>>>      this
>>>  >>>>>>>>>>>        online
>>>  >>>>>>>>>>>>         with
>>>  >>>>>>>>>>>>>          each release
>>>  >>>>>>>>>>>>>>>>>>   
>>         with the
>>>  >>> URL layout
>>>  >>>>>>  mentioned
>>>  >>>>>>>>    above.
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         just
>>>  >>> received the
>>>  >>>>>>  buildboot...
>>>  >>>>>>>>>>>>>>>>>>   
>>         Do you
>>>  >>> have kind of a
>>>  >>>>>>  preview of
>>>  >>>>>>>>    your
>>>  >>>>>>>>>>       prototype?
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         all the
>>>  >>> best!
>>>  >>>>>>>>>>>>>>>>>>   
>>         -roger
>>>  >>>>>>>>>>>>>>>>>>   
>>         ;-r
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         Quoting
>>>  >>> Jake Farrell
>>>  >>>>>>>>>>>       
>> <jf...@apache.org>:
>>>  >>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>    
>>          No
>>>  >>> objections from
>>>  >>>>>>  me
>>>  >>> -Jake
>>>
>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>    
>>          On
>>>  >>> Mon, Mar 17,
>>>  >>>>>>  2014 at
>>>  >>>>>>>>    12:04 PM,
>>>  >>>>>>>>>      Joe
>>>  >>>>>>>>>>>        Schaefer
>>>  >>>>>>>>    <jo...@yahoo.com>wrote:
>>>
>>>>>>>>>>>>>>>>>>>>>
>>>  >>> Any objections
>>>  >>>>>>  to me
>>>  >>>>>>>>    making a
>>>  >>>>>>>>>      copy
>>>  >>>>>>>>>>       of
>>>  >>>>>>>>>>>        the
>>>  >>>>>>>>>>>>         site
>>>  >>> tree alongside
>>>  >>>>>>  it called
>>>  >>>>>>>>
>>>  >>>>>>>>>>       cms-site?
>>>  >>>>>>>>>>>        I'd
>>>  >>>>>>>>>>>>         like
>>>  >>>>>>>>>>>>>          to
>>>  >>> get cracking
>>>  >>>>>>  on knocking
>>>  >>>>>>>>    up
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>>        supporting
>>>  >>>>>>>>>>>>         perl
>>>  >>> for this so we
>>>  >>>>>>  can
>>>  >>>>>>>>    continue
>>>  >>>>>>>>>      to
>>>  >>>>>>>>>>>        brainstorm...
>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>   On Sunday,
>>>  >>>>>>  March 16,
>>>  >>>>>>>>    2014
>>>  >>>>>>>>>      1:53
>>>  >>>>>>>>>>       PM,
>>>  >>>>>>>>>>>        Joe
>>>  >>>>>>>>>>>>         Schaefer
>>>  >>>>>>  <jo...@yahoo.com>
>>>  >>> wrote:
>>>  >>>       On
>>>  >>>>>>  Sunday, March
>>>  >>>>>>>>    16,
>>>  >>>>>>>>>      2014
>>>  >>>>>>>>>>       1:40
>>>  >>>>>>>>>>>        PM,
>>>  >>>>>>>>>>>>         Jake
>>>  >>>>>>>>>>>>>          Farrell
>>>  >>>>>>  <jf...@apache.org>
>>>  >>>   wrote:
>>>  >>>   Hey Joe
>>>  >>>       Thanks
>>>  >>>>>>  for
>>>  >>>>>>>>    reaching
>>>  >>>>>>>>>      out, we
>>>  >>>>>>>>>>       chose
>>>  >>>>>>>>>>>        to
>>>  >>>>>>>>>>>>         go
>>>  >>>>>>>>>>>>>          with a site
>>>  >>>>>>>>>>>>>>>>>       
>>    generator
>>>  >>>>>>>>>>>>>>>>>>   
>>         over the
>>>  >>>       Apache
>>>  >>>>>>  CMS due to
>>>  >>>>>>>>    it
>>>  >>>>>>>>>>       initially
>>>  >>>>>>>>>>>        not
>>>  >>>>>>>>>>>>         meeting
>>>  >>>>>>>>>>>>>          all of
>>>  >>>>>>>>>>>>>>>>         
>> our
>>>  >>>>>>>>>>>>>>>>>       
>>    needs.
>>>  >>>>>>>>>>>>>>>>>>   
>>         Our
>>>  >>> current
>>>  >>>       needs
>>>  >>>>>>  for the site
>>>  >>>>>>>>    are
>>>  >>>       -
>>>  >>>>>>  Markdown to html
>>>  >>>>>>>>
>>>  >>>>>>>>>>       conversion
>>>  >>>   That
>>>  >>>>>>  one's easy-
>>>  >>>>>>>>    its
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       default
>>>  >>>>>>>>>>>        for
>>>  >>>>>>>>>>>>         the
>>>  >>>>>>>>>>>>>          cms.
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>       - Global
>>>  >>>>>>>>>      variables/config
>>>  >>>>>>>>>>       usable
>>>  >>>>>>>>>>>>         throughout
>>>  >>>>>>>>>>>>>          in a
>>>  >>>>>>>>>>>>>>>>         
>> template
>>>  >>>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>>   
>>         based
>>>  >>> layout
>>>  >>>   Easy too-
>>>  >>>>>>  just create
>>>  >>>>>>>>    a
>>>  >>>>>>>>>      perl
>>>  >>>>>>>>>>       hash
>>>  >>>>>>>>>>>>         somewhere and
>>>  >>>>>>>>>>>>>          make it
>>>  >>>>>>>>>>>>>>>>>       
>>    available
>>>  >>>>>>>>>>>>>>>>>>   
>>         to
>>>  >>> your views.
>>>  >>>   Code your
>>>  >>>>>>  views to
>>>  >>>>>>>>    pass
>>>  >>>>>>>>>      that
>>>  >>>>>>>>>>       hash
>>>  >>>>>>>>>>>        along to
>>>  >>>>>>>>>>>>         your
>>>  >>>>>>>>>>>>>>>>         
>> templates
>>>  >>>>>>>>>>>>>>>>>       
>>    and you
>>>  >>>>>>>>>>>>>>>>>>   
>>         are
>>>  >>> all set.
>>>  >>>   Note if your
>>>  >>>>>>  hash
>>>  >>>>>>>>    contains
>>>  >>>>>>>>>>       objects
>>>  >>>>>>>>>>>        you can
>>>  >>>>>>>>>>>>         make
>>>  >>>>>>>>>>>>>          method
>>>  >>>>>>>>>>>>>>>>         
>> calls
>>>  >>>>>>>>>>>>>>>>>       
>>    on
>>>  >>>>>>>>>>>>>>>>>>   
>>         them in
>>>  >>> your
>>>  >>>   templates.
>>>  >>>>>>  Note:
>>>  >>>>>>>>    while I
>>>  >>>>>>>>>>>        wouldn't
>>>  >>>>>>>>>>>>>          recommend
>> this in
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    general,
>>>  >>>>>>>>>>>>>>>>>>   
>>         for
>>>  >>> smaller
>>>  >>>   projects
>>>  >>>>>>  like thrift
>>>  >>>>>>>>    that
>>>  >>>>>>>>>      prefer
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>>         convenience
>>>  >>>>>>>>>>>>>          over
>>>  >>>>>>>>>>>>>>>>         
>> separation
>>>  >>>>>>>>>>>>>>>>>       
>>    of
>>>  >>>>>>>>>>>>>>>>>>   
>>         concerns
>>>  >>> you can
>>>  >>>   have the
>>>  >>>>>>  django
>>>  >>>>>>>>    template
>>>  >>>>>>>>>      engine
>>>  >>>>>>>>>>       do a
>>>  >>>>>>>>>>>        pass
>>>  >>>>>>>>>>>>         over
>>>  >>>>>>>>>>>>>          your
>>>  >>>>>>>>>>>>>>>>         
>> markdown
>>>  >>>>>>>>>>>>>>>>>>   
>>         before
>>>  >>> passing it
>>>  >>>   along to
>>>  >>>>>>  your actual
>>>  >>>>>>>>>      template
>>>  >>>>>>>>>>       page,
>>>  >>>>>>>>>>>        just
>>>  >>>>>>>>>>>>         as is
>>>  >>>>>>>>>>>>>          seemingly
>>>  >>>>>>>>>>>>>>>>
>>>  >>>>>>>>>>>>>>>>>       
>>    common to
>>>  >>>>>>>>>>>>>>>>>>   
>>         other
>>>  >>> popular
>>>  >>>   site
>>>  >>>>>>  generation
>>>  >>>>>>>>    software.
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>       - Syntax
>>>  >>>>>>>>    highlighting
>>>  >>>   Comes with
>>>  >>>>>>>>    python's
>>>  >>>>>>>>>      markdown
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        support,
>>>  >>>>>>>>>>>>         but
>>>  >>>>>>>>>>>>>          some
>>>  >>>>>>>>>>>>>>>>         
>> people
>>>  >>>>>>>>>>>>>>>>>       
>>    prefer
>>>  >>>>>>>>>>>>>>>>>>   
>>         the look
>>>  >>> of
>>>  >>>   javascript
>>>  >>>>>>>>    highlighters.
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>       - Easily
>>>  >>>>>>  include
>>>  >>>>>>>>    code
>>>  >>>>>>>>>>       snippets
>>>  >>>>>>>>>>>        from
>>>  >>>>>>>>>>>>         our
>>>  >>>>>>>>>>>>>          source code
>>>  >>>>>>>>>>>>>>>>         
>> base
>>>  >>>   Statically I
>>>  >>>>>>  hope.  No
>>>  >>>>>>>>    idea
>>>  >>>>>>>>>      how
>>>  >>>>>>>>>>       to
>>>  >>>>>>>>>>>        pull
>>>  >>>>>>>>>>>>>          snippets out
>> of
>>>  >>>>>>>>>>>>>>>>         
>> your
>>>  >>>>>>>>>>>>>>>>>       
>>    git
>>>  >>>>>>>>>>>>>>>>>>   
>>         repo
>>>  >>> via the
>>>  >>>   cms.
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>       -
>>>  >>>>>>  Ability to
>>>  >>>>>>>>    locally
>>>  >>>>>>>>>      test
>>>  >>>>>>>>>>       before
>>>  >>>>>>>>>>>>         committing
>>>  >>>   Belt and
>>>  >>>>>>  suspenders
>>>  >>>>>>>>    with
>>>  >>>>>>>>>      the
>>>  >>>>>>>>>>       cms- you
>>>  >>>>>>>>>>>        can
>>>  >>>>>>>>>>>>         build
>>>  >>>>>>>>>>>>>          your
>>>  >>>>>>>>>>>>>>>>         
>> changes
>>>  >>>>>>>>>>>>>>>>>>   
>>         before
>>>  >>> committing
>>>  >>>   with the
>>>  >>>>>>  build
>>>  >>>>>>>>    scripts,
>>>  >>>>>>>>>      browse
>>>  >>>>>>>>>>       your
>>>  >>>>>>>>>>>>         changes
>>>  >>>>>>>>>>>>>          before
>>>  >>>>>>>>>>>>>>>>         
>> committing
>>>  >>>>>>>>>>>>>>>>>       
>>    via
>>>  >>>>>>>>>>>>>>>>>>   
>>         the cms
>>>  >>>   webgui, or
>>>  >>>>>>  simply
>>>  >>>>>>>>    commit
>>>  >>>>>>>>>      your
>>>  >>>>>>>>>>       changes
>>>  >>>>>>>>>>>        and
>>>  >>>>>>>>>>>>         view
>>>  >>>>>>>>>>>>>          the
>>>  >>>>>>>>>>>>>>>>         
>> staging
>>>  >>>>>>>>>>>>>>>>>       
>>    site
>>>  >>>>>>>>>>>>>>>>>>   
>>         prior to
>>>  >>> live
>>>  >>>   publication
>>>  >>>>>>  (which is
>>>  >>>>>>>>    a
>>>  >>>>>>>>>      separate
>>>  >>>>>>>>>>
>>>  >>>>>>>>>>>        step).
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>       -Jake
>>>  >>>       On Sun,
>>>  >>>>>>  Mar 16,
>>>  >>>>>>>>    2014 at
>>>  >>>>>>>>>
>>>  >>>>>>>>>>       12:44 PM,
>>>  >>>>>>>>>>>        Joe
>>>  >>>>>>>>>>>>>          Schaefer
>>>  >>>>>>>>>>     
>> <jo...@yahoo.com>wrote:
>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>>  >>>         As
>>>  >>>>>>  it so
>>>  >>>>>>>>    happens I
>>>  >>>>>>>>>      am
>>>  >>>>>>>>>>>        interested
>>>  >>>>>>>>>>>>         in
>>>  >>>>>>>>>>>>>          working on
>>>  >>>>>>>>>>>>>>>>>       
>>    supporting
>>>  >>>>>>  thrift's
>>>  >>>>>>>>    use
>>>  >>>>>>>>>      case as
>>>  >>>>>>>>>>       a
>>>  >>>>>>>>>>>>         potential
>>>  >>>>>>>>>>>>>          user of
>>>  >>>>>>>>>>>>>>>>         
>> the
>>>  >>>>>>>>>>>>>>>>>       
>>    Apache
>>>  >>>>>>>>>>>>>>>>>>   
>>         CMS.
>>>  >>>>>>  While the CMS
>>>  >>>>>>>>    works
>>>  >>>>>>>>>      well
>>>  >>>>>>>>>>       for
>>>  >>>>>>>>>>>>         massive
>>>  >>>>>>>>>>>>>          projects
>>>  >>>>>>>>>>>>>>>>         
>> there
>>>  >>>>>>>>>>>>>>>>>       
>>    are
>>>  >>>>>>  things it
>>>  >>>>>>>>    could do
>>>  >>>>>>>>>>       better at
>>>  >>>>>>>>>>>>         supporting
>>>  >>>>>>>>>>>>>          for
>>>  >>>>>>>>>>>>>>>>         
>> more
>>>  >>>>>>>>>>>>>>>>>       
>>    moderate
>>>  >>>>>>  sized sites
>>>  >>>>>>>>    like
>>>  >>>>>>>>>>>        thrift's.
>>>  >>>>>>  I'd
>>>  >>>>>>>>    therefore
>>>  >>>>>>>>>      like
>>>  >>>>>>>>>>       to
>>>  >>>>>>>>>>>        engage
>>>  >>>>>>>>>>>>         you
>>>  >>>>>>>>>>>>>          folks in a
>>>  >>>>>>>>>>>>>>>>
>>>  >>> brainstorming session
>>>  >>>>>>  about what
>>>  >>>>>>>>    sorts of
>>>  >>>>>>>>>
>>>  >>>>>>>>>>       features
>>>  >>>>>>>>>>>        you
>>>  >>>>>>>>>>>>         want
>>>  >>>>>>>>>>>>>          for your
>>>  >>>>>>>>>>>>>>>>         
>> site
>>>  >>>>>>>>>>>>>>>>>       
>>    and
>>>  >>>>>>>>>>>>>>>>>>   
>>         to find
>>>  >>>>>>  simple ways of
>>>  >>>>>>>>
>>>  >>>>>>>>>>       supporting
>>>  >>>>>>>>>>>        those
>>>  >>>>>>>>>>>>>          features for
>>>  >>>>>>>>>>>>>>>>         
>> you.
>>>  >>>>>>  Thanks.
>>>  >
>>>
>>



Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Done Jake thanks!  One remark for Roger...

The file extension used for stuff in content/test/ really doesn't matter as far as the build goes.  What you need to do is supply a 'lang=text' argument to each snippet that is not a native markdown file; the build will automatically strip file extensions off the internal links in the markdown sources so httpd will do the right thing and resolve the extension via the MultiViews feature.

In the case of test/ThriftTest.thrift, I'd recommend changing the extension to .txt or even .md (in the content/test/ tree on the site sources in svn, not the code sources in git) so the CMS's webgui will fetch you a decent editor for that file.  Otherwise again the extension doesn't matter- the build will always convert it to html.



> On Tuesday, March 25, 2014 9:34 AM, Jake Farrell <jf...@apache.org> wrote:
> > Hey Joe
> Thanks for making the additions to the Apache CMS to meet our use case. I'm
> not seeing any blockers at the moment, lets cut over and we can fix any
> edge cases if needed
> 
> -Jake
> 
> 
> 
> On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer 
> <jo...@yahoo.com>wrote:
> 
>>  Done.  Anything else we need to look at before going live?
>> 
>>  Sent from my iPhone
>> 
>>  > On Mar 23, 2014, at 3:53 PM, Roger Meier 
> <ro...@bufferoverflow.ch>
>>  wrote:
>>  >
>>  > any idea how to fix this URL:
>>  > http://thrift.staging.apache.org/test/ThriftTest.thrift
>>  > we need to keep the filename for working links within the
>>  > test/README.md file.
>>  >
>>  > What about a footer for docs genertated from source tree?
>>  > [snippet:path=test/README.md, footer=1]
>>  >
>>  > I added the following snippet to content/test/index.md:
>>  > ---SNIP---
>>  > This page was generated from Apache Thrift's **source tree docs**:
>>  > [test/README.md](
>> 
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
>>  )
>>  > ---SNIP---
>>  >
>>  > would be great to get this generated into the page via snippet.
>>  >
>>  > -roger
>>  >
>>  >
>>  >> On 23.03.2014 19:04, Joe Schaefer wrote:
>>  >> The CMS codebase as well as the thrift build system
>>  >> already supports it Roger, someone just needs to create
>>  >> the files in the content tree that point at the source
>>  >> files in the git repo.  If you want to script this process
>>  >> in scripting language du jour, go for it, but I cannot
>>  >> justify spending contractor time doing this work for the
>>  >> community's behalf as it is unlikely to be needed elsewhere.
>>  >> I would think you only need the script to run when some
>>  >> path to a README.md file changes in the thrift.git tree,
>>  >> so it doesn't need to be incorporated into each site build.
>>  >>
>>  >>
>>  >>
>>  >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <
>>  roger@bufferoverflow.ch> wrote:
>>  >>>> Hi
>>  >>>
>>  >>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>  >>>>  Hey Joe
>>  >>>>  Reviewing the staging site it looks like its almost 99% 
> there other
>>  than
>>  >>>>  some styling within the code snippets. I'm good if we 
> want to cut
>>  over
>>  >>> to
>>  >>>>  using this and then work on the additional features that 
> had been
>>  mentioned
>>  >>>>  afterwords. Any objections to cutting over?
>>  >>> I would really like to see this automatic README.md includes 
> from
>>  source
>>  >>> tree, to have a real additional feature beside of what we 
> already have
>>  >>> today.
>>  >>>
>>  >>> I'm absolutely with you.
>>  >>> Apache projects shall use other Apache projects whenever 
> possible.
>>  >>>
>>  >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>  >>> <jo...@yahoo.com>wrote:
>>  >>>>
>>  >>>>>  May I suggest a script that creates files in content/
>>  >>>>>  containing a single line
>>  >>>>>
>>  >>>>>  [snippet:path=...]
>>  >>> this sounds like a plan
>>  >>>
>>  >>>>>
>>  >>>>>  (with no 'lang' argument) that lets the CMS 
> pull raw content
>>  >>> from
>>  >>>>>  thrift.git
>>  >>>>>  and add it directly to the built pages.  That way you 
> only need to
>>  run
>>  >>> the
>>  >>>>>  script that generates these files when a path changes 
> in your
>>  >>> thrift.git
>>  >>>>>  repo.
>>  >>> What I had in mind is a automatic search of README.md files 
> across the
>>  >>> source tree and generate the site with these automatically.
>>  >>> Kind of a central controller that maps all the URL's.
>>  >>> no additional work when a new README.md file is added.
>>  >>> however, a script can do this as interim soultion.
>>  >>>>>
>>  >>>>>  You can commit directly to the cms svn tree or via 
> the webgui which
>>  >>> does
>>  >>>>>  the same thing.
>>  >>> Great!
>>  >>>
>>  >>> What about local preview when doing perl modifications?
>>  >>>
>>  >>> -roger
>>  >>>
>>  >>>
>>  >>>>>
>>  >>>>>
>>  >>>>>>  On Saturday, March 22, 2014 4:20 PM, Roger Meier 
> <
>>  >>>>>  roger@bufferoverflow.ch> wrote:
>>  >>>>>>>  I still see some issues and still miss to 
> feature mentioned.
>>  >>>>>>  Now we have nonoc.ws and I'm able to hack 
> this a bit.
>>  >>>>>>
>>  >>>>>>  We had no real big issue, the thing I missed was 
> the code snippet
>>  >>> thing
>>  >>>>>>  and this is in on nanoc.ws and now also on Apache 
> CMS.
>>  >>>>>>
>>  >>>>>>  The thing we really need is the documentation 
> located within source
>>  >>> code
>>  >>>>>>  integrated on the web site.
>>  >>>>>>
>>  >>>>>>  most hosting platforms do render README.md and 
> that's why lot
>>  >>> of doc
>>  >>>>>>  will stay within the code and we should benefit 
> as well by
>>  >>> rendering
>>  >>>>>>  that to the web site and enhance the 
> documentation very easily.
>>  >>>>>>
>>  >>>>>>  I would like to render the 41 README.md files to 
> with the following
>>  >>>>>>  pattern, that's a must have before switching 
> to another CMS.
>>  >>>>>>
>>  >>>>>>  test/README.md => thrift.apache.org/test
>>  >>>>>>  test/STATUS.md => 
> thrift.apache.org/test/status
>>  >>>>>>  test/keys/README.md => 
> thrift.apache.org/test/keys
>>  >>>>>>  lib/<lang>/README.md => 
> thrift.apache.org/lib/<lang>
>>  >>>>>>  lib/<lang>/test/README.md =>
>>  >>> thrift.apache.org/lib/<lang>/test
>>  >>>>>>  lib/<lang>/examples/README.md =>
>>  >>>>>>  thrift.apache.org/lib/<lang>/examples
>>  >>>>>>  compiler/cpp/README.md => 
> thrift.apache.org/compiler
>>  >>>>>>  debian/README.md => thrift.apache.org/debian
>>  >>>>>>  contrib/<topic>/README.md =>
>>  >>> thrift.apache.org/<topic>
>>  >>>>>>
>>  >>>>>>  CPP tutorial seems to be broken on staging.
>>  >>>>>>
>>  >>>>>>  Do you commit to
>>  >>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>  >>>>>>  or is it web gui only?
>>  >>>>>>
>>  >>>>>>  How do you generate the site on your local 
> machine?
>>  >>>>>>
>>  >>>>>>
>>  >>>>>>  Should I reactivate my perl or do we stay with 
> ruby?
>>  >>>>>>  Committers and contributors, what do you think?
>>  >>>>>>
>>  >>>>>>
>>  >>>>>>  all the best
>>  >>>>>>  -roger
>>  >>>>>>
>>  >>>>>>
>>  >>>>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
>>  >>>>>>>
>>  >>>>>>>
>>  >>>>>>>    Ok I've now done the basic necessities 
> involved in
>>  >>> porting
>>  >>>>>>>    the site over.  Links have been adjusted, 
> templates ported,
>>  >>> files
>>  >>>>>  created,
>>  >>>>>>>    snippet feature activated.  At this point 
> I'm happy to
>>  >>> declare
>>  >>>>>>>    victory and migrate the thrift live site 
> over, as anything
>>  >>> broken that
>>  >>>>>>>    still remains can be dealt with on a 
> per-page basis with the
>>  >>>>>  bookmarklet.
>>  >>>>>>>
>>  >>>>>>>
>>  >>>>>>>
>>  >>>>>>>>    On Thursday, March 20, 2014 11:19 AM, 
> Joe Schaefer
>>  >>>>>>  <jo...@yahoo.com> wrote:
>>  >>>>>>>>>    Modulo some bizarre content 
> truncation out of
>>  >>> git-wip-us.apache.org
>>  >>>>>>>>    the snippet support is now active. At 
> this point I think
>>  >>> all the build
>>  >>>>>>>>    support you need in this project to 
> support every type of
>>  >>>>>  brainstorming
>>  >>>>>>>>    activity we've discussed is now 
> there, so it's
>>  >>> just up to you
>>  >>>>>>  guys to
>>  >>>>>>>>    now familiarize yourselves with the 
> build technology and
>>  >>> how to apply
>>  >>>>>>>>    it to your needs.  The site builds with 
> snippet support
>>  >>> are running
>>  >>>>>>  around
>>  >>>>>>>>    10 seconds, which is to be expected 
> with the network
>>  >>> interactions
>>  >>>>>>  involved.
>>  >>>>>>>>
>>  >>>>>>>>    I'm always willing to answer any 
> questions that come
>>  >>> up in the
>>  >>>>>>  interim,
>>  >>>>>>>>    but I wish you guys the best of luck in 
> the remaining
>>  >>> porting work to
>>  >>>>>>  be done.
>>  >>>>>>>>    All I see really are some links that 
> need to have the
>>  >>> trailing slashes
>>  >>>>>>  removed
>>  >>>>>>>>    and whatever <%= %> template 
> constructs that remain
>>  >>> need to be
>>  >>>>>>  ported to
>>  >>>>>>>>    django.  So it should be smooth 
> sailing, but as I said if
>>  >>> you hit any
>>  >>>>>>  snags
>>  >>>>>>>>    holler.  I'd really like to see the 
> live site tech
>>  >>> switched over to
>>  >>>>>>  the cms
>>  >>>>>>>>    stuff before Apachecon ends in early 
> April, hint hint.
>>  >>>>>>>>
>>  >>>>>>>>
>>  >>>>>>>>
>>  >>>>>>>>
>>  >>>>>>>>
>>  >>>>>>>>>>      On Wednesday, March 19, 2014 
> 10:41 PM, Joe Schaefer
>>  >>>>>>>>>    <jo...@yahoo.com> 
> wrote:
>>  >>>>>>>>>      > While I don't yet know 
> the url magic to
>>  >>> support branches
>>  >>>>>>  and tags
>>  >>>>>>>>    in git,
>>  >>>>>>>>>      I can say that the snippet 
> support is ready to play
>>  >>> with.  I
>>  >>>>>>  suggest just
>>  >>>>>>>>>      focusing on the /index.md page 
> first to see how it
>>  >>> works in
>>  >>>>>>  practice
>>  >>>>>>>>    because
>>  >>>>>>>>>      once it's fully enabled the 
> build will break
>>  >>> until all the
>>  >>>>>>  snippet
>>  >>>>>>>>    sources
>>  >>>>>>>>>      have been altered to conform with 
> the new style.
>>  >>>>>>>>>
>>  >>>>>>>>>      To turn it on for index.md 
> testing, there are a
>>  >>> couple of things
>>  >>>>>>  that need
>>  >>>>>>>>    to
>>  >>>>>>>>>      happen. First the [snippet:...] 
> marker should be
>>  >>> edited to be
>>  >>>>>>>>    [XXXsnippet:...]
>>  >>>>>>>>>      to enable testing without 
> breaking the build.
>>  >>> Second each marker
>>  >>>>>>  contains
>>  >>>>>>>>    a
>>  >>>>>>>>>      "token" argument 
> instead of line numbers
>>  >>> for more
>>  >>>>>>  stability under
>>  >>>>>>>>
>>  >>>>>>>>>      edits to the source code.  The 
> token argument is an
>>  >>> arbitrary
>>  >>>>>>  string that
>>  >>>>>>>>    is
>>  >>>>>>>>>      used to denote the boundaries of 
> the snippet within
>>  >>> the source
>>  >>>>>>  code.
>>  >>>>>>>>>       ASF::Value::Snippet will pull 
> out the lines from
>>  >>> the source file
>>  >>>>>>  between
>>  >>>>>>>>    the
>>  >>>>>>>>>      lines that contain the token 
> argument and format
>>  >>> them as a code
>>  >>>>>>  snippet
>>  >>>>>>>>    embedded
>>  >>>>>>>>>      into markdown. To get started 
> I'll copy over
>>  >>> the code
>>  >>>>>>  highlighting css
>>  >>>>>>>>    from
>>  >>>>>>>>>      www.apache.org but note that this 
> is all based on
>>  >>> python pygments
>>  >>>>>>  and there
>>  >>>>>>>>    are
>>  >>>>>>>>>      a variety of online css files to 
> choose from if
>>  >>> this one is not
>>  >>>>>>  to the
>>  >>>>>>>>>      group's liking.
>>  >>>>>>>>>
>>  >>>>>>>>>
>>  >>>>>>>>>
>>  >>>>>>>>>>       On Wednesday, March 19, 2014 
> 4:16 PM, Joe
>>  >>> Schaefer
>>  >>>>>>>>>      <jo...@yahoo.com> 
> wrote:
>>  >>>>>>>>>>       > Sorry I need to clarify 
> with an example:
>>  >>> look at
>>  >>>>>>>>>>      
> http://thrift.staging.apache.org/tutorial/
>>  >>> versus
>>  >>> http://thrift.staging.apache.org/tutorial.html.  The
>>  >>>>>>>>>>       former is generated from
>>  >>> content/tutorial/index.html
>>  >>>>>>>>>>       and the latter from 
> content/tutorial.md.  The
>>  >>> latter file
>>  >>>>>>>>>>       needs to be removed from the 
> tree now that
>>  >>> it's content
>>  >>>>>>>>>>       has been ported to
>>  >>> content/tutorial/index.html.  This
>>  >>>>>>>>>>       uses django template 
> inheritance to maintain
>>  >>> simplicity.
>>  >>>>>>>>>>
>>  >>>>>>>>>>       Other directories that 
> follow a similar
>>  >>> pattern should
>>  >>>>>>>>>>       also be ported in the same 
> fashion.
>>  >>>>>>>>>>
>>  >>>>>>>>>>
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        On Wednesday, March 19, 
> 2014 9:46 AM, Joe
>>  >>> Schaefer
>>  >>>>>>>>>>      
> <jo...@yahoo.com> wrote:
>>  >>>>>>>>>>>        > If someone's 
> looking for a way
>>  >>> to help with
>>  >>>>>>  the porting
>>  >>>>>>>>>>>        effort, consider 
> tackling the creation of
>>  >>> an index.html
>>  >>>>>>>>>>>        page in each subdir of 
> the content/ tree
>>  >>> (other than
>>  >>>>>>  the
>>  >>>>>>>>>>>        base which has an 
> /index.md).  The
>>  >>> contents of the file
>>  >>>>>>>>>>>        should be just
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>        {% include 
> 'default' %}
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>        (see the docs dir for 
> an example page
>>  >>> that can be
>>  >>>>>>  copied)
>>  >>>>>>>>>>>        and the build system 
> will take care of
>>  >>> generating the
>>  >>>>>>  page
>>  >>>>>>>>>>>        in a consistent fashion 
> with the rest of
>>  >>> the site.
>>  >>>>>>  Once
>>  >>>>>>>>>>>        that is done there are 
> a lot of pages
>>  >>> that function
>>  >>>>>>  like
>>  >>>>>>>>>>>        index pages but are 
> written in markdown
>>  >>> that can be
>>  >>>>>>  deleted,
>>  >>>>>>>>>>>        like docs.md and its 
> ilk.  Nanoc
>>  >>> transforms that file
>>  >>>>>>  into
>>  >>>>>>>>>>>        /docs/index.html but 
> that's kinda
>>  >>> crufty and not
>>  >>>>>>  supported
>>  >>>>>>>>>>>        by the CMS, which only 
> lets you alter
>>  >>> file extensions
>>  >>>>>>  not paths.
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>>         On Wednesday, 
> March 19, 2014 8:54
>>  >>> AM, Joe Schaefer
>>  >>>>>>>>>>>        
> <jo...@yahoo.com> wrote:
>>  >>>>>>>>>>>>         > I just 
> pencilled in snippet
>>  >>> preprocessing
>>  >>>>>>  support into
>>  >>>>>>>>>>>>         the thrift 
> builds.  Once Jake and I
>>  >>> have settled
>>  >>>>>>  on the
>>  >>>>>>>>>>>>         feature set of 
> ASF::Value::Snippet,
>>  >>> and we have
>>  >>>>>>  ported
>>  >>>>>>>>>>>>         the snippet 
> calling text within the
>>  >>> markdown pages
>>  >>>>>>>>>>>>         to the new format, 
> things will just
>>  >>> work (knock on
>>  >>>>>>  wood).
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          On Wednesday, 
> March 19, 2014
>>  >>> 6:48 AM, Joseph
>>  >>>>>>  Schaefer
>>  >>>>>>>>>>>>        
> <jo...@yahoo.com>
>>  >>> wrote:
>>  >>>>>>>>>>>>>          > Sure I 
> understand that
>>  >>> need.  If
>>  >>>>>>  there's a way
>>  >>>>>>>>    of
>>  >>>>>>>>>>       pulling the
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>>         document
>>  >>>>>>>>>>>>>          sources 
> directly from the web I
>>  >>> can parse the
>>  >>>>>>  content
>>  >>>>>>>>    to
>>  >>>>>>>>>      look for
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        snippet
>>  >>>>>>>>>>>>>          markers and 
> make those
>>  >>> available to the
>>  >>>>>>  template
>>  >>>>>>>>    system.
>>  >>>>>>>>>>       That's
>>  >>>>>>>>>>>        pretty
>>  >>>>>>>>>>>>         much
>>  >>>>>>>>>>>>>          how 
> www.apache.org is
>>  >>> generated.
>>  >>>>>>>>>>>>>
>>  >>>>>>>>>>>>>          Sent from my 
> iPhone
>>  >>>>>>>>>>>>>
>>  >>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>           On Mar 
> 19, 2014, at 5:28
>>  >>> AM, Henrique
>>  >>>>>>  Mendonça
>>  >>>>>>>>>>>>        
> <he...@apache.org>
>>  >>>>>>>>>>>>>          wrote:
>>  >>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>           Hi Joe,
>>  >>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>           Thanks 
> for your effort. I
>>  >>> just wanted to
>>  >>>>>>  add that
>>  >>>>>>>>    the
>>  >>>>>>>>>      code
>>  >>>>>>>>>>>        snippets
>>  >>>>>>>>>>>>         are a
>>  >>>>>>>>>>>>>>           crucial 
> feature for this
>>  >>> project, which
>>  >>>>>>  has way
>>  >>>>>>>>    more
>>  >>>>>>>>>      target
>>  >>>>>>>>>>>        languages
>>  >>>>>>>>>>>>         than
>>  >>>>>>>>>>>>>>           active 
> contributors. In
>>  >>> our case,
>>  >>>>>>  reducing manual
>>  >>>>>>>>>>       maintenance
>>  >>>>>>>>>>>        costs is
>>  >>>>>>>>>>>>         much
>>  >>>>>>>>>>>>>>           more 
> important than the
>>  >>> total site build
>>  >>>>>>  time.
>>  >>>>>>>>    Perhaps
>>  >>>>>>>>>      we
>>  >>>>>>>>>>       can
>>  >>>>>>>>>>>        also
>>  >>>>>>>>>>>>         solve
>>  >>>>>>>>>>>>>>           this in 
> the CMS, though.
>>  >>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>           - 
> Henrique
>>  >>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>           On 
> 19 March 2014
>>  >>> 03:17, Joe Schaefer
>>  >>>>>>>>>>>>        
> <jo...@yahoo.com>
>>  >>>>>>>>>>>>>          wrote:
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>           A 
> couple more thoughts
>>  >>> regarding the
>>  >>>>>>>>    background on
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       CMS...
>>  >>>>>>>>>>>>>>>           the 
> bulk of the focus
>>  >>> of the CMS up
>>  >>>>>>  until now
>>  >>>>>>>>    has
>>  >>>>>>>>>      been
>>  >>>>>>>>>>       to
>>  >>>>>>>>>>>>>>>          
> support really big
>>  >>> sites like maven
>>  >>>>>>  and
>>  >>>>>>>>    openoffice,
>>  >>>>>>>>>      both
>>  >>>>>>>>>>       of
>>  >>>>>>>>>>>>>>>          
> which have websites
>>  >>> well over 5GB
>>  >>>>>>  worth of
>>  >>>>>>>>    text
>>  >>>>>>>>>      files.
>>  >>>>>>>>>>       The
>>  >>>>>>>>>>>>>>>          
> build system was
>>  >>> hollowed out and
>>  >>>>>>  revamped to
>>  >>>>>>>>>      support
>>  >>>>>>>>>>>        external
>>  >>>>>>>>>>>>>>>          
> builds in other
>>  >>> programming
>>  >>>>>>  languages, as well
>>  >>>>>>>>    as
>>  >>>>>>>>>>       scaling up
>>  >>>>>>>>>>>>>>>           the 
> perl builds to
>>  >>> provide about 8
>>  >>>>>>  child
>>  >>>>>>>>    processes
>>  >>>>>>>>>      that
>>  >>>>>>>>>>       build
>>  >>>>>>>>>>>>>>>           the 
> site in parallel
>>  >>> by default.
>>  >>>>>>  Full site
>>  >>>>>>>>    build
>>  >>>>>>>>>      times
>>  >>>>>>>>>>       for
>>  >>>>>>>>>>>>>>>          
> openoffice went from
>>  >>> over 30 minutes
>>  >>>>>>  to
>>  >>>>>>>>    between 5
>>  >>>>>>>>>      to 10
>>  >>>>>>>>>>>        minutes
>>  >>>>>>>>>>>>>>>          
> depending on disk
>>  >>> activity, which
>>  >>>>>>  made
>>  >>>>>>>>>      experimentation
>>  >>>>>>>>>>       with
>>  >>>>>>>>>>>>         site-wide
>>  >>>>>>>>>>>>>>>          
> changes feasible on a
>>  >>> reasonable
>>  >>>>>>  timeframe.
>>  >>>>>>>>    At
>>  >>>>>>>>>      first
>>  >>>>>>>>>>       the
>>  >>>>>>>>>>>        project
>>  >>>>>>>>>>>>         was
>>  >>>>>>>>>>>>>          in
>>  >>>>>>>>>>>>>>>           the 
> habit of running
>>  >>> the builds
>>  >>>>>>  locally before
>>  >>>>>>>>
>>  >>>>>>>>>      checking
>>  >>>>>>>>>>       in
>>  >>>>>>>>>>>        their
>>  >>>>>>>>>>>>>          changes
>>  >>>>>>>>>>>>>>>          
> because the delay in
>>  >>> feedback
>>  >>>>>>  post-commit was
>>  >>>>>>>>>>       unreasonable,
>>  >>>>>>>>>>>        but
>>  >>>>>>>>>>>>         with
>>  >>>>>>>>>>>>>          smart
>>  >>>>>>>>>>>>>>>           use 
> of SSI the were
>>  >>> able to cut down
>>  >>>>>>  on the
>>  >>>>>>>>    number
>>  >>>>>>>>>      of
>>  >>>>>>>>>>       changes
>>  >>>>>>>>>>>        that
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          required
>>  >>>>>>>>>>>>>>>           full 
> site builds and
>>  >>> hence no longer
>>  >>>>>>  bother
>>  >>>>>>>>    with
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       whole
>>  >>>>>>>>>>>>         pre-build
>>  >>>>>>>>>>>>>          mumbo
>>  >>>>>>>>>>>>>>>          
> jumbo before checking
>>  >>> in changes.
>>  >>>>>>  The CMS is
>>  >>>>>>>>>      designed
>>  >>>>>>>>>>       to
>>  >>>>>>>>>>>        only
>>  >>>>>>>>>>>>         build
>>  >>>>>>>>>>>>>          pages
>>  >>>>>>>>>>>>>>>           that 
> were altered, and
>>  >>> if you just
>>  >>>>>>  edit a page
>>  >>>>>>>>    or
>>  >>>>>>>>>      two
>>  >>>>>>>>>>       only
>>  >>>>>>>>>>>        those
>>  >>>>>>>>>>>>         pages
>>  >>>>>>>>>>>>>          and
>>  >>>>>>>>>>>>>>>           the 
> pages that depend
>>  >>> on them will
>>  >>>>>>  be built.
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>           Now 
> that I've
>>  >>> turned my
>>  >>>>>>  attention to
>>  >>>>>>>>    thrift,
>>  >>>>>>>>>      there
>>  >>>>>>>>>>       are
>>  >>>>>>>>>>>        several
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          aspects
>>  >>>>>>>>>>>>>>>           that 
> are better off
>>  >>> being retuned
>>  >>>>>>  based on the
>>  >>>>>>>>
>>  >>>>>>>>>      modest
>>  >>>>>>>>>>       size of
>>  >>>>>>>>>>>        the
>>  >>>>>>>>>>>>         site.
>>  >>>>>>>>>>>>>>>          
> First of all you have
>>  >>> a sitemap url
>>  >>>>>>  that lists
>>  >>>>>>>>    all
>>  >>>>>>>>>      of
>>  >>>>>>>>>>       your
>>  >>>>>>>>>>>>>          
> markdown-based
>>  >>>>>>>>>>>>>>>          
> pages, which would be
>>  >>> a nonstarter
>>  >>>>>>  for a site
>>  >>>>>>>>    like
>>  >>>>>>>>>>>        openoffice.
>>  >>>>>>>>>>>>         The
>>  >>>>>>>>>>>>>>>          
> implications of the
>>  >>> sitemap url are
>>  >>>>>>  that every
>>  >>>>>>>>    page
>>  >>>>>>>>>
>>  >>>>>>>>>>       needs to
>>  >>>>>>>>>>>        be
>>  >>>>>>>>>>>>         built
>>  >>>>>>>>>>>>>          in
>>  >>>>>>>>>>>>>>>          
> memory just to
>>  >>> generate that page,
>>  >>>>>>  which leads
>>  >>>>>>>>    to a
>>  >>>>>>>>>      lot
>>  >>>>>>>>>>       of
>>  >>>>>>>>>>>>         redundancy
>>  >>>>>>>>>>>>>          in a
>>  >>>>>>>>>>>>>>>          
> build system designed
>>  >>> to run as
>>  >>>>>>  forked child
>>  >>>>>>>>>      processes.
>>  >>>>>>>>>>       We
>>  >>>>>>>>>>>        can do
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          better...
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>          
> I've done two
>>  >>> things to make
>>  >>>>>>  this work
>>  >>>>>>>>    well-
>>  >>>>>>>>>      first I
>>  >>>>>>>>>>       made
>>  >>>>>>>>>>>        the
>>  >>>>>>>>>>>>>          number of
>>  >>>>>>>>>>>>>>>          
> child processes
>>  >>> "aka
>>  >>>>>>  runners"
>>  >>>>>>>>    tunable on
>>  >>>>>>>>>      a
>>  >>>>>>>>>>>        per-project
>>  >>>>>>>>>>>>         basis,
>>  >>>>>>>>>>>>>          and since the
>>  >>>>>>>>>>>>>>>          
> sitemap is going to
>>  >>> build every page
>>  >>>>>>  anyway as
>>  >>>>>>>>    the
>>  >>>>>>>>>>       slowest
>>  >>>>>>>>>>>        page to
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          build, I
>>  >>>>>>>>>>>>>>>          
> memoized the main view
>>  >>> that builds
>>  >>>>>>  the
>>  >>>>>>>>    markdown
>>  >>>>>>>>>      pages
>>  >>>>>>>>>>       for
>>  >>>>>>>>>>>        thrift.
>>  >>>>>>>>>>>>         The
>>  >>>>>>>>>>>>>          best
>>  >>>>>>>>>>>>>>>          
> results are when
>>  >>> there's only
>>  >>>>>>  one runner
>>  >>>>>>>>    so we
>>  >>>>>>>>>      get
>>  >>>>>>>>>>       the
>>  >>>>>>>>>>>        full
>>  >>>>>>>>>>>>         benefit
>>  >>>>>>>>>>>>>          of
>>  >>>>>>>>>>>>>>>          
> memoization: typical
>>  >>> site build
>>  >>>>>>  times are
>>  >>>>>>>>>      consistently
>>  >>>>>>>>>>       under
>>  >>>>>>>>>>>        2
>>  >>>>>>>>>>>>         seconds
>>  >>>>>>>>>>>>>          now.
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>          
> You'll appreciate
>>  >>> why I am such
>>  >>>>>>  a
>>  >>>>>>>>    performance
>>  >>>>>>>>>>       stickler
>>  >>>>>>>>>>>        for the
>>  >>>>>>>>>>>>         CMS
>>  >>>>>>>>>>>>>          when
>>  >>>>>>>>>>>>>>>           you 
> start using the
>>  >>> bookmarklet,
>>  >>>>>>  since builds
>>  >>>>>>>>    are
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       only
>>  >>>>>>>>>>>>         asynchronous
>>  >>>>>>>>>>>>>>>           part 
> of the process
>>  >>> from making a
>>  >>>>>>  change to a
>>  >>>>>>>>    page
>>  >>>>>>>>>      and
>>  >>>>>>>>>>>        publishing
>>  >>>>>>>>>>>>         the
>>  >>>>>>>>>>>>>>>          
> results.  Ideally when
>>  >>> the system is
>>  >>>>>>  working
>>  >>>>>>>>    well
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       builds
>>  >>>>>>>>>>>>         happen
>>  >>>>>>>>>>>>>          before
>>  >>>>>>>>>>>>>>>           you 
> have time to go
>>  >>> looking for
>>  >>>>>>  them, but you
>>  >>>>>>>>    do
>>  >>>>>>>>>      need to
>>  >>>>>>>>>>       be
>>  >>>>>>>>>>>>         mindful of
>>  >>>>>>>>>>>>>          not
>>  >>>>>>>>>>>>>>>          
> publishing before the
>>  >>> built pages
>>  >>>>>>  have been
>>  >>>>>>>>>      committed
>>  >>>>>>>>>>       back to
>>  >>>>>>>>>>>        svn
>>  >>>>>>>>>>>>         by
>>  >>>>>>>>>>>>>>>          
> buildbot.
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>          
> On Monday, March
>>  >>> 17, 2014 11:59
>>  >>>>>>  PM, Joe
>>  >>>>>>>>>      Schaefer
>>  >>>>>>>>>>>>>          
> <jo...@yahoo.com>
>>  >>>>>>>>>>>>>>>          
> wrote:
>>  >>>>>>>>>>>>>>>>>        
>    Ok there's
>>  >>> enough of an
>>  >>>>>>  idea about
>>  >>>>>>>>    how
>>  >>>>>>>>>      to
>>  >>>>>>>>>>       port
>>  >>>>>>>>>>>        the
>>  >>>>>>>>>>>>         rest of
>>  >>>>>>>>>>>>>          the 
> site's
>>  >>>>>>>>>>>>>>>>          
> pages over based
>>  >>> on the porting
>>  >>>>>>  work
>>  >>>>>>>>    I've
>>  >>>>>>>>>>       already
>>  >>>>>>>>>>>        done
>>  >>>>>>>>>>>>         that
>>  >>>>>>>>>>>>>          it's time
>>  >>>>>>>>>>>>>>>>          
> for me to step
>>  >>> back and let you
>>  >>>>>>  guys catch
>>  >>>>>>>>    up.
>>  >>>>>>>>>
>>  >>>>>>>>>>       Basically
>>  >>>>>>>>>>>        the
>>  >>>>>>>>>>>>         idea
>>  >>>>>>>>>>>>>          is
>>  >>>>>>>>>>>>>>>           that 
> while
>>  >>>>>>>>>>>>>>>>          
> there is
>>  >>> templating support in
>>  >>>>>>  the
>>  >>>>>>>>    markdown
>>  >>>>>>>>>      sources,
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        it's
>>  >>>>>>>>>>>>>          fairly 
> limited
>>  >>>>>>>>>>>>>>>>          
> compared to what
>>  >>> nanoc offers,
>>  >>>>>>  but instead
>>  >>>>>>>>    of
>>  >>>>>>>>>>       writing a
>>  >>>>>>>>>>>        lot of
>>  >>>>>>>>>>>>
>>  >>>>>>>>>>>>>          complex
>>  >>>>>>>>>>>>>>>          
> template
>>  >>>>>>>>>>>>>>>>          
> code into your
>>  >>> sources, with the
>>  >>>>>>  cms you
>>  >>>>>>>>    just
>>  >>>>>>>>>      add
>>  >>>>>>>>>>       code to
>>  >>>>>>>>>>>
>>  >>>>>>>>>>>>>          
> lib/view.pmand/or
>>  >>>>>>>>>>>>>>>>          
> lib/path.pm to
>>  >>> keep the document
>>  >>>>>>  sources
>>  >>>>>>>>    simple
>>  >>>>>>>>>      and
>>  >>>>>>>>>>       just
>>  >>>>>>>>>>>        add
>>  >>>>>>>>>>>>         more
>>  >>>>>>>>>>>>>>>          
> template
>>  >>>>>>>>>>>>>>>>          
> variables.  What I
>>  >>> just finished
>>  >>>>>>  in
>>  >>>>>>>>    lib/view.pm
>>  >>>>>>>>>      and
>>  >>>>>>>>>>>>         lib/path.pm is
>>  >>>>>>>>>>>>>>>          
> directory
>>  >>>>>>>>>>>>>>>>          
> listing support
>>  >>> for /docs.html
>>  >>>>>>  but it can
>>  >>>>>>>>    be
>>  >>>>>>>>>      carried
>>  >>>>>>>>>>       over
>>  >>>>>>>>>>>        to
>>  >>>>>>>>>>>>>          similar
>>  >>>>>>>>>>>>>>>          
> pages.
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    On Monday,
>>  >>> March 17, 2014
>>  >>>>>>  9:16 PM, Joe
>>  >>>>>>>>
>>  >>>>>>>>>      Schaefer
>>  >>> <jo...@yahoo.com>
>>  >>>>>>  wrote:
>>  >>> Interesting ideas,
>>  >>>>>>  thanks.  FWIW I
>>  >>>>>>>>
>>  >>>>>>>>>      think
>>  >>>>>>>>>>       that
>>  >>>>>>>>>>>        sort
>>  >>>>>>>>>>>>>>>>>        
>    of thing might
>>  >>> be best
>>  >>>>>>  supported as a
>>  >>>>>>>>>      periodic
>>  >>>>>>>>>>       cron
>>  >>>>>>>>>>>>>>>>>        
>    if we can
>>  >>> write something
>>  >>>>>>  stable
>>  >>>>>>>>    enough,
>>  >>>>>>>>>      because
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        pulling
>>  >>>>>>>>>>>>>>>>>        
>    stuff out of
>>  >>> the git repo is
>>  >>>>>>  something
>>  >>>>>>>>    the
>>  >>>>>>>>>      CMS
>>  >>>>>>>>>>>        isn't
>>  >>>>>>>>>>>>         going
>>  >>>>>>>>>>>>>>>>>        
>    to do all that
>>  >>> well being an
>>  >>>>>>  svn
>>  >>>>>>>>>      application.
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    The CMS build
>>  >>> results are
>>  >>>>>>  available at
>>  >>> http://thrift.staging.apache.org/
>>  >>>>>>>>>>>>>>>>>        
>    feel free to
>>  >>> play with the
>>  >>>>>>  sources in
>>  >>> repos/asf/thrift/cms-site/trunk.
>>  >>>>>>>>>>>>>>>>>        
>    It's very
>>  >>> fast, probably
>>  >>>>>>  an order
>>  >>>>>>>>    of
>>  >>>>>>>>>>       magnitude
>>  >>>>>>>>>>>        faster
>>  >>>>>>>>>>>>         than
>>  >>>>>>>>>>>>>          your current
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    tech.
>>  >>>>>>>>>>>>>>>>>        
>    Whole site
>>  >>> builds in two
>>  >>>>>>  seconds;
>>  >>>>>>>>    fractions
>>  >>>>>>>>>      of a
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        second
>>  >>>>>>>>>>>>         for
>>  >>>>>>>>>>>>>          typical
>>  >>>>>>>>>>>>>>>           mods 
> to
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    content/
>>  >>> markdown pages.
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    The CMS
>>  >>> bookmarklet is
>>  >>>>>>  compatible with
>>  >>>>>>>>    the
>>  >>>>>>>>>>       staging
>>  >>>>>>>>>>>        site
>>  >>>>>>>>>>>>         FWIW.
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         On
>>  >>> Monday, March 17,
>>  >>>>>>  2014 7:40
>>  >>>>>>>>    PM,
>>  >>>>>>>>>      Roger
>>  >>>>>>>>>>       Meier
>>  >>>>>>  <ro...@bufferoverflow.ch> wrote:
>> 
>>>>>>>>>>>>>>>>>>>>     
>        Hi Joe
>>  >>> & Co
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         thanks
>>  >>> for this test
>>  >>>>>>  run with
>>  >>>>>>>>    Apache
>>  >>>>>>>>>      CMS!
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         What I
>>  >>> would love to
>>  >>>>>>  see is this:
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         Source
>>  >>> file: => Web
>>  >>>>>>  Site URL:
>>  >>> test/README.md =>
>>  >>>>>>>>>      thrift.apache.org/test
>>  >>> test/STATUS.md =>
>>  >>>>>>>>>>>        
> thrift.apache.org/test/status
>>  >>> test/keys/README.md
>>  >>>>>>  =>
>>  >>>>>>>>>>>        
> thrift.apache.org/test/keys
>>  >>>>>>  lib/<lang>/README.md =>
>>  >>> thrift.apache.org/lib/<lang>
>>  >>>>>>  lib/<lang>/test/README.md
>>  >>>>>>>>    =>
>>  >>>>>>>>    thrift.apache.org/lib/<lang>/test
>>  >>>>>>>>    lib/<lang>/examples/README.md
>>  >>>>>>>>>      =>
>>  >>>>>>>>>      
> thrift.apache.org/lib/<lang>/examples
>>  >>> compiler/cpp/README.md
>>  >>>>>>  =>
>>  >>>>>>>>>>>>        
> thrift.apache.org/compiler
>>  >>> debian/README.md =>
>>  >>>>>>>>>>       thrift.apache.org/debian
>>  >>>>>>  contrib/<topic>/README.md
>>  >>>>>>>>    =>
>>  >>>>>>>>>>>>>          
> thrift.apache.org/<topic>
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         just made
>>  >>> the following
>>  >>>>>>  patch to
>>  >>>>>>>>>      rename all
>>  >>>>>>>>>>       file
>>  >>>>>>>>>>>        to
>>  >>>>>>>>>>>>         .md
>>  >>>>>>>>>>>>>          within our
>>  >>>>>>>>>>>>>>>>          
> source
>>  >>>>>>>>>>>>>>>>>>    
>         tree:
>>  >>> https://issues.apache.org/jira/browse/THRIFT-2407
>>  >>>>>>>>>>>>>>>>>>    
>         ... we
>>  >>> have *41*
>>  >>>>>>  md's within
>>  >>>>>>>>    the
>>  >>>>>>>>>      source
>>  >>>>>>>>>>       tree
>>  >>>>>>>>>>>        and
>>  >>>>>>>>>>>>>          that's 
> the
>>  >>>>>>>>>>>>>>>>          
> place
>>  >>>>>>>>>>>>>>>>>        
>    where
>>  >>>>>>>>>>>>>>>>>>    
>         people
>>  >>> look for
>>  >>>>>>  documentation
>>  >>>>>>>>    first.
>>  >>>>>>>>>      =>
>>  >>>>>>>>>>>        simple to
>>  >>>>>>>>>>>>>          manage
>>  >>>>>>>>>>>>>>>>>>    
>         Would be
>>  >>> user friendly
>>  >>>>>>  to have
>>  >>>>>>>>    all of
>>  >>>>>>>>>      this
>>  >>>>>>>>>>>        online
>>  >>>>>>>>>>>>         with
>>  >>>>>>>>>>>>>          each release
>>  >>>>>>>>>>>>>>>>>>    
>         with the
>>  >>> URL layout
>>  >>>>>>  mentioned
>>  >>>>>>>>    above.
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         just
>>  >>> received the
>>  >>>>>>  buildboot...
>>  >>>>>>>>>>>>>>>>>>    
>         Do you
>>  >>> have kind of a
>>  >>>>>>  preview of
>>  >>>>>>>>    your
>>  >>>>>>>>>>       prototype?
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         all the
>>  >>> best!
>>  >>>>>>>>>>>>>>>>>>    
>         -roger
>>  >>>>>>>>>>>>>>>>>>    
>         ;-r
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         Quoting
>>  >>> Jake Farrell
>>  >>>>>>>>>>>        
> <jf...@apache.org>:
>>  >>>>>>>>>>>>>>>>>>
>> 
>>>>>>>>>>>>>>>>>>>>     
>          No
>>  >>> objections from
>>  >>>>>>  me
>>  >>> -Jake
>> 
>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>     
>          On
>>  >>> Mon, Mar 17,
>>  >>>>>>  2014 at
>>  >>>>>>>>    12:04 PM,
>>  >>>>>>>>>      Joe
>>  >>>>>>>>>>>        Schaefer
>>  >>>>>>>>    <jo...@yahoo.com>wrote:
>> 
>>>>>>>>>>>>>>>>>>>> 
>>  >>> Any objections
>>  >>>>>>  to me
>>  >>>>>>>>    making a
>>  >>>>>>>>>      copy
>>  >>>>>>>>>>       of
>>  >>>>>>>>>>>        the
>>  >>>>>>>>>>>>         site
>>  >>> tree alongside
>>  >>>>>>  it called
>>  >>>>>>>>
>>  >>>>>>>>>>       cms-site?
>>  >>>>>>>>>>>        I'd
>>  >>>>>>>>>>>>         like
>>  >>>>>>>>>>>>>          to
>>  >>> get cracking
>>  >>>>>>  on knocking
>>  >>>>>>>>    up
>>  >>>>>>>>>      the
>>  >>>>>>>>>>>        supporting
>>  >>>>>>>>>>>>         perl
>>  >>> for this so we
>>  >>>>>>  can
>>  >>>>>>>>    continue
>>  >>>>>>>>>      to
>>  >>>>>>>>>>>        brainstorm...
>> 
>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>> 
>>  >>>   On Sunday,
>>  >>>>>>  March 16,
>>  >>>>>>>>    2014
>>  >>>>>>>>>      1:53
>>  >>>>>>>>>>       PM,
>>  >>>>>>>>>>>        Joe
>>  >>>>>>>>>>>>         Schaefer
>>  >>>>>>  <jo...@yahoo.com>
>>  >>> wrote:
>>  >>>       On
>>  >>>>>>  Sunday, March
>>  >>>>>>>>    16,
>>  >>>>>>>>>      2014
>>  >>>>>>>>>>       1:40
>>  >>>>>>>>>>>        PM,
>>  >>>>>>>>>>>>         Jake
>>  >>>>>>>>>>>>>          Farrell
>>  >>>>>>  <jf...@apache.org>
>>  >>>   wrote:
>>  >>>   Hey Joe
>>  >>>       Thanks
>>  >>>>>>  for
>>  >>>>>>>>    reaching
>>  >>>>>>>>>      out, we
>>  >>>>>>>>>>       chose
>>  >>>>>>>>>>>        to
>>  >>>>>>>>>>>>         go
>>  >>>>>>>>>>>>>          with a site
>>  >>>>>>>>>>>>>>>>>        
>    generator
>>  >>>>>>>>>>>>>>>>>>    
>         over the
>>  >>>       Apache
>>  >>>>>>  CMS due to
>>  >>>>>>>>    it
>>  >>>>>>>>>>       initially
>>  >>>>>>>>>>>        not
>>  >>>>>>>>>>>>         meeting
>>  >>>>>>>>>>>>>          all of
>>  >>>>>>>>>>>>>>>>          
> our
>>  >>>>>>>>>>>>>>>>>        
>    needs.
>>  >>>>>>>>>>>>>>>>>>    
>         Our
>>  >>> current
>>  >>>       needs
>>  >>>>>>  for the site
>>  >>>>>>>>    are
>>  >>>       -
>>  >>>>>>  Markdown to html
>>  >>>>>>>>
>>  >>>>>>>>>>       conversion
>>  >>>   That
>>  >>>>>>  one's easy-
>>  >>>>>>>>    its
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       default
>>  >>>>>>>>>>>        for
>>  >>>>>>>>>>>>         the
>>  >>>>>>>>>>>>>          cms.
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>       - Global
>>  >>>>>>>>>      variables/config
>>  >>>>>>>>>>       usable
>>  >>>>>>>>>>>>         throughout
>>  >>>>>>>>>>>>>          in a
>>  >>>>>>>>>>>>>>>>          
> template
>>  >>>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>>    
>         based
>>  >>> layout
>>  >>>   Easy too-
>>  >>>>>>  just create
>>  >>>>>>>>    a
>>  >>>>>>>>>      perl
>>  >>>>>>>>>>       hash
>>  >>>>>>>>>>>>         somewhere and
>>  >>>>>>>>>>>>>          make it
>>  >>>>>>>>>>>>>>>>>        
>    available
>>  >>>>>>>>>>>>>>>>>>    
>         to
>>  >>> your views.
>>  >>>   Code your
>>  >>>>>>  views to
>>  >>>>>>>>    pass
>>  >>>>>>>>>      that
>>  >>>>>>>>>>       hash
>>  >>>>>>>>>>>        along to
>>  >>>>>>>>>>>>         your
>>  >>>>>>>>>>>>>>>>          
> templates
>>  >>>>>>>>>>>>>>>>>        
>    and you
>>  >>>>>>>>>>>>>>>>>>    
>         are
>>  >>> all set.
>>  >>>   Note if your
>>  >>>>>>  hash
>>  >>>>>>>>    contains
>>  >>>>>>>>>>       objects
>>  >>>>>>>>>>>        you can
>>  >>>>>>>>>>>>         make
>>  >>>>>>>>>>>>>          method
>>  >>>>>>>>>>>>>>>>          
> calls
>>  >>>>>>>>>>>>>>>>>        
>    on
>>  >>>>>>>>>>>>>>>>>>    
>         them in
>>  >>> your
>>  >>>   templates.
>>  >>>>>>  Note:
>>  >>>>>>>>    while I
>>  >>>>>>>>>>>        wouldn't
>>  >>>>>>>>>>>>>          recommend 
> this in
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    general,
>>  >>>>>>>>>>>>>>>>>>    
>         for
>>  >>> smaller
>>  >>>   projects
>>  >>>>>>  like thrift
>>  >>>>>>>>    that
>>  >>>>>>>>>      prefer
>>  >>>>>>>>>>
>>  >>>>>>>>>>>>         convenience
>>  >>>>>>>>>>>>>          over
>>  >>>>>>>>>>>>>>>>          
> separation
>>  >>>>>>>>>>>>>>>>>        
>    of
>>  >>>>>>>>>>>>>>>>>>    
>         concerns
>>  >>> you can
>>  >>>   have the
>>  >>>>>>  django
>>  >>>>>>>>    template
>>  >>>>>>>>>      engine
>>  >>>>>>>>>>       do a
>>  >>>>>>>>>>>        pass
>>  >>>>>>>>>>>>         over
>>  >>>>>>>>>>>>>          your
>>  >>>>>>>>>>>>>>>>          
> markdown
>>  >>>>>>>>>>>>>>>>>>    
>         before
>>  >>> passing it
>>  >>>   along to
>>  >>>>>>  your actual
>>  >>>>>>>>>      template
>>  >>>>>>>>>>       page,
>>  >>>>>>>>>>>        just
>>  >>>>>>>>>>>>         as is
>>  >>>>>>>>>>>>>          seemingly
>>  >>>>>>>>>>>>>>>>
>>  >>>>>>>>>>>>>>>>>        
>    common to
>>  >>>>>>>>>>>>>>>>>>    
>         other
>>  >>> popular
>>  >>>   site
>>  >>>>>>  generation
>>  >>>>>>>>    software.
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>       - Syntax
>>  >>>>>>>>    highlighting
>>  >>>   Comes with
>>  >>>>>>>>    python's
>>  >>>>>>>>>      markdown
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        support,
>>  >>>>>>>>>>>>         but
>>  >>>>>>>>>>>>>          some
>>  >>>>>>>>>>>>>>>>          
> people
>>  >>>>>>>>>>>>>>>>>        
>    prefer
>>  >>>>>>>>>>>>>>>>>>    
>         the look
>>  >>> of
>>  >>>   javascript
>>  >>>>>>>>    highlighters.
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>       - Easily
>>  >>>>>>  include
>>  >>>>>>>>    code
>>  >>>>>>>>>>       snippets
>>  >>>>>>>>>>>        from
>>  >>>>>>>>>>>>         our
>>  >>>>>>>>>>>>>          source code
>>  >>>>>>>>>>>>>>>>          
> base
>>  >>>   Statically I
>>  >>>>>>  hope.  No
>>  >>>>>>>>    idea
>>  >>>>>>>>>      how
>>  >>>>>>>>>>       to
>>  >>>>>>>>>>>        pull
>>  >>>>>>>>>>>>>          snippets out 
> of
>>  >>>>>>>>>>>>>>>>          
> your
>>  >>>>>>>>>>>>>>>>>        
>    git
>>  >>>>>>>>>>>>>>>>>>    
>         repo
>>  >>> via the
>>  >>>   cms.
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>       -
>>  >>>>>>  Ability to
>>  >>>>>>>>    locally
>>  >>>>>>>>>      test
>>  >>>>>>>>>>       before
>>  >>>>>>>>>>>>         committing
>>  >>>   Belt and
>>  >>>>>>  suspenders
>>  >>>>>>>>    with
>>  >>>>>>>>>      the
>>  >>>>>>>>>>       cms- you
>>  >>>>>>>>>>>        can
>>  >>>>>>>>>>>>         build
>>  >>>>>>>>>>>>>          your
>>  >>>>>>>>>>>>>>>>          
> changes
>>  >>>>>>>>>>>>>>>>>>    
>         before
>>  >>> committing
>>  >>>   with the
>>  >>>>>>  build
>>  >>>>>>>>    scripts,
>>  >>>>>>>>>      browse
>>  >>>>>>>>>>       your
>>  >>>>>>>>>>>>         changes
>>  >>>>>>>>>>>>>          before
>>  >>>>>>>>>>>>>>>>          
> committing
>>  >>>>>>>>>>>>>>>>>        
>    via
>>  >>>>>>>>>>>>>>>>>>    
>         the cms
>>  >>>   webgui, or
>>  >>>>>>  simply
>>  >>>>>>>>    commit
>>  >>>>>>>>>      your
>>  >>>>>>>>>>       changes
>>  >>>>>>>>>>>        and
>>  >>>>>>>>>>>>         view
>>  >>>>>>>>>>>>>          the
>>  >>>>>>>>>>>>>>>>          
> staging
>>  >>>>>>>>>>>>>>>>>        
>    site
>>  >>>>>>>>>>>>>>>>>>    
>         prior to
>>  >>> live
>>  >>>   publication
>>  >>>>>>  (which is
>>  >>>>>>>>    a
>>  >>>>>>>>>      separate
>>  >>>>>>>>>>
>>  >>>>>>>>>>>        step).
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>       -Jake
>>  >>>       On Sun,
>>  >>>>>>  Mar 16,
>>  >>>>>>>>    2014 at
>>  >>>>>>>>>
>>  >>>>>>>>>>       12:44 PM,
>>  >>>>>>>>>>>        Joe
>>  >>>>>>>>>>>>>          Schaefer
>>  >>>>>>>>>>      
> <jo...@yahoo.com>wrote:
>> 
>>>>>>>>>>>>>>>>>>>>>>> 
>>  >>>         As
>>  >>>>>>  it so
>>  >>>>>>>>    happens I
>>  >>>>>>>>>      am
>>  >>>>>>>>>>>        interested
>>  >>>>>>>>>>>>         in
>>  >>>>>>>>>>>>>          working on
>>  >>>>>>>>>>>>>>>>>        
>    supporting
>>  >>>>>>  thrift's
>>  >>>>>>>>    use
>>  >>>>>>>>>      case as
>>  >>>>>>>>>>       a
>>  >>>>>>>>>>>>         potential
>>  >>>>>>>>>>>>>          user of
>>  >>>>>>>>>>>>>>>>          
> the
>>  >>>>>>>>>>>>>>>>>        
>    Apache
>>  >>>>>>>>>>>>>>>>>>    
>         CMS.
>>  >>>>>>  While the CMS
>>  >>>>>>>>    works
>>  >>>>>>>>>      well
>>  >>>>>>>>>>       for
>>  >>>>>>>>>>>>         massive
>>  >>>>>>>>>>>>>          projects
>>  >>>>>>>>>>>>>>>>          
> there
>>  >>>>>>>>>>>>>>>>>        
>    are
>>  >>>>>>  things it
>>  >>>>>>>>    could do
>>  >>>>>>>>>>       better at
>>  >>>>>>>>>>>>         supporting
>>  >>>>>>>>>>>>>          for
>>  >>>>>>>>>>>>>>>>          
> more
>>  >>>>>>>>>>>>>>>>>        
>    moderate
>>  >>>>>>  sized sites
>>  >>>>>>>>    like
>>  >>>>>>>>>>>        thrift's.
>>  >>>>>>  I'd
>>  >>>>>>>>    therefore
>>  >>>>>>>>>      like
>>  >>>>>>>>>>       to
>>  >>>>>>>>>>>        engage
>>  >>>>>>>>>>>>         you
>>  >>>>>>>>>>>>>          folks in a
>>  >>>>>>>>>>>>>>>>
>>  >>> brainstorming session
>>  >>>>>>  about what
>>  >>>>>>>>    sorts of
>>  >>>>>>>>>
>>  >>>>>>>>>>       features
>>  >>>>>>>>>>>        you
>>  >>>>>>>>>>>>         want
>>  >>>>>>>>>>>>>          for your
>>  >>>>>>>>>>>>>>>>          
> site
>>  >>>>>>>>>>>>>>>>>        
>    and
>>  >>>>>>>>>>>>>>>>>>    
>         to find
>>  >>>>>>  simple ways of
>>  >>>>>>>>
>>  >>>>>>>>>>       supporting
>>  >>>>>>>>>>>        those
>>  >>>>>>>>>>>>>          features for
>>  >>>>>>>>>>>>>>>>          
> you.
>>  >>>>>>  Thanks.
>>  >
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Jake Farrell <jf...@apache.org>.
Hey Joe
Thanks for making the additions to the Apache CMS to meet our use case. I'm
not seeing any blockers at the moment, lets cut over and we can fix any
edge cases if needed

-Jake



On Mon, Mar 24, 2014 at 1:39 PM, Joseph Schaefer <jo...@yahoo.com>wrote:

> Done.  Anything else we need to look at before going live?
>
> Sent from my iPhone
>
> > On Mar 23, 2014, at 3:53 PM, Roger Meier <ro...@bufferoverflow.ch>
> wrote:
> >
> > any idea how to fix this URL:
> > http://thrift.staging.apache.org/test/ThriftTest.thrift
> > we need to keep the filename for working links within the
> > test/README.md file.
> >
> > What about a footer for docs genertated from source tree?
> > [snippet:path=test/README.md, footer=1]
> >
> > I added the following snippet to content/test/index.md:
> > ---SNIP---
> > This page was generated from Apache Thrift's **source tree docs**:
> > [test/README.md](
> https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD
> )
> > ---SNIP---
> >
> > would be great to get this generated into the page via snippet.
> >
> > -roger
> >
> >
> >> On 23.03.2014 19:04, Joe Schaefer wrote:
> >> The CMS codebase as well as the thrift build system
> >> already supports it Roger, someone just needs to create
> >> the files in the content tree that point at the source
> >> files in the git repo.  If you want to script this process
> >> in scripting language du jour, go for it, but I cannot
> >> justify spending contractor time doing this work for the
> >> community's behalf as it is unlikely to be needed elsewhere.
> >> I would think you only need the script to run when some
> >> path to a README.md file changes in the thrift.git tree,
> >> so it doesn't need to be incorporated into each site build.
> >>
> >>
> >>
> >>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <
> roger@bufferoverflow.ch> wrote:
> >>>> Hi
> >>>
> >>>> On 23.03.2014 03:19, Jake Farrell wrote:
> >>>>  Hey Joe
> >>>>  Reviewing the staging site it looks like its almost 99% there other
> than
> >>>>  some styling within the code snippets. I'm good if we want to cut
> over
> >>> to
> >>>>  using this and then work on the additional features that had been
> mentioned
> >>>>  afterwords. Any objections to cutting over?
> >>> I would really like to see this automatic README.md includes from
> source
> >>> tree, to have a real additional feature beside of what we already have
> >>> today.
> >>>
> >>> I'm absolutely with you.
> >>> Apache projects shall use other Apache projects whenever possible.
> >>>
> >>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
> >>> <jo...@yahoo.com>wrote:
> >>>>
> >>>>>  May I suggest a script that creates files in content/
> >>>>>  containing a single line
> >>>>>
> >>>>>  [snippet:path=...]
> >>> this sounds like a plan
> >>>
> >>>>>
> >>>>>  (with no 'lang' argument) that lets the CMS pull raw content
> >>> from
> >>>>>  thrift.git
> >>>>>  and add it directly to the built pages.  That way you only need to
> run
> >>> the
> >>>>>  script that generates these files when a path changes in your
> >>> thrift.git
> >>>>>  repo.
> >>> What I had in mind is a automatic search of README.md files across the
> >>> source tree and generate the site with these automatically.
> >>> Kind of a central controller that maps all the URL's.
> >>> no additional work when a new README.md file is added.
> >>> however, a script can do this as interim soultion.
> >>>>>
> >>>>>  You can commit directly to the cms svn tree or via the webgui which
> >>> does
> >>>>>  the same thing.
> >>> Great!
> >>>
> >>> What about local preview when doing perl modifications?
> >>>
> >>> -roger
> >>>
> >>>
> >>>>>
> >>>>>
> >>>>>>  On Saturday, March 22, 2014 4:20 PM, Roger Meier <
> >>>>>  roger@bufferoverflow.ch> wrote:
> >>>>>>>  I still see some issues and still miss to feature mentioned.
> >>>>>>  Now we have nonoc.ws and I'm able to hack this a bit.
> >>>>>>
> >>>>>>  We had no real big issue, the thing I missed was the code snippet
> >>> thing
> >>>>>>  and this is in on nanoc.ws and now also on Apache CMS.
> >>>>>>
> >>>>>>  The thing we really need is the documentation located within source
> >>> code
> >>>>>>  integrated on the web site.
> >>>>>>
> >>>>>>  most hosting platforms do render README.md and that's why lot
> >>> of doc
> >>>>>>  will stay within the code and we should benefit as well by
> >>> rendering
> >>>>>>  that to the web site and enhance the documentation very easily.
> >>>>>>
> >>>>>>  I would like to render the 41 README.md files to with the following
> >>>>>>  pattern, that's a must have before switching to another CMS.
> >>>>>>
> >>>>>>  test/README.md => thrift.apache.org/test
> >>>>>>  test/STATUS.md => thrift.apache.org/test/status
> >>>>>>  test/keys/README.md => thrift.apache.org/test/keys
> >>>>>>  lib/<lang>/README.md => thrift.apache.org/lib/<lang>
> >>>>>>  lib/<lang>/test/README.md =>
> >>> thrift.apache.org/lib/<lang>/test
> >>>>>>  lib/<lang>/examples/README.md =>
> >>>>>>  thrift.apache.org/lib/<lang>/examples
> >>>>>>  compiler/cpp/README.md => thrift.apache.org/compiler
> >>>>>>  debian/README.md => thrift.apache.org/debian
> >>>>>>  contrib/<topic>/README.md =>
> >>> thrift.apache.org/<topic>
> >>>>>>
> >>>>>>  CPP tutorial seems to be broken on staging.
> >>>>>>
> >>>>>>  Do you commit to
> >>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
> >>>>>>  or is it web gui only?
> >>>>>>
> >>>>>>  How do you generate the site on your local machine?
> >>>>>>
> >>>>>>
> >>>>>>  Should I reactivate my perl or do we stay with ruby?
> >>>>>>  Committers and contributors, what do you think?
> >>>>>>
> >>>>>>
> >>>>>>  all the best
> >>>>>>  -roger
> >>>>>>
> >>>>>>
> >>>>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
> >>>>>>>
> >>>>>>>
> >>>>>>>    Ok I've now done the basic necessities involved in
> >>> porting
> >>>>>>>    the site over.  Links have been adjusted, templates ported,
> >>> files
> >>>>>  created,
> >>>>>>>    snippet feature activated.  At this point I'm happy to
> >>> declare
> >>>>>>>    victory and migrate the thrift live site over, as anything
> >>> broken that
> >>>>>>>    still remains can be dealt with on a per-page basis with the
> >>>>>  bookmarklet.
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>    On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
> >>>>>>  <jo...@yahoo.com> wrote:
> >>>>>>>>>    Modulo some bizarre content truncation out of
> >>> git-wip-us.apache.org
> >>>>>>>>    the snippet support is now active. At this point I think
> >>> all the build
> >>>>>>>>    support you need in this project to support every type of
> >>>>>  brainstorming
> >>>>>>>>    activity we've discussed is now there, so it's
> >>> just up to you
> >>>>>>  guys to
> >>>>>>>>    now familiarize yourselves with the build technology and
> >>> how to apply
> >>>>>>>>    it to your needs.  The site builds with snippet support
> >>> are running
> >>>>>>  around
> >>>>>>>>    10 seconds, which is to be expected with the network
> >>> interactions
> >>>>>>  involved.
> >>>>>>>>
> >>>>>>>>    I'm always willing to answer any questions that come
> >>> up in the
> >>>>>>  interim,
> >>>>>>>>    but I wish you guys the best of luck in the remaining
> >>> porting work to
> >>>>>>  be done.
> >>>>>>>>    All I see really are some links that need to have the
> >>> trailing slashes
> >>>>>>  removed
> >>>>>>>>    and whatever <%= %> template constructs that remain
> >>> need to be
> >>>>>>  ported to
> >>>>>>>>    django.  So it should be smooth sailing, but as I said if
> >>> you hit any
> >>>>>>  snags
> >>>>>>>>    holler.  I'd really like to see the live site tech
> >>> switched over to
> >>>>>>  the cms
> >>>>>>>>    stuff before Apachecon ends in early April, hint hint.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>      On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
> >>>>>>>>>    <jo...@yahoo.com> wrote:
> >>>>>>>>>      > While I don't yet know the url magic to
> >>> support branches
> >>>>>>  and tags
> >>>>>>>>    in git,
> >>>>>>>>>      I can say that the snippet support is ready to play
> >>> with.  I
> >>>>>>  suggest just
> >>>>>>>>>      focusing on the /index.md page first to see how it
> >>> works in
> >>>>>>  practice
> >>>>>>>>    because
> >>>>>>>>>      once it's fully enabled the build will break
> >>> until all the
> >>>>>>  snippet
> >>>>>>>>    sources
> >>>>>>>>>      have been altered to conform with the new style.
> >>>>>>>>>
> >>>>>>>>>      To turn it on for index.md testing, there are a
> >>> couple of things
> >>>>>>  that need
> >>>>>>>>    to
> >>>>>>>>>      happen. First the [snippet:...] marker should be
> >>> edited to be
> >>>>>>>>    [XXXsnippet:...]
> >>>>>>>>>      to enable testing without breaking the build.
> >>> Second each marker
> >>>>>>  contains
> >>>>>>>>    a
> >>>>>>>>>      "token" argument instead of line numbers
> >>> for more
> >>>>>>  stability under
> >>>>>>>>
> >>>>>>>>>      edits to the source code.  The token argument is an
> >>> arbitrary
> >>>>>>  string that
> >>>>>>>>    is
> >>>>>>>>>      used to denote the boundaries of the snippet within
> >>> the source
> >>>>>>  code.
> >>>>>>>>>       ASF::Value::Snippet will pull out the lines from
> >>> the source file
> >>>>>>  between
> >>>>>>>>    the
> >>>>>>>>>      lines that contain the token argument and format
> >>> them as a code
> >>>>>>  snippet
> >>>>>>>>    embedded
> >>>>>>>>>      into markdown. To get started I'll copy over
> >>> the code
> >>>>>>  highlighting css
> >>>>>>>>    from
> >>>>>>>>>      www.apache.org but note that this is all based on
> >>> python pygments
> >>>>>>  and there
> >>>>>>>>    are
> >>>>>>>>>      a variety of online css files to choose from if
> >>> this one is not
> >>>>>>  to the
> >>>>>>>>>      group's liking.
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>       On Wednesday, March 19, 2014 4:16 PM, Joe
> >>> Schaefer
> >>>>>>>>>      <jo...@yahoo.com> wrote:
> >>>>>>>>>>       > Sorry I need to clarify with an example:
> >>> look at
> >>>>>>>>>>       http://thrift.staging.apache.org/tutorial/
> >>> versus
> >>> http://thrift.staging.apache.org/tutorial.html.  The
> >>>>>>>>>>       former is generated from
> >>> content/tutorial/index.html
> >>>>>>>>>>       and the latter from content/tutorial.md.  The
> >>> latter file
> >>>>>>>>>>       needs to be removed from the tree now that
> >>> it's content
> >>>>>>>>>>       has been ported to
> >>> content/tutorial/index.html.  This
> >>>>>>>>>>       uses django template inheritance to maintain
> >>> simplicity.
> >>>>>>>>>>
> >>>>>>>>>>       Other directories that follow a similar
> >>> pattern should
> >>>>>>>>>>       also be ported in the same fashion.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>        On Wednesday, March 19, 2014 9:46 AM, Joe
> >>> Schaefer
> >>>>>>>>>>       <jo...@yahoo.com> wrote:
> >>>>>>>>>>>        > If someone's looking for a way
> >>> to help with
> >>>>>>  the porting
> >>>>>>>>>>>        effort, consider tackling the creation of
> >>> an index.html
> >>>>>>>>>>>        page in each subdir of the content/ tree
> >>> (other than
> >>>>>>  the
> >>>>>>>>>>>        base which has an /index.md).  The
> >>> contents of the file
> >>>>>>>>>>>        should be just
> >>>>>>>>>>>
> >>>>>>>>>>>        {% include 'default' %}
> >>>>>>>>>>>
> >>>>>>>>>>>        (see the docs dir for an example page
> >>> that can be
> >>>>>>  copied)
> >>>>>>>>>>>        and the build system will take care of
> >>> generating the
> >>>>>>  page
> >>>>>>>>>>>        in a consistent fashion with the rest of
> >>> the site.
> >>>>>>  Once
> >>>>>>>>>>>        that is done there are a lot of pages
> >>> that function
> >>>>>>  like
> >>>>>>>>>>>        index pages but are written in markdown
> >>> that can be
> >>>>>>  deleted,
> >>>>>>>>>>>        like docs.md and its ilk.  Nanoc
> >>> transforms that file
> >>>>>>  into
> >>>>>>>>>>>        /docs/index.html but that's kinda
> >>> crufty and not
> >>>>>>  supported
> >>>>>>>>>>>        by the CMS, which only lets you alter
> >>> file extensions
> >>>>>>  not paths.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>>         On Wednesday, March 19, 2014 8:54
> >>> AM, Joe Schaefer
> >>>>>>>>>>>        <jo...@yahoo.com> wrote:
> >>>>>>>>>>>>         > I just pencilled in snippet
> >>> preprocessing
> >>>>>>  support into
> >>>>>>>>>>>>         the thrift builds.  Once Jake and I
> >>> have settled
> >>>>>>  on the
> >>>>>>>>>>>>         feature set of ASF::Value::Snippet,
> >>> and we have
> >>>>>>  ported
> >>>>>>>>>>>>         the snippet calling text within the
> >>> markdown pages
> >>>>>>>>>>>>         to the new format, things will just
> >>> work (knock on
> >>>>>>  wood).
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          On Wednesday, March 19, 2014
> >>> 6:48 AM, Joseph
> >>>>>>  Schaefer
> >>>>>>>>>>>>         <jo...@yahoo.com>
> >>> wrote:
> >>>>>>>>>>>>>          > Sure I understand that
> >>> need.  If
> >>>>>>  there's a way
> >>>>>>>>    of
> >>>>>>>>>>       pulling the
> >>>>>>>>>>>
> >>>>>>>>>>>>         document
> >>>>>>>>>>>>>          sources directly from the web I
> >>> can parse the
> >>>>>>  content
> >>>>>>>>    to
> >>>>>>>>>      look for
> >>>>>>>>>>
> >>>>>>>>>>>        snippet
> >>>>>>>>>>>>>          markers and make those
> >>> available to the
> >>>>>>  template
> >>>>>>>>    system.
> >>>>>>>>>>       That's
> >>>>>>>>>>>        pretty
> >>>>>>>>>>>>         much
> >>>>>>>>>>>>>          how www.apache.org is
> >>> generated.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          Sent from my iPhone
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>>           On Mar 19, 2014, at 5:28
> >>> AM, Henrique
> >>>>>>  Mendonça
> >>>>>>>>>>>>         <he...@apache.org>
> >>>>>>>>>>>>>          wrote:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>           Hi Joe,
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>           Thanks for your effort. I
> >>> just wanted to
> >>>>>>  add that
> >>>>>>>>    the
> >>>>>>>>>      code
> >>>>>>>>>>>        snippets
> >>>>>>>>>>>>         are a
> >>>>>>>>>>>>>>           crucial feature for this
> >>> project, which
> >>>>>>  has way
> >>>>>>>>    more
> >>>>>>>>>      target
> >>>>>>>>>>>        languages
> >>>>>>>>>>>>         than
> >>>>>>>>>>>>>>           active contributors. In
> >>> our case,
> >>>>>>  reducing manual
> >>>>>>>>>>       maintenance
> >>>>>>>>>>>        costs is
> >>>>>>>>>>>>         much
> >>>>>>>>>>>>>>           more important than the
> >>> total site build
> >>>>>>  time.
> >>>>>>>>    Perhaps
> >>>>>>>>>      we
> >>>>>>>>>>       can
> >>>>>>>>>>>        also
> >>>>>>>>>>>>         solve
> >>>>>>>>>>>>>>           this in the CMS, though.
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>           - Henrique
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           On 19 March 2014
> >>> 03:17, Joe Schaefer
> >>>>>>>>>>>>         <jo...@yahoo.com>
> >>>>>>>>>>>>>          wrote:
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           A couple more thoughts
> >>> regarding the
> >>>>>>>>    background on
> >>>>>>>>>      the
> >>>>>>>>>>       CMS...
> >>>>>>>>>>>>>>>           the bulk of the focus
> >>> of the CMS up
> >>>>>>  until now
> >>>>>>>>    has
> >>>>>>>>>      been
> >>>>>>>>>>       to
> >>>>>>>>>>>>>>>           support really big
> >>> sites like maven
> >>>>>>  and
> >>>>>>>>    openoffice,
> >>>>>>>>>      both
> >>>>>>>>>>       of
> >>>>>>>>>>>>>>>           which have websites
> >>> well over 5GB
> >>>>>>  worth of
> >>>>>>>>    text
> >>>>>>>>>      files.
> >>>>>>>>>>       The
> >>>>>>>>>>>>>>>           build system was
> >>> hollowed out and
> >>>>>>  revamped to
> >>>>>>>>>      support
> >>>>>>>>>>>        external
> >>>>>>>>>>>>>>>           builds in other
> >>> programming
> >>>>>>  languages, as well
> >>>>>>>>    as
> >>>>>>>>>>       scaling up
> >>>>>>>>>>>>>>>           the perl builds to
> >>> provide about 8
> >>>>>>  child
> >>>>>>>>    processes
> >>>>>>>>>      that
> >>>>>>>>>>       build
> >>>>>>>>>>>>>>>           the site in parallel
> >>> by default.
> >>>>>>  Full site
> >>>>>>>>    build
> >>>>>>>>>      times
> >>>>>>>>>>       for
> >>>>>>>>>>>>>>>           openoffice went from
> >>> over 30 minutes
> >>>>>>  to
> >>>>>>>>    between 5
> >>>>>>>>>      to 10
> >>>>>>>>>>>        minutes
> >>>>>>>>>>>>>>>           depending on disk
> >>> activity, which
> >>>>>>  made
> >>>>>>>>>      experimentation
> >>>>>>>>>>       with
> >>>>>>>>>>>>         site-wide
> >>>>>>>>>>>>>>>           changes feasible on a
> >>> reasonable
> >>>>>>  timeframe.
> >>>>>>>>    At
> >>>>>>>>>      first
> >>>>>>>>>>       the
> >>>>>>>>>>>        project
> >>>>>>>>>>>>         was
> >>>>>>>>>>>>>          in
> >>>>>>>>>>>>>>>           the habit of running
> >>> the builds
> >>>>>>  locally before
> >>>>>>>>
> >>>>>>>>>      checking
> >>>>>>>>>>       in
> >>>>>>>>>>>        their
> >>>>>>>>>>>>>          changes
> >>>>>>>>>>>>>>>           because the delay in
> >>> feedback
> >>>>>>  post-commit was
> >>>>>>>>>>       unreasonable,
> >>>>>>>>>>>        but
> >>>>>>>>>>>>         with
> >>>>>>>>>>>>>          smart
> >>>>>>>>>>>>>>>           use of SSI the were
> >>> able to cut down
> >>>>>>  on the
> >>>>>>>>    number
> >>>>>>>>>      of
> >>>>>>>>>>       changes
> >>>>>>>>>>>        that
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          required
> >>>>>>>>>>>>>>>           full site builds and
> >>> hence no longer
> >>>>>>  bother
> >>>>>>>>    with
> >>>>>>>>>      the
> >>>>>>>>>>       whole
> >>>>>>>>>>>>         pre-build
> >>>>>>>>>>>>>          mumbo
> >>>>>>>>>>>>>>>           jumbo before checking
> >>> in changes.
> >>>>>>  The CMS is
> >>>>>>>>>      designed
> >>>>>>>>>>       to
> >>>>>>>>>>>        only
> >>>>>>>>>>>>         build
> >>>>>>>>>>>>>          pages
> >>>>>>>>>>>>>>>           that were altered, and
> >>> if you just
> >>>>>>  edit a page
> >>>>>>>>    or
> >>>>>>>>>      two
> >>>>>>>>>>       only
> >>>>>>>>>>>        those
> >>>>>>>>>>>>         pages
> >>>>>>>>>>>>>          and
> >>>>>>>>>>>>>>>           the pages that depend
> >>> on them will
> >>>>>>  be built.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           Now that I've
> >>> turned my
> >>>>>>  attention to
> >>>>>>>>    thrift,
> >>>>>>>>>      there
> >>>>>>>>>>       are
> >>>>>>>>>>>        several
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          aspects
> >>>>>>>>>>>>>>>           that are better off
> >>> being retuned
> >>>>>>  based on the
> >>>>>>>>
> >>>>>>>>>      modest
> >>>>>>>>>>       size of
> >>>>>>>>>>>        the
> >>>>>>>>>>>>         site.
> >>>>>>>>>>>>>>>           First of all you have
> >>> a sitemap url
> >>>>>>  that lists
> >>>>>>>>    all
> >>>>>>>>>      of
> >>>>>>>>>>       your
> >>>>>>>>>>>>>          markdown-based
> >>>>>>>>>>>>>>>           pages, which would be
> >>> a nonstarter
> >>>>>>  for a site
> >>>>>>>>    like
> >>>>>>>>>>>        openoffice.
> >>>>>>>>>>>>         The
> >>>>>>>>>>>>>>>           implications of the
> >>> sitemap url are
> >>>>>>  that every
> >>>>>>>>    page
> >>>>>>>>>
> >>>>>>>>>>       needs to
> >>>>>>>>>>>        be
> >>>>>>>>>>>>         built
> >>>>>>>>>>>>>          in
> >>>>>>>>>>>>>>>           memory just to
> >>> generate that page,
> >>>>>>  which leads
> >>>>>>>>    to a
> >>>>>>>>>      lot
> >>>>>>>>>>       of
> >>>>>>>>>>>>         redundancy
> >>>>>>>>>>>>>          in a
> >>>>>>>>>>>>>>>           build system designed
> >>> to run as
> >>>>>>  forked child
> >>>>>>>>>      processes.
> >>>>>>>>>>       We
> >>>>>>>>>>>        can do
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          better...
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           I've done two
> >>> things to make
> >>>>>>  this work
> >>>>>>>>    well-
> >>>>>>>>>      first I
> >>>>>>>>>>       made
> >>>>>>>>>>>        the
> >>>>>>>>>>>>>          number of
> >>>>>>>>>>>>>>>           child processes
> >>> "aka
> >>>>>>  runners"
> >>>>>>>>    tunable on
> >>>>>>>>>      a
> >>>>>>>>>>>        per-project
> >>>>>>>>>>>>         basis,
> >>>>>>>>>>>>>          and since the
> >>>>>>>>>>>>>>>           sitemap is going to
> >>> build every page
> >>>>>>  anyway as
> >>>>>>>>    the
> >>>>>>>>>>       slowest
> >>>>>>>>>>>        page to
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          build, I
> >>>>>>>>>>>>>>>           memoized the main view
> >>> that builds
> >>>>>>  the
> >>>>>>>>    markdown
> >>>>>>>>>      pages
> >>>>>>>>>>       for
> >>>>>>>>>>>        thrift.
> >>>>>>>>>>>>         The
> >>>>>>>>>>>>>          best
> >>>>>>>>>>>>>>>           results are when
> >>> there's only
> >>>>>>  one runner
> >>>>>>>>    so we
> >>>>>>>>>      get
> >>>>>>>>>>       the
> >>>>>>>>>>>        full
> >>>>>>>>>>>>         benefit
> >>>>>>>>>>>>>          of
> >>>>>>>>>>>>>>>           memoization: typical
> >>> site build
> >>>>>>  times are
> >>>>>>>>>      consistently
> >>>>>>>>>>       under
> >>>>>>>>>>>        2
> >>>>>>>>>>>>         seconds
> >>>>>>>>>>>>>          now.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           You'll appreciate
> >>> why I am such
> >>>>>>  a
> >>>>>>>>    performance
> >>>>>>>>>>       stickler
> >>>>>>>>>>>        for the
> >>>>>>>>>>>>         CMS
> >>>>>>>>>>>>>          when
> >>>>>>>>>>>>>>>           you start using the
> >>> bookmarklet,
> >>>>>>  since builds
> >>>>>>>>    are
> >>>>>>>>>      the
> >>>>>>>>>>       only
> >>>>>>>>>>>>         asynchronous
> >>>>>>>>>>>>>>>           part of the process
> >>> from making a
> >>>>>>  change to a
> >>>>>>>>    page
> >>>>>>>>>      and
> >>>>>>>>>>>        publishing
> >>>>>>>>>>>>         the
> >>>>>>>>>>>>>>>           results.  Ideally when
> >>> the system is
> >>>>>>  working
> >>>>>>>>    well
> >>>>>>>>>      the
> >>>>>>>>>>       builds
> >>>>>>>>>>>>         happen
> >>>>>>>>>>>>>          before
> >>>>>>>>>>>>>>>           you have time to go
> >>> looking for
> >>>>>>  them, but you
> >>>>>>>>    do
> >>>>>>>>>      need to
> >>>>>>>>>>       be
> >>>>>>>>>>>>         mindful of
> >>>>>>>>>>>>>          not
> >>>>>>>>>>>>>>>           publishing before the
> >>> built pages
> >>>>>>  have been
> >>>>>>>>>      committed
> >>>>>>>>>>       back to
> >>>>>>>>>>>        svn
> >>>>>>>>>>>>         by
> >>>>>>>>>>>>>>>           buildbot.
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>           On Monday, March
> >>> 17, 2014 11:59
> >>>>>>  PM, Joe
> >>>>>>>>>      Schaefer
> >>>>>>>>>>>>>          <jo...@yahoo.com>
> >>>>>>>>>>>>>>>           wrote:
> >>>>>>>>>>>>>>>>>           Ok there's
> >>> enough of an
> >>>>>>  idea about
> >>>>>>>>    how
> >>>>>>>>>      to
> >>>>>>>>>>       port
> >>>>>>>>>>>        the
> >>>>>>>>>>>>         rest of
> >>>>>>>>>>>>>          the site's
> >>>>>>>>>>>>>>>>           pages over based
> >>> on the porting
> >>>>>>  work
> >>>>>>>>    I've
> >>>>>>>>>>       already
> >>>>>>>>>>>        done
> >>>>>>>>>>>>         that
> >>>>>>>>>>>>>          it's time
> >>>>>>>>>>>>>>>>           for me to step
> >>> back and let you
> >>>>>>  guys catch
> >>>>>>>>    up.
> >>>>>>>>>
> >>>>>>>>>>       Basically
> >>>>>>>>>>>        the
> >>>>>>>>>>>>         idea
> >>>>>>>>>>>>>          is
> >>>>>>>>>>>>>>>           that while
> >>>>>>>>>>>>>>>>           there is
> >>> templating support in
> >>>>>>  the
> >>>>>>>>    markdown
> >>>>>>>>>      sources,
> >>>>>>>>>>
> >>>>>>>>>>>        it's
> >>>>>>>>>>>>>          fairly limited
> >>>>>>>>>>>>>>>>           compared to what
> >>> nanoc offers,
> >>>>>>  but instead
> >>>>>>>>    of
> >>>>>>>>>>       writing a
> >>>>>>>>>>>        lot of
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          complex
> >>>>>>>>>>>>>>>           template
> >>>>>>>>>>>>>>>>           code into your
> >>> sources, with the
> >>>>>>  cms you
> >>>>>>>>    just
> >>>>>>>>>      add
> >>>>>>>>>>       code to
> >>>>>>>>>>>
> >>>>>>>>>>>>>          lib/view.pmand/or
> >>>>>>>>>>>>>>>>           lib/path.pm to
> >>> keep the document
> >>>>>>  sources
> >>>>>>>>    simple
> >>>>>>>>>      and
> >>>>>>>>>>       just
> >>>>>>>>>>>        add
> >>>>>>>>>>>>         more
> >>>>>>>>>>>>>>>           template
> >>>>>>>>>>>>>>>>           variables.  What I
> >>> just finished
> >>>>>>  in
> >>>>>>>>    lib/view.pm
> >>>>>>>>>      and
> >>>>>>>>>>>>         lib/path.pm is
> >>>>>>>>>>>>>>>           directory
> >>>>>>>>>>>>>>>>           listing support
> >>> for /docs.html
> >>>>>>  but it can
> >>>>>>>>    be
> >>>>>>>>>      carried
> >>>>>>>>>>       over
> >>>>>>>>>>>        to
> >>>>>>>>>>>>>          similar
> >>>>>>>>>>>>>>>           pages.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           On Monday,
> >>> March 17, 2014
> >>>>>>  9:16 PM, Joe
> >>>>>>>>
> >>>>>>>>>      Schaefer
> >>> <jo...@yahoo.com>
> >>>>>>  wrote:
> >>> Interesting ideas,
> >>>>>>  thanks.  FWIW I
> >>>>>>>>
> >>>>>>>>>      think
> >>>>>>>>>>       that
> >>>>>>>>>>>        sort
> >>>>>>>>>>>>>>>>>           of thing might
> >>> be best
> >>>>>>  supported as a
> >>>>>>>>>      periodic
> >>>>>>>>>>       cron
> >>>>>>>>>>>>>>>>>           if we can
> >>> write something
> >>>>>>  stable
> >>>>>>>>    enough,
> >>>>>>>>>      because
> >>>>>>>>>>
> >>>>>>>>>>>        pulling
> >>>>>>>>>>>>>>>>>           stuff out of
> >>> the git repo is
> >>>>>>  something
> >>>>>>>>    the
> >>>>>>>>>      CMS
> >>>>>>>>>>>        isn't
> >>>>>>>>>>>>         going
> >>>>>>>>>>>>>>>>>           to do all that
> >>> well being an
> >>>>>>  svn
> >>>>>>>>>      application.
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           The CMS build
> >>> results are
> >>>>>>  available at
> >>> http://thrift.staging.apache.org/
> >>>>>>>>>>>>>>>>>           feel free to
> >>> play with the
> >>>>>>  sources in
> >>> repos/asf/thrift/cms-site/trunk.
> >>>>>>>>>>>>>>>>>           It's very
> >>> fast, probably
> >>>>>>  an order
> >>>>>>>>    of
> >>>>>>>>>>       magnitude
> >>>>>>>>>>>        faster
> >>>>>>>>>>>>         than
> >>>>>>>>>>>>>          your current
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           tech.
> >>>>>>>>>>>>>>>>>           Whole site
> >>> builds in two
> >>>>>>  seconds;
> >>>>>>>>    fractions
> >>>>>>>>>      of a
> >>>>>>>>>>
> >>>>>>>>>>>        second
> >>>>>>>>>>>>         for
> >>>>>>>>>>>>>          typical
> >>>>>>>>>>>>>>>           mods to
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           content/
> >>> markdown pages.
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           The CMS
> >>> bookmarklet is
> >>>>>>  compatible with
> >>>>>>>>    the
> >>>>>>>>>>       staging
> >>>>>>>>>>>        site
> >>>>>>>>>>>>         FWIW.
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            On
> >>> Monday, March 17,
> >>>>>>  2014 7:40
> >>>>>>>>    PM,
> >>>>>>>>>      Roger
> >>>>>>>>>>       Meier
> >>>>>>  <ro...@bufferoverflow.ch> wrote:
> >>>>>>>>>>>>>>>>>>>           Hi Joe
> >>> & Co
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            thanks
> >>> for this test
> >>>>>>  run with
> >>>>>>>>    Apache
> >>>>>>>>>      CMS!
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            What I
> >>> would love to
> >>>>>>  see is this:
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            Source
> >>> file: => Web
> >>>>>>  Site URL:
> >>> test/README.md =>
> >>>>>>>>>      thrift.apache.org/test
> >>> test/STATUS.md =>
> >>>>>>>>>>>        thrift.apache.org/test/status
> >>> test/keys/README.md
> >>>>>>  =>
> >>>>>>>>>>>        thrift.apache.org/test/keys
> >>>>>>  lib/<lang>/README.md =>
> >>> thrift.apache.org/lib/<lang>
> >>>>>>  lib/<lang>/test/README.md
> >>>>>>>>    =>
> >>>>>>>>    thrift.apache.org/lib/<lang>/test
> >>>>>>>>    lib/<lang>/examples/README.md
> >>>>>>>>>      =>
> >>>>>>>>>      thrift.apache.org/lib/<lang>/examples
> >>> compiler/cpp/README.md
> >>>>>>  =>
> >>>>>>>>>>>>         thrift.apache.org/compiler
> >>> debian/README.md =>
> >>>>>>>>>>       thrift.apache.org/debian
> >>>>>>  contrib/<topic>/README.md
> >>>>>>>>    =>
> >>>>>>>>>>>>>          thrift.apache.org/<topic>
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            just made
> >>> the following
> >>>>>>  patch to
> >>>>>>>>>      rename all
> >>>>>>>>>>       file
> >>>>>>>>>>>        to
> >>>>>>>>>>>>         .md
> >>>>>>>>>>>>>          within our
> >>>>>>>>>>>>>>>>           source
> >>>>>>>>>>>>>>>>>>            tree:
> >>> https://issues.apache.org/jira/browse/THRIFT-2407
> >>>>>>>>>>>>>>>>>>            ... we
> >>> have *41*
> >>>>>>  md's within
> >>>>>>>>    the
> >>>>>>>>>      source
> >>>>>>>>>>       tree
> >>>>>>>>>>>        and
> >>>>>>>>>>>>>          that's the
> >>>>>>>>>>>>>>>>           place
> >>>>>>>>>>>>>>>>>           where
> >>>>>>>>>>>>>>>>>>            people
> >>> look for
> >>>>>>  documentation
> >>>>>>>>    first.
> >>>>>>>>>      =>
> >>>>>>>>>>>        simple to
> >>>>>>>>>>>>>          manage
> >>>>>>>>>>>>>>>>>>            Would be
> >>> user friendly
> >>>>>>  to have
> >>>>>>>>    all of
> >>>>>>>>>      this
> >>>>>>>>>>>        online
> >>>>>>>>>>>>         with
> >>>>>>>>>>>>>          each release
> >>>>>>>>>>>>>>>>>>            with the
> >>> URL layout
> >>>>>>  mentioned
> >>>>>>>>    above.
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            just
> >>> received the
> >>>>>>  buildboot...
> >>>>>>>>>>>>>>>>>>            Do you
> >>> have kind of a
> >>>>>>  preview of
> >>>>>>>>    your
> >>>>>>>>>>       prototype?
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            all the
> >>> best!
> >>>>>>>>>>>>>>>>>>            -roger
> >>>>>>>>>>>>>>>>>>            ;-r
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            Quoting
> >>> Jake Farrell
> >>>>>>>>>>>        <jf...@apache.org>:
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>             No
> >>> objections from
> >>>>>>  me
> >>> -Jake
> >>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>             On
> >>> Mon, Mar 17,
> >>>>>>  2014 at
> >>>>>>>>    12:04 PM,
> >>>>>>>>>      Joe
> >>>>>>>>>>>        Schaefer
> >>>>>>>>    <jo...@yahoo.com>wrote:
> >>>>>>>>>>>>>>>>>>>
> >>> Any objections
> >>>>>>  to me
> >>>>>>>>    making a
> >>>>>>>>>      copy
> >>>>>>>>>>       of
> >>>>>>>>>>>        the
> >>>>>>>>>>>>         site
> >>> tree alongside
> >>>>>>  it called
> >>>>>>>>
> >>>>>>>>>>       cms-site?
> >>>>>>>>>>>        I'd
> >>>>>>>>>>>>         like
> >>>>>>>>>>>>>          to
> >>> get cracking
> >>>>>>  on knocking
> >>>>>>>>    up
> >>>>>>>>>      the
> >>>>>>>>>>>        supporting
> >>>>>>>>>>>>         perl
> >>> for this so we
> >>>>>>  can
> >>>>>>>>    continue
> >>>>>>>>>      to
> >>>>>>>>>>>        brainstorm...
> >>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>
> >>>   On Sunday,
> >>>>>>  March 16,
> >>>>>>>>    2014
> >>>>>>>>>      1:53
> >>>>>>>>>>       PM,
> >>>>>>>>>>>        Joe
> >>>>>>>>>>>>         Schaefer
> >>>>>>  <jo...@yahoo.com>
> >>> wrote:
> >>>       On
> >>>>>>  Sunday, March
> >>>>>>>>    16,
> >>>>>>>>>      2014
> >>>>>>>>>>       1:40
> >>>>>>>>>>>        PM,
> >>>>>>>>>>>>         Jake
> >>>>>>>>>>>>>          Farrell
> >>>>>>  <jf...@apache.org>
> >>>   wrote:
> >>>   Hey Joe
> >>>       Thanks
> >>>>>>  for
> >>>>>>>>    reaching
> >>>>>>>>>      out, we
> >>>>>>>>>>       chose
> >>>>>>>>>>>        to
> >>>>>>>>>>>>         go
> >>>>>>>>>>>>>          with a site
> >>>>>>>>>>>>>>>>>           generator
> >>>>>>>>>>>>>>>>>>            over the
> >>>       Apache
> >>>>>>  CMS due to
> >>>>>>>>    it
> >>>>>>>>>>       initially
> >>>>>>>>>>>        not
> >>>>>>>>>>>>         meeting
> >>>>>>>>>>>>>          all of
> >>>>>>>>>>>>>>>>           our
> >>>>>>>>>>>>>>>>>           needs.
> >>>>>>>>>>>>>>>>>>            Our
> >>> current
> >>>       needs
> >>>>>>  for the site
> >>>>>>>>    are
> >>>       -
> >>>>>>  Markdown to html
> >>>>>>>>
> >>>>>>>>>>       conversion
> >>>   That
> >>>>>>  one's easy-
> >>>>>>>>    its
> >>>>>>>>>      the
> >>>>>>>>>>       default
> >>>>>>>>>>>        for
> >>>>>>>>>>>>         the
> >>>>>>>>>>>>>          cms.
> >>>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>>
> >>>       - Global
> >>>>>>>>>      variables/config
> >>>>>>>>>>       usable
> >>>>>>>>>>>>         throughout
> >>>>>>>>>>>>>          in a
> >>>>>>>>>>>>>>>>           template
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>            based
> >>> layout
> >>>   Easy too-
> >>>>>>  just create
> >>>>>>>>    a
> >>>>>>>>>      perl
> >>>>>>>>>>       hash
> >>>>>>>>>>>>         somewhere and
> >>>>>>>>>>>>>          make it
> >>>>>>>>>>>>>>>>>           available
> >>>>>>>>>>>>>>>>>>            to
> >>> your views.
> >>>   Code your
> >>>>>>  views to
> >>>>>>>>    pass
> >>>>>>>>>      that
> >>>>>>>>>>       hash
> >>>>>>>>>>>        along to
> >>>>>>>>>>>>         your
> >>>>>>>>>>>>>>>>           templates
> >>>>>>>>>>>>>>>>>           and you
> >>>>>>>>>>>>>>>>>>            are
> >>> all set.
> >>>   Note if your
> >>>>>>  hash
> >>>>>>>>    contains
> >>>>>>>>>>       objects
> >>>>>>>>>>>        you can
> >>>>>>>>>>>>         make
> >>>>>>>>>>>>>          method
> >>>>>>>>>>>>>>>>           calls
> >>>>>>>>>>>>>>>>>           on
> >>>>>>>>>>>>>>>>>>            them in
> >>> your
> >>>   templates.
> >>>>>>  Note:
> >>>>>>>>    while I
> >>>>>>>>>>>        wouldn't
> >>>>>>>>>>>>>          recommend this in
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           general,
> >>>>>>>>>>>>>>>>>>            for
> >>> smaller
> >>>   projects
> >>>>>>  like thrift
> >>>>>>>>    that
> >>>>>>>>>      prefer
> >>>>>>>>>>
> >>>>>>>>>>>>         convenience
> >>>>>>>>>>>>>          over
> >>>>>>>>>>>>>>>>           separation
> >>>>>>>>>>>>>>>>>           of
> >>>>>>>>>>>>>>>>>>            concerns
> >>> you can
> >>>   have the
> >>>>>>  django
> >>>>>>>>    template
> >>>>>>>>>      engine
> >>>>>>>>>>       do a
> >>>>>>>>>>>        pass
> >>>>>>>>>>>>         over
> >>>>>>>>>>>>>          your
> >>>>>>>>>>>>>>>>           markdown
> >>>>>>>>>>>>>>>>>>            before
> >>> passing it
> >>>   along to
> >>>>>>  your actual
> >>>>>>>>>      template
> >>>>>>>>>>       page,
> >>>>>>>>>>>        just
> >>>>>>>>>>>>         as is
> >>>>>>>>>>>>>          seemingly
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>           common to
> >>>>>>>>>>>>>>>>>>            other
> >>> popular
> >>>   site
> >>>>>>  generation
> >>>>>>>>    software.
> >>>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>>
> >>>       - Syntax
> >>>>>>>>    highlighting
> >>>   Comes with
> >>>>>>>>    python's
> >>>>>>>>>      markdown
> >>>>>>>>>>
> >>>>>>>>>>>        support,
> >>>>>>>>>>>>         but
> >>>>>>>>>>>>>          some
> >>>>>>>>>>>>>>>>           people
> >>>>>>>>>>>>>>>>>           prefer
> >>>>>>>>>>>>>>>>>>            the look
> >>> of
> >>>   javascript
> >>>>>>>>    highlighters.
> >>>>>>>>>>>>>>>>>>>>>
> >>>       - Easily
> >>>>>>  include
> >>>>>>>>    code
> >>>>>>>>>>       snippets
> >>>>>>>>>>>        from
> >>>>>>>>>>>>         our
> >>>>>>>>>>>>>          source code
> >>>>>>>>>>>>>>>>           base
> >>>   Statically I
> >>>>>>  hope.  No
> >>>>>>>>    idea
> >>>>>>>>>      how
> >>>>>>>>>>       to
> >>>>>>>>>>>        pull
> >>>>>>>>>>>>>          snippets out of
> >>>>>>>>>>>>>>>>           your
> >>>>>>>>>>>>>>>>>           git
> >>>>>>>>>>>>>>>>>>            repo
> >>> via the
> >>>   cms.
> >>>>>>>>>>>>>>>>>>>>>
> >>>       -
> >>>>>>  Ability to
> >>>>>>>>    locally
> >>>>>>>>>      test
> >>>>>>>>>>       before
> >>>>>>>>>>>>         committing
> >>>   Belt and
> >>>>>>  suspenders
> >>>>>>>>    with
> >>>>>>>>>      the
> >>>>>>>>>>       cms- you
> >>>>>>>>>>>        can
> >>>>>>>>>>>>         build
> >>>>>>>>>>>>>          your
> >>>>>>>>>>>>>>>>           changes
> >>>>>>>>>>>>>>>>>>            before
> >>> committing
> >>>   with the
> >>>>>>  build
> >>>>>>>>    scripts,
> >>>>>>>>>      browse
> >>>>>>>>>>       your
> >>>>>>>>>>>>         changes
> >>>>>>>>>>>>>          before
> >>>>>>>>>>>>>>>>           committing
> >>>>>>>>>>>>>>>>>           via
> >>>>>>>>>>>>>>>>>>            the cms
> >>>   webgui, or
> >>>>>>  simply
> >>>>>>>>    commit
> >>>>>>>>>      your
> >>>>>>>>>>       changes
> >>>>>>>>>>>        and
> >>>>>>>>>>>>         view
> >>>>>>>>>>>>>          the
> >>>>>>>>>>>>>>>>           staging
> >>>>>>>>>>>>>>>>>           site
> >>>>>>>>>>>>>>>>>>            prior to
> >>> live
> >>>   publication
> >>>>>>  (which is
> >>>>>>>>    a
> >>>>>>>>>      separate
> >>>>>>>>>>
> >>>>>>>>>>>        step).
> >>>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>>>>
> >>>       -Jake
> >>>       On Sun,
> >>>>>>  Mar 16,
> >>>>>>>>    2014 at
> >>>>>>>>>
> >>>>>>>>>>       12:44 PM,
> >>>>>>>>>>>        Joe
> >>>>>>>>>>>>>          Schaefer
> >>>>>>>>>>       <jo...@yahoo.com>wrote:
> >>>>>>>>>>>>>>>>>>>>>>
> >>>         As
> >>>>>>  it so
> >>>>>>>>    happens I
> >>>>>>>>>      am
> >>>>>>>>>>>        interested
> >>>>>>>>>>>>         in
> >>>>>>>>>>>>>          working on
> >>>>>>>>>>>>>>>>>           supporting
> >>>>>>  thrift's
> >>>>>>>>    use
> >>>>>>>>>      case as
> >>>>>>>>>>       a
> >>>>>>>>>>>>         potential
> >>>>>>>>>>>>>          user of
> >>>>>>>>>>>>>>>>           the
> >>>>>>>>>>>>>>>>>           Apache
> >>>>>>>>>>>>>>>>>>            CMS.
> >>>>>>  While the CMS
> >>>>>>>>    works
> >>>>>>>>>      well
> >>>>>>>>>>       for
> >>>>>>>>>>>>         massive
> >>>>>>>>>>>>>          projects
> >>>>>>>>>>>>>>>>           there
> >>>>>>>>>>>>>>>>>           are
> >>>>>>  things it
> >>>>>>>>    could do
> >>>>>>>>>>       better at
> >>>>>>>>>>>>         supporting
> >>>>>>>>>>>>>          for
> >>>>>>>>>>>>>>>>           more
> >>>>>>>>>>>>>>>>>           moderate
> >>>>>>  sized sites
> >>>>>>>>    like
> >>>>>>>>>>>        thrift's.
> >>>>>>  I'd
> >>>>>>>>    therefore
> >>>>>>>>>      like
> >>>>>>>>>>       to
> >>>>>>>>>>>        engage
> >>>>>>>>>>>>         you
> >>>>>>>>>>>>>          folks in a
> >>>>>>>>>>>>>>>>
> >>> brainstorming session
> >>>>>>  about what
> >>>>>>>>    sorts of
> >>>>>>>>>
> >>>>>>>>>>       features
> >>>>>>>>>>>        you
> >>>>>>>>>>>>         want
> >>>>>>>>>>>>>          for your
> >>>>>>>>>>>>>>>>           site
> >>>>>>>>>>>>>>>>>           and
> >>>>>>>>>>>>>>>>>>            to find
> >>>>>>  simple ways of
> >>>>>>>>
> >>>>>>>>>>       supporting
> >>>>>>>>>>>        those
> >>>>>>>>>>>>>          features for
> >>>>>>>>>>>>>>>>           you.
> >>>>>>  Thanks.
> >
>

Re: reconsidering the Apache CMS...

Posted by Joseph Schaefer <jo...@yahoo.com>.
Done.  Anything else we need to look at before going live?

Sent from my iPhone

> On Mar 23, 2014, at 3:53 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> 
> any idea how to fix this URL:
> http://thrift.staging.apache.org/test/ThriftTest.thrift
> we need to keep the filename for working links within the
> test/README.md file.
> 
> What about a footer for docs genertated from source tree?
> [snippet:path=test/README.md, footer=1]
> 
> I added the following snippet to content/test/index.md:
> ---SNIP---
> This page was generated from Apache Thrift's **source tree docs**:
> [test/README.md](https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD)
> ---SNIP---
> 
> would be great to get this generated into the page via snippet.
> 
> -roger
> 
> 
>> On 23.03.2014 19:04, Joe Schaefer wrote:
>> The CMS codebase as well as the thrift build system
>> already supports it Roger, someone just needs to create
>> the files in the content tree that point at the source
>> files in the git repo.  If you want to script this process
>> in scripting language du jour, go for it, but I cannot
>> justify spending contractor time doing this work for the
>> community's behalf as it is unlikely to be needed elsewhere.
>> I would think you only need the script to run when some
>> path to a README.md file changes in the thrift.git tree,
>> so it doesn't need to be incorporated into each site build.
>> 
>> 
>> 
>>>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <ro...@bufferoverflow.ch> wrote:
>>>> Hi
>>> 
>>>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>>  Hey Joe
>>>>  Reviewing the staging site it looks like its almost 99% there other than
>>>>  some styling within the code snippets. I'm good if we want to cut over
>>> to
>>>>  using this and then work on the additional features that had been mentioned
>>>>  afterwords. Any objections to cutting over?
>>> I would really like to see this automatic README.md includes from source
>>> tree, to have a real additional feature beside of what we already have
>>> today.
>>> 
>>> I'm absolutely with you.
>>> Apache projects shall use other Apache projects whenever possible.
>>> 
>>>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>>> <jo...@yahoo.com>wrote:
>>>> 
>>>>>  May I suggest a script that creates files in content/
>>>>>  containing a single line
>>>>> 
>>>>>  [snippet:path=...]
>>> this sounds like a plan
>>> 
>>>>> 
>>>>>  (with no 'lang' argument) that lets the CMS pull raw content
>>> from
>>>>>  thrift.git
>>>>>  and add it directly to the built pages.  That way you only need to run
>>> the
>>>>>  script that generates these files when a path changes in your
>>> thrift.git
>>>>>  repo.
>>> What I had in mind is a automatic search of README.md files across the
>>> source tree and generate the site with these automatically.
>>> Kind of a central controller that maps all the URL's.
>>> no additional work when a new README.md file is added.
>>> however, a script can do this as interim soultion.
>>>>> 
>>>>>  You can commit directly to the cms svn tree or via the webgui which
>>> does
>>>>>  the same thing.
>>> Great!
>>> 
>>> What about local preview when doing perl modifications?
>>> 
>>> -roger
>>> 
>>> 
>>>>> 
>>>>> 
>>>>>>  On Saturday, March 22, 2014 4:20 PM, Roger Meier <
>>>>>  roger@bufferoverflow.ch> wrote:
>>>>>>>  I still see some issues and still miss to feature mentioned.
>>>>>>  Now we have nonoc.ws and I'm able to hack this a bit.
>>>>>> 
>>>>>>  We had no real big issue, the thing I missed was the code snippet
>>> thing
>>>>>>  and this is in on nanoc.ws and now also on Apache CMS.
>>>>>> 
>>>>>>  The thing we really need is the documentation located within source
>>> code
>>>>>>  integrated on the web site.
>>>>>> 
>>>>>>  most hosting platforms do render README.md and that's why lot
>>> of doc
>>>>>>  will stay within the code and we should benefit as well by
>>> rendering
>>>>>>  that to the web site and enhance the documentation very easily.
>>>>>> 
>>>>>>  I would like to render the 41 README.md files to with the following
>>>>>>  pattern, that's a must have before switching to another CMS.
>>>>>> 
>>>>>>  test/README.md => thrift.apache.org/test
>>>>>>  test/STATUS.md => thrift.apache.org/test/status
>>>>>>  test/keys/README.md => thrift.apache.org/test/keys
>>>>>>  lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>>>>>  lib/<lang>/test/README.md =>
>>> thrift.apache.org/lib/<lang>/test
>>>>>>  lib/<lang>/examples/README.md =>
>>>>>>  thrift.apache.org/lib/<lang>/examples
>>>>>>  compiler/cpp/README.md => thrift.apache.org/compiler
>>>>>>  debian/README.md => thrift.apache.org/debian
>>>>>>  contrib/<topic>/README.md =>
>>> thrift.apache.org/<topic>
>>>>>> 
>>>>>>  CPP tutorial seems to be broken on staging.
>>>>>> 
>>>>>>  Do you commit to
>>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>>  or is it web gui only?
>>>>>> 
>>>>>>  How do you generate the site on your local machine?
>>>>>> 
>>>>>> 
>>>>>>  Should I reactivate my perl or do we stay with ruby?
>>>>>>  Committers and contributors, what do you think?
>>>>>> 
>>>>>> 
>>>>>>  all the best
>>>>>>  -roger
>>>>>> 
>>>>>> 
>>>>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
>>>>>>> 
>>>>>>> 
>>>>>>>    Ok I've now done the basic necessities involved in
>>> porting
>>>>>>>    the site over.  Links have been adjusted, templates ported,
>>> files
>>>>>  created,
>>>>>>>    snippet feature activated.  At this point I'm happy to
>>> declare
>>>>>>>    victory and migrate the thrift live site over, as anything
>>> broken that
>>>>>>>    still remains can be dealt with on a per-page basis with the
>>>>>  bookmarklet.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>    On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
>>>>>>  <jo...@yahoo.com> wrote:
>>>>>>>>>    Modulo some bizarre content truncation out of
>>> git-wip-us.apache.org
>>>>>>>>    the snippet support is now active. At this point I think
>>> all the build
>>>>>>>>    support you need in this project to support every type of
>>>>>  brainstorming
>>>>>>>>    activity we've discussed is now there, so it's
>>> just up to you
>>>>>>  guys to
>>>>>>>>    now familiarize yourselves with the build technology and
>>> how to apply
>>>>>>>>    it to your needs.  The site builds with snippet support
>>> are running
>>>>>>  around
>>>>>>>>    10 seconds, which is to be expected with the network
>>> interactions
>>>>>>  involved.
>>>>>>>> 
>>>>>>>>    I'm always willing to answer any questions that come
>>> up in the
>>>>>>  interim,
>>>>>>>>    but I wish you guys the best of luck in the remaining
>>> porting work to
>>>>>>  be done.
>>>>>>>>    All I see really are some links that need to have the
>>> trailing slashes
>>>>>>  removed
>>>>>>>>    and whatever <%= %> template constructs that remain
>>> need to be
>>>>>>  ported to
>>>>>>>>    django.  So it should be smooth sailing, but as I said if
>>> you hit any
>>>>>>  snags
>>>>>>>>    holler.  I'd really like to see the live site tech
>>> switched over to
>>>>>>  the cms
>>>>>>>>    stuff before Apachecon ends in early April, hint hint.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>      On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>>>>>>>>>    <jo...@yahoo.com> wrote:
>>>>>>>>>      > While I don't yet know the url magic to
>>> support branches
>>>>>>  and tags
>>>>>>>>    in git,
>>>>>>>>>      I can say that the snippet support is ready to play
>>> with.  I
>>>>>>  suggest just
>>>>>>>>>      focusing on the /index.md page first to see how it
>>> works in
>>>>>>  practice
>>>>>>>>    because
>>>>>>>>>      once it's fully enabled the build will break
>>> until all the
>>>>>>  snippet
>>>>>>>>    sources
>>>>>>>>>      have been altered to conform with the new style.
>>>>>>>>> 
>>>>>>>>>      To turn it on for index.md testing, there are a
>>> couple of things
>>>>>>  that need
>>>>>>>>    to
>>>>>>>>>      happen. First the [snippet:...] marker should be
>>> edited to be
>>>>>>>>    [XXXsnippet:...]
>>>>>>>>>      to enable testing without breaking the build.
>>> Second each marker
>>>>>>  contains
>>>>>>>>    a
>>>>>>>>>      "token" argument instead of line numbers
>>> for more
>>>>>>  stability under
>>>>>>>> 
>>>>>>>>>      edits to the source code.  The token argument is an
>>> arbitrary
>>>>>>  string that
>>>>>>>>    is
>>>>>>>>>      used to denote the boundaries of the snippet within
>>> the source
>>>>>>  code.
>>>>>>>>>       ASF::Value::Snippet will pull out the lines from
>>> the source file
>>>>>>  between
>>>>>>>>    the
>>>>>>>>>      lines that contain the token argument and format
>>> them as a code
>>>>>>  snippet
>>>>>>>>    embedded
>>>>>>>>>      into markdown. To get started I'll copy over
>>> the code
>>>>>>  highlighting css
>>>>>>>>    from
>>>>>>>>>      www.apache.org but note that this is all based on
>>> python pygments
>>>>>>  and there
>>>>>>>>    are
>>>>>>>>>      a variety of online css files to choose from if
>>> this one is not
>>>>>>  to the
>>>>>>>>>      group's liking.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>       On Wednesday, March 19, 2014 4:16 PM, Joe
>>> Schaefer
>>>>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>>>>       > Sorry I need to clarify with an example:
>>> look at
>>>>>>>>>>       http://thrift.staging.apache.org/tutorial/
>>> versus
>>> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>>>>       former is generated from
>>> content/tutorial/index.html
>>>>>>>>>>       and the latter from content/tutorial.md.  The
>>> latter file
>>>>>>>>>>       needs to be removed from the tree now that
>>> it's content
>>>>>>>>>>       has been ported to
>>> content/tutorial/index.html.  This
>>>>>>>>>>       uses django template inheritance to maintain
>>> simplicity.
>>>>>>>>>> 
>>>>>>>>>>       Other directories that follow a similar
>>> pattern should
>>>>>>>>>>       also be ported in the same fashion.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>        On Wednesday, March 19, 2014 9:46 AM, Joe
>>> Schaefer
>>>>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>>>>        > If someone's looking for a way
>>> to help with
>>>>>>  the porting
>>>>>>>>>>>        effort, consider tackling the creation of
>>> an index.html
>>>>>>>>>>>        page in each subdir of the content/ tree
>>> (other than
>>>>>>  the
>>>>>>>>>>>        base which has an /index.md).  The
>>> contents of the file
>>>>>>>>>>>        should be just
>>>>>>>>>>> 
>>>>>>>>>>>        {% include 'default' %}
>>>>>>>>>>> 
>>>>>>>>>>>        (see the docs dir for an example page
>>> that can be
>>>>>>  copied)
>>>>>>>>>>>        and the build system will take care of
>>> generating the
>>>>>>  page
>>>>>>>>>>>        in a consistent fashion with the rest of
>>> the site.
>>>>>>  Once
>>>>>>>>>>>        that is done there are a lot of pages
>>> that function
>>>>>>  like
>>>>>>>>>>>        index pages but are written in markdown
>>> that can be
>>>>>>  deleted,
>>>>>>>>>>>        like docs.md and its ilk.  Nanoc
>>> transforms that file
>>>>>>  into
>>>>>>>>>>>        /docs/index.html but that's kinda
>>> crufty and not
>>>>>>  supported
>>>>>>>>>>>        by the CMS, which only lets you alter
>>> file extensions
>>>>>>  not paths.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>         On Wednesday, March 19, 2014 8:54
>>> AM, Joe Schaefer
>>>>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>>>>         > I just pencilled in snippet
>>> preprocessing
>>>>>>  support into
>>>>>>>>>>>>         the thrift builds.  Once Jake and I
>>> have settled
>>>>>>  on the
>>>>>>>>>>>>         feature set of ASF::Value::Snippet,
>>> and we have
>>>>>>  ported
>>>>>>>>>>>>         the snippet calling text within the
>>> markdown pages
>>>>>>>>>>>>         to the new format, things will just
>>> work (knock on
>>>>>>  wood).
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>          On Wednesday, March 19, 2014
>>> 6:48 AM, Joseph
>>>>>>  Schaefer
>>>>>>>>>>>>         <jo...@yahoo.com>
>>> wrote:
>>>>>>>>>>>>>          > Sure I understand that
>>> need.  If
>>>>>>  there's a way
>>>>>>>>    of
>>>>>>>>>>       pulling the
>>>>>>>>>>> 
>>>>>>>>>>>>         document
>>>>>>>>>>>>>          sources directly from the web I
>>> can parse the
>>>>>>  content
>>>>>>>>    to
>>>>>>>>>      look for
>>>>>>>>>> 
>>>>>>>>>>>        snippet
>>>>>>>>>>>>>          markers and make those
>>> available to the
>>>>>>  template
>>>>>>>>    system.
>>>>>>>>>>       That's
>>>>>>>>>>>        pretty
>>>>>>>>>>>>         much
>>>>>>>>>>>>>          how www.apache.org is
>>> generated.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          Sent from my iPhone
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           On Mar 19, 2014, at 5:28
>>> AM, Henrique
>>>>>>  Mendonça
>>>>>>>>>>>>         <he...@apache.org>
>>>>>>>>>>>>>          wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           Hi Joe,
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           Thanks for your effort. I
>>> just wanted to
>>>>>>  add that
>>>>>>>>    the
>>>>>>>>>      code
>>>>>>>>>>>        snippets
>>>>>>>>>>>>         are a
>>>>>>>>>>>>>>           crucial feature for this
>>> project, which
>>>>>>  has way
>>>>>>>>    more
>>>>>>>>>      target
>>>>>>>>>>>        languages
>>>>>>>>>>>>         than
>>>>>>>>>>>>>>           active contributors. In
>>> our case,
>>>>>>  reducing manual
>>>>>>>>>>       maintenance
>>>>>>>>>>>        costs is
>>>>>>>>>>>>         much
>>>>>>>>>>>>>>           more important than the
>>> total site build
>>>>>>  time.
>>>>>>>>    Perhaps
>>>>>>>>>      we
>>>>>>>>>>       can
>>>>>>>>>>>        also
>>>>>>>>>>>>         solve
>>>>>>>>>>>>>>           this in the CMS, though.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           - Henrique
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           On 19 March 2014
>>> 03:17, Joe Schaefer
>>>>>>>>>>>>         <jo...@yahoo.com>
>>>>>>>>>>>>>          wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           A couple more thoughts
>>> regarding the
>>>>>>>>    background on
>>>>>>>>>      the
>>>>>>>>>>       CMS...
>>>>>>>>>>>>>>>           the bulk of the focus
>>> of the CMS up
>>>>>>  until now
>>>>>>>>    has
>>>>>>>>>      been
>>>>>>>>>>       to
>>>>>>>>>>>>>>>           support really big
>>> sites like maven
>>>>>>  and
>>>>>>>>    openoffice,
>>>>>>>>>      both
>>>>>>>>>>       of
>>>>>>>>>>>>>>>           which have websites
>>> well over 5GB
>>>>>>  worth of
>>>>>>>>    text
>>>>>>>>>      files.
>>>>>>>>>>       The
>>>>>>>>>>>>>>>           build system was
>>> hollowed out and
>>>>>>  revamped to
>>>>>>>>>      support
>>>>>>>>>>>        external
>>>>>>>>>>>>>>>           builds in other
>>> programming
>>>>>>  languages, as well
>>>>>>>>    as
>>>>>>>>>>       scaling up
>>>>>>>>>>>>>>>           the perl builds to
>>> provide about 8
>>>>>>  child
>>>>>>>>    processes
>>>>>>>>>      that
>>>>>>>>>>       build
>>>>>>>>>>>>>>>           the site in parallel
>>> by default.
>>>>>>  Full site
>>>>>>>>    build
>>>>>>>>>      times
>>>>>>>>>>       for
>>>>>>>>>>>>>>>           openoffice went from
>>> over 30 minutes
>>>>>>  to
>>>>>>>>    between 5
>>>>>>>>>      to 10
>>>>>>>>>>>        minutes
>>>>>>>>>>>>>>>           depending on disk
>>> activity, which
>>>>>>  made
>>>>>>>>>      experimentation
>>>>>>>>>>       with
>>>>>>>>>>>>         site-wide
>>>>>>>>>>>>>>>           changes feasible on a
>>> reasonable
>>>>>>  timeframe.
>>>>>>>>    At
>>>>>>>>>      first
>>>>>>>>>>       the
>>>>>>>>>>>        project
>>>>>>>>>>>>         was
>>>>>>>>>>>>>          in
>>>>>>>>>>>>>>>           the habit of running
>>> the builds
>>>>>>  locally before
>>>>>>>> 
>>>>>>>>>      checking
>>>>>>>>>>       in
>>>>>>>>>>>        their
>>>>>>>>>>>>>          changes
>>>>>>>>>>>>>>>           because the delay in
>>> feedback
>>>>>>  post-commit was
>>>>>>>>>>       unreasonable,
>>>>>>>>>>>        but
>>>>>>>>>>>>         with
>>>>>>>>>>>>>          smart
>>>>>>>>>>>>>>>           use of SSI the were
>>> able to cut down
>>>>>>  on the
>>>>>>>>    number
>>>>>>>>>      of
>>>>>>>>>>       changes
>>>>>>>>>>>        that
>>>>>>>>>>>> 
>>>>>>>>>>>>>          required
>>>>>>>>>>>>>>>           full site builds and
>>> hence no longer
>>>>>>  bother
>>>>>>>>    with
>>>>>>>>>      the
>>>>>>>>>>       whole
>>>>>>>>>>>>         pre-build
>>>>>>>>>>>>>          mumbo
>>>>>>>>>>>>>>>           jumbo before checking
>>> in changes.
>>>>>>  The CMS is
>>>>>>>>>      designed
>>>>>>>>>>       to
>>>>>>>>>>>        only
>>>>>>>>>>>>         build
>>>>>>>>>>>>>          pages
>>>>>>>>>>>>>>>           that were altered, and
>>> if you just
>>>>>>  edit a page
>>>>>>>>    or
>>>>>>>>>      two
>>>>>>>>>>       only
>>>>>>>>>>>        those
>>>>>>>>>>>>         pages
>>>>>>>>>>>>>          and
>>>>>>>>>>>>>>>           the pages that depend
>>> on them will
>>>>>>  be built.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           Now that I've
>>> turned my
>>>>>>  attention to
>>>>>>>>    thrift,
>>>>>>>>>      there
>>>>>>>>>>       are
>>>>>>>>>>>        several
>>>>>>>>>>>> 
>>>>>>>>>>>>>          aspects
>>>>>>>>>>>>>>>           that are better off
>>> being retuned
>>>>>>  based on the
>>>>>>>> 
>>>>>>>>>      modest
>>>>>>>>>>       size of
>>>>>>>>>>>        the
>>>>>>>>>>>>         site.
>>>>>>>>>>>>>>>           First of all you have
>>> a sitemap url
>>>>>>  that lists
>>>>>>>>    all
>>>>>>>>>      of
>>>>>>>>>>       your
>>>>>>>>>>>>>          markdown-based
>>>>>>>>>>>>>>>           pages, which would be
>>> a nonstarter
>>>>>>  for a site
>>>>>>>>    like
>>>>>>>>>>>        openoffice.
>>>>>>>>>>>>         The
>>>>>>>>>>>>>>>           implications of the
>>> sitemap url are
>>>>>>  that every
>>>>>>>>    page
>>>>>>>>> 
>>>>>>>>>>       needs to
>>>>>>>>>>>        be
>>>>>>>>>>>>         built
>>>>>>>>>>>>>          in
>>>>>>>>>>>>>>>           memory just to
>>> generate that page,
>>>>>>  which leads
>>>>>>>>    to a
>>>>>>>>>      lot
>>>>>>>>>>       of
>>>>>>>>>>>>         redundancy
>>>>>>>>>>>>>          in a
>>>>>>>>>>>>>>>           build system designed
>>> to run as
>>>>>>  forked child
>>>>>>>>>      processes.
>>>>>>>>>>       We
>>>>>>>>>>>        can do
>>>>>>>>>>>> 
>>>>>>>>>>>>>          better...
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           I've done two
>>> things to make
>>>>>>  this work
>>>>>>>>    well-
>>>>>>>>>      first I
>>>>>>>>>>       made
>>>>>>>>>>>        the
>>>>>>>>>>>>>          number of
>>>>>>>>>>>>>>>           child processes
>>> "aka
>>>>>>  runners"
>>>>>>>>    tunable on
>>>>>>>>>      a
>>>>>>>>>>>        per-project
>>>>>>>>>>>>         basis,
>>>>>>>>>>>>>          and since the
>>>>>>>>>>>>>>>           sitemap is going to
>>> build every page
>>>>>>  anyway as
>>>>>>>>    the
>>>>>>>>>>       slowest
>>>>>>>>>>>        page to
>>>>>>>>>>>> 
>>>>>>>>>>>>>          build, I
>>>>>>>>>>>>>>>           memoized the main view
>>> that builds
>>>>>>  the
>>>>>>>>    markdown
>>>>>>>>>      pages
>>>>>>>>>>       for
>>>>>>>>>>>        thrift.
>>>>>>>>>>>>         The
>>>>>>>>>>>>>          best
>>>>>>>>>>>>>>>           results are when
>>> there's only
>>>>>>  one runner
>>>>>>>>    so we
>>>>>>>>>      get
>>>>>>>>>>       the
>>>>>>>>>>>        full
>>>>>>>>>>>>         benefit
>>>>>>>>>>>>>          of
>>>>>>>>>>>>>>>           memoization: typical
>>> site build
>>>>>>  times are
>>>>>>>>>      consistently
>>>>>>>>>>       under
>>>>>>>>>>>        2
>>>>>>>>>>>>         seconds
>>>>>>>>>>>>>          now.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           You'll appreciate
>>> why I am such
>>>>>>  a
>>>>>>>>    performance
>>>>>>>>>>       stickler
>>>>>>>>>>>        for the
>>>>>>>>>>>>         CMS
>>>>>>>>>>>>>          when
>>>>>>>>>>>>>>>           you start using the
>>> bookmarklet,
>>>>>>  since builds
>>>>>>>>    are
>>>>>>>>>      the
>>>>>>>>>>       only
>>>>>>>>>>>>         asynchronous
>>>>>>>>>>>>>>>           part of the process
>>> from making a
>>>>>>  change to a
>>>>>>>>    page
>>>>>>>>>      and
>>>>>>>>>>>        publishing
>>>>>>>>>>>>         the
>>>>>>>>>>>>>>>           results.  Ideally when
>>> the system is
>>>>>>  working
>>>>>>>>    well
>>>>>>>>>      the
>>>>>>>>>>       builds
>>>>>>>>>>>>         happen
>>>>>>>>>>>>>          before
>>>>>>>>>>>>>>>           you have time to go
>>> looking for
>>>>>>  them, but you
>>>>>>>>    do
>>>>>>>>>      need to
>>>>>>>>>>       be
>>>>>>>>>>>>         mindful of
>>>>>>>>>>>>>          not
>>>>>>>>>>>>>>>           publishing before the
>>> built pages
>>>>>>  have been
>>>>>>>>>      committed
>>>>>>>>>>       back to
>>>>>>>>>>>        svn
>>>>>>>>>>>>         by
>>>>>>>>>>>>>>>           buildbot.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>           On Monday, March
>>> 17, 2014 11:59
>>>>>>  PM, Joe
>>>>>>>>>      Schaefer
>>>>>>>>>>>>>          <jo...@yahoo.com>
>>>>>>>>>>>>>>>           wrote:
>>>>>>>>>>>>>>>>>           Ok there's
>>> enough of an
>>>>>>  idea about
>>>>>>>>    how
>>>>>>>>>      to
>>>>>>>>>>       port
>>>>>>>>>>>        the
>>>>>>>>>>>>         rest of
>>>>>>>>>>>>>          the site's
>>>>>>>>>>>>>>>>           pages over based
>>> on the porting
>>>>>>  work
>>>>>>>>    I've
>>>>>>>>>>       already
>>>>>>>>>>>        done
>>>>>>>>>>>>         that
>>>>>>>>>>>>>          it's time
>>>>>>>>>>>>>>>>           for me to step
>>> back and let you
>>>>>>  guys catch
>>>>>>>>    up.
>>>>>>>>> 
>>>>>>>>>>       Basically
>>>>>>>>>>>        the
>>>>>>>>>>>>         idea
>>>>>>>>>>>>>          is
>>>>>>>>>>>>>>>           that while
>>>>>>>>>>>>>>>>           there is
>>> templating support in
>>>>>>  the
>>>>>>>>    markdown
>>>>>>>>>      sources,
>>>>>>>>>> 
>>>>>>>>>>>        it's
>>>>>>>>>>>>>          fairly limited
>>>>>>>>>>>>>>>>           compared to what
>>> nanoc offers,
>>>>>>  but instead
>>>>>>>>    of
>>>>>>>>>>       writing a
>>>>>>>>>>>        lot of
>>>>>>>>>>>> 
>>>>>>>>>>>>>          complex
>>>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>>>           code into your
>>> sources, with the
>>>>>>  cms you
>>>>>>>>    just
>>>>>>>>>      add
>>>>>>>>>>       code to
>>>>>>>>>>> 
>>>>>>>>>>>>>          lib/view.pmand/or
>>>>>>>>>>>>>>>>           lib/path.pm to
>>> keep the document
>>>>>>  sources
>>>>>>>>    simple
>>>>>>>>>      and
>>>>>>>>>>       just
>>>>>>>>>>>        add
>>>>>>>>>>>>         more
>>>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>>>           variables.  What I
>>> just finished
>>>>>>  in
>>>>>>>>    lib/view.pm
>>>>>>>>>      and
>>>>>>>>>>>>         lib/path.pm is
>>>>>>>>>>>>>>>           directory
>>>>>>>>>>>>>>>>           listing support
>>> for /docs.html
>>>>>>  but it can
>>>>>>>>    be
>>>>>>>>>      carried
>>>>>>>>>>       over
>>>>>>>>>>>        to
>>>>>>>>>>>>>          similar
>>>>>>>>>>>>>>>           pages.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           On Monday,
>>> March 17, 2014
>>>>>>  9:16 PM, Joe
>>>>>>>> 
>>>>>>>>>      Schaefer
>>> <jo...@yahoo.com>
>>>>>>  wrote:
>>> Interesting ideas,
>>>>>>  thanks.  FWIW I
>>>>>>>> 
>>>>>>>>>      think
>>>>>>>>>>       that
>>>>>>>>>>>        sort
>>>>>>>>>>>>>>>>>           of thing might
>>> be best
>>>>>>  supported as a
>>>>>>>>>      periodic
>>>>>>>>>>       cron
>>>>>>>>>>>>>>>>>           if we can
>>> write something
>>>>>>  stable
>>>>>>>>    enough,
>>>>>>>>>      because
>>>>>>>>>> 
>>>>>>>>>>>        pulling
>>>>>>>>>>>>>>>>>           stuff out of
>>> the git repo is
>>>>>>  something
>>>>>>>>    the
>>>>>>>>>      CMS
>>>>>>>>>>>        isn't
>>>>>>>>>>>>         going
>>>>>>>>>>>>>>>>>           to do all that
>>> well being an
>>>>>>  svn
>>>>>>>>>      application.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           The CMS build
>>> results are
>>>>>>  available at
>>> http://thrift.staging.apache.org/
>>>>>>>>>>>>>>>>>           feel free to
>>> play with the
>>>>>>  sources in
>>> repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>>>>>>>           It's very
>>> fast, probably
>>>>>>  an order
>>>>>>>>    of
>>>>>>>>>>       magnitude
>>>>>>>>>>>        faster
>>>>>>>>>>>>         than
>>>>>>>>>>>>>          your current
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           tech.
>>>>>>>>>>>>>>>>>           Whole site
>>> builds in two
>>>>>>  seconds;
>>>>>>>>    fractions
>>>>>>>>>      of a
>>>>>>>>>> 
>>>>>>>>>>>        second
>>>>>>>>>>>>         for
>>>>>>>>>>>>>          typical
>>>>>>>>>>>>>>>           mods to
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           content/
>>> markdown pages.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           The CMS
>>> bookmarklet is
>>>>>>  compatible with
>>>>>>>>    the
>>>>>>>>>>       staging
>>>>>>>>>>>        site
>>>>>>>>>>>>         FWIW.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            On
>>> Monday, March 17,
>>>>>>  2014 7:40
>>>>>>>>    PM,
>>>>>>>>>      Roger
>>>>>>>>>>       Meier
>>>>>>  <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>>>>>>>           Hi Joe
>>> & Co
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            thanks
>>> for this test
>>>>>>  run with
>>>>>>>>    Apache
>>>>>>>>>      CMS!
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            What I
>>> would love to
>>>>>>  see is this:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            Source
>>> file: => Web
>>>>>>  Site URL:
>>> test/README.md =>
>>>>>>>>>      thrift.apache.org/test
>>> test/STATUS.md =>
>>>>>>>>>>>        thrift.apache.org/test/status
>>> test/keys/README.md
>>>>>>  =>
>>>>>>>>>>>        thrift.apache.org/test/keys
>>>>>>  lib/<lang>/README.md =>
>>> thrift.apache.org/lib/<lang>
>>>>>>  lib/<lang>/test/README.md
>>>>>>>>    =>
>>>>>>>>    thrift.apache.org/lib/<lang>/test
>>>>>>>>    lib/<lang>/examples/README.md
>>>>>>>>>      =>
>>>>>>>>>      thrift.apache.org/lib/<lang>/examples
>>> compiler/cpp/README.md
>>>>>>  =>
>>>>>>>>>>>>         thrift.apache.org/compiler
>>> debian/README.md =>
>>>>>>>>>>       thrift.apache.org/debian
>>>>>>  contrib/<topic>/README.md
>>>>>>>>    =>
>>>>>>>>>>>>>          thrift.apache.org/<topic>
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            just made
>>> the following
>>>>>>  patch to
>>>>>>>>>      rename all
>>>>>>>>>>       file
>>>>>>>>>>>        to
>>>>>>>>>>>>         .md
>>>>>>>>>>>>>          within our
>>>>>>>>>>>>>>>>           source
>>>>>>>>>>>>>>>>>>            tree:
>>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>>>>>>>            ... we
>>> have *41*
>>>>>>  md's within
>>>>>>>>    the
>>>>>>>>>      source
>>>>>>>>>>       tree
>>>>>>>>>>>        and
>>>>>>>>>>>>>          that's the
>>>>>>>>>>>>>>>>           place
>>>>>>>>>>>>>>>>>           where
>>>>>>>>>>>>>>>>>>            people
>>> look for
>>>>>>  documentation
>>>>>>>>    first.
>>>>>>>>>      =>
>>>>>>>>>>>        simple to
>>>>>>>>>>>>>          manage
>>>>>>>>>>>>>>>>>>            Would be
>>> user friendly
>>>>>>  to have
>>>>>>>>    all of
>>>>>>>>>      this
>>>>>>>>>>>        online
>>>>>>>>>>>>         with
>>>>>>>>>>>>>          each release
>>>>>>>>>>>>>>>>>>            with the
>>> URL layout
>>>>>>  mentioned
>>>>>>>>    above.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            just
>>> received the
>>>>>>  buildboot...
>>>>>>>>>>>>>>>>>>            Do you
>>> have kind of a
>>>>>>  preview of
>>>>>>>>    your
>>>>>>>>>>       prototype?
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            all the
>>> best!
>>>>>>>>>>>>>>>>>>            -roger
>>>>>>>>>>>>>>>>>>            ;-r
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            Quoting
>>> Jake Farrell
>>>>>>>>>>>        <jf...@apache.org>:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>             No
>>> objections from
>>>>>>  me
>>> -Jake
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>             On
>>> Mon, Mar 17,
>>>>>>  2014 at
>>>>>>>>    12:04 PM,
>>>>>>>>>      Joe
>>>>>>>>>>>        Schaefer
>>>>>>>>    <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>> 
>>> Any objections
>>>>>>  to me
>>>>>>>>    making a
>>>>>>>>>      copy
>>>>>>>>>>       of
>>>>>>>>>>>        the
>>>>>>>>>>>>         site
>>> tree alongside
>>>>>>  it called
>>>>>>>> 
>>>>>>>>>>       cms-site?
>>>>>>>>>>>        I'd
>>>>>>>>>>>>         like
>>>>>>>>>>>>>          to
>>> get cracking
>>>>>>  on knocking
>>>>>>>>    up
>>>>>>>>>      the
>>>>>>>>>>>        supporting
>>>>>>>>>>>>         perl
>>> for this so we
>>>>>>  can
>>>>>>>>    continue
>>>>>>>>>      to
>>>>>>>>>>>        brainstorm...
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>   On Sunday,
>>>>>>  March 16,
>>>>>>>>    2014
>>>>>>>>>      1:53
>>>>>>>>>>       PM,
>>>>>>>>>>>        Joe
>>>>>>>>>>>>         Schaefer
>>>>>>  <jo...@yahoo.com>
>>> wrote:
>>>       On
>>>>>>  Sunday, March
>>>>>>>>    16,
>>>>>>>>>      2014
>>>>>>>>>>       1:40
>>>>>>>>>>>        PM,
>>>>>>>>>>>>         Jake
>>>>>>>>>>>>>          Farrell
>>>>>>  <jf...@apache.org>
>>>   wrote:
>>>   Hey Joe
>>>       Thanks
>>>>>>  for
>>>>>>>>    reaching
>>>>>>>>>      out, we
>>>>>>>>>>       chose
>>>>>>>>>>>        to
>>>>>>>>>>>>         go
>>>>>>>>>>>>>          with a site
>>>>>>>>>>>>>>>>>           generator
>>>>>>>>>>>>>>>>>>            over the
>>>       Apache
>>>>>>  CMS due to
>>>>>>>>    it
>>>>>>>>>>       initially
>>>>>>>>>>>        not
>>>>>>>>>>>>         meeting
>>>>>>>>>>>>>          all of
>>>>>>>>>>>>>>>>           our
>>>>>>>>>>>>>>>>>           needs.
>>>>>>>>>>>>>>>>>>            Our
>>> current
>>>       needs
>>>>>>  for the site
>>>>>>>>    are
>>>       -
>>>>>>  Markdown to html
>>>>>>>> 
>>>>>>>>>>       conversion
>>>   That
>>>>>>  one's easy-
>>>>>>>>    its
>>>>>>>>>      the
>>>>>>>>>>       default
>>>>>>>>>>>        for
>>>>>>>>>>>>         the
>>>>>>>>>>>>>          cms.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>       - Global
>>>>>>>>>      variables/config
>>>>>>>>>>       usable
>>>>>>>>>>>>         throughout
>>>>>>>>>>>>>          in a
>>>>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>            based
>>> layout
>>>   Easy too-
>>>>>>  just create
>>>>>>>>    a
>>>>>>>>>      perl
>>>>>>>>>>       hash
>>>>>>>>>>>>         somewhere and
>>>>>>>>>>>>>          make it
>>>>>>>>>>>>>>>>>           available
>>>>>>>>>>>>>>>>>>            to
>>> your views.
>>>   Code your
>>>>>>  views to
>>>>>>>>    pass
>>>>>>>>>      that
>>>>>>>>>>       hash
>>>>>>>>>>>        along to
>>>>>>>>>>>>         your
>>>>>>>>>>>>>>>>           templates
>>>>>>>>>>>>>>>>>           and you
>>>>>>>>>>>>>>>>>>            are
>>> all set.
>>>   Note if your
>>>>>>  hash
>>>>>>>>    contains
>>>>>>>>>>       objects
>>>>>>>>>>>        you can
>>>>>>>>>>>>         make
>>>>>>>>>>>>>          method
>>>>>>>>>>>>>>>>           calls
>>>>>>>>>>>>>>>>>           on
>>>>>>>>>>>>>>>>>>            them in
>>> your
>>>   templates.
>>>>>>  Note:
>>>>>>>>    while I
>>>>>>>>>>>        wouldn't
>>>>>>>>>>>>>          recommend this in
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           general,
>>>>>>>>>>>>>>>>>>            for
>>> smaller
>>>   projects
>>>>>>  like thrift
>>>>>>>>    that
>>>>>>>>>      prefer
>>>>>>>>>> 
>>>>>>>>>>>>         convenience
>>>>>>>>>>>>>          over
>>>>>>>>>>>>>>>>           separation
>>>>>>>>>>>>>>>>>           of
>>>>>>>>>>>>>>>>>>            concerns
>>> you can
>>>   have the
>>>>>>  django
>>>>>>>>    template
>>>>>>>>>      engine
>>>>>>>>>>       do a
>>>>>>>>>>>        pass
>>>>>>>>>>>>         over
>>>>>>>>>>>>>          your
>>>>>>>>>>>>>>>>           markdown
>>>>>>>>>>>>>>>>>>            before
>>> passing it
>>>   along to
>>>>>>  your actual
>>>>>>>>>      template
>>>>>>>>>>       page,
>>>>>>>>>>>        just
>>>>>>>>>>>>         as is
>>>>>>>>>>>>>          seemingly
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>           common to
>>>>>>>>>>>>>>>>>>            other
>>> popular
>>>   site
>>>>>>  generation
>>>>>>>>    software.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>       - Syntax
>>>>>>>>    highlighting
>>>   Comes with
>>>>>>>>    python's
>>>>>>>>>      markdown
>>>>>>>>>> 
>>>>>>>>>>>        support,
>>>>>>>>>>>>         but
>>>>>>>>>>>>>          some
>>>>>>>>>>>>>>>>           people
>>>>>>>>>>>>>>>>>           prefer
>>>>>>>>>>>>>>>>>>            the look
>>> of
>>>   javascript
>>>>>>>>    highlighters.
>>>>>>>>>>>>>>>>>>>>> 
>>>       - Easily
>>>>>>  include
>>>>>>>>    code
>>>>>>>>>>       snippets
>>>>>>>>>>>        from
>>>>>>>>>>>>         our
>>>>>>>>>>>>>          source code
>>>>>>>>>>>>>>>>           base
>>>   Statically I
>>>>>>  hope.  No
>>>>>>>>    idea
>>>>>>>>>      how
>>>>>>>>>>       to
>>>>>>>>>>>        pull
>>>>>>>>>>>>>          snippets out of
>>>>>>>>>>>>>>>>           your
>>>>>>>>>>>>>>>>>           git
>>>>>>>>>>>>>>>>>>            repo
>>> via the
>>>   cms.
>>>>>>>>>>>>>>>>>>>>> 
>>>       -
>>>>>>  Ability to
>>>>>>>>    locally
>>>>>>>>>      test
>>>>>>>>>>       before
>>>>>>>>>>>>         committing
>>>   Belt and
>>>>>>  suspenders
>>>>>>>>    with
>>>>>>>>>      the
>>>>>>>>>>       cms- you
>>>>>>>>>>>        can
>>>>>>>>>>>>         build
>>>>>>>>>>>>>          your
>>>>>>>>>>>>>>>>           changes
>>>>>>>>>>>>>>>>>>            before
>>> committing
>>>   with the
>>>>>>  build
>>>>>>>>    scripts,
>>>>>>>>>      browse
>>>>>>>>>>       your
>>>>>>>>>>>>         changes
>>>>>>>>>>>>>          before
>>>>>>>>>>>>>>>>           committing
>>>>>>>>>>>>>>>>>           via
>>>>>>>>>>>>>>>>>>            the cms
>>>   webgui, or
>>>>>>  simply
>>>>>>>>    commit
>>>>>>>>>      your
>>>>>>>>>>       changes
>>>>>>>>>>>        and
>>>>>>>>>>>>         view
>>>>>>>>>>>>>          the
>>>>>>>>>>>>>>>>           staging
>>>>>>>>>>>>>>>>>           site
>>>>>>>>>>>>>>>>>>            prior to
>>> live
>>>   publication
>>>>>>  (which is
>>>>>>>>    a
>>>>>>>>>      separate
>>>>>>>>>> 
>>>>>>>>>>>        step).
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>       -Jake
>>>       On Sun,
>>>>>>  Mar 16,
>>>>>>>>    2014 at
>>>>>>>>> 
>>>>>>>>>>       12:44 PM,
>>>>>>>>>>>        Joe
>>>>>>>>>>>>>          Schaefer
>>>>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>>>>> 
>>>         As
>>>>>>  it so
>>>>>>>>    happens I
>>>>>>>>>      am
>>>>>>>>>>>        interested
>>>>>>>>>>>>         in
>>>>>>>>>>>>>          working on
>>>>>>>>>>>>>>>>>           supporting
>>>>>>  thrift's
>>>>>>>>    use
>>>>>>>>>      case as
>>>>>>>>>>       a
>>>>>>>>>>>>         potential
>>>>>>>>>>>>>          user of
>>>>>>>>>>>>>>>>           the
>>>>>>>>>>>>>>>>>           Apache
>>>>>>>>>>>>>>>>>>            CMS.
>>>>>>  While the CMS
>>>>>>>>    works
>>>>>>>>>      well
>>>>>>>>>>       for
>>>>>>>>>>>>         massive
>>>>>>>>>>>>>          projects
>>>>>>>>>>>>>>>>           there
>>>>>>>>>>>>>>>>>           are
>>>>>>  things it
>>>>>>>>    could do
>>>>>>>>>>       better at
>>>>>>>>>>>>         supporting
>>>>>>>>>>>>>          for
>>>>>>>>>>>>>>>>           more
>>>>>>>>>>>>>>>>>           moderate
>>>>>>  sized sites
>>>>>>>>    like
>>>>>>>>>>>        thrift's.
>>>>>>  I'd
>>>>>>>>    therefore
>>>>>>>>>      like
>>>>>>>>>>       to
>>>>>>>>>>>        engage
>>>>>>>>>>>>         you
>>>>>>>>>>>>>          folks in a
>>>>>>>>>>>>>>>> 
>>> brainstorming session
>>>>>>  about what
>>>>>>>>    sorts of
>>>>>>>>> 
>>>>>>>>>>       features
>>>>>>>>>>>        you
>>>>>>>>>>>>         want
>>>>>>>>>>>>>          for your
>>>>>>>>>>>>>>>>           site
>>>>>>>>>>>>>>>>>           and
>>>>>>>>>>>>>>>>>>            to find
>>>>>>  simple ways of
>>>>>>>> 
>>>>>>>>>>       supporting
>>>>>>>>>>>        those
>>>>>>>>>>>>>          features for
>>>>>>>>>>>>>>>>           you.
>>>>>>  Thanks.
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
any idea how to fix this URL:
http://thrift.staging.apache.org/test/ThriftTest.thrift
we need to keep the filename for working links within the
test/README.md file.

What about a footer for docs genertated from source tree?
[snippet:path=test/README.md, footer=1]

I added the following snippet to content/test/index.md:
---SNIP---
This page was generated from Apache Thrift's **source tree docs**:
[test/README.md](https://git-wip-us.apache.org/repos/asf/thrift/repo?p=thrift.git;a=blob;f=test/ThriftTest.thrift;hb=HEAD)
---SNIP---

would be great to get this generated into the page via snippet.

-roger


On 23.03.2014 19:04, Joe Schaefer wrote:
> The CMS codebase as well as the thrift build system
> already supports it Roger, someone just needs to create
> the files in the content tree that point at the source
> files in the git repo.  If you want to script this process
> in scripting language du jour, go for it, but I cannot
> justify spending contractor time doing this work for the
> community's behalf as it is unlikely to be needed elsewhere.
> I would think you only need the script to run when some
> path to a README.md file changes in the thrift.git tree,
> so it doesn't need to be incorporated into each site build.
>
>
>
>> On Sunday, March 23, 2014 9:15 AM, Roger Meier <ro...@bufferoverflow.ch> wrote:
>>> Hi
>>
>> On 23.03.2014 03:19, Jake Farrell wrote:
>>>   Hey Joe
>>>   Reviewing the staging site it looks like its almost 99% there other than
>>>   some styling within the code snippets. I'm good if we want to cut over
>> to
>>>   using this and then work on the additional features that had been mentioned
>>>   afterwords. Any objections to cutting over?
>> I would really like to see this automatic README.md includes from source
>> tree, to have a real additional feature beside of what we already have
>> today.
>>
>> I'm absolutely with you.
>> Apache projects shall use other Apache projects whenever possible.
>>
>>>   On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer
>> <jo...@yahoo.com>wrote:
>>>
>>>>   May I suggest a script that creates files in content/
>>>>   containing a single line
>>>>
>>>>   [snippet:path=...]
>> this sounds like a plan
>>
>>>>
>>>>   (with no 'lang' argument) that lets the CMS pull raw content
>> from
>>>>   thrift.git
>>>>   and add it directly to the built pages.  That way you only need to run
>> the
>>>>   script that generates these files when a path changes in your
>> thrift.git
>>>>   repo.
>> What I had in mind is a automatic search of README.md files across the
>> source tree and generate the site with these automatically.
>> Kind of a central controller that maps all the URL's.
>> no additional work when a new README.md file is added.
>> however, a script can do this as interim soultion.
>>>>
>>>>   You can commit directly to the cms svn tree or via the webgui which
>> does
>>>>   the same thing.
>> Great!
>>
>> What about local preview when doing perl modifications?
>>
>> -roger
>>
>>
>>>>
>>>>
>>>>>   On Saturday, March 22, 2014 4:20 PM, Roger Meier <
>>>>   roger@bufferoverflow.ch> wrote:
>>>>>>   I still see some issues and still miss to feature mentioned.
>>>>>   Now we have nonoc.ws and I'm able to hack this a bit.
>>>>>
>>>>>   We had no real big issue, the thing I missed was the code snippet
>> thing
>>>>>   and this is in on nanoc.ws and now also on Apache CMS.
>>>>>
>>>>>   The thing we really need is the documentation located within source
>> code
>>>>>   integrated on the web site.
>>>>>
>>>>>   most hosting platforms do render README.md and that's why lot
>> of doc
>>>>>   will stay within the code and we should benefit as well by
>> rendering
>>>>>   that to the web site and enhance the documentation very easily.
>>>>>
>>>>>   I would like to render the 41 README.md files to with the following
>>>>>   pattern, that's a must have before switching to another CMS.
>>>>>
>>>>>   test/README.md => thrift.apache.org/test
>>>>>   test/STATUS.md => thrift.apache.org/test/status
>>>>>   test/keys/README.md => thrift.apache.org/test/keys
>>>>>   lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>>>>   lib/<lang>/test/README.md =>
>> thrift.apache.org/lib/<lang>/test
>>>>>   lib/<lang>/examples/README.md =>
>>>>>   thrift.apache.org/lib/<lang>/examples
>>>>>   compiler/cpp/README.md => thrift.apache.org/compiler
>>>>>   debian/README.md => thrift.apache.org/debian
>>>>>   contrib/<topic>/README.md =>
>> thrift.apache.org/<topic>
>>>>>
>>>>>   CPP tutorial seems to be broken on staging.
>>>>>
>>>>>   Do you commit to
>> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>>   or is it web gui only?
>>>>>
>>>>>   How do you generate the site on your local machine?
>>>>>
>>>>>
>>>>>   Should I reactivate my perl or do we stay with ruby?
>>>>>   Committers and contributors, what do you think?
>>>>>
>>>>>
>>>>>   all the best
>>>>>   -roger
>>>>>
>>>>>
>>>>>   On 22.03.2014 18:07, Joe Schaefer wrote:
>>>>>>
>>>>>>
>>>>>>     Ok I've now done the basic necessities involved in
>> porting
>>>>>>     the site over.  Links have been adjusted, templates ported,
>> files
>>>>   created,
>>>>>>     snippet feature activated.  At this point I'm happy to
>> declare
>>>>>>     victory and migrate the thrift live site over, as anything
>> broken that
>>>>>>     still remains can be dealt with on a per-page basis with the
>>>>   bookmarklet.
>>>>>>
>>>>>>
>>>>>>
>>>>>>>     On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
>>>>>   <jo...@yahoo.com> wrote:
>>>>>>>>     Modulo some bizarre content truncation out of
>> git-wip-us.apache.org
>>>>>>>     the snippet support is now active. At this point I think
>> all the build
>>>>>>>     support you need in this project to support every type of
>>>>   brainstorming
>>>>>>>     activity we've discussed is now there, so it's
>> just up to you
>>>>>   guys to
>>>>>>>     now familiarize yourselves with the build technology and
>> how to apply
>>>>>>>     it to your needs.  The site builds with snippet support
>> are running
>>>>>   around
>>>>>>>     10 seconds, which is to be expected with the network
>> interactions
>>>>>   involved.
>>>>>>>
>>>>>>>     I'm always willing to answer any questions that come
>> up in the
>>>>>   interim,
>>>>>>>     but I wish you guys the best of luck in the remaining
>> porting work to
>>>>>   be done.
>>>>>>>     All I see really are some links that need to have the
>> trailing slashes
>>>>>   removed
>>>>>>>     and whatever <%= %> template constructs that remain
>> need to be
>>>>>   ported to
>>>>>>>     django.  So it should be smooth sailing, but as I said if
>> you hit any
>>>>>   snags
>>>>>>>     holler.  I'd really like to see the live site tech
>> switched over to
>>>>>   the cms
>>>>>>>     stuff before Apachecon ends in early April, hint hint.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>       On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>>>>>>>     <jo...@yahoo.com> wrote:
>>>>>>>>       > While I don't yet know the url magic to
>> support branches
>>>>>   and tags
>>>>>>>     in git,
>>>>>>>>       I can say that the snippet support is ready to play
>> with.  I
>>>>>   suggest just
>>>>>>>>       focusing on the /index.md page first to see how it
>> works in
>>>>>   practice
>>>>>>>     because
>>>>>>>>       once it's fully enabled the build will break
>> until all the
>>>>>   snippet
>>>>>>>     sources
>>>>>>>>       have been altered to conform with the new style.
>>>>>>>>
>>>>>>>>       To turn it on for index.md testing, there are a
>> couple of things
>>>>>   that need
>>>>>>>     to
>>>>>>>>       happen. First the [snippet:...] marker should be
>> edited to be
>>>>>>>     [XXXsnippet:...]
>>>>>>>>       to enable testing without breaking the build.
>> Second each marker
>>>>>   contains
>>>>>>>     a
>>>>>>>>       "token" argument instead of line numbers
>> for more
>>>>>   stability under
>>>>>>>
>>>>>>>>       edits to the source code.  The token argument is an
>> arbitrary
>>>>>   string that
>>>>>>>     is
>>>>>>>>       used to denote the boundaries of the snippet within
>> the source
>>>>>   code.
>>>>>>>>        ASF::Value::Snippet will pull out the lines from
>> the source file
>>>>>   between
>>>>>>>     the
>>>>>>>>       lines that contain the token argument and format
>> them as a code
>>>>>   snippet
>>>>>>>     embedded
>>>>>>>>       into markdown. To get started I'll copy over
>> the code
>>>>>   highlighting css
>>>>>>>     from
>>>>>>>>       www.apache.org but note that this is all based on
>> python pygments
>>>>>   and there
>>>>>>>     are
>>>>>>>>       a variety of online css files to choose from if
>> this one is not
>>>>>   to the
>>>>>>>>       group's liking.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>        On Wednesday, March 19, 2014 4:16 PM, Joe
>> Schaefer
>>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>>        > Sorry I need to clarify with an example:
>> look at
>>>>>>>>>        http://thrift.staging.apache.org/tutorial/
>> versus
>>>>>>>>>
>> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>>>        former is generated from
>> content/tutorial/index.html
>>>>>>>>>        and the latter from content/tutorial.md.  The
>> latter file
>>>>>>>>>        needs to be removed from the tree now that
>> it's content
>>>>>>>>>        has been ported to
>> content/tutorial/index.html.  This
>>>>>>>>>        uses django template inheritance to maintain
>> simplicity.
>>>>>>>>>
>>>>>>>>>        Other directories that follow a similar
>> pattern should
>>>>>>>>>        also be ported in the same fashion.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>         On Wednesday, March 19, 2014 9:46 AM, Joe
>> Schaefer
>>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>>         > If someone's looking for a way
>> to help with
>>>>>   the porting
>>>>>>>>>>         effort, consider tackling the creation of
>> an index.html
>>>>>>>>>>         page in each subdir of the content/ tree
>> (other than
>>>>>   the
>>>>>>>>>>         base which has an /index.md).  The
>> contents of the file
>>>>>>>>>>         should be just
>>>>>>>>>>
>>>>>>>>>>         {% include 'default' %}
>>>>>>>>>>
>>>>>>>>>>         (see the docs dir for an example page
>> that can be
>>>>>   copied)
>>>>>>>>>>         and the build system will take care of
>> generating the
>>>>>   page
>>>>>>>>>>         in a consistent fashion with the rest of
>> the site.
>>>>>   Once
>>>>>>>>>>         that is done there are a lot of pages
>> that function
>>>>>   like
>>>>>>>>>>         index pages but are written in markdown
>> that can be
>>>>>   deleted,
>>>>>>>>>>         like docs.md and its ilk.  Nanoc
>> transforms that file
>>>>>   into
>>>>>>>>>>         /docs/index.html but that's kinda
>> crufty and not
>>>>>   supported
>>>>>>>>>>         by the CMS, which only lets you alter
>> file extensions
>>>>>   not paths.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>          On Wednesday, March 19, 2014 8:54
>> AM, Joe Schaefer
>>>>>>>>>>         <jo...@yahoo.com> wrote:
>>>>>>>>>>>          > I just pencilled in snippet
>> preprocessing
>>>>>   support into
>>>>>>>>>>>          the thrift builds.  Once Jake and I
>> have settled
>>>>>   on the
>>>>>>>>>>>          feature set of ASF::Value::Snippet,
>> and we have
>>>>>   ported
>>>>>>>>>>>          the snippet calling text within the
>> markdown pages
>>>>>>>>>>>          to the new format, things will just
>> work (knock on
>>>>>   wood).
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>           On Wednesday, March 19, 2014
>> 6:48 AM, Joseph
>>>>>   Schaefer
>>>>>>>>>>>          <jo...@yahoo.com>
>> wrote:
>>>>>>>>>>>>           > Sure I understand that
>> need.  If
>>>>>   there's a way
>>>>>>>     of
>>>>>>>>>        pulling the
>>>>>>>>>>
>>>>>>>>>>>          document
>>>>>>>>>>>>           sources directly from the web I
>> can parse the
>>>>>   content
>>>>>>>     to
>>>>>>>>       look for
>>>>>>>>>
>>>>>>>>>>         snippet
>>>>>>>>>>>>           markers and make those
>> available to the
>>>>>   template
>>>>>>>     system.
>>>>>>>>>        That's
>>>>>>>>>>         pretty
>>>>>>>>>>>          much
>>>>>>>>>>>>           how www.apache.org is
>> generated.
>>>>>>>>>>>>
>>>>>>>>>>>>           Sent from my iPhone
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>            On Mar 19, 2014, at 5:28
>> AM, Henrique
>>>>>   Mendonça
>>>>>>>>>>>          <he...@apache.org>
>>>>>>>>>>>>           wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>            Hi Joe,
>>>>>>>>>>>>>
>>>>>>>>>>>>>            Thanks for your effort. I
>> just wanted to
>>>>>   add that
>>>>>>>     the
>>>>>>>>       code
>>>>>>>>>>         snippets
>>>>>>>>>>>          are a
>>>>>>>>>>>>>            crucial feature for this
>> project, which
>>>>>   has way
>>>>>>>     more
>>>>>>>>       target
>>>>>>>>>>         languages
>>>>>>>>>>>          than
>>>>>>>>>>>>>            active contributors. In
>> our case,
>>>>>   reducing manual
>>>>>>>>>        maintenance
>>>>>>>>>>         costs is
>>>>>>>>>>>          much
>>>>>>>>>>>>>            more important than the
>> total site build
>>>>>   time.
>>>>>>>     Perhaps
>>>>>>>>       we
>>>>>>>>>        can
>>>>>>>>>>         also
>>>>>>>>>>>          solve
>>>>>>>>>>>>>            this in the CMS, though.
>>>>>>>>>>>>>
>>>>>>>>>>>>>            - Henrique
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>>            On 19 March 2014
>> 03:17, Joe Schaefer
>>>>>>>>>>>          <jo...@yahoo.com>
>>>>>>>>>>>>           wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>            A couple more thoughts
>> regarding the
>>>>>>>     background on
>>>>>>>>       the
>>>>>>>>>        CMS...
>>>>>>>>>>>>>>            the bulk of the focus
>> of the CMS up
>>>>>   until now
>>>>>>>     has
>>>>>>>>       been
>>>>>>>>>        to
>>>>>>>>>>>>>>            support really big
>> sites like maven
>>>>>   and
>>>>>>>     openoffice,
>>>>>>>>       both
>>>>>>>>>        of
>>>>>>>>>>>>>>            which have websites
>> well over 5GB
>>>>>   worth of
>>>>>>>     text
>>>>>>>>       files.
>>>>>>>>>        The
>>>>>>>>>>>>>>            build system was
>> hollowed out and
>>>>>   revamped to
>>>>>>>>       support
>>>>>>>>>>         external
>>>>>>>>>>>>>>            builds in other
>> programming
>>>>>   languages, as well
>>>>>>>     as
>>>>>>>>>        scaling up
>>>>>>>>>>>>>>            the perl builds to
>> provide about 8
>>>>>   child
>>>>>>>     processes
>>>>>>>>       that
>>>>>>>>>        build
>>>>>>>>>>>>>>            the site in parallel
>> by default.
>>>>>   Full site
>>>>>>>     build
>>>>>>>>       times
>>>>>>>>>        for
>>>>>>>>>>>>>>            openoffice went from
>> over 30 minutes
>>>>>   to
>>>>>>>     between 5
>>>>>>>>       to 10
>>>>>>>>>>         minutes
>>>>>>>>>>>>>>            depending on disk
>> activity, which
>>>>>   made
>>>>>>>>       experimentation
>>>>>>>>>        with
>>>>>>>>>>>          site-wide
>>>>>>>>>>>>>>            changes feasible on a
>> reasonable
>>>>>   timeframe.
>>>>>>>     At
>>>>>>>>       first
>>>>>>>>>        the
>>>>>>>>>>         project
>>>>>>>>>>>          was
>>>>>>>>>>>>           in
>>>>>>>>>>>>>>            the habit of running
>> the builds
>>>>>   locally before
>>>>>>>
>>>>>>>>       checking
>>>>>>>>>        in
>>>>>>>>>>         their
>>>>>>>>>>>>           changes
>>>>>>>>>>>>>>            because the delay in
>> feedback
>>>>>   post-commit was
>>>>>>>>>        unreasonable,
>>>>>>>>>>         but
>>>>>>>>>>>          with
>>>>>>>>>>>>           smart
>>>>>>>>>>>>>>            use of SSI the were
>> able to cut down
>>>>>   on the
>>>>>>>     number
>>>>>>>>       of
>>>>>>>>>        changes
>>>>>>>>>>         that
>>>>>>>>>>>
>>>>>>>>>>>>           required
>>>>>>>>>>>>>>            full site builds and
>> hence no longer
>>>>>   bother
>>>>>>>     with
>>>>>>>>       the
>>>>>>>>>        whole
>>>>>>>>>>>          pre-build
>>>>>>>>>>>>           mumbo
>>>>>>>>>>>>>>            jumbo before checking
>> in changes.
>>>>>   The CMS is
>>>>>>>>       designed
>>>>>>>>>        to
>>>>>>>>>>         only
>>>>>>>>>>>          build
>>>>>>>>>>>>           pages
>>>>>>>>>>>>>>            that were altered, and
>> if you just
>>>>>   edit a page
>>>>>>>     or
>>>>>>>>       two
>>>>>>>>>        only
>>>>>>>>>>         those
>>>>>>>>>>>          pages
>>>>>>>>>>>>           and
>>>>>>>>>>>>>>            the pages that depend
>> on them will
>>>>>   be built.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>            Now that I've
>> turned my
>>>>>   attention to
>>>>>>>     thrift,
>>>>>>>>       there
>>>>>>>>>        are
>>>>>>>>>>         several
>>>>>>>>>>>
>>>>>>>>>>>>           aspects
>>>>>>>>>>>>>>            that are better off
>> being retuned
>>>>>   based on the
>>>>>>>
>>>>>>>>       modest
>>>>>>>>>        size of
>>>>>>>>>>         the
>>>>>>>>>>>          site.
>>>>>>>>>>>>>>            First of all you have
>> a sitemap url
>>>>>   that lists
>>>>>>>     all
>>>>>>>>       of
>>>>>>>>>        your
>>>>>>>>>>>>           markdown-based
>>>>>>>>>>>>>>            pages, which would be
>> a nonstarter
>>>>>   for a site
>>>>>>>     like
>>>>>>>>>>         openoffice.
>>>>>>>>>>>          The
>>>>>>>>>>>>>>            implications of the
>> sitemap url are
>>>>>   that every
>>>>>>>     page
>>>>>>>>
>>>>>>>>>        needs to
>>>>>>>>>>         be
>>>>>>>>>>>          built
>>>>>>>>>>>>           in
>>>>>>>>>>>>>>            memory just to
>> generate that page,
>>>>>   which leads
>>>>>>>     to a
>>>>>>>>       lot
>>>>>>>>>        of
>>>>>>>>>>>          redundancy
>>>>>>>>>>>>           in a
>>>>>>>>>>>>>>            build system designed
>> to run as
>>>>>   forked child
>>>>>>>>       processes.
>>>>>>>>>        We
>>>>>>>>>>         can do
>>>>>>>>>>>
>>>>>>>>>>>>           better...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>            I've done two
>> things to make
>>>>>   this work
>>>>>>>     well-
>>>>>>>>       first I
>>>>>>>>>        made
>>>>>>>>>>         the
>>>>>>>>>>>>           number of
>>>>>>>>>>>>>>            child processes
>> "aka
>>>>>   runners"
>>>>>>>     tunable on
>>>>>>>>       a
>>>>>>>>>>         per-project
>>>>>>>>>>>          basis,
>>>>>>>>>>>>           and since the
>>>>>>>>>>>>>>            sitemap is going to
>> build every page
>>>>>   anyway as
>>>>>>>     the
>>>>>>>>>        slowest
>>>>>>>>>>         page to
>>>>>>>>>>>
>>>>>>>>>>>>           build, I
>>>>>>>>>>>>>>            memoized the main view
>> that builds
>>>>>   the
>>>>>>>     markdown
>>>>>>>>       pages
>>>>>>>>>        for
>>>>>>>>>>         thrift.
>>>>>>>>>>>          The
>>>>>>>>>>>>           best
>>>>>>>>>>>>>>            results are when
>> there's only
>>>>>   one runner
>>>>>>>     so we
>>>>>>>>       get
>>>>>>>>>        the
>>>>>>>>>>         full
>>>>>>>>>>>          benefit
>>>>>>>>>>>>           of
>>>>>>>>>>>>>>            memoization: typical
>> site build
>>>>>   times are
>>>>>>>>       consistently
>>>>>>>>>        under
>>>>>>>>>>         2
>>>>>>>>>>>          seconds
>>>>>>>>>>>>           now.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>            You'll appreciate
>> why I am such
>>>>>   a
>>>>>>>     performance
>>>>>>>>>        stickler
>>>>>>>>>>         for the
>>>>>>>>>>>          CMS
>>>>>>>>>>>>           when
>>>>>>>>>>>>>>            you start using the
>> bookmarklet,
>>>>>   since builds
>>>>>>>     are
>>>>>>>>       the
>>>>>>>>>        only
>>>>>>>>>>>          asynchronous
>>>>>>>>>>>>>>            part of the process
>> from making a
>>>>>   change to a
>>>>>>>     page
>>>>>>>>       and
>>>>>>>>>>         publishing
>>>>>>>>>>>          the
>>>>>>>>>>>>>>            results.  Ideally when
>> the system is
>>>>>   working
>>>>>>>     well
>>>>>>>>       the
>>>>>>>>>        builds
>>>>>>>>>>>          happen
>>>>>>>>>>>>           before
>>>>>>>>>>>>>>            you have time to go
>> looking for
>>>>>   them, but you
>>>>>>>     do
>>>>>>>>       need to
>>>>>>>>>        be
>>>>>>>>>>>          mindful of
>>>>>>>>>>>>           not
>>>>>>>>>>>>>>            publishing before the
>> built pages
>>>>>   have been
>>>>>>>>       committed
>>>>>>>>>        back to
>>>>>>>>>>         svn
>>>>>>>>>>>          by
>>>>>>>>>>>>>>            buildbot.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>            On Monday, March
>> 17, 2014 11:59
>>>>>   PM, Joe
>>>>>>>>       Schaefer
>>>>>>>>>>>>           <jo...@yahoo.com>
>>>>>>>>>>>>>>            wrote:
>>>>>>>>>>>>>>>>            Ok there's
>> enough of an
>>>>>   idea about
>>>>>>>     how
>>>>>>>>       to
>>>>>>>>>        port
>>>>>>>>>>         the
>>>>>>>>>>>          rest of
>>>>>>>>>>>>           the site's
>>>>>>>>>>>>>>>            pages over based
>> on the porting
>>>>>   work
>>>>>>>     I've
>>>>>>>>>        already
>>>>>>>>>>         done
>>>>>>>>>>>          that
>>>>>>>>>>>>           it's time
>>>>>>>>>>>>>>>            for me to step
>> back and let you
>>>>>   guys catch
>>>>>>>     up.
>>>>>>>>
>>>>>>>>>        Basically
>>>>>>>>>>         the
>>>>>>>>>>>          idea
>>>>>>>>>>>>           is
>>>>>>>>>>>>>>            that while
>>>>>>>>>>>>>>>            there is
>> templating support in
>>>>>   the
>>>>>>>     markdown
>>>>>>>>       sources,
>>>>>>>>>
>>>>>>>>>>         it's
>>>>>>>>>>>>           fairly limited
>>>>>>>>>>>>>>>            compared to what
>> nanoc offers,
>>>>>   but instead
>>>>>>>     of
>>>>>>>>>        writing a
>>>>>>>>>>         lot of
>>>>>>>>>>>
>>>>>>>>>>>>           complex
>>>>>>>>>>>>>>            template
>>>>>>>>>>>>>>>            code into your
>> sources, with the
>>>>>   cms you
>>>>>>>     just
>>>>>>>>       add
>>>>>>>>>        code to
>>>>>>>>>>
>>>>>>>>>>>>           lib/view.pmand/or
>>>>>>>>>>>>>>>            lib/path.pm to
>> keep the document
>>>>>   sources
>>>>>>>     simple
>>>>>>>>       and
>>>>>>>>>        just
>>>>>>>>>>         add
>>>>>>>>>>>          more
>>>>>>>>>>>>>>            template
>>>>>>>>>>>>>>>            variables.  What I
>> just finished
>>>>>   in
>>>>>>>     lib/view.pm
>>>>>>>>       and
>>>>>>>>>>>          lib/path.pm is
>>>>>>>>>>>>>>            directory
>>>>>>>>>>>>>>>            listing support
>> for /docs.html
>>>>>   but it can
>>>>>>>     be
>>>>>>>>       carried
>>>>>>>>>        over
>>>>>>>>>>         to
>>>>>>>>>>>>           similar
>>>>>>>>>>>>>>            pages.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            On Monday,
>> March 17, 2014
>>>>>   9:16 PM, Joe
>>>>>>>
>>>>>>>>       Schaefer
>>>>>>>>>>>>>>>
>> <jo...@yahoo.com>
>>>>>   wrote:
>>>>>>>>>>>>>>>>>
>> Interesting ideas,
>>>>>   thanks.  FWIW I
>>>>>>>
>>>>>>>>       think
>>>>>>>>>        that
>>>>>>>>>>         sort
>>>>>>>>>>>>>>>>            of thing might
>> be best
>>>>>   supported as a
>>>>>>>>       periodic
>>>>>>>>>        cron
>>>>>>>>>>>>>>>>            if we can
>> write something
>>>>>   stable
>>>>>>>     enough,
>>>>>>>>       because
>>>>>>>>>
>>>>>>>>>>         pulling
>>>>>>>>>>>>>>>>            stuff out of
>> the git repo is
>>>>>   something
>>>>>>>     the
>>>>>>>>       CMS
>>>>>>>>>>         isn't
>>>>>>>>>>>          going
>>>>>>>>>>>>>>>>            to do all that
>> well being an
>>>>>   svn
>>>>>>>>       application.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            The CMS build
>> results are
>>>>>   available at
>>>>>>>>>>>>>>
>> http://thrift.staging.apache.org/
>>>>>>>>>>>>>>>>            feel free to
>> play with the
>>>>>   sources in
>>>>>>>>>>>>
>> repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>>>>>>            It's very
>> fast, probably
>>>>>   an order
>>>>>>>     of
>>>>>>>>>        magnitude
>>>>>>>>>>         faster
>>>>>>>>>>>          than
>>>>>>>>>>>>           your current
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            tech.
>>>>>>>>>>>>>>>>            Whole site
>> builds in two
>>>>>   seconds;
>>>>>>>     fractions
>>>>>>>>       of a
>>>>>>>>>
>>>>>>>>>>         second
>>>>>>>>>>>          for
>>>>>>>>>>>>           typical
>>>>>>>>>>>>>>            mods to
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            content/
>> markdown pages.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            The CMS
>> bookmarklet is
>>>>>   compatible with
>>>>>>>     the
>>>>>>>>>        staging
>>>>>>>>>>         site
>>>>>>>>>>>          FWIW.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             On
>> Monday, March 17,
>>>>>   2014 7:40
>>>>>>>     PM,
>>>>>>>>       Roger
>>>>>>>>>        Meier
>>>>>>>>>>>>>>>>
>>>>>   <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>>>>>>            Hi Joe
>> & Co
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             thanks
>> for this test
>>>>>   run with
>>>>>>>     Apache
>>>>>>>>       CMS!
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             What I
>> would love to
>>>>>   see is this:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             Source
>> file: => Web
>>>>>   Site URL:
>>>>>>>>>>>>>>>>>
>> test/README.md =>
>>>>>>>>       thrift.apache.org/test
>>>>>>>>>>>>>>>>>
>> test/STATUS.md =>
>>>>>>>>>>         thrift.apache.org/test/status
>>>>>>>>>>>>>>>>>
>> test/keys/README.md
>>>>>   =>
>>>>>>>>>>         thrift.apache.org/test/keys
>>>>>>>>>>>>>>>>>
>>>>>   lib/<lang>/README.md =>
>>>>>>>>>>>>
>> thrift.apache.org/lib/<lang>
>>>>>>>>>>>>>>>>>
>>>>>   lib/<lang>/test/README.md
>>>>>>>     =>
>>>>>>>>>>>>>>>>
>>>>>>>     thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>>>>>>>
>>>>>>>     lib/<lang>/examples/README.md
>>>>>>>>       =>
>>>>>>>>>>>>>>>>>
>>>>>>>>       thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>>>>>>>
>> compiler/cpp/README.md
>>>>>   =>
>>>>>>>>>>>          thrift.apache.org/compiler
>>>>>>>>>>>>>>>>>
>> debian/README.md =>
>>>>>>>>>        thrift.apache.org/debian
>>>>>>>>>>>>>>>>>
>>>>>   contrib/<topic>/README.md
>>>>>>>     =>
>>>>>>>>>>>>           thrift.apache.org/<topic>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             just made
>> the following
>>>>>   patch to
>>>>>>>>       rename all
>>>>>>>>>        file
>>>>>>>>>>         to
>>>>>>>>>>>          .md
>>>>>>>>>>>>           within our
>>>>>>>>>>>>>>>            source
>>>>>>>>>>>>>>>>>             tree:
>>>>>>>>>>>
>> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>>>>>>             ... we
>> have *41*
>>>>>   md's within
>>>>>>>     the
>>>>>>>>       source
>>>>>>>>>        tree
>>>>>>>>>>         and
>>>>>>>>>>>>           that's the
>>>>>>>>>>>>>>>            place
>>>>>>>>>>>>>>>>            where
>>>>>>>>>>>>>>>>>             people
>> look for
>>>>>   documentation
>>>>>>>     first.
>>>>>>>>       =>
>>>>>>>>>>         simple to
>>>>>>>>>>>>           manage
>>>>>>>>>>>>>>>>>             Would be
>> user friendly
>>>>>   to have
>>>>>>>     all of
>>>>>>>>       this
>>>>>>>>>>         online
>>>>>>>>>>>          with
>>>>>>>>>>>>           each release
>>>>>>>>>>>>>>>>>             with the
>> URL layout
>>>>>   mentioned
>>>>>>>     above.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             just
>> received the
>>>>>   buildboot...
>>>>>>>>>>>>>>>>>             Do you
>> have kind of a
>>>>>   preview of
>>>>>>>     your
>>>>>>>>>        prototype?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             all the
>> best!
>>>>>>>>>>>>>>>>>             -roger
>>>>>>>>>>>>>>>>>             ;-r
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             Quoting
>> Jake Farrell
>>>>>>>>>>         <jf...@apache.org>:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>              No
>> objections from
>>>>>   me
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>> -Jake
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>              On
>> Mon, Mar 17,
>>>>>   2014 at
>>>>>>>     12:04 PM,
>>>>>>>>       Joe
>>>>>>>>>>         Schaefer
>>>>>>>>>>>>>>>>>
>>>>>>>     <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>> Any objections
>>>>>   to me
>>>>>>>     making a
>>>>>>>>       copy
>>>>>>>>>        of
>>>>>>>>>>         the
>>>>>>>>>>>          site
>>>>>>>>>>>>>>>>>>>
>> tree alongside
>>>>>   it called
>>>>>>>
>>>>>>>>>        cms-site?
>>>>>>>>>>         I'd
>>>>>>>>>>>          like
>>>>>>>>>>>>           to
>>>>>>>>>>>>>>>>>>>
>> get cracking
>>>>>   on knocking
>>>>>>>     up
>>>>>>>>       the
>>>>>>>>>>         supporting
>>>>>>>>>>>          perl
>>>>>>>>>>>>>>>>>>>
>> for this so we
>>>>>   can
>>>>>>>     continue
>>>>>>>>       to
>>>>>>>>>>         brainstorm...
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    On Sunday,
>>>>>   March 16,
>>>>>>>     2014
>>>>>>>>       1:53
>>>>>>>>>        PM,
>>>>>>>>>>         Joe
>>>>>>>>>>>          Schaefer
>>>>>>>>>>>>>>>>>
>>>>>   <jo...@yahoo.com>
>>>>>>>>>>>>>>>>>>>
>> wrote:
>>>>>>>>>>>>>>>>>>>>>
>>        On
>>>>>   Sunday, March
>>>>>>>     16,
>>>>>>>>       2014
>>>>>>>>>        1:40
>>>>>>>>>>         PM,
>>>>>>>>>>>          Jake
>>>>>>>>>>>>           Farrell
>>>>>>>>>>>>>>>>>
>>>>>   <jf...@apache.org>
>>>>>>>>>>>>>>>>>>>>
>>    wrote:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    Hey Joe
>>>>>>>>>>>>>>>>>>>>>
>>        Thanks
>>>>>   for
>>>>>>>     reaching
>>>>>>>>       out, we
>>>>>>>>>        chose
>>>>>>>>>>         to
>>>>>>>>>>>          go
>>>>>>>>>>>>           with a site
>>>>>>>>>>>>>>>>            generator
>>>>>>>>>>>>>>>>>             over the
>>>>>>>>>>>>>>>>>>>>>
>>        Apache
>>>>>   CMS due to
>>>>>>>     it
>>>>>>>>>        initially
>>>>>>>>>>         not
>>>>>>>>>>>          meeting
>>>>>>>>>>>>           all of
>>>>>>>>>>>>>>>            our
>>>>>>>>>>>>>>>>            needs.
>>>>>>>>>>>>>>>>>             Our
>> current
>>>>>>>>>>>>>>>>>>>>>
>>        needs
>>>>>   for the site
>>>>>>>     are
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        -
>>>>>   Markdown to html
>>>>>>>
>>>>>>>>>        conversion
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    That
>>>>>   one's easy-
>>>>>>>     its
>>>>>>>>       the
>>>>>>>>>        default
>>>>>>>>>>         for
>>>>>>>>>>>          the
>>>>>>>>>>>>           cms.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        - Global
>>>>>>>>       variables/config
>>>>>>>>>        usable
>>>>>>>>>>>          throughout
>>>>>>>>>>>>           in a
>>>>>>>>>>>>>>>            template
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>             based
>> layout
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    Easy too-
>>>>>   just create
>>>>>>>     a
>>>>>>>>       perl
>>>>>>>>>        hash
>>>>>>>>>>>          somewhere and
>>>>>>>>>>>>           make it
>>>>>>>>>>>>>>>>            available
>>>>>>>>>>>>>>>>>             to
>>>>>>>>>>>>>>>>>>>
>> your views.
>>>>>>>>>>>>>>>>>>>>
>>    Code your
>>>>>   views to
>>>>>>>     pass
>>>>>>>>       that
>>>>>>>>>        hash
>>>>>>>>>>         along to
>>>>>>>>>>>          your
>>>>>>>>>>>>>>>            templates
>>>>>>>>>>>>>>>>            and you
>>>>>>>>>>>>>>>>>             are
>>>>>>>>>>>>>>>>>>>
>> all set.
>>>>>>>>>>>>>>>>>>>>
>>    Note if your
>>>>>   hash
>>>>>>>     contains
>>>>>>>>>        objects
>>>>>>>>>>         you can
>>>>>>>>>>>          make
>>>>>>>>>>>>           method
>>>>>>>>>>>>>>>            calls
>>>>>>>>>>>>>>>>            on
>>>>>>>>>>>>>>>>>             them in
>>>>>>>>>>>>>>>>>>>
>> your
>>>>>>>>>>>>>>>>>>>>
>>    templates.
>>>>>   Note:
>>>>>>>     while I
>>>>>>>>>>         wouldn't
>>>>>>>>>>>>           recommend this in
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            general,
>>>>>>>>>>>>>>>>>             for
>> smaller
>>>>>>>>>>>>>>>>>>>>
>>    projects
>>>>>   like thrift
>>>>>>>     that
>>>>>>>>       prefer
>>>>>>>>>
>>>>>>>>>>>          convenience
>>>>>>>>>>>>           over
>>>>>>>>>>>>>>>            separation
>>>>>>>>>>>>>>>>            of
>>>>>>>>>>>>>>>>>             concerns
>>>>>>>>>>>>>>>>>>>
>> you can
>>>>>>>>>>>>>>>>>>>>
>>    have the
>>>>>   django
>>>>>>>     template
>>>>>>>>       engine
>>>>>>>>>        do a
>>>>>>>>>>         pass
>>>>>>>>>>>          over
>>>>>>>>>>>>           your
>>>>>>>>>>>>>>>            markdown
>>>>>>>>>>>>>>>>>             before
>>>>>>>>>>>>>>>>>>>
>> passing it
>>>>>>>>>>>>>>>>>>>>
>>    along to
>>>>>   your actual
>>>>>>>>       template
>>>>>>>>>        page,
>>>>>>>>>>         just
>>>>>>>>>>>          as is
>>>>>>>>>>>>           seemingly
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            common to
>>>>>>>>>>>>>>>>>             other
>>>>>>>>>>>>>>>>>>>
>> popular
>>>>>>>>>>>>>>>>>>>>
>>    site
>>>>>   generation
>>>>>>>     software.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        - Syntax
>>>>>>>     highlighting
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    Comes with
>>>>>>>     python's
>>>>>>>>       markdown
>>>>>>>>>
>>>>>>>>>>         support,
>>>>>>>>>>>          but
>>>>>>>>>>>>           some
>>>>>>>>>>>>>>>            people
>>>>>>>>>>>>>>>>            prefer
>>>>>>>>>>>>>>>>>             the look
>> of
>>>>>>>>>>>>>>>>>>>>
>>    javascript
>>>>>>>     highlighters.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        - Easily
>>>>>   include
>>>>>>>     code
>>>>>>>>>        snippets
>>>>>>>>>>         from
>>>>>>>>>>>          our
>>>>>>>>>>>>           source code
>>>>>>>>>>>>>>>            base
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    Statically I
>>>>>   hope.  No
>>>>>>>     idea
>>>>>>>>       how
>>>>>>>>>        to
>>>>>>>>>>         pull
>>>>>>>>>>>>           snippets out of
>>>>>>>>>>>>>>>            your
>>>>>>>>>>>>>>>>            git
>>>>>>>>>>>>>>>>>             repo
>>>>>>>>>>>>>>>>>>>
>> via the
>>>>>>>>>>>>>>>>>>>>
>>    cms.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        -
>>>>>   Ability to
>>>>>>>     locally
>>>>>>>>       test
>>>>>>>>>        before
>>>>>>>>>>>          committing
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>    Belt and
>>>>>   suspenders
>>>>>>>     with
>>>>>>>>       the
>>>>>>>>>        cms- you
>>>>>>>>>>         can
>>>>>>>>>>>          build
>>>>>>>>>>>>           your
>>>>>>>>>>>>>>>            changes
>>>>>>>>>>>>>>>>>             before
>>>>>>>>>>>>>>>>>>>
>> committing
>>>>>>>>>>>>>>>>>>>>
>>    with the
>>>>>   build
>>>>>>>     scripts,
>>>>>>>>       browse
>>>>>>>>>        your
>>>>>>>>>>>          changes
>>>>>>>>>>>>           before
>>>>>>>>>>>>>>>            committing
>>>>>>>>>>>>>>>>            via
>>>>>>>>>>>>>>>>>             the cms
>>>>>>>>>>>>>>>>>>>>
>>    webgui, or
>>>>>   simply
>>>>>>>     commit
>>>>>>>>       your
>>>>>>>>>        changes
>>>>>>>>>>         and
>>>>>>>>>>>          view
>>>>>>>>>>>>           the
>>>>>>>>>>>>>>>            staging
>>>>>>>>>>>>>>>>            site
>>>>>>>>>>>>>>>>>             prior to
>>>>>>>>>>>>>>>>>>>
>> live
>>>>>>>>>>>>>>>>>>>>
>>    publication
>>>>>   (which is
>>>>>>>     a
>>>>>>>>       separate
>>>>>>>>>
>>>>>>>>>>         step).
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        -Jake
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>        On Sun,
>>>>>   Mar 16,
>>>>>>>     2014 at
>>>>>>>>
>>>>>>>>>        12:44 PM,
>>>>>>>>>>         Joe
>>>>>>>>>>>>           Schaefer
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>        <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>
>>          As
>>>>>   it so
>>>>>>>     happens I
>>>>>>>>       am
>>>>>>>>>>         interested
>>>>>>>>>>>          in
>>>>>>>>>>>>           working on
>>>>>>>>>>>>>>>>            supporting
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   thrift's
>>>>>>>     use
>>>>>>>>       case as
>>>>>>>>>        a
>>>>>>>>>>>          potential
>>>>>>>>>>>>           user of
>>>>>>>>>>>>>>>            the
>>>>>>>>>>>>>>>>            Apache
>>>>>>>>>>>>>>>>>             CMS.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   While the CMS
>>>>>>>     works
>>>>>>>>       well
>>>>>>>>>        for
>>>>>>>>>>>          massive
>>>>>>>>>>>>           projects
>>>>>>>>>>>>>>>            there
>>>>>>>>>>>>>>>>            are
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   things it
>>>>>>>     could do
>>>>>>>>>        better at
>>>>>>>>>>>          supporting
>>>>>>>>>>>>           for
>>>>>>>>>>>>>>>            more
>>>>>>>>>>>>>>>>            moderate
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   sized sites
>>>>>>>     like
>>>>>>>>>>         thrift's.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   I'd
>>>>>>>     therefore
>>>>>>>>       like
>>>>>>>>>        to
>>>>>>>>>>         engage
>>>>>>>>>>>          you
>>>>>>>>>>>>           folks in a
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>> brainstorming session
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   about what
>>>>>>>     sorts of
>>>>>>>>
>>>>>>>>>        features
>>>>>>>>>>         you
>>>>>>>>>>>          want
>>>>>>>>>>>>           for your
>>>>>>>>>>>>>>>            site
>>>>>>>>>>>>>>>>            and
>>>>>>>>>>>>>>>>>             to find
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   simple ways of
>>>>>>>
>>>>>>>>>        supporting
>>>>>>>>>>         those
>>>>>>>>>>>>           features for
>>>>>>>>>>>>>>>            you.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>>>   Thanks.
>>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
The CMS codebase as well as the thrift build system
already supports it Roger, someone just needs to create
the files in the content tree that point at the source
files in the git repo.  If you want to script this process
in scripting language du jour, go for it, but I cannot
justify spending contractor time doing this work for the
community's behalf as it is unlikely to be needed elsewhere.
I would think you only need the script to run when some
path to a README.md file changes in the thrift.git tree,
so it doesn't need to be incorporated into each site build.



> On Sunday, March 23, 2014 9:15 AM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> > Hi
> 
> On 23.03.2014 03:19, Jake Farrell wrote:
>>  Hey Joe
>>  Reviewing the staging site it looks like its almost 99% there other than
>>  some styling within the code snippets. I'm good if we want to cut over 
> to
>>  using this and then work on the additional features that had been mentioned
>>  afterwords. Any objections to cutting over?
> I would really like to see this automatic README.md includes from source 
> tree, to have a real additional feature beside of what we already have 
> today.
> 
> I'm absolutely with you.
> Apache projects shall use other Apache projects whenever possible.
> 
>>  On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer 
> <jo...@yahoo.com>wrote:
>> 
>>>  May I suggest a script that creates files in content/
>>>  containing a single line
>>> 
>>>  [snippet:path=...]
> this sounds like a plan
> 
>>> 
>>>  (with no 'lang' argument) that lets the CMS pull raw content 
> from
>>>  thrift.git
>>>  and add it directly to the built pages.  That way you only need to run 
> the
>>>  script that generates these files when a path changes in your 
> thrift.git
>>>  repo.
> What I had in mind is a automatic search of README.md files across the 
> source tree and generate the site with these automatically.
> Kind of a central controller that maps all the URL's.
> no additional work when a new README.md file is added.
> however, a script can do this as interim soultion.
>>> 
>>>  You can commit directly to the cms svn tree or via the webgui which 
> does
>>>  the same thing.
> Great!
> 
> What about local preview when doing perl modifications?
> 
> -roger
> 
> 
>>> 
>>> 
>>>>  On Saturday, March 22, 2014 4:20 PM, Roger Meier <
>>>  roger@bufferoverflow.ch> wrote:
>>>>>  I still see some issues and still miss to feature mentioned.
>>>>  Now we have nonoc.ws and I'm able to hack this a bit.
>>>> 
>>>>  We had no real big issue, the thing I missed was the code snippet 
> thing
>>>>  and this is in on nanoc.ws and now also on Apache CMS.
>>>> 
>>>>  The thing we really need is the documentation located within source 
> code
>>>>  integrated on the web site.
>>>> 
>>>>  most hosting platforms do render README.md and that's why lot 
> of doc
>>>>  will stay within the code and we should benefit as well by 
> rendering
>>>>  that to the web site and enhance the documentation very easily.
>>>> 
>>>>  I would like to render the 41 README.md files to with the following
>>>>  pattern, that's a must have before switching to another CMS.
>>>> 
>>>>  test/README.md => thrift.apache.org/test
>>>>  test/STATUS.md => thrift.apache.org/test/status
>>>>  test/keys/README.md => thrift.apache.org/test/keys
>>>>  lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>>>  lib/<lang>/test/README.md => 
> thrift.apache.org/lib/<lang>/test
>>>>  lib/<lang>/examples/README.md =>
>>>>  thrift.apache.org/lib/<lang>/examples
>>>>  compiler/cpp/README.md => thrift.apache.org/compiler
>>>>  debian/README.md => thrift.apache.org/debian
>>>>  contrib/<topic>/README.md => 
> thrift.apache.org/<topic>
>>>> 
>>>>  CPP tutorial seems to be broken on staging.
>>>> 
>>>>  Do you commit to 
> https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>>>  or is it web gui only?
>>>> 
>>>>  How do you generate the site on your local machine?
>>>> 
>>>> 
>>>>  Should I reactivate my perl or do we stay with ruby?
>>>>  Committers and contributors, what do you think?
>>>> 
>>>> 
>>>>  all the best
>>>>  -roger
>>>> 
>>>> 
>>>>  On 22.03.2014 18:07, Joe Schaefer wrote:
>>>>> 
>>>>> 
>>>>>    Ok I've now done the basic necessities involved in 
> porting
>>>>>    the site over.  Links have been adjusted, templates ported, 
> files
>>>  created,
>>>>>    snippet feature activated.  At this point I'm happy to 
> declare
>>>>>    victory and migrate the thrift live site over, as anything 
> broken that
>>>>>    still remains can be dealt with on a per-page basis with the
>>>  bookmarklet.
>>>>> 
>>>>> 
>>>>> 
>>>>>>    On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
>>>>  <jo...@yahoo.com> wrote:
>>>>>>>    Modulo some bizarre content truncation out of 
> git-wip-us.apache.org
>>>>>>    the snippet support is now active. At this point I think 
> all the build
>>>>>>    support you need in this project to support every type of
>>>  brainstorming
>>>>>>    activity we've discussed is now there, so it's 
> just up to you
>>>>  guys to
>>>>>>    now familiarize yourselves with the build technology and 
> how to apply
>>>>>>    it to your needs.  The site builds with snippet support 
> are running
>>>>  around
>>>>>>    10 seconds, which is to be expected with the network 
> interactions
>>>>  involved.
>>>>>> 
>>>>>>    I'm always willing to answer any questions that come 
> up in the
>>>>  interim,
>>>>>>    but I wish you guys the best of luck in the remaining 
> porting work to
>>>>  be done.
>>>>>>    All I see really are some links that need to have the 
> trailing slashes
>>>>  removed
>>>>>>    and whatever <%= %> template constructs that remain 
> need to be
>>>>  ported to
>>>>>>    django.  So it should be smooth sailing, but as I said if 
> you hit any
>>>>  snags
>>>>>>    holler.  I'd really like to see the live site tech 
> switched over to
>>>>  the cms
>>>>>>    stuff before Apachecon ends in early April, hint hint.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>      On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>>>>>>    <jo...@yahoo.com> wrote:
>>>>>>>      > While I don't yet know the url magic to 
> support branches
>>>>  and tags
>>>>>>    in git,
>>>>>>>      I can say that the snippet support is ready to play 
> with.  I
>>>>  suggest just
>>>>>>>      focusing on the /index.md page first to see how it 
> works in
>>>>  practice
>>>>>>    because
>>>>>>>      once it's fully enabled the build will break 
> until all the
>>>>  snippet
>>>>>>    sources
>>>>>>>      have been altered to conform with the new style.
>>>>>>> 
>>>>>>>      To turn it on for index.md testing, there are a 
> couple of things
>>>>  that need
>>>>>>    to
>>>>>>>      happen. First the [snippet:...] marker should be 
> edited to be
>>>>>>    [XXXsnippet:...]
>>>>>>>      to enable testing without breaking the build.  
> Second each marker
>>>>  contains
>>>>>>    a
>>>>>>>      "token" argument instead of line numbers 
> for more
>>>>  stability under
>>>>>> 
>>>>>>>      edits to the source code.  The token argument is an 
> arbitrary
>>>>  string that
>>>>>>    is
>>>>>>>      used to denote the boundaries of the snippet within 
> the source
>>>>  code.
>>>>>>>       ASF::Value::Snippet will pull out the lines from 
> the source file
>>>>  between
>>>>>>    the
>>>>>>>      lines that contain the token argument and format 
> them as a code
>>>>  snippet
>>>>>>    embedded
>>>>>>>      into markdown. To get started I'll copy over 
> the code
>>>>  highlighting css
>>>>>>    from
>>>>>>>      www.apache.org but note that this is all based on 
> python pygments
>>>>  and there
>>>>>>    are
>>>>>>>      a variety of online css files to choose from if 
> this one is not
>>>>  to the
>>>>>>>      group's liking.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>       On Wednesday, March 19, 2014 4:16 PM, Joe 
> Schaefer
>>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>>       > Sorry I need to clarify with an example: 
> look at
>>>>>>>>       http://thrift.staging.apache.org/tutorial/ 
> versus
>>>>>>>>       
> http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>>       former is generated from 
> content/tutorial/index.html
>>>>>>>>       and the latter from content/tutorial.md.  The 
> latter file
>>>>>>>>       needs to be removed from the tree now that 
> it's content
>>>>>>>>       has been ported to 
> content/tutorial/index.html.  This
>>>>>>>>       uses django template inheritance to maintain 
> simplicity.
>>>>>>>> 
>>>>>>>>       Other directories that follow a similar 
> pattern should
>>>>>>>>       also be ported in the same fashion.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>        On Wednesday, March 19, 2014 9:46 AM, Joe 
> Schaefer
>>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>>        > If someone's looking for a way 
> to help with
>>>>  the porting
>>>>>>>>>        effort, consider tackling the creation of 
> an index.html
>>>>>>>>>        page in each subdir of the content/ tree 
> (other than
>>>>  the
>>>>>>>>>        base which has an /index.md).  The 
> contents of the file
>>>>>>>>>        should be just
>>>>>>>>> 
>>>>>>>>>        {% include 'default' %}
>>>>>>>>> 
>>>>>>>>>        (see the docs dir for an example page 
> that can be
>>>>  copied)
>>>>>>>>>        and the build system will take care of 
> generating the
>>>>  page
>>>>>>>>>        in a consistent fashion with the rest of 
> the site.
>>>>  Once
>>>>>>>>>        that is done there are a lot of pages 
> that function
>>>>  like
>>>>>>>>>        index pages but are written in markdown 
> that can be
>>>>  deleted,
>>>>>>>>>        like docs.md and its ilk.  Nanoc 
> transforms that file
>>>>  into
>>>>>>>>>        /docs/index.html but that's kinda 
> crufty and not
>>>>  supported
>>>>>>>>>        by the CMS, which only lets you alter 
> file extensions
>>>>  not paths.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>         On Wednesday, March 19, 2014 8:54 
> AM, Joe Schaefer
>>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>>         > I just pencilled in snippet 
> preprocessing
>>>>  support into
>>>>>>>>>>         the thrift builds.  Once Jake and I 
> have settled
>>>>  on the
>>>>>>>>>>         feature set of ASF::Value::Snippet, 
> and we have
>>>>  ported
>>>>>>>>>>         the snippet calling text within the 
> markdown pages
>>>>>>>>>>         to the new format, things will just 
> work (knock on
>>>>  wood).
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>          On Wednesday, March 19, 2014 
> 6:48 AM, Joseph
>>>>  Schaefer
>>>>>>>>>>         <jo...@yahoo.com> 
> wrote:
>>>>>>>>>>>          > Sure I understand that 
> need.  If
>>>>  there's a way
>>>>>>    of
>>>>>>>>       pulling the
>>>>>>>>> 
>>>>>>>>>>         document
>>>>>>>>>>>          sources directly from the web I 
> can parse the
>>>>  content
>>>>>>    to
>>>>>>>      look for
>>>>>>>> 
>>>>>>>>>        snippet
>>>>>>>>>>>          markers and make those 
> available to the
>>>>  template
>>>>>>    system.
>>>>>>>>       That's
>>>>>>>>>        pretty
>>>>>>>>>>         much
>>>>>>>>>>>          how www.apache.org is 
> generated.
>>>>>>>>>>> 
>>>>>>>>>>>          Sent from my iPhone
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>           On Mar 19, 2014, at 5:28 
> AM, Henrique
>>>>  Mendonça
>>>>>>>>>>         <he...@apache.org>
>>>>>>>>>>>          wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>           Hi Joe,
>>>>>>>>>>>> 
>>>>>>>>>>>>           Thanks for your effort. I 
> just wanted to
>>>>  add that
>>>>>>    the
>>>>>>>      code
>>>>>>>>>        snippets
>>>>>>>>>>         are a
>>>>>>>>>>>>           crucial feature for this 
> project, which
>>>>  has way
>>>>>>    more
>>>>>>>      target
>>>>>>>>>        languages
>>>>>>>>>>         than
>>>>>>>>>>>>           active contributors. In 
> our case,
>>>>  reducing manual
>>>>>>>>       maintenance
>>>>>>>>>        costs is
>>>>>>>>>>         much
>>>>>>>>>>>>           more important than the 
> total site build
>>>>  time.
>>>>>>    Perhaps
>>>>>>>      we
>>>>>>>>       can
>>>>>>>>>        also
>>>>>>>>>>         solve
>>>>>>>>>>>>           this in the CMS, though.
>>>>>>>>>>>> 
>>>>>>>>>>>>           - Henrique
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>           On 19 March 2014 
> 03:17, Joe Schaefer
>>>>>>>>>>         <jo...@yahoo.com>
>>>>>>>>>>>          wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>           A couple more thoughts 
> regarding the
>>>>>>    background on
>>>>>>>      the
>>>>>>>>       CMS...
>>>>>>>>>>>>>           the bulk of the focus 
> of the CMS up
>>>>  until now
>>>>>>    has
>>>>>>>      been
>>>>>>>>       to
>>>>>>>>>>>>>           support really big 
> sites like maven
>>>>  and
>>>>>>    openoffice,
>>>>>>>      both
>>>>>>>>       of
>>>>>>>>>>>>>           which have websites 
> well over 5GB
>>>>  worth of
>>>>>>    text
>>>>>>>      files.
>>>>>>>>       The
>>>>>>>>>>>>>           build system was 
> hollowed out and
>>>>  revamped to
>>>>>>>      support
>>>>>>>>>        external
>>>>>>>>>>>>>           builds in other 
> programming
>>>>  languages, as well
>>>>>>    as
>>>>>>>>       scaling up
>>>>>>>>>>>>>           the perl builds to 
> provide about 8
>>>>  child
>>>>>>    processes
>>>>>>>      that
>>>>>>>>       build
>>>>>>>>>>>>>           the site in parallel 
> by default.
>>>>  Full site
>>>>>>    build
>>>>>>>      times
>>>>>>>>       for
>>>>>>>>>>>>>           openoffice went from 
> over 30 minutes
>>>>  to
>>>>>>    between 5
>>>>>>>      to 10
>>>>>>>>>        minutes
>>>>>>>>>>>>>           depending on disk 
> activity, which
>>>>  made
>>>>>>>      experimentation
>>>>>>>>       with
>>>>>>>>>>         site-wide
>>>>>>>>>>>>>           changes feasible on a 
> reasonable
>>>>  timeframe.
>>>>>>    At
>>>>>>>      first
>>>>>>>>       the
>>>>>>>>>        project
>>>>>>>>>>         was
>>>>>>>>>>>          in
>>>>>>>>>>>>>           the habit of running 
> the builds
>>>>  locally before
>>>>>> 
>>>>>>>      checking
>>>>>>>>       in
>>>>>>>>>        their
>>>>>>>>>>>          changes
>>>>>>>>>>>>>           because the delay in 
> feedback
>>>>  post-commit was
>>>>>>>>       unreasonable,
>>>>>>>>>        but
>>>>>>>>>>         with
>>>>>>>>>>>          smart
>>>>>>>>>>>>>           use of SSI the were 
> able to cut down
>>>>  on the
>>>>>>    number
>>>>>>>      of
>>>>>>>>       changes
>>>>>>>>>        that
>>>>>>>>>> 
>>>>>>>>>>>          required
>>>>>>>>>>>>>           full site builds and 
> hence no longer
>>>>  bother
>>>>>>    with
>>>>>>>      the
>>>>>>>>       whole
>>>>>>>>>>         pre-build
>>>>>>>>>>>          mumbo
>>>>>>>>>>>>>           jumbo before checking 
> in changes.
>>>>  The CMS is
>>>>>>>      designed
>>>>>>>>       to
>>>>>>>>>        only
>>>>>>>>>>         build
>>>>>>>>>>>          pages
>>>>>>>>>>>>>           that were altered, and 
> if you just
>>>>  edit a page
>>>>>>    or
>>>>>>>      two
>>>>>>>>       only
>>>>>>>>>        those
>>>>>>>>>>         pages
>>>>>>>>>>>          and
>>>>>>>>>>>>>           the pages that depend 
> on them will
>>>>  be built.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>           Now that I've 
> turned my
>>>>  attention to
>>>>>>    thrift,
>>>>>>>      there
>>>>>>>>       are
>>>>>>>>>        several
>>>>>>>>>> 
>>>>>>>>>>>          aspects
>>>>>>>>>>>>>           that are better off 
> being retuned
>>>>  based on the
>>>>>> 
>>>>>>>      modest
>>>>>>>>       size of
>>>>>>>>>        the
>>>>>>>>>>         site.
>>>>>>>>>>>>>           First of all you have 
> a sitemap url
>>>>  that lists
>>>>>>    all
>>>>>>>      of
>>>>>>>>       your
>>>>>>>>>>>          markdown-based
>>>>>>>>>>>>>           pages, which would be 
> a nonstarter
>>>>  for a site
>>>>>>    like
>>>>>>>>>        openoffice.
>>>>>>>>>>         The
>>>>>>>>>>>>>           implications of the 
> sitemap url are
>>>>  that every
>>>>>>    page
>>>>>>> 
>>>>>>>>       needs to
>>>>>>>>>        be
>>>>>>>>>>         built
>>>>>>>>>>>          in
>>>>>>>>>>>>>           memory just to 
> generate that page,
>>>>  which leads
>>>>>>    to a
>>>>>>>      lot
>>>>>>>>       of
>>>>>>>>>>         redundancy
>>>>>>>>>>>          in a
>>>>>>>>>>>>>           build system designed 
> to run as
>>>>  forked child
>>>>>>>      processes.
>>>>>>>>       We
>>>>>>>>>        can do
>>>>>>>>>> 
>>>>>>>>>>>          better...
>>>>>>>>>>>>> 
>>>>>>>>>>>>>           I've done two 
> things to make
>>>>  this work
>>>>>>    well-
>>>>>>>      first I
>>>>>>>>       made
>>>>>>>>>        the
>>>>>>>>>>>          number of
>>>>>>>>>>>>>           child processes 
> "aka
>>>>  runners"
>>>>>>    tunable on
>>>>>>>      a
>>>>>>>>>        per-project
>>>>>>>>>>         basis,
>>>>>>>>>>>          and since the
>>>>>>>>>>>>>           sitemap is going to 
> build every page
>>>>  anyway as
>>>>>>    the
>>>>>>>>       slowest
>>>>>>>>>        page to
>>>>>>>>>> 
>>>>>>>>>>>          build, I
>>>>>>>>>>>>>           memoized the main view 
> that builds
>>>>  the
>>>>>>    markdown
>>>>>>>      pages
>>>>>>>>       for
>>>>>>>>>        thrift.
>>>>>>>>>>         The
>>>>>>>>>>>          best
>>>>>>>>>>>>>           results are when 
> there's only
>>>>  one runner
>>>>>>    so we
>>>>>>>      get
>>>>>>>>       the
>>>>>>>>>        full
>>>>>>>>>>         benefit
>>>>>>>>>>>          of
>>>>>>>>>>>>>           memoization: typical 
> site build
>>>>  times are
>>>>>>>      consistently
>>>>>>>>       under
>>>>>>>>>        2
>>>>>>>>>>         seconds
>>>>>>>>>>>          now.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>           You'll appreciate 
> why I am such
>>>>  a
>>>>>>    performance
>>>>>>>>       stickler
>>>>>>>>>        for the
>>>>>>>>>>         CMS
>>>>>>>>>>>          when
>>>>>>>>>>>>>           you start using the 
> bookmarklet,
>>>>  since builds
>>>>>>    are
>>>>>>>      the
>>>>>>>>       only
>>>>>>>>>>         asynchronous
>>>>>>>>>>>>>           part of the process 
> from making a
>>>>  change to a
>>>>>>    page
>>>>>>>      and
>>>>>>>>>        publishing
>>>>>>>>>>         the
>>>>>>>>>>>>>           results.  Ideally when 
> the system is
>>>>  working
>>>>>>    well
>>>>>>>      the
>>>>>>>>       builds
>>>>>>>>>>         happen
>>>>>>>>>>>          before
>>>>>>>>>>>>>           you have time to go 
> looking for
>>>>  them, but you
>>>>>>    do
>>>>>>>      need to
>>>>>>>>       be
>>>>>>>>>>         mindful of
>>>>>>>>>>>          not
>>>>>>>>>>>>>           publishing before the 
> built pages
>>>>  have been
>>>>>>>      committed
>>>>>>>>       back to
>>>>>>>>>        svn
>>>>>>>>>>         by
>>>>>>>>>>>>>           buildbot.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           On Monday, March 
> 17, 2014 11:59
>>>>  PM, Joe
>>>>>>>      Schaefer
>>>>>>>>>>>          <jo...@yahoo.com>
>>>>>>>>>>>>>           wrote:
>>>>>>>>>>>>>>>           Ok there's 
> enough of an
>>>>  idea about
>>>>>>    how
>>>>>>>      to
>>>>>>>>       port
>>>>>>>>>        the
>>>>>>>>>>         rest of
>>>>>>>>>>>          the site's
>>>>>>>>>>>>>>           pages over based 
> on the porting
>>>>  work
>>>>>>    I've
>>>>>>>>       already
>>>>>>>>>        done
>>>>>>>>>>         that
>>>>>>>>>>>          it's time
>>>>>>>>>>>>>>           for me to step 
> back and let you
>>>>  guys catch
>>>>>>    up.
>>>>>>> 
>>>>>>>>       Basically
>>>>>>>>>        the
>>>>>>>>>>         idea
>>>>>>>>>>>          is
>>>>>>>>>>>>>           that while
>>>>>>>>>>>>>>           there is 
> templating support in
>>>>  the
>>>>>>    markdown
>>>>>>>      sources,
>>>>>>>> 
>>>>>>>>>        it's
>>>>>>>>>>>          fairly limited
>>>>>>>>>>>>>>           compared to what 
> nanoc offers,
>>>>  but instead
>>>>>>    of
>>>>>>>>       writing a
>>>>>>>>>        lot of
>>>>>>>>>> 
>>>>>>>>>>>          complex
>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>           code into your 
> sources, with the
>>>>  cms you
>>>>>>    just
>>>>>>>      add
>>>>>>>>       code to
>>>>>>>>> 
>>>>>>>>>>>          lib/view.pmand/or
>>>>>>>>>>>>>>           lib/path.pm to 
> keep the document
>>>>  sources
>>>>>>    simple
>>>>>>>      and
>>>>>>>>       just
>>>>>>>>>        add
>>>>>>>>>>         more
>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>           variables.  What I 
> just finished
>>>>  in
>>>>>>    lib/view.pm
>>>>>>>      and
>>>>>>>>>>         lib/path.pm is
>>>>>>>>>>>>>           directory
>>>>>>>>>>>>>>           listing support 
> for /docs.html
>>>>  but it can
>>>>>>    be
>>>>>>>      carried
>>>>>>>>       over
>>>>>>>>>        to
>>>>>>>>>>>          similar
>>>>>>>>>>>>>           pages.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           On Monday, 
> March 17, 2014
>>>>  9:16 PM, Joe
>>>>>> 
>>>>>>>      Schaefer
>>>>>>>>>>>>>>           
> <jo...@yahoo.com>
>>>>  wrote:
>>>>>>>>>>>>>>>>           
> Interesting ideas,
>>>>  thanks.  FWIW I
>>>>>> 
>>>>>>>      think
>>>>>>>>       that
>>>>>>>>>        sort
>>>>>>>>>>>>>>>           of thing might 
> be best
>>>>  supported as a
>>>>>>>      periodic
>>>>>>>>       cron
>>>>>>>>>>>>>>>           if we can 
> write something
>>>>  stable
>>>>>>    enough,
>>>>>>>      because
>>>>>>>> 
>>>>>>>>>        pulling
>>>>>>>>>>>>>>>           stuff out of 
> the git repo is
>>>>  something
>>>>>>    the
>>>>>>>      CMS
>>>>>>>>>        isn't
>>>>>>>>>>         going
>>>>>>>>>>>>>>>           to do all that 
> well being an
>>>>  svn
>>>>>>>      application.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           The CMS build 
> results are
>>>>  available at
>>>>>>>>>>>>>           
> http://thrift.staging.apache.org/
>>>>>>>>>>>>>>>           feel free to 
> play with the
>>>>  sources in
>>>>>>>>>>>         
> repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>>>>>           It's very 
> fast, probably
>>>>  an order
>>>>>>    of
>>>>>>>>       magnitude
>>>>>>>>>        faster
>>>>>>>>>>         than
>>>>>>>>>>>          your current
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           tech.
>>>>>>>>>>>>>>>           Whole site 
> builds in two
>>>>  seconds;
>>>>>>    fractions
>>>>>>>      of a
>>>>>>>> 
>>>>>>>>>        second
>>>>>>>>>>         for
>>>>>>>>>>>          typical
>>>>>>>>>>>>>           mods to
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           content/ 
> markdown pages.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           The CMS 
> bookmarklet is
>>>>  compatible with
>>>>>>    the
>>>>>>>>       staging
>>>>>>>>>        site
>>>>>>>>>>         FWIW.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            On 
> Monday, March 17,
>>>>  2014 7:40
>>>>>>    PM,
>>>>>>>      Roger
>>>>>>>>       Meier
>>>>>>>>>>>>>>> 
>>>>  <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>>>>>           Hi Joe 
> & Co
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            thanks 
> for this test
>>>>  run with
>>>>>>    Apache
>>>>>>>      CMS!
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            What I 
> would love to
>>>>  see is this:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            Source 
> file: => Web
>>>>  Site URL:
>>>>>>>>>>>>>>>>           
> test/README.md =>
>>>>>>>      thrift.apache.org/test
>>>>>>>>>>>>>>>>           
> test/STATUS.md =>
>>>>>>>>>        thrift.apache.org/test/status
>>>>>>>>>>>>>>>>           
> test/keys/README.md
>>>>  =>
>>>>>>>>>        thrift.apache.org/test/keys
>>>>>>>>>>>>>>>> 
>>>>  lib/<lang>/README.md =>
>>>>>>>>>>>         
> thrift.apache.org/lib/<lang>
>>>>>>>>>>>>>>>> 
>>>>  lib/<lang>/test/README.md
>>>>>>    =>
>>>>>>>>>>>>>>> 
>>>>>>    thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>>>>>> 
>>>>>>    lib/<lang>/examples/README.md
>>>>>>>      =>
>>>>>>>>>>>>>>>> 
>>>>>>>      thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>>>>>>           
> compiler/cpp/README.md
>>>>  =>
>>>>>>>>>>         thrift.apache.org/compiler
>>>>>>>>>>>>>>>>           
> debian/README.md =>
>>>>>>>>       thrift.apache.org/debian
>>>>>>>>>>>>>>>> 
>>>>  contrib/<topic>/README.md
>>>>>>    =>
>>>>>>>>>>>          thrift.apache.org/<topic>
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            just made 
> the following
>>>>  patch to
>>>>>>>      rename all
>>>>>>>>       file
>>>>>>>>>        to
>>>>>>>>>>         .md
>>>>>>>>>>>          within our
>>>>>>>>>>>>>>           source
>>>>>>>>>>>>>>>>            tree:
>>>>>>>>>>         
> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>>>>>            ... we 
> have *41*
>>>>  md's within
>>>>>>    the
>>>>>>>      source
>>>>>>>>       tree
>>>>>>>>>        and
>>>>>>>>>>>          that's the
>>>>>>>>>>>>>>           place
>>>>>>>>>>>>>>>           where
>>>>>>>>>>>>>>>>            people 
> look for
>>>>  documentation
>>>>>>    first.
>>>>>>>      =>
>>>>>>>>>        simple to
>>>>>>>>>>>          manage
>>>>>>>>>>>>>>>>            Would be 
> user friendly
>>>>  to have
>>>>>>    all of
>>>>>>>      this
>>>>>>>>>        online
>>>>>>>>>>         with
>>>>>>>>>>>          each release
>>>>>>>>>>>>>>>>            with the 
> URL layout
>>>>  mentioned
>>>>>>    above.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            just 
> received the
>>>>  buildboot...
>>>>>>>>>>>>>>>>            Do you 
> have kind of a
>>>>  preview of
>>>>>>    your
>>>>>>>>       prototype?
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            all the 
> best!
>>>>>>>>>>>>>>>>            -roger
>>>>>>>>>>>>>>>>            ;-r
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            Quoting 
> Jake Farrell
>>>>>>>>>        <jf...@apache.org>:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>             No 
> objections from
>>>>  me
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>             
> -Jake
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>             On 
> Mon, Mar 17,
>>>>  2014 at
>>>>>>    12:04 PM,
>>>>>>>      Joe
>>>>>>>>>        Schaefer
>>>>>>>>>>>>>>>> 
>>>>>>    <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>             
> Any objections
>>>>  to me
>>>>>>    making a
>>>>>>>      copy
>>>>>>>>       of
>>>>>>>>>        the
>>>>>>>>>>         site
>>>>>>>>>>>>>>>>>>             
> tree alongside
>>>>  it called
>>>>>> 
>>>>>>>>       cms-site?
>>>>>>>>>        I'd
>>>>>>>>>>         like
>>>>>>>>>>>          to
>>>>>>>>>>>>>>>>>>             
> get cracking
>>>>  on knocking
>>>>>>    up
>>>>>>>      the
>>>>>>>>>        supporting
>>>>>>>>>>         perl
>>>>>>>>>>>>>>>>>>             
> for this so we
>>>>  can
>>>>>>    continue
>>>>>>>      to
>>>>>>>>>        brainstorm...
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   On Sunday,
>>>>  March 16,
>>>>>>    2014
>>>>>>>      1:53
>>>>>>>>       PM,
>>>>>>>>>        Joe
>>>>>>>>>>         Schaefer
>>>>>>>>>>>>>>>> 
>>>>  <jo...@yahoo.com>
>>>>>>>>>>>>>>>>>>             
> wrote:
>>>>>>>>>>>>>>>>>>>>     
>       On
>>>>  Sunday, March
>>>>>>    16,
>>>>>>>      2014
>>>>>>>>       1:40
>>>>>>>>>        PM,
>>>>>>>>>>         Jake
>>>>>>>>>>>          Farrell
>>>>>>>>>>>>>>>> 
>>>>  <jf...@apache.org>
>>>>>>>>>>>>>>>>>>>         
>   wrote:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   Hey Joe
>>>>>>>>>>>>>>>>>>>>     
>       Thanks
>>>>  for
>>>>>>    reaching
>>>>>>>      out, we
>>>>>>>>       chose
>>>>>>>>>        to
>>>>>>>>>>         go
>>>>>>>>>>>          with a site
>>>>>>>>>>>>>>>           generator
>>>>>>>>>>>>>>>>            over the
>>>>>>>>>>>>>>>>>>>>     
>       Apache
>>>>  CMS due to
>>>>>>    it
>>>>>>>>       initially
>>>>>>>>>        not
>>>>>>>>>>         meeting
>>>>>>>>>>>          all of
>>>>>>>>>>>>>>           our
>>>>>>>>>>>>>>>           needs.
>>>>>>>>>>>>>>>>            Our 
> current
>>>>>>>>>>>>>>>>>>>>     
>       needs
>>>>  for the site
>>>>>>    are
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       -
>>>>  Markdown to html
>>>>>> 
>>>>>>>>       conversion
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   That
>>>>  one's easy-
>>>>>>    its
>>>>>>>      the
>>>>>>>>       default
>>>>>>>>>        for
>>>>>>>>>>         the
>>>>>>>>>>>          cms.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       - Global
>>>>>>>      variables/config
>>>>>>>>       usable
>>>>>>>>>>         throughout
>>>>>>>>>>>          in a
>>>>>>>>>>>>>>           template
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>            based 
> layout
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   Easy too-
>>>>  just create
>>>>>>    a
>>>>>>>      perl
>>>>>>>>       hash
>>>>>>>>>>         somewhere and
>>>>>>>>>>>          make it
>>>>>>>>>>>>>>>           available
>>>>>>>>>>>>>>>>            to
>>>>>>>>>>>>>>>>>>             
> your views.
>>>>>>>>>>>>>>>>>>>         
>   Code your
>>>>  views to
>>>>>>    pass
>>>>>>>      that
>>>>>>>>       hash
>>>>>>>>>        along to
>>>>>>>>>>         your
>>>>>>>>>>>>>>           templates
>>>>>>>>>>>>>>>           and you
>>>>>>>>>>>>>>>>            are
>>>>>>>>>>>>>>>>>>             
> all set.
>>>>>>>>>>>>>>>>>>>         
>   Note if your
>>>>  hash
>>>>>>    contains
>>>>>>>>       objects
>>>>>>>>>        you can
>>>>>>>>>>         make
>>>>>>>>>>>          method
>>>>>>>>>>>>>>           calls
>>>>>>>>>>>>>>>           on
>>>>>>>>>>>>>>>>            them in
>>>>>>>>>>>>>>>>>>             
> your
>>>>>>>>>>>>>>>>>>>         
>   templates.
>>>>  Note:
>>>>>>    while I
>>>>>>>>>        wouldn't
>>>>>>>>>>>          recommend this in
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           general,
>>>>>>>>>>>>>>>>            for 
> smaller
>>>>>>>>>>>>>>>>>>>         
>   projects
>>>>  like thrift
>>>>>>    that
>>>>>>>      prefer
>>>>>>>> 
>>>>>>>>>>         convenience
>>>>>>>>>>>          over
>>>>>>>>>>>>>>           separation
>>>>>>>>>>>>>>>           of
>>>>>>>>>>>>>>>>            concerns
>>>>>>>>>>>>>>>>>>             
> you can
>>>>>>>>>>>>>>>>>>>         
>   have the
>>>>  django
>>>>>>    template
>>>>>>>      engine
>>>>>>>>       do a
>>>>>>>>>        pass
>>>>>>>>>>         over
>>>>>>>>>>>          your
>>>>>>>>>>>>>>           markdown
>>>>>>>>>>>>>>>>            before
>>>>>>>>>>>>>>>>>>             
> passing it
>>>>>>>>>>>>>>>>>>>         
>   along to
>>>>  your actual
>>>>>>>      template
>>>>>>>>       page,
>>>>>>>>>        just
>>>>>>>>>>         as is
>>>>>>>>>>>          seemingly
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           common to
>>>>>>>>>>>>>>>>            other
>>>>>>>>>>>>>>>>>>             
> popular
>>>>>>>>>>>>>>>>>>>         
>   site
>>>>  generation
>>>>>>    software.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       - Syntax
>>>>>>    highlighting
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   Comes with
>>>>>>    python's
>>>>>>>      markdown
>>>>>>>> 
>>>>>>>>>        support,
>>>>>>>>>>         but
>>>>>>>>>>>          some
>>>>>>>>>>>>>>           people
>>>>>>>>>>>>>>>           prefer
>>>>>>>>>>>>>>>>            the look 
> of
>>>>>>>>>>>>>>>>>>>         
>   javascript
>>>>>>    highlighters.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       - Easily
>>>>  include
>>>>>>    code
>>>>>>>>       snippets
>>>>>>>>>        from
>>>>>>>>>>         our
>>>>>>>>>>>          source code
>>>>>>>>>>>>>>           base
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   Statically I
>>>>  hope.  No
>>>>>>    idea
>>>>>>>      how
>>>>>>>>       to
>>>>>>>>>        pull
>>>>>>>>>>>          snippets out of
>>>>>>>>>>>>>>           your
>>>>>>>>>>>>>>>           git
>>>>>>>>>>>>>>>>            repo
>>>>>>>>>>>>>>>>>>             
> via the
>>>>>>>>>>>>>>>>>>>         
>   cms.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       -
>>>>  Ability to
>>>>>>    locally
>>>>>>>      test
>>>>>>>>       before
>>>>>>>>>>         committing
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>         
>   Belt and
>>>>  suspenders
>>>>>>    with
>>>>>>>      the
>>>>>>>>       cms- you
>>>>>>>>>        can
>>>>>>>>>>         build
>>>>>>>>>>>          your
>>>>>>>>>>>>>>           changes
>>>>>>>>>>>>>>>>            before
>>>>>>>>>>>>>>>>>>             
> committing
>>>>>>>>>>>>>>>>>>>         
>   with the
>>>>  build
>>>>>>    scripts,
>>>>>>>      browse
>>>>>>>>       your
>>>>>>>>>>         changes
>>>>>>>>>>>          before
>>>>>>>>>>>>>>           committing
>>>>>>>>>>>>>>>           via
>>>>>>>>>>>>>>>>            the cms
>>>>>>>>>>>>>>>>>>>         
>   webgui, or
>>>>  simply
>>>>>>    commit
>>>>>>>      your
>>>>>>>>       changes
>>>>>>>>>        and
>>>>>>>>>>         view
>>>>>>>>>>>          the
>>>>>>>>>>>>>>           staging
>>>>>>>>>>>>>>>           site
>>>>>>>>>>>>>>>>            prior to
>>>>>>>>>>>>>>>>>>             
> live
>>>>>>>>>>>>>>>>>>>         
>   publication
>>>>  (which is
>>>>>>    a
>>>>>>>      separate
>>>>>>>> 
>>>>>>>>>        step).
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       -Jake
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>     
>       On Sun,
>>>>  Mar 16,
>>>>>>    2014 at
>>>>>>> 
>>>>>>>>       12:44 PM,
>>>>>>>>>        Joe
>>>>>>>>>>>          Schaefer
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>   
>         As
>>>>  it so
>>>>>>    happens I
>>>>>>>      am
>>>>>>>>>        interested
>>>>>>>>>>         in
>>>>>>>>>>>          working on
>>>>>>>>>>>>>>>           supporting
>>>>>>>>>>>>>>>>>>>>> 
>>>>  thrift's
>>>>>>    use
>>>>>>>      case as
>>>>>>>>       a
>>>>>>>>>>         potential
>>>>>>>>>>>          user of
>>>>>>>>>>>>>>           the
>>>>>>>>>>>>>>>           Apache
>>>>>>>>>>>>>>>>            CMS.
>>>>>>>>>>>>>>>>>>>>> 
>>>>  While the CMS
>>>>>>    works
>>>>>>>      well
>>>>>>>>       for
>>>>>>>>>>         massive
>>>>>>>>>>>          projects
>>>>>>>>>>>>>>           there
>>>>>>>>>>>>>>>           are
>>>>>>>>>>>>>>>>>>>>> 
>>>>  things it
>>>>>>    could do
>>>>>>>>       better at
>>>>>>>>>>         supporting
>>>>>>>>>>>          for
>>>>>>>>>>>>>>           more
>>>>>>>>>>>>>>>           moderate
>>>>>>>>>>>>>>>>>>>>> 
>>>>  sized sites
>>>>>>    like
>>>>>>>>>        thrift's.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>>  I'd
>>>>>>    therefore
>>>>>>>      like
>>>>>>>>       to
>>>>>>>>>        engage
>>>>>>>>>>         you
>>>>>>>>>>>          folks in a
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>           
> brainstorming session
>>>>>>>>>>>>>>>>>>>>> 
>>>>  about what
>>>>>>    sorts of
>>>>>>> 
>>>>>>>>       features
>>>>>>>>>        you
>>>>>>>>>>         want
>>>>>>>>>>>          for your
>>>>>>>>>>>>>>           site
>>>>>>>>>>>>>>>           and
>>>>>>>>>>>>>>>>            to find
>>>>>>>>>>>>>>>>>>>>> 
>>>>  simple ways of
>>>>>> 
>>>>>>>>       supporting
>>>>>>>>>        those
>>>>>>>>>>>          features for
>>>>>>>>>>>>>>           you.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>>  Thanks.
>>>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
Hi

On 23.03.2014 03:19, Jake Farrell wrote:
> Hey Joe
> Reviewing the staging site it looks like its almost 99% there other than
> some styling within the code snippets. I'm good if we want to cut over to
> using this and then work on the additional features that had been mentioned
> afterwords. Any objections to cutting over?
I would really like to see this automatic README.md includes from source 
tree, to have a real additional feature beside of what we already have 
today.

I'm absolutely with you.
Apache projects shall use other Apache projects whenever possible.

> On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer <jo...@yahoo.com>wrote:
>
>> May I suggest a script that creates files in content/
>> containing a single line
>>
>> [snippet:path=...]
this sounds like a plan

>>
>> (with no 'lang' argument) that lets the CMS pull raw content from
>> thrift.git
>> and add it directly to the built pages.  That way you only need to run the
>> script that generates these files when a path changes in your thrift.git
>> repo.
What I had in mind is a automatic search of README.md files across the 
source tree and generate the site with these automatically.
Kind of a central controller that maps all the URL's.
no additional work when a new README.md file is added.
however, a script can do this as interim soultion.
>>
>> You can commit directly to the cms svn tree or via the webgui which does
>> the same thing.
Great!

What about local preview when doing perl modifications?

-roger


>>
>>
>>> On Saturday, March 22, 2014 4:20 PM, Roger Meier <
>> roger@bufferoverflow.ch> wrote:
>>>> I still see some issues and still miss to feature mentioned.
>>> Now we have nonoc.ws and I'm able to hack this a bit.
>>>
>>> We had no real big issue, the thing I missed was the code snippet thing
>>> and this is in on nanoc.ws and now also on Apache CMS.
>>>
>>> The thing we really need is the documentation located within source code
>>> integrated on the web site.
>>>
>>> most hosting platforms do render README.md and that's why lot of doc
>>> will stay within the code and we should benefit as well by rendering
>>> that to the web site and enhance the documentation very easily.
>>>
>>> I would like to render the 41 README.md files to with the following
>>> pattern, that's a must have before switching to another CMS.
>>>
>>> test/README.md => thrift.apache.org/test
>>> test/STATUS.md => thrift.apache.org/test/status
>>> test/keys/README.md => thrift.apache.org/test/keys
>>> lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>> lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
>>> lib/<lang>/examples/README.md =>
>>> thrift.apache.org/lib/<lang>/examples
>>> compiler/cpp/README.md => thrift.apache.org/compiler
>>> debian/README.md => thrift.apache.org/debian
>>> contrib/<topic>/README.md => thrift.apache.org/<topic>
>>>
>>> CPP tutorial seems to be broken on staging.
>>>
>>> Do you commit to https://svn.apache.org/repos/asf/thrift/cms-site/trunk
>>> or is it web gui only?
>>>
>>> How do you generate the site on your local machine?
>>>
>>>
>>> Should I reactivate my perl or do we stay with ruby?
>>> Committers and contributors, what do you think?
>>>
>>>
>>> all the best
>>> -roger
>>>
>>>
>>> On 22.03.2014 18:07, Joe Schaefer wrote:
>>>>
>>>>
>>>>   Ok I've now done the basic necessities involved in porting
>>>>   the site over.  Links have been adjusted, templates ported, files
>> created,
>>>>   snippet feature activated.  At this point I'm happy to declare
>>>>   victory and migrate the thrift live site over, as anything broken that
>>>>   still remains can be dealt with on a per-page basis with the
>> bookmarklet.
>>>>
>>>>
>>>>
>>>>>   On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
>>> <jo...@yahoo.com> wrote:
>>>>>>   Modulo some bizarre content truncation out of git-wip-us.apache.org
>>>>>   the snippet support is now active. At this point I think all the build
>>>>>   support you need in this project to support every type of
>> brainstorming
>>>>>   activity we've discussed is now there, so it's just up to you
>>> guys to
>>>>>   now familiarize yourselves with the build technology and how to apply
>>>>>   it to your needs.  The site builds with snippet support are running
>>> around
>>>>>   10 seconds, which is to be expected with the network interactions
>>> involved.
>>>>>
>>>>>   I'm always willing to answer any questions that come up in the
>>> interim,
>>>>>   but I wish you guys the best of luck in the remaining porting work to
>>> be done.
>>>>>   All I see really are some links that need to have the trailing slashes
>>> removed
>>>>>   and whatever <%= %> template constructs that remain need to be
>>> ported to
>>>>>   django.  So it should be smooth sailing, but as I said if you hit any
>>> snags
>>>>>   holler.  I'd really like to see the live site tech switched over to
>>> the cms
>>>>>   stuff before Apachecon ends in early April, hint hint.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>     On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>>>>>   <jo...@yahoo.com> wrote:
>>>>>>     > While I don't yet know the url magic to support branches
>>> and tags
>>>>>   in git,
>>>>>>     I can say that the snippet support is ready to play with.  I
>>> suggest just
>>>>>>     focusing on the /index.md page first to see how it works in
>>> practice
>>>>>   because
>>>>>>     once it's fully enabled the build will break until all the
>>> snippet
>>>>>   sources
>>>>>>     have been altered to conform with the new style.
>>>>>>
>>>>>>     To turn it on for index.md testing, there are a couple of things
>>> that need
>>>>>   to
>>>>>>     happen. First the [snippet:...] marker should be edited to be
>>>>>   [XXXsnippet:...]
>>>>>>     to enable testing without breaking the build.  Second each marker
>>> contains
>>>>>   a
>>>>>>     "token" argument instead of line numbers for more
>>> stability under
>>>>>
>>>>>>     edits to the source code.  The token argument is an arbitrary
>>> string that
>>>>>   is
>>>>>>     used to denote the boundaries of the snippet within the source
>>> code.
>>>>>>      ASF::Value::Snippet will pull out the lines from the source file
>>> between
>>>>>   the
>>>>>>     lines that contain the token argument and format them as a code
>>> snippet
>>>>>   embedded
>>>>>>     into markdown. To get started I'll copy over the code
>>> highlighting css
>>>>>   from
>>>>>>     www.apache.org but note that this is all based on python pygments
>>> and there
>>>>>   are
>>>>>>     a variety of online css files to choose from if this one is not
>>> to the
>>>>>>     group's liking.
>>>>>>
>>>>>>
>>>>>>
>>>>>>>      On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer
>>>>>>     <jo...@yahoo.com> wrote:
>>>>>>>      > Sorry I need to clarify with an example: look at
>>>>>>>      http://thrift.staging.apache.org/tutorial/ versus
>>>>>>>      http://thrift.staging.apache.org/tutorial.html.  The
>>>>>>>      former is generated from content/tutorial/index.html
>>>>>>>      and the latter from content/tutorial.md.  The latter file
>>>>>>>      needs to be removed from the tree now that it's content
>>>>>>>      has been ported to content/tutorial/index.html.  This
>>>>>>>      uses django template inheritance to maintain simplicity.
>>>>>>>
>>>>>>>      Other directories that follow a similar pattern should
>>>>>>>      also be ported in the same fashion.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>       On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer
>>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>>       > If someone's looking for a way to help with
>>> the porting
>>>>>>>>       effort, consider tackling the creation of an index.html
>>>>>>>>       page in each subdir of the content/ tree (other than
>>> the
>>>>>>>>       base which has an /index.md).  The contents of the file
>>>>>>>>       should be just
>>>>>>>>
>>>>>>>>       {% include 'default' %}
>>>>>>>>
>>>>>>>>       (see the docs dir for an example page that can be
>>> copied)
>>>>>>>>       and the build system will take care of generating the
>>> page
>>>>>>>>       in a consistent fashion with the rest of the site.
>>> Once
>>>>>>>>       that is done there are a lot of pages that function
>>> like
>>>>>>>>       index pages but are written in markdown that can be
>>> deleted,
>>>>>>>>       like docs.md and its ilk.  Nanoc transforms that file
>>> into
>>>>>>>>       /docs/index.html but that's kinda crufty and not
>>> supported
>>>>>>>>       by the CMS, which only lets you alter file extensions
>>> not paths.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>>        On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer
>>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>>        > I just pencilled in snippet preprocessing
>>> support into
>>>>>>>>>        the thrift builds.  Once Jake and I have settled
>>> on the
>>>>>>>>>        feature set of ASF::Value::Snippet, and we have
>>> ported
>>>>>>>>>        the snippet calling text within the markdown pages
>>>>>>>>>        to the new format, things will just work (knock on
>>> wood).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>         On Wednesday, March 19, 2014 6:48 AM, Joseph
>>> Schaefer
>>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>>         > Sure I understand that need.  If
>>> there's a way
>>>>>   of
>>>>>>>      pulling the
>>>>>>>>
>>>>>>>>>        document
>>>>>>>>>>         sources directly from the web I can parse the
>>> content
>>>>>   to
>>>>>>     look for
>>>>>>>
>>>>>>>>       snippet
>>>>>>>>>>         markers and make those available to the
>>> template
>>>>>   system.
>>>>>>>      That's
>>>>>>>>       pretty
>>>>>>>>>        much
>>>>>>>>>>         how www.apache.org is generated.
>>>>>>>>>>
>>>>>>>>>>         Sent from my iPhone
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>          On Mar 19, 2014, at 5:28 AM, Henrique
>>> Mendonça
>>>>>>>>>        <he...@apache.org>
>>>>>>>>>>         wrote:
>>>>>>>>>>>
>>>>>>>>>>>          Hi Joe,
>>>>>>>>>>>
>>>>>>>>>>>          Thanks for your effort. I just wanted to
>>> add that
>>>>>   the
>>>>>>     code
>>>>>>>>       snippets
>>>>>>>>>        are a
>>>>>>>>>>>          crucial feature for this project, which
>>> has way
>>>>>   more
>>>>>>     target
>>>>>>>>       languages
>>>>>>>>>        than
>>>>>>>>>>>          active contributors. In our case,
>>> reducing manual
>>>>>>>      maintenance
>>>>>>>>       costs is
>>>>>>>>>        much
>>>>>>>>>>>          more important than the total site build
>>> time.
>>>>>   Perhaps
>>>>>>     we
>>>>>>>      can
>>>>>>>>       also
>>>>>>>>>        solve
>>>>>>>>>>>          this in the CMS, though.
>>>>>>>>>>>
>>>>>>>>>>>          - Henrique
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>          On 19 March 2014 03:17, Joe Schaefer
>>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>>>         wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>          A couple more thoughts regarding the
>>>>>   background on
>>>>>>     the
>>>>>>>      CMS...
>>>>>>>>>>>>          the bulk of the focus of the CMS up
>>> until now
>>>>>   has
>>>>>>     been
>>>>>>>      to
>>>>>>>>>>>>          support really big sites like maven
>>> and
>>>>>   openoffice,
>>>>>>     both
>>>>>>>      of
>>>>>>>>>>>>          which have websites well over 5GB
>>> worth of
>>>>>   text
>>>>>>     files.
>>>>>>>      The
>>>>>>>>>>>>          build system was hollowed out and
>>> revamped to
>>>>>>     support
>>>>>>>>       external
>>>>>>>>>>>>          builds in other programming
>>> languages, as well
>>>>>   as
>>>>>>>      scaling up
>>>>>>>>>>>>          the perl builds to provide about 8
>>> child
>>>>>   processes
>>>>>>     that
>>>>>>>      build
>>>>>>>>>>>>          the site in parallel by default.
>>> Full site
>>>>>   build
>>>>>>     times
>>>>>>>      for
>>>>>>>>>>>>          openoffice went from over 30 minutes
>>> to
>>>>>   between 5
>>>>>>     to 10
>>>>>>>>       minutes
>>>>>>>>>>>>          depending on disk activity, which
>>> made
>>>>>>     experimentation
>>>>>>>      with
>>>>>>>>>        site-wide
>>>>>>>>>>>>          changes feasible on a reasonable
>>> timeframe.
>>>>>   At
>>>>>>     first
>>>>>>>      the
>>>>>>>>       project
>>>>>>>>>        was
>>>>>>>>>>         in
>>>>>>>>>>>>          the habit of running the builds
>>> locally before
>>>>>
>>>>>>     checking
>>>>>>>      in
>>>>>>>>       their
>>>>>>>>>>         changes
>>>>>>>>>>>>          because the delay in feedback
>>> post-commit was
>>>>>>>      unreasonable,
>>>>>>>>       but
>>>>>>>>>        with
>>>>>>>>>>         smart
>>>>>>>>>>>>          use of SSI the were able to cut down
>>> on the
>>>>>   number
>>>>>>     of
>>>>>>>      changes
>>>>>>>>       that
>>>>>>>>>
>>>>>>>>>>         required
>>>>>>>>>>>>          full site builds and hence no longer
>>> bother
>>>>>   with
>>>>>>     the
>>>>>>>      whole
>>>>>>>>>        pre-build
>>>>>>>>>>         mumbo
>>>>>>>>>>>>          jumbo before checking in changes.
>>> The CMS is
>>>>>>     designed
>>>>>>>      to
>>>>>>>>       only
>>>>>>>>>        build
>>>>>>>>>>         pages
>>>>>>>>>>>>          that were altered, and if you just
>>> edit a page
>>>>>   or
>>>>>>     two
>>>>>>>      only
>>>>>>>>       those
>>>>>>>>>        pages
>>>>>>>>>>         and
>>>>>>>>>>>>          the pages that depend on them will
>>> be built.
>>>>>>>>>>>>
>>>>>>>>>>>>          Now that I've turned my
>>> attention to
>>>>>   thrift,
>>>>>>     there
>>>>>>>      are
>>>>>>>>       several
>>>>>>>>>
>>>>>>>>>>         aspects
>>>>>>>>>>>>          that are better off being retuned
>>> based on the
>>>>>
>>>>>>     modest
>>>>>>>      size of
>>>>>>>>       the
>>>>>>>>>        site.
>>>>>>>>>>>>          First of all you have a sitemap url
>>> that lists
>>>>>   all
>>>>>>     of
>>>>>>>      your
>>>>>>>>>>         markdown-based
>>>>>>>>>>>>          pages, which would be a nonstarter
>>> for a site
>>>>>   like
>>>>>>>>       openoffice.
>>>>>>>>>        The
>>>>>>>>>>>>          implications of the sitemap url are
>>> that every
>>>>>   page
>>>>>>
>>>>>>>      needs to
>>>>>>>>       be
>>>>>>>>>        built
>>>>>>>>>>         in
>>>>>>>>>>>>          memory just to generate that page,
>>> which leads
>>>>>   to a
>>>>>>     lot
>>>>>>>      of
>>>>>>>>>        redundancy
>>>>>>>>>>         in a
>>>>>>>>>>>>          build system designed to run as
>>> forked child
>>>>>>     processes.
>>>>>>>      We
>>>>>>>>       can do
>>>>>>>>>
>>>>>>>>>>         better...
>>>>>>>>>>>>
>>>>>>>>>>>>          I've done two things to make
>>> this work
>>>>>   well-
>>>>>>     first I
>>>>>>>      made
>>>>>>>>       the
>>>>>>>>>>         number of
>>>>>>>>>>>>          child processes "aka
>>> runners"
>>>>>   tunable on
>>>>>>     a
>>>>>>>>       per-project
>>>>>>>>>        basis,
>>>>>>>>>>         and since the
>>>>>>>>>>>>          sitemap is going to build every page
>>> anyway as
>>>>>   the
>>>>>>>      slowest
>>>>>>>>       page to
>>>>>>>>>
>>>>>>>>>>         build, I
>>>>>>>>>>>>          memoized the main view that builds
>>> the
>>>>>   markdown
>>>>>>     pages
>>>>>>>      for
>>>>>>>>       thrift.
>>>>>>>>>        The
>>>>>>>>>>         best
>>>>>>>>>>>>          results are when there's only
>>> one runner
>>>>>   so we
>>>>>>     get
>>>>>>>      the
>>>>>>>>       full
>>>>>>>>>        benefit
>>>>>>>>>>         of
>>>>>>>>>>>>          memoization: typical site build
>>> times are
>>>>>>     consistently
>>>>>>>      under
>>>>>>>>       2
>>>>>>>>>        seconds
>>>>>>>>>>         now.
>>>>>>>>>>>>
>>>>>>>>>>>>          You'll appreciate why I am such
>>> a
>>>>>   performance
>>>>>>>      stickler
>>>>>>>>       for the
>>>>>>>>>        CMS
>>>>>>>>>>         when
>>>>>>>>>>>>          you start using the bookmarklet,
>>> since builds
>>>>>   are
>>>>>>     the
>>>>>>>      only
>>>>>>>>>        asynchronous
>>>>>>>>>>>>          part of the process from making a
>>> change to a
>>>>>   page
>>>>>>     and
>>>>>>>>       publishing
>>>>>>>>>        the
>>>>>>>>>>>>          results.  Ideally when the system is
>>> working
>>>>>   well
>>>>>>     the
>>>>>>>      builds
>>>>>>>>>        happen
>>>>>>>>>>         before
>>>>>>>>>>>>          you have time to go looking for
>>> them, but you
>>>>>   do
>>>>>>     need to
>>>>>>>      be
>>>>>>>>>        mindful of
>>>>>>>>>>         not
>>>>>>>>>>>>          publishing before the built pages
>>> have been
>>>>>>     committed
>>>>>>>      back to
>>>>>>>>       svn
>>>>>>>>>        by
>>>>>>>>>>>>          buildbot.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>          On Monday, March 17, 2014 11:59
>>> PM, Joe
>>>>>>     Schaefer
>>>>>>>>>>         <jo...@yahoo.com>
>>>>>>>>>>>>          wrote:
>>>>>>>>>>>>>>          Ok there's enough of an
>>> idea about
>>>>>   how
>>>>>>     to
>>>>>>>      port
>>>>>>>>       the
>>>>>>>>>        rest of
>>>>>>>>>>         the site's
>>>>>>>>>>>>>          pages over based on the porting
>>> work
>>>>>   I've
>>>>>>>      already
>>>>>>>>       done
>>>>>>>>>        that
>>>>>>>>>>         it's time
>>>>>>>>>>>>>          for me to step back and let you
>>> guys catch
>>>>>   up.
>>>>>>
>>>>>>>      Basically
>>>>>>>>       the
>>>>>>>>>        idea
>>>>>>>>>>         is
>>>>>>>>>>>>          that while
>>>>>>>>>>>>>          there is templating support in
>>> the
>>>>>   markdown
>>>>>>     sources,
>>>>>>>
>>>>>>>>       it's
>>>>>>>>>>         fairly limited
>>>>>>>>>>>>>          compared to what nanoc offers,
>>> but instead
>>>>>   of
>>>>>>>      writing a
>>>>>>>>       lot of
>>>>>>>>>
>>>>>>>>>>         complex
>>>>>>>>>>>>          template
>>>>>>>>>>>>>          code into your sources, with the
>>> cms you
>>>>>   just
>>>>>>     add
>>>>>>>      code to
>>>>>>>>
>>>>>>>>>>         lib/view.pmand/or
>>>>>>>>>>>>>          lib/path.pm to keep the document
>>> sources
>>>>>   simple
>>>>>>     and
>>>>>>>      just
>>>>>>>>       add
>>>>>>>>>        more
>>>>>>>>>>>>          template
>>>>>>>>>>>>>          variables.  What I just finished
>>> in
>>>>>   lib/view.pm
>>>>>>     and
>>>>>>>>>        lib/path.pm is
>>>>>>>>>>>>          directory
>>>>>>>>>>>>>          listing support for /docs.html
>>> but it can
>>>>>   be
>>>>>>     carried
>>>>>>>      over
>>>>>>>>       to
>>>>>>>>>>         similar
>>>>>>>>>>>>          pages.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          On Monday, March 17, 2014
>>> 9:16 PM, Joe
>>>>>
>>>>>>     Schaefer
>>>>>>>>>>>>>          <jo...@yahoo.com>
>>> wrote:
>>>>>>>>>>>>>>>          Interesting ideas,
>>> thanks.  FWIW I
>>>>>
>>>>>>     think
>>>>>>>      that
>>>>>>>>       sort
>>>>>>>>>>>>>>          of thing might be best
>>> supported as a
>>>>>>     periodic
>>>>>>>      cron
>>>>>>>>>>>>>>          if we can write something
>>> stable
>>>>>   enough,
>>>>>>     because
>>>>>>>
>>>>>>>>       pulling
>>>>>>>>>>>>>>          stuff out of the git repo is
>>> something
>>>>>   the
>>>>>>     CMS
>>>>>>>>       isn't
>>>>>>>>>        going
>>>>>>>>>>>>>>          to do all that well being an
>>> svn
>>>>>>     application.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>          The CMS build results are
>>> available at
>>>>>>>>>>>>          http://thrift.staging.apache.org/
>>>>>>>>>>>>>>          feel free to play with the
>>> sources in
>>>>>>>>>>         repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>>>>          It's very fast, probably
>>> an order
>>>>>   of
>>>>>>>      magnitude
>>>>>>>>       faster
>>>>>>>>>        than
>>>>>>>>>>         your current
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          tech.
>>>>>>>>>>>>>>          Whole site builds in two
>>> seconds;
>>>>>   fractions
>>>>>>     of a
>>>>>>>
>>>>>>>>       second
>>>>>>>>>        for
>>>>>>>>>>         typical
>>>>>>>>>>>>          mods to
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          content/ markdown pages.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>          The CMS bookmarklet is
>>> compatible with
>>>>>   the
>>>>>>>      staging
>>>>>>>>       site
>>>>>>>>>        FWIW.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           On Monday, March 17,
>>> 2014 7:40
>>>>>   PM,
>>>>>>     Roger
>>>>>>>      Meier
>>>>>>>>>>>>>>
>>> <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>>>>          Hi Joe & Co
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           thanks for this test
>>> run with
>>>>>   Apache
>>>>>>     CMS!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           What I would love to
>>> see is this:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           Source file: => Web
>>> Site URL:
>>>>>>>>>>>>>>>           test/README.md =>
>>>>>>     thrift.apache.org/test
>>>>>>>>>>>>>>>           test/STATUS.md =>
>>>>>>>>       thrift.apache.org/test/status
>>>>>>>>>>>>>>>           test/keys/README.md
>>> =>
>>>>>>>>       thrift.apache.org/test/keys
>>>>>>>>>>>>>>>
>>> lib/<lang>/README.md =>
>>>>>>>>>>         thrift.apache.org/lib/<lang>
>>>>>>>>>>>>>>>
>>> lib/<lang>/test/README.md
>>>>>   =>
>>>>>>>>>>>>>>
>>>>>   thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>>>>>
>>>>>   lib/<lang>/examples/README.md
>>>>>>     =>
>>>>>>>>>>>>>>>
>>>>>>     thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>>>>>           compiler/cpp/README.md
>>> =>
>>>>>>>>>        thrift.apache.org/compiler
>>>>>>>>>>>>>>>           debian/README.md =>
>>>>>>>      thrift.apache.org/debian
>>>>>>>>>>>>>>>
>>> contrib/<topic>/README.md
>>>>>   =>
>>>>>>>>>>         thrift.apache.org/<topic>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           just made the following
>>> patch to
>>>>>>     rename all
>>>>>>>      file
>>>>>>>>       to
>>>>>>>>>        .md
>>>>>>>>>>         within our
>>>>>>>>>>>>>          source
>>>>>>>>>>>>>>>           tree:
>>>>>>>>>        https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>>>>           ... we have *41*
>>> md's within
>>>>>   the
>>>>>>     source
>>>>>>>      tree
>>>>>>>>       and
>>>>>>>>>>         that's the
>>>>>>>>>>>>>          place
>>>>>>>>>>>>>>          where
>>>>>>>>>>>>>>>           people look for
>>> documentation
>>>>>   first.
>>>>>>     =>
>>>>>>>>       simple to
>>>>>>>>>>         manage
>>>>>>>>>>>>>>>           Would be user friendly
>>> to have
>>>>>   all of
>>>>>>     this
>>>>>>>>       online
>>>>>>>>>        with
>>>>>>>>>>         each release
>>>>>>>>>>>>>>>           with the URL layout
>>> mentioned
>>>>>   above.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           just received the
>>> buildboot...
>>>>>>>>>>>>>>>           Do you have kind of a
>>> preview of
>>>>>   your
>>>>>>>      prototype?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           all the best!
>>>>>>>>>>>>>>>           -roger
>>>>>>>>>>>>>>>           ;-r
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           Quoting Jake Farrell
>>>>>>>>       <jf...@apache.org>:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            No objections from
>>> me
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            -Jake
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>            On Mon, Mar 17,
>>> 2014 at
>>>>>   12:04 PM,
>>>>>>     Joe
>>>>>>>>       Schaefer
>>>>>>>>>>>>>>>
>>>>>   <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>            Any objections
>>> to me
>>>>>   making a
>>>>>>     copy
>>>>>>>      of
>>>>>>>>       the
>>>>>>>>>        site
>>>>>>>>>>>>>>>>>            tree alongside
>>> it called
>>>>>
>>>>>>>      cms-site?
>>>>>>>>       I'd
>>>>>>>>>        like
>>>>>>>>>>         to
>>>>>>>>>>>>>>>>>            get cracking
>>> on knocking
>>>>>   up
>>>>>>     the
>>>>>>>>       supporting
>>>>>>>>>        perl
>>>>>>>>>>>>>>>>>            for this so we
>>> can
>>>>>   continue
>>>>>>     to
>>>>>>>>       brainstorm...
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          On Sunday,
>>> March 16,
>>>>>   2014
>>>>>>     1:53
>>>>>>>      PM,
>>>>>>>>       Joe
>>>>>>>>>        Schaefer
>>>>>>>>>>>>>>>
>>> <jo...@yahoo.com>
>>>>>>>>>>>>>>>>>            wrote:
>>>>>>>>>>>>>>>>>>>          On
>>> Sunday, March
>>>>>   16,
>>>>>>     2014
>>>>>>>      1:40
>>>>>>>>       PM,
>>>>>>>>>        Jake
>>>>>>>>>>         Farrell
>>>>>>>>>>>>>>>
>>> <jf...@apache.org>
>>>>>>>>>>>>>>>>>>          wrote:
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          Hey Joe
>>>>>>>>>>>>>>>>>>>          Thanks
>>> for
>>>>>   reaching
>>>>>>     out, we
>>>>>>>      chose
>>>>>>>>       to
>>>>>>>>>        go
>>>>>>>>>>         with a site
>>>>>>>>>>>>>>          generator
>>>>>>>>>>>>>>>           over the
>>>>>>>>>>>>>>>>>>>          Apache
>>> CMS due to
>>>>>   it
>>>>>>>      initially
>>>>>>>>       not
>>>>>>>>>        meeting
>>>>>>>>>>         all of
>>>>>>>>>>>>>          our
>>>>>>>>>>>>>>          needs.
>>>>>>>>>>>>>>>           Our current
>>>>>>>>>>>>>>>>>>>          needs
>>> for the site
>>>>>   are
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          -
>>> Markdown to html
>>>>>
>>>>>>>      conversion
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          That
>>> one's easy-
>>>>>   its
>>>>>>     the
>>>>>>>      default
>>>>>>>>       for
>>>>>>>>>        the
>>>>>>>>>>         cms.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          - Global
>>>>>>     variables/config
>>>>>>>      usable
>>>>>>>>>        throughout
>>>>>>>>>>         in a
>>>>>>>>>>>>>          template
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           based layout
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          Easy too-
>>> just create
>>>>>   a
>>>>>>     perl
>>>>>>>      hash
>>>>>>>>>        somewhere and
>>>>>>>>>>         make it
>>>>>>>>>>>>>>          available
>>>>>>>>>>>>>>>           to
>>>>>>>>>>>>>>>>>            your views.
>>>>>>>>>>>>>>>>>>          Code your
>>> views to
>>>>>   pass
>>>>>>     that
>>>>>>>      hash
>>>>>>>>       along to
>>>>>>>>>        your
>>>>>>>>>>>>>          templates
>>>>>>>>>>>>>>          and you
>>>>>>>>>>>>>>>           are
>>>>>>>>>>>>>>>>>            all set.
>>>>>>>>>>>>>>>>>>          Note if your
>>> hash
>>>>>   contains
>>>>>>>      objects
>>>>>>>>       you can
>>>>>>>>>        make
>>>>>>>>>>         method
>>>>>>>>>>>>>          calls
>>>>>>>>>>>>>>          on
>>>>>>>>>>>>>>>           them in
>>>>>>>>>>>>>>>>>            your
>>>>>>>>>>>>>>>>>>          templates.
>>> Note:
>>>>>   while I
>>>>>>>>       wouldn't
>>>>>>>>>>         recommend this in
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          general,
>>>>>>>>>>>>>>>           for smaller
>>>>>>>>>>>>>>>>>>          projects
>>> like thrift
>>>>>   that
>>>>>>     prefer
>>>>>>>
>>>>>>>>>        convenience
>>>>>>>>>>         over
>>>>>>>>>>>>>          separation
>>>>>>>>>>>>>>          of
>>>>>>>>>>>>>>>           concerns
>>>>>>>>>>>>>>>>>            you can
>>>>>>>>>>>>>>>>>>          have the
>>> django
>>>>>   template
>>>>>>     engine
>>>>>>>      do a
>>>>>>>>       pass
>>>>>>>>>        over
>>>>>>>>>>         your
>>>>>>>>>>>>>          markdown
>>>>>>>>>>>>>>>           before
>>>>>>>>>>>>>>>>>            passing it
>>>>>>>>>>>>>>>>>>          along to
>>> your actual
>>>>>>     template
>>>>>>>      page,
>>>>>>>>       just
>>>>>>>>>        as is
>>>>>>>>>>         seemingly
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          common to
>>>>>>>>>>>>>>>           other
>>>>>>>>>>>>>>>>>            popular
>>>>>>>>>>>>>>>>>>          site
>>> generation
>>>>>   software.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          - Syntax
>>>>>   highlighting
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          Comes with
>>>>>   python's
>>>>>>     markdown
>>>>>>>
>>>>>>>>       support,
>>>>>>>>>        but
>>>>>>>>>>         some
>>>>>>>>>>>>>          people
>>>>>>>>>>>>>>          prefer
>>>>>>>>>>>>>>>           the look of
>>>>>>>>>>>>>>>>>>          javascript
>>>>>   highlighters.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          - Easily
>>> include
>>>>>   code
>>>>>>>      snippets
>>>>>>>>       from
>>>>>>>>>        our
>>>>>>>>>>         source code
>>>>>>>>>>>>>          base
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          Statically I
>>> hope.  No
>>>>>   idea
>>>>>>     how
>>>>>>>      to
>>>>>>>>       pull
>>>>>>>>>>         snippets out of
>>>>>>>>>>>>>          your
>>>>>>>>>>>>>>          git
>>>>>>>>>>>>>>>           repo
>>>>>>>>>>>>>>>>>            via the
>>>>>>>>>>>>>>>>>>          cms.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          -
>>> Ability to
>>>>>   locally
>>>>>>     test
>>>>>>>      before
>>>>>>>>>        committing
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>          Belt and
>>> suspenders
>>>>>   with
>>>>>>     the
>>>>>>>      cms- you
>>>>>>>>       can
>>>>>>>>>        build
>>>>>>>>>>         your
>>>>>>>>>>>>>          changes
>>>>>>>>>>>>>>>           before
>>>>>>>>>>>>>>>>>            committing
>>>>>>>>>>>>>>>>>>          with the
>>> build
>>>>>   scripts,
>>>>>>     browse
>>>>>>>      your
>>>>>>>>>        changes
>>>>>>>>>>         before
>>>>>>>>>>>>>          committing
>>>>>>>>>>>>>>          via
>>>>>>>>>>>>>>>           the cms
>>>>>>>>>>>>>>>>>>          webgui, or
>>> simply
>>>>>   commit
>>>>>>     your
>>>>>>>      changes
>>>>>>>>       and
>>>>>>>>>        view
>>>>>>>>>>         the
>>>>>>>>>>>>>          staging
>>>>>>>>>>>>>>          site
>>>>>>>>>>>>>>>           prior to
>>>>>>>>>>>>>>>>>            live
>>>>>>>>>>>>>>>>>>          publication
>>> (which is
>>>>>   a
>>>>>>     separate
>>>>>>>
>>>>>>>>       step).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          -Jake
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>          On Sun,
>>> Mar 16,
>>>>>   2014 at
>>>>>>
>>>>>>>      12:44 PM,
>>>>>>>>       Joe
>>>>>>>>>>         Schaefer
>>>>>>>>>>>>>>>>>>
>>>>>>>      <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>          As
>>> it so
>>>>>   happens I
>>>>>>     am
>>>>>>>>       interested
>>>>>>>>>        in
>>>>>>>>>>         working on
>>>>>>>>>>>>>>          supporting
>>>>>>>>>>>>>>>>>>>>
>>> thrift's
>>>>>   use
>>>>>>     case as
>>>>>>>      a
>>>>>>>>>        potential
>>>>>>>>>>         user of
>>>>>>>>>>>>>          the
>>>>>>>>>>>>>>          Apache
>>>>>>>>>>>>>>>           CMS.
>>>>>>>>>>>>>>>>>>>>
>>> While the CMS
>>>>>   works
>>>>>>     well
>>>>>>>      for
>>>>>>>>>        massive
>>>>>>>>>>         projects
>>>>>>>>>>>>>          there
>>>>>>>>>>>>>>          are
>>>>>>>>>>>>>>>>>>>>
>>> things it
>>>>>   could do
>>>>>>>      better at
>>>>>>>>>        supporting
>>>>>>>>>>         for
>>>>>>>>>>>>>          more
>>>>>>>>>>>>>>          moderate
>>>>>>>>>>>>>>>>>>>>
>>> sized sites
>>>>>   like
>>>>>>>>       thrift's.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>> I'd
>>>>>   therefore
>>>>>>     like
>>>>>>>      to
>>>>>>>>       engage
>>>>>>>>>        you
>>>>>>>>>>         folks in a
>>>>>>>>>>>>>
>>>>>>>>>>>>>>>           brainstorming session
>>>>>>>>>>>>>>>>>>>>
>>> about what
>>>>>   sorts of
>>>>>>
>>>>>>>      features
>>>>>>>>       you
>>>>>>>>>        want
>>>>>>>>>>         for your
>>>>>>>>>>>>>          site
>>>>>>>>>>>>>>          and
>>>>>>>>>>>>>>>           to find
>>>>>>>>>>>>>>>>>>>>
>>> simple ways of
>>>>>
>>>>>>>      supporting
>>>>>>>>       those
>>>>>>>>>>         features for
>>>>>>>>>>>>>          you.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>> Thanks.
>>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Re: reconsidering the Apache CMS...

Posted by Jake Farrell <jf...@apache.org>.
Hey Joe
Reviewing the staging site it looks like its almost 99% there other than
some styling within the code snippets. I'm good if we want to cut over to
using this and then work on the additional features that had been mentioned
afterwords. Any objections to cutting over?

-Jake



On Sat, Mar 22, 2014 at 4:36 PM, Joe Schaefer <jo...@yahoo.com>wrote:

> May I suggest a script that creates files in content/
> containing a single line
>
> [snippet:path=...]
>
> (with no 'lang' argument) that lets the CMS pull raw content from
> thrift.git
> and add it directly to the built pages.  That way you only need to run the
> script that generates these files when a path changes in your thrift.git
> repo.
>
> You can commit directly to the cms svn tree or via the webgui which does
> the same thing.
>
>
> > On Saturday, March 22, 2014 4:20 PM, Roger Meier <
> roger@bufferoverflow.ch> wrote:
> > > I still see some issues and still miss to feature mentioned.
> > Now we have nonoc.ws and I'm able to hack this a bit.
> >
> > We had no real big issue, the thing I missed was the code snippet thing
> > and this is in on nanoc.ws and now also on Apache CMS.
> >
> > The thing we really need is the documentation located within source code
> > integrated on the web site.
> >
> > most hosting platforms do render README.md and that's why lot of doc
> > will stay within the code and we should benefit as well by rendering
> > that to the web site and enhance the documentation very easily.
> >
> > I would like to render the 41 README.md files to with the following
> > pattern, that's a must have before switching to another CMS.
> >
> > test/README.md => thrift.apache.org/test
> > test/STATUS.md => thrift.apache.org/test/status
> > test/keys/README.md => thrift.apache.org/test/keys
> > lib/<lang>/README.md => thrift.apache.org/lib/<lang>
> > lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
> > lib/<lang>/examples/README.md =>
> > thrift.apache.org/lib/<lang>/examples
> > compiler/cpp/README.md => thrift.apache.org/compiler
> > debian/README.md => thrift.apache.org/debian
> > contrib/<topic>/README.md => thrift.apache.org/<topic>
> >
> > CPP tutorial seems to be broken on staging.
> >
> > Do you commit to https://svn.apache.org/repos/asf/thrift/cms-site/trunk
> > or is it web gui only?
> >
> > How do you generate the site on your local machine?
> >
> >
> > Should I reactivate my perl or do we stay with ruby?
> > Committers and contributors, what do you think?
> >
> >
> > all the best
> > -roger
> >
> >
> > On 22.03.2014 18:07, Joe Schaefer wrote:
> >>
> >>
> >>  Ok I've now done the basic necessities involved in porting
> >>  the site over.  Links have been adjusted, templates ported, files
> created,
> >>  snippet feature activated.  At this point I'm happy to declare
> >>  victory and migrate the thrift live site over, as anything broken that
> >>  still remains can be dealt with on a per-page basis with the
> bookmarklet.
> >>
> >>
> >>
> >>>  On Thursday, March 20, 2014 11:19 AM, Joe Schaefer
> > <jo...@yahoo.com> wrote:
> >>>>  Modulo some bizarre content truncation out of git-wip-us.apache.org
> >>>  the snippet support is now active. At this point I think all the build
> >>>  support you need in this project to support every type of
> brainstorming
> >>>  activity we've discussed is now there, so it's just up to you
> > guys to
> >>>  now familiarize yourselves with the build technology and how to apply
> >>>  it to your needs.  The site builds with snippet support are running
> > around
> >>>  10 seconds, which is to be expected with the network interactions
> > involved.
> >>>
> >>>  I'm always willing to answer any questions that come up in the
> > interim,
> >>>  but I wish you guys the best of luck in the remaining porting work to
> > be done.
> >>>  All I see really are some links that need to have the trailing slashes
> > removed
> >>>  and whatever <%= %> template constructs that remain need to be
> > ported to
> >>>  django.  So it should be smooth sailing, but as I said if you hit any
> > snags
> >>>  holler.  I'd really like to see the live site tech switched over to
> > the cms
> >>>  stuff before Apachecon ends in early April, hint hint.
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>>    On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
> >>>  <jo...@yahoo.com> wrote:
> >>>>    > While I don't yet know the url magic to support branches
> > and tags
> >>>  in git,
> >>>>    I can say that the snippet support is ready to play with.  I
> > suggest just
> >>>>    focusing on the /index.md page first to see how it works in
> > practice
> >>>  because
> >>>>    once it's fully enabled the build will break until all the
> > snippet
> >>>  sources
> >>>>    have been altered to conform with the new style.
> >>>>
> >>>>    To turn it on for index.md testing, there are a couple of things
> > that need
> >>>  to
> >>>>    happen. First the [snippet:...] marker should be edited to be
> >>>  [XXXsnippet:...]
> >>>>    to enable testing without breaking the build.  Second each marker
> > contains
> >>>  a
> >>>>    "token" argument instead of line numbers for more
> > stability under
> >>>
> >>>>    edits to the source code.  The token argument is an arbitrary
> > string that
> >>>  is
> >>>>    used to denote the boundaries of the snippet within the source
> > code.
> >>>>     ASF::Value::Snippet will pull out the lines from the source file
> > between
> >>>  the
> >>>>    lines that contain the token argument and format them as a code
> > snippet
> >>>  embedded
> >>>>    into markdown. To get started I'll copy over the code
> > highlighting css
> >>>  from
> >>>>    www.apache.org but note that this is all based on python pygments
> > and there
> >>>  are
> >>>>    a variety of online css files to choose from if this one is not
> > to the
> >>>>    group's liking.
> >>>>
> >>>>
> >>>>
> >>>>>     On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer
> >>>>    <jo...@yahoo.com> wrote:
> >>>>>     > Sorry I need to clarify with an example: look at
> >>>>>     http://thrift.staging.apache.org/tutorial/ versus
> >>>>>     http://thrift.staging.apache.org/tutorial.html.  The
> >>>>>     former is generated from content/tutorial/index.html
> >>>>>     and the latter from content/tutorial.md.  The latter file
> >>>>>     needs to be removed from the tree now that it's content
> >>>>>     has been ported to content/tutorial/index.html.  This
> >>>>>     uses django template inheritance to maintain simplicity.
> >>>>>
> >>>>>     Other directories that follow a similar pattern should
> >>>>>     also be ported in the same fashion.
> >>>>>
> >>>>>
> >>>>>
> >>>>>>      On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer
> >>>>>     <jo...@yahoo.com> wrote:
> >>>>>>      > If someone's looking for a way to help with
> > the porting
> >>>>>>      effort, consider tackling the creation of an index.html
> >>>>>>      page in each subdir of the content/ tree (other than
> > the
> >>>>>>      base which has an /index.md).  The contents of the file
> >>>>>>      should be just
> >>>>>>
> >>>>>>      {% include 'default' %}
> >>>>>>
> >>>>>>      (see the docs dir for an example page that can be
> > copied)
> >>>>>>      and the build system will take care of generating the
> > page
> >>>>>>      in a consistent fashion with the rest of the site.
> > Once
> >>>>>>      that is done there are a lot of pages that function
> > like
> >>>>>>      index pages but are written in markdown that can be
> > deleted,
> >>>>>>      like docs.md and its ilk.  Nanoc transforms that file
> > into
> >>>>>>      /docs/index.html but that's kinda crufty and not
> > supported
> >>>>>>      by the CMS, which only lets you alter file extensions
> > not paths.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>       On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer
> >>>>>>      <jo...@yahoo.com> wrote:
> >>>>>>>       > I just pencilled in snippet preprocessing
> > support into
> >>>>>>>       the thrift builds.  Once Jake and I have settled
> > on the
> >>>>>>>       feature set of ASF::Value::Snippet, and we have
> > ported
> >>>>>>>       the snippet calling text within the markdown pages
> >>>>>>>       to the new format, things will just work (knock on
> > wood).
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>>        On Wednesday, March 19, 2014 6:48 AM, Joseph
> > Schaefer
> >>>>>>>       <jo...@yahoo.com> wrote:
> >>>>>>>>        > Sure I understand that need.  If
> > there's a way
> >>>  of
> >>>>>     pulling the
> >>>>>>
> >>>>>>>       document
> >>>>>>>>        sources directly from the web I can parse the
> > content
> >>>  to
> >>>>    look for
> >>>>>
> >>>>>>      snippet
> >>>>>>>>        markers and make those available to the
> > template
> >>>  system.
> >>>>>     That's
> >>>>>>      pretty
> >>>>>>>       much
> >>>>>>>>        how www.apache.org is generated.
> >>>>>>>>
> >>>>>>>>        Sent from my iPhone
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>         On Mar 19, 2014, at 5:28 AM, Henrique
> > Mendonça
> >>>>>>>       <he...@apache.org>
> >>>>>>>>        wrote:
> >>>>>>>>>
> >>>>>>>>>         Hi Joe,
> >>>>>>>>>
> >>>>>>>>>         Thanks for your effort. I just wanted to
> > add that
> >>>  the
> >>>>    code
> >>>>>>      snippets
> >>>>>>>       are a
> >>>>>>>>>         crucial feature for this project, which
> > has way
> >>>  more
> >>>>    target
> >>>>>>      languages
> >>>>>>>       than
> >>>>>>>>>         active contributors. In our case,
> > reducing manual
> >>>>>     maintenance
> >>>>>>      costs is
> >>>>>>>       much
> >>>>>>>>>         more important than the total site build
> > time.
> >>>  Perhaps
> >>>>    we
> >>>>>     can
> >>>>>>      also
> >>>>>>>       solve
> >>>>>>>>>         this in the CMS, though.
> >>>>>>>>>
> >>>>>>>>>         - Henrique
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>         On 19 March 2014 03:17, Joe Schaefer
> >>>>>>>       <jo...@yahoo.com>
> >>>>>>>>        wrote:
> >>>>>>>>>>
> >>>>>>>>>>         A couple more thoughts regarding the
> >>>  background on
> >>>>    the
> >>>>>     CMS...
> >>>>>>>>>>         the bulk of the focus of the CMS up
> > until now
> >>>  has
> >>>>    been
> >>>>>     to
> >>>>>>>>>>         support really big sites like maven
> > and
> >>>  openoffice,
> >>>>    both
> >>>>>     of
> >>>>>>>>>>         which have websites well over 5GB
> > worth of
> >>>  text
> >>>>    files.
> >>>>>     The
> >>>>>>>>>>         build system was hollowed out and
> > revamped to
> >>>>    support
> >>>>>>      external
> >>>>>>>>>>         builds in other programming
> > languages, as well
> >>>  as
> >>>>>     scaling up
> >>>>>>>>>>         the perl builds to provide about 8
> > child
> >>>  processes
> >>>>    that
> >>>>>     build
> >>>>>>>>>>         the site in parallel by default.
> > Full site
> >>>  build
> >>>>    times
> >>>>>     for
> >>>>>>>>>>         openoffice went from over 30 minutes
> > to
> >>>  between 5
> >>>>    to 10
> >>>>>>      minutes
> >>>>>>>>>>         depending on disk activity, which
> > made
> >>>>    experimentation
> >>>>>     with
> >>>>>>>       site-wide
> >>>>>>>>>>         changes feasible on a reasonable
> > timeframe.
> >>>  At
> >>>>    first
> >>>>>     the
> >>>>>>      project
> >>>>>>>       was
> >>>>>>>>        in
> >>>>>>>>>>         the habit of running the builds
> > locally before
> >>>
> >>>>    checking
> >>>>>     in
> >>>>>>      their
> >>>>>>>>        changes
> >>>>>>>>>>         because the delay in feedback
> > post-commit was
> >>>>>     unreasonable,
> >>>>>>      but
> >>>>>>>       with
> >>>>>>>>        smart
> >>>>>>>>>>         use of SSI the were able to cut down
> > on the
> >>>  number
> >>>>    of
> >>>>>     changes
> >>>>>>      that
> >>>>>>>
> >>>>>>>>        required
> >>>>>>>>>>         full site builds and hence no longer
> > bother
> >>>  with
> >>>>    the
> >>>>>     whole
> >>>>>>>       pre-build
> >>>>>>>>        mumbo
> >>>>>>>>>>         jumbo before checking in changes.
> > The CMS is
> >>>>    designed
> >>>>>     to
> >>>>>>      only
> >>>>>>>       build
> >>>>>>>>        pages
> >>>>>>>>>>         that were altered, and if you just
> > edit a page
> >>>  or
> >>>>    two
> >>>>>     only
> >>>>>>      those
> >>>>>>>       pages
> >>>>>>>>        and
> >>>>>>>>>>         the pages that depend on them will
> > be built.
> >>>>>>>>>>
> >>>>>>>>>>         Now that I've turned my
> > attention to
> >>>  thrift,
> >>>>    there
> >>>>>     are
> >>>>>>      several
> >>>>>>>
> >>>>>>>>        aspects
> >>>>>>>>>>         that are better off being retuned
> > based on the
> >>>
> >>>>    modest
> >>>>>     size of
> >>>>>>      the
> >>>>>>>       site.
> >>>>>>>>>>         First of all you have a sitemap url
> > that lists
> >>>  all
> >>>>    of
> >>>>>     your
> >>>>>>>>        markdown-based
> >>>>>>>>>>         pages, which would be a nonstarter
> > for a site
> >>>  like
> >>>>>>      openoffice.
> >>>>>>>       The
> >>>>>>>>>>         implications of the sitemap url are
> > that every
> >>>  page
> >>>>
> >>>>>     needs to
> >>>>>>      be
> >>>>>>>       built
> >>>>>>>>        in
> >>>>>>>>>>         memory just to generate that page,
> > which leads
> >>>  to a
> >>>>    lot
> >>>>>     of
> >>>>>>>       redundancy
> >>>>>>>>        in a
> >>>>>>>>>>         build system designed to run as
> > forked child
> >>>>    processes.
> >>>>>     We
> >>>>>>      can do
> >>>>>>>
> >>>>>>>>        better...
> >>>>>>>>>>
> >>>>>>>>>>         I've done two things to make
> > this work
> >>>  well-
> >>>>    first I
> >>>>>     made
> >>>>>>      the
> >>>>>>>>        number of
> >>>>>>>>>>         child processes "aka
> > runners"
> >>>  tunable on
> >>>>    a
> >>>>>>      per-project
> >>>>>>>       basis,
> >>>>>>>>        and since the
> >>>>>>>>>>         sitemap is going to build every page
> > anyway as
> >>>  the
> >>>>>     slowest
> >>>>>>      page to
> >>>>>>>
> >>>>>>>>        build, I
> >>>>>>>>>>         memoized the main view that builds
> > the
> >>>  markdown
> >>>>    pages
> >>>>>     for
> >>>>>>      thrift.
> >>>>>>>       The
> >>>>>>>>        best
> >>>>>>>>>>         results are when there's only
> > one runner
> >>>  so we
> >>>>    get
> >>>>>     the
> >>>>>>      full
> >>>>>>>       benefit
> >>>>>>>>        of
> >>>>>>>>>>         memoization: typical site build
> > times are
> >>>>    consistently
> >>>>>     under
> >>>>>>      2
> >>>>>>>       seconds
> >>>>>>>>        now.
> >>>>>>>>>>
> >>>>>>>>>>         You'll appreciate why I am such
> > a
> >>>  performance
> >>>>>     stickler
> >>>>>>      for the
> >>>>>>>       CMS
> >>>>>>>>        when
> >>>>>>>>>>         you start using the bookmarklet,
> > since builds
> >>>  are
> >>>>    the
> >>>>>     only
> >>>>>>>       asynchronous
> >>>>>>>>>>         part of the process from making a
> > change to a
> >>>  page
> >>>>    and
> >>>>>>      publishing
> >>>>>>>       the
> >>>>>>>>>>         results.  Ideally when the system is
> > working
> >>>  well
> >>>>    the
> >>>>>     builds
> >>>>>>>       happen
> >>>>>>>>        before
> >>>>>>>>>>         you have time to go looking for
> > them, but you
> >>>  do
> >>>>    need to
> >>>>>     be
> >>>>>>>       mindful of
> >>>>>>>>        not
> >>>>>>>>>>         publishing before the built pages
> > have been
> >>>>    committed
> >>>>>     back to
> >>>>>>      svn
> >>>>>>>       by
> >>>>>>>>>>         buildbot.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>>         On Monday, March 17, 2014 11:59
> > PM, Joe
> >>>>    Schaefer
> >>>>>>>>        <jo...@yahoo.com>
> >>>>>>>>>>         wrote:
> >>>>>>>>>>>>         Ok there's enough of an
> > idea about
> >>>  how
> >>>>    to
> >>>>>     port
> >>>>>>      the
> >>>>>>>       rest of
> >>>>>>>>        the site's
> >>>>>>>>>>>         pages over based on the porting
> > work
> >>>  I've
> >>>>>     already
> >>>>>>      done
> >>>>>>>       that
> >>>>>>>>        it's time
> >>>>>>>>>>>         for me to step back and let you
> > guys catch
> >>>  up.
> >>>>
> >>>>>     Basically
> >>>>>>      the
> >>>>>>>       idea
> >>>>>>>>        is
> >>>>>>>>>>         that while
> >>>>>>>>>>>         there is templating support in
> > the
> >>>  markdown
> >>>>    sources,
> >>>>>
> >>>>>>      it's
> >>>>>>>>        fairly limited
> >>>>>>>>>>>         compared to what nanoc offers,
> > but instead
> >>>  of
> >>>>>     writing a
> >>>>>>      lot of
> >>>>>>>
> >>>>>>>>        complex
> >>>>>>>>>>         template
> >>>>>>>>>>>         code into your sources, with the
> > cms you
> >>>  just
> >>>>    add
> >>>>>     code to
> >>>>>>
> >>>>>>>>        lib/view.pmand/or
> >>>>>>>>>>>         lib/path.pm to keep the document
> > sources
> >>>  simple
> >>>>    and
> >>>>>     just
> >>>>>>      add
> >>>>>>>       more
> >>>>>>>>>>         template
> >>>>>>>>>>>         variables.  What I just finished
> > in
> >>>  lib/view.pm
> >>>>    and
> >>>>>>>       lib/path.pm is
> >>>>>>>>>>         directory
> >>>>>>>>>>>         listing support for /docs.html
> > but it can
> >>>  be
> >>>>    carried
> >>>>>     over
> >>>>>>      to
> >>>>>>>>        similar
> >>>>>>>>>>         pages.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>>         On Monday, March 17, 2014
> > 9:16 PM, Joe
> >>>
> >>>>    Schaefer
> >>>>>>>>>>>         <jo...@yahoo.com>
> > wrote:
> >>>>>>>>>>>>>         Interesting ideas,
> > thanks.  FWIW I
> >>>
> >>>>    think
> >>>>>     that
> >>>>>>      sort
> >>>>>>>>>>>>         of thing might be best
> > supported as a
> >>>>    periodic
> >>>>>     cron
> >>>>>>>>>>>>         if we can write something
> > stable
> >>>  enough,
> >>>>    because
> >>>>>
> >>>>>>      pulling
> >>>>>>>>>>>>         stuff out of the git repo is
> > something
> >>>  the
> >>>>    CMS
> >>>>>>      isn't
> >>>>>>>       going
> >>>>>>>>>>>>         to do all that well being an
> > svn
> >>>>    application.
> >>>>>>>>>>>>
> >>>>>>>>>>>>         The CMS build results are
> > available at
> >>>>>>>>>>         http://thrift.staging.apache.org/
> >>>>>>>>>>>>         feel free to play with the
> > sources in
> >>>>>>>>        repos/asf/thrift/cms-site/trunk.
> >>>>>>>>>>>>         It's very fast, probably
> > an order
> >>>  of
> >>>>>     magnitude
> >>>>>>      faster
> >>>>>>>       than
> >>>>>>>>        your current
> >>>>>>>>>>>
> >>>>>>>>>>>>         tech.
> >>>>>>>>>>>>         Whole site builds in two
> > seconds;
> >>>  fractions
> >>>>    of a
> >>>>>
> >>>>>>      second
> >>>>>>>       for
> >>>>>>>>        typical
> >>>>>>>>>>         mods to
> >>>>>>>>>>>
> >>>>>>>>>>>>         content/ markdown pages.
> >>>>>>>>>>>>
> >>>>>>>>>>>>         The CMS bookmarklet is
> > compatible with
> >>>  the
> >>>>>     staging
> >>>>>>      site
> >>>>>>>       FWIW.
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          On Monday, March 17,
> > 2014 7:40
> >>>  PM,
> >>>>    Roger
> >>>>>     Meier
> >>>>>>>>>>>>
> > <ro...@bufferoverflow.ch> wrote:
> >>>>>>>>>>>>>>         Hi Joe & Co
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          thanks for this test
> > run with
> >>>  Apache
> >>>>    CMS!
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          What I would love to
> > see is this:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          Source file: => Web
> > Site URL:
> >>>>>>>>>>>>>          test/README.md =>
> >>>>    thrift.apache.org/test
> >>>>>>>>>>>>>          test/STATUS.md =>
> >>>>>>      thrift.apache.org/test/status
> >>>>>>>>>>>>>          test/keys/README.md
> > =>
> >>>>>>      thrift.apache.org/test/keys
> >>>>>>>>>>>>>
> > lib/<lang>/README.md =>
> >>>>>>>>        thrift.apache.org/lib/<lang>
> >>>>>>>>>>>>>
> > lib/<lang>/test/README.md
> >>>  =>
> >>>>>>>>>>>>
> >>>  thrift.apache.org/lib/<lang>/test
> >>>>>>>>>>>>>
> >>>  lib/<lang>/examples/README.md
> >>>>    =>
> >>>>>>>>>>>>>
> >>>>    thrift.apache.org/lib/<lang>/examples
> >>>>>>>>>>>>>          compiler/cpp/README.md
> > =>
> >>>>>>>       thrift.apache.org/compiler
> >>>>>>>>>>>>>          debian/README.md =>
> >>>>>     thrift.apache.org/debian
> >>>>>>>>>>>>>
> > contrib/<topic>/README.md
> >>>  =>
> >>>>>>>>        thrift.apache.org/<topic>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          just made the following
> > patch to
> >>>>    rename all
> >>>>>     file
> >>>>>>      to
> >>>>>>>       .md
> >>>>>>>>        within our
> >>>>>>>>>>>         source
> >>>>>>>>>>>>>          tree:
> >>>>>>>       https://issues.apache.org/jira/browse/THRIFT-2407
> >>>>>>>>>>>>>          ... we have *41*
> > md's within
> >>>  the
> >>>>    source
> >>>>>     tree
> >>>>>>      and
> >>>>>>>>        that's the
> >>>>>>>>>>>         place
> >>>>>>>>>>>>         where
> >>>>>>>>>>>>>          people look for
> > documentation
> >>>  first.
> >>>>    =>
> >>>>>>      simple to
> >>>>>>>>        manage
> >>>>>>>>>>>>>          Would be user friendly
> > to have
> >>>  all of
> >>>>    this
> >>>>>>      online
> >>>>>>>       with
> >>>>>>>>        each release
> >>>>>>>>>>>>>          with the URL layout
> > mentioned
> >>>  above.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          just received the
> > buildboot...
> >>>>>>>>>>>>>          Do you have kind of a
> > preview of
> >>>  your
> >>>>>     prototype?
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          all the best!
> >>>>>>>>>>>>>          -roger
> >>>>>>>>>>>>>          ;-r
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>          Quoting Jake Farrell
> >>>>>>      <jf...@apache.org>:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>>           No objections from
> > me
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>           -Jake
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>           On Mon, Mar 17,
> > 2014 at
> >>>  12:04 PM,
> >>>>    Joe
> >>>>>>      Schaefer
> >>>>>>>>>>>>>
> >>>  <jo...@yahoo.com>wrote:
> >>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>           Any objections
> > to me
> >>>  making a
> >>>>    copy
> >>>>>     of
> >>>>>>      the
> >>>>>>>       site
> >>>>>>>>>>>>>>>           tree alongside
> > it called
> >>>
> >>>>>     cms-site?
> >>>>>>      I'd
> >>>>>>>       like
> >>>>>>>>        to
> >>>>>>>>>>>>>>>           get cracking
> > on knocking
> >>>  up
> >>>>    the
> >>>>>>      supporting
> >>>>>>>       perl
> >>>>>>>>>>>>>>>           for this so we
> > can
> >>>  continue
> >>>>    to
> >>>>>>      brainstorm...
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         On Sunday,
> > March 16,
> >>>  2014
> >>>>    1:53
> >>>>>     PM,
> >>>>>>      Joe
> >>>>>>>       Schaefer
> >>>>>>>>>>>>>
> > <jo...@yahoo.com>
> >>>>>>>>>>>>>>>           wrote:
> >>>>>>>>>>>>>>>>>         On
> > Sunday, March
> >>>  16,
> >>>>    2014
> >>>>>     1:40
> >>>>>>      PM,
> >>>>>>>       Jake
> >>>>>>>>        Farrell
> >>>>>>>>>>>>>
> > <jf...@apache.org>
> >>>>>>>>>>>>>>>>         wrote:
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         Hey Joe
> >>>>>>>>>>>>>>>>>         Thanks
> > for
> >>>  reaching
> >>>>    out, we
> >>>>>     chose
> >>>>>>      to
> >>>>>>>       go
> >>>>>>>>        with a site
> >>>>>>>>>>>>         generator
> >>>>>>>>>>>>>          over the
> >>>>>>>>>>>>>>>>>         Apache
> > CMS due to
> >>>  it
> >>>>>     initially
> >>>>>>      not
> >>>>>>>       meeting
> >>>>>>>>        all of
> >>>>>>>>>>>         our
> >>>>>>>>>>>>         needs.
> >>>>>>>>>>>>>          Our current
> >>>>>>>>>>>>>>>>>         needs
> > for the site
> >>>  are
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         -
> > Markdown to html
> >>>
> >>>>>     conversion
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         That
> > one's easy-
> >>>  its
> >>>>    the
> >>>>>     default
> >>>>>>      for
> >>>>>>>       the
> >>>>>>>>        cms.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         - Global
> >>>>    variables/config
> >>>>>     usable
> >>>>>>>       throughout
> >>>>>>>>        in a
> >>>>>>>>>>>         template
> >>>>>>>>>>>>
> >>>>>>>>>>>>>          based layout
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         Easy too-
> > just create
> >>>  a
> >>>>    perl
> >>>>>     hash
> >>>>>>>       somewhere and
> >>>>>>>>        make it
> >>>>>>>>>>>>         available
> >>>>>>>>>>>>>          to
> >>>>>>>>>>>>>>>           your views.
> >>>>>>>>>>>>>>>>         Code your
> > views to
> >>>  pass
> >>>>    that
> >>>>>     hash
> >>>>>>      along to
> >>>>>>>       your
> >>>>>>>>>>>         templates
> >>>>>>>>>>>>         and you
> >>>>>>>>>>>>>          are
> >>>>>>>>>>>>>>>           all set.
> >>>>>>>>>>>>>>>>         Note if your
> > hash
> >>>  contains
> >>>>>     objects
> >>>>>>      you can
> >>>>>>>       make
> >>>>>>>>        method
> >>>>>>>>>>>         calls
> >>>>>>>>>>>>         on
> >>>>>>>>>>>>>          them in
> >>>>>>>>>>>>>>>           your
> >>>>>>>>>>>>>>>>         templates.
> > Note:
> >>>  while I
> >>>>>>      wouldn't
> >>>>>>>>        recommend this in
> >>>>>>>>>>>
> >>>>>>>>>>>>         general,
> >>>>>>>>>>>>>          for smaller
> >>>>>>>>>>>>>>>>         projects
> > like thrift
> >>>  that
> >>>>    prefer
> >>>>>
> >>>>>>>       convenience
> >>>>>>>>        over
> >>>>>>>>>>>         separation
> >>>>>>>>>>>>         of
> >>>>>>>>>>>>>          concerns
> >>>>>>>>>>>>>>>           you can
> >>>>>>>>>>>>>>>>         have the
> > django
> >>>  template
> >>>>    engine
> >>>>>     do a
> >>>>>>      pass
> >>>>>>>       over
> >>>>>>>>        your
> >>>>>>>>>>>         markdown
> >>>>>>>>>>>>>          before
> >>>>>>>>>>>>>>>           passing it
> >>>>>>>>>>>>>>>>         along to
> > your actual
> >>>>    template
> >>>>>     page,
> >>>>>>      just
> >>>>>>>       as is
> >>>>>>>>        seemingly
> >>>>>>>>>>>
> >>>>>>>>>>>>         common to
> >>>>>>>>>>>>>          other
> >>>>>>>>>>>>>>>           popular
> >>>>>>>>>>>>>>>>         site
> > generation
> >>>  software.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         - Syntax
> >>>  highlighting
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         Comes with
> >>>  python's
> >>>>    markdown
> >>>>>
> >>>>>>      support,
> >>>>>>>       but
> >>>>>>>>        some
> >>>>>>>>>>>         people
> >>>>>>>>>>>>         prefer
> >>>>>>>>>>>>>          the look of
> >>>>>>>>>>>>>>>>         javascript
> >>>  highlighters.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         - Easily
> > include
> >>>  code
> >>>>>     snippets
> >>>>>>      from
> >>>>>>>       our
> >>>>>>>>        source code
> >>>>>>>>>>>         base
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         Statically I
> > hope.  No
> >>>  idea
> >>>>    how
> >>>>>     to
> >>>>>>      pull
> >>>>>>>>        snippets out of
> >>>>>>>>>>>         your
> >>>>>>>>>>>>         git
> >>>>>>>>>>>>>          repo
> >>>>>>>>>>>>>>>           via the
> >>>>>>>>>>>>>>>>         cms.
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         -
> > Ability to
> >>>  locally
> >>>>    test
> >>>>>     before
> >>>>>>>       committing
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>         Belt and
> > suspenders
> >>>  with
> >>>>    the
> >>>>>     cms- you
> >>>>>>      can
> >>>>>>>       build
> >>>>>>>>        your
> >>>>>>>>>>>         changes
> >>>>>>>>>>>>>          before
> >>>>>>>>>>>>>>>           committing
> >>>>>>>>>>>>>>>>         with the
> > build
> >>>  scripts,
> >>>>    browse
> >>>>>     your
> >>>>>>>       changes
> >>>>>>>>        before
> >>>>>>>>>>>         committing
> >>>>>>>>>>>>         via
> >>>>>>>>>>>>>          the cms
> >>>>>>>>>>>>>>>>         webgui, or
> > simply
> >>>  commit
> >>>>    your
> >>>>>     changes
> >>>>>>      and
> >>>>>>>       view
> >>>>>>>>        the
> >>>>>>>>>>>         staging
> >>>>>>>>>>>>         site
> >>>>>>>>>>>>>          prior to
> >>>>>>>>>>>>>>>           live
> >>>>>>>>>>>>>>>>         publication
> > (which is
> >>>  a
> >>>>    separate
> >>>>>
> >>>>>>      step).
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         -Jake
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>         On Sun,
> > Mar 16,
> >>>  2014 at
> >>>>
> >>>>>     12:44 PM,
> >>>>>>      Joe
> >>>>>>>>        Schaefer
> >>>>>>>>>>>>>>>>
> >>>>>     <jo...@yahoo.com>wrote:
> >>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>         As
> > it so
> >>>  happens I
> >>>>    am
> >>>>>>      interested
> >>>>>>>       in
> >>>>>>>>        working on
> >>>>>>>>>>>>         supporting
> >>>>>>>>>>>>>>>>>>
> > thrift's
> >>>  use
> >>>>    case as
> >>>>>     a
> >>>>>>>       potential
> >>>>>>>>        user of
> >>>>>>>>>>>         the
> >>>>>>>>>>>>         Apache
> >>>>>>>>>>>>>          CMS.
> >>>>>>>>>>>>>>>>>>
> > While the CMS
> >>>  works
> >>>>    well
> >>>>>     for
> >>>>>>>       massive
> >>>>>>>>        projects
> >>>>>>>>>>>         there
> >>>>>>>>>>>>         are
> >>>>>>>>>>>>>>>>>>
> > things it
> >>>  could do
> >>>>>     better at
> >>>>>>>       supporting
> >>>>>>>>        for
> >>>>>>>>>>>         more
> >>>>>>>>>>>>         moderate
> >>>>>>>>>>>>>>>>>>
> > sized sites
> >>>  like
> >>>>>>      thrift's.
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>
> > I'd
> >>>  therefore
> >>>>    like
> >>>>>     to
> >>>>>>      engage
> >>>>>>>       you
> >>>>>>>>        folks in a
> >>>>>>>>>>>
> >>>>>>>>>>>>>          brainstorming session
> >>>>>>>>>>>>>>>>>>
> > about what
> >>>  sorts of
> >>>>
> >>>>>     features
> >>>>>>      you
> >>>>>>>       want
> >>>>>>>>        for your
> >>>>>>>>>>>         site
> >>>>>>>>>>>>         and
> >>>>>>>>>>>>>          to find
> >>>>>>>>>>>>>>>>>>
> > simple ways of
> >>>
> >>>>>     supporting
> >>>>>>      those
> >>>>>>>>        features for
> >>>>>>>>>>>         you.
> >>>>>>>>>>>>>>>>>>
> >>>>>>>>>>>>>>>>>>
> > Thanks.
> >>>>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
May I suggest a script that creates files in content/
containing a single line

[snippet:path=...]

(with no 'lang' argument) that lets the CMS pull raw content from thrift.git
and add it directly to the built pages.  That way you only need to run the script that generates these files when a path changes in your thrift.git repo.

You can commit directly to the cms svn tree or via the webgui which does the same thing.


> On Saturday, March 22, 2014 4:20 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> > I still see some issues and still miss to feature mentioned.
> Now we have nonoc.ws and I'm able to hack this a bit.
> 
> We had no real big issue, the thing I missed was the code snippet thing
> and this is in on nanoc.ws and now also on Apache CMS.
> 
> The thing we really need is the documentation located within source code 
> integrated on the web site.
> 
> most hosting platforms do render README.md and that's why lot of doc 
> will stay within the code and we should benefit as well by rendering 
> that to the web site and enhance the documentation very easily.
> 
> I would like to render the 41 README.md files to with the following
> pattern, that's a must have before switching to another CMS.
> 
> test/README.md => thrift.apache.org/test
> test/STATUS.md => thrift.apache.org/test/status
> test/keys/README.md => thrift.apache.org/test/keys
> lib/<lang>/README.md => thrift.apache.org/lib/<lang>
> lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
> lib/<lang>/examples/README.md => 
> thrift.apache.org/lib/<lang>/examples
> compiler/cpp/README.md => thrift.apache.org/compiler
> debian/README.md => thrift.apache.org/debian
> contrib/<topic>/README.md => thrift.apache.org/<topic>
> 
> CPP tutorial seems to be broken on staging.
> 
> Do you commit to https://svn.apache.org/repos/asf/thrift/cms-site/trunk
> or is it web gui only?
> 
> How do you generate the site on your local machine?
> 
> 
> Should I reactivate my perl or do we stay with ruby?
> Committers and contributors, what do you think?
> 
> 
> all the best
> -roger
> 
> 
> On 22.03.2014 18:07, Joe Schaefer wrote:
>> 
>> 
>>  Ok I've now done the basic necessities involved in porting
>>  the site over.  Links have been adjusted, templates ported, files created,
>>  snippet feature activated.  At this point I'm happy to declare
>>  victory and migrate the thrift live site over, as anything broken that
>>  still remains can be dealt with on a per-page basis with the bookmarklet.
>> 
>> 
>> 
>>>  On Thursday, March 20, 2014 11:19 AM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>>>  Modulo some bizarre content truncation out of git-wip-us.apache.org
>>>  the snippet support is now active. At this point I think all the build
>>>  support you need in this project to support every type of brainstorming
>>>  activity we've discussed is now there, so it's just up to you 
> guys to
>>>  now familiarize yourselves with the build technology and how to apply
>>>  it to your needs.  The site builds with snippet support are running 
> around
>>>  10 seconds, which is to be expected with the network interactions 
> involved.
>>> 
>>>  I'm always willing to answer any questions that come up in the 
> interim,
>>>  but I wish you guys the best of luck in the remaining porting work to 
> be done.
>>>  All I see really are some links that need to have the trailing slashes 
> removed
>>>  and whatever <%= %> template constructs that remain need to be 
> ported to
>>>  django.  So it should be smooth sailing, but as I said if you hit any 
> snags
>>>  holler.  I'd really like to see the live site tech switched over to 
> the cms
>>>  stuff before Apachecon ends in early April, hint hint.
>>> 
>>> 
>>> 
>>> 
>>> 
>>>>    On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>>>  <jo...@yahoo.com> wrote:
>>>>    > While I don't yet know the url magic to support branches 
> and tags
>>>  in git,
>>>>    I can say that the snippet support is ready to play with.  I 
> suggest just
>>>>    focusing on the /index.md page first to see how it works in 
> practice
>>>  because
>>>>    once it's fully enabled the build will break until all the 
> snippet
>>>  sources
>>>>    have been altered to conform with the new style.
>>>> 
>>>>    To turn it on for index.md testing, there are a couple of things 
> that need
>>>  to
>>>>    happen. First the [snippet:...] marker should be edited to be
>>>  [XXXsnippet:...]
>>>>    to enable testing without breaking the build.  Second each marker 
> contains
>>>  a
>>>>    "token" argument instead of line numbers for more 
> stability under
>>> 
>>>>    edits to the source code.  The token argument is an arbitrary 
> string that
>>>  is
>>>>    used to denote the boundaries of the snippet within the source 
> code.
>>>>     ASF::Value::Snippet will pull out the lines from the source file 
> between
>>>  the
>>>>    lines that contain the token argument and format them as a code 
> snippet
>>>  embedded
>>>>    into markdown. To get started I'll copy over the code 
> highlighting css
>>>  from
>>>>    www.apache.org but note that this is all based on python pygments 
> and there
>>>  are
>>>>    a variety of online css files to choose from if this one is not 
> to the
>>>>    group's liking.
>>>> 
>>>> 
>>>> 
>>>>>     On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer
>>>>    <jo...@yahoo.com> wrote:
>>>>>     > Sorry I need to clarify with an example: look at
>>>>>     http://thrift.staging.apache.org/tutorial/ versus
>>>>>     http://thrift.staging.apache.org/tutorial.html.  The
>>>>>     former is generated from content/tutorial/index.html
>>>>>     and the latter from content/tutorial.md.  The latter file
>>>>>     needs to be removed from the tree now that it's content
>>>>>     has been ported to content/tutorial/index.html.  This
>>>>>     uses django template inheritance to maintain simplicity.
>>>>> 
>>>>>     Other directories that follow a similar pattern should
>>>>>     also be ported in the same fashion.
>>>>> 
>>>>> 
>>>>> 
>>>>>>      On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer
>>>>>     <jo...@yahoo.com> wrote:
>>>>>>      > If someone's looking for a way to help with 
> the porting
>>>>>>      effort, consider tackling the creation of an index.html
>>>>>>      page in each subdir of the content/ tree (other than 
> the
>>>>>>      base which has an /index.md).  The contents of the file
>>>>>>      should be just
>>>>>> 
>>>>>>      {% include 'default' %}
>>>>>> 
>>>>>>      (see the docs dir for an example page that can be 
> copied)
>>>>>>      and the build system will take care of generating the 
> page
>>>>>>      in a consistent fashion with the rest of the site.  
> Once
>>>>>>      that is done there are a lot of pages that function 
> like
>>>>>>      index pages but are written in markdown that can be 
> deleted,
>>>>>>      like docs.md and its ilk.  Nanoc transforms that file 
> into
>>>>>>      /docs/index.html but that's kinda crufty and not 
> supported
>>>>>>      by the CMS, which only lets you alter file extensions 
> not paths.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>       On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer
>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>       > I just pencilled in snippet preprocessing 
> support into
>>>>>>>       the thrift builds.  Once Jake and I have settled 
> on the
>>>>>>>       feature set of ASF::Value::Snippet, and we have 
> ported
>>>>>>>       the snippet calling text within the markdown pages
>>>>>>>       to the new format, things will just work (knock on 
> wood).
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>        On Wednesday, March 19, 2014 6:48 AM, Joseph 
> Schaefer
>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>        > Sure I understand that need.  If 
> there's a way
>>>  of
>>>>>     pulling the
>>>>>> 
>>>>>>>       document
>>>>>>>>        sources directly from the web I can parse the 
> content
>>>  to
>>>>    look for
>>>>> 
>>>>>>      snippet
>>>>>>>>        markers and make those available to the 
> template
>>>  system.
>>>>>     That's
>>>>>>      pretty
>>>>>>>       much
>>>>>>>>        how www.apache.org is generated.
>>>>>>>> 
>>>>>>>>        Sent from my iPhone
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>         On Mar 19, 2014, at 5:28 AM, Henrique 
> Mendonça
>>>>>>>       <he...@apache.org>
>>>>>>>>        wrote:
>>>>>>>>> 
>>>>>>>>>         Hi Joe,
>>>>>>>>> 
>>>>>>>>>         Thanks for your effort. I just wanted to 
> add that
>>>  the
>>>>    code
>>>>>>      snippets
>>>>>>>       are a
>>>>>>>>>         crucial feature for this project, which 
> has way
>>>  more
>>>>    target
>>>>>>      languages
>>>>>>>       than
>>>>>>>>>         active contributors. In our case, 
> reducing manual
>>>>>     maintenance
>>>>>>      costs is
>>>>>>>       much
>>>>>>>>>         more important than the total site build 
> time.
>>>  Perhaps
>>>>    we
>>>>>     can
>>>>>>      also
>>>>>>>       solve
>>>>>>>>>         this in the CMS, though.
>>>>>>>>> 
>>>>>>>>>         - Henrique
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>         On 19 March 2014 03:17, Joe Schaefer
>>>>>>>       <jo...@yahoo.com>
>>>>>>>>        wrote:
>>>>>>>>>> 
>>>>>>>>>>         A couple more thoughts regarding the
>>>  background on
>>>>    the
>>>>>     CMS...
>>>>>>>>>>         the bulk of the focus of the CMS up 
> until now
>>>  has
>>>>    been
>>>>>     to
>>>>>>>>>>         support really big sites like maven 
> and
>>>  openoffice,
>>>>    both
>>>>>     of
>>>>>>>>>>         which have websites well over 5GB 
> worth of
>>>  text
>>>>    files.
>>>>>     The
>>>>>>>>>>         build system was hollowed out and 
> revamped to
>>>>    support
>>>>>>      external
>>>>>>>>>>         builds in other programming 
> languages, as well
>>>  as
>>>>>     scaling up
>>>>>>>>>>         the perl builds to provide about 8 
> child
>>>  processes
>>>>    that
>>>>>     build
>>>>>>>>>>         the site in parallel by default.  
> Full site
>>>  build
>>>>    times
>>>>>     for
>>>>>>>>>>         openoffice went from over 30 minutes 
> to
>>>  between 5
>>>>    to 10
>>>>>>      minutes
>>>>>>>>>>         depending on disk activity, which 
> made
>>>>    experimentation
>>>>>     with
>>>>>>>       site-wide
>>>>>>>>>>         changes feasible on a reasonable 
> timeframe.
>>>  At
>>>>    first
>>>>>     the
>>>>>>      project
>>>>>>>       was
>>>>>>>>        in
>>>>>>>>>>         the habit of running the builds 
> locally before
>>> 
>>>>    checking
>>>>>     in
>>>>>>      their
>>>>>>>>        changes
>>>>>>>>>>         because the delay in feedback 
> post-commit was
>>>>>     unreasonable,
>>>>>>      but
>>>>>>>       with
>>>>>>>>        smart
>>>>>>>>>>         use of SSI the were able to cut down 
> on the
>>>  number
>>>>    of
>>>>>     changes
>>>>>>      that
>>>>>>> 
>>>>>>>>        required
>>>>>>>>>>         full site builds and hence no longer 
> bother
>>>  with
>>>>    the
>>>>>     whole
>>>>>>>       pre-build
>>>>>>>>        mumbo
>>>>>>>>>>         jumbo before checking in changes.  
> The CMS is
>>>>    designed
>>>>>     to
>>>>>>      only
>>>>>>>       build
>>>>>>>>        pages
>>>>>>>>>>         that were altered, and if you just 
> edit a page
>>>  or
>>>>    two
>>>>>     only
>>>>>>      those
>>>>>>>       pages
>>>>>>>>        and
>>>>>>>>>>         the pages that depend on them will 
> be built.
>>>>>>>>>> 
>>>>>>>>>>         Now that I've turned my 
> attention to
>>>  thrift,
>>>>    there
>>>>>     are
>>>>>>      several
>>>>>>> 
>>>>>>>>        aspects
>>>>>>>>>>         that are better off being retuned 
> based on the
>>> 
>>>>    modest
>>>>>     size of
>>>>>>      the
>>>>>>>       site.
>>>>>>>>>>         First of all you have a sitemap url 
> that lists
>>>  all
>>>>    of
>>>>>     your
>>>>>>>>        markdown-based
>>>>>>>>>>         pages, which would be a nonstarter 
> for a site
>>>  like
>>>>>>      openoffice.
>>>>>>>       The
>>>>>>>>>>         implications of the sitemap url are 
> that every
>>>  page
>>>> 
>>>>>     needs to
>>>>>>      be
>>>>>>>       built
>>>>>>>>        in
>>>>>>>>>>         memory just to generate that page, 
> which leads
>>>  to a
>>>>    lot
>>>>>     of
>>>>>>>       redundancy
>>>>>>>>        in a
>>>>>>>>>>         build system designed to run as 
> forked child
>>>>    processes.
>>>>>     We
>>>>>>      can do
>>>>>>> 
>>>>>>>>        better...
>>>>>>>>>> 
>>>>>>>>>>         I've done two things to make 
> this work
>>>  well-
>>>>    first I
>>>>>     made
>>>>>>      the
>>>>>>>>        number of
>>>>>>>>>>         child processes "aka 
> runners"
>>>  tunable on
>>>>    a
>>>>>>      per-project
>>>>>>>       basis,
>>>>>>>>        and since the
>>>>>>>>>>         sitemap is going to build every page 
> anyway as
>>>  the
>>>>>     slowest
>>>>>>      page to
>>>>>>> 
>>>>>>>>        build, I
>>>>>>>>>>         memoized the main view that builds 
> the
>>>  markdown
>>>>    pages
>>>>>     for
>>>>>>      thrift.
>>>>>>>       The
>>>>>>>>        best
>>>>>>>>>>         results are when there's only 
> one runner
>>>  so we
>>>>    get
>>>>>     the
>>>>>>      full
>>>>>>>       benefit
>>>>>>>>        of
>>>>>>>>>>         memoization: typical site build 
> times are
>>>>    consistently
>>>>>     under
>>>>>>      2
>>>>>>>       seconds
>>>>>>>>        now.
>>>>>>>>>> 
>>>>>>>>>>         You'll appreciate why I am such 
> a
>>>  performance
>>>>>     stickler
>>>>>>      for the
>>>>>>>       CMS
>>>>>>>>        when
>>>>>>>>>>         you start using the bookmarklet, 
> since builds
>>>  are
>>>>    the
>>>>>     only
>>>>>>>       asynchronous
>>>>>>>>>>         part of the process from making a 
> change to a
>>>  page
>>>>    and
>>>>>>      publishing
>>>>>>>       the
>>>>>>>>>>         results.  Ideally when the system is 
> working
>>>  well
>>>>    the
>>>>>     builds
>>>>>>>       happen
>>>>>>>>        before
>>>>>>>>>>         you have time to go looking for 
> them, but you
>>>  do
>>>>    need to
>>>>>     be
>>>>>>>       mindful of
>>>>>>>>        not
>>>>>>>>>>         publishing before the built pages 
> have been
>>>>    committed
>>>>>     back to
>>>>>>      svn
>>>>>>>       by
>>>>>>>>>>         buildbot.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>         On Monday, March 17, 2014 11:59 
> PM, Joe
>>>>    Schaefer
>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>>>         wrote:
>>>>>>>>>>>>         Ok there's enough of an 
> idea about
>>>  how
>>>>    to
>>>>>     port
>>>>>>      the
>>>>>>>       rest of
>>>>>>>>        the site's
>>>>>>>>>>>         pages over based on the porting 
> work
>>>  I've
>>>>>     already
>>>>>>      done
>>>>>>>       that
>>>>>>>>        it's time
>>>>>>>>>>>         for me to step back and let you 
> guys catch
>>>  up.
>>>> 
>>>>>     Basically
>>>>>>      the
>>>>>>>       idea
>>>>>>>>        is
>>>>>>>>>>         that while
>>>>>>>>>>>         there is templating support in 
> the
>>>  markdown
>>>>    sources,
>>>>> 
>>>>>>      it's
>>>>>>>>        fairly limited
>>>>>>>>>>>         compared to what nanoc offers, 
> but instead
>>>  of
>>>>>     writing a
>>>>>>      lot of
>>>>>>> 
>>>>>>>>        complex
>>>>>>>>>>         template
>>>>>>>>>>>         code into your sources, with the 
> cms you
>>>  just
>>>>    add
>>>>>     code to
>>>>>> 
>>>>>>>>        lib/view.pmand/or
>>>>>>>>>>>         lib/path.pm to keep the document 
> sources
>>>  simple
>>>>    and
>>>>>     just
>>>>>>      add
>>>>>>>       more
>>>>>>>>>>         template
>>>>>>>>>>>         variables.  What I just finished 
> in
>>>  lib/view.pm
>>>>    and
>>>>>>>       lib/path.pm is
>>>>>>>>>>         directory
>>>>>>>>>>>         listing support for /docs.html 
> but it can
>>>  be
>>>>    carried
>>>>>     over
>>>>>>      to
>>>>>>>>        similar
>>>>>>>>>>         pages.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>         On Monday, March 17, 2014 
> 9:16 PM, Joe
>>> 
>>>>    Schaefer
>>>>>>>>>>>         <jo...@yahoo.com> 
> wrote:
>>>>>>>>>>>>>         Interesting ideas, 
> thanks.  FWIW I
>>> 
>>>>    think
>>>>>     that
>>>>>>      sort
>>>>>>>>>>>>         of thing might be best 
> supported as a
>>>>    periodic
>>>>>     cron
>>>>>>>>>>>>         if we can write something 
> stable
>>>  enough,
>>>>    because
>>>>> 
>>>>>>      pulling
>>>>>>>>>>>>         stuff out of the git repo is 
> something
>>>  the
>>>>    CMS
>>>>>>      isn't
>>>>>>>       going
>>>>>>>>>>>>         to do all that well being an 
> svn
>>>>    application.
>>>>>>>>>>>> 
>>>>>>>>>>>>         The CMS build results are 
> available at
>>>>>>>>>>         http://thrift.staging.apache.org/
>>>>>>>>>>>>         feel free to play with the 
> sources in
>>>>>>>>        repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>>         It's very fast, probably 
> an order
>>>  of
>>>>>     magnitude
>>>>>>      faster
>>>>>>>       than
>>>>>>>>        your current
>>>>>>>>>>> 
>>>>>>>>>>>>         tech.
>>>>>>>>>>>>         Whole site builds in two 
> seconds;
>>>  fractions
>>>>    of a
>>>>> 
>>>>>>      second
>>>>>>>       for
>>>>>>>>        typical
>>>>>>>>>>         mods to
>>>>>>>>>>> 
>>>>>>>>>>>>         content/ markdown pages.
>>>>>>>>>>>> 
>>>>>>>>>>>>         The CMS bookmarklet is 
> compatible with
>>>  the
>>>>>     staging
>>>>>>      site
>>>>>>>       FWIW.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>          On Monday, March 17, 
> 2014 7:40
>>>  PM,
>>>>    Roger
>>>>>     Meier
>>>>>>>>>>>>         
> <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>>         Hi Joe & Co
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          thanks for this test 
> run with
>>>  Apache
>>>>    CMS!
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          What I would love to 
> see is this:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          Source file: => Web 
> Site URL:
>>>>>>>>>>>>>          test/README.md =>
>>>>    thrift.apache.org/test
>>>>>>>>>>>>>          test/STATUS.md =>
>>>>>>      thrift.apache.org/test/status
>>>>>>>>>>>>>          test/keys/README.md 
> =>
>>>>>>      thrift.apache.org/test/keys
>>>>>>>>>>>>>         
> lib/<lang>/README.md =>
>>>>>>>>        thrift.apache.org/lib/<lang>
>>>>>>>>>>>>>         
> lib/<lang>/test/README.md
>>>  =>
>>>>>>>>>>>> 
>>>  thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>>> 
>>>  lib/<lang>/examples/README.md
>>>>    =>
>>>>>>>>>>>>> 
>>>>    thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>>>          compiler/cpp/README.md 
> =>
>>>>>>>       thrift.apache.org/compiler
>>>>>>>>>>>>>          debian/README.md =>
>>>>>     thrift.apache.org/debian
>>>>>>>>>>>>>         
> contrib/<topic>/README.md
>>>  =>
>>>>>>>>        thrift.apache.org/<topic>
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          just made the following 
> patch to
>>>>    rename all
>>>>>     file
>>>>>>      to
>>>>>>>       .md
>>>>>>>>        within our
>>>>>>>>>>>         source
>>>>>>>>>>>>>          tree:
>>>>>>>       https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>>          ... we have *41* 
> md's within
>>>  the
>>>>    source
>>>>>     tree
>>>>>>      and
>>>>>>>>        that's the
>>>>>>>>>>>         place
>>>>>>>>>>>>         where
>>>>>>>>>>>>>          people look for 
> documentation
>>>  first.
>>>>    =>
>>>>>>      simple to
>>>>>>>>        manage
>>>>>>>>>>>>>          Would be user friendly 
> to have
>>>  all of
>>>>    this
>>>>>>      online
>>>>>>>       with
>>>>>>>>        each release
>>>>>>>>>>>>>          with the URL layout 
> mentioned
>>>  above.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          just received the 
> buildboot...
>>>>>>>>>>>>>          Do you have kind of a 
> preview of
>>>  your
>>>>>     prototype?
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          all the best!
>>>>>>>>>>>>>          -roger
>>>>>>>>>>>>>          ;-r
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>          Quoting Jake Farrell
>>>>>>      <jf...@apache.org>:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           No objections from 
> me
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           -Jake
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>           On Mon, Mar 17, 
> 2014 at
>>>  12:04 PM,
>>>>    Joe
>>>>>>      Schaefer
>>>>>>>>>>>>> 
>>>  <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>           Any objections 
> to me
>>>  making a
>>>>    copy
>>>>>     of
>>>>>>      the
>>>>>>>       site
>>>>>>>>>>>>>>>           tree alongside 
> it called
>>> 
>>>>>     cms-site?
>>>>>>      I'd
>>>>>>>       like
>>>>>>>>        to
>>>>>>>>>>>>>>>           get cracking 
> on knocking
>>>  up
>>>>    the
>>>>>>      supporting
>>>>>>>       perl
>>>>>>>>>>>>>>>           for this so we 
> can
>>>  continue
>>>>    to
>>>>>>      brainstorm...
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         On Sunday, 
> March 16,
>>>  2014
>>>>    1:53
>>>>>     PM,
>>>>>>      Joe
>>>>>>>       Schaefer
>>>>>>>>>>>>>         
> <jo...@yahoo.com>
>>>>>>>>>>>>>>>           wrote:
>>>>>>>>>>>>>>>>>         On 
> Sunday, March
>>>  16,
>>>>    2014
>>>>>     1:40
>>>>>>      PM,
>>>>>>>       Jake
>>>>>>>>        Farrell
>>>>>>>>>>>>>         
> <jf...@apache.org>
>>>>>>>>>>>>>>>>         wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         Hey Joe
>>>>>>>>>>>>>>>>>         Thanks 
> for
>>>  reaching
>>>>    out, we
>>>>>     chose
>>>>>>      to
>>>>>>>       go
>>>>>>>>        with a site
>>>>>>>>>>>>         generator
>>>>>>>>>>>>>          over the
>>>>>>>>>>>>>>>>>         Apache 
> CMS due to
>>>  it
>>>>>     initially
>>>>>>      not
>>>>>>>       meeting
>>>>>>>>        all of
>>>>>>>>>>>         our
>>>>>>>>>>>>         needs.
>>>>>>>>>>>>>          Our current
>>>>>>>>>>>>>>>>>         needs 
> for the site
>>>  are
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         - 
> Markdown to html
>>> 
>>>>>     conversion
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         That 
> one's easy-
>>>  its
>>>>    the
>>>>>     default
>>>>>>      for
>>>>>>>       the
>>>>>>>>        cms.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         - Global
>>>>    variables/config
>>>>>     usable
>>>>>>>       throughout
>>>>>>>>        in a
>>>>>>>>>>>         template
>>>>>>>>>>>> 
>>>>>>>>>>>>>          based layout
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         Easy too- 
> just create
>>>  a
>>>>    perl
>>>>>     hash
>>>>>>>       somewhere and
>>>>>>>>        make it
>>>>>>>>>>>>         available
>>>>>>>>>>>>>          to
>>>>>>>>>>>>>>>           your views.
>>>>>>>>>>>>>>>>         Code your 
> views to
>>>  pass
>>>>    that
>>>>>     hash
>>>>>>      along to
>>>>>>>       your
>>>>>>>>>>>         templates
>>>>>>>>>>>>         and you
>>>>>>>>>>>>>          are
>>>>>>>>>>>>>>>           all set.
>>>>>>>>>>>>>>>>         Note if your 
> hash
>>>  contains
>>>>>     objects
>>>>>>      you can
>>>>>>>       make
>>>>>>>>        method
>>>>>>>>>>>         calls
>>>>>>>>>>>>         on
>>>>>>>>>>>>>          them in
>>>>>>>>>>>>>>>           your
>>>>>>>>>>>>>>>>         templates.  
> Note:
>>>  while I
>>>>>>      wouldn't
>>>>>>>>        recommend this in
>>>>>>>>>>> 
>>>>>>>>>>>>         general,
>>>>>>>>>>>>>          for smaller
>>>>>>>>>>>>>>>>         projects 
> like thrift
>>>  that
>>>>    prefer
>>>>> 
>>>>>>>       convenience
>>>>>>>>        over
>>>>>>>>>>>         separation
>>>>>>>>>>>>         of
>>>>>>>>>>>>>          concerns
>>>>>>>>>>>>>>>           you can
>>>>>>>>>>>>>>>>         have the 
> django
>>>  template
>>>>    engine
>>>>>     do a
>>>>>>      pass
>>>>>>>       over
>>>>>>>>        your
>>>>>>>>>>>         markdown
>>>>>>>>>>>>>          before
>>>>>>>>>>>>>>>           passing it
>>>>>>>>>>>>>>>>         along to 
> your actual
>>>>    template
>>>>>     page,
>>>>>>      just
>>>>>>>       as is
>>>>>>>>        seemingly
>>>>>>>>>>> 
>>>>>>>>>>>>         common to
>>>>>>>>>>>>>          other
>>>>>>>>>>>>>>>           popular
>>>>>>>>>>>>>>>>         site 
> generation
>>>  software.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         - Syntax
>>>  highlighting
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         Comes with
>>>  python's
>>>>    markdown
>>>>> 
>>>>>>      support,
>>>>>>>       but
>>>>>>>>        some
>>>>>>>>>>>         people
>>>>>>>>>>>>         prefer
>>>>>>>>>>>>>          the look of
>>>>>>>>>>>>>>>>         javascript
>>>  highlighters.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         - Easily 
> include
>>>  code
>>>>>     snippets
>>>>>>      from
>>>>>>>       our
>>>>>>>>        source code
>>>>>>>>>>>         base
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         Statically I 
> hope.  No
>>>  idea
>>>>    how
>>>>>     to
>>>>>>      pull
>>>>>>>>        snippets out of
>>>>>>>>>>>         your
>>>>>>>>>>>>         git
>>>>>>>>>>>>>          repo
>>>>>>>>>>>>>>>           via the
>>>>>>>>>>>>>>>>         cms.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         - 
> Ability to
>>>  locally
>>>>    test
>>>>>     before
>>>>>>>       committing
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>         Belt and 
> suspenders
>>>  with
>>>>    the
>>>>>     cms- you
>>>>>>      can
>>>>>>>       build
>>>>>>>>        your
>>>>>>>>>>>         changes
>>>>>>>>>>>>>          before
>>>>>>>>>>>>>>>           committing
>>>>>>>>>>>>>>>>         with the 
> build
>>>  scripts,
>>>>    browse
>>>>>     your
>>>>>>>       changes
>>>>>>>>        before
>>>>>>>>>>>         committing
>>>>>>>>>>>>         via
>>>>>>>>>>>>>          the cms
>>>>>>>>>>>>>>>>         webgui, or 
> simply
>>>  commit
>>>>    your
>>>>>     changes
>>>>>>      and
>>>>>>>       view
>>>>>>>>        the
>>>>>>>>>>>         staging
>>>>>>>>>>>>         site
>>>>>>>>>>>>>          prior to
>>>>>>>>>>>>>>>           live
>>>>>>>>>>>>>>>>         publication 
> (which is
>>>  a
>>>>    separate
>>>>> 
>>>>>>      step).
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         -Jake
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>         On Sun, 
> Mar 16,
>>>  2014 at
>>>> 
>>>>>     12:44 PM,
>>>>>>      Joe
>>>>>>>>        Schaefer
>>>>>>>>>>>>>>>> 
>>>>>     <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>         As 
> it so
>>>  happens I
>>>>    am
>>>>>>      interested
>>>>>>>       in
>>>>>>>>        working on
>>>>>>>>>>>>         supporting
>>>>>>>>>>>>>>>>>>         
> thrift's
>>>  use
>>>>    case as
>>>>>     a
>>>>>>>       potential
>>>>>>>>        user of
>>>>>>>>>>>         the
>>>>>>>>>>>>         Apache
>>>>>>>>>>>>>          CMS.
>>>>>>>>>>>>>>>>>>         
> While the CMS
>>>  works
>>>>    well
>>>>>     for
>>>>>>>       massive
>>>>>>>>        projects
>>>>>>>>>>>         there
>>>>>>>>>>>>         are
>>>>>>>>>>>>>>>>>>         
> things it
>>>  could do
>>>>>     better at
>>>>>>>       supporting
>>>>>>>>        for
>>>>>>>>>>>         more
>>>>>>>>>>>>         moderate
>>>>>>>>>>>>>>>>>>         
> sized sites
>>>  like
>>>>>>      thrift's.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>         
> I'd
>>>  therefore
>>>>    like
>>>>>     to
>>>>>>      engage
>>>>>>>       you
>>>>>>>>        folks in a
>>>>>>>>>>> 
>>>>>>>>>>>>>          brainstorming session
>>>>>>>>>>>>>>>>>>         
> about what
>>>  sorts of
>>>> 
>>>>>     features
>>>>>>      you
>>>>>>>       want
>>>>>>>>        for your
>>>>>>>>>>>         site
>>>>>>>>>>>>         and
>>>>>>>>>>>>>          to find
>>>>>>>>>>>>>>>>>>         
> simple ways of
>>> 
>>>>>     supporting
>>>>>>      those
>>>>>>>>        features for
>>>>>>>>>>>         you.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>         
> Thanks.
>>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
I still see some issues and still miss to feature mentioned.
Now we have nonoc.ws and I'm able to hack this a bit.

We had no real big issue, the thing I missed was the code snippet thing
and this is in on nanoc.ws and now also on Apache CMS.

The thing we really need is the documentation located within source code 
integrated on the web site.

most hosting platforms do render README.md and that's why lot of doc 
will stay within the code and we should benefit as well by rendering 
that to the web site and enhance the documentation very easily.

I would like to render the 41 README.md files to with the following
pattern, that's a must have before switching to another CMS.

test/README.md => thrift.apache.org/test
test/STATUS.md => thrift.apache.org/test/status
test/keys/README.md => thrift.apache.org/test/keys
lib/<lang>/README.md => thrift.apache.org/lib/<lang>
lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
lib/<lang>/examples/README.md => thrift.apache.org/lib/<lang>/examples
compiler/cpp/README.md => thrift.apache.org/compiler
debian/README.md => thrift.apache.org/debian
contrib/<topic>/README.md => thrift.apache.org/<topic>

CPP tutorial seems to be broken on staging.

Do you commit to https://svn.apache.org/repos/asf/thrift/cms-site/trunk
or is it web gui only?

How do you generate the site on your local machine?


Should I reactivate my perl or do we stay with ruby?
Committers and contributors, what do you think?


all the best
-roger


On 22.03.2014 18:07, Joe Schaefer wrote:
>
>
> Ok I've now done the basic necessities involved in porting
> the site over.  Links have been adjusted, templates ported, files created,
> snippet feature activated.  At this point I'm happy to declare
> victory and migrate the thrift live site over, as anything broken that
> still remains can be dealt with on a per-page basis with the bookmarklet.
>
>
>
>> On Thursday, March 20, 2014 11:19 AM, Joe Schaefer <jo...@yahoo.com> wrote:
>>> Modulo some bizarre content truncation out of git-wip-us.apache.org
>> the snippet support is now active. At this point I think all the build
>> support you need in this project to support every type of brainstorming
>> activity we've discussed is now there, so it's just up to you guys to
>> now familiarize yourselves with the build technology and how to apply
>> it to your needs.  The site builds with snippet support are running around
>> 10 seconds, which is to be expected with the network interactions involved.
>>
>> I'm always willing to answer any questions that come up in the interim,
>> but I wish you guys the best of luck in the remaining porting work to be done.
>> All I see really are some links that need to have the trailing slashes removed
>> and whatever <%= %> template constructs that remain need to be ported to
>> django.  So it should be smooth sailing, but as I said if you hit any snags
>> holler.  I'd really like to see the live site tech switched over to the cms
>> stuff before Apachecon ends in early April, hint hint.
>>
>>
>>
>>
>>
>>>   On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer
>> <jo...@yahoo.com> wrote:
>>>   > While I don't yet know the url magic to support branches and tags
>> in git,
>>>   I can say that the snippet support is ready to play with.  I suggest just
>>>   focusing on the /index.md page first to see how it works in practice
>> because
>>>   once it's fully enabled the build will break until all the snippet
>> sources
>>>   have been altered to conform with the new style.
>>>
>>>   To turn it on for index.md testing, there are a couple of things that need
>> to
>>>   happen. First the [snippet:...] marker should be edited to be
>> [XXXsnippet:...]
>>>   to enable testing without breaking the build.  Second each marker contains
>> a
>>>   "token" argument instead of line numbers for more stability under
>>
>>>   edits to the source code.  The token argument is an arbitrary string that
>> is
>>>   used to denote the boundaries of the snippet within the source code.
>>>    ASF::Value::Snippet will pull out the lines from the source file between
>> the
>>>   lines that contain the token argument and format them as a code snippet
>> embedded
>>>   into markdown. To get started I'll copy over the code highlighting css
>> from
>>>   www.apache.org but note that this is all based on python pygments and there
>> are
>>>   a variety of online css files to choose from if this one is not to the
>>>   group's liking.
>>>
>>>
>>>
>>>>    On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer
>>>   <jo...@yahoo.com> wrote:
>>>>    > Sorry I need to clarify with an example: look at
>>>>    http://thrift.staging.apache.org/tutorial/ versus
>>>>    http://thrift.staging.apache.org/tutorial.html.  The
>>>>    former is generated from content/tutorial/index.html
>>>>    and the latter from content/tutorial.md.  The latter file
>>>>    needs to be removed from the tree now that it's content
>>>>    has been ported to content/tutorial/index.html.  This
>>>>    uses django template inheritance to maintain simplicity.
>>>>
>>>>    Other directories that follow a similar pattern should
>>>>    also be ported in the same fashion.
>>>>
>>>>
>>>>
>>>>>     On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer
>>>>    <jo...@yahoo.com> wrote:
>>>>>     > If someone's looking for a way to help with the porting
>>>>>     effort, consider tackling the creation of an index.html
>>>>>     page in each subdir of the content/ tree (other than the
>>>>>     base which has an /index.md).  The contents of the file
>>>>>     should be just
>>>>>
>>>>>     {% include 'default' %}
>>>>>
>>>>>     (see the docs dir for an example page that can be copied)
>>>>>     and the build system will take care of generating the page
>>>>>     in a consistent fashion with the rest of the site.  Once
>>>>>     that is done there are a lot of pages that function like
>>>>>     index pages but are written in markdown that can be deleted,
>>>>>     like docs.md and its ilk.  Nanoc transforms that file into
>>>>>     /docs/index.html but that's kinda crufty and not supported
>>>>>     by the CMS, which only lets you alter file extensions not paths.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>      On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer
>>>>>     <jo...@yahoo.com> wrote:
>>>>>>      > I just pencilled in snippet preprocessing support into
>>>>>>      the thrift builds.  Once Jake and I have settled on the
>>>>>>      feature set of ASF::Value::Snippet, and we have ported
>>>>>>      the snippet calling text within the markdown pages
>>>>>>      to the new format, things will just work (knock on wood).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>       On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer
>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>       > Sure I understand that need.  If there's a way
>> of
>>>>    pulling the
>>>>>
>>>>>>      document
>>>>>>>       sources directly from the web I can parse the content
>> to
>>>   look for
>>>>
>>>>>     snippet
>>>>>>>       markers and make those available to the template
>> system.
>>>>    That's
>>>>>     pretty
>>>>>>      much
>>>>>>>       how www.apache.org is generated.
>>>>>>>
>>>>>>>       Sent from my iPhone
>>>>>>>
>>>>>>>
>>>>>>>>        On Mar 19, 2014, at 5:28 AM, Henrique Mendonça
>>>>>>      <he...@apache.org>
>>>>>>>       wrote:
>>>>>>>>
>>>>>>>>        Hi Joe,
>>>>>>>>
>>>>>>>>        Thanks for your effort. I just wanted to add that
>> the
>>>   code
>>>>>     snippets
>>>>>>      are a
>>>>>>>>        crucial feature for this project, which has way
>> more
>>>   target
>>>>>     languages
>>>>>>      than
>>>>>>>>        active contributors. In our case, reducing manual
>>>>    maintenance
>>>>>     costs is
>>>>>>      much
>>>>>>>>        more important than the total site build time.
>> Perhaps
>>>   we
>>>>    can
>>>>>     also
>>>>>>      solve
>>>>>>>>        this in the CMS, though.
>>>>>>>>
>>>>>>>>        - Henrique
>>>>>>>>
>>>>>>>>
>>>>>>>>>        On 19 March 2014 03:17, Joe Schaefer
>>>>>>      <jo...@yahoo.com>
>>>>>>>       wrote:
>>>>>>>>>
>>>>>>>>>        A couple more thoughts regarding the
>> background on
>>>   the
>>>>    CMS...
>>>>>>>>>        the bulk of the focus of the CMS up until now
>> has
>>>   been
>>>>    to
>>>>>>>>>        support really big sites like maven and
>> openoffice,
>>>   both
>>>>    of
>>>>>>>>>        which have websites well over 5GB worth of
>> text
>>>   files.
>>>>    The
>>>>>>>>>        build system was hollowed out and revamped to
>>>   support
>>>>>     external
>>>>>>>>>        builds in other programming languages, as well
>> as
>>>>    scaling up
>>>>>>>>>        the perl builds to provide about 8 child
>> processes
>>>   that
>>>>    build
>>>>>>>>>        the site in parallel by default.  Full site
>> build
>>>   times
>>>>    for
>>>>>>>>>        openoffice went from over 30 minutes to
>> between 5
>>>   to 10
>>>>>     minutes
>>>>>>>>>        depending on disk activity, which made
>>>   experimentation
>>>>    with
>>>>>>      site-wide
>>>>>>>>>        changes feasible on a reasonable timeframe.
>> At
>>>   first
>>>>    the
>>>>>     project
>>>>>>      was
>>>>>>>       in
>>>>>>>>>        the habit of running the builds locally before
>>
>>>   checking
>>>>    in
>>>>>     their
>>>>>>>       changes
>>>>>>>>>        because the delay in feedback post-commit was
>>>>    unreasonable,
>>>>>     but
>>>>>>      with
>>>>>>>       smart
>>>>>>>>>        use of SSI the were able to cut down on the
>> number
>>>   of
>>>>    changes
>>>>>     that
>>>>>>
>>>>>>>       required
>>>>>>>>>        full site builds and hence no longer bother
>> with
>>>   the
>>>>    whole
>>>>>>      pre-build
>>>>>>>       mumbo
>>>>>>>>>        jumbo before checking in changes.  The CMS is
>>>   designed
>>>>    to
>>>>>     only
>>>>>>      build
>>>>>>>       pages
>>>>>>>>>        that were altered, and if you just edit a page
>> or
>>>   two
>>>>    only
>>>>>     those
>>>>>>      pages
>>>>>>>       and
>>>>>>>>>        the pages that depend on them will be built.
>>>>>>>>>
>>>>>>>>>        Now that I've turned my attention to
>> thrift,
>>>   there
>>>>    are
>>>>>     several
>>>>>>
>>>>>>>       aspects
>>>>>>>>>        that are better off being retuned based on the
>>
>>>   modest
>>>>    size of
>>>>>     the
>>>>>>      site.
>>>>>>>>>        First of all you have a sitemap url that lists
>> all
>>>   of
>>>>    your
>>>>>>>       markdown-based
>>>>>>>>>        pages, which would be a nonstarter for a site
>> like
>>>>>     openoffice.
>>>>>>      The
>>>>>>>>>        implications of the sitemap url are that every
>> page
>>>
>>>>    needs to
>>>>>     be
>>>>>>      built
>>>>>>>       in
>>>>>>>>>        memory just to generate that page, which leads
>> to a
>>>   lot
>>>>    of
>>>>>>      redundancy
>>>>>>>       in a
>>>>>>>>>        build system designed to run as forked child
>>>   processes.
>>>>    We
>>>>>     can do
>>>>>>
>>>>>>>       better...
>>>>>>>>>
>>>>>>>>>        I've done two things to make this work
>> well-
>>>   first I
>>>>    made
>>>>>     the
>>>>>>>       number of
>>>>>>>>>        child processes "aka runners"
>> tunable on
>>>   a
>>>>>     per-project
>>>>>>      basis,
>>>>>>>       and since the
>>>>>>>>>        sitemap is going to build every page anyway as
>> the
>>>>    slowest
>>>>>     page to
>>>>>>
>>>>>>>       build, I
>>>>>>>>>        memoized the main view that builds the
>> markdown
>>>   pages
>>>>    for
>>>>>     thrift.
>>>>>>      The
>>>>>>>       best
>>>>>>>>>        results are when there's only one runner
>> so we
>>>   get
>>>>    the
>>>>>     full
>>>>>>      benefit
>>>>>>>       of
>>>>>>>>>        memoization: typical site build times are
>>>   consistently
>>>>    under
>>>>>     2
>>>>>>      seconds
>>>>>>>       now.
>>>>>>>>>
>>>>>>>>>        You'll appreciate why I am such a
>> performance
>>>>    stickler
>>>>>     for the
>>>>>>      CMS
>>>>>>>       when
>>>>>>>>>        you start using the bookmarklet, since builds
>> are
>>>   the
>>>>    only
>>>>>>      asynchronous
>>>>>>>>>        part of the process from making a change to a
>> page
>>>   and
>>>>>     publishing
>>>>>>      the
>>>>>>>>>        results.  Ideally when the system is working
>> well
>>>   the
>>>>    builds
>>>>>>      happen
>>>>>>>       before
>>>>>>>>>        you have time to go looking for them, but you
>> do
>>>   need to
>>>>    be
>>>>>>      mindful of
>>>>>>>       not
>>>>>>>>>        publishing before the built pages have been
>>>   committed
>>>>    back to
>>>>>     svn
>>>>>>      by
>>>>>>>>>        buildbot.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>        On Monday, March 17, 2014 11:59 PM, Joe
>>>   Schaefer
>>>>>>>       <jo...@yahoo.com>
>>>>>>>>>        wrote:
>>>>>>>>>>>        Ok there's enough of an idea about
>> how
>>>   to
>>>>    port
>>>>>     the
>>>>>>      rest of
>>>>>>>       the site's
>>>>>>>>>>        pages over based on the porting work
>> I've
>>>>    already
>>>>>     done
>>>>>>      that
>>>>>>>       it's time
>>>>>>>>>>        for me to step back and let you guys catch
>> up.
>>>
>>>>    Basically
>>>>>     the
>>>>>>      idea
>>>>>>>       is
>>>>>>>>>        that while
>>>>>>>>>>        there is templating support in the
>> markdown
>>>   sources,
>>>>
>>>>>     it's
>>>>>>>       fairly limited
>>>>>>>>>>        compared to what nanoc offers, but instead
>> of
>>>>    writing a
>>>>>     lot of
>>>>>>
>>>>>>>       complex
>>>>>>>>>        template
>>>>>>>>>>        code into your sources, with the cms you
>> just
>>>   add
>>>>    code to
>>>>>
>>>>>>>       lib/view.pmand/or
>>>>>>>>>>        lib/path.pm to keep the document sources
>> simple
>>>   and
>>>>    just
>>>>>     add
>>>>>>      more
>>>>>>>>>        template
>>>>>>>>>>        variables.  What I just finished in
>> lib/view.pm
>>>   and
>>>>>>      lib/path.pm is
>>>>>>>>>        directory
>>>>>>>>>>        listing support for /docs.html but it can
>> be
>>>   carried
>>>>    over
>>>>>     to
>>>>>>>       similar
>>>>>>>>>        pages.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>        On Monday, March 17, 2014 9:16 PM, Joe
>>
>>>   Schaefer
>>>>>>>>>>        <jo...@yahoo.com> wrote:
>>>>>>>>>>>>        Interesting ideas, thanks.  FWIW I
>>
>>>   think
>>>>    that
>>>>>     sort
>>>>>>>>>>>        of thing might be best supported as a
>>>   periodic
>>>>    cron
>>>>>>>>>>>        if we can write something stable
>> enough,
>>>   because
>>>>
>>>>>     pulling
>>>>>>>>>>>        stuff out of the git repo is something
>> the
>>>   CMS
>>>>>     isn't
>>>>>>      going
>>>>>>>>>>>        to do all that well being an svn
>>>   application.
>>>>>>>>>>>
>>>>>>>>>>>        The CMS build results are available at
>>>>>>>>>        http://thrift.staging.apache.org/
>>>>>>>>>>>        feel free to play with the sources in
>>>>>>>       repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>>        It's very fast, probably an order
>> of
>>>>    magnitude
>>>>>     faster
>>>>>>      than
>>>>>>>       your current
>>>>>>>>>>
>>>>>>>>>>>        tech.
>>>>>>>>>>>        Whole site builds in two seconds;
>> fractions
>>>   of a
>>>>
>>>>>     second
>>>>>>      for
>>>>>>>       typical
>>>>>>>>>        mods to
>>>>>>>>>>
>>>>>>>>>>>        content/ markdown pages.
>>>>>>>>>>>
>>>>>>>>>>>        The CMS bookmarklet is compatible with
>> the
>>>>    staging
>>>>>     site
>>>>>>      FWIW.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>         On Monday, March 17, 2014 7:40
>> PM,
>>>   Roger
>>>>    Meier
>>>>>>>>>>>        <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>>        Hi Joe & Co
>>>>>>>>>>>>
>>>>>>>>>>>>         thanks for this test run with
>> Apache
>>>   CMS!
>>>>>>>>>>>>
>>>>>>>>>>>>         What I would love to see is this:
>>>>>>>>>>>>
>>>>>>>>>>>>         Source file: => Web Site URL:
>>>>>>>>>>>>         test/README.md =>
>>>   thrift.apache.org/test
>>>>>>>>>>>>         test/STATUS.md =>
>>>>>     thrift.apache.org/test/status
>>>>>>>>>>>>         test/keys/README.md =>
>>>>>     thrift.apache.org/test/keys
>>>>>>>>>>>>         lib/<lang>/README.md =>
>>>>>>>       thrift.apache.org/lib/<lang>
>>>>>>>>>>>>         lib/<lang>/test/README.md
>> =>
>>>>>>>>>>>
>> thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>>
>> lib/<lang>/examples/README.md
>>>   =>
>>>>>>>>>>>>
>>>   thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>>         compiler/cpp/README.md =>
>>>>>>      thrift.apache.org/compiler
>>>>>>>>>>>>         debian/README.md =>
>>>>    thrift.apache.org/debian
>>>>>>>>>>>>         contrib/<topic>/README.md
>> =>
>>>>>>>       thrift.apache.org/<topic>
>>>>>>>>>>>>
>>>>>>>>>>>>         just made the following patch to
>>>   rename all
>>>>    file
>>>>>     to
>>>>>>      .md
>>>>>>>       within our
>>>>>>>>>>        source
>>>>>>>>>>>>         tree:
>>>>>>      https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>>         ... we have *41* md's within
>> the
>>>   source
>>>>    tree
>>>>>     and
>>>>>>>       that's the
>>>>>>>>>>        place
>>>>>>>>>>>        where
>>>>>>>>>>>>         people look for documentation
>> first.
>>>   =>
>>>>>     simple to
>>>>>>>       manage
>>>>>>>>>>>>         Would be user friendly to have
>> all of
>>>   this
>>>>>     online
>>>>>>      with
>>>>>>>       each release
>>>>>>>>>>>>         with the URL layout mentioned
>> above.
>>>>>>>>>>>>
>>>>>>>>>>>>         just received the buildboot...
>>>>>>>>>>>>         Do you have kind of a preview of
>> your
>>>>    prototype?
>>>>>>>>>>>>
>>>>>>>>>>>>         all the best!
>>>>>>>>>>>>         -roger
>>>>>>>>>>>>         ;-r
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>         Quoting Jake Farrell
>>>>>     <jf...@apache.org>:
>>>>>>>>>>>>
>>>>>>>>>>>>>          No objections from me
>>>>>>>>>>>>>
>>>>>>>>>>>>>          -Jake
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>          On Mon, Mar 17, 2014 at
>> 12:04 PM,
>>>   Joe
>>>>>     Schaefer
>>>>>>>>>>>>
>> <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>          Any objections to me
>> making a
>>>   copy
>>>>    of
>>>>>     the
>>>>>>      site
>>>>>>>>>>>>>>          tree alongside it called
>>
>>>>    cms-site?
>>>>>     I'd
>>>>>>      like
>>>>>>>       to
>>>>>>>>>>>>>>          get cracking on knocking
>> up
>>>   the
>>>>>     supporting
>>>>>>      perl
>>>>>>>>>>>>>>          for this so we can
>> continue
>>>   to
>>>>>     brainstorm...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        On Sunday, March 16,
>> 2014
>>>   1:53
>>>>    PM,
>>>>>     Joe
>>>>>>      Schaefer
>>>>>>>>>>>>         <jo...@yahoo.com>
>>>>>>>>>>>>>>          wrote:
>>>>>>>>>>>>>>>>        On Sunday, March
>> 16,
>>>   2014
>>>>    1:40
>>>>>     PM,
>>>>>>      Jake
>>>>>>>       Farrell
>>>>>>>>>>>>         <jf...@apache.org>
>>>>>>>>>>>>>>>        wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        Hey Joe
>>>>>>>>>>>>>>>>        Thanks for
>> reaching
>>>   out, we
>>>>    chose
>>>>>     to
>>>>>>      go
>>>>>>>       with a site
>>>>>>>>>>>        generator
>>>>>>>>>>>>         over the
>>>>>>>>>>>>>>>>        Apache CMS due to
>> it
>>>>    initially
>>>>>     not
>>>>>>      meeting
>>>>>>>       all of
>>>>>>>>>>        our
>>>>>>>>>>>        needs.
>>>>>>>>>>>>         Our current
>>>>>>>>>>>>>>>>        needs for the site
>> are
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        - Markdown to html
>>
>>>>    conversion
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        That one's easy-
>> its
>>>   the
>>>>    default
>>>>>     for
>>>>>>      the
>>>>>>>       cms.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        - Global
>>>   variables/config
>>>>    usable
>>>>>>      throughout
>>>>>>>       in a
>>>>>>>>>>        template
>>>>>>>>>>>
>>>>>>>>>>>>         based layout
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        Easy too- just create
>> a
>>>   perl
>>>>    hash
>>>>>>      somewhere and
>>>>>>>       make it
>>>>>>>>>>>        available
>>>>>>>>>>>>         to
>>>>>>>>>>>>>>          your views.
>>>>>>>>>>>>>>>        Code your views to
>> pass
>>>   that
>>>>    hash
>>>>>     along to
>>>>>>      your
>>>>>>>>>>        templates
>>>>>>>>>>>        and you
>>>>>>>>>>>>         are
>>>>>>>>>>>>>>          all set.
>>>>>>>>>>>>>>>        Note if your hash
>> contains
>>>>    objects
>>>>>     you can
>>>>>>      make
>>>>>>>       method
>>>>>>>>>>        calls
>>>>>>>>>>>        on
>>>>>>>>>>>>         them in
>>>>>>>>>>>>>>          your
>>>>>>>>>>>>>>>        templates.  Note:
>> while I
>>>>>     wouldn't
>>>>>>>       recommend this in
>>>>>>>>>>
>>>>>>>>>>>        general,
>>>>>>>>>>>>         for smaller
>>>>>>>>>>>>>>>        projects like thrift
>> that
>>>   prefer
>>>>
>>>>>>      convenience
>>>>>>>       over
>>>>>>>>>>        separation
>>>>>>>>>>>        of
>>>>>>>>>>>>         concerns
>>>>>>>>>>>>>>          you can
>>>>>>>>>>>>>>>        have the django
>> template
>>>   engine
>>>>    do a
>>>>>     pass
>>>>>>      over
>>>>>>>       your
>>>>>>>>>>        markdown
>>>>>>>>>>>>         before
>>>>>>>>>>>>>>          passing it
>>>>>>>>>>>>>>>        along to your actual
>>>   template
>>>>    page,
>>>>>     just
>>>>>>      as is
>>>>>>>       seemingly
>>>>>>>>>>
>>>>>>>>>>>        common to
>>>>>>>>>>>>         other
>>>>>>>>>>>>>>          popular
>>>>>>>>>>>>>>>        site generation
>> software.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        - Syntax
>> highlighting
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        Comes with
>> python's
>>>   markdown
>>>>
>>>>>     support,
>>>>>>      but
>>>>>>>       some
>>>>>>>>>>        people
>>>>>>>>>>>        prefer
>>>>>>>>>>>>         the look of
>>>>>>>>>>>>>>>        javascript
>> highlighters.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        - Easily include
>> code
>>>>    snippets
>>>>>     from
>>>>>>      our
>>>>>>>       source code
>>>>>>>>>>        base
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        Statically I hope.  No
>> idea
>>>   how
>>>>    to
>>>>>     pull
>>>>>>>       snippets out of
>>>>>>>>>>        your
>>>>>>>>>>>        git
>>>>>>>>>>>>         repo
>>>>>>>>>>>>>>          via the
>>>>>>>>>>>>>>>        cms.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        - Ability to
>> locally
>>>   test
>>>>    before
>>>>>>      committing
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>        Belt and suspenders
>> with
>>>   the
>>>>    cms- you
>>>>>     can
>>>>>>      build
>>>>>>>       your
>>>>>>>>>>        changes
>>>>>>>>>>>>         before
>>>>>>>>>>>>>>          committing
>>>>>>>>>>>>>>>        with the build
>> scripts,
>>>   browse
>>>>    your
>>>>>>      changes
>>>>>>>       before
>>>>>>>>>>        committing
>>>>>>>>>>>        via
>>>>>>>>>>>>         the cms
>>>>>>>>>>>>>>>        webgui, or simply
>> commit
>>>   your
>>>>    changes
>>>>>     and
>>>>>>      view
>>>>>>>       the
>>>>>>>>>>        staging
>>>>>>>>>>>        site
>>>>>>>>>>>>         prior to
>>>>>>>>>>>>>>          live
>>>>>>>>>>>>>>>        publication (which is
>> a
>>>   separate
>>>>
>>>>>     step).
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        -Jake
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>        On Sun, Mar 16,
>> 2014 at
>>>
>>>>    12:44 PM,
>>>>>     Joe
>>>>>>>       Schaefer
>>>>>>>>>>>>>>>
>>>>    <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>        As it so
>> happens I
>>>   am
>>>>>     interested
>>>>>>      in
>>>>>>>       working on
>>>>>>>>>>>        supporting
>>>>>>>>>>>>>>>>>        thrift's
>> use
>>>   case as
>>>>    a
>>>>>>      potential
>>>>>>>       user of
>>>>>>>>>>        the
>>>>>>>>>>>        Apache
>>>>>>>>>>>>         CMS.
>>>>>>>>>>>>>>>>>        While the CMS
>> works
>>>   well
>>>>    for
>>>>>>      massive
>>>>>>>       projects
>>>>>>>>>>        there
>>>>>>>>>>>        are
>>>>>>>>>>>>>>>>>        things it
>> could do
>>>>    better at
>>>>>>      supporting
>>>>>>>       for
>>>>>>>>>>        more
>>>>>>>>>>>        moderate
>>>>>>>>>>>>>>>>>        sized sites
>> like
>>>>>     thrift's.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>        I'd
>> therefore
>>>   like
>>>>    to
>>>>>     engage
>>>>>>      you
>>>>>>>       folks in a
>>>>>>>>>>
>>>>>>>>>>>>         brainstorming session
>>>>>>>>>>>>>>>>>        about what
>> sorts of
>>>
>>>>    features
>>>>>     you
>>>>>>      want
>>>>>>>       for your
>>>>>>>>>>        site
>>>>>>>>>>>        and
>>>>>>>>>>>>         to find
>>>>>>>>>>>>>>>>>        simple ways of
>>
>>>>    supporting
>>>>>     those
>>>>>>>       features for
>>>>>>>>>>        you.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>        Thanks.
>>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.

Ok I've now done the basic necessities involved in porting
the site over.  Links have been adjusted, templates ported, files created,
snippet feature activated.  At this point I'm happy to declare
victory and migrate the thrift live site over, as anything broken that
still remains can be dealt with on a per-page basis with the bookmarklet.



> On Thursday, March 20, 2014 11:19 AM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Modulo some bizarre content truncation out of git-wip-us.apache.org
> the snippet support is now active. At this point I think all the build
> support you need in this project to support every type of brainstorming
> activity we've discussed is now there, so it's just up to you guys to
> now familiarize yourselves with the build technology and how to apply
> it to your needs.  The site builds with snippet support are running around
> 10 seconds, which is to be expected with the network interactions involved.
> 
> I'm always willing to answer any questions that come up in the interim,
> but I wish you guys the best of luck in the remaining porting work to be done.
> All I see really are some links that need to have the trailing slashes removed
> and whatever <%= %> template constructs that remain need to be ported to 
> django.  So it should be smooth sailing, but as I said if you hit any snags 
> holler.  I'd really like to see the live site tech switched over to the cms 
> stuff before Apachecon ends in early April, hint hint.
> 
> 
> 
> 
> 
>>  On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > While I don't yet know the url magic to support branches and tags 
> in git,
>>  I can say that the snippet support is ready to play with.  I suggest just 
>>  focusing on the /index.md page first to see how it works in practice 
> because 
>>  once it's fully enabled the build will break until all the snippet 
> sources 
>>  have been altered to conform with the new style.
>> 
>>  To turn it on for index.md testing, there are a couple of things that need 
> to 
>>  happen. First the [snippet:...] marker should be edited to be 
> [XXXsnippet:...] 
>>  to enable testing without breaking the build.  Second each marker contains 
> a 
>>  "token" argument instead of line numbers for more stability under 
> 
>>  edits to the source code.  The token argument is an arbitrary string that 
> is 
>>  used to denote the boundaries of the snippet within the source code. 
>>   ASF::Value::Snippet will pull out the lines from the source file between 
> the 
>>  lines that contain the token argument and format them as a code snippet 
> embedded 
>>  into markdown. To get started I'll copy over the code highlighting css 
> from 
>>  www.apache.org but note that this is all based on python pygments and there 
> are 
>>  a variety of online css files to choose from if this one is not to the 
>>  group's liking.
>> 
>> 
>> 
>>>   On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer 
>>  <jo...@yahoo.com> wrote:
>>>   > Sorry I need to clarify with an example: look at
>>>   http://thrift.staging.apache.org/tutorial/ versus
>>>   http://thrift.staging.apache.org/tutorial.html.  The
>>>   former is generated from content/tutorial/index.html
>>>   and the latter from content/tutorial.md.  The latter file
>>>   needs to be removed from the tree now that it's content
>>>   has been ported to content/tutorial/index.html.  This
>>>   uses django template inheritance to maintain simplicity.
>>> 
>>>   Other directories that follow a similar pattern should
>>>   also be ported in the same fashion.
>>> 
>>> 
>>> 
>>>>    On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer 
>>>   <jo...@yahoo.com> wrote:
>>>>    > If someone's looking for a way to help with the porting
>>>>    effort, consider tackling the creation of an index.html
>>>>    page in each subdir of the content/ tree (other than the
>>>>    base which has an /index.md).  The contents of the file
>>>>    should be just
>>>> 
>>>>    {% include 'default' %}
>>>> 
>>>>    (see the docs dir for an example page that can be copied)
>>>>    and the build system will take care of generating the page
>>>>    in a consistent fashion with the rest of the site.  Once
>>>>    that is done there are a lot of pages that function like
>>>>    index pages but are written in markdown that can be deleted,
>>>>    like docs.md and its ilk.  Nanoc transforms that file into
>>>>    /docs/index.html but that's kinda crufty and not supported
>>>>    by the CMS, which only lets you alter file extensions not paths.
>>>> 
>>>> 
>>>> 
>>>> 
>>>>>     On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer 
>>>>    <jo...@yahoo.com> wrote:
>>>>>     > I just pencilled in snippet preprocessing support into
>>>>>     the thrift builds.  Once Jake and I have settled on the
>>>>>     feature set of ASF::Value::Snippet, and we have ported
>>>>>     the snippet calling text within the markdown pages
>>>>>     to the new format, things will just work (knock on wood).
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>>      On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer 
>>>>>     <jo...@yahoo.com> wrote:
>>>>>>      > Sure I understand that need.  If there's a way 
> of 
>>>   pulling the 
>>>> 
>>>>>     document 
>>>>>>      sources directly from the web I can parse the content 
> to 
>>  look for 
>>> 
>>>>    snippet 
>>>>>>      markers and make those available to the template 
> system.  
>>>   That's 
>>>>    pretty 
>>>>>     much 
>>>>>>      how www.apache.org is generated.
>>>>>> 
>>>>>>      Sent from my iPhone
>>>>>> 
>>>>>> 
>>>>>>>       On Mar 19, 2014, at 5:28 AM, Henrique Mendonça 
>>>>>     <he...@apache.org> 
>>>>>>      wrote:
>>>>>>> 
>>>>>>>       Hi Joe,
>>>>>>> 
>>>>>>>       Thanks for your effort. I just wanted to add that 
> the 
>>  code 
>>>>    snippets 
>>>>>     are a
>>>>>>>       crucial feature for this project, which has way 
> more 
>>  target 
>>>>    languages 
>>>>>     than
>>>>>>>       active contributors. In our case, reducing manual 
>>>   maintenance 
>>>>    costs is 
>>>>>     much
>>>>>>>       more important than the total site build time. 
> Perhaps 
>>  we 
>>>   can 
>>>>    also 
>>>>>     solve
>>>>>>>       this in the CMS, though.
>>>>>>> 
>>>>>>>       - Henrique
>>>>>>> 
>>>>>>> 
>>>>>>>>       On 19 March 2014 03:17, Joe Schaefer 
>>>>>     <jo...@yahoo.com> 
>>>>>>      wrote:
>>>>>>>> 
>>>>>>>>       A couple more thoughts regarding the 
> background on 
>>  the 
>>>   CMS...
>>>>>>>>       the bulk of the focus of the CMS up until now 
> has 
>>  been 
>>>   to
>>>>>>>>       support really big sites like maven and 
> openoffice, 
>>  both 
>>>   of
>>>>>>>>       which have websites well over 5GB worth of 
> text 
>>  files.  
>>>   The
>>>>>>>>       build system was hollowed out and revamped to 
>>  support 
>>>>    external
>>>>>>>>       builds in other programming languages, as well 
> as 
>>>   scaling up
>>>>>>>>       the perl builds to provide about 8 child 
> processes 
>>  that 
>>>   build
>>>>>>>>       the site in parallel by default.  Full site 
> build 
>>  times 
>>>   for
>>>>>>>>       openoffice went from over 30 minutes to 
> between 5 
>>  to 10 
>>>>    minutes
>>>>>>>>       depending on disk activity, which made 
>>  experimentation 
>>>   with 
>>>>>     site-wide
>>>>>>>>       changes feasible on a reasonable timeframe.  
> At 
>>  first 
>>>   the 
>>>>    project 
>>>>>     was 
>>>>>>      in
>>>>>>>>       the habit of running the builds locally before 
> 
>>  checking 
>>>   in 
>>>>    their 
>>>>>>      changes
>>>>>>>>       because the delay in feedback post-commit was 
>>>   unreasonable, 
>>>>    but 
>>>>>     with 
>>>>>>      smart
>>>>>>>>       use of SSI the were able to cut down on the 
> number 
>>  of 
>>>   changes 
>>>>    that 
>>>>> 
>>>>>>      required
>>>>>>>>       full site builds and hence no longer bother 
> with 
>>  the 
>>>   whole 
>>>>>     pre-build 
>>>>>>      mumbo
>>>>>>>>       jumbo before checking in changes.  The CMS is 
>>  designed 
>>>   to 
>>>>    only 
>>>>>     build 
>>>>>>      pages
>>>>>>>>       that were altered, and if you just edit a page 
> or 
>>  two 
>>>   only 
>>>>    those 
>>>>>     pages 
>>>>>>      and
>>>>>>>>       the pages that depend on them will be built.
>>>>>>>> 
>>>>>>>>       Now that I've turned my attention to 
> thrift, 
>>  there 
>>>   are 
>>>>    several 
>>>>> 
>>>>>>      aspects
>>>>>>>>       that are better off being retuned based on the 
> 
>>  modest 
>>>   size of 
>>>>    the 
>>>>>     site.
>>>>>>>>       First of all you have a sitemap url that lists 
> all 
>>  of 
>>>   your 
>>>>>>      markdown-based
>>>>>>>>       pages, which would be a nonstarter for a site 
> like 
>>>>    openoffice.  
>>>>>     The
>>>>>>>>       implications of the sitemap url are that every 
> page 
>> 
>>>   needs to 
>>>>    be 
>>>>>     built 
>>>>>>      in
>>>>>>>>       memory just to generate that page, which leads 
> to a 
>>  lot 
>>>   of 
>>>>>     redundancy 
>>>>>>      in a
>>>>>>>>       build system designed to run as forked child 
>>  processes.  
>>>   We 
>>>>    can do 
>>>>> 
>>>>>>      better...
>>>>>>>> 
>>>>>>>>       I've done two things to make this work 
> well- 
>>  first I 
>>>   made 
>>>>    the 
>>>>>>      number of
>>>>>>>>       child processes "aka runners" 
> tunable on 
>>  a 
>>>>    per-project 
>>>>>     basis, 
>>>>>>      and since the
>>>>>>>>       sitemap is going to build every page anyway as 
> the 
>>>   slowest 
>>>>    page to 
>>>>> 
>>>>>>      build, I
>>>>>>>>       memoized the main view that builds the 
> markdown 
>>  pages 
>>>   for 
>>>>    thrift.  
>>>>>     The 
>>>>>>      best
>>>>>>>>       results are when there's only one runner 
> so we 
>>  get 
>>>   the 
>>>>    full 
>>>>>     benefit 
>>>>>>      of
>>>>>>>>       memoization: typical site build times are 
>>  consistently 
>>>   under 
>>>>    2 
>>>>>     seconds 
>>>>>>      now.
>>>>>>>> 
>>>>>>>>       You'll appreciate why I am such a 
> performance 
>>>   stickler 
>>>>    for the 
>>>>>     CMS 
>>>>>>      when
>>>>>>>>       you start using the bookmarklet, since builds 
> are 
>>  the 
>>>   only 
>>>>>     asynchronous
>>>>>>>>       part of the process from making a change to a 
> page 
>>  and 
>>>>    publishing 
>>>>>     the
>>>>>>>>       results.  Ideally when the system is working 
> well 
>>  the 
>>>   builds 
>>>>>     happen 
>>>>>>      before
>>>>>>>>       you have time to go looking for them, but you 
> do 
>>  need to 
>>>   be 
>>>>>     mindful of 
>>>>>>      not
>>>>>>>>       publishing before the built pages have been 
>>  committed 
>>>   back to 
>>>>    svn 
>>>>>     by
>>>>>>>>       buildbot.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>       On Monday, March 17, 2014 11:59 PM, Joe 
>>  Schaefer 
>>>>>>      <jo...@yahoo.com>
>>>>>>>>       wrote:
>>>>>>>>>>       Ok there's enough of an idea about 
> how 
>>  to 
>>>   port 
>>>>    the 
>>>>>     rest of 
>>>>>>      the site's
>>>>>>>>>       pages over based on the porting work 
> I've 
>>>   already 
>>>>    done 
>>>>>     that 
>>>>>>      it's time
>>>>>>>>>       for me to step back and let you guys catch 
> up.  
>> 
>>>   Basically 
>>>>    the 
>>>>>     idea 
>>>>>>      is
>>>>>>>>       that while
>>>>>>>>>       there is templating support in the 
> markdown 
>>  sources, 
>>> 
>>>>    it's 
>>>>>>      fairly limited
>>>>>>>>>       compared to what nanoc offers, but instead 
> of 
>>>   writing a 
>>>>    lot of 
>>>>> 
>>>>>>      complex
>>>>>>>>       template
>>>>>>>>>       code into your sources, with the cms you 
> just 
>>  add 
>>>   code to 
>>>> 
>>>>>>      lib/view.pmand/or
>>>>>>>>>       lib/path.pm to keep the document sources 
> simple 
>>  and 
>>>   just 
>>>>    add 
>>>>>     more
>>>>>>>>       template
>>>>>>>>>       variables.  What I just finished in 
> lib/view.pm 
>>  and 
>>>>>     lib/path.pm is
>>>>>>>>       directory
>>>>>>>>>       listing support for /docs.html but it can 
> be 
>>  carried 
>>>   over 
>>>>    to 
>>>>>>      similar
>>>>>>>>       pages.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>       On Monday, March 17, 2014 9:16 PM, Joe 
> 
>>  Schaefer
>>>>>>>>>       <jo...@yahoo.com> wrote:
>>>>>>>>>>>       Interesting ideas, thanks.  FWIW I 
> 
>>  think 
>>>   that 
>>>>    sort
>>>>>>>>>>       of thing might be best supported as a 
>>  periodic 
>>>   cron
>>>>>>>>>>       if we can write something stable 
> enough, 
>>  because 
>>> 
>>>>    pulling
>>>>>>>>>>       stuff out of the git repo is something 
> the 
>>  CMS 
>>>>    isn't 
>>>>>     going
>>>>>>>>>>       to do all that well being an svn 
>>  application.
>>>>>>>>>> 
>>>>>>>>>>       The CMS build results are available at
>>>>>>>>       http://thrift.staging.apache.org/
>>>>>>>>>>       feel free to play with the sources in 
>>>>>>      repos/asf/thrift/cms-site/trunk.
>>>>>>>>>>       It's very fast, probably an order 
> of 
>>>   magnitude 
>>>>    faster 
>>>>>     than 
>>>>>>      your current
>>>>>>>>> 
>>>>>>>>>>       tech.
>>>>>>>>>>       Whole site builds in two seconds; 
> fractions 
>>  of a 
>>> 
>>>>    second 
>>>>>     for 
>>>>>>      typical
>>>>>>>>       mods to
>>>>>>>>> 
>>>>>>>>>>       content/ markdown pages.
>>>>>>>>>> 
>>>>>>>>>>       The CMS bookmarklet is compatible with 
> the 
>>>   staging 
>>>>    site 
>>>>>     FWIW.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>        On Monday, March 17, 2014 7:40 
> PM, 
>>  Roger 
>>>   Meier
>>>>>>>>>>       <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>>       Hi Joe & Co
>>>>>>>>>>> 
>>>>>>>>>>>        thanks for this test run with 
> Apache 
>>  CMS!
>>>>>>>>>>> 
>>>>>>>>>>>        What I would love to see is this:
>>>>>>>>>>> 
>>>>>>>>>>>        Source file: => Web Site URL:
>>>>>>>>>>>        test/README.md => 
>>  thrift.apache.org/test
>>>>>>>>>>>        test/STATUS.md => 
>>>>    thrift.apache.org/test/status
>>>>>>>>>>>        test/keys/README.md => 
>>>>    thrift.apache.org/test/keys
>>>>>>>>>>>        lib/<lang>/README.md => 
>>>>>>      thrift.apache.org/lib/<lang>
>>>>>>>>>>>        lib/<lang>/test/README.md 
> =>
>>>>>>>>>>       
> thrift.apache.org/lib/<lang>/test
>>>>>>>>>>>        
> lib/<lang>/examples/README.md 
>>  =>
>>>>>>>>>>>        
>>  thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>>        compiler/cpp/README.md => 
>>>>>     thrift.apache.org/compiler
>>>>>>>>>>>        debian/README.md => 
>>>   thrift.apache.org/debian
>>>>>>>>>>>        contrib/<topic>/README.md 
> => 
>>>>>>      thrift.apache.org/<topic>
>>>>>>>>>>> 
>>>>>>>>>>>        just made the following patch to 
>>  rename all 
>>>   file 
>>>>    to 
>>>>>     .md 
>>>>>>      within our
>>>>>>>>>       source
>>>>>>>>>>>        tree: 
>>>>>     https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>>        ... we have *41* md's within 
> the 
>>  source 
>>>   tree 
>>>>    and 
>>>>>>      that's the
>>>>>>>>>       place
>>>>>>>>>>       where
>>>>>>>>>>>        people look for documentation 
> first. 
>>  => 
>>>>    simple to 
>>>>>>      manage
>>>>>>>>>>>        Would be user friendly to have 
> all of 
>>  this 
>>>>    online 
>>>>>     with 
>>>>>>      each release
>>>>>>>>>>>        with the URL layout mentioned 
> above.
>>>>>>>>>>> 
>>>>>>>>>>>        just received the buildboot...
>>>>>>>>>>>        Do you have kind of a preview of 
> your 
>>>   prototype?
>>>>>>>>>>> 
>>>>>>>>>>>        all the best!
>>>>>>>>>>>        -roger
>>>>>>>>>>>        ;-r
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>        Quoting Jake Farrell 
>>>>    <jf...@apache.org>:
>>>>>>>>>>> 
>>>>>>>>>>>>         No objections from me
>>>>>>>>>>>> 
>>>>>>>>>>>>         -Jake
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>         On Mon, Mar 17, 2014 at 
> 12:04 PM, 
>>  Joe 
>>>>    Schaefer
>>>>>>>>>>>        
> <jo...@yahoo.com>wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>>         Any objections to me 
> making a 
>>  copy 
>>>   of 
>>>>    the 
>>>>>     site
>>>>>>>>>>>>>         tree alongside it called 
> 
>>>   cms-site?  
>>>>    I'd 
>>>>>     like 
>>>>>>      to
>>>>>>>>>>>>>         get cracking on knocking 
> up 
>>  the 
>>>>    supporting 
>>>>>     perl
>>>>>>>>>>>>>         for this so we can 
> continue 
>>  to 
>>>>    brainstorm...
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       On Sunday, March 16, 
> 2014 
>>  1:53 
>>>   PM, 
>>>>    Joe 
>>>>>     Schaefer
>>>>>>>>>>>        <jo...@yahoo.com>
>>>>>>>>>>>>>         wrote:
>>>>>>>>>>>>>>>       On Sunday, March 
> 16, 
>>  2014 
>>>   1:40 
>>>>    PM, 
>>>>>     Jake 
>>>>>>      Farrell
>>>>>>>>>>>        <jf...@apache.org>
>>>>>>>>>>>>>>       wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       Hey Joe
>>>>>>>>>>>>>>>       Thanks for 
> reaching 
>>  out, we 
>>>   chose 
>>>>    to 
>>>>>     go 
>>>>>>      with a site
>>>>>>>>>>       generator
>>>>>>>>>>>        over the
>>>>>>>>>>>>>>>       Apache CMS due to 
> it 
>>>   initially 
>>>>    not 
>>>>>     meeting 
>>>>>>      all of
>>>>>>>>>       our
>>>>>>>>>>       needs.
>>>>>>>>>>>        Our current
>>>>>>>>>>>>>>>       needs for the site 
> are
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       - Markdown to html 
> 
>>>   conversion
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       That one's easy- 
> its 
>>  the 
>>>   default 
>>>>    for 
>>>>>     the 
>>>>>>      cms.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       - Global 
>>  variables/config 
>>>   usable 
>>>>>     throughout 
>>>>>>      in a
>>>>>>>>>       template
>>>>>>>>>> 
>>>>>>>>>>>        based layout
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       Easy too- just create 
> a 
>>  perl 
>>>   hash 
>>>>>     somewhere and 
>>>>>>      make it
>>>>>>>>>>       available
>>>>>>>>>>>        to
>>>>>>>>>>>>>         your views.
>>>>>>>>>>>>>>       Code your views to 
> pass 
>>  that 
>>>   hash 
>>>>    along to 
>>>>>     your
>>>>>>>>>       templates
>>>>>>>>>>       and you
>>>>>>>>>>>        are
>>>>>>>>>>>>>         all set.
>>>>>>>>>>>>>>       Note if your hash 
> contains 
>>>   objects 
>>>>    you can 
>>>>>     make 
>>>>>>      method
>>>>>>>>>       calls
>>>>>>>>>>       on
>>>>>>>>>>>        them in
>>>>>>>>>>>>>         your
>>>>>>>>>>>>>>       templates.  Note: 
> while I 
>>>>    wouldn't 
>>>>>>      recommend this in
>>>>>>>>> 
>>>>>>>>>>       general,
>>>>>>>>>>>        for smaller
>>>>>>>>>>>>>>       projects like thrift 
> that 
>>  prefer 
>>> 
>>>>>     convenience 
>>>>>>      over
>>>>>>>>>       separation
>>>>>>>>>>       of
>>>>>>>>>>>        concerns
>>>>>>>>>>>>>         you can
>>>>>>>>>>>>>>       have the django 
> template 
>>  engine 
>>>   do a 
>>>>    pass 
>>>>>     over 
>>>>>>      your
>>>>>>>>>       markdown
>>>>>>>>>>>        before
>>>>>>>>>>>>>         passing it
>>>>>>>>>>>>>>       along to your actual 
>>  template 
>>>   page, 
>>>>    just 
>>>>>     as is 
>>>>>>      seemingly
>>>>>>>>> 
>>>>>>>>>>       common to
>>>>>>>>>>>        other
>>>>>>>>>>>>>         popular
>>>>>>>>>>>>>>       site generation 
> software.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       - Syntax 
> highlighting
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       Comes with 
> python's 
>>  markdown 
>>> 
>>>>    support, 
>>>>>     but 
>>>>>>      some
>>>>>>>>>       people
>>>>>>>>>>       prefer
>>>>>>>>>>>        the look of
>>>>>>>>>>>>>>       javascript 
> highlighters.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       - Easily include 
> code 
>>>   snippets 
>>>>    from 
>>>>>     our 
>>>>>>      source code
>>>>>>>>>       base
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       Statically I hope.  No 
> idea 
>>  how 
>>>   to 
>>>>    pull 
>>>>>>      snippets out of
>>>>>>>>>       your
>>>>>>>>>>       git
>>>>>>>>>>>        repo
>>>>>>>>>>>>>         via the
>>>>>>>>>>>>>>       cms.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       - Ability to 
> locally 
>>  test 
>>>   before 
>>>>>     committing
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>       Belt and suspenders 
> with 
>>  the 
>>>   cms- you 
>>>>    can 
>>>>>     build 
>>>>>>      your
>>>>>>>>>       changes
>>>>>>>>>>>        before
>>>>>>>>>>>>>         committing
>>>>>>>>>>>>>>       with the build 
> scripts, 
>>  browse 
>>>   your 
>>>>>     changes 
>>>>>>      before
>>>>>>>>>       committing
>>>>>>>>>>       via
>>>>>>>>>>>        the cms
>>>>>>>>>>>>>>       webgui, or simply 
> commit 
>>  your 
>>>   changes 
>>>>    and 
>>>>>     view 
>>>>>>      the
>>>>>>>>>       staging
>>>>>>>>>>       site
>>>>>>>>>>>        prior to
>>>>>>>>>>>>>         live
>>>>>>>>>>>>>>       publication (which is 
> a 
>>  separate 
>>> 
>>>>    step).
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       -Jake
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>       On Sun, Mar 16, 
> 2014 at 
>> 
>>>   12:44 PM, 
>>>>    Joe 
>>>>>>      Schaefer
>>>>>>>>>>>>>>       
>>>   <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>       As it so 
> happens I 
>>  am 
>>>>    interested 
>>>>>     in 
>>>>>>      working on
>>>>>>>>>>       supporting
>>>>>>>>>>>>>>>>       thrift's 
> use 
>>  case as 
>>>   a 
>>>>>     potential 
>>>>>>      user of
>>>>>>>>>       the
>>>>>>>>>>       Apache
>>>>>>>>>>>        CMS.
>>>>>>>>>>>>>>>>       While the CMS 
> works 
>>  well 
>>>   for 
>>>>>     massive 
>>>>>>      projects
>>>>>>>>>       there
>>>>>>>>>>       are
>>>>>>>>>>>>>>>>       things it 
> could do 
>>>   better at 
>>>>>     supporting 
>>>>>>      for
>>>>>>>>>       more
>>>>>>>>>>       moderate
>>>>>>>>>>>>>>>>       sized sites 
> like 
>>>>    thrift's.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>       I'd 
> therefore 
>>  like 
>>>   to 
>>>>    engage 
>>>>>     you 
>>>>>>      folks in a
>>>>>>>>> 
>>>>>>>>>>>        brainstorming session
>>>>>>>>>>>>>>>>       about what 
> sorts of 
>> 
>>>   features 
>>>>    you 
>>>>>     want 
>>>>>>      for your
>>>>>>>>>       site
>>>>>>>>>>       and
>>>>>>>>>>>        to find
>>>>>>>>>>>>>>>>       simple ways of 
> 
>>>   supporting 
>>>>    those 
>>>>>>      features for
>>>>>>>>>       you.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>       Thanks.
>>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Modulo some bizarre content truncation out of git-wip-us.apache.org
the snippet support is now active. At this point I think all the build
support you need in this project to support every type of brainstorming
activity we've discussed is now there, so it's just up to you guys to
now familiarize yourselves with the build technology and how to apply
it to your needs.  The site builds with snippet support are running around
10 seconds, which is to be expected with the network interactions involved.

I'm always willing to answer any questions that come up in the interim,
but I wish you guys the best of luck in the remaining porting work to be done.
All I see really are some links that need to have the trailing slashes removed
and whatever <%= %> template constructs that remain need to be ported to django.  So it should be smooth sailing, but as I said if you hit any snags holler.  I'd really like to see the live site tech switched over to the cms stuff before Apachecon ends in early April, hint hint.





> On Wednesday, March 19, 2014 10:41 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > While I don't yet know the url magic to support branches and tags in git,
> I can say that the snippet support is ready to play with.  I suggest just 
> focusing on the /index.md page first to see how it works in practice because 
> once it's fully enabled the build will break until all the snippet sources 
> have been altered to conform with the new style.
> 
> To turn it on for index.md testing, there are a couple of things that need to 
> happen. First the [snippet:...] marker should be edited to be [XXXsnippet:...] 
> to enable testing without breaking the build.  Second each marker contains a 
> "token" argument instead of line numbers for more stability under 
> edits to the source code.  The token argument is an arbitrary string that is 
> used to denote the boundaries of the snippet within the source code. 
>  ASF::Value::Snippet will pull out the lines from the source file between the 
> lines that contain the token argument and format them as a code snippet embedded 
> into markdown. To get started I'll copy over the code highlighting css from 
> www.apache.org but note that this is all based on python pygments and there are 
> a variety of online css files to choose from if this one is not to the 
> group's liking.
> 
> 
> 
>>  On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > Sorry I need to clarify with an example: look at
>>  http://thrift.staging.apache.org/tutorial/ versus
>>  http://thrift.staging.apache.org/tutorial.html.  The
>>  former is generated from content/tutorial/index.html
>>  and the latter from content/tutorial.md.  The latter file
>>  needs to be removed from the tree now that it's content
>>  has been ported to content/tutorial/index.html.  This
>>  uses django template inheritance to maintain simplicity.
>> 
>>  Other directories that follow a similar pattern should
>>  also be ported in the same fashion.
>> 
>> 
>> 
>>>   On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer 
>>  <jo...@yahoo.com> wrote:
>>>   > If someone's looking for a way to help with the porting
>>>   effort, consider tackling the creation of an index.html
>>>   page in each subdir of the content/ tree (other than the
>>>   base which has an /index.md).  The contents of the file
>>>   should be just
>>> 
>>>   {% include 'default' %}
>>> 
>>>   (see the docs dir for an example page that can be copied)
>>>   and the build system will take care of generating the page
>>>   in a consistent fashion with the rest of the site.  Once
>>>   that is done there are a lot of pages that function like
>>>   index pages but are written in markdown that can be deleted,
>>>   like docs.md and its ilk.  Nanoc transforms that file into
>>>   /docs/index.html but that's kinda crufty and not supported
>>>   by the CMS, which only lets you alter file extensions not paths.
>>> 
>>> 
>>> 
>>> 
>>>>    On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer 
>>>   <jo...@yahoo.com> wrote:
>>>>    > I just pencilled in snippet preprocessing support into
>>>>    the thrift builds.  Once Jake and I have settled on the
>>>>    feature set of ASF::Value::Snippet, and we have ported
>>>>    the snippet calling text within the markdown pages
>>>>    to the new format, things will just work (knock on wood).
>>>> 
>>>> 
>>>> 
>>>> 
>>>>>     On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer 
>>>>    <jo...@yahoo.com> wrote:
>>>>>     > Sure I understand that need.  If there's a way of 
>>  pulling the 
>>> 
>>>>    document 
>>>>>     sources directly from the web I can parse the content to 
> look for 
>> 
>>>   snippet 
>>>>>     markers and make those available to the template system.  
>>  That's 
>>>   pretty 
>>>>    much 
>>>>>     how www.apache.org is generated.
>>>>> 
>>>>>     Sent from my iPhone
>>>>> 
>>>>> 
>>>>>>      On Mar 19, 2014, at 5:28 AM, Henrique Mendonça 
>>>>    <he...@apache.org> 
>>>>>     wrote:
>>>>>> 
>>>>>>      Hi Joe,
>>>>>> 
>>>>>>      Thanks for your effort. I just wanted to add that the 
> code 
>>>   snippets 
>>>>    are a
>>>>>>      crucial feature for this project, which has way more 
> target 
>>>   languages 
>>>>    than
>>>>>>      active contributors. In our case, reducing manual 
>>  maintenance 
>>>   costs is 
>>>>    much
>>>>>>      more important than the total site build time. Perhaps 
> we 
>>  can 
>>>   also 
>>>>    solve
>>>>>>      this in the CMS, though.
>>>>>> 
>>>>>>      - Henrique
>>>>>> 
>>>>>> 
>>>>>>>      On 19 March 2014 03:17, Joe Schaefer 
>>>>    <jo...@yahoo.com> 
>>>>>     wrote:
>>>>>>> 
>>>>>>>      A couple more thoughts regarding the background on 
> the 
>>  CMS...
>>>>>>>      the bulk of the focus of the CMS up until now has 
> been 
>>  to
>>>>>>>      support really big sites like maven and openoffice, 
> both 
>>  of
>>>>>>>      which have websites well over 5GB worth of text 
> files.  
>>  The
>>>>>>>      build system was hollowed out and revamped to 
> support 
>>>   external
>>>>>>>      builds in other programming languages, as well as 
>>  scaling up
>>>>>>>      the perl builds to provide about 8 child processes 
> that 
>>  build
>>>>>>>      the site in parallel by default.  Full site build 
> times 
>>  for
>>>>>>>      openoffice went from over 30 minutes to between 5 
> to 10 
>>>   minutes
>>>>>>>      depending on disk activity, which made 
> experimentation 
>>  with 
>>>>    site-wide
>>>>>>>      changes feasible on a reasonable timeframe.  At 
> first 
>>  the 
>>>   project 
>>>>    was 
>>>>>     in
>>>>>>>      the habit of running the builds locally before 
> checking 
>>  in 
>>>   their 
>>>>>     changes
>>>>>>>      because the delay in feedback post-commit was 
>>  unreasonable, 
>>>   but 
>>>>    with 
>>>>>     smart
>>>>>>>      use of SSI the were able to cut down on the number 
> of 
>>  changes 
>>>   that 
>>>> 
>>>>>     required
>>>>>>>      full site builds and hence no longer bother with 
> the 
>>  whole 
>>>>    pre-build 
>>>>>     mumbo
>>>>>>>      jumbo before checking in changes.  The CMS is 
> designed 
>>  to 
>>>   only 
>>>>    build 
>>>>>     pages
>>>>>>>      that were altered, and if you just edit a page or 
> two 
>>  only 
>>>   those 
>>>>    pages 
>>>>>     and
>>>>>>>      the pages that depend on them will be built.
>>>>>>> 
>>>>>>>      Now that I've turned my attention to thrift, 
> there 
>>  are 
>>>   several 
>>>> 
>>>>>     aspects
>>>>>>>      that are better off being retuned based on the 
> modest 
>>  size of 
>>>   the 
>>>>    site.
>>>>>>>      First of all you have a sitemap url that lists all 
> of 
>>  your 
>>>>>     markdown-based
>>>>>>>      pages, which would be a nonstarter for a site like 
>>>   openoffice.  
>>>>    The
>>>>>>>      implications of the sitemap url are that every page 
> 
>>  needs to 
>>>   be 
>>>>    built 
>>>>>     in
>>>>>>>      memory just to generate that page, which leads to a 
> lot 
>>  of 
>>>>    redundancy 
>>>>>     in a
>>>>>>>      build system designed to run as forked child 
> processes.  
>>  We 
>>>   can do 
>>>> 
>>>>>     better...
>>>>>>> 
>>>>>>>      I've done two things to make this work well- 
> first I 
>>  made 
>>>   the 
>>>>>     number of
>>>>>>>      child processes "aka runners" tunable on 
> a 
>>>   per-project 
>>>>    basis, 
>>>>>     and since the
>>>>>>>      sitemap is going to build every page anyway as the 
>>  slowest 
>>>   page to 
>>>> 
>>>>>     build, I
>>>>>>>      memoized the main view that builds the markdown 
> pages 
>>  for 
>>>   thrift.  
>>>>    The 
>>>>>     best
>>>>>>>      results are when there's only one runner so we 
> get 
>>  the 
>>>   full 
>>>>    benefit 
>>>>>     of
>>>>>>>      memoization: typical site build times are 
> consistently 
>>  under 
>>>   2 
>>>>    seconds 
>>>>>     now.
>>>>>>> 
>>>>>>>      You'll appreciate why I am such a performance 
>>  stickler 
>>>   for the 
>>>>    CMS 
>>>>>     when
>>>>>>>      you start using the bookmarklet, since builds are 
> the 
>>  only 
>>>>    asynchronous
>>>>>>>      part of the process from making a change to a page 
> and 
>>>   publishing 
>>>>    the
>>>>>>>      results.  Ideally when the system is working well 
> the 
>>  builds 
>>>>    happen 
>>>>>     before
>>>>>>>      you have time to go looking for them, but you do 
> need to 
>>  be 
>>>>    mindful of 
>>>>>     not
>>>>>>>      publishing before the built pages have been 
> committed 
>>  back to 
>>>   svn 
>>>>    by
>>>>>>>      buildbot.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>      On Monday, March 17, 2014 11:59 PM, Joe 
> Schaefer 
>>>>>     <jo...@yahoo.com>
>>>>>>>      wrote:
>>>>>>>>>      Ok there's enough of an idea about how 
> to 
>>  port 
>>>   the 
>>>>    rest of 
>>>>>     the site's
>>>>>>>>      pages over based on the porting work I've 
>>  already 
>>>   done 
>>>>    that 
>>>>>     it's time
>>>>>>>>      for me to step back and let you guys catch up.  
> 
>>  Basically 
>>>   the 
>>>>    idea 
>>>>>     is
>>>>>>>      that while
>>>>>>>>      there is templating support in the markdown 
> sources, 
>> 
>>>   it's 
>>>>>     fairly limited
>>>>>>>>      compared to what nanoc offers, but instead of 
>>  writing a 
>>>   lot of 
>>>> 
>>>>>     complex
>>>>>>>      template
>>>>>>>>      code into your sources, with the cms you just 
> add 
>>  code to 
>>> 
>>>>>     lib/view.pmand/or
>>>>>>>>      lib/path.pm to keep the document sources simple 
> and 
>>  just 
>>>   add 
>>>>    more
>>>>>>>      template
>>>>>>>>      variables.  What I just finished in lib/view.pm 
> and 
>>>>    lib/path.pm is
>>>>>>>      directory
>>>>>>>>      listing support for /docs.html but it can be 
> carried 
>>  over 
>>>   to 
>>>>>     similar
>>>>>>>      pages.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>      On Monday, March 17, 2014 9:16 PM, Joe 
> Schaefer
>>>>>>>>      <jo...@yahoo.com> wrote:
>>>>>>>>>>      Interesting ideas, thanks.  FWIW I 
> think 
>>  that 
>>>   sort
>>>>>>>>>      of thing might be best supported as a 
> periodic 
>>  cron
>>>>>>>>>      if we can write something stable enough, 
> because 
>> 
>>>   pulling
>>>>>>>>>      stuff out of the git repo is something the 
> CMS 
>>>   isn't 
>>>>    going
>>>>>>>>>      to do all that well being an svn 
> application.
>>>>>>>>> 
>>>>>>>>>      The CMS build results are available at
>>>>>>>      http://thrift.staging.apache.org/
>>>>>>>>>      feel free to play with the sources in 
>>>>>     repos/asf/thrift/cms-site/trunk.
>>>>>>>>>      It's very fast, probably an order of 
>>  magnitude 
>>>   faster 
>>>>    than 
>>>>>     your current
>>>>>>>> 
>>>>>>>>>      tech.
>>>>>>>>>      Whole site builds in two seconds; fractions 
> of a 
>> 
>>>   second 
>>>>    for 
>>>>>     typical
>>>>>>>      mods to
>>>>>>>> 
>>>>>>>>>      content/ markdown pages.
>>>>>>>>> 
>>>>>>>>>      The CMS bookmarklet is compatible with the 
>>  staging 
>>>   site 
>>>>    FWIW.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>       On Monday, March 17, 2014 7:40 PM, 
> Roger 
>>  Meier
>>>>>>>>>      <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>>      Hi Joe & Co
>>>>>>>>>> 
>>>>>>>>>>       thanks for this test run with Apache 
> CMS!
>>>>>>>>>> 
>>>>>>>>>>       What I would love to see is this:
>>>>>>>>>> 
>>>>>>>>>>       Source file: => Web Site URL:
>>>>>>>>>>       test/README.md => 
> thrift.apache.org/test
>>>>>>>>>>       test/STATUS.md => 
>>>   thrift.apache.org/test/status
>>>>>>>>>>       test/keys/README.md => 
>>>   thrift.apache.org/test/keys
>>>>>>>>>>       lib/<lang>/README.md => 
>>>>>     thrift.apache.org/lib/<lang>
>>>>>>>>>>       lib/<lang>/test/README.md =>
>>>>>>>>>      thrift.apache.org/lib/<lang>/test
>>>>>>>>>>       lib/<lang>/examples/README.md 
> =>
>>>>>>>>>>       
> thrift.apache.org/lib/<lang>/examples
>>>>>>>>>>       compiler/cpp/README.md => 
>>>>    thrift.apache.org/compiler
>>>>>>>>>>       debian/README.md => 
>>  thrift.apache.org/debian
>>>>>>>>>>       contrib/<topic>/README.md => 
>>>>>     thrift.apache.org/<topic>
>>>>>>>>>> 
>>>>>>>>>>       just made the following patch to 
> rename all 
>>  file 
>>>   to 
>>>>    .md 
>>>>>     within our
>>>>>>>>      source
>>>>>>>>>>       tree: 
>>>>    https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>>       ... we have *41* md's within the 
> source 
>>  tree 
>>>   and 
>>>>>     that's the
>>>>>>>>      place
>>>>>>>>>      where
>>>>>>>>>>       people look for documentation first. 
> => 
>>>   simple to 
>>>>>     manage
>>>>>>>>>>       Would be user friendly to have all of 
> this 
>>>   online 
>>>>    with 
>>>>>     each release
>>>>>>>>>>       with the URL layout mentioned above.
>>>>>>>>>> 
>>>>>>>>>>       just received the buildboot...
>>>>>>>>>>       Do you have kind of a preview of your 
>>  prototype?
>>>>>>>>>> 
>>>>>>>>>>       all the best!
>>>>>>>>>>       -roger
>>>>>>>>>>       ;-r
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>       Quoting Jake Farrell 
>>>   <jf...@apache.org>:
>>>>>>>>>> 
>>>>>>>>>>>        No objections from me
>>>>>>>>>>> 
>>>>>>>>>>>        -Jake
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>        On Mon, Mar 17, 2014 at 12:04 PM, 
> Joe 
>>>   Schaefer
>>>>>>>>>>       <jo...@yahoo.com>wrote:
>>>>>>>>>>> 
>>>>>>>>>>>>        Any objections to me making a 
> copy 
>>  of 
>>>   the 
>>>>    site
>>>>>>>>>>>>        tree alongside it called 
>>  cms-site?  
>>>   I'd 
>>>>    like 
>>>>>     to
>>>>>>>>>>>>        get cracking on knocking up 
> the 
>>>   supporting 
>>>>    perl
>>>>>>>>>>>>        for this so we can continue 
> to 
>>>   brainstorm...
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>      On Sunday, March 16, 2014 
> 1:53 
>>  PM, 
>>>   Joe 
>>>>    Schaefer
>>>>>>>>>>       <jo...@yahoo.com>
>>>>>>>>>>>>        wrote:
>>>>>>>>>>>>>>      On Sunday, March 16, 
> 2014 
>>  1:40 
>>>   PM, 
>>>>    Jake 
>>>>>     Farrell
>>>>>>>>>>       <jf...@apache.org>
>>>>>>>>>>>>>      wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      Hey Joe
>>>>>>>>>>>>>>      Thanks for reaching 
> out, we 
>>  chose 
>>>   to 
>>>>    go 
>>>>>     with a site
>>>>>>>>>      generator
>>>>>>>>>>       over the
>>>>>>>>>>>>>>      Apache CMS due to it 
>>  initially 
>>>   not 
>>>>    meeting 
>>>>>     all of
>>>>>>>>      our
>>>>>>>>>      needs.
>>>>>>>>>>       Our current
>>>>>>>>>>>>>>      needs for the site are
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      - Markdown to html 
>>  conversion
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      That one's easy- its 
> the 
>>  default 
>>>   for 
>>>>    the 
>>>>>     cms.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      - Global 
> variables/config 
>>  usable 
>>>>    throughout 
>>>>>     in a
>>>>>>>>      template
>>>>>>>>> 
>>>>>>>>>>       based layout
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      Easy too- just create a 
> perl 
>>  hash 
>>>>    somewhere and 
>>>>>     make it
>>>>>>>>>      available
>>>>>>>>>>       to
>>>>>>>>>>>>        your views.
>>>>>>>>>>>>>      Code your views to pass 
> that 
>>  hash 
>>>   along to 
>>>>    your
>>>>>>>>      templates
>>>>>>>>>      and you
>>>>>>>>>>       are
>>>>>>>>>>>>        all set.
>>>>>>>>>>>>>      Note if your hash contains 
>>  objects 
>>>   you can 
>>>>    make 
>>>>>     method
>>>>>>>>      calls
>>>>>>>>>      on
>>>>>>>>>>       them in
>>>>>>>>>>>>        your
>>>>>>>>>>>>>      templates.  Note: while I 
>>>   wouldn't 
>>>>>     recommend this in
>>>>>>>> 
>>>>>>>>>      general,
>>>>>>>>>>       for smaller
>>>>>>>>>>>>>      projects like thrift that 
> prefer 
>> 
>>>>    convenience 
>>>>>     over
>>>>>>>>      separation
>>>>>>>>>      of
>>>>>>>>>>       concerns
>>>>>>>>>>>>        you can
>>>>>>>>>>>>>      have the django template 
> engine 
>>  do a 
>>>   pass 
>>>>    over 
>>>>>     your
>>>>>>>>      markdown
>>>>>>>>>>       before
>>>>>>>>>>>>        passing it
>>>>>>>>>>>>>      along to your actual 
> template 
>>  page, 
>>>   just 
>>>>    as is 
>>>>>     seemingly
>>>>>>>> 
>>>>>>>>>      common to
>>>>>>>>>>       other
>>>>>>>>>>>>        popular
>>>>>>>>>>>>>      site generation software.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      - Syntax highlighting
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      Comes with python's 
> markdown 
>> 
>>>   support, 
>>>>    but 
>>>>>     some
>>>>>>>>      people
>>>>>>>>>      prefer
>>>>>>>>>>       the look of
>>>>>>>>>>>>>      javascript highlighters.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      - Easily include code 
>>  snippets 
>>>   from 
>>>>    our 
>>>>>     source code
>>>>>>>>      base
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      Statically I hope.  No idea 
> how 
>>  to 
>>>   pull 
>>>>>     snippets out of
>>>>>>>>      your
>>>>>>>>>      git
>>>>>>>>>>       repo
>>>>>>>>>>>>        via the
>>>>>>>>>>>>>      cms.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      - Ability to locally 
> test 
>>  before 
>>>>    committing
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>      Belt and suspenders with 
> the 
>>  cms- you 
>>>   can 
>>>>    build 
>>>>>     your
>>>>>>>>      changes
>>>>>>>>>>       before
>>>>>>>>>>>>        committing
>>>>>>>>>>>>>      with the build scripts, 
> browse 
>>  your 
>>>>    changes 
>>>>>     before
>>>>>>>>      committing
>>>>>>>>>      via
>>>>>>>>>>       the cms
>>>>>>>>>>>>>      webgui, or simply commit 
> your 
>>  changes 
>>>   and 
>>>>    view 
>>>>>     the
>>>>>>>>      staging
>>>>>>>>>      site
>>>>>>>>>>       prior to
>>>>>>>>>>>>        live
>>>>>>>>>>>>>      publication (which is a 
> separate 
>> 
>>>   step).
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      -Jake
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>      On Sun, Mar 16, 2014 at 
> 
>>  12:44 PM, 
>>>   Joe 
>>>>>     Schaefer
>>>>>>>>>>>>>      
>>  <jo...@yahoo.com>wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>      As it so happens I 
> am 
>>>   interested 
>>>>    in 
>>>>>     working on
>>>>>>>>>      supporting
>>>>>>>>>>>>>>>      thrift's use 
> case as 
>>  a 
>>>>    potential 
>>>>>     user of
>>>>>>>>      the
>>>>>>>>>      Apache
>>>>>>>>>>       CMS.
>>>>>>>>>>>>>>>      While the CMS works 
> well 
>>  for 
>>>>    massive 
>>>>>     projects
>>>>>>>>      there
>>>>>>>>>      are
>>>>>>>>>>>>>>>      things it could do 
>>  better at 
>>>>    supporting 
>>>>>     for
>>>>>>>>      more
>>>>>>>>>      moderate
>>>>>>>>>>>>>>>      sized sites like 
>>>   thrift's.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>      I'd therefore 
> like 
>>  to 
>>>   engage 
>>>>    you 
>>>>>     folks in a
>>>>>>>> 
>>>>>>>>>>       brainstorming session
>>>>>>>>>>>>>>>      about what sorts of 
> 
>>  features 
>>>   you 
>>>>    want 
>>>>>     for your
>>>>>>>>      site
>>>>>>>>>      and
>>>>>>>>>>       to find
>>>>>>>>>>>>>>>      simple ways of 
>>  supporting 
>>>   those 
>>>>>     features for
>>>>>>>>      you.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>      Thanks.
>>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
While I don't yet know the url magic to support branches and tags in git,
I can say that the snippet support is ready to play with.  I suggest just focusing on the /index.md page first to see how it works in practice because once it's fully enabled the build will break until all the snippet sources have been altered to conform with the new style.

To turn it on for index.md testing, there are a couple of things that need to happen. First the [snippet:...] marker should be edited to be [XXXsnippet:...] to enable testing without breaking the build.  Second each marker contains a "token" argument instead of line numbers for more stability under edits to the source code.  The token argument is an arbitrary string that is used to denote the boundaries of the snippet within the source code.  ASF::Value::Snippet will pull out the lines from the source file between the lines that contain the token argument and format them as a code snippet embedded into markdown. To get started I'll copy over the code highlighting css from www.apache.org but note that this is all based on python pygments and there are a variety of online css files to choose from if this one is not to the group's liking.



> On Wednesday, March 19, 2014 4:16 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Sorry I need to clarify with an example: look at
> http://thrift.staging.apache.org/tutorial/ versus
> http://thrift.staging.apache.org/tutorial.html.  The
> former is generated from content/tutorial/index.html
> and the latter from content/tutorial.md.  The latter file
> needs to be removed from the tree now that it's content
> has been ported to content/tutorial/index.html.  This
> uses django template inheritance to maintain simplicity.
> 
> Other directories that follow a similar pattern should
> also be ported in the same fashion.
> 
> 
> 
>>  On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > If someone's looking for a way to help with the porting
>>  effort, consider tackling the creation of an index.html
>>  page in each subdir of the content/ tree (other than the
>>  base which has an /index.md).  The contents of the file
>>  should be just
>> 
>>  {% include 'default' %}
>> 
>>  (see the docs dir for an example page that can be copied)
>>  and the build system will take care of generating the page
>>  in a consistent fashion with the rest of the site.  Once
>>  that is done there are a lot of pages that function like
>>  index pages but are written in markdown that can be deleted,
>>  like docs.md and its ilk.  Nanoc transforms that file into
>>  /docs/index.html but that's kinda crufty and not supported
>>  by the CMS, which only lets you alter file extensions not paths.
>> 
>> 
>> 
>> 
>>>   On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer 
>>  <jo...@yahoo.com> wrote:
>>>   > I just pencilled in snippet preprocessing support into
>>>   the thrift builds.  Once Jake and I have settled on the
>>>   feature set of ASF::Value::Snippet, and we have ported
>>>   the snippet calling text within the markdown pages
>>>   to the new format, things will just work (knock on wood).
>>> 
>>> 
>>> 
>>> 
>>>>    On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer 
>>>   <jo...@yahoo.com> wrote:
>>>>    > Sure I understand that need.  If there's a way of 
> pulling the 
>> 
>>>   document 
>>>>    sources directly from the web I can parse the content to look for 
> 
>>  snippet 
>>>>    markers and make those available to the template system.  
> That's 
>>  pretty 
>>>   much 
>>>>    how www.apache.org is generated.
>>>> 
>>>>    Sent from my iPhone
>>>> 
>>>> 
>>>>>     On Mar 19, 2014, at 5:28 AM, Henrique Mendonça 
>>>   <he...@apache.org> 
>>>>    wrote:
>>>>> 
>>>>>     Hi Joe,
>>>>> 
>>>>>     Thanks for your effort. I just wanted to add that the code 
>>  snippets 
>>>   are a
>>>>>     crucial feature for this project, which has way more target 
>>  languages 
>>>   than
>>>>>     active contributors. In our case, reducing manual 
> maintenance 
>>  costs is 
>>>   much
>>>>>     more important than the total site build time. Perhaps we 
> can 
>>  also 
>>>   solve
>>>>>     this in the CMS, though.
>>>>> 
>>>>>     - Henrique
>>>>> 
>>>>> 
>>>>>>     On 19 March 2014 03:17, Joe Schaefer 
>>>   <jo...@yahoo.com> 
>>>>    wrote:
>>>>>> 
>>>>>>     A couple more thoughts regarding the background on the 
> CMS...
>>>>>>     the bulk of the focus of the CMS up until now has been 
> to
>>>>>>     support really big sites like maven and openoffice, both 
> of
>>>>>>     which have websites well over 5GB worth of text files.  
> The
>>>>>>     build system was hollowed out and revamped to support 
>>  external
>>>>>>     builds in other programming languages, as well as 
> scaling up
>>>>>>     the perl builds to provide about 8 child processes that 
> build
>>>>>>     the site in parallel by default.  Full site build times 
> for
>>>>>>     openoffice went from over 30 minutes to between 5 to 10 
>>  minutes
>>>>>>     depending on disk activity, which made experimentation 
> with 
>>>   site-wide
>>>>>>     changes feasible on a reasonable timeframe.  At first 
> the 
>>  project 
>>>   was 
>>>>    in
>>>>>>     the habit of running the builds locally before checking 
> in 
>>  their 
>>>>    changes
>>>>>>     because the delay in feedback post-commit was 
> unreasonable, 
>>  but 
>>>   with 
>>>>    smart
>>>>>>     use of SSI the were able to cut down on the number of 
> changes 
>>  that 
>>> 
>>>>    required
>>>>>>     full site builds and hence no longer bother with the 
> whole 
>>>   pre-build 
>>>>    mumbo
>>>>>>     jumbo before checking in changes.  The CMS is designed 
> to 
>>  only 
>>>   build 
>>>>    pages
>>>>>>     that were altered, and if you just edit a page or two 
> only 
>>  those 
>>>   pages 
>>>>    and
>>>>>>     the pages that depend on them will be built.
>>>>>> 
>>>>>>     Now that I've turned my attention to thrift, there 
> are 
>>  several 
>>> 
>>>>    aspects
>>>>>>     that are better off being retuned based on the modest 
> size of 
>>  the 
>>>   site.
>>>>>>     First of all you have a sitemap url that lists all of 
> your 
>>>>    markdown-based
>>>>>>     pages, which would be a nonstarter for a site like 
>>  openoffice.  
>>>   The
>>>>>>     implications of the sitemap url are that every page 
> needs to 
>>  be 
>>>   built 
>>>>    in
>>>>>>     memory just to generate that page, which leads to a lot 
> of 
>>>   redundancy 
>>>>    in a
>>>>>>     build system designed to run as forked child processes.  
> We 
>>  can do 
>>> 
>>>>    better...
>>>>>> 
>>>>>>     I've done two things to make this work well- first I 
> made 
>>  the 
>>>>    number of
>>>>>>     child processes "aka runners" tunable on a 
>>  per-project 
>>>   basis, 
>>>>    and since the
>>>>>>     sitemap is going to build every page anyway as the 
> slowest 
>>  page to 
>>> 
>>>>    build, I
>>>>>>     memoized the main view that builds the markdown pages 
> for 
>>  thrift.  
>>>   The 
>>>>    best
>>>>>>     results are when there's only one runner so we get 
> the 
>>  full 
>>>   benefit 
>>>>    of
>>>>>>     memoization: typical site build times are consistently 
> under 
>>  2 
>>>   seconds 
>>>>    now.
>>>>>> 
>>>>>>     You'll appreciate why I am such a performance 
> stickler 
>>  for the 
>>>   CMS 
>>>>    when
>>>>>>     you start using the bookmarklet, since builds are the 
> only 
>>>   asynchronous
>>>>>>     part of the process from making a change to a page and 
>>  publishing 
>>>   the
>>>>>>     results.  Ideally when the system is working well the 
> builds 
>>>   happen 
>>>>    before
>>>>>>     you have time to go looking for them, but you do need to 
> be 
>>>   mindful of 
>>>>    not
>>>>>>     publishing before the built pages have been committed 
> back to 
>>  svn 
>>>   by
>>>>>>     buildbot.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>     On Monday, March 17, 2014 11:59 PM, Joe Schaefer 
>>>>    <jo...@yahoo.com>
>>>>>>     wrote:
>>>>>>>>     Ok there's enough of an idea about how to 
> port 
>>  the 
>>>   rest of 
>>>>    the site's
>>>>>>>     pages over based on the porting work I've 
> already 
>>  done 
>>>   that 
>>>>    it's time
>>>>>>>     for me to step back and let you guys catch up.  
> Basically 
>>  the 
>>>   idea 
>>>>    is
>>>>>>     that while
>>>>>>>     there is templating support in the markdown sources, 
> 
>>  it's 
>>>>    fairly limited
>>>>>>>     compared to what nanoc offers, but instead of 
> writing a 
>>  lot of 
>>> 
>>>>    complex
>>>>>>     template
>>>>>>>     code into your sources, with the cms you just add 
> code to 
>> 
>>>>    lib/view.pmand/or
>>>>>>>     lib/path.pm to keep the document sources simple and 
> just 
>>  add 
>>>   more
>>>>>>     template
>>>>>>>     variables.  What I just finished in lib/view.pm and 
>>>   lib/path.pm is
>>>>>>     directory
>>>>>>>     listing support for /docs.html but it can be carried 
> over 
>>  to 
>>>>    similar
>>>>>>     pages.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>     On Monday, March 17, 2014 9:16 PM, Joe Schaefer
>>>>>>>     <jo...@yahoo.com> wrote:
>>>>>>>>>     Interesting ideas, thanks.  FWIW I think 
> that 
>>  sort
>>>>>>>>     of thing might be best supported as a periodic 
> cron
>>>>>>>>     if we can write something stable enough, because 
> 
>>  pulling
>>>>>>>>     stuff out of the git repo is something the CMS 
>>  isn't 
>>>   going
>>>>>>>>     to do all that well being an svn application.
>>>>>>>> 
>>>>>>>>     The CMS build results are available at
>>>>>>     http://thrift.staging.apache.org/
>>>>>>>>     feel free to play with the sources in 
>>>>    repos/asf/thrift/cms-site/trunk.
>>>>>>>>     It's very fast, probably an order of 
> magnitude 
>>  faster 
>>>   than 
>>>>    your current
>>>>>>> 
>>>>>>>>     tech.
>>>>>>>>     Whole site builds in two seconds; fractions of a 
> 
>>  second 
>>>   for 
>>>>    typical
>>>>>>     mods to
>>>>>>> 
>>>>>>>>     content/ markdown pages.
>>>>>>>> 
>>>>>>>>     The CMS bookmarklet is compatible with the 
> staging 
>>  site 
>>>   FWIW.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>      On Monday, March 17, 2014 7:40 PM, Roger 
> Meier
>>>>>>>>     <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>>     Hi Joe & Co
>>>>>>>>> 
>>>>>>>>>      thanks for this test run with Apache CMS!
>>>>>>>>> 
>>>>>>>>>      What I would love to see is this:
>>>>>>>>> 
>>>>>>>>>      Source file: => Web Site URL:
>>>>>>>>>      test/README.md => thrift.apache.org/test
>>>>>>>>>      test/STATUS.md => 
>>  thrift.apache.org/test/status
>>>>>>>>>      test/keys/README.md => 
>>  thrift.apache.org/test/keys
>>>>>>>>>      lib/<lang>/README.md => 
>>>>    thrift.apache.org/lib/<lang>
>>>>>>>>>      lib/<lang>/test/README.md =>
>>>>>>>>     thrift.apache.org/lib/<lang>/test
>>>>>>>>>      lib/<lang>/examples/README.md =>
>>>>>>>>>      thrift.apache.org/lib/<lang>/examples
>>>>>>>>>      compiler/cpp/README.md => 
>>>   thrift.apache.org/compiler
>>>>>>>>>      debian/README.md => 
> thrift.apache.org/debian
>>>>>>>>>      contrib/<topic>/README.md => 
>>>>    thrift.apache.org/<topic>
>>>>>>>>> 
>>>>>>>>>      just made the following patch to rename all 
> file 
>>  to 
>>>   .md 
>>>>    within our
>>>>>>>     source
>>>>>>>>>      tree: 
>>>   https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>>      ... we have *41* md's within the source 
> tree 
>>  and 
>>>>    that's the
>>>>>>>     place
>>>>>>>>     where
>>>>>>>>>      people look for documentation first. => 
>>  simple to 
>>>>    manage
>>>>>>>>>      Would be user friendly to have all of this 
>>  online 
>>>   with 
>>>>    each release
>>>>>>>>>      with the URL layout mentioned above.
>>>>>>>>> 
>>>>>>>>>      just received the buildboot...
>>>>>>>>>      Do you have kind of a preview of your 
> prototype?
>>>>>>>>> 
>>>>>>>>>      all the best!
>>>>>>>>>      -roger
>>>>>>>>>      ;-r
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>      Quoting Jake Farrell 
>>  <jf...@apache.org>:
>>>>>>>>> 
>>>>>>>>>>       No objections from me
>>>>>>>>>> 
>>>>>>>>>>       -Jake
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>       On Mon, Mar 17, 2014 at 12:04 PM, Joe 
>>  Schaefer
>>>>>>>>>      <jo...@yahoo.com>wrote:
>>>>>>>>>> 
>>>>>>>>>>>       Any objections to me making a copy 
> of 
>>  the 
>>>   site
>>>>>>>>>>>       tree alongside it called 
> cms-site?  
>>  I'd 
>>>   like 
>>>>    to
>>>>>>>>>>>       get cracking on knocking up the 
>>  supporting 
>>>   perl
>>>>>>>>>>>       for this so we can continue to 
>>  brainstorm...
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>     On Sunday, March 16, 2014 1:53 
> PM, 
>>  Joe 
>>>   Schaefer
>>>>>>>>>      <jo...@yahoo.com>
>>>>>>>>>>>       wrote:
>>>>>>>>>>>>>     On Sunday, March 16, 2014 
> 1:40 
>>  PM, 
>>>   Jake 
>>>>    Farrell
>>>>>>>>>      <jf...@apache.org>
>>>>>>>>>>>>     wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>     Hey Joe
>>>>>>>>>>>>>     Thanks for reaching out, we 
> chose 
>>  to 
>>>   go 
>>>>    with a site
>>>>>>>>     generator
>>>>>>>>>      over the
>>>>>>>>>>>>>     Apache CMS due to it 
> initially 
>>  not 
>>>   meeting 
>>>>    all of
>>>>>>>     our
>>>>>>>>     needs.
>>>>>>>>>      Our current
>>>>>>>>>>>>>     needs for the site are
>>>>>>>>>>>>> 
>>>>>>>>>>>>>     - Markdown to html 
> conversion
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>     That one's easy- its the 
> default 
>>  for 
>>>   the 
>>>>    cms.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>     - Global variables/config 
> usable 
>>>   throughout 
>>>>    in a
>>>>>>>     template
>>>>>>>> 
>>>>>>>>>      based layout
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>     Easy too- just create a perl 
> hash 
>>>   somewhere and 
>>>>    make it
>>>>>>>>     available
>>>>>>>>>      to
>>>>>>>>>>>       your views.
>>>>>>>>>>>>     Code your views to pass that 
> hash 
>>  along to 
>>>   your
>>>>>>>     templates
>>>>>>>>     and you
>>>>>>>>>      are
>>>>>>>>>>>       all set.
>>>>>>>>>>>>     Note if your hash contains 
> objects 
>>  you can 
>>>   make 
>>>>    method
>>>>>>>     calls
>>>>>>>>     on
>>>>>>>>>      them in
>>>>>>>>>>>       your
>>>>>>>>>>>>     templates.  Note: while I 
>>  wouldn't 
>>>>    recommend this in
>>>>>>> 
>>>>>>>>     general,
>>>>>>>>>      for smaller
>>>>>>>>>>>>     projects like thrift that prefer 
> 
>>>   convenience 
>>>>    over
>>>>>>>     separation
>>>>>>>>     of
>>>>>>>>>      concerns
>>>>>>>>>>>       you can
>>>>>>>>>>>>     have the django template engine 
> do a 
>>  pass 
>>>   over 
>>>>    your
>>>>>>>     markdown
>>>>>>>>>      before
>>>>>>>>>>>       passing it
>>>>>>>>>>>>     along to your actual template 
> page, 
>>  just 
>>>   as is 
>>>>    seemingly
>>>>>>> 
>>>>>>>>     common to
>>>>>>>>>      other
>>>>>>>>>>>       popular
>>>>>>>>>>>>     site generation software.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>>     - Syntax highlighting
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>     Comes with python's markdown 
> 
>>  support, 
>>>   but 
>>>>    some
>>>>>>>     people
>>>>>>>>     prefer
>>>>>>>>>      the look of
>>>>>>>>>>>>     javascript highlighters.
>>>>>>>>>>>> 
>>>>>>>>>>>>>     - Easily include code 
> snippets 
>>  from 
>>>   our 
>>>>    source code
>>>>>>>     base
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>     Statically I hope.  No idea how 
> to 
>>  pull 
>>>>    snippets out of
>>>>>>>     your
>>>>>>>>     git
>>>>>>>>>      repo
>>>>>>>>>>>       via the
>>>>>>>>>>>>     cms.
>>>>>>>>>>>> 
>>>>>>>>>>>>>     - Ability to locally test 
> before 
>>>   committing
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>     Belt and suspenders with the 
> cms- you 
>>  can 
>>>   build 
>>>>    your
>>>>>>>     changes
>>>>>>>>>      before
>>>>>>>>>>>       committing
>>>>>>>>>>>>     with the build scripts, browse 
> your 
>>>   changes 
>>>>    before
>>>>>>>     committing
>>>>>>>>     via
>>>>>>>>>      the cms
>>>>>>>>>>>>     webgui, or simply commit your 
> changes 
>>  and 
>>>   view 
>>>>    the
>>>>>>>     staging
>>>>>>>>     site
>>>>>>>>>      prior to
>>>>>>>>>>>       live
>>>>>>>>>>>>     publication (which is a separate 
> 
>>  step).
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>     -Jake
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>     On Sun, Mar 16, 2014 at 
> 12:44 PM, 
>>  Joe 
>>>>    Schaefer
>>>>>>>>>>>>     
> <jo...@yahoo.com>wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>>     As it so happens I am 
>>  interested 
>>>   in 
>>>>    working on
>>>>>>>>     supporting
>>>>>>>>>>>>>>     thrift's use case as 
> a 
>>>   potential 
>>>>    user of
>>>>>>>     the
>>>>>>>>     Apache
>>>>>>>>>      CMS.
>>>>>>>>>>>>>>     While the CMS works well 
> for 
>>>   massive 
>>>>    projects
>>>>>>>     there
>>>>>>>>     are
>>>>>>>>>>>>>>     things it could do 
> better at 
>>>   supporting 
>>>>    for
>>>>>>>     more
>>>>>>>>     moderate
>>>>>>>>>>>>>>     sized sites like 
>>  thrift's.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>     I'd therefore like 
> to 
>>  engage 
>>>   you 
>>>>    folks in a
>>>>>>> 
>>>>>>>>>      brainstorming session
>>>>>>>>>>>>>>     about what sorts of 
> features 
>>  you 
>>>   want 
>>>>    for your
>>>>>>>     site
>>>>>>>>     and
>>>>>>>>>      to find
>>>>>>>>>>>>>>     simple ways of 
> supporting 
>>  those 
>>>>    features for
>>>>>>>     you.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>     Thanks.
>>>>>> 
>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Sorry I need to clarify with an example: look at
http://thrift.staging.apache.org/tutorial/ versus
http://thrift.staging.apache.org/tutorial.html.  The
former is generated from content/tutorial/index.html
and the latter from content/tutorial.md.  The latter file
needs to be removed from the tree now that it's content
has been ported to content/tutorial/index.html.  This
uses django template inheritance to maintain simplicity.

Other directories that follow a similar pattern should
also be ported in the same fashion.



> On Wednesday, March 19, 2014 9:46 AM, Joe Schaefer <jo...@yahoo.com> wrote:
> > If someone's looking for a way to help with the porting
> effort, consider tackling the creation of an index.html
> page in each subdir of the content/ tree (other than the
> base which has an /index.md).  The contents of the file
> should be just
> 
> {% include 'default' %}
> 
> (see the docs dir for an example page that can be copied)
> and the build system will take care of generating the page
> in a consistent fashion with the rest of the site.  Once
> that is done there are a lot of pages that function like
> index pages but are written in markdown that can be deleted,
> like docs.md and its ilk.  Nanoc transforms that file into
> /docs/index.html but that's kinda crufty and not supported
> by the CMS, which only lets you alter file extensions not paths.
> 
> 
> 
> 
>>  On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > I just pencilled in snippet preprocessing support into
>>  the thrift builds.  Once Jake and I have settled on the
>>  feature set of ASF::Value::Snippet, and we have ported
>>  the snippet calling text within the markdown pages
>>  to the new format, things will just work (knock on wood).
>> 
>> 
>> 
>> 
>>>   On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer 
>>  <jo...@yahoo.com> wrote:
>>>   > Sure I understand that need.  If there's a way of pulling the 
> 
>>  document 
>>>   sources directly from the web I can parse the content to look for 
> snippet 
>>>   markers and make those available to the template system.  That's 
> pretty 
>>  much 
>>>   how www.apache.org is generated.
>>> 
>>>   Sent from my iPhone
>>> 
>>> 
>>>>    On Mar 19, 2014, at 5:28 AM, Henrique Mendonça 
>>  <he...@apache.org> 
>>>   wrote:
>>>> 
>>>>    Hi Joe,
>>>> 
>>>>    Thanks for your effort. I just wanted to add that the code 
> snippets 
>>  are a
>>>>    crucial feature for this project, which has way more target 
> languages 
>>  than
>>>>    active contributors. In our case, reducing manual maintenance 
> costs is 
>>  much
>>>>    more important than the total site build time. Perhaps we can 
> also 
>>  solve
>>>>    this in the CMS, though.
>>>> 
>>>>    - Henrique
>>>> 
>>>> 
>>>>>    On 19 March 2014 03:17, Joe Schaefer 
>>  <jo...@yahoo.com> 
>>>   wrote:
>>>>> 
>>>>>    A couple more thoughts regarding the background on the CMS...
>>>>>    the bulk of the focus of the CMS up until now has been to
>>>>>    support really big sites like maven and openoffice, both of
>>>>>    which have websites well over 5GB worth of text files.  The
>>>>>    build system was hollowed out and revamped to support 
> external
>>>>>    builds in other programming languages, as well as scaling up
>>>>>    the perl builds to provide about 8 child processes that build
>>>>>    the site in parallel by default.  Full site build times for
>>>>>    openoffice went from over 30 minutes to between 5 to 10 
> minutes
>>>>>    depending on disk activity, which made experimentation with 
>>  site-wide
>>>>>    changes feasible on a reasonable timeframe.  At first the 
> project 
>>  was 
>>>   in
>>>>>    the habit of running the builds locally before checking in 
> their 
>>>   changes
>>>>>    because the delay in feedback post-commit was unreasonable, 
> but 
>>  with 
>>>   smart
>>>>>    use of SSI the were able to cut down on the number of changes 
> that 
>> 
>>>   required
>>>>>    full site builds and hence no longer bother with the whole 
>>  pre-build 
>>>   mumbo
>>>>>    jumbo before checking in changes.  The CMS is designed to 
> only 
>>  build 
>>>   pages
>>>>>    that were altered, and if you just edit a page or two only 
> those 
>>  pages 
>>>   and
>>>>>    the pages that depend on them will be built.
>>>>> 
>>>>>    Now that I've turned my attention to thrift, there are 
> several 
>> 
>>>   aspects
>>>>>    that are better off being retuned based on the modest size of 
> the 
>>  site.
>>>>>    First of all you have a sitemap url that lists all of your 
>>>   markdown-based
>>>>>    pages, which would be a nonstarter for a site like 
> openoffice.  
>>  The
>>>>>    implications of the sitemap url are that every page needs to 
> be 
>>  built 
>>>   in
>>>>>    memory just to generate that page, which leads to a lot of 
>>  redundancy 
>>>   in a
>>>>>    build system designed to run as forked child processes.  We 
> can do 
>> 
>>>   better...
>>>>> 
>>>>>    I've done two things to make this work well- first I made 
> the 
>>>   number of
>>>>>    child processes "aka runners" tunable on a 
> per-project 
>>  basis, 
>>>   and since the
>>>>>    sitemap is going to build every page anyway as the slowest 
> page to 
>> 
>>>   build, I
>>>>>    memoized the main view that builds the markdown pages for 
> thrift.  
>>  The 
>>>   best
>>>>>    results are when there's only one runner so we get the 
> full 
>>  benefit 
>>>   of
>>>>>    memoization: typical site build times are consistently under 
> 2 
>>  seconds 
>>>   now.
>>>>> 
>>>>>    You'll appreciate why I am such a performance stickler 
> for the 
>>  CMS 
>>>   when
>>>>>    you start using the bookmarklet, since builds are the only 
>>  asynchronous
>>>>>    part of the process from making a change to a page and 
> publishing 
>>  the
>>>>>    results.  Ideally when the system is working well the builds 
>>  happen 
>>>   before
>>>>>    you have time to go looking for them, but you do need to be 
>>  mindful of 
>>>   not
>>>>>    publishing before the built pages have been committed back to 
> svn 
>>  by
>>>>>    buildbot.
>>>>> 
>>>>> 
>>>>> 
>>>>>>    On Monday, March 17, 2014 11:59 PM, Joe Schaefer 
>>>   <jo...@yahoo.com>
>>>>>    wrote:
>>>>>>>    Ok there's enough of an idea about how to port 
> the 
>>  rest of 
>>>   the site's
>>>>>>    pages over based on the porting work I've already 
> done 
>>  that 
>>>   it's time
>>>>>>    for me to step back and let you guys catch up.  Basically 
> the 
>>  idea 
>>>   is
>>>>>    that while
>>>>>>    there is templating support in the markdown sources, 
> it's 
>>>   fairly limited
>>>>>>    compared to what nanoc offers, but instead of writing a 
> lot of 
>> 
>>>   complex
>>>>>    template
>>>>>>    code into your sources, with the cms you just add code to 
> 
>>>   lib/view.pmand/or
>>>>>>    lib/path.pm to keep the document sources simple and just 
> add 
>>  more
>>>>>    template
>>>>>>    variables.  What I just finished in lib/view.pm and 
>>  lib/path.pm is
>>>>>    directory
>>>>>>    listing support for /docs.html but it can be carried over 
> to 
>>>   similar
>>>>>    pages.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>    On Monday, March 17, 2014 9:16 PM, Joe Schaefer
>>>>>>    <jo...@yahoo.com> wrote:
>>>>>>>>    Interesting ideas, thanks.  FWIW I think that 
> sort
>>>>>>>    of thing might be best supported as a periodic cron
>>>>>>>    if we can write something stable enough, because 
> pulling
>>>>>>>    stuff out of the git repo is something the CMS 
> isn't 
>>  going
>>>>>>>    to do all that well being an svn application.
>>>>>>> 
>>>>>>>    The CMS build results are available at
>>>>>    http://thrift.staging.apache.org/
>>>>>>>    feel free to play with the sources in 
>>>   repos/asf/thrift/cms-site/trunk.
>>>>>>>    It's very fast, probably an order of magnitude 
> faster 
>>  than 
>>>   your current
>>>>>> 
>>>>>>>    tech.
>>>>>>>    Whole site builds in two seconds; fractions of a 
> second 
>>  for 
>>>   typical
>>>>>    mods to
>>>>>> 
>>>>>>>    content/ markdown pages.
>>>>>>> 
>>>>>>>    The CMS bookmarklet is compatible with the staging 
> site 
>>  FWIW.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>>     On Monday, March 17, 2014 7:40 PM, Roger Meier
>>>>>>>    <ro...@bufferoverflow.ch> wrote:
>>>>>>>>>    Hi Joe & Co
>>>>>>>> 
>>>>>>>>     thanks for this test run with Apache CMS!
>>>>>>>> 
>>>>>>>>     What I would love to see is this:
>>>>>>>> 
>>>>>>>>     Source file: => Web Site URL:
>>>>>>>>     test/README.md => thrift.apache.org/test
>>>>>>>>     test/STATUS.md => 
> thrift.apache.org/test/status
>>>>>>>>     test/keys/README.md => 
> thrift.apache.org/test/keys
>>>>>>>>     lib/<lang>/README.md => 
>>>   thrift.apache.org/lib/<lang>
>>>>>>>>     lib/<lang>/test/README.md =>
>>>>>>>    thrift.apache.org/lib/<lang>/test
>>>>>>>>     lib/<lang>/examples/README.md =>
>>>>>>>>     thrift.apache.org/lib/<lang>/examples
>>>>>>>>     compiler/cpp/README.md => 
>>  thrift.apache.org/compiler
>>>>>>>>     debian/README.md => thrift.apache.org/debian
>>>>>>>>     contrib/<topic>/README.md => 
>>>   thrift.apache.org/<topic>
>>>>>>>> 
>>>>>>>>     just made the following patch to rename all file 
> to 
>>  .md 
>>>   within our
>>>>>>    source
>>>>>>>>     tree: 
>>  https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>>     ... we have *41* md's within the source tree 
> and 
>>>   that's the
>>>>>>    place
>>>>>>>    where
>>>>>>>>     people look for documentation first. => 
> simple to 
>>>   manage
>>>>>>>>     Would be user friendly to have all of this 
> online 
>>  with 
>>>   each release
>>>>>>>>     with the URL layout mentioned above.
>>>>>>>> 
>>>>>>>>     just received the buildboot...
>>>>>>>>     Do you have kind of a preview of your prototype?
>>>>>>>> 
>>>>>>>>     all the best!
>>>>>>>>     -roger
>>>>>>>>     ;-r
>>>>>>>> 
>>>>>>>> 
>>>>>>>>     Quoting Jake Farrell 
> <jf...@apache.org>:
>>>>>>>> 
>>>>>>>>>      No objections from me
>>>>>>>>> 
>>>>>>>>>      -Jake
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>      On Mon, Mar 17, 2014 at 12:04 PM, Joe 
> Schaefer
>>>>>>>>     <jo...@yahoo.com>wrote:
>>>>>>>>> 
>>>>>>>>>>      Any objections to me making a copy of 
> the 
>>  site
>>>>>>>>>>      tree alongside it called cms-site?  
> I'd 
>>  like 
>>>   to
>>>>>>>>>>      get cracking on knocking up the 
> supporting 
>>  perl
>>>>>>>>>>      for this so we can continue to 
> brainstorm...
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>    On Sunday, March 16, 2014 1:53 PM, 
> Joe 
>>  Schaefer
>>>>>>>>     <jo...@yahoo.com>
>>>>>>>>>>      wrote:
>>>>>>>>>>>>    On Sunday, March 16, 2014 1:40 
> PM, 
>>  Jake 
>>>   Farrell
>>>>>>>>     <jf...@apache.org>
>>>>>>>>>>>    wrote:
>>>>>>>>>>> 
>>>>>>>>>>>    Hey Joe
>>>>>>>>>>>>    Thanks for reaching out, we chose 
> to 
>>  go 
>>>   with a site
>>>>>>>    generator
>>>>>>>>     over the
>>>>>>>>>>>>    Apache CMS due to it initially 
> not 
>>  meeting 
>>>   all of
>>>>>>    our
>>>>>>>    needs.
>>>>>>>>     Our current
>>>>>>>>>>>>    needs for the site are
>>>>>>>>>>>> 
>>>>>>>>>>>>    - Markdown to html conversion
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>    That one's easy- its the default 
> for 
>>  the 
>>>   cms.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>    - Global variables/config usable 
>>  throughout 
>>>   in a
>>>>>>    template
>>>>>>> 
>>>>>>>>     based layout
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>    Easy too- just create a perl hash 
>>  somewhere and 
>>>   make it
>>>>>>>    available
>>>>>>>>     to
>>>>>>>>>>      your views.
>>>>>>>>>>>    Code your views to pass that hash 
> along to 
>>  your
>>>>>>    templates
>>>>>>>    and you
>>>>>>>>     are
>>>>>>>>>>      all set.
>>>>>>>>>>>    Note if your hash contains objects 
> you can 
>>  make 
>>>   method
>>>>>>    calls
>>>>>>>    on
>>>>>>>>     them in
>>>>>>>>>>      your
>>>>>>>>>>>    templates.  Note: while I 
> wouldn't 
>>>   recommend this in
>>>>>> 
>>>>>>>    general,
>>>>>>>>     for smaller
>>>>>>>>>>>    projects like thrift that prefer 
>>  convenience 
>>>   over
>>>>>>    separation
>>>>>>>    of
>>>>>>>>     concerns
>>>>>>>>>>      you can
>>>>>>>>>>>    have the django template engine do a 
> pass 
>>  over 
>>>   your
>>>>>>    markdown
>>>>>>>>     before
>>>>>>>>>>      passing it
>>>>>>>>>>>    along to your actual template page, 
> just 
>>  as is 
>>>   seemingly
>>>>>> 
>>>>>>>    common to
>>>>>>>>     other
>>>>>>>>>>      popular
>>>>>>>>>>>    site generation software.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>>    - Syntax highlighting
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>    Comes with python's markdown 
> support, 
>>  but 
>>>   some
>>>>>>    people
>>>>>>>    prefer
>>>>>>>>     the look of
>>>>>>>>>>>    javascript highlighters.
>>>>>>>>>>> 
>>>>>>>>>>>>    - Easily include code snippets 
> from 
>>  our 
>>>   source code
>>>>>>    base
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>    Statically I hope.  No idea how to 
> pull 
>>>   snippets out of
>>>>>>    your
>>>>>>>    git
>>>>>>>>     repo
>>>>>>>>>>      via the
>>>>>>>>>>>    cms.
>>>>>>>>>>> 
>>>>>>>>>>>>    - Ability to locally test before 
>>  committing
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>    Belt and suspenders with the cms- you 
> can 
>>  build 
>>>   your
>>>>>>    changes
>>>>>>>>     before
>>>>>>>>>>      committing
>>>>>>>>>>>    with the build scripts, browse your 
>>  changes 
>>>   before
>>>>>>    committing
>>>>>>>    via
>>>>>>>>     the cms
>>>>>>>>>>>    webgui, or simply commit your changes 
> and 
>>  view 
>>>   the
>>>>>>    staging
>>>>>>>    site
>>>>>>>>     prior to
>>>>>>>>>>      live
>>>>>>>>>>>    publication (which is a separate 
> step).
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>    -Jake
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>>    On Sun, Mar 16, 2014 at 12:44 PM, 
> Joe 
>>>   Schaefer
>>>>>>>>>>>    <jo...@yahoo.com>wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>>>    As it so happens I am 
> interested 
>>  in 
>>>   working on
>>>>>>>    supporting
>>>>>>>>>>>>>    thrift's use case as a 
>>  potential 
>>>   user of
>>>>>>    the
>>>>>>>    Apache
>>>>>>>>     CMS.
>>>>>>>>>>>>>    While the CMS works well for 
>>  massive 
>>>   projects
>>>>>>    there
>>>>>>>    are
>>>>>>>>>>>>>    things it could do better at 
>>  supporting 
>>>   for
>>>>>>    more
>>>>>>>    moderate
>>>>>>>>>>>>>    sized sites like 
> thrift's.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>    I'd therefore like to 
> engage 
>>  you 
>>>   folks in a
>>>>>> 
>>>>>>>>     brainstorming session
>>>>>>>>>>>>>    about what sorts of features 
> you 
>>  want 
>>>   for your
>>>>>>    site
>>>>>>>    and
>>>>>>>>     to find
>>>>>>>>>>>>>    simple ways of supporting 
> those 
>>>   features for
>>>>>>    you.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>    Thanks.
>>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
If someone's looking for a way to help with the porting
effort, consider tackling the creation of an index.html
page in each subdir of the content/ tree (other than the
base which has an /index.md).  The contents of the file
should be just

{% include 'default' %}

(see the docs dir for an example page that can be copied)
and the build system will take care of generating the page
in a consistent fashion with the rest of the site.  Once
that is done there are a lot of pages that function like
index pages but are written in markdown that can be deleted,
like docs.md and its ilk.  Nanoc transforms that file into
/docs/index.html but that's kinda crufty and not supported
by the CMS, which only lets you alter file extensions not paths.



> On Wednesday, March 19, 2014 8:54 AM, Joe Schaefer <jo...@yahoo.com> wrote:
> > I just pencilled in snippet preprocessing support into
> the thrift builds.  Once Jake and I have settled on the
> feature set of ASF::Value::Snippet, and we have ported
> the snippet calling text within the markdown pages
> to the new format, things will just work (knock on wood).
> 
> 
> 
> 
>>  On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer 
> <jo...@yahoo.com> wrote:
>>  > Sure I understand that need.  If there's a way of pulling the 
> document 
>>  sources directly from the web I can parse the content to look for snippet 
>>  markers and make those available to the template system.  That's pretty 
> much 
>>  how www.apache.org is generated.
>> 
>>  Sent from my iPhone
>> 
>> 
>>>   On Mar 19, 2014, at 5:28 AM, Henrique Mendonça 
> <he...@apache.org> 
>>  wrote:
>>> 
>>>   Hi Joe,
>>> 
>>>   Thanks for your effort. I just wanted to add that the code snippets 
> are a
>>>   crucial feature for this project, which has way more target languages 
> than
>>>   active contributors. In our case, reducing manual maintenance costs is 
> much
>>>   more important than the total site build time. Perhaps we can also 
> solve
>>>   this in the CMS, though.
>>> 
>>>   - Henrique
>>> 
>>> 
>>>>   On 19 March 2014 03:17, Joe Schaefer 
> <jo...@yahoo.com> 
>>  wrote:
>>>> 
>>>>   A couple more thoughts regarding the background on the CMS...
>>>>   the bulk of the focus of the CMS up until now has been to
>>>>   support really big sites like maven and openoffice, both of
>>>>   which have websites well over 5GB worth of text files.  The
>>>>   build system was hollowed out and revamped to support external
>>>>   builds in other programming languages, as well as scaling up
>>>>   the perl builds to provide about 8 child processes that build
>>>>   the site in parallel by default.  Full site build times for
>>>>   openoffice went from over 30 minutes to between 5 to 10 minutes
>>>>   depending on disk activity, which made experimentation with 
> site-wide
>>>>   changes feasible on a reasonable timeframe.  At first the project 
> was 
>>  in
>>>>   the habit of running the builds locally before checking in their 
>>  changes
>>>>   because the delay in feedback post-commit was unreasonable, but 
> with 
>>  smart
>>>>   use of SSI the were able to cut down on the number of changes that 
> 
>>  required
>>>>   full site builds and hence no longer bother with the whole 
> pre-build 
>>  mumbo
>>>>   jumbo before checking in changes.  The CMS is designed to only 
> build 
>>  pages
>>>>   that were altered, and if you just edit a page or two only those 
> pages 
>>  and
>>>>   the pages that depend on them will be built.
>>>> 
>>>>   Now that I've turned my attention to thrift, there are several 
> 
>>  aspects
>>>>   that are better off being retuned based on the modest size of the 
> site.
>>>>   First of all you have a sitemap url that lists all of your 
>>  markdown-based
>>>>   pages, which would be a nonstarter for a site like openoffice.  
> The
>>>>   implications of the sitemap url are that every page needs to be 
> built 
>>  in
>>>>   memory just to generate that page, which leads to a lot of 
> redundancy 
>>  in a
>>>>   build system designed to run as forked child processes.  We can do 
> 
>>  better...
>>>> 
>>>>   I've done two things to make this work well- first I made the 
>>  number of
>>>>   child processes "aka runners" tunable on a per-project 
> basis, 
>>  and since the
>>>>   sitemap is going to build every page anyway as the slowest page to 
> 
>>  build, I
>>>>   memoized the main view that builds the markdown pages for thrift.  
> The 
>>  best
>>>>   results are when there's only one runner so we get the full 
> benefit 
>>  of
>>>>   memoization: typical site build times are consistently under 2 
> seconds 
>>  now.
>>>> 
>>>>   You'll appreciate why I am such a performance stickler for the 
> CMS 
>>  when
>>>>   you start using the bookmarklet, since builds are the only 
> asynchronous
>>>>   part of the process from making a change to a page and publishing 
> the
>>>>   results.  Ideally when the system is working well the builds 
> happen 
>>  before
>>>>   you have time to go looking for them, but you do need to be 
> mindful of 
>>  not
>>>>   publishing before the built pages have been committed back to svn 
> by
>>>>   buildbot.
>>>> 
>>>> 
>>>> 
>>>>>   On Monday, March 17, 2014 11:59 PM, Joe Schaefer 
>>  <jo...@yahoo.com>
>>>>   wrote:
>>>>>>   Ok there's enough of an idea about how to port the 
> rest of 
>>  the site's
>>>>>   pages over based on the porting work I've already done 
> that 
>>  it's time
>>>>>   for me to step back and let you guys catch up.  Basically the 
> idea 
>>  is
>>>>   that while
>>>>>   there is templating support in the markdown sources, it's 
>>  fairly limited
>>>>>   compared to what nanoc offers, but instead of writing a lot of 
> 
>>  complex
>>>>   template
>>>>>   code into your sources, with the cms you just add code to 
>>  lib/view.pmand/or
>>>>>   lib/path.pm to keep the document sources simple and just add 
> more
>>>>   template
>>>>>   variables.  What I just finished in lib/view.pm and 
> lib/path.pm is
>>>>   directory
>>>>>   listing support for /docs.html but it can be carried over to 
>>  similar
>>>>   pages.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>>   On Monday, March 17, 2014 9:16 PM, Joe Schaefer
>>>>>   <jo...@yahoo.com> wrote:
>>>>>>>   Interesting ideas, thanks.  FWIW I think that sort
>>>>>>   of thing might be best supported as a periodic cron
>>>>>>   if we can write something stable enough, because pulling
>>>>>>   stuff out of the git repo is something the CMS isn't 
> going
>>>>>>   to do all that well being an svn application.
>>>>>> 
>>>>>>   The CMS build results are available at
>>>>   http://thrift.staging.apache.org/
>>>>>>   feel free to play with the sources in 
>>  repos/asf/thrift/cms-site/trunk.
>>>>>>   It's very fast, probably an order of magnitude faster 
> than 
>>  your current
>>>>> 
>>>>>>   tech.
>>>>>>   Whole site builds in two seconds; fractions of a second 
> for 
>>  typical
>>>>   mods to
>>>>> 
>>>>>>   content/ markdown pages.
>>>>>> 
>>>>>>   The CMS bookmarklet is compatible with the staging site 
> FWIW.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>>    On Monday, March 17, 2014 7:40 PM, Roger Meier
>>>>>>   <ro...@bufferoverflow.ch> wrote:
>>>>>>>>   Hi Joe & Co
>>>>>>> 
>>>>>>>    thanks for this test run with Apache CMS!
>>>>>>> 
>>>>>>>    What I would love to see is this:
>>>>>>> 
>>>>>>>    Source file: => Web Site URL:
>>>>>>>    test/README.md => thrift.apache.org/test
>>>>>>>    test/STATUS.md => thrift.apache.org/test/status
>>>>>>>    test/keys/README.md => thrift.apache.org/test/keys
>>>>>>>    lib/<lang>/README.md => 
>>  thrift.apache.org/lib/<lang>
>>>>>>>    lib/<lang>/test/README.md =>
>>>>>>   thrift.apache.org/lib/<lang>/test
>>>>>>>    lib/<lang>/examples/README.md =>
>>>>>>>    thrift.apache.org/lib/<lang>/examples
>>>>>>>    compiler/cpp/README.md => 
> thrift.apache.org/compiler
>>>>>>>    debian/README.md => thrift.apache.org/debian
>>>>>>>    contrib/<topic>/README.md => 
>>  thrift.apache.org/<topic>
>>>>>>> 
>>>>>>>    just made the following patch to rename all file to 
> .md 
>>  within our
>>>>>   source
>>>>>>>    tree: 
> https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>>    ... we have *41* md's within the source tree and 
>>  that's the
>>>>>   place
>>>>>>   where
>>>>>>>    people look for documentation first. => simple to 
>>  manage
>>>>>>>    Would be user friendly to have all of this online 
> with 
>>  each release
>>>>>>>    with the URL layout mentioned above.
>>>>>>> 
>>>>>>>    just received the buildboot...
>>>>>>>    Do you have kind of a preview of your prototype?
>>>>>>> 
>>>>>>>    all the best!
>>>>>>>    -roger
>>>>>>>    ;-r
>>>>>>> 
>>>>>>> 
>>>>>>>    Quoting Jake Farrell <jf...@apache.org>:
>>>>>>> 
>>>>>>>>     No objections from me
>>>>>>>> 
>>>>>>>>     -Jake
>>>>>>>> 
>>>>>>>> 
>>>>>>>>     On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer
>>>>>>>    <jo...@yahoo.com>wrote:
>>>>>>>> 
>>>>>>>>>     Any objections to me making a copy of the 
> site
>>>>>>>>>     tree alongside it called cms-site?  I'd 
> like 
>>  to
>>>>>>>>>     get cracking on knocking up the supporting 
> perl
>>>>>>>>>     for this so we can continue to brainstorm...
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>   On Sunday, March 16, 2014 1:53 PM, Joe 
> Schaefer
>>>>>>>    <jo...@yahoo.com>
>>>>>>>>>     wrote:
>>>>>>>>>>>   On Sunday, March 16, 2014 1:40 PM, 
> Jake 
>>  Farrell
>>>>>>>    <jf...@apache.org>
>>>>>>>>>>   wrote:
>>>>>>>>>> 
>>>>>>>>>>   Hey Joe
>>>>>>>>>>>   Thanks for reaching out, we chose to 
> go 
>>  with a site
>>>>>>   generator
>>>>>>>    over the
>>>>>>>>>>>   Apache CMS due to it initially not 
> meeting 
>>  all of
>>>>>   our
>>>>>>   needs.
>>>>>>>    Our current
>>>>>>>>>>>   needs for the site are
>>>>>>>>>>> 
>>>>>>>>>>>   - Markdown to html conversion
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>   That one's easy- its the default for 
> the 
>>  cms.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>   - Global variables/config usable 
> throughout 
>>  in a
>>>>>   template
>>>>>> 
>>>>>>>    based layout
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>   Easy too- just create a perl hash 
> somewhere and 
>>  make it
>>>>>>   available
>>>>>>>    to
>>>>>>>>>     your views.
>>>>>>>>>>   Code your views to pass that hash along to 
> your
>>>>>   templates
>>>>>>   and you
>>>>>>>    are
>>>>>>>>>     all set.
>>>>>>>>>>   Note if your hash contains objects you can 
> make 
>>  method
>>>>>   calls
>>>>>>   on
>>>>>>>    them in
>>>>>>>>>     your
>>>>>>>>>>   templates.  Note: while I wouldn't 
>>  recommend this in
>>>>> 
>>>>>>   general,
>>>>>>>    for smaller
>>>>>>>>>>   projects like thrift that prefer 
> convenience 
>>  over
>>>>>   separation
>>>>>>   of
>>>>>>>    concerns
>>>>>>>>>     you can
>>>>>>>>>>   have the django template engine do a pass 
> over 
>>  your
>>>>>   markdown
>>>>>>>    before
>>>>>>>>>     passing it
>>>>>>>>>>   along to your actual template page, just 
> as is 
>>  seemingly
>>>>> 
>>>>>>   common to
>>>>>>>    other
>>>>>>>>>     popular
>>>>>>>>>>   site generation software.
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>>   - Syntax highlighting
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>   Comes with python's markdown support, 
> but 
>>  some
>>>>>   people
>>>>>>   prefer
>>>>>>>    the look of
>>>>>>>>>>   javascript highlighters.
>>>>>>>>>> 
>>>>>>>>>>>   - Easily include code snippets from 
> our 
>>  source code
>>>>>   base
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>   Statically I hope.  No idea how to pull 
>>  snippets out of
>>>>>   your
>>>>>>   git
>>>>>>>    repo
>>>>>>>>>     via the
>>>>>>>>>>   cms.
>>>>>>>>>> 
>>>>>>>>>>>   - Ability to locally test before 
> committing
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>   Belt and suspenders with the cms- you can 
> build 
>>  your
>>>>>   changes
>>>>>>>    before
>>>>>>>>>     committing
>>>>>>>>>>   with the build scripts, browse your 
> changes 
>>  before
>>>>>   committing
>>>>>>   via
>>>>>>>    the cms
>>>>>>>>>>   webgui, or simply commit your changes and 
> view 
>>  the
>>>>>   staging
>>>>>>   site
>>>>>>>    prior to
>>>>>>>>>     live
>>>>>>>>>>   publication (which is a separate step).
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>   -Jake
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>>   On Sun, Mar 16, 2014 at 12:44 PM, Joe 
>>  Schaefer
>>>>>>>>>>   <jo...@yahoo.com>wrote:
>>>>>>>>>>> 
>>>>>>>>>>>>   As it so happens I am interested 
> in 
>>  working on
>>>>>>   supporting
>>>>>>>>>>>>   thrift's use case as a 
> potential 
>>  user of
>>>>>   the
>>>>>>   Apache
>>>>>>>    CMS.
>>>>>>>>>>>>   While the CMS works well for 
> massive 
>>  projects
>>>>>   there
>>>>>>   are
>>>>>>>>>>>>   things it could do better at 
> supporting 
>>  for
>>>>>   more
>>>>>>   moderate
>>>>>>>>>>>>   sized sites like thrift's.
>>>>>>>>>>>> 
>>>>>>>>>>>>   I'd therefore like to engage 
> you 
>>  folks in a
>>>>> 
>>>>>>>    brainstorming session
>>>>>>>>>>>>   about what sorts of features you 
> want 
>>  for your
>>>>>   site
>>>>>>   and
>>>>>>>    to find
>>>>>>>>>>>>   simple ways of supporting those 
>>  features for
>>>>>   you.
>>>>>>>>>>>> 
>>>>>>>>>>>>   Thanks.
>>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
I just pencilled in snippet preprocessing support into
the thrift builds.  Once Jake and I have settled on the
feature set of ASF::Value::Snippet, and we have ported
the snippet calling text within the markdown pages
to the new format, things will just work (knock on wood).



> On Wednesday, March 19, 2014 6:48 AM, Joseph Schaefer <jo...@yahoo.com> wrote:
> > Sure I understand that need.  If there's a way of pulling the document 
> sources directly from the web I can parse the content to look for snippet 
> markers and make those available to the template system.  That's pretty much 
> how www.apache.org is generated.
> 
> Sent from my iPhone
> 
> 
>>  On Mar 19, 2014, at 5:28 AM, Henrique Mendonça <he...@apache.org> 
> wrote:
>> 
>>  Hi Joe,
>> 
>>  Thanks for your effort. I just wanted to add that the code snippets are a
>>  crucial feature for this project, which has way more target languages than
>>  active contributors. In our case, reducing manual maintenance costs is much
>>  more important than the total site build time. Perhaps we can also solve
>>  this in the CMS, though.
>> 
>>  - Henrique
>> 
>> 
>>>  On 19 March 2014 03:17, Joe Schaefer <jo...@yahoo.com> 
> wrote:
>>> 
>>>  A couple more thoughts regarding the background on the CMS...
>>>  the bulk of the focus of the CMS up until now has been to
>>>  support really big sites like maven and openoffice, both of
>>>  which have websites well over 5GB worth of text files.  The
>>>  build system was hollowed out and revamped to support external
>>>  builds in other programming languages, as well as scaling up
>>>  the perl builds to provide about 8 child processes that build
>>>  the site in parallel by default.  Full site build times for
>>>  openoffice went from over 30 minutes to between 5 to 10 minutes
>>>  depending on disk activity, which made experimentation with site-wide
>>>  changes feasible on a reasonable timeframe.  At first the project was 
> in
>>>  the habit of running the builds locally before checking in their 
> changes
>>>  because the delay in feedback post-commit was unreasonable, but with 
> smart
>>>  use of SSI the were able to cut down on the number of changes that 
> required
>>>  full site builds and hence no longer bother with the whole pre-build 
> mumbo
>>>  jumbo before checking in changes.  The CMS is designed to only build 
> pages
>>>  that were altered, and if you just edit a page or two only those pages 
> and
>>>  the pages that depend on them will be built.
>>> 
>>>  Now that I've turned my attention to thrift, there are several 
> aspects
>>>  that are better off being retuned based on the modest size of the site.
>>>  First of all you have a sitemap url that lists all of your 
> markdown-based
>>>  pages, which would be a nonstarter for a site like openoffice.  The
>>>  implications of the sitemap url are that every page needs to be built 
> in
>>>  memory just to generate that page, which leads to a lot of redundancy 
> in a
>>>  build system designed to run as forked child processes.  We can do 
> better...
>>> 
>>>  I've done two things to make this work well- first I made the 
> number of
>>>  child processes "aka runners" tunable on a per-project basis, 
> and since the
>>>  sitemap is going to build every page anyway as the slowest page to 
> build, I
>>>  memoized the main view that builds the markdown pages for thrift.  The 
> best
>>>  results are when there's only one runner so we get the full benefit 
> of
>>>  memoization: typical site build times are consistently under 2 seconds 
> now.
>>> 
>>>  You'll appreciate why I am such a performance stickler for the CMS 
> when
>>>  you start using the bookmarklet, since builds are the only asynchronous
>>>  part of the process from making a change to a page and publishing the
>>>  results.  Ideally when the system is working well the builds happen 
> before
>>>  you have time to go looking for them, but you do need to be mindful of 
> not
>>>  publishing before the built pages have been committed back to svn by
>>>  buildbot.
>>> 
>>> 
>>> 
>>>>  On Monday, March 17, 2014 11:59 PM, Joe Schaefer 
> <jo...@yahoo.com>
>>>  wrote:
>>>>>  Ok there's enough of an idea about how to port the rest of 
> the site's
>>>>  pages over based on the porting work I've already done that 
> it's time
>>>>  for me to step back and let you guys catch up.  Basically the idea 
> is
>>>  that while
>>>>  there is templating support in the markdown sources, it's 
> fairly limited
>>>>  compared to what nanoc offers, but instead of writing a lot of 
> complex
>>>  template
>>>>  code into your sources, with the cms you just add code to 
> lib/view.pmand/or
>>>>  lib/path.pm to keep the document sources simple and just add more
>>>  template
>>>>  variables.  What I just finished in lib/view.pm and lib/path.pm is
>>>  directory
>>>>  listing support for /docs.html but it can be carried over to 
> similar
>>>  pages.
>>>> 
>>>> 
>>>> 
>>>> 
>>>>>  On Monday, March 17, 2014 9:16 PM, Joe Schaefer
>>>>  <jo...@yahoo.com> wrote:
>>>>>>  Interesting ideas, thanks.  FWIW I think that sort
>>>>>  of thing might be best supported as a periodic cron
>>>>>  if we can write something stable enough, because pulling
>>>>>  stuff out of the git repo is something the CMS isn't going
>>>>>  to do all that well being an svn application.
>>>>> 
>>>>>  The CMS build results are available at
>>>  http://thrift.staging.apache.org/
>>>>>  feel free to play with the sources in 
> repos/asf/thrift/cms-site/trunk.
>>>>>  It's very fast, probably an order of magnitude faster than 
> your current
>>>> 
>>>>>  tech.
>>>>>  Whole site builds in two seconds; fractions of a second for 
> typical
>>>  mods to
>>>> 
>>>>>  content/ markdown pages.
>>>>> 
>>>>>  The CMS bookmarklet is compatible with the staging site FWIW.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>>   On Monday, March 17, 2014 7:40 PM, Roger Meier
>>>>>  <ro...@bufferoverflow.ch> wrote:
>>>>>>>  Hi Joe & Co
>>>>>> 
>>>>>>   thanks for this test run with Apache CMS!
>>>>>> 
>>>>>>   What I would love to see is this:
>>>>>> 
>>>>>>   Source file: => Web Site URL:
>>>>>>   test/README.md => thrift.apache.org/test
>>>>>>   test/STATUS.md => thrift.apache.org/test/status
>>>>>>   test/keys/README.md => thrift.apache.org/test/keys
>>>>>>   lib/<lang>/README.md => 
> thrift.apache.org/lib/<lang>
>>>>>>   lib/<lang>/test/README.md =>
>>>>>  thrift.apache.org/lib/<lang>/test
>>>>>>   lib/<lang>/examples/README.md =>
>>>>>>   thrift.apache.org/lib/<lang>/examples
>>>>>>   compiler/cpp/README.md => thrift.apache.org/compiler
>>>>>>   debian/README.md => thrift.apache.org/debian
>>>>>>   contrib/<topic>/README.md => 
> thrift.apache.org/<topic>
>>>>>> 
>>>>>>   just made the following patch to rename all file to .md 
> within our
>>>>  source
>>>>>>   tree: https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>>   ... we have *41* md's within the source tree and 
> that's the
>>>>  place
>>>>>  where
>>>>>>   people look for documentation first. => simple to 
> manage
>>>>>>   Would be user friendly to have all of this online with 
> each release
>>>>>>   with the URL layout mentioned above.
>>>>>> 
>>>>>>   just received the buildboot...
>>>>>>   Do you have kind of a preview of your prototype?
>>>>>> 
>>>>>>   all the best!
>>>>>>   -roger
>>>>>>   ;-r
>>>>>> 
>>>>>> 
>>>>>>   Quoting Jake Farrell <jf...@apache.org>:
>>>>>> 
>>>>>>>    No objections from me
>>>>>>> 
>>>>>>>    -Jake
>>>>>>> 
>>>>>>> 
>>>>>>>    On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer
>>>>>>   <jo...@yahoo.com>wrote:
>>>>>>> 
>>>>>>>>    Any objections to me making a copy of the site
>>>>>>>>    tree alongside it called cms-site?  I'd like 
> to
>>>>>>>>    get cracking on knocking up the supporting perl
>>>>>>>>    for this so we can continue to brainstorm...
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>  On Sunday, March 16, 2014 1:53 PM, Joe Schaefer
>>>>>>   <jo...@yahoo.com>
>>>>>>>>    wrote:
>>>>>>>>>>  On Sunday, March 16, 2014 1:40 PM, Jake 
> Farrell
>>>>>>   <jf...@apache.org>
>>>>>>>>>  wrote:
>>>>>>>>> 
>>>>>>>>>  Hey Joe
>>>>>>>>>>  Thanks for reaching out, we chose to go 
> with a site
>>>>>  generator
>>>>>>   over the
>>>>>>>>>>  Apache CMS due to it initially not meeting 
> all of
>>>>  our
>>>>>  needs.
>>>>>>   Our current
>>>>>>>>>>  needs for the site are
>>>>>>>>>> 
>>>>>>>>>>  - Markdown to html conversion
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  That one's easy- its the default for the 
> cms.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>  - Global variables/config usable throughout 
> in a
>>>>  template
>>>>> 
>>>>>>   based layout
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  Easy too- just create a perl hash somewhere and 
> make it
>>>>>  available
>>>>>>   to
>>>>>>>>    your views.
>>>>>>>>>  Code your views to pass that hash along to your
>>>>  templates
>>>>>  and you
>>>>>>   are
>>>>>>>>    all set.
>>>>>>>>>  Note if your hash contains objects you can make 
> method
>>>>  calls
>>>>>  on
>>>>>>   them in
>>>>>>>>    your
>>>>>>>>>  templates.  Note: while I wouldn't 
> recommend this in
>>>> 
>>>>>  general,
>>>>>>   for smaller
>>>>>>>>>  projects like thrift that prefer convenience 
> over
>>>>  separation
>>>>>  of
>>>>>>   concerns
>>>>>>>>    you can
>>>>>>>>>  have the django template engine do a pass over 
> your
>>>>  markdown
>>>>>>   before
>>>>>>>>    passing it
>>>>>>>>>  along to your actual template page, just as is 
> seemingly
>>>> 
>>>>>  common to
>>>>>>   other
>>>>>>>>    popular
>>>>>>>>>  site generation software.
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>>  - Syntax highlighting
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  Comes with python's markdown support, but 
> some
>>>>  people
>>>>>  prefer
>>>>>>   the look of
>>>>>>>>>  javascript highlighters.
>>>>>>>>> 
>>>>>>>>>>  - Easily include code snippets from our 
> source code
>>>>  base
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  Statically I hope.  No idea how to pull 
> snippets out of
>>>>  your
>>>>>  git
>>>>>>   repo
>>>>>>>>    via the
>>>>>>>>>  cms.
>>>>>>>>> 
>>>>>>>>>>  - Ability to locally test before committing
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>  Belt and suspenders with the cms- you can build 
> your
>>>>  changes
>>>>>>   before
>>>>>>>>    committing
>>>>>>>>>  with the build scripts, browse your changes 
> before
>>>>  committing
>>>>>  via
>>>>>>   the cms
>>>>>>>>>  webgui, or simply commit your changes and view 
> the
>>>>  staging
>>>>>  site
>>>>>>   prior to
>>>>>>>>    live
>>>>>>>>>  publication (which is a separate step).
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>  -Jake
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>  On Sun, Mar 16, 2014 at 12:44 PM, Joe 
> Schaefer
>>>>>>>>>  <jo...@yahoo.com>wrote:
>>>>>>>>>> 
>>>>>>>>>>>  As it so happens I am interested in 
> working on
>>>>>  supporting
>>>>>>>>>>>  thrift's use case as a potential 
> user of
>>>>  the
>>>>>  Apache
>>>>>>   CMS.
>>>>>>>>>>>  While the CMS works well for massive 
> projects
>>>>  there
>>>>>  are
>>>>>>>>>>>  things it could do better at supporting 
> for
>>>>  more
>>>>>  moderate
>>>>>>>>>>>  sized sites like thrift's.
>>>>>>>>>>> 
>>>>>>>>>>>  I'd therefore like to engage you 
> folks in a
>>>> 
>>>>>>   brainstorming session
>>>>>>>>>>>  about what sorts of features you want 
> for your
>>>>  site
>>>>>  and
>>>>>>   to find
>>>>>>>>>>>  simple ways of supporting those 
> features for
>>>>  you.
>>>>>>>>>>> 
>>>>>>>>>>>  Thanks.
>>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joseph Schaefer <jo...@yahoo.com>.
Sure I understand that need.  If there's a way of pulling the document sources directly from the web I can parse the content to look for snippet markers and make those available to the template system.  That's pretty much how www.apache.org is generated.

Sent from my iPhone

> On Mar 19, 2014, at 5:28 AM, Henrique Mendonça <he...@apache.org> wrote:
> 
> Hi Joe,
> 
> Thanks for your effort. I just wanted to add that the code snippets are a
> crucial feature for this project, which has way more target languages than
> active contributors. In our case, reducing manual maintenance costs is much
> more important than the total site build time. Perhaps we can also solve
> this in the CMS, though.
> 
> - Henrique
> 
> 
>> On 19 March 2014 03:17, Joe Schaefer <jo...@yahoo.com> wrote:
>> 
>> A couple more thoughts regarding the background on the CMS...
>> the bulk of the focus of the CMS up until now has been to
>> support really big sites like maven and openoffice, both of
>> which have websites well over 5GB worth of text files.  The
>> build system was hollowed out and revamped to support external
>> builds in other programming languages, as well as scaling up
>> the perl builds to provide about 8 child processes that build
>> the site in parallel by default.  Full site build times for
>> openoffice went from over 30 minutes to between 5 to 10 minutes
>> depending on disk activity, which made experimentation with site-wide
>> changes feasible on a reasonable timeframe.  At first the project was in
>> the habit of running the builds locally before checking in their changes
>> because the delay in feedback post-commit was unreasonable, but with smart
>> use of SSI the were able to cut down on the number of changes that required
>> full site builds and hence no longer bother with the whole pre-build mumbo
>> jumbo before checking in changes.  The CMS is designed to only build pages
>> that were altered, and if you just edit a page or two only those pages and
>> the pages that depend on them will be built.
>> 
>> Now that I've turned my attention to thrift, there are several aspects
>> that are better off being retuned based on the modest size of the site.
>> First of all you have a sitemap url that lists all of your markdown-based
>> pages, which would be a nonstarter for a site like openoffice.  The
>> implications of the sitemap url are that every page needs to be built in
>> memory just to generate that page, which leads to a lot of redundancy in a
>> build system designed to run as forked child processes.  We can do better...
>> 
>> I've done two things to make this work well- first I made the number of
>> child processes "aka runners" tunable on a per-project basis, and since the
>> sitemap is going to build every page anyway as the slowest page to build, I
>> memoized the main view that builds the markdown pages for thrift.  The best
>> results are when there's only one runner so we get the full benefit of
>> memoization: typical site build times are consistently under 2 seconds now.
>> 
>> You'll appreciate why I am such a performance stickler for the CMS when
>> you start using the bookmarklet, since builds are the only asynchronous
>> part of the process from making a change to a page and publishing the
>> results.  Ideally when the system is working well the builds happen before
>> you have time to go looking for them, but you do need to be mindful of not
>> publishing before the built pages have been committed back to svn by
>> buildbot.
>> 
>> 
>> 
>>> On Monday, March 17, 2014 11:59 PM, Joe Schaefer <jo...@yahoo.com>
>> wrote:
>>>> Ok there's enough of an idea about how to port the rest of the site's
>>> pages over based on the porting work I've already done that it's time
>>> for me to step back and let you guys catch up.  Basically the idea is
>> that while
>>> there is templating support in the markdown sources, it's fairly limited
>>> compared to what nanoc offers, but instead of writing a lot of complex
>> template
>>> code into your sources, with the cms you just add code to lib/view.pmand/or
>>> lib/path.pm to keep the document sources simple and just add more
>> template
>>> variables.  What I just finished in lib/view.pm and lib/path.pm is
>> directory
>>> listing support for /docs.html but it can be carried over to similar
>> pages.
>>> 
>>> 
>>> 
>>> 
>>>> On Monday, March 17, 2014 9:16 PM, Joe Schaefer
>>> <jo...@yahoo.com> wrote:
>>>>> Interesting ideas, thanks.  FWIW I think that sort
>>>> of thing might be best supported as a periodic cron
>>>> if we can write something stable enough, because pulling
>>>> stuff out of the git repo is something the CMS isn't going
>>>> to do all that well being an svn application.
>>>> 
>>>> The CMS build results are available at
>> http://thrift.staging.apache.org/
>>>> feel free to play with the sources in repos/asf/thrift/cms-site/trunk.
>>>> It's very fast, probably an order of magnitude faster than your current
>>> 
>>>> tech.
>>>> Whole site builds in two seconds; fractions of a second for typical
>> mods to
>>> 
>>>> content/ markdown pages.
>>>> 
>>>> The CMS bookmarklet is compatible with the staging site FWIW.
>>>> 
>>>> 
>>>> 
>>>> 
>>>>>  On Monday, March 17, 2014 7:40 PM, Roger Meier
>>>> <ro...@bufferoverflow.ch> wrote:
>>>>>> Hi Joe & Co
>>>>> 
>>>>>  thanks for this test run with Apache CMS!
>>>>> 
>>>>>  What I would love to see is this:
>>>>> 
>>>>>  Source file: => Web Site URL:
>>>>>  test/README.md => thrift.apache.org/test
>>>>>  test/STATUS.md => thrift.apache.org/test/status
>>>>>  test/keys/README.md => thrift.apache.org/test/keys
>>>>>  lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>>>>  lib/<lang>/test/README.md =>
>>>> thrift.apache.org/lib/<lang>/test
>>>>>  lib/<lang>/examples/README.md =>
>>>>>  thrift.apache.org/lib/<lang>/examples
>>>>>  compiler/cpp/README.md => thrift.apache.org/compiler
>>>>>  debian/README.md => thrift.apache.org/debian
>>>>>  contrib/<topic>/README.md => thrift.apache.org/<topic>
>>>>> 
>>>>>  just made the following patch to rename all file to .md within our
>>> source
>>>>>  tree: https://issues.apache.org/jira/browse/THRIFT-2407
>>>>>  ... we have *41* md's within the source tree and that's the
>>> place
>>>> where
>>>>>  people look for documentation first. => simple to manage
>>>>>  Would be user friendly to have all of this online with each release
>>>>>  with the URL layout mentioned above.
>>>>> 
>>>>>  just received the buildboot...
>>>>>  Do you have kind of a preview of your prototype?
>>>>> 
>>>>>  all the best!
>>>>>  -roger
>>>>>  ;-r
>>>>> 
>>>>> 
>>>>>  Quoting Jake Farrell <jf...@apache.org>:
>>>>> 
>>>>>>   No objections from me
>>>>>> 
>>>>>>   -Jake
>>>>>> 
>>>>>> 
>>>>>>   On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer
>>>>>  <jo...@yahoo.com>wrote:
>>>>>> 
>>>>>>>   Any objections to me making a copy of the site
>>>>>>>   tree alongside it called cms-site?  I'd like to
>>>>>>>   get cracking on knocking up the supporting perl
>>>>>>>   for this so we can continue to brainstorm...
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>>> On Sunday, March 16, 2014 1:53 PM, Joe Schaefer
>>>>>  <jo...@yahoo.com>
>>>>>>>   wrote:
>>>>>>>>> On Sunday, March 16, 2014 1:40 PM, Jake Farrell
>>>>>  <jf...@apache.org>
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>> Hey Joe
>>>>>>>>> Thanks for reaching out, we chose to go with a site
>>>> generator
>>>>>  over the
>>>>>>>>> Apache CMS due to it initially not meeting all of
>>> our
>>>> needs.
>>>>>  Our current
>>>>>>>>> needs for the site are
>>>>>>>>> 
>>>>>>>>> - Markdown to html conversion
>>>>>>>> 
>>>>>>>> 
>>>>>>>> That one's easy- its the default for the cms.
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> - Global variables/config usable throughout in a
>>> template
>>>> 
>>>>>  based layout
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Easy too- just create a perl hash somewhere and make it
>>>> available
>>>>>  to
>>>>>>>   your views.
>>>>>>>> Code your views to pass that hash along to your
>>> templates
>>>> and you
>>>>>  are
>>>>>>>   all set.
>>>>>>>> Note if your hash contains objects you can make method
>>> calls
>>>> on
>>>>>  them in
>>>>>>>   your
>>>>>>>> templates.  Note: while I wouldn't recommend this in
>>> 
>>>> general,
>>>>>  for smaller
>>>>>>>> projects like thrift that prefer convenience over
>>> separation
>>>> of
>>>>>  concerns
>>>>>>>   you can
>>>>>>>> have the django template engine do a pass over your
>>> markdown
>>>>>  before
>>>>>>>   passing it
>>>>>>>> along to your actual template page, just as is seemingly
>>> 
>>>> common to
>>>>>  other
>>>>>>>   popular
>>>>>>>> site generation software.
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> - Syntax highlighting
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Comes with python's markdown support, but some
>>> people
>>>> prefer
>>>>>  the look of
>>>>>>>> javascript highlighters.
>>>>>>>> 
>>>>>>>>> - Easily include code snippets from our source code
>>> base
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Statically I hope.  No idea how to pull snippets out of
>>> your
>>>> git
>>>>>  repo
>>>>>>>   via the
>>>>>>>> cms.
>>>>>>>> 
>>>>>>>>> - Ability to locally test before committing
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Belt and suspenders with the cms- you can build your
>>> changes
>>>>>  before
>>>>>>>   committing
>>>>>>>> with the build scripts, browse your changes before
>>> committing
>>>> via
>>>>>  the cms
>>>>>>>> webgui, or simply commit your changes and view the
>>> staging
>>>> site
>>>>>  prior to
>>>>>>>   live
>>>>>>>> publication (which is a separate step).
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> -Jake
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
>>>>>>>> <jo...@yahoo.com>wrote:
>>>>>>>>> 
>>>>>>>>>> As it so happens I am interested in working on
>>>> supporting
>>>>>>>>>> thrift's use case as a potential user of
>>> the
>>>> Apache
>>>>>  CMS.
>>>>>>>>>> While the CMS works well for massive projects
>>> there
>>>> are
>>>>>>>>>> things it could do better at supporting for
>>> more
>>>> moderate
>>>>>>>>>> sized sites like thrift's.
>>>>>>>>>> 
>>>>>>>>>> I'd therefore like to engage you folks in a
>>> 
>>>>>  brainstorming session
>>>>>>>>>> about what sorts of features you want for your
>>> site
>>>> and
>>>>>  to find
>>>>>>>>>> simple ways of supporting those features for
>>> you.
>>>>>>>>>> 
>>>>>>>>>> Thanks.
>> 

Re: reconsidering the Apache CMS...

Posted by Henrique Mendonça <he...@apache.org>.
Hi Joe,

Thanks for your effort. I just wanted to add that the code snippets are a
crucial feature for this project, which has way more target languages than
active contributors. In our case, reducing manual maintenance costs is much
more important than the total site build time. Perhaps we can also solve
this in the CMS, though.

- Henrique


On 19 March 2014 03:17, Joe Schaefer <jo...@yahoo.com> wrote:

> A couple more thoughts regarding the background on the CMS...
> the bulk of the focus of the CMS up until now has been to
> support really big sites like maven and openoffice, both of
> which have websites well over 5GB worth of text files.  The
> build system was hollowed out and revamped to support external
> builds in other programming languages, as well as scaling up
> the perl builds to provide about 8 child processes that build
> the site in parallel by default.  Full site build times for
> openoffice went from over 30 minutes to between 5 to 10 minutes
> depending on disk activity, which made experimentation with site-wide
> changes feasible on a reasonable timeframe.  At first the project was in
> the habit of running the builds locally before checking in their changes
> because the delay in feedback post-commit was unreasonable, but with smart
> use of SSI the were able to cut down on the number of changes that required
> full site builds and hence no longer bother with the whole pre-build mumbo
> jumbo before checking in changes.  The CMS is designed to only build pages
> that were altered, and if you just edit a page or two only those pages and
> the pages that depend on them will be built.
>
> Now that I've turned my attention to thrift, there are several aspects
> that are better off being retuned based on the modest size of the site.
> First of all you have a sitemap url that lists all of your markdown-based
> pages, which would be a nonstarter for a site like openoffice.  The
> implications of the sitemap url are that every page needs to be built in
> memory just to generate that page, which leads to a lot of redundancy in a
> build system designed to run as forked child processes.  We can do better...
>
> I've done two things to make this work well- first I made the number of
> child processes "aka runners" tunable on a per-project basis, and since the
> sitemap is going to build every page anyway as the slowest page to build, I
> memoized the main view that builds the markdown pages for thrift.  The best
> results are when there's only one runner so we get the full benefit of
> memoization: typical site build times are consistently under 2 seconds now.
>
> You'll appreciate why I am such a performance stickler for the CMS when
> you start using the bookmarklet, since builds are the only asynchronous
> part of the process from making a change to a page and publishing the
> results.  Ideally when the system is working well the builds happen before
> you have time to go looking for them, but you do need to be mindful of not
> publishing before the built pages have been committed back to svn by
> buildbot.
>
>
>
> > On Monday, March 17, 2014 11:59 PM, Joe Schaefer <jo...@yahoo.com>
> wrote:
> > > Ok there's enough of an idea about how to port the rest of the site's
> > pages over based on the porting work I've already done that it's time
> > for me to step back and let you guys catch up.  Basically the idea is
> that while
> > there is templating support in the markdown sources, it's fairly limited
> > compared to what nanoc offers, but instead of writing a lot of complex
> template
> > code into your sources, with the cms you just add code to lib/view.pmand/or
> > lib/path.pm to keep the document sources simple and just add more
> template
> > variables.  What I just finished in lib/view.pm and lib/path.pm is
> directory
> > listing support for /docs.html but it can be carried over to similar
> pages.
> >
> >
> >
> >
> >>  On Monday, March 17, 2014 9:16 PM, Joe Schaefer
> > <jo...@yahoo.com> wrote:
> >>  > Interesting ideas, thanks.  FWIW I think that sort
> >>  of thing might be best supported as a periodic cron
> >>  if we can write something stable enough, because pulling
> >>  stuff out of the git repo is something the CMS isn't going
> >>  to do all that well being an svn application.
> >>
> >>  The CMS build results are available at
> http://thrift.staging.apache.org/
> >>  feel free to play with the sources in repos/asf/thrift/cms-site/trunk.
> >>  It's very fast, probably an order of magnitude faster than your current
> >
> >>  tech.
> >>  Whole site builds in two seconds; fractions of a second for typical
> mods to
> >
> >>  content/ markdown pages.
> >>
> >>  The CMS bookmarklet is compatible with the staging site FWIW.
> >>
> >>
> >>
> >>
> >>>   On Monday, March 17, 2014 7:40 PM, Roger Meier
> >>  <ro...@bufferoverflow.ch> wrote:
> >>>   > Hi Joe & Co
> >>>
> >>>   thanks for this test run with Apache CMS!
> >>>
> >>>   What I would love to see is this:
> >>>
> >>>   Source file: => Web Site URL:
> >>>   test/README.md => thrift.apache.org/test
> >>>   test/STATUS.md => thrift.apache.org/test/status
> >>>   test/keys/README.md => thrift.apache.org/test/keys
> >>>   lib/<lang>/README.md => thrift.apache.org/lib/<lang>
> >>>   lib/<lang>/test/README.md =>
> >>  thrift.apache.org/lib/<lang>/test
> >>>   lib/<lang>/examples/README.md =>
> >>>   thrift.apache.org/lib/<lang>/examples
> >>>   compiler/cpp/README.md => thrift.apache.org/compiler
> >>>   debian/README.md => thrift.apache.org/debian
> >>>   contrib/<topic>/README.md => thrift.apache.org/<topic>
> >>>
> >>>   just made the following patch to rename all file to .md within our
> > source
> >>>   tree: https://issues.apache.org/jira/browse/THRIFT-2407
> >>>   ... we have *41* md's within the source tree and that's the
> > place
> >>  where
> >>>   people look for documentation first. => simple to manage
> >>>   Would be user friendly to have all of this online with each release
> >>>   with the URL layout mentioned above.
> >>>
> >>>   just received the buildboot...
> >>>   Do you have kind of a preview of your prototype?
> >>>
> >>>   all the best!
> >>>   -roger
> >>>   ;-r
> >>>
> >>>
> >>>   Quoting Jake Farrell <jf...@apache.org>:
> >>>
> >>>>    No objections from me
> >>>>
> >>>>    -Jake
> >>>>
> >>>>
> >>>>    On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer
> >>>   <jo...@yahoo.com>wrote:
> >>>>
> >>>>>    Any objections to me making a copy of the site
> >>>>>    tree alongside it called cms-site?  I'd like to
> >>>>>    get cracking on knocking up the supporting perl
> >>>>>    for this so we can continue to brainstorm...
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>    > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer
> >>>   <jo...@yahoo.com>
> >>>>>    wrote:
> >>>>>    > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell
> >>>   <jf...@apache.org>
> >>>>>    > wrote:
> >>>>>    >
> >>>>>    > Hey Joe
> >>>>>    >> Thanks for reaching out, we chose to go with a site
> >>  generator
> >>>   over the
> >>>>>    >> Apache CMS due to it initially not meeting all of
> > our
> >>  needs.
> >>>   Our current
> >>>>>    >> needs for the site are
> >>>>>    >>
> >>>>>    >> - Markdown to html conversion
> >>>>>    >
> >>>>>    >
> >>>>>    > That one's easy- its the default for the cms.
> >>>>>    >
> >>>>>    >
> >>>>>    >> - Global variables/config usable throughout in a
> > template
> >>
> >>>   based layout
> >>>>>    >
> >>>>>    >
> >>>>>    > Easy too- just create a perl hash somewhere and make it
> >>  available
> >>>   to
> >>>>>    your views.
> >>>>>    >  Code your views to pass that hash along to your
> > templates
> >>  and you
> >>>   are
> >>>>>    all set.
> >>>>>    >  Note if your hash contains objects you can make method
> > calls
> >>  on
> >>>   them in
> >>>>>    your
> >>>>>    > templates.  Note: while I wouldn't recommend this in
> >
> >>  general,
> >>>   for smaller
> >>>>>    > projects like thrift that prefer convenience over
> > separation
> >>  of
> >>>   concerns
> >>>>>    you can
> >>>>>    > have the django template engine do a pass over your
> > markdown
> >>>   before
> >>>>>    passing it
> >>>>>    > along to your actual template page, just as is seemingly
> >
> >>  common to
> >>>   other
> >>>>>    popular
> >>>>>    > site generation software.
> >>>>>    >
> >>>>>    >
> >>>>>    >> - Syntax highlighting
> >>>>>    >
> >>>>>    >
> >>>>>    > Comes with python's markdown support, but some
> > people
> >>  prefer
> >>>   the look of
> >>>>>    > javascript highlighters.
> >>>>>    >
> >>>>>    >> - Easily include code snippets from our source code
> > base
> >>>>>    >
> >>>>>    >
> >>>>>    > Statically I hope.  No idea how to pull snippets out of
> > your
> >>  git
> >>>   repo
> >>>>>    via the
> >>>>>    > cms.
> >>>>>    >
> >>>>>    >> - Ability to locally test before committing
> >>>>>    >
> >>>>>    >
> >>>>>    > Belt and suspenders with the cms- you can build your
> > changes
> >>>   before
> >>>>>    committing
> >>>>>    > with the build scripts, browse your changes before
> > committing
> >>  via
> >>>   the cms
> >>>>>    > webgui, or simply commit your changes and view the
> > staging
> >>  site
> >>>   prior to
> >>>>>    live
> >>>>>    > publication (which is a separate step).
> >>>>>    >
> >>>>>    >
> >>>>>    >
> >>>>>    >>
> >>>>>    >> -Jake
> >>>>>    >>
> >>>>>    >>
> >>>>>    >>
> >>>>>    >>
> >>>>>    >>
> >>>>>    >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
> >>>>>    > <jo...@yahoo.com>wrote:
> >>>>>    >>
> >>>>>    >>>  As it so happens I am interested in working on
> >>  supporting
> >>>>>    >>>  thrift's use case as a potential user of
> > the
> >>  Apache
> >>>   CMS.
> >>>>>    >>>  While the CMS works well for massive projects
> > there
> >>  are
> >>>>>    >>>  things it could do better at supporting for
> > more
> >>  moderate
> >>>>>    >>>  sized sites like thrift's.
> >>>>>    >>>
> >>>>>    >>>  I'd therefore like to engage you folks in a
> >
> >>>   brainstorming session
> >>>>>    >>>  about what sorts of features you want for your
> > site
> >>  and
> >>>   to find
> >>>>>    >>>  simple ways of supporting those features for
> > you.
> >>>>>    >>>
> >>>>>    >>>  Thanks.
> >>>>>    >>
> >>>>>    >>
> >>>>>    >>
> >>>>>    >
> >>>>>
> >>>
> >>
> >
>

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
A couple more thoughts regarding the background on the CMS...
the bulk of the focus of the CMS up until now has been to
support really big sites like maven and openoffice, both of
which have websites well over 5GB worth of text files.  The
build system was hollowed out and revamped to support external
builds in other programming languages, as well as scaling up
the perl builds to provide about 8 child processes that build
the site in parallel by default.  Full site build times for 
openoffice went from over 30 minutes to between 5 to 10 minutes
depending on disk activity, which made experimentation with site-wide
changes feasible on a reasonable timeframe.  At first the project was in the habit of running the builds locally before checking in their changes because the delay in feedback post-commit was unreasonable, but with smart use of SSI the were able to cut down on the number of changes that required full site builds and hence no longer bother with the whole pre-build mumbo jumbo before checking in changes.  The CMS is designed to only build pages that were altered, and if you just edit a page or two only those pages and the pages that depend on them will be built.

Now that I've turned my attention to thrift, there are several aspects
that are better off being retuned based on the modest size of the site.
First of all you have a sitemap url that lists all of your markdown-based pages, which would be a nonstarter for a site like openoffice.  The implications of the sitemap url are that every page needs to be built in memory just to generate that page, which leads to a lot of redundancy in a build system designed to run as forked child processes.  We can do better...

I've done two things to make this work well- first I made the number of child processes "aka runners" tunable on a per-project basis, and since the sitemap is going to build every page anyway as the slowest page to build, I memoized the main view that builds the markdown pages for thrift.  The best results are when there's only one runner so we get the full benefit of memoization: typical site build times are consistently under 2 seconds now.

You'll appreciate why I am such a performance stickler for the CMS when you start using the bookmarklet, since builds are the only asynchronous part of the process from making a change to a page and publishing the results.  Ideally when the system is working well the builds happen before you have time to go looking for them, but you do need to be mindful of not publishing before the built pages have been committed back to svn by buildbot.



> On Monday, March 17, 2014 11:59 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Ok there's enough of an idea about how to port the rest of the site's 
> pages over based on the porting work I've already done that it's time 
> for me to step back and let you guys catch up.  Basically the idea is that while 
> there is templating support in the markdown sources, it's fairly limited 
> compared to what nanoc offers, but instead of writing a lot of complex template 
> code into your sources, with the cms you just add code to lib/view.pm and/or 
> lib/path.pm to keep the document sources simple and just add more template 
> variables.  What I just finished in lib/view.pm and lib/path.pm is directory 
> listing support for /docs.html but it can be carried over to similar pages.
> 
> 
> 
> 
>>  On Monday, March 17, 2014 9:16 PM, Joe Schaefer 
> <jo...@yahoo.com> wrote:
>>  > Interesting ideas, thanks.  FWIW I think that sort
>>  of thing might be best supported as a periodic cron
>>  if we can write something stable enough, because pulling
>>  stuff out of the git repo is something the CMS isn't going
>>  to do all that well being an svn application.
>> 
>>  The CMS build results are available at http://thrift.staging.apache.org/
>>  feel free to play with the sources in repos/asf/thrift/cms-site/trunk.
>>  It's very fast, probably an order of magnitude faster than your current 
> 
>>  tech.
>>  Whole site builds in two seconds; fractions of a second for typical mods to 
> 
>>  content/ markdown pages.
>> 
>>  The CMS bookmarklet is compatible with the staging site FWIW.
>> 
>> 
>> 
>> 
>>>   On Monday, March 17, 2014 7:40 PM, Roger Meier 
>>  <ro...@bufferoverflow.ch> wrote:
>>>   > Hi Joe & Co
>>> 
>>>   thanks for this test run with Apache CMS!
>>> 
>>>   What I would love to see is this:
>>> 
>>>   Source file: => Web Site URL:
>>>   test/README.md => thrift.apache.org/test
>>>   test/STATUS.md => thrift.apache.org/test/status
>>>   test/keys/README.md => thrift.apache.org/test/keys
>>>   lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>>   lib/<lang>/test/README.md => 
>>  thrift.apache.org/lib/<lang>/test
>>>   lib/<lang>/examples/README.md => 
>>>   thrift.apache.org/lib/<lang>/examples
>>>   compiler/cpp/README.md => thrift.apache.org/compiler
>>>   debian/README.md => thrift.apache.org/debian
>>>   contrib/<topic>/README.md => thrift.apache.org/<topic>
>>> 
>>>   just made the following patch to rename all file to .md within our 
> source
>>>   tree: https://issues.apache.org/jira/browse/THRIFT-2407
>>>   ... we have *41* md's within the source tree and that's the 
> place 
>>  where
>>>   people look for documentation first. => simple to manage
>>>   Would be user friendly to have all of this online with each release
>>>   with the URL layout mentioned above.
>>> 
>>>   just received the buildboot...
>>>   Do you have kind of a preview of your prototype?
>>> 
>>>   all the best!
>>>   -roger
>>>   ;-r
>>> 
>>> 
>>>   Quoting Jake Farrell <jf...@apache.org>:
>>> 
>>>>    No objections from me
>>>> 
>>>>    -Jake
>>>> 
>>>> 
>>>>    On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer 
>>>   <jo...@yahoo.com>wrote:
>>>> 
>>>>>    Any objections to me making a copy of the site
>>>>>    tree alongside it called cms-site?  I'd like to
>>>>>    get cracking on knocking up the supporting perl
>>>>>    for this so we can continue to brainstorm...
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>    > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer 
>>>   <jo...@yahoo.com>
>>>>>    wrote:
>>>>>    > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell 
>>>   <jf...@apache.org>
>>>>>    > wrote:
>>>>>    >
>>>>>    > Hey Joe
>>>>>    >> Thanks for reaching out, we chose to go with a site 
>>  generator 
>>>   over the
>>>>>    >> Apache CMS due to it initially not meeting all of 
> our 
>>  needs. 
>>>   Our current
>>>>>    >> needs for the site are
>>>>>    >>
>>>>>    >> - Markdown to html conversion
>>>>>    >
>>>>>    >
>>>>>    > That one's easy- its the default for the cms.
>>>>>    >
>>>>>    >
>>>>>    >> - Global variables/config usable throughout in a 
> template 
>> 
>>>   based layout
>>>>>    >
>>>>>    >
>>>>>    > Easy too- just create a perl hash somewhere and make it 
>>  available 
>>>   to
>>>>>    your views.
>>>>>    >  Code your views to pass that hash along to your 
> templates 
>>  and you 
>>>   are
>>>>>    all set.
>>>>>    >  Note if your hash contains objects you can make method 
> calls 
>>  on 
>>>   them in
>>>>>    your
>>>>>    > templates.  Note: while I wouldn't recommend this in 
> 
>>  general, 
>>>   for smaller
>>>>>    > projects like thrift that prefer convenience over 
> separation 
>>  of 
>>>   concerns
>>>>>    you can
>>>>>    > have the django template engine do a pass over your 
> markdown 
>>>   before
>>>>>    passing it
>>>>>    > along to your actual template page, just as is seemingly 
> 
>>  common to 
>>>   other
>>>>>    popular
>>>>>    > site generation software.
>>>>>    >
>>>>>    >
>>>>>    >> - Syntax highlighting
>>>>>    >
>>>>>    >
>>>>>    > Comes with python's markdown support, but some 
> people 
>>  prefer 
>>>   the look of
>>>>>    > javascript highlighters.
>>>>>    >
>>>>>    >> - Easily include code snippets from our source code 
> base
>>>>>    >
>>>>>    >
>>>>>    > Statically I hope.  No idea how to pull snippets out of 
> your 
>>  git 
>>>   repo
>>>>>    via the
>>>>>    > cms.
>>>>>    >
>>>>>    >> - Ability to locally test before committing
>>>>>    >
>>>>>    >
>>>>>    > Belt and suspenders with the cms- you can build your 
> changes 
>>>   before
>>>>>    committing
>>>>>    > with the build scripts, browse your changes before 
> committing 
>>  via 
>>>   the cms
>>>>>    > webgui, or simply commit your changes and view the 
> staging 
>>  site 
>>>   prior to
>>>>>    live
>>>>>    > publication (which is a separate step).
>>>>>    >
>>>>>    >
>>>>>    >
>>>>>    >>
>>>>>    >> -Jake
>>>>>    >>
>>>>>    >>
>>>>>    >>
>>>>>    >>
>>>>>    >>
>>>>>    >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
>>>>>    > <jo...@yahoo.com>wrote:
>>>>>    >>
>>>>>    >>>  As it so happens I am interested in working on 
>>  supporting
>>>>>    >>>  thrift's use case as a potential user of 
> the 
>>  Apache 
>>>   CMS.
>>>>>    >>>  While the CMS works well for massive projects 
> there 
>>  are
>>>>>    >>>  things it could do better at supporting for 
> more 
>>  moderate
>>>>>    >>>  sized sites like thrift's.
>>>>>    >>>
>>>>>    >>>  I'd therefore like to engage you folks in a 
> 
>>>   brainstorming session
>>>>>    >>>  about what sorts of features you want for your 
> site 
>>  and 
>>>   to find
>>>>>    >>>  simple ways of supporting those features for 
> you.
>>>>>    >>>
>>>>>    >>>  Thanks.
>>>>>    >>
>>>>>    >>
>>>>>    >>
>>>>>    >
>>>>> 
>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Ok there's enough of an idea about how to port the rest of the site's pages over based on the porting work I've already done that it's time for me to step back and let you guys catch up.  Basically the idea is that while there is templating support in the markdown sources, it's fairly limited compared to what nanoc offers, but instead of writing a lot of complex template code into your sources, with the cms you just add code to lib/view.pm and/or lib/path.pm to keep the document sources simple and just add more template variables.  What I just finished in lib/view.pm and lib/path.pm is directory listing support for /docs.html but it can be carried over to similar pages.



> On Monday, March 17, 2014 9:16 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > Interesting ideas, thanks.  FWIW I think that sort
> of thing might be best supported as a periodic cron
> if we can write something stable enough, because pulling
> stuff out of the git repo is something the CMS isn't going
> to do all that well being an svn application.
> 
> The CMS build results are available at http://thrift.staging.apache.org/
> feel free to play with the sources in repos/asf/thrift/cms-site/trunk.
> It's very fast, probably an order of magnitude faster than your current 
> tech.
> Whole site builds in two seconds; fractions of a second for typical mods to 
> content/ markdown pages.
> 
> The CMS bookmarklet is compatible with the staging site FWIW.
> 
> 
> 
> 
>>  On Monday, March 17, 2014 7:40 PM, Roger Meier 
> <ro...@bufferoverflow.ch> wrote:
>>  > Hi Joe & Co
>> 
>>  thanks for this test run with Apache CMS!
>> 
>>  What I would love to see is this:
>> 
>>  Source file: => Web Site URL:
>>  test/README.md => thrift.apache.org/test
>>  test/STATUS.md => thrift.apache.org/test/status
>>  test/keys/README.md => thrift.apache.org/test/keys
>>  lib/<lang>/README.md => thrift.apache.org/lib/<lang>
>>  lib/<lang>/test/README.md => 
> thrift.apache.org/lib/<lang>/test
>>  lib/<lang>/examples/README.md => 
>>  thrift.apache.org/lib/<lang>/examples
>>  compiler/cpp/README.md => thrift.apache.org/compiler
>>  debian/README.md => thrift.apache.org/debian
>>  contrib/<topic>/README.md => thrift.apache.org/<topic>
>> 
>>  just made the following patch to rename all file to .md within our source
>>  tree: https://issues.apache.org/jira/browse/THRIFT-2407
>>  ... we have *41* md's within the source tree and that's the place 
> where
>>  people look for documentation first. => simple to manage
>>  Would be user friendly to have all of this online with each release
>>  with the URL layout mentioned above.
>> 
>>  just received the buildboot...
>>  Do you have kind of a preview of your prototype?
>> 
>>  all the best!
>>  -roger
>>  ;-r
>> 
>> 
>>  Quoting Jake Farrell <jf...@apache.org>:
>> 
>>>   No objections from me
>>> 
>>>   -Jake
>>> 
>>> 
>>>   On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer 
>>  <jo...@yahoo.com>wrote:
>>> 
>>>>   Any objections to me making a copy of the site
>>>>   tree alongside it called cms-site?  I'd like to
>>>>   get cracking on knocking up the supporting perl
>>>>   for this so we can continue to brainstorm...
>>>> 
>>>> 
>>>> 
>>>> 
>>>>   > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer 
>>  <jo...@yahoo.com>
>>>>   wrote:
>>>>   > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell 
>>  <jf...@apache.org>
>>>>   > wrote:
>>>>   >
>>>>   > Hey Joe
>>>>   >> Thanks for reaching out, we chose to go with a site 
> generator 
>>  over the
>>>>   >> Apache CMS due to it initially not meeting all of our 
> needs. 
>>  Our current
>>>>   >> needs for the site are
>>>>   >>
>>>>   >> - Markdown to html conversion
>>>>   >
>>>>   >
>>>>   > That one's easy- its the default for the cms.
>>>>   >
>>>>   >
>>>>   >> - Global variables/config usable throughout in a template 
> 
>>  based layout
>>>>   >
>>>>   >
>>>>   > Easy too- just create a perl hash somewhere and make it 
> available 
>>  to
>>>>   your views.
>>>>   >  Code your views to pass that hash along to your templates 
> and you 
>>  are
>>>>   all set.
>>>>   >  Note if your hash contains objects you can make method calls 
> on 
>>  them in
>>>>   your
>>>>   > templates.  Note: while I wouldn't recommend this in 
> general, 
>>  for smaller
>>>>   > projects like thrift that prefer convenience over separation 
> of 
>>  concerns
>>>>   you can
>>>>   > have the django template engine do a pass over your markdown 
>>  before
>>>>   passing it
>>>>   > along to your actual template page, just as is seemingly 
> common to 
>>  other
>>>>   popular
>>>>   > site generation software.
>>>>   >
>>>>   >
>>>>   >> - Syntax highlighting
>>>>   >
>>>>   >
>>>>   > Comes with python's markdown support, but some people 
> prefer 
>>  the look of
>>>>   > javascript highlighters.
>>>>   >
>>>>   >> - Easily include code snippets from our source code base
>>>>   >
>>>>   >
>>>>   > Statically I hope.  No idea how to pull snippets out of your 
> git 
>>  repo
>>>>   via the
>>>>   > cms.
>>>>   >
>>>>   >> - Ability to locally test before committing
>>>>   >
>>>>   >
>>>>   > Belt and suspenders with the cms- you can build your changes 
>>  before
>>>>   committing
>>>>   > with the build scripts, browse your changes before committing 
> via 
>>  the cms
>>>>   > webgui, or simply commit your changes and view the staging 
> site 
>>  prior to
>>>>   live
>>>>   > publication (which is a separate step).
>>>>   >
>>>>   >
>>>>   >
>>>>   >>
>>>>   >> -Jake
>>>>   >>
>>>>   >>
>>>>   >>
>>>>   >>
>>>>   >>
>>>>   >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
>>>>   > <jo...@yahoo.com>wrote:
>>>>   >>
>>>>   >>>  As it so happens I am interested in working on 
> supporting
>>>>   >>>  thrift's use case as a potential user of the 
> Apache 
>>  CMS.
>>>>   >>>  While the CMS works well for massive projects there 
> are
>>>>   >>>  things it could do better at supporting for more 
> moderate
>>>>   >>>  sized sites like thrift's.
>>>>   >>>
>>>>   >>>  I'd therefore like to engage you folks in a 
>>  brainstorming session
>>>>   >>>  about what sorts of features you want for your site 
> and 
>>  to find
>>>>   >>>  simple ways of supporting those features for you.
>>>>   >>>
>>>>   >>>  Thanks.
>>>>   >>
>>>>   >>
>>>>   >>
>>>>   >
>>>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Interesting ideas, thanks.  FWIW I think that sort
of thing might be best supported as a periodic cron
if we can write something stable enough, because pulling
stuff out of the git repo is something the CMS isn't going
to do all that well being an svn application.

The CMS build results are available at http://thrift.staging.apache.org/
feel free to play with the sources in repos/asf/thrift/cms-site/trunk.
It's very fast, probably an order of magnitude faster than your current tech.
Whole site builds in two seconds; fractions of a second for typical mods to content/ markdown pages.

The CMS bookmarklet is compatible with the staging site FWIW.



> On Monday, March 17, 2014 7:40 PM, Roger Meier <ro...@bufferoverflow.ch> wrote:
> > Hi Joe & Co
> 
> thanks for this test run with Apache CMS!
> 
> What I would love to see is this:
> 
> Source file: => Web Site URL:
> test/README.md => thrift.apache.org/test
> test/STATUS.md => thrift.apache.org/test/status
> test/keys/README.md => thrift.apache.org/test/keys
> lib/<lang>/README.md => thrift.apache.org/lib/<lang>
> lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
> lib/<lang>/examples/README.md => 
> thrift.apache.org/lib/<lang>/examples
> compiler/cpp/README.md => thrift.apache.org/compiler
> debian/README.md => thrift.apache.org/debian
> contrib/<topic>/README.md => thrift.apache.org/<topic>
> 
> just made the following patch to rename all file to .md within our source
> tree: https://issues.apache.org/jira/browse/THRIFT-2407
> ... we have *41* md's within the source tree and that's the place where
> people look for documentation first. => simple to manage
> Would be user friendly to have all of this online with each release
> with the URL layout mentioned above.
> 
> just received the buildboot...
> Do you have kind of a preview of your prototype?
> 
> all the best!
> -roger
> ;-r
> 
> 
> Quoting Jake Farrell <jf...@apache.org>:
> 
>>  No objections from me
>> 
>>  -Jake
>> 
>> 
>>  On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer 
> <jo...@yahoo.com>wrote:
>> 
>>>  Any objections to me making a copy of the site
>>>  tree alongside it called cms-site?  I'd like to
>>>  get cracking on knocking up the supporting perl
>>>  for this so we can continue to brainstorm...
>>> 
>>> 
>>> 
>>> 
>>>  > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer 
> <jo...@yahoo.com>
>>>  wrote:
>>>  > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell 
> <jf...@apache.org>
>>>  > wrote:
>>>  >
>>>  > Hey Joe
>>>  >> Thanks for reaching out, we chose to go with a site generator 
> over the
>>>  >> Apache CMS due to it initially not meeting all of our needs. 
> Our current
>>>  >> needs for the site are
>>>  >>
>>>  >> - Markdown to html conversion
>>>  >
>>>  >
>>>  > That one's easy- its the default for the cms.
>>>  >
>>>  >
>>>  >> - Global variables/config usable throughout in a template 
> based layout
>>>  >
>>>  >
>>>  > Easy too- just create a perl hash somewhere and make it available 
> to
>>>  your views.
>>>  >  Code your views to pass that hash along to your templates and you 
> are
>>>  all set.
>>>  >  Note if your hash contains objects you can make method calls on 
> them in
>>>  your
>>>  > templates.  Note: while I wouldn't recommend this in general, 
> for smaller
>>>  > projects like thrift that prefer convenience over separation of 
> concerns
>>>  you can
>>>  > have the django template engine do a pass over your markdown 
> before
>>>  passing it
>>>  > along to your actual template page, just as is seemingly common to 
> other
>>>  popular
>>>  > site generation software.
>>>  >
>>>  >
>>>  >> - Syntax highlighting
>>>  >
>>>  >
>>>  > Comes with python's markdown support, but some people prefer 
> the look of
>>>  > javascript highlighters.
>>>  >
>>>  >> - Easily include code snippets from our source code base
>>>  >
>>>  >
>>>  > Statically I hope.  No idea how to pull snippets out of your git 
> repo
>>>  via the
>>>  > cms.
>>>  >
>>>  >> - Ability to locally test before committing
>>>  >
>>>  >
>>>  > Belt and suspenders with the cms- you can build your changes 
> before
>>>  committing
>>>  > with the build scripts, browse your changes before committing via 
> the cms
>>>  > webgui, or simply commit your changes and view the staging site 
> prior to
>>>  live
>>>  > publication (which is a separate step).
>>>  >
>>>  >
>>>  >
>>>  >>
>>>  >> -Jake
>>>  >>
>>>  >>
>>>  >>
>>>  >>
>>>  >>
>>>  >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
>>>  > <jo...@yahoo.com>wrote:
>>>  >>
>>>  >>>  As it so happens I am interested in working on supporting
>>>  >>>  thrift's use case as a potential user of the Apache 
> CMS.
>>>  >>>  While the CMS works well for massive projects there are
>>>  >>>  things it could do better at supporting for more moderate
>>>  >>>  sized sites like thrift's.
>>>  >>>
>>>  >>>  I'd therefore like to engage you folks in a 
> brainstorming session
>>>  >>>  about what sorts of features you want for your site and 
> to find
>>>  >>>  simple ways of supporting those features for you.
>>>  >>>
>>>  >>>  Thanks.
>>>  >>
>>>  >>
>>>  >>
>>>  >
>>> 
> 

Re: reconsidering the Apache CMS...

Posted by Roger Meier <ro...@bufferoverflow.ch>.
Hi Joe & Co

thanks for this test run with Apache CMS!

What I would love to see is this:

Source file: => Web Site URL:
test/README.md => thrift.apache.org/test
test/STATUS.md => thrift.apache.org/test/status
test/keys/README.md => thrift.apache.org/test/keys
lib/<lang>/README.md => thrift.apache.org/lib/<lang>
lib/<lang>/test/README.md => thrift.apache.org/lib/<lang>/test
lib/<lang>/examples/README.md => thrift.apache.org/lib/<lang>/examples
compiler/cpp/README.md => thrift.apache.org/compiler
debian/README.md => thrift.apache.org/debian
contrib/<topic>/README.md => thrift.apache.org/<topic>

just made the following patch to rename all file to .md within our source
tree: https://issues.apache.org/jira/browse/THRIFT-2407
... we have *41* md's within the source tree and that's the place where
people look for documentation first. => simple to manage
Would be user friendly to have all of this online with each release
with the URL layout mentioned above.

just received the buildboot...
Do you have kind of a preview of your prototype?

all the best!
-roger
;-r

Quoting Jake Farrell <jf...@apache.org>:

> No objections from me
>
> -Jake
>
>
> On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer <jo...@yahoo.com>wrote:
>
>> Any objections to me making a copy of the site
>> tree alongside it called cms-site?  I'd like to
>> get cracking on knocking up the supporting perl
>> for this so we can continue to brainstorm...
>>
>>
>>
>>
>> > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer <jo...@yahoo.com>
>> wrote:
>> > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell <jf...@apache.org>
>> > wrote:
>> >
>> > Hey Joe
>> >> Thanks for reaching out, we chose to go with a site generator over the
>> >> Apache CMS due to it initially not meeting all of our needs. Our current
>> >> needs for the site are
>> >>
>> >> - Markdown to html conversion
>> >
>> >
>> > That one's easy- its the default for the cms.
>> >
>> >
>> >> - Global variables/config usable throughout in a template based layout
>> >
>> >
>> > Easy too- just create a perl hash somewhere and make it available to
>> your views.
>> >  Code your views to pass that hash along to your templates and you are
>> all set.
>> >  Note if your hash contains objects you can make method calls on them in
>> your
>> > templates.  Note: while I wouldn't recommend this in general, for smaller
>> > projects like thrift that prefer convenience over separation of concerns
>> you can
>> > have the django template engine do a pass over your markdown before
>> passing it
>> > along to your actual template page, just as is seemingly common to other
>> popular
>> > site generation software.
>> >
>> >
>> >> - Syntax highlighting
>> >
>> >
>> > Comes with python's markdown support, but some people prefer the look of
>> > javascript highlighters.
>> >
>> >> - Easily include code snippets from our source code base
>> >
>> >
>> > Statically I hope.  No idea how to pull snippets out of your git repo
>> via the
>> > cms.
>> >
>> >> - Ability to locally test before committing
>> >
>> >
>> > Belt and suspenders with the cms- you can build your changes before
>> committing
>> > with the build scripts, browse your changes before committing via the cms
>> > webgui, or simply commit your changes and view the staging site prior to
>> live
>> > publication (which is a separate step).
>> >
>> >
>> >
>> >>
>> >> -Jake
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
>> > <jo...@yahoo.com>wrote:
>> >>
>> >>>  As it so happens I am interested in working on supporting
>> >>>  thrift's use case as a potential user of the Apache CMS.
>> >>>  While the CMS works well for massive projects there are
>> >>>  things it could do better at supporting for more moderate
>> >>>  sized sites like thrift's.
>> >>>
>> >>>  I'd therefore like to engage you folks in a brainstorming session
>> >>>  about what sorts of features you want for your site and to find
>> >>>  simple ways of supporting those features for you.
>> >>>
>> >>>  Thanks.
>> >>
>> >>
>> >>
>> >
>>



Re: reconsidering the Apache CMS...

Posted by Jake Farrell <jf...@apache.org>.
No objections from me

-Jake


On Mon, Mar 17, 2014 at 12:04 PM, Joe Schaefer <jo...@yahoo.com>wrote:

> Any objections to me making a copy of the site
> tree alongside it called cms-site?  I'd like to
> get cracking on knocking up the supporting perl
> for this so we can continue to brainstorm...
>
>
>
>
> > On Sunday, March 16, 2014 1:53 PM, Joe Schaefer <jo...@yahoo.com>
> wrote:
> > > On Sunday, March 16, 2014 1:40 PM, Jake Farrell <jf...@apache.org>
> > wrote:
> >
> > Hey Joe
> >> Thanks for reaching out, we chose to go with a site generator over the
> >> Apache CMS due to it initially not meeting all of our needs. Our current
> >> needs for the site are
> >>
> >> - Markdown to html conversion
> >
> >
> > That one's easy- its the default for the cms.
> >
> >
> >> - Global variables/config usable throughout in a template based layout
> >
> >
> > Easy too- just create a perl hash somewhere and make it available to
> your views.
> >  Code your views to pass that hash along to your templates and you are
> all set.
> >  Note if your hash contains objects you can make method calls on them in
> your
> > templates.  Note: while I wouldn't recommend this in general, for smaller
> > projects like thrift that prefer convenience over separation of concerns
> you can
> > have the django template engine do a pass over your markdown before
> passing it
> > along to your actual template page, just as is seemingly common to other
> popular
> > site generation software.
> >
> >
> >> - Syntax highlighting
> >
> >
> > Comes with python's markdown support, but some people prefer the look of
> > javascript highlighters.
> >
> >> - Easily include code snippets from our source code base
> >
> >
> > Statically I hope.  No idea how to pull snippets out of your git repo
> via the
> > cms.
> >
> >> - Ability to locally test before committing
> >
> >
> > Belt and suspenders with the cms- you can build your changes before
> committing
> > with the build scripts, browse your changes before committing via the cms
> > webgui, or simply commit your changes and view the staging site prior to
> live
> > publication (which is a separate step).
> >
> >
> >
> >>
> >> -Jake
> >>
> >>
> >>
> >>
> >>
> >> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer
> > <jo...@yahoo.com>wrote:
> >>
> >>>  As it so happens I am interested in working on supporting
> >>>  thrift's use case as a potential user of the Apache CMS.
> >>>  While the CMS works well for massive projects there are
> >>>  things it could do better at supporting for more moderate
> >>>  sized sites like thrift's.
> >>>
> >>>  I'd therefore like to engage you folks in a brainstorming session
> >>>  about what sorts of features you want for your site and to find
> >>>  simple ways of supporting those features for you.
> >>>
> >>>  Thanks.
> >>
> >>
> >>
> >
>

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
Any objections to me making a copy of the site
tree alongside it called cms-site?  I'd like to
get cracking on knocking up the supporting perl
for this so we can continue to brainstorm...




> On Sunday, March 16, 2014 1:53 PM, Joe Schaefer <jo...@yahoo.com> wrote:
> > On Sunday, March 16, 2014 1:40 PM, Jake Farrell <jf...@apache.org> 
> wrote:
> 
> Hey Joe
>> Thanks for reaching out, we chose to go with a site generator over the
>> Apache CMS due to it initially not meeting all of our needs. Our current
>> needs for the site are
>> 
>> - Markdown to html conversion
> 
> 
> That one's easy- its the default for the cms.
> 
> 
>> - Global variables/config usable throughout in a template based layout
> 
> 
> Easy too- just create a perl hash somewhere and make it available to your views. 
>  Code your views to pass that hash along to your templates and you are all set. 
>  Note if your hash contains objects you can make method calls on them in your 
> templates.  Note: while I wouldn't recommend this in general, for smaller 
> projects like thrift that prefer convenience over separation of concerns you can 
> have the django template engine do a pass over your markdown before passing it 
> along to your actual template page, just as is seemingly common to other popular 
> site generation software.
> 
> 
>> - Syntax highlighting
> 
> 
> Comes with python's markdown support, but some people prefer the look of 
> javascript highlighters.
> 
>> - Easily include code snippets from our source code base
> 
> 
> Statically I hope.  No idea how to pull snippets out of your git repo via the 
> cms.
> 
>> - Ability to locally test before committing
> 
> 
> Belt and suspenders with the cms- you can build your changes before committing 
> with the build scripts, browse your changes before committing via the cms 
> webgui, or simply commit your changes and view the staging site prior to live
> publication (which is a separate step).
> 
> 
> 
>> 
>> -Jake
>> 
>> 
>> 
>> 
>> 
>> On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer 
> <jo...@yahoo.com>wrote:
>> 
>>>  As it so happens I am interested in working on supporting
>>>  thrift's use case as a potential user of the Apache CMS.
>>>  While the CMS works well for massive projects there are
>>>  things it could do better at supporting for more moderate
>>>  sized sites like thrift's.
>>> 
>>>  I'd therefore like to engage you folks in a brainstorming session
>>>  about what sorts of features you want for your site and to find
>>>  simple ways of supporting those features for you.
>>> 
>>>  Thanks.
>> 
>> 
>> 
> 

Re: reconsidering the Apache CMS...

Posted by Joe Schaefer <jo...@yahoo.com>.
On Sunday, March 16, 2014 1:40 PM, Jake Farrell <jf...@apache.org> wrote:

Hey Joe
>Thanks for reaching out, we chose to go with a site generator over the
>Apache CMS due to it initially not meeting all of our needs. Our current
>needs for the site are
>
>- Markdown to html conversion


That one's easy- its the default for the cms.


>- Global variables/config usable throughout in a template based layout


Easy too- just create a perl hash somewhere and make it available to your views.  Code your views to pass that hash along to your templates and you are all set.  Note if your hash contains objects you can make method calls on them in your templates.  Note: while I wouldn't recommend this in general, for smaller projects like thrift that prefer convenience over separation of concerns you can have the django template engine do a pass over your markdown before passing it along to your actual template page, just as is seemingly common to other popular site generation software.


>- Syntax highlighting


Comes with python's markdown support, but some people prefer the look of javascript highlighters.

>- Easily include code snippets from our source code base


Statically I hope.  No idea how to pull snippets out of your git repo via the cms.

>- Ability to locally test before committing


Belt and suspenders with the cms- you can build your changes before committing with the build scripts, browse your changes before committing via the cms webgui, or simply commit your changes and view the staging site prior to live
publication (which is a separate step).


>
>-Jake
>
>
>
>
>
>On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer <jo...@yahoo.com>wrote:
>
>> As it so happens I am interested in working on supporting
>> thrift's use case as a potential user of the Apache CMS.
>> While the CMS works well for massive projects there are
>> things it could do better at supporting for more moderate
>> sized sites like thrift's.
>>
>> I'd therefore like to engage you folks in a brainstorming session
>> about what sorts of features you want for your site and to find
>> simple ways of supporting those features for you.
>>
>> Thanks.
>
>
>

Re: reconsidering the Apache CMS...

Posted by Jake Farrell <jf...@apache.org>.
Hey Joe
Thanks for reaching out, we chose to go with a site generator over the
Apache CMS due to it initially not meeting all of our needs. Our current
needs for the site are

- Markdown to html conversion
- Global variables/config usable throughout in a template based layout
- Syntax highlighting
- Easily include code snippets from our source code base
- Ability to locally test before committing

-Jake




On Sun, Mar 16, 2014 at 12:44 PM, Joe Schaefer <jo...@yahoo.com>wrote:

> As it so happens I am interested in working on supporting
> thrift's use case as a potential user of the Apache CMS.
> While the CMS works well for massive projects there are
> things it could do better at supporting for more moderate
> sized sites like thrift's.
>
> I'd therefore like to engage you folks in a brainstorming session
> about what sorts of features you want for your site and to find
> simple ways of supporting those features for you.
>
> Thanks.