Skip to content

Releases: mighty-gerbils/gerbil

Gerbil v0.18.1

06 Dec 02:22
23c30a6
Compare
Choose a tag to compare

We are happy to announce the release of Gerbil v0.18.1, NimzoLarsen.

Gerbil v0.18.1 is a patch release, that consolidates the foundations laid out by v0.18 and fixes minor bugs, paving the way for Gerbil v1.0 in the near future. Since this is a patch for the v0.18 Nimzowitsch release, we call it NimzoLarsen after the most famous Chess opening popularized by Nimzowitsch.

See the release announcement for high level release notes.

Changes since v0.18

New Contributors

Full Changelog: v0.18...v0.18.1

Gerbil v0.18

12 Oct 19:26
f5c3cce
Compare
Choose a tag to compare

We are happy to announce the release of Gerbil v0.18, aka Nimzowitch

Gerbil v0.18 is a milestone release, which sets the foundation for Gerbil v1.0 in the near future. We affectionately call it the Nimzowitsch release, after the great Chess player who formulated the basis of modern Chess theory.

See the release announcement for high level release notes.

Changes since v0.18-rc1

  • Document and test new std/misc/bytes functions by @fare in #984
  • Install fixes for MacOS (and remove the extra v) by @drewc in #986
  • Some post-rc1 fixes by @vyzo in #987
  • Update emacs use-package and add a ! in the prelude docs by @drewc in #988
  • Documentation, tests and bug fixes for std/misc/decimal by @fare in #990
  • Make random-uuid generate UUIDv4 by @uasi in #991
  • Add MacOS installation instructions in the top level README by @vyzo in #992
  • Document and test std/sugar, std/source, plus fixes by @fare in #993
  • Some small fixes by @vyzo in #995
  • Test and document std/values by @fare in #996
  • Test, fix and document :std/misc/path by @fare in #997
  • force output from gerbil binary by @vyzo in #998
  • ~! in format will force-output by @fare in #999
  • Test, fix and document :std/misc/walist by @fare in #1000
  • add some missing homegeneous vector symbols by @vyzo in #1001
  • Change homebrew to point to working commit. Still rev 0 :) by @drewc in #1003
  • add libsecp256k1-dev by @ober in #1005
  • Recompile boostrap for v0.18 release by @vyzo in #1006
  • Release v0.18 by @vyzo in #1007

Changes since v0.17

  • fix for LibreSSL 3.5 by @zmyrgel in #663
  • Update Gerbil & Gambit Dockerfiles by @ober in #661
  • fix: do not hard-code gcc by @zmyrgel in #670
  • fix typo by @jpe90 in #674
  • Add multi distro docker support by @ober in #676
  • Fix Amazonlinux docker and package by @ober in #677
  • Add initial Readme by @ober in #680
  • add keyword-rest utility function by @vyzo in #681
  • properly display errors from build jobs by @vyzo in #683
  • fix arity declarations for random procedures by @vyzo in #682
  • Revert "fix arity declarations for random procedures" by @vyzo in #684
  • Expanded utility of define-c-struct by @patternspandemic in #620
  • allow using a custom rng in shuffle by @vyzo in #685
  • Fix segfault in utf8 decoding and encoding by @dlozeve in #688
  • Fix docker instructions to match the current published image name by @dboreham in #697
  • Tweaks to the std library by @fare in #699
  • Fix incorrect comment in gxc help message by @JoelNiemela in #702
  • requests: add http-any by @aecepoglu in #705
  • Issue 709: caching symbolic comparison functions by @vyzo in #710
  • misc: tty arities and symbolic exports by @vyzo in #712
  • Some utilities for working with temporary files by @vyzo in #713
  • gxtest: the missing test runner by @vyzo in #714
  • gxtest refinements by @vyzo in #716
  • gxtest: misc polish touches by @vyzo in #717
  • Fix Sad CI by @ober in #715
  • crypto: add support for KDFs and scrypt by @vyzo in #718
  • getopt: add a global help option for describing the program by @vyzo in #719
  • Add read-password by @ober in #720
  • fix location of dockerfile by @ober in #721
  • Fix 404s by @ober in #722
  • Go-style interfaces for Gerbil by @vyzo in #723
  • Generate unchecked methods from interfaces. by @vyzo in #725
  • Miscellaneous fixes by @vyzo in #729
  • RIP std/run-tests.ss by @vyzo in #730
  • Import some functionality from :clan/ports by @fare in #732
  • tiny fix: use ~s to print expected value in check failures by @vyzo in #731
  • Avoid with lock in some perf sensitive operations by @vyzo in #733
  • Miscellaneous fixes by @vyzo in #734
  • Read-Write Locks by @vyzo in #735
  • Bump to Gambit 4.9.5 by @ober in #741
  • Fix docker builds by @ober in #742
  • Add std/misc/walist by @fare in #744
  • fix: add LibreSSL compatibility to libcrypto by @zmyrgel in #747
  • std/interface: dramatically improve casting performance and make satisfies? more intelligent by @vyzo in #738
  • Standard IO Interfaces by @vyzo in #728
  • Use stdio in httpd by @vyzo in #743
  • gxtest: print stack traces on exceptions by @vyzo in #750
  • Improve safety of BIO api by @vyzo in #751
  • Fix configure and Makefile by @vyzo in #756
  • Add tco to docker by @ober in #757
  • gerbil-mode: add interface indentation by @vyzo in #758
  • Some BIO delimited utilities and bug fixes by @vyzo in #754
  • compiler/driver: a couple of small fixes by @vyzo in #760
  • compiler driver: add mutex protecting critical sections by @vyzo in #762
  • Update proxy tutorial by @vyzo in #763
  • slow down rwlock-test to make it less likely to fail on CI by @vyzo in #764
  • Some getopt improvements: call-with-getopt by @vyzo in #765
  • Improve docker multi arch by @ober in #769
  • Precompiled stdlib by @vyzo in #768
  • amb: rewrite internals by @vyzo in #772
  • Welcome to the future, Part I by @vyzo in #776
  • Welcome to the Future, Part II by @vyzo in #777
  • Welcome to the Future, Part III by @vyzo in #783
  • fix installation guide default prefix bug by @vyzo in #784
  • fix missing tip for custom box by @vyzo in #786
  • yet another quick doc fix by @vyzo in #787
  • Fix sed invocations in configure script by @dlozeve in #785
  • Avoid -ldl on netbsd by @ober in #789
  • Use new build format by @ober in #788
  • fix ar situation: don't put the ldd inside libgerbil.a by @vyzo in #791
  • fix the march situation and bug introduced in shared libgerbil building by @vyzo in #792
  • gxc: create output directory for binary executables by @vyzo in #794
  • Fix basename and ln for bsd compat. by @ober in #793
  • Fix it so it builds when CFLAGS/LDFLAGS are set by user by @ober in #795
  • Actors v18 by @vyzo in #755
  • Postresql v18 by ...
Read more

Gerbil v0.18-rc1

06 Oct 00:00
48342fa
Compare
Choose a tag to compare

This is the first release candidate for the v0.18, Nimzowitsch release.

See the Release Announcement for high level release notes.

Changelog

  • fix for LibreSSL 3.5 by @zmyrgel in #663
  • Update Gerbil & Gambit Dockerfiles by @ober in #661
  • fix: do not hard-code gcc by @zmyrgel in #670
  • fix typo by @jpe90 in #674
  • Add multi distro docker support by @ober in #676
  • Fix Amazonlinux docker and package by @ober in #677
  • Add initial Readme by @ober in #680
  • add keyword-rest utility function by @vyzo in #681
  • properly display errors from build jobs by @vyzo in #683
  • fix arity declarations for random procedures by @vyzo in #682
  • Revert "fix arity declarations for random procedures" by @vyzo in #684
  • Expanded utility of define-c-struct by @patternspandemic in #620
  • allow using a custom rng in shuffle by @vyzo in #685
  • Fix segfault in utf8 decoding and encoding by @dlozeve in #688
  • Fix docker instructions to match the current published image name by @dboreham in #697
  • Tweaks to the std library by @fare in #699
  • Fix incorrect comment in gxc help message by @JoelNiemela in #702
  • requests: add http-any by @aecepoglu in #705
  • Issue 709: caching symbolic comparison functions by @vyzo in #710
  • misc: tty arities and symbolic exports by @vyzo in #712
  • Some utilities for working with temporary files by @vyzo in #713
  • gxtest: the missing test runner by @vyzo in #714
  • gxtest refinements by @vyzo in #716
  • gxtest: misc polish touches by @vyzo in #717
  • Fix Sad CI by @ober in #715
  • crypto: add support for KDFs and scrypt by @vyzo in #718
  • getopt: add a global help option for describing the program by @vyzo in #719
  • Add read-password by @ober in #720
  • fix location of dockerfile by @ober in #721
  • Fix 404s by @ober in #722
  • Go-style interfaces for Gerbil by @vyzo in #723
  • Generate unchecked methods from interfaces. by @vyzo in #725
  • Miscellaneous fixes by @vyzo in #729
  • RIP std/run-tests.ss by @vyzo in #730
  • Import some functionality from :clan/ports by @fare in #732
  • tiny fix: use ~s to print expected value in check failures by @vyzo in #731
  • Avoid with lock in some perf sensitive operations by @vyzo in #733
  • Miscellaneous fixes by @vyzo in #734
  • Read-Write Locks by @vyzo in #735
  • Bump to Gambit 4.9.5 by @ober in #741
  • Fix docker builds by @ober in #742
  • Add std/misc/walist by @fare in #744
  • fix: add LibreSSL compatibility to libcrypto by @zmyrgel in #747
  • std/interface: dramatically improve casting performance and make satisfies? more intelligent by @vyzo in #738
  • Standard IO Interfaces by @vyzo in #728
  • Use stdio in httpd by @vyzo in #743
  • gxtest: print stack traces on exceptions by @vyzo in #750
  • Improve safety of BIO api by @vyzo in #751
  • Fix configure and Makefile by @vyzo in #756
  • Add tco to docker by @ober in #757
  • gerbil-mode: add interface indentation by @vyzo in #758
  • Some BIO delimited utilities and bug fixes by @vyzo in #754
  • compiler/driver: a couple of small fixes by @vyzo in #760
  • compiler driver: add mutex protecting critical sections by @vyzo in #762
  • Update proxy tutorial by @vyzo in #763
  • slow down rwlock-test to make it less likely to fail on CI by @vyzo in #764
  • Some getopt improvements: call-with-getopt by @vyzo in #765
  • Improve docker multi arch by @ober in #769
  • Precompiled stdlib by @vyzo in #768
  • amb: rewrite internals by @vyzo in #772
  • Welcome to the future, Part I by @vyzo in #776
  • Welcome to the Future, Part II by @vyzo in #777
  • Welcome to the Future, Part III by @vyzo in #783
  • fix installation guide default prefix bug by @vyzo in #784
  • fix missing tip for custom box by @vyzo in #786
  • yet another quick doc fix by @vyzo in #787
  • Fix sed invocations in configure script by @dlozeve in #785
  • Avoid -ldl on netbsd by @ober in #789
  • Use new build format by @ober in #788
  • fix ar situation: don't put the ldd inside libgerbil.a by @vyzo in #791
  • fix the march situation and bug introduced in shared libgerbil building by @vyzo in #792
  • gxc: create output directory for binary executables by @vyzo in #794
  • Fix basename and ln for bsd compat. by @ober in #793
  • Fix it so it builds when CFLAGS/LDFLAGS are set by user by @ober in #795
  • Actors v18 by @vyzo in #755
  • Postresql v18 by @vyzo in #761
  • Some Guide updates by @vyzo in #796
  • (Buffered) String IO by @vyzo in #740
  • tell gcc to keep quiet about openssl deprecations et al by @vyzo in #797
  • Support stdio in std/misc/json by @vyzo in #739
  • doc: remove references to GERBIL_HOME by @vyzo in #800
  • README: freenode is dead; long live gitter! by @vyzo in #801
  • Some more documentation fixes by @vyzo in #802
  • Enable openssl for now, and appropriate usage of LDFLAGS by @ober in #799
  • Remove Gambit references by @ober in #805
  • IO Closer interface by @vyzo in #804
  • Port protobuf to stdio by @vyzo in #752
  • missed these two. openbsd has no ln -v by @ober in #806
  • Cleanup docker remove mysql by @ober in #807
  • Deprecate mysql driver by @vyzo in #808
  • configure: drop native march for OpenBSD by @vyzo in #809
  • support "fully static" linkage by @vyzo in #810
  • Fix docker static libs by @ober in #813
  • don't build deprecated stdlib packages by default by @vyzo in #811
  • Tiny typo in command of getting-started.md by @ret in #817
  • doc/guide/build: use optimized-static-exe for release mode. by @vyzo in #818
  • add g++ to docker. by @ober in #819
  • Actors v18: Administrative privilege separation and capabilities by @vyzo in https://github.com/mighty-gerbils...
Read more

Gerbil v0.17

10 Jan 21:01
Compare
Choose a tag to compare

Release Highlights

  • Gambit v4.9.4 support.
  • we now have configure and make scripts to better align with common practices.
  • gxi is now a binary shim, written in C, so that we can reliably use it as script interpreter.
  • the parallel build has been disabled by default to avoid problems with low memory systems.
  • the expander now allows exports in top context, so that scripts can also be modules.
  • the append-* primitives have been renamed to *-concatenate following Gambit. The old names
    are still available, aliased to the new primitives, for backwards comaptibility.
  • def now supports curried definitions.
  • inline list accumulators with list-builder.
  • std/logger has been rewritten.
  • std/crypto now supports SHA3, BLAKE2, and ED25519.
  • std/json now sorts hash keys in output by default.
  • srfi-124 now has a real ephemeron implementation, based on wills.
  • the postgres driver now supports stacked queries.
  • assert! has been moved from std/sugar to its own std/assert module with significantly improved
    failure messages.
  • many small fixes and documentation improvements.

What's Changed

  • remove obsolete variable definitions for homebrew installation by @vyzo in #508
  • make def support curried definitions by @jxy in #509
  • doc: bump minimum version of Gambit to v4.9.3 by @vyzo in #512
  • build(deps): bump acorn from 6.3.0 to 6.4.1 in /doc by @dependabot in #459
  • Be forgiving when --prefix passed with trailing '/' by @apg in #513
  • std/misc/func: pred-and & pred-or by @thibran in #514
  • gxi C shim by @vyzo in #515
  • only patch default_gerbil_home in gxi.c if an install-prefix is configured by @vyzo in #516
  • Implement eval-when-compile by @vyzo in #518
  • core: rename 'remove' to 'remove1' by @thibran in #519
  • std/misc/list: duplicates by @thibran in #520
  • Build tweaks by @fare in #521
  • std/sugar: is by @thibran in #523
  • misc/func: every-of, any-of, pred-every-of, pred-any-of by @thibran in #527
  • Fix amb-collect by @vyzo in #528
  • Correcting major-mode for gerbil.el, see #510 by @doyougnu in #526
  • Fix bug in srfi-1, add extra inputs for srfi build specs. by @fare in #522
  • Make amb search strategy parametric, default to deterministic by @vyzo in #530
  • make amb-collect reliable by @vyzo in #531
  • Fix srfi extra dependencies by @fare in #532
  • gerbil-mode: improve highlighting and indentation by @thibran in #529
  • std/text/csv: add write-csv-file by @thibran in #533
  • Fix json reader for lists containing false by @fare in #535
  • json: optimize list parsing with inline list accumulators by @vyzo in #537
  • Inline with-list-builder by @fare in #538
  • Inline with-list-builder, second version by @fare in #539
  • Optimize list building patterns by @vyzo in #541
  • build(deps): bump websocket-extensions from 0.1.3 to 0.1.4 in /doc by @dependabot in #542
  • Add element-of to :std/amb by @eraserhd in #534
  • std/misc/string: str by @thibran in #543
  • Do not install .keep files by @eraserhd in #545
  • More documentation and examples by @thibran in #546
  • Fix concurrent plan error reporting by @vyzo in #548
  • CSV parsing improvements by @fare in #552
  • Refactor alist and plist utilities out of std/misc/list by @fare in #544
  • Add a sanity check at the beginning of build.sh by @fare in #553
  • allow exports in top context by @vyzo in #558
  • Remove newline when writing http post/put data by @zentrope in #560
  • build(deps): bump elliptic from 6.5.1 to 6.5.3 in /doc by @dependabot in #561
  • Misc by @fare in #562
  • Add macos examples for static compilation by @ober in #563
  • Update scuby-etc.ss w/minor spelling correction. by @comalice in #565
  • fix misc doc rendering by @vyzo in #566
  • Disable parallel build by default by @fare in #567
  • build(deps): bump prismjs from 1.17.1 to 1.21.0 in /doc by @dependabot in #564
  • check arguments in string-join by @vyzo in #569
  • issue-571: attemped to replace my_bool with c99 bool for mysql bindings by @junkerjoe in #572
  • Allow for reading zero length u8vectors and strings by @eraserhd in #573
  • added fixnum check to first argument of make-list by @Inc0n in #576
  • Various small tweaks to Gerbil by @fare in #578
  • OpenSSL: Refactor and support PKEY, BLAKE2, SHA3 and ED25519 by @fare in #579
  • std/misc/hash: add hash-ref/default by @fare in #588
  • Adding an example to FFI by @jordeam in #582
  • build(deps): bump lodash from 4.17.15 to 4.17.19 in /doc by @dependabot in #555
  • build(deps): bump http-proxy from 1.18.0 to 1.18.1 in /doc by @dependabot in #574
  • build(deps): bump dot-prop from 4.2.0 to 4.2.1 in /doc by @dependabot in #592
  • json: Sort hash keys, expose alist internals by @fare in #595
  • srfi-115: fix posse hash-table collisions by @yanndegat in #601
  • Miscellaneous tweaks by @fare in #600
  • std/net/request: allow attaching data to all http verbs by @yanndegat in #603
  • Document 'PostgreSQL Driver' org->md by @drewc in #604
  • httpd nginx deployment example by @n3mo in #605
  • Add reference doc for Connection Pools by @drewc in #606
  • Add some documentation for the Generic SQL iface by @drewc in #607
  • Add a real implementation of SRFI 124 based on Gambit's wills by @dpk in #611
  • Update README with info about GERBIL_BUILD_CORES. by @wwalker in #615
  • Add ./configure && make && make install, from doc/configure-and-make.org by @drewc in #616
  • Make make make a version: PACKAGE_VERSION -> gx-version by @drewc in #619
  • chain macro - add plain procedure call support by @thibran in #624
  • resolve issues with gambit head readtable changes by @vyzo in #634
  • build(deps): bump url-parse from 1.4.7 to 1.5.3 in /doc by @dependabot in #633
  • build(deps): bump prismjs from 1.21.0 to 1.25.0 in /doc by @dependabot in #632
  • build(deps): bump color-string from 1.5.3 to 1.6.0 in /doc by @dependabot in #635
  • build(deps): bump path-parse from 1.0.6 to 1.0.7 in /doc by @dependabot in #631
  • build(deps): bump postcss from 7.0.18 to 7.0.36 in /doc by @dependabot in #625
  • build(deps): bump ws from 6.2.1 to 6.2.2 in /doc by @dependabot in #623
  • build(deps): bump dns-packet from 1.3.1 to 1.3.4 in /doc by @dependabot in #618
  • build(deps): bump browserslist from 4.7.0 to 4.16.6 in /doc by @dependabot in #617
  • build(deps): bump lodash from 4.17.19 to 4.17.21 in /doc by @dependabot in #613
  • build(deps): bump ssri from 6.0.1 to 6.0.2 in /doc by @dependabot in #610
  • build(deps): bump y18n from 4.0.0 to 4.0.1 in /doc by @dependabot in #609
  • build(deps): bump elliptic from 6.5.3 to 6.5.4 in /doc by @dependabot in #602
  • Migrate CI to GitHub Actions by @dlozeve in #637
  • New logger by @vyzo in #638
  • fix left over log-error -> errorf by @ober in #639
  • s/log-error/errorf for tutorials and docs by @drewc in #641
  • PostgreSQL Simple Query, revise -statement with -command by @drewc in #640
  • Improve assert! error message, add extra-exprs by @AlexKnauth in #643
  • move a...
Read more

Gerbil v0.16

17 May 18:33
Compare
Choose a tag to compare

Release Highlights:

  • R7RS Tangerine, Polydactyl Gerbil, Class Sealing and more.
  • Overhauled std/make library and parallelized builds.
  • Configure and install scripts.
  • Overhauled documentation, with a beautiful new logo!
  • A new Gitter chat room at https://gitter.im/gerbil-scheme/community

Incompatibilities:

  • std/iter:in-range has been renamed to in-iota, with a new in-range compatible with Racket

See the full CHANGELOG in https://github.com/vyzo/gerbil/blob/master/CHANGELOG.md

Gerbil v0.15.1

09 Feb 10:03
Compare
Choose a tag to compare

This is a patch release, addressing incompatibilities between Gerbil v0.15 and Gambit v4.9.3

Gerbil v0.15

25 Jan 17:02
Compare
Choose a tag to compare

The highlight of this release is full support for R7RS Red edition and
many new libraries, improvements and bug fixes.

In addition:

  • For MacOS users: Gerbil is in homebrew now!
  • We have launched the gerbil package directory.
  • The Gerbil Treadmill is a new emacs mode by edw.

Gerbil v0.14

19 Nov 08:51
Compare
Choose a tag to compare

The main new feature of this release is Protobuf support in the standard library.
See https://cons.io/reference/protobuf.html for documentation.

Gerbil v0.13

06 Sep 15:00
Compare
Choose a tag to compare

Release highlights:

  • New documentation structure, with documentation rendered online at cons.io.
  • The compiler has been greatly improved, with a new match/syntax-case optimizer
    and full program optimization for static executables. It also performs arity checking for all
    direct calls to known procedures.
  • The expander has been tuned for performance, resulting in 2x gxi load time reduction.
  • R7RS coverage has been greatly improved, fixing most modified R5RS procedures to
    comply to the new specification.

Gerbil-v0.12

27 Feb 16:53
Compare
Choose a tag to compare

This is a big release, with over 1500 commits, which brings many new features, libraries and fixes.
It requires Gambit v4.8.9.

Release highlights:

  • gxpkg: the Gerbil package manager has arrived, and with it gerbil.pkg for implicit package declarations.
  • gxtags: emacs TAGS for Gerbil sources.
  • gxprof: the gerbil profiler
  • there is an fast embedded http server in the stdlib.
  • there is a pure Gerbil PostgreSQL driver and the MySQL driver is now threaded.
  • the generics library has been rewritten to do type-based dispatch with a polymorphic cache.
  • the actor RPC subsystem has been rewritten for greatly improved performance and syncing for streams.
  • there is a extensive support for programming with raw devices and sockets.
  • there is a network repl.
  • std/misc has been populated with a zoo of utility libraries.

For the full details refer to the ChangeLog