<commit_before>= Build Instructions =
This page guides you through building the components of [https://github.com/SeattleTestbed Seattle Testbed]. The first section discusses what is required to get hold of a component's source code repository and build from it so that the component can be run. The second section describes how to run unit tests which ensure that the component works properly. The last part explains how our initialize and build scripts work behind the scenes.

----
[[TOC(inline)]]
----

== Prerequisites ==
Before you begin, make sure that you have the following pieces of software on your computer:
 * [https://www.python.org/downloads/ Python 2.5, 2.6, or 2.7]. ''Note: Please check your Python version! We don't support Python 3 at the moment.''
 * [http://www.git-scm.com/download Git 1.7] (or later)

Many operating systems (such as Linux and Mac OS X) ship with these installed.



== Building components ==
This section describes how to build components from their source repositories on [https://github.com/SeattleTestbed GitHub].
Currently, these components have been set up to be buildable and runnable: `seash`, `repy_v2`, `overlord`, and `experimentmanager`. The other components can be built for unit test mode (see below).

'''Note:''' Overlord and Experiment Manager are currently being ported to RepyV2 and will not fully work.[[BR]]


1. Clone the repository that you want to build from [https://github.com/SeattleTestbed SeattleTestbed]. Be sure to check out the `new_build_v1` branch of the repository, as the new build scripts haven't been merged to the master branch yet.[[BR]]
For example, if you are building [wiki:SeattleShell seash], do: 
{{{
#!sh
$ git clone -b new_build_v1 https://github.com/SeattleTestbed/seash
}}}
If you usually use `SSH` instead of `https` to clone your git repos, you can do:
{{{
#!sh
$ git clone -b new_build_v1 git@github.com:SeattleTestbed/seash.git
}}}

Of course, you will want to replace `seash` with the repository name you are interested in.

2. This yields a folder named like the repository you cloned. Inside of it, there is a `scripts/` folder which in turn contains a script called `initialize.py` to fetch the dependencies of this component. Continuing with our example `seash`:[[BR]]
{{{
#!sh
$ cd seash/scripts
$ python initialize.py
}}}<commit_msg>Revision 57 of BuildInstructions<commit_after>= Build Instructions =
This page guides you through building the components of [https://github.com/SeattleTestbed Seattle Testbed]. The first section discusses what is required to get hold of a component's source code repository and build from it so that the component can be run. The second section describes how to run unit tests which ensure that the component works properly. The last part explains how our initialize and build scripts work behind the scenes.

----
[[TOC(inline)]]
----

== Prerequisites ==
Before you begin, make sure that you have the following pieces of software on your computer:
 * [https://www.python.org/downloads/ Python 2.5, 2.6, or 2.7].
 * [http://www.git-scm.com/download Git 1.7] (or later)

Many operating systems (such as Linux and Mac OS X) ship with these installed.

''Note: Please double-check your Python version! We don't support Python 3 at the moment.''



== Building components ==
This section describes how to build components from their source repositories on [https://github.com/SeattleTestbed GitHub].
Currently, these components have been set up to be buildable and runnable: `seash`, `repy_v2`, `overlord`, and `experimentmanager`. The other components can be built for unit test mode (see below).

'''Note:''' Overlord and Experiment Manager are currently being ported to RepyV2 and will not fully work.[[BR]]


1. Clone the repository that you want to build from [https://github.com/SeattleTestbed SeattleTestbed]. Be sure to check out the `new_build_v1` branch of the repository, as the new build scripts haven't been merged to the master branch yet.[[BR]]
For example, if you are building [wiki:SeattleShell seash], do: 
{{{
#!sh
$ git clone -b new_build_v1 https://github.com/SeattleTestbed/seash
}}}
If you usually use `SSH` instead of `https` to clone your git repos, you can do:
{{{
#!sh
$ git clone -b new_build_v1 <EMAIL>@github.<EMAIL>:SeattleTestbed/seash.git
}}}

Of course, you will want to replace `seash` with the repository name you are interested in.

2. This yields a folder named like the repository you cloned. Inside of it, there is a `scripts/` folder which in turn contains a script called `initialize.py` to fetch the dependencies of this component. Continuing with our example `seash`:[[BR]]
{{{
#!sh
$ cd seash/scripts
$ python initialize.py
}}}
{'fraction_non_alphanumeric': 0.09117959617428267, 'fraction_numerical': 0.007226354941551541, 'mean_word_length': 4.523474178403756, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 10, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 1, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '882404', 'n_tokens_mistral': 1312, 'n_tokens_neox': 1265, 'n_words': 649}