~ubuntu-branches/ubuntu/trusty/libapache2-mod-rivet/trusty

« back to all changes in this revision

Viewing changes to doc/html/internals.html

  • Committer: Package Import Robot
  • Author(s): Massimo Manghi
  • Date: 2013-10-02 11:44:17 UTC
  • mfrom: (1.1.7)
  • Revision ID: package-import@ubuntu.com-20131002114417-aimbnyf22r39iv39
Tags: 2.1.3-1
* New upstream code 2.1.3 
* Removed package dh-apache2 from Build-Depends
* Undone patch removing distclean target from doc/Makefile.am

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
      themselves, the Subversion revision control system
6
6
      (<span style="font-family:monospace"><span class="command"><strong>svn</strong></span></span>) can provide you with information about
7
7
      what has been happening with the code.
8
 
    </p><div class="section" title="Initialization"><div class="titlepage"><div><div><h3 class="title"><a name="idp9596400"></a>Initialization</h3></div></div></div><p style="width:90%">
 
8
    </p><div class="section" title="Initialization"><div class="titlepage"><div><div><h3 class="title"><a name="idp5238704"></a>Initialization</h3></div></div></div><p style="width:90%">
9
9
        When Apache is started, (or when child Apache processes are
10
10
        started if a threaded Tcl is used),
11
11
        <code class="function">Rivet_InitTclStuff</code> is called, which
16
16
        executes Rivet's <code class="filename">init.tcl</code>.  The caching
17
17
        system is also set up, and if there is a
18
18
        <span style="font-family:monospace"><span class="command"><strong>GlobalInitScript</strong></span></span>, it is run.
19
 
      </p></div><div class="section" title="RivetChan"><div class="titlepage"><div><div><h3 class="title"><a name="idp9582848"></a>RivetChan</h3></div></div></div><p style="width:90%">
 
19
      </p></div><div class="section" title="RivetChan"><div class="titlepage"><div><div><h3 class="title"><a name="idp5282528"></a>RivetChan</h3></div></div></div><p style="width:90%">
20
20
        The <span class="structname">RivetChan</span> system was created in
21
21
        order to have an actual Tcl channel that we could redirect
22
22
        standard output to.  This lets us use, for instance, the
26
26
        Tcl's regular standard output is replaced with an instance of
27
27
        this channel type, so that, by default, output will go to the
28
28
        web page.
29
 
      </p></div><div class="section" title="The global Command"><div class="titlepage"><div><div><h3 class="title"><a name="idp9646640"></a>The <span style="font-family:monospace"><span class="command"><strong>global</strong></span></span> Command</h3></div></div></div><p style="width:90%">
 
29
      </p></div><div class="section" title="The global Command"><div class="titlepage"><div><div><h3 class="title"><a name="idp5284144"></a>The <span style="font-family:monospace"><span class="command"><strong>global</strong></span></span> Command</h3></div></div></div><p style="width:90%">
30
30
        Rivet aims to run standard Tcl code with as few surprises as
31
31
        possible.  At times this involves some compromises - in this
32
32
        case regarding the <span style="font-family:monospace"><span class="command"><strong>global</strong></span></span> command.  The
41
41
        you really need a true global variable, use either
42
42
        <span style="font-family:monospace"><span class="command"><strong>::global</strong></span></span> or add the :: namespace qualifier
43
43
        to variables you wish to make global.
44
 
      </p></div><div class="section" title="Page Parsing, Execution and Caching"><div class="titlepage"><div><div><h3 class="title"><a name="idp9652080"></a>Page Parsing, Execution and Caching</h3></div></div></div><p style="width:90%">
 
44
      </p></div><div class="section" title="Page Parsing, Execution and Caching"><div class="titlepage"><div><div><h3 class="title"><a name="idp5287224"></a>Page Parsing, Execution and Caching</h3></div></div></div><p style="width:90%">
45
45
        When a Rivet page is requested, it is transformed into an
46
46
        ordinary Tcl script by parsing the file for the &lt;? ?&gt;
47
47
        processing instruction tags.  Everything outside these tags
67
67
        without having to reload it (and re-parse it) from the disk.
68
68
        The number of scripts stored in memory is configurable.  This
69
69
        feature can significantly improve performance.
70
 
      </p></div><div class="section" title="Debugging Rivet and Apache"><div class="titlepage"><div><div><h3 class="title"><a name="idp9657152"></a>Debugging Rivet and Apache</h3></div></div></div><p style="width:90%">
 
70
      </p></div><div class="section" title="Debugging Rivet and Apache"><div class="titlepage"><div><div><h3 class="title"><a name="idp5316320"></a>Debugging Rivet and Apache</h3></div></div></div><p style="width:90%">
71
71
        If you are interested in hacking on Rivet, you're welcome to
72
72
        contribute!  Invariably, when working with code, things go
73
73
        wrong, and it's necessary to do some debugging.  In a server