Hello,

we've been using the AsciiDoc pre-processor for quite a while now. However,
it has had a few issues:

   - it wasn't possible to process code samples that make use of a plugin
   (e.g. neo4j)
   - it wasn't possible to execute console commands (e.g. :remote connect
   ...)

These issues have now been resolved! Neo4j samples, Hadoop samples, Gremlin
Server samples, everything is now being evaluated by the pre-processor.
This way we can ensure, that almost all the code samples in the TinkerPop3
docs are always up to date and working.

The bad news: pre-processing became lot slower.
The good news: we've added progress bars; and watching slow processes with
a progress bar is fun (at least the first few times :))

This is how it looks like:

daniel@cube /projects/apache/incubator-tinkerpop (master) $
bin/process-docs.sh

==========================
+   Installing Plugins   +
==========================

 * hadoop-gremlin ... done
 * neo4j-gremlin ... done


============================
+   Processing AsciiDocs   +
============================

 * source:   /projects/apache/incubator-tinkerpop/docs/src/index.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/index.asciidoc
   progress:
[====================================================================================================]
100%

 * source:   /projects/apache/incubator-tinkerpop/docs/src/preface.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/preface.asciidoc
   progress:
[====================================================================================================]
100%

 * source:   /projects/apache/incubator-tinkerpop/docs/src/intro.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/intro.asciidoc
   progress:
[====================================================================================================]
100%

 * source:
/projects/apache/incubator-tinkerpop/docs/src/the-graph.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/the-graph.asciidoc
   progress:
[====================================================================================================]
100%

 * source:
/projects/apache/incubator-tinkerpop/docs/src/the-traversal.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/the-traversal.asciidoc
   progress:
[====================================================================================================]
100%

 * source:
/projects/apache/incubator-tinkerpop/docs/src/the-graphcomputer.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/the-graphcomputer.asciidoc
   progress:
[====================================================================================================]
100%

 * source:
/projects/apache/incubator-tinkerpop/docs/src/gremlin-applications.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/gremlin-applications.asciidoc
   progress:
[====================================================================================================]
100%

 * source:
/projects/apache/incubator-tinkerpop/docs/src/implementations.asciidoc
   target:
/projects/apache/incubator-tinkerpop/target/postprocess-asciidoc/implementations.asciidoc
   progress: [=====================================================>
                                       ] 53%

...



Anyway, in my opinion the slow processing is not really a big problem as
it's only done for a new release or when new features were added. Moreover
should the benefit of having accurate code samples in the docs be worth the
few extra minutes.

Cheers,
Daniel

Reply via email to