2013-04-05 22:30:12 +02:00
|
|
|
===============
|
2014-12-06 08:13:40 +01:00
|
|
|
Hacking on Hy
|
2013-04-05 22:30:12 +02:00
|
|
|
===============
|
|
|
|
|
2013-10-08 04:16:31 +02:00
|
|
|
.. highlight:: bash
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
Join our Hyve!
|
2013-04-05 22:30:12 +02:00
|
|
|
==============
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
Please come hack on Hy!
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
Please come hang out with us on ``#hy`` on ``irc.freenode.net``!
|
|
|
|
|
|
|
|
Please talk about it on Twitter with the ``#hy`` hashtag!
|
|
|
|
|
|
|
|
Please blog about it!
|
|
|
|
|
2013-04-05 22:34:25 +02:00
|
|
|
Please don't spraypaint it on your neighbor's fence (without asking nicely)!
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
|
|
|
|
Hack!
|
|
|
|
=====
|
|
|
|
|
|
|
|
Do this:
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
1. Create a `virtual environment
|
2013-10-08 04:16:31 +02:00
|
|
|
<https://pypi.python.org/pypi/virtualenv>`_::
|
|
|
|
|
|
|
|
$ virtualenv venv
|
|
|
|
|
|
|
|
and activate it::
|
|
|
|
|
|
|
|
$ . venv/bin/activate
|
2013-10-09 11:36:35 +02:00
|
|
|
|
2016-05-15 15:09:17 +02:00
|
|
|
or use `virtualenvwrapper <https://virtualenvwrapper.readthedocs.io/en/latest/#introduction>`_
|
2013-10-09 11:36:35 +02:00
|
|
|
to create and manage your virtual environment::
|
|
|
|
|
2013-10-10 23:17:43 +02:00
|
|
|
$ mkvirtualenv hy
|
|
|
|
$ workon hy
|
2013-10-09 11:36:35 +02:00
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
2. Get the source code::
|
2013-10-08 04:16:31 +02:00
|
|
|
|
|
|
|
$ git clone https://github.com/hylang/hy.git
|
2013-04-05 22:30:12 +02:00
|
|
|
|
2013-10-08 04:16:31 +02:00
|
|
|
or use your fork::
|
2013-04-05 22:30:12 +02:00
|
|
|
|
2013-10-08 04:16:31 +02:00
|
|
|
$ git clone git@github.com:<YOUR_USERNAME>/hy.git
|
2014-12-06 08:13:40 +01:00
|
|
|
|
|
|
|
3. Install for hacking::
|
2013-04-05 22:30:12 +02:00
|
|
|
|
2013-10-08 04:16:31 +02:00
|
|
|
$ cd hy/
|
|
|
|
$ pip install -e .
|
2013-04-05 22:30:12 +02:00
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
4. Install other develop-y requirements::
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
$ pip install -r requirements-dev.txt
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
5. Do awesome things; make someone shriek in delight/disgust at what
|
2013-10-08 04:16:31 +02:00
|
|
|
you have wrought.
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
|
|
|
|
Test!
|
|
|
|
=====
|
|
|
|
|
2017-04-26 23:00:11 +02:00
|
|
|
Tests are located in ``tests/``. We use `pytest <http://pytest.org>`_.
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
To run the tests::
|
|
|
|
|
2017-04-26 23:00:11 +02:00
|
|
|
$ pytest
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
Write tests---tests are good!
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
Also, it is good to run the tests for all the platforms supported and for
|
|
|
|
PEP 8 compliant code. You can do so by running tox::
|
2013-12-02 12:07:05 +01:00
|
|
|
|
|
|
|
$ tox
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
Document!
|
|
|
|
=========
|
|
|
|
|
|
|
|
Documentation is located in ``docs/``. We use `Sphinx
|
|
|
|
<http://sphinx-doc.org/>`_.
|
|
|
|
|
2013-10-08 04:16:31 +02:00
|
|
|
To build the docs in HTML::
|
2013-04-05 22:30:12 +02:00
|
|
|
|
|
|
|
$ cd docs
|
|
|
|
$ make html
|
|
|
|
|
|
|
|
Write docs---docs are good! Even this doc!
|
2013-12-01 18:56:26 +01:00
|
|
|
|
|
|
|
|
2014-05-02 20:27:04 +02:00
|
|
|
Contributing
|
|
|
|
============
|
2013-12-31 00:02:03 +01:00
|
|
|
|
2014-05-02 20:27:04 +02:00
|
|
|
.. include:: ../CONTRIBUTING.rst
|
2013-12-03 17:14:11 +01:00
|
|
|
|
|
|
|
Core Team
|
|
|
|
=========
|
|
|
|
|
2014-12-06 08:13:40 +01:00
|
|
|
The core development team of Hy consists of following developers:
|
2013-12-03 17:14:11 +01:00
|
|
|
|
|
|
|
.. include:: coreteam.rst
|