blob: 483731ed3eaa767af03ad97208402b149dceb6f6 [file] [log] [blame]
..
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
===============
Developer Guide
===============
This page is for people who wish to contribute code to this project.
Developer Setup
---------------
Check out the source from head, switch to the source code's root directory, then run:
python setup.py develop
That will set up this project's src directory in the easy-install.pth file in site-packages.
Release Process
---------------
Checklist:
#. All newly-added code has a unit test
#. All tests pass cleanly (or have good reasons for not passing)
#. Change setup.cfg to have the appropriate tag ('dev', for example, or '' for a stable release)
#. Change setup.py to have the appropriate version number
#. All changes checked in
#. pep8 runs without much complaint
* pep8 --ignore=E501,W601 --repeat model.py
#. pylint runs without much complaint
* pylint --disable-msg=C0103,R0904,R0913,C0301,W0511 cmislibtest.py
#. Inline comments updated with changes
#. Sphinx doc updated with changes
#. Docs built cleanly
* cd src/doc/src/
* make html
#. Setuptools build
* python setup.py bdist sdist
* Use release script to sign files
#. Copy files to Apache, start vote
#. If vote passes, copy files to Apache dist
#. Upload files to Pypi
#. Tag the release in Subversion
#. Check the `cheesecake <http://pycheesecake.org/>`_ score
* python cheesecake_index --name=cmislib