I'm glad to get pull request if any functionality is missing or something is buggy. But _please_ ... run the tests before you send me the pull request.
I'm glad to get pull request if any functionality is missing or something is buggy. But _please_ ... run the tests before you send me the pull request.
Now if you want to contribute but don't really know where to begin
Still interested? Coolio! Here is how to get started:
don't worry, the steps below will guide you to have a sequelize
contributor's environment running in a couple minutes.
### 1. Prepare the environment ###
### 1. Prepare your environment ###
All the following steps consider you already have [npm](http://npmjs.org/) installed in your [node.js version 0.4.6 or higher](https://github.com/sdepold/sequelize/blob/master/package.json#L30)
Here comes a little surprise: You need [Node.JS](http://nodejs.org). In order to be
a productive developer, I would recommend the latest v0.8 (or a stable 0.9 if
already out). Also I usually recommend [NVM](https://github.com/creationix/nvm).
#### 1.1 MySQL and other external dependencies ####
Once Node.JS is installed on your computer, you will also have access to the lovely
Node Package Manager (NPM).
Contributing to sequelize requires you to have
### 2. Database... Come to me! ###
[MySQL](http://www.mysql.com/) up and running in your local
environment. The reason for that is that we have test cases that runs
against an actual MySQL server and make sure everything is always
working.
That is also one of the reasons your features must come with tests:
First class citizen of Sequelize was MySQL. Over time, Sequelize began to
let's make sure sequelize will stay awesome as more features are added
become compatible to SQLite and PostgreSQL. In order to provide a fully
as well as that fixed bugs will never come back.
featured pull request, you would most likely want to install of them. Give
it a try, it's not that hard.
Well, after installing **MySQL** you also need to create the sequelize test database:
If you are too lazy or just don't know how to get this work,
feel free to join the IRC channel (freenode@#sequelizejs).
For MySQL and PostgreSQL you'll need to create a DB called `sequelize_test`.
For MySQL this would look like this:
```console
```console
$ echo "CREATE DATABASE sequelize_test;" | mysql -uroot
$ echo "CREATE DATABASE sequelize_test;" | mysql -uroot