Skip to content

Releases: basilisp-lang/basilisp

Release v0.1.dev5

14 Oct 21:52
2b92c03
Compare
Choose a tag to compare
Release v0.1.dev5 Pre-release
Pre-release

New Features

  • Add a logger to Basilisp library code (with a default NullHandler) (#243)
  • Implement Bytecode caching for compiled Basilisp modules (#244)

CI/Infrastructure Changes

  • Build on TravisCI now instead of CircleCI, to take advantage of tox-travis (#247)
  • Check for vulnerable packages using safety (#239)

Release v0.1.dev4

29 Sep 21:16
3f17009
Compare
Choose a tag to compare
Release v0.1.dev4 Pre-release
Pre-release

Bump version to v0.1.dev4 to add Python 3.7 support on PyPI.

Release v0.1.dev3

29 Sep 20:53
f3566d7
Compare
Choose a tag to compare
Release v0.1.dev3 Pre-release
Pre-release

New Features

  • Add multi-methods to Basilisp (#222)
  • The Basilisp PyTest runner now prints exception messages for non-failure errors (#235)
  • Add a few new namespace functions to basilisp.core (#224)
  • Create namespace setting context managers for use in tests (#228)

Bug Fixes

  • Removed usages of seq.grouped from PyFunctional which throw StopIteration exceptions and cause Basilisp to be unusable with Python 3.7 (#221)
  • Fix a bug where the wrong namespace may be set in deftest defined tests (#232)
  • Fix a bug where non-symbols could not appear in the member position of Python interop special forms (#230)
  • Fix several instances of bugs where Basilisp tests were changing basilisp.core/*ns* without resetting it, which would cause cascading test failures (#228)

Release v0.1.dev2

28 Sep 02:45
9043775
Compare
Choose a tag to compare
Release v0.1.dev2 Pre-release
Pre-release

New Features

  • Add PyTest runner tests written using the basilisp.test/deftest macro (#195)
  • Throw a useful error when no Var is bound to a symbol (#197)
  • Add a string library as basilisp.string (#187)
  • Add regex functions to basilisp.core (#193)
  • Add namespace functions to basilisp.core (#176)
  • The reader can return a custom EOF indicator (#218)

Bug Fixes

  • Fixed a bug where comment literals were not be fully removed from reader outputs (#196)
  • Fixed a bug where comment literals caused syntax errors inside collection literals (#196)
  • Imported namespaces no longer create extra namespaces bound to munged Python module names (#216)
  • Fixed a bug where import*s would not work within other forms
  • Fixed a bug where the Basilisp import hook could be added to sys.meta_path multiple times (#213)
  • Fixed a bug where keywords could not be used in function position (#174)
  • Fixed a bug where macro symbols were not resolved using the same heuristics as other symbols (#183)
  • Fixed a bug where lazy sequences were not resolved even if they were empty-checked (#182)
  • Fixed a bug where new namespaces were created whenever the compiler checked if a namespace existed to resolve a symbol (#211)
  • Fixed a bug where Python string escape sequences were not handled correctly by the reader (#192)
  • Fixed a bug where character literals caused a syntax error inside collections (#192)

CI/Infra Changes

  • Use Tox to orchestrate CI type checking, linting, and testing both locally and on CircleCI
  • Use coverage now in place of pytest-cov

Continuous improvement :tada:

13 Sep 19:42
cb8616b
Compare
Choose a tag to compare
Pre-release

New Features

  • Basic CLI for REPL and running scripts
  • REPL convenience functions doc and pydoc will return Basilisp and Python documentation respectively
  • Vars containing the last 3 expression results (*1, *2, *3) and last exception (*e) are now included on the REPL
  • Added support for Decimal, Fraction, and complex types
  • Support for Clojure style object instantiation syntax: (new com.lisp.Object) or (com.list.Object.)
  • Read/eval functions in basilisp.core
  • Support for customizing data readers either by binding *data-readers* or supplying a keyword argument from Python
  • Support for character literals using \a syntax
  • Support for deref-literals using @

Bug Fixes

  • Dynamic vars are now properly compiled as dynamic, allowing thread-local bindings
  • let* bindings can no longer eagerly evaluate binding expressions in conditional branches which will not be taken
  • catch expressions no longer throw an error when they appear in a syntax-quote
  • Basilisp files imported using the Basilisp import hook now properly resolve symbols in syntax quotes
  • Basilisp's Map type now supports consing other maps.
  • Syntax quoted special forms are no longer resolved into namespaced symbols

Initial development release

31 Aug 18:50
43d7bae
Compare
Choose a tag to compare
Pre-release

This is just an excuse to generate a release artifact and push that up to PyPI to claim the name.