Skip to content
Compare
Choose a tag to compare
@yuriy-chumak yuriy-chumak released this 30 Oct 00:10
· 3 commits to master since this release

Release 2.6

Breaking changes

  • removed deprecated libraries (scheme srfi-Nnn), use (srfi Nnn) instead,
  • i/o scheduler enabled by default for reads, so manual embed code needs to do (start-io-scheduler) before (fork-symbol-interner ...). nothing changed if you use make-entry instead of manually starting thread controller, or if you don't read any input.
  • write function made r7rs-compliant, now you can read the write output and have same result.
    • note: this can be used for libraries code minification (the (write (read)) removes comments and extra spaces)
  • (owl format) moved to (otus format), because rewritten. this is for internal usage, but you must be warned
    • render-xxx renamed to format-xxx for symbols, strings, numbers, etc.

Just a reminder: in 2.4 -> 2.5 the system was renamed to execvp, and new system was introduced.

Major changes

  • new i/o scheduler backported from owl-lisp (thx to Aki Helin).
  • new functions wait, wait-read, bell, call, and smarter wait-mail (part of new i/o scheduler)
  • mail now returns #false if mail is not delivered
  • printing regex is printing regex now (instead of #)
  • tarvenv and tarfolders introduced (will be enabled by default in next ol version)
    • the ol binary can now be standalone and include all required libraries along with the "autorun" script (new olp target added, new standalone example added)
  • Unicode support updated to v.16.0.0
  • "no more zombies" (c)
  • ol (but not olvm) can handle pipes now
  • win32 stdin goes really asynchronous (do not block background threads once user started typing in the windows terminal, grrrrr, i hate ms devs)
  • regex library updated (added /|/ symbol, \\, g// returns string for strings, etc.)
  • = goes universal: can compare strings, vectors, etc.
  • new #\comma, #\backslash, #\semicolon, #\formfeed, #\vtab, etc. constants
  • #ff(...) notation added
  • #u8(...) notation added
  • new function write-simple

Minor changes

  • box and unbox moved to language core
  • 32-bit linux fix for large files
  • new OLVM_OWNLOGGER config define
  • wine HAS_ -> HAVE_ vars update
  • win32 waitpid, execvp, http/server, makefile fixes
  • socket syscall upgraded (now with protocol selection)
  • (file xml), (file json) updated
  • build process updated (no more xxd required, for example)
  • stat syscall can be overriden like open or write
  • new each function
  • olvm internal: IHALT -> IEXIT
  • fix for long port numbers
  • write strings fixed (for "\")
  • write and write-simple updated with proper #ff()
  • new (file html) library
  • runtime-error now can have only 1 parameter
  • http/server: added mime types, unicode fix, etc.
  • write speedup
  • dlopen/dlsym moved to base library
  • http library support websockets now (usage example)
  • ... fixes, cleanups, notes, etc.

Complete log can be found in commit history.

Precompiled Binaries and Installation Packages

Repos packaging status (I'm working with updates):

Packaging status Packaging status latest packaged version(s)

PPA for the Ubuntu family (Mint, Pop!_OS, Xubuntu, etc.)

$ sudo add-apt-repository ppa:yuriy-chumak/ol
$ sudo apt update
$ sudo apt install ol

RH

CentOS 6

cd /etc/yum.repos.d/
wget https://download.opensuse.org/repositories/home:yuriy-chumak/CentOS_6/home:yuriy-chumak.repo
yum install ol

CentOS 7

cd /etc/yum.repos.d/
wget https://download.opensuse.org/repositories/home:yuriy-chumak/CentOS_7/home:yuriy-chumak.repo
yum install ol

RHEL

cd /etc/yum.repos.d/
wget https://download.opensuse.org/repositories/home:yuriy-chumak/RHEL_7/home:yuriy-chumak.repo
yum install ol

Windows

32-bit and 64-bit portable binaries are attached below as ol.win32.portable.zip and ol.win64.portable.zip.
These are standalone executables with the ol libraries integrated. Just extract it to the any PATH-accessible folder and use freely.

The usual installation wizard is also present below in Assets.

Additional Changes

  • ...