Commit Graph

2089 Commits

Author SHA1 Message Date
Tuukka Turto
3a7618806e Merge pull request #1305 from Kodiologist/release-0.13.0
Minor edits for release 0.13.0
2017-06-16 06:37:01 +03:00
Kodi Arfer
415fdfcc11 Punctuate NEWS more consistently 2017-06-15 11:52:00 -07:00
Kodi Arfer
7361b37a75 Add get_version as a data file to setup.py 2017-06-15 11:30:05 -07:00
Kodi Arfer
032830bada Mark support for Python 3.6 in setup.py 2017-06-15 11:11:54 -07:00
Kodi Arfer
d86381ff98 Merge pull request #1300 from Kodiologist/contributing
Overhaul CONTRIBUTING.rst
2017-06-14 14:08:34 -07:00
Kodi Arfer
9441bfb7cf More rewording of CONTRIBUTING.rst 2017-06-14 14:07:18 -07:00
Ryan Gonzalez
febac43239 Misc language fixes/rewording for CONTRIBUTING.rst 2017-06-14 15:28:47 -05:00
Tristram Oaten
fc3dd8ab66 Fix Tuukka print example (#1304)
It was missing quotes around "Tuukka". Output from hy to confirm everything's good:

```clojure
hy unknown using CPython(default) 3.6.1 on Linux
=> (print "Hello there," "Tuukka")
Hello there, Tuukka
```
2017-06-12 08:36:47 -05:00
Kodi Arfer
0baffaa360 Overhaul CONTRIBUTING.rst 2017-06-10 09:08:15 -07:00
Kodi Arfer
111fe7a2b8 Add a copyright notice to the LICENSE 2017-06-10 09:08:15 -07:00
Kodi Arfer
abb75453cc Merge pull request #1303 from neil-lindquist/single-arg-cond
cond accept single-argument branches
2017-06-10 08:32:46 -07:00
neil-lindquist
c87a0fe02f Add Neil Lindquist to AUTHORS 2017-06-10 08:31:01 -07:00
neil-lindquist
d3df17d9d8 Modify cond to support single argument branches 2017-06-10 08:30:53 -07:00
Kodi Arfer
5bf9ecfc5a Forbid (try) and (try BODY) 2017-05-25 20:48:09 -05:00
Kodi Arfer
dffa2811e6 Return from the else clause of a try form
I overhauled the documentation of `try` while I was editing it.
2017-05-25 20:48:09 -05:00
Kodi Arfer
81d89c9d12 Enforce the standard order of try elements 2017-05-25 20:48:09 -05:00
Kodi Arfer
0d2749d5cd Minor cleanup in hy.compiler: try, except 2017-05-25 20:48:09 -05:00
Kodi Arfer
50aa930232 Merge pull request #1293 from hylang/docs-update
Get the documentation building again
2017-05-24 09:49:40 -07:00
Kodi Arfer
584273b9ca Update documentation links
Fixes #1299.
2017-05-24 09:46:11 -07:00
Kodi Arfer
479c1755a9 Show a version number at the top of each docs page 2017-05-23 11:29:48 -07:00
Kodi Arfer
e15992829d Simplify docs/conf.py 2017-05-23 11:28:34 -07:00
Kodi Arfer
dd9774fb6d Remove the documentation's dependency on Hy itself 2017-05-23 11:28:28 -07:00
gilch
b9279183d7 Merge pull request #1286 from Kodiologist/new-license-headers
Use license headers consistently
2017-05-22 13:36:53 -06:00
Yuval Langer
687d750a88 Remove stray use of setf in documentation 2017-05-19 13:36:06 -07:00
Kodi Arfer
0162647bf3 Update the docs copyright footer. 2017-05-15 13:09:34 -04:00
Kodi Arfer
a537d33471 In setup.py, handle backslash-separated paths (#1284)
The obvious way to do this is to apply os.path.split iteratively, and I tried that first, but it seemed like overkill for setup.py.
2017-05-03 18:47:52 -05:00
Kodi Arfer
2eb81864df Make all files comply with license-header policy 2017-04-27 14:16:57 -07:00
Kodi Arfer
90c5dec468 Add new license-header policy to CONTRIBUTING.rst 2017-04-27 14:11:38 -07:00
Kodi Arfer
4fce884d1b Merge pull request #1279 from Kodiologist/pytest
Migrate from Nose to pytest
2017-04-26 14:27:17 -07:00
Kodi Arfer
eeb0be8fb0 Add some xfail tests for known bugs 2017-04-26 14:00:39 -07:00
Kodi Arfer
28e2c2840e Don't use Tox on Travis
It offers no clear advantage over running pytest directly.
2017-04-26 14:00:39 -07:00
Kodi Arfer
d3fa375052 Migrate from Nose to pytest 2017-04-26 14:00:11 -07:00
Kodi Arfer
d085fba5fe Move a quoting test to get rid of a directory 2017-04-26 13:58:09 -07:00
Kodi Arfer
8afd13cb16 Use test functions instead of unittest.TestCase 2017-04-26 13:58:09 -07:00
Kodi Arfer
55c205f87e Test take and drop only in native_tests.core 2017-04-26 13:58:09 -07:00
Kodi Arfer
07e9284100 Correct import syntax in a test 2017-04-25 09:30:13 -07:00
Kodi Arfer
ec0902b649 Set __file__ of bytecode imports 2017-04-25 09:30:13 -07:00
Kodi Arfer
401a5e109c Merge pull request #1273 from Kodiologist/out-with-the-old
Drop support for untested versions of Python
2017-04-24 14:31:37 -07:00
Kodi Arfer
a27d737e1c Drop support for Pythons 3 older than 3.3 2017-04-24 14:22:13 -07:00
Kodi Arfer
5aaa7d92d8 Shorten hy._compat 2017-04-24 14:18:56 -07:00
Kodi Arfer
ef3bad7e03 Drop support for Python 2.6 2017-04-24 14:18:56 -07:00
Kodi Arfer
a9cfe25068 Sort the results of os.walk in setup.py (#1281)
os.walk need not provide its results in any specific order. So, sorting might help with situations like that described in #1280. Even if not, it could help avoid some very mysterious bugs in the future that arise from different orders in which Hy's modules are imported.
2017-04-24 09:54:15 -05:00
Kodi Arfer
21cec4b64a Update NEWS for sharp macros (#1283) 2017-04-22 19:42:29 -07:00
Kodi Arfer
4c38e2c9dd Rename reader macros to "sharp macros" (#1282)
They're not actually reader macros, since their arguments are parsed s-expressions, like a regular macro, not pre-parsed source text.
2017-04-21 10:07:48 -05:00
Kodi Arfer
ad94343e4a Merge pull request #1269 from Kodiologist/bytecode
Automatically read and write bytecode
2017-04-14 13:52:07 -07:00
Kodi Arfer
a87b23b4e8 Check the magic number of bytecode files 2017-04-14 13:38:38 -07:00
Kodi Arfer
36324e9499 Work around a Nose import bug on PyPy 2017-04-14 13:38:38 -07:00
Kodi Arfer
2b11b9be20 Automatically read and write bytecode
Importing or executing a Hy file now loads the byte-compiled version if it exists and is up to date, and if not, the source is byte-compiled after it's parsed.

This change can speed up Hy a lot. Here are some examples comparing run times of the current master (491b474e) to this commit, on my laptop with Python 3.6:

- `nosetests --exclude='test_bin'` goes from 3.8 s to 0.7 s (a 5-fold speedup)
- `hy -c '(print "hello world")` goes from 0.47 s to 0.20 s (a 2-fold speedup)
- Rogue TV's startup goes from 3.6 s to 0.4 s (a 9-fold speedup)

Accompanying changes include:

- `setup.py` now creates and installs bytecode for `hy.core`, `hy.contrib`, and `hy.extra`.
- The `hyc` command under Python 3 now creates bytecode in `__pycache__`, as usual for Python 3, instead of putting the `.pyc` right next to the source file like Python 2 does.

I've removed a test of `hy.extra.anaphoric.a-if` that triggers #1268 when the test file is byte-compiled and then hits some weird `macroexpand` bug or something when I try to work around that—Nose crashes when trying to produce an error message, and I can't seem to replicate the bug without Nose.
2017-04-14 13:38:33 -07:00
Kodi Arfer
7a53fdb180 Fold .coveragerc into setup.cfg 2017-04-14 11:15:58 -07:00
Kodi Arfer
b71962bbaa Remove unused internal fn import_file_to_globals 2017-04-14 11:15:58 -07:00