<commit_before>Git Branching Model
===================
I'm using the Git branching model described
[here](http://nvie.com/posts/a-successful-git-branching-model/).

Profiling
=========

To create a call graph, run the following from the src directory::

    pycallgraph graphviz -- ./mypythonscript.py

How To Release a New Version
============================

When you want release a new version, follow these directions. First, create a
release branch by branching off of the develop branch (substitute in the
appropriate version number):

    git checkout -b release-1.0 develop

Next, bump the version number, if it hasn't already been bumped. From the root
of the git repository run these commands (again, substituting the appropriate
version number):

    echo "__version__ = '1.0'" > src/obpds/version.py
    git commit -am "bump version number to 1.0"

Now is a good time to install and test in a virtualenv, which can
help find problems with installation and dependencies:

    python setup.py sdist
    cd dist
    tar -xvzf obpds-1.0.tar.gz

    virtualenv venv
    source venv/bin/activate
    cd obpds-1.0
    python setup.py install
    cd ..
    python -m fdint.tests
    deactivate
    rm -rf venv obpds-1.0

Go ahead and fix any bugs you find in the release branch, and we'll merge them
back into the develop branch later.  Next, merge the changes from the release
branch into the master branch, and tag the release:

    git checkout master
    git merge --no-ff release-1.0
    git tag -a v1.0
    git push origin master

Then run the following commands from the root of the git repository to build
and upload the release to PyPI:

    python setup.py sdist bdist_egg
    python setup.py register sdist bdist_egg upload

Now go to the github page to "create a release" and upload the 'egg', 'zip',
and 'tar.gz' files from the 'dist' directory.

Congratulations, you're done releasing the new version of obpds!
Now you can merge the release branch back into the develop branch, and then
delete the release branch:

    git checkout develop
    git merge --no-ff release-1.0
    git branch -d release-1.0<commit_msg>fix `developers.txt`<commit_after>Git Branching Model
===================
I'm using the Git branching model described
[here](http://nvie.com/posts/a-successful-git-branching-model/).

Profiling
=========

To create a call graph, run the following from the src directory::

    pycallgraph graphviz -- ./mypythonscript.py

How To Release a New Version
============================

When you want release a new version, follow these directions. First, create a
release branch by branching off of the develop branch (substitute in the
appropriate version number):

    git checkout -b release-0.1 develop

Next, bump the version number, if it hasn't already been bumped. From the root
of the git repository run these commands (again, substituting the appropriate
version number):

    echo "__version__ = '0.1'" > src/obpds/version.py
    git commit -am "bump version number to 0.1"

Now is a good time to install and test in a virtualenv, which can
help find problems with installation and dependencies:

    python setup.py sdist
    cd dist
    tar -xvzf obpds-0.1.tar.gz

    virtualenv venv
    source venv/bin/activate
    cd obpds-0.1
    pip install numpy matplotlib scipy
    python setup.py install
    cd ..
    python -m obpds.tests
    deactivate
    rm -rf venv obpds-0.1

Go ahead and fix any bugs you find in the release branch, and we'll merge them
back into the develop branch later.  Next, merge the changes from the release
branch into the master branch, and tag the release:

    git checkout master
    git merge --no-ff release-0.1
    git tag -a v0.1
    git push origin master

Then run the following commands from the root of the git repository to build
and upload the release to PyPI:

    python setup.py sdist bdist_egg
    python setup.py register sdist bdist_egg upload

Now go to the github page to "create a release" and upload the 'egg', 'zip',
and 'tar.gz' files from the 'dist' directory.

Congratulations, you're done releasing the new version of obpds!
Now you can merge the release branch back into the develop branch, and then
delete the release branch:

    git checkout develop
    git merge --no-ff release-0.1
    git branch -d release-0.1
{'fraction_non_alphanumeric': 0.08321743161798795, 'fraction_numerical': 0.00927213722763097, 'mean_word_length': 3.4301848049281314, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6385929', 'n_tokens_mistral': 1255, 'n_tokens_neox': 1194, 'n_words': 595}