https://github.com/robotframework/RIDE
Tip revision: 9209c192cab7766d1b57dcf98b806c888a0492f9 authored by Mikko Korpela on 28 February 2012, 11:42:16 UTC
minor version 0.42.1
minor version 0.42.1
Tip revision: 9209c19
BUILD.rest
BUILD
=====
This document describes the technical details of the RIDE project:
* How to build, run and test RIDE
* What's in the source
* How to contribute
* How to make a release
Developing
==========
RIDE uses Paver__ as it's build tool. Packaging, testing, and running a
development version without installation can all be done using Paver. Install
Paver and run::
paver help
for more information.
__ http://paver.github.com/paver
Repository contents
===================
Repository contains source code, unit tests, and some helper scripts for
development and package generation.
Source code
-----------
Source code is located in `src` directory. `src/bin` contains installed start
scripts and `src/robotide` contains the actual source code.
Unit tests
----------
Unit tests are in `utest` directory. They can be executed with::
paver test
Contributing
============
Fork and send a pull request! To enhance the possibility of getting the pull
request merged, read guidelines below.
Coding guidelines
=================
In general, all the code should be written according to Style Guide for Python
Code [5] However, as stated in the Zen of Python, practicality beats purity.
Method names
------------
Typically, we use `lowercase_with_underscore` style for method names. Of
course, when overriding wx methods, `AllCapitalized` style must be used.
Additionally, there's a special case when writing event handler methods. We
have chosen to name event handlers following this pattern: `OnEventName` (e.g.
`OnMouseClick`).
Variable names
--------------
Instance variables also follow the `lowercase_with_underscore` naming
convention. Additionally, a leading underscore indicates that the variable is
considered private.
Global variables (provided there's really a need for such) use `ALL_CAPS`
style.
Getters and setters
-------------------
We follow the Pythonic way of not implementing getters and setters in the case
where direct attribute access is sufficient
http://www.python.org/dev/peps/pep-0008/
Releasing
=========
TODO: These are incomplete
::
> version=0.xx
> echo $version > VERSION.txt
> git commit VERSION.txt -m 'Version $version'
> git tag v$version