Skip to content

Gerbil v0.18

Compare
Choose a tag to compare
@vyzo vyzo released this 12 Oct 19:26
· 184 commits to master since this release
f5c3cce

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 @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 #766
  • move gsi out of the way by @vyzo in #820
  • Docker base docs by @ober in #821
  • Basic Templates by @vyzo in #825
  • Documentation: Editorial Fixes by @vyzo in #827
  • Build top-level SRFI shim modules by @vyzo in #829
  • configure: git fetch gambit by @vyzo in #830
  • Add escape character to string templates by @vyzo in #838
  • Use interfaces in SQL DBi by @vyzo in #839
  • Native SSL support by @vyzo in #816
  • A dirty .gerbil can break the build; not good. by @vyzo in #841
  • Fix libssl deprecation by @vyzo in #842
  • introduce context dependent variation of exe: build spec by @vyzo in #843
  • gxpkg new command by @vyzo in #846
  • fix build --release and --optimized by @vyzo in #850
  • show gxprof some love by @vyzo in #854
  • set TLSv1.2 as minimum version for SSL/TLS contexts by @vyzo in #851
  • Add makefile gxpkg new by @ober in #856
  • disable march in docker. illegal instructions by @ober in #857
  • Makefile template: set docker user by @vyzo in #859
  • update doc/package-lock.json by @vyzo in #861
  • Gerbil Hyperspec: first steps by @vyzo in #848
  • Port net/json-rpc from clan to std by @fare in #826
  • Hyperspec: improve testing documentation by @vyzo in #864
  • Fix the core prelude "Prelude Dictionary" internal links by @drewc in #866
  • Many cleanups post JSON RPC by @fare in #869
  • Overhaul std error hierarchy by @vyzo in #865
  • Update gambit pin by @vyzo in #870
  • Create docker-image.yml by @ober in #871
  • fix docker build by @ober in #874
  • Pure Gerbil Runtime by @vyzo in #875
  • Makefile: pass on parallelism to build.sh, run configure when required. by @leahneukirchen in #884
  • document make -j by @vyzo in #886
  • Pure Gerbil Bootstrap by @vyzo in #880
  • Add support for SRFI 212 by @vyzo in #882
  • Cleanup cruft from R7RS prelude by @vyzo in #883
  • CI: use all vm cores in github workers by @vyzo in #889
  • Configure with --enable-shared by default by @vyzo in #881
  • fix typo by @ober in #888
  • Improve ephemeron implementation, update the doc notice by @vyzo in #887
  • fix make -j passing build cores by @vyzo in #890
  • add debugging to fix branches by @ober in #891
  • Compiler: optimize checked calls by @vyzo in #894
  • 885 debug docker failure by @ober in #896
  • Macros for exception context by @vyzo in #897
  • 885 debug docker failure by @ober in #898
  • 885 debug docker failure by @ober in #900
  • Thread primitives in the runtime by @vyzo in #901
  • More imports from gerbil-utils plus a few cleanups by @fare in #879
  • Documentation improvements by @vyzo in #906
  • Refactor and coalesce Gambit prelude by @vyzo in #905
  • Add missing exports to error, json-rpc by @fare in #907
  • Invoke interface methods in unchecked context by @vyzo in #911
  • Optimize evector by @vyzo in #910
  • Move Foreign Packages out of tree as external packages by @vyzo in #914
  • remove pr docker runs by @ober in #917
  • Some minor documentation fixes by @vyzo in #913
  • Small improvements to number and decimal modules by @fare in #915
  • Fix issue 893 by @vyzo in #921
  • gxpkg improvements by @vyzo in #916
  • std/source: source location access macro by @fare in #923
  • Make raise facades macros by @vyzo in #922
  • remove std/net/wamp by @vyzo in #925
  • Exception context: use stx-source by @vyzo in #928
  • Add source to build-spec by @fare in #924
  • Fix :std/source by @fare in #930
  • stdio: implement cooked port adapters by @vyzo in #929
  • compiler: handle extended annotations by @vyzo in #927
  • std/misc/atom: tests, documentation, tweaks by @fare in #933
  • Fixes to basic-parsers by @fare in #935
  • std/protobuf/macros: -bytes => -u8vector by @fare in #939
  • std/net/json-rpc: fix param-encoder by @fare in #938
  • Add -L --load to gxi by @fare in #936
  • Contract Preliminaries by @vyzo in #934
  • compiler driver: fix default gsc path by @vyzo in #942
  • fix DESTDIR, pass it on via "make install" by @leahneukirchen in #943
  • Fix std/misc/repr by @fare in #937
  • Let over using by @vyzo in #947
  • use openssl rehash instead of c_rehash by @vyzo in #946
  • compile driver: separate compilation steps everywhere by @vyzo in #944
  • Fix broken http condition def and http-response-write-condition api by @vyzo in #950
  • support vim TAGS by @vyzo in #948
  • SOCKS proxy client and server by @vyzo in #949
  • A tiny improvement in socks client by @vyzo in #952
  • fix issue in socks server by @vyzo in #955
  • define localhost and inaddr-any constants in :std/net/address by @vyzo in #961
  • link element no longer has closing html tag by @alex-brook in #963
  • Fix socks server some more by @vyzo in #960
  • automatically wrap actor threads with exception stack trace dump by @vyzo in #954
  • Define gerbil-path by @fare in #956
  • Some doc grooming by @vyzo in #959
  • std/misc/list: Document. Tweak group* functions by @fare in #953
  • fix ip-address string conversions by @vyzo in #967
  • Websockets by @vyzo in #945
  • Disable flaky signal tests by @vyzo in #969
  • Somewhat improve build time by @vyzo in #968
  • protobuf: add :gerbil/core import in generated module by @vyzo in #970
  • gxpkg: fix bug in installation with diamond dependencies by @vyzo in #972
  • smxl: fix bad error reference by @vyzo in #971
  • driver: protect create-directory with mutex by @vyzo in #973
  • Update tutorials and document TLS/SSL by @vyzo in #966
  • Document std/misc/number by @fare in #974
  • Some doc fixes by @vyzo in #975
  • export load-module from the protobuf prelude by @vyzo in #977
  • json-rpc documentation by @fare in #976
  • Debugging section of the hyperspec by @vyzo in #978
  • Install sources by @vyzo in #979
  • Fix static include for .c files by @vyzo in #980
  • Homebrew and MacOS fixes by @drewc in #964
  • recompile bootstrap for Gerbil v01.18-rc1 by @vyzo in #982
  • Release v0.18 rc1 by @vyzo in #981

New Contributors

Full Changelog: 0.17.0...v0.18