Simon Gomizelj
c663d38e33
Add metaclass support, support PEP 3115 and PEP 487
2018-03-22 13:28:22 -07:00
Simon Gomizelj
75af667fa1
Fix test_hy2py not respecting 'only_py36'
2018-03-22 13:27:56 -07:00
Kodi Arfer
ea2f5f859b
Clean up NEWS
2018-03-22 13:27:42 -07:00
Tuukka Turto
cb72a8c155
Merge pull request #1530 from vodik/pytest-cleanups
...
Use pytest.raises for asserting compiler exceptions
2018-03-15 08:14:09 +02:00
Kodi Arfer
b023ebd0b5
Merge pull request #1517 from Kodiologist/mangling-makeover
...
Mangling makeover
2018-03-13 12:16:13 -07:00
Kodi Arfer
4c5dea0756
Use io.StringIO instead of the StringIO module
2018-03-13 14:57:31 -04:00
Kodi Arfer
ca06294c18
Update NEWS
2018-03-13 14:57:30 -04:00
Kodi Arfer
eda0b89f67
Document mangling
2018-03-13 14:56:49 -04:00
Kodi Arfer
4d77dd0d40
Spin off syntax documentation from api.rst
2018-03-13 14:56:49 -04:00
Kodi Arfer
6875ae0e3f
Replace hyify
with unmangle
2018-03-13 14:56:49 -04:00
Kodi Arfer
3c97d2982c
Use *1
instead of _
for REPL history
...
`_`, as a variable, is now the shadow subtraction operator.
2018-03-13 14:56:47 -04:00
Kodi Arfer
85968e70dd
Add mangle
and unmangle
as core functions
2018-03-13 14:55:55 -04:00
Kodi Arfer
ebc9bda7ee
Remove an obsolete test
2018-03-13 14:55:55 -04:00
Kodi Arfer
0c8c5dc830
Mangle special forms
2018-03-13 14:55:55 -04:00
Kodi Arfer
ccb3ba6092
Mangle macro names
2018-03-13 14:55:55 -04:00
Kodi Arfer
0c816f2e83
Mangle keyword arguments
2018-03-13 14:55:55 -04:00
Kodi Arfer
d252bb0e94
Mangle names that coincide with Python keywords
2018-03-13 14:55:55 -04:00
Kodi Arfer
52edad28e2
Overhaul mangling rules
2018-03-13 14:55:53 -04:00
Kodi Arfer
d501d4d806
Mangle symbols at compile-time instead of parse-time
...
This means that a HySymbol remembers its original name. That is, `a-b` and `a_b` are different symbols although `(setv a-b 1)` and `(setv a_b 1)` set the same variable (namely, `a_b`).
Most of the edits in this commit are to switch underscores to hyphens in places where mangling hasn't happened yet.
I removed some lexer tests since the lexer no longer does any mangling.
2018-03-13 14:55:15 -04:00
Kodi Arfer
d947a27022
Merge pull request #1520 from Kodiologist/test-parens
...
Make unary comparison ops evaluate their argument
2018-03-13 11:46:55 -07:00
Kodi Arfer
7fcc7ac4b6
Make unary comparison ops evaluate their argument
2018-03-13 14:38:36 -04:00
Kodi Arfer
9f0911161d
Fix tests with =
-and-parentheses errors
2018-03-13 14:38:36 -04:00
Simon Gomizelj
e3f4fc8481
Use pytest.raises for asserting compiler exceptions
2018-03-12 01:44:57 -04:00
Kodi Arfer
6d977ab541
Merge pull request #1516 from Kodiologist/hy-repr-extensions
...
hy-repr improvements
2018-03-10 18:12:21 -08:00
Kodi Arfer
8c00ab66f9
NEWS and docs for hy-repr
2018-03-10 18:11:07 -08:00
Kodi Arfer
0574e275b5
Make hy-repr support some collections
classes
2018-03-10 18:11:07 -08:00
Kodi Arfer
38f461890d
Make hy-repr support DateTime objects
2018-03-10 18:11:07 -08:00
Kodi Arfer
3dbe05302e
Make hy-repr support regex match objects
2018-03-10 18:11:07 -08:00
Kodi Arfer
f7ab9a6e7c
Make hy-repr support dictionary views
2018-03-10 18:11:07 -08:00
Kodi Arfer
90a09b5b44
Make hy-repr use double spaces for dictionaries
2018-03-10 18:11:07 -08:00
Kodi Arfer
199bb70150
Add a hy-repr test for keyword-like bytes objects
2018-03-10 18:11:07 -08:00
Kodi Arfer
4f2706e18e
Test a case where hy-repr shouldn't round-trip
2018-03-10 18:11:07 -08:00
Kodi Arfer
83c4f63bc2
Reimplement hy-repr with registered functions
...
This removes a lot of hy-reprs that were hard-coded into the hy-repr function itself. It also allows you to add a hy-repr for an existing class without monkey-patching the class.
2018-03-10 18:11:07 -08:00
Ryan Gonzalez
a688355777
Merge pull request #1525 from Kodiologist/remove-obsolete-shields
...
Remove obsolete shields in README
2018-03-06 15:14:25 -06:00
Kodi Arfer
24309d7cc8
Remove obsolete shields in README
...
PyPI shields are "no longer available", and we haven't updated Coveralls since Jaunary 2016.
2018-03-06 11:50:17 -08:00
Tuukka Turto
c1e5c3e48c
Merge pull request #1500 from vodik/deprecations
...
Deal with some deprecation and resource warnings / fix (return) semantics
2018-02-27 23:20:49 +02:00
Kodi Arfer
0345d2b688
Merge pull request #1508 from Kodiologist/merge-policy
...
Policy: allow PRs to be merged more easily
2018-02-24 10:07:07 -08:00
Kodi Arfer
6994be6cfd
Policy: allow PRs to be merged more easily
2018-02-24 10:04:56 -08:00
Kodi Arfer
10cd36d13d
Merge pull request #1511 from jwilk-forks/spelling
...
Fix typos
2018-02-15 07:56:19 -08:00
Jakub Wilk
d1cb630698
Fix typos
2018-02-15 16:35:33 +01:00
Simon Gomizelj
db58dacce6
Fix invalid escape sequence \s in test_escapes
2018-02-14 16:05:31 -05:00
Simon Gomizelj
cf304714ce
Turn on pytests's warning reporter
2018-02-14 16:05:31 -05:00
Simon Gomizelj
ef2f435647
Add a hy.introspect module to deal with getargspec deprecation
2018-02-14 16:05:31 -05:00
Simon Gomizelj
97d7bbb96b
Add posargs to tox test runner
2018-02-14 16:05:31 -05:00
Simon Gomizelj
c35d2a3a22
Drop --allow-all-external, deprecated by PEP 470
2018-02-14 16:05:31 -05:00
Simon Gomizelj
be6ddd4bb2
Fix deprecation warning triggered by PEP 479
2018-02-14 16:05:31 -05:00
Simon Gomizelj
316220b742
Fix AST generation of a naked return
2018-02-14 16:05:31 -05:00
Simon Gomizelj
7b87d42221
Properly teardown subprocesses when testing
2018-02-14 15:38:47 -05:00
Kodi Arfer
7cf23fabc4
Merge pull request #1503 from vodik/travis-py37
...
Add python 3.7-dev to travis, allow it to fail
2018-02-14 08:41:14 -08:00
Ryan Gonzalez
2859d1e6b8
Merge pull request #1498 from Kodiologist/release-0.14.0
...
Release 0.14.0
2018-02-13 21:23:09 -06:00