18.06 released -- along with Embedded!

  • 2 Replies
  • 1185 Views
*

ron

  • Administrator
  • Guru
  • *****
  • 6,003
18.06 released -- along with Embedded!
« on: September 06, 2018, 10:43:53 »
If you don't have 8th yet, get it now!  If you already have 8th but want to get the latest version, click here.

From the README:


CHANGES FROM 18.05

WHAT'S NEW OR FIXED:

    GENERAL:
    - Embedded version now available!
    - All reported bugs have been addressed; no open bugs (as of the release-date)!
    - More performance improvements (up to 25% depending on platform etc.)
    - Manual updated and reviewed
    - Added file/net read/write/stats watcher
    - Absolute and relative timer events (not GUI timers)
    - 't:task' now works properly with a "map" argument having a key "num"
    - utils/args library is more flexible: keeps proper track of unused options,
      stops processing on unrecognized option, and allows 'break' to stop
      processing
    - GUI: "win" now accepts a "title-font" key in the JSON, to set the font
      used in the title-bar (if using non-native title bar drawing)
    - GUI: new event 'key-changed', which signals that a key has been pressed or
      released.  Use in conjunction with 'key-pressed' if you want to track
      keyboard state.
    - Fixed up a couple game samples which play sounds so they will work on the Free version.
    - Fixed a number of bugs in the date handling and libraries
    - Removed 'gumbo' library from dependencies
    - Restored and fixed SOAP sample
    - FFI improvements (see docs)
    - FFI fixes (especially regarding "callback" words)
    - GUI: message dialog fixed
    - Fixed pack/unpack bugs
    - Added ability to intercept a crash (app:oncrash)
    - Slight improvement in startup time
    - Fix db:open of buffer so it will work with multiple tasks
    - Fixed DST calculations (there was an off-by-one bug)
    - Added ISO country-code database
    - Ability to demand-include binary data from the libs (G:libbin)
    - Added ability to intercept FFI load failures (used to throw an exception)
    - Updated vim and emacs syntax file generators
    - Removed non-applicable samples from each SKU.  For example, the Free
      version doesn't have the 'sound' samples, etc.
    - Added ability to PGP-clearsign an 8th script
    - Removed mostly useless '-c' command-line parameter
    - Reworked (stat) word to be more accurate and up to date, removed stat
    - Fixed net:ifaces? crash when using VPN on Linux
    - 'log' works more correctly in console mode with tasks
    - d:new time-zone issue fixed
    - Fixed math div failure on 32/64 bit boundary
    - f:abspath and f:relpath didn't NUL terminate the strings
    - Android: fixed nasty interaction between 'tasks' and using the gui

    PLATFORM-SPECIFIC:
        - Windows: fix CERT VU#307144
        - Windows 32-bit: fix bfloat bug introduced in 18.05
        - macOS/iOS: fixed slow camera response
        - iOS/Android: removed 'con:' words altogether since they are useless on those platforms.
        - Android: added an "APK builder": bin/makeapk.8th.  Invoke with '8th bin/makeapk.8th projdir'
        - Android: target SDK set to 26, to comply with new Google Play rules
        - Android and Linux: "web" gui widget implemented
        - Android: numerous other issues fixed
        - Android: support for "Watch OS" added (Pro+ only)

    VERSION-SPECIFIC:
    - Free:
        - desktop 32-bit versions and iOS 32-bit have been REMOVED.  This
          reduces the size of the most frequently downloaded version while retaining the
          most common targets.
    - Hobby:
        - snd:mix - support for sound mixing
        - snd:new can be used to create a sine-wave tone
        - snd:new can be used to create a custom tone
        - Added sound filter capability
        - GUI: 'audio' gui item type to select audio settings, (except for MOBILE!)
        - Some snd: words removed because they no longer are feasible
    - Pro:
        - support for Android "Wear OS"
        - MySQL interface bug fixed
        - Added daylight-savings transition-dates database (Like Unix "/etc/timezone")
    - Embedded:
        - Released first target, "AGL", with some sample code
        - Added 'docs/embedded.pdf', which is the Embedded-specific manual


BREAKING CHANGES:
    - Hobby+ : some snd: words removed and reworked.
    - Mobile: con: words removed
    - libs/utils/args : removed 'last-arg'

WORDS:
    - New:
        app:shared?  G:-----BEGIN G:libbin G:memfree G:remaining-args app:oncrash app:shared?
        cr:validate-pgp-sig d:timer d:updatetz f:watch iso:countries n:bic
        n:binv w:ffifail

        Hobby:
            snd:apply-filter snd:devices?  snd:filter snd:freq snd:gain
            snd:gain?  snd:mix snd:unmix

        Pro:
            d:dstquery (Android only) hw:isround? hw:iswatch?

        Emb: (AGL only): app:agl_binding

    - Fixed:
        G:(stat) G:pack G:unpack con:key d:tzadjust db:open f:abspath f:relpath g:msgdlg
        n:/ n:/mod net:ifaces?  snd:volume snd:volume?  t:task

    - Changed:
        Hobby:
            snd:loop snd:new snd:record

    - Removed:
        G:stat
        Hobby:
            snd:curlen snd:seek snd:tell

LIBRARIES:
    - New:
        crypto/pgp ffi/systemd iso/countries

        Pro:
            date/daylight

        Emb:
            agl/service ffi/afbwsc ffi/libjson

    - Fixed:
        date/dst date/hebrew date/sunrise date/utils gui/msgdlg net/http

    - Changed:
        utils/args

SAMPLES:
    - New:
        crypto/pgp.8th file/watch.8th misc/timer.8th sound/custom.8th
        sound/filter.8th sound/mix.8th sound/record-buf.8th

        Hobby:
            gui/soundselect.8th

        Pro:
            date/daylight.8th

        Emb:
            agl/hello/hello.8th agl/service/service.8th

    - Changed:
        sound/sound.8th

    - Fixed:
        games/sweeper/sweeper.8th games/twentyfour/24-game.8th net/server.8th
        net/soap.8th net/udp.8th sound/record.8th

KNOWN ISSUES:

    - Windows w/ MSYS or CYGWIN: if you want to run 8th in an msys or cygwin
      console, you will need to use "winpty" to do so.
    - MP3 *writing* is not supported
    - Do not use non-opaque controls on Android: the performance is dismal
    - "web" gui is not implemented RPI.  This will probably not be fixed.
    - atrun on iOS not implemented yet
    - The PDF library (utils/pdf) is incomplete and needs more love.  We welcome
      your contributions!


We thank you for your continued support of 8th!

*

ron

  • Administrator
  • Guru
  • *****
  • 6,003
Re: 18.06 released -- along with Embedded!
« Reply #1 on: September 13, 2018, 11:15:58 »
And the first "slipstream release" for 18.06 is out!  The build is 51221ee6/2018-09-13, and the fixes are:

    - Fixed Linux GLIBC dependency
    - Fixed task-local variable memory leak
    - Fixed user-defined variable memory leak
    - Fixed Windows net:ifaces? bug

*

ron

  • Administrator
  • Guru
  • *****
  • 6,003
Re: 18.06 released -- along with Embedded!
« Reply #2 on: September 16, 2018, 13:09:53 »
A second sliptstream, build abcff48d/2018-09-16), fixes:
 - net not setting socket options correctly (e.g. broadcast)