github hylang/hy 0.18.0

latest releases: 0.24.0, 1.0a4, 1.0a3...
4 years ago

Removals

  • Python 2 is no longer supported.
  • Support for attribute lists in defclass has been removed. Use setv and defn instead.
  • Literal keywords are no longer parsed differently in calls to functions with certain names.
  • hy.contrib.multi has been removed. Use cond or the PyPI package multipledispatch instead.

Other Breaking Changes

  • HySequence is now a subclass of tuple instead of list. Thus, a HyList will never be equal to a list, and you can't use .append, .pop, etc. on a HyExpression or HyList.

New Features

  • Added special forms py to pys that allow Hy programs to include inline Python code.
  • Added a special form cmp for chained comparisons.
  • All augmented assignment operators (except %= and ^=) now allow more than two arguments.
  • Added support for function annotations (PEP 3107) and variable annotations (PEP 526).
  • Added a function parse-args as a wrapper for Python's argparse.

Bug Fixes

  • Statements in the second argument of assert are now executed.
  • Fixed a bug that caused the condition of a while to be compiled twice.
  • in and not-in now allow more than two arguments, as in Python.
  • hy2py can now handle format strings.
  • Fixed crashes from inaccessible history files.
  • Removed an accidental import from the internal Python module test.
  • Fixed a swarm of bugs in hy.extra.anaphoric.

Misc. Improvements

  • Replaced the dependency clint with colorama.

Don't miss a new hy release

NewReleases is sending notifications on new releases.