.. _Developer Mailing List: http://groups.google.com/group/circuits-dev .. _Issue Tracker: https://bitbucket.org/circuits/circuits/issues .. _FreeNode IRC Network: http://freenode.net .. _IRC Channel: http://webchat.freenode.net/?randomnick=1&channels=circuits&uio=d4 Development Introduction ======================== Here's how we do things in circuits... Communication ------------- - `IRC Channel`_ on the `FreeNode IRC Network`_ - `Developer Mailing List`_ - `Issue Tracker`_ .. note:: If you are familiar with `IRC <http://en.wikipedia.org/wiki/Internet_Relay_Chat>`_ and use your own IRC Client then connect to the FreeNode Network and ``/join #circuits``. Standards --------- We use the following coding standard: - `pep8 <http://www.python.org/dev/peps/pep-0008/>`_ We also lint our codebase with the following tools: - `pyflakes <https://pypi.python.org/pypi/pyflakes>`_ - `pep8 <https://pypi.python.org/pypi/pep8>`_ - `mccabe <https://pypi.python.org/pypi/mccabe/0.2.1>`_ Please ensure your Development IDE or Editor has the above linters and checkers in place and enabled. Alternatively you can use the following command line tool: - `flake8 <https://pypi.python.org/pypi/flake8>`_ Tools ----- We use the following tools to develop circuits and share code: - **Code Sharing:** `Mercurial <http://mercurial.selenic.com/>`_ - **Code Hosting and Bug Reporting:** `BitBucket <https://bitbucket.org/circuits/circuits>`_ `GitHub <https://github.com/circuits/circuits>`_ (*Mirror Only*) - **Issue Tracker:** `Issue Tracker <https://bitbucket.org/circuits/circuits/issues>`_ - **Documentation Hosting:** `Read the Docs <http://circuits.readthedocs.org>`_ - **Package Hosting:** `Python Package Index (PyPi) <http://pypi.python.org/pypi/circuits>`_ - **Continuous Integration:** `Drone <https://drone.io/bitbucket.org/circuits/circuits>`_