You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Ubuntu 97b4949f84
performance imporvments
8 years ago
doc adding template 9 years ago
release Release 0.0.2 9 years ago
src performance imporvments 8 years ago
.gitignore adding mac ds_store ignore 9 years ago
CONTRIBUTING.md Fix instructions to update/install the extension 8 years ago
LICENSE Add licencse 9 years ago
Makefile Add missing Makefile comment 9 years ago
Makefile.global Refactor the Makefile 9 years ago
NEWS.md Release 0.0.2 9 years ago
README.md typo fixes, linking, etc. 9 years ago
RELEASE.md Reorganize the documentation into separate files 9 years ago

README.md

crankshaft

CartoDB Spatial Analysis extension for PostgreSQL.

Code organization

  • doc documentation
  • src source code
    • src/pg contains the PostgreSQL extension source code
    • src/py Python module source code
  • release reseleased versions
  • env base directory for Python virtual environments

Requirements

  • pip, virtualenv, PostgreSQL
  • python-scipy system package (see src/py/README.md)

Working Process -- Quickstart Guide

We distinguish two roles regarding the development cycle of crankshaft:

  • developers will implement new functionality and bugfixes into the codebase and will request for new releases of the extension.
  • A release manager will attend these requests and will handle the release process. The release process is sequential: no concurrent releases will ever be in the works.

We use the default develop branch as the basis for development. The master branch is used to merge and tag releases to be deployed in production.

Developers shall create a new topic branch from develop for any new feature or bugfix and commit their changes to it and eventually merge back into the develop branch. When a new release is required a Pull Request will be open against the develop branch.

The develop pull requests will be handled by the release manage, who will merge into master where new releases are prepared and tagged. The master branch is the sole responsibility of the release masters and developers must not commit or merge into it.

Development Guidelines

For a detailed description of the development process please see the CONTRIBUTING.md guide.

Any modification to the source code (src/pg/sql for the SQL extension, src/py/crankshaft for the Python package) shall always be done in a topic branch created from the develop branch.

Tests, documentation and peer code reviewing are required for all modifications.

The tests (both for SQL and Python) are executed by running, from the top directory:

sudo make install
make test

To request a new release, which will be handled by them release manager, a Pull Request must be created in the develop branch.

Release

The release and deployment process is described in the RELEASE.md guide and it is the responsibility of the designated release manager.