2016-04-21

April 2016 Quicklisp dist update now available.

Quicklisp's 67th monthly update is now available!

 Thank you to all the people who signed up for the recurring Supporter Club in the last month. The "big" fundraiser is still in the works, and I'll let you know more when there's more info to share.

New projects:
  • caveman2-widgets — Weblocks like widgets for caveman2. — LLGPL
  • cl-gamepad — Bindings to libstem_gamepad, allowing the handling of gamepad input. — Artistic
  • cl-geos — A CFFI wrapper of GEOS for performing geometric operations in Lisp. — Lisp-LGPL
  • cl-hash-table-destructuring — Hash table destructuring utils — WTFPL
  • cl-statsd — Statsd client in Common Lisp — MIT
  • cl-vhdl — My attempt to understand VHDL, and basicly make VHDL with Lisp-macro — MIT
  • electron-tools — Download, extract, and run Electron binaries. — MIT
  • flare — Easy particle systems with fine grained control. — Artistic
  • inlined-generic-function — MOP implementation of the fast inlinable generic functions dispatched in compile-time — LLGPL
  • liblmdb — Low-level LMDB bindings. — MIT
  • lmdb — Bindings to LMDB. — MIT
  • oclcl — oclcl is a library S-expression to OpenCL C. — LLGPL
  • prbs — A library of higher-order functions for generating Pseudo-Random Binary Sequences of (practically) any degree — MIT
  • prometheus.cl — Prometheus.io Common Lisp client — MIT
  • random-state — Portable random number generation. — Artistic
  • remote-js — Send JavaScript from Common Lisp to a browser. — MIT
  • sketch — Sketch is a Common Lisp framework for the creation of electronic art, computer graphics, visual design, game making and more. It is inspired by Processing and OpenFrameworks. — MIT
  • tm — Formalized Iteration Library for Common LISP — MIT
  • trivial-compress — Compress a directory. — MIT
  • trivial-string-template — A trivial string template library, inspired by Python's string.Template — MIT
  • trivial-ws — Trivial WebSockets. — MIT
Updated projects3d-vectorsalexandriaarchitecture.service-providerarrow-macrosasdf-flvasteroidsbinfixburgled-batteriesceramiccl+sslcl-anacl-asynccl-autowrapcl-bsoncl-geometrycl-hash-utilcl-itertoolscl-jpegcl-l10ncl-lexercl-llvmcl-marklogiccl-mockcl-mtgnetcl-mysqlcl-ohmcl-openglcl-opsresearchcl-pangocl-rabbitcl-rethinkdbcl-sdl2cl-slugcl-string-matchcl-stringscl-tasuketecl-tetris3dcl-wordcutcl-yaclyamlclack-errorsclassimpclinchcloser-mopclxcommon-doccommon-doc-plumpcommon-htmlcommonqtcopy-directorycroatoandartsclemailaddressdeedsdefpackage-plus,dissectdocparseresrapesrap-liquidfare-utilsfast-ioform-fiddlegendlhyperluminal-memjp-numeralkenzolakelisp-interface-librarylocal-timemacrodynamicsmcclimmitonorthosicatpaiprolog,parse-jspath-parseprojecturedqtoolsqtools-uiquickutilrpmrtg-mathrutilssafe-queuescalplsdl2kitserapeumsimple-date-timesimple-tasksskittersmugsnarksouthspinneretstaplestumpwmsxql,teepeedee2temporal-functionstriviatrivial-channelstrivial-extractusocketutilities.print-treewhichworkout-timer.

To get this update, use (ql:update-dist "quicklisp").


2016-03-21

Recovering from a breaking update

The March Quicklisp update has usocket 0.6.4, an update that unfortunately does not build on older versions of SBCL due to IPv6-related symbols. In response, Chun Tian quickly released usocket 0.6.4.1, which builds fine on older SBCLs.

It's only been a few days since the last Quicklisp dist release, so I'm not going to make a new one just for the usocket problem.

If you're hit by this issue, what can you do?

The best option, if available, is to upgrade to a recent SBCL, which has many new and exciting features and works well with the usocket in the latest Quicklisp release.

If that's not feasible, you can also manually get usocket 0.6.4.1 (or newer) from the usocket download page, unpack it in ~/quicklisp/local-projects/, and go from there.

Finally, you can revert to last month's Quicklisp dist. I first wrote about this in "Going back in (dist) time", but here's a short overview:

* (in-package :ql-dist-user)

* (second (available-versions (dist "quicklisp")))
("2016-02-08"
 . "http://beta.quicklisp.org/dist/quicklisp/2016-02-08/distinfo.txt")

* (install-dist (cdr *) :replace t :prompt nil)
lots of output

In particular, the second element of available-versions will always be the second most-recent Quicklisp dist, so that's generally the one to use if you want to go one dist backward.

(Topic for the future: how better prerelease testing will catch these kinds of problems.)

2016-03-18

March 2016 Quicklisp dist update now available

This update, Quicklisp's 66th, is brought to you by me! I've been fortunate to have Clozure sponsor a lot of Quicklisp work in the past, but now I'm self-employed. Working on Quicklisp takes time. In April, I'm going to try to raise a lump sum of money so I can work on a number of get-out-of-beta features, like better download security, provenance info, a manual, etc. Beyond that onetime fundraising, I'd like to enlist more regular monthly supporters for funding ongoing dist updates and maintenance. Do you think Quicklisp is worth it? I'm looking forward to finding out shortly.

If you have any feedback on fundraising, feel free to get in touch.

Back to your regularly scheduled update announcement...

New projects:
  • agm — A high-performance game math library. — MIT
  • cepl — Fast lispy way to work with OpenGL — BSD 2 Clause
  • cepl.camera — A camera implementation for CEPL — BSD 2 Clause
  • cepl.devil — A couple of helper functions to load from devil straight to cepl c-arrays or textures — BSD 2 Clause
  • cepl.sdl2 — SDL2 host for cepl — BSD 2 Clause
  • cepl.skitter — Plumbing to use skitter with cepl — BSD 2 Clause
  • cl-bunny — Common Lisp RabbitMQ client based on IOLib — MIT
  • cl-iterative — Generic iterative algorithm with multiple controls — LGPLv3
  • cl-llvm — CFFI bindings to the LLVM libraries. — MIT
  • cl-ohm — An object-hash mapping for Redis in Common Lisp — MIT
  • cl-sdl2-image — Bindings for sdl2_image using autowrap — MIT
  • cl-strings — A set of utilities for manipulating strings in CL. — MIT
  • cl-tetris3d — Yet another 3D Tetris clone — MIT (also see COPYING file for details)
  • cl-wordcut — Word segmentation tools for ASEAN languages written in Common Lisp — LLGPL
  • cl-zmq — Zero MQ 3 bindings — LGPLv3
  • dartsclemailaddress — Parsing and formatting email addresses (RFC 5322 compliant) — MIT
  • dendrite — Master package for all dendrite packages — BSD 2 Clause
  • documentation-utils — A few simple tools to help you with documenting your library. — Artistic
  • file-local-variable — File-local variable independent from ASDF — LLGPL
  • hu.dwim.bluez — Common Lisp FFI wrapper for libbluetooth, aka Bluez, which is a Linux Bluetooth stack. — BSD or Bugroff
  • hu.dwim.sdl — Common Lisp FFI wrapper for libSDL2. — BSD or Bugroff
  • lambda-gtk — Unspecified — LLGPL
  • legit — CL interface to the GIT binary. — Artistic
  • livesupport — Some helpers that make livecoding with slime/sly a little easier — BSD 2 Clause
  • magicffi — cffi interface to libmagic(3) — Simplified BSD License
  • mito — Abstraction layer for DB schema — LLGPL
  • mito-attachment — Mito mixin class for file management — LLGPL
  • mito-auth — User authorization for Mito classes — LLGPL
  • north — oAuth 1.0a server and client implementation, the successor to South. — Artistic
  • org-sampler — Extract docstrings as Emacs org-mode files — LLGPL 3.latest
  • perfpiece — CL:TIME on steroids. — MIT
  • rt-events — A simple real-time events API. — MIT
  • skitter — An event system for games — BSD 2 Clause
  • snark — The Snark Theorem Prover — MPL 1.1, see file LICENSE
  • trivialib.bdd — BDD and ZDD implementation using Trivia — LLGPL
  • what3words — Describe what3words here — BSD
Updated projectsarchitecture.service-providerarchivebinfixbirchbit-smasherbordeaux-threadsburgled-batteries.syntaxcavemanceramiccffichipzchronicitycl+sslcl-amqpcl-anacl-arrowscl-autowrapcl-charmscl-dbicl-events,cl-fusecl-gambolcl-gobject-introspectioncl-graphcl-itertoolscl-libuvcl-marklogiccl-opsresearchcl-pdfcl-quickcheckcl-rabbitcl-rethinkdbcl-sdl2cl-sdl2-ttfcl-strftimecl-tasuketecl-tgacl-xulclackclack-errorsclaviercloser-mop,clxcolleencontextlcroatoancurry-compose-reader-macroscxml-rngdeedsdelta-debugdjuladocparsereazy-projecteruditeesrapexternal-programfemlispfiltered-functionsfmtfngendlglkithu.dwim.defhu.dwim.perec,hu.dwim.quasi-quotehu.dwim.rdbmshu.dwim.syntax-sugarhu.dwim.utilhu.dwim.web-serverhunchentootia-hash-tableieee-floatsinquisitorintegralintel-hexiolibjskenzolacklakelisp-executablelisp-interface-librarylocal-time,lw-compatmcclimninglenstosicatparenscriptpathname-utilsperiodsplumpplump-sexpproc-parseqlotqt-libsqtoolsqurirtg-mathscalplsdl2kitserapeumsimple-taskssip-hashslimestmxstumpwmsxqltemporal-functions,triviatrivia.balland2006trivial-shellusocketvarjovomwoo.

Removed projects: buffalo (disappeared from github), cl-fgraph (per author's request), cl-quakeinfo (no longer builds on non-Allegro).

To get this update, use (ql:update-dist "quicklisp").

Enjoy!

2016-03-15

February 2016 Quicklisp download stats

Here are the top 100 downloads by raw download count.

 5607 alexandria
 4586 cl-ppcre
 4388 trivial-features
 4119 babel
 3369 split-sequence
 3332 bordeaux-threads
 3268 cl+ssl
 3243 cffi
 3208 anaphora
 2725 closer-mop
 2692 trivial-gray-streams
 2635 trivial-garbage
 2620 let-plus
 2551 flexi-streams
 2524 usocket
 2515 cl-fad
 2491 cl-colors
 2382 cl-base64
 2318 prove
 2286 cl-ansi-text
 2255 cl-utilities
 2238 quri
 2218 chunga
 2203 local-time
 2140 cl-html-parse
 2113 puri
 2102 iterate
 1956 chipz
 1873 nibbles
 1871 drakma
 1799 named-readtables
 1763 ironclad
 1612 cl-interpol
 1551 md5
 1520 trivial-backtrace
 1517 cl-unicode
 1418 slime
 1343 lack
 1336 clack
 1330 trivial-types
 1309 cl-annot
 1295 cl-syntax
 1208 fast-io
 1161 trivial-utf-8
 1134 salza2
 1114 cl-json
 1104 proc-parse
 1092 static-vectors
 1053 hunchentoot
  992 rfc2388
  990 jonathan
  981 parse-number
  965 cl-mysql
  957 fast-http
  916 clx
  911 uiop
  903 xsubseq
  875 metabang-bind
  865 clsql
  836 smart-buffer
  835 ieee-floats
  829 lparallel
  825 osicat
  802 postmodern
  770 closure-common
  766 quicklisp-slime-helper
  759 cxml
  753 log4cl
  699 optima
  686 uuid
  679 mcclim
  672 array-utils
  645 cl-reexport
  644 cl-sqlite
  633 trivial-indent
  631 zpng
  615 http-body
  611 yason
  609 fiveam
  605 trivial-mimes
  602 plump
  589 swap-bytes
  523 symbol-munger
  512 cl-containers
  505 cl-yacc
  502 ningle
  501 vom
  501 simple-date-time
  498 map-set
  494 myway
  490 lisp-unit
  483 lquery
  479 dexador
  476 asdf-system-connections
  473 cl-cookie
  470 function-cache
  466 cl-csv
  466 iolib
  466 metatilities-base
  464 cl-dbi

2016-02-22

Quicklisp client update available with proxy fix

A recent update to the Quicklisp client program broke proxy support. Instead of a successful download, it would stop with the error Unexpected HTTP status for <url>: 400.

If you use a proxy, you unfortunately can't get the fix with the normal (ql:update-client) command. You have to install fresh from quicklisp.lisp again. If you have anything in your local-projects directory, save it, then remove your old ~/quicklisp directory prior to installation.

Sorry about the hassle, and please report any new bugs you find in the client. Thanks!

2016-02-09

February 2016 Quicklisp dist update now available

New projects:
  • acclimation — Library supporting internationalization — FreeBSD, see file LICENSE.text
  • asdf-manager — Download and manage ASDF versions. — MIT
  • cl-events — Events for Common Lisp — MIT
  • cl-freeimage — Bindings to the freeimage library. — MIT
  • cl-graylog — Common Lisp Graylog client library — Unspecified
  • cl-jsx — JSX in Common Lisp — MIT
  • cl-ode — Describe cl-ode here — Specify license here
  • cl-pango — Bindings to the pango text layout library. — MIT
  • cl-sdl2-ttf — A common lisp wrapper for SDL2_TTF used for loading fonts and creating text assets — Unspecified
  • cl-tasukete — Please help me, Common Lisper. — MIT
  • cl-weather-jp — Get weather in Japan — BSD 2-Clause
  • copy-directory — Copy a directory. — MIT
  • deeds — Deeds Extensible Event Delivery System — Artistic
  • disposable — Dispose function and with-disposable macro — BSD 2 Clause
  • id3v2 — ID3v2 parser — BSD 2-Clause
  • lass-flexbox — Flexbox for Lass. — MIT
  • mp3-duration — Get the duration of an MP3 file — BSD 2-Clause
  • mystic — A project skeleton generator. — MIT
  • path-parse — Parse the PATH environment variable, portably. — MIT
  • pathname-utils — A collection of utilities for pathname manipulation. — Artistic
  • psychiq — Redis-backed job queueing system — LLGPL
  • quux-hunchentoot — Thread pooling for hunchentoot — MIT
  • rtg-math — A selection of the math routines most commonly needed for realtime graphics in lisp — BSD 2 Clause
  • safe-queue — Thread-safe queue and mailbox — MIT
  • structy-defclass — Provides deftclass, a struct-like way of defining classes — BSD 2 Clause
  • swank.live — Some helpers that make live coding with slime/swank easier — BSD 2 Clause
  • trivial-msi — Utilities for working with Microsoft MSI files. — MIT
  • which — The which UNIX command in Common Lisp. — MIT
Updated projectsantikarchitecture.service-providerasteroidsbackportsbinfixbuffalochirpcl+sslcl-amqpcl-anacl-autowrapcl-cffi-gtkcl-cutcl-gdatacl-gistscl-gracecl-itertoolscl-jpegcl-lexercl-liballegrocl-libusbcl-libuvcl-marklogiccl-mimecl-mpicl-openglcl-permutationcl-quickcheckcl-scriptingcl-sdl2clackclim-widgetsclmlclobbercloser-mopclsqlclsql-ormclxcolleencom.informatimagocontextlcranecroatoandata-tabledataflydexador,djuladocparsereazy-gnuplotesrapfast-iofngendlglkitgsllhelambdaphu.dwim.presentationhu.dwim.stefilhu.dwim.utilincf-clinferior-shellinquisitorintel-hexiolibip-interfacesjonathanjsownlacklakelinewise-templatelisp-unitlisp-zmqlocal-timelparallellquerylucernemathkitmcclimmpcosicatplokamipostmodernpoundspp-tomlproc-parseprojecturedqlotqmyndqt-libsqtoolsqtools-uiquickutilquriracerrestasrutilsscalplsdl2kitsecure-randomserapeumsimple-inferiorssimple-taskssnoozespinneretstp-querystringprepstumpwmsxqltemporal-functionstriviaubiquitousuniversal-configutilities.print-itemsvarjovas-string-metricswebsocket-driverwith-c-syntax,wu-sugarxhtmlambdaxml.locationyason.

Removed projects: cl-llvm, cl-popen, cl-v4l2, cl-zmq, hdf5-cffi, lambda-gtk, magicffi, perfpiece, sqnc.

These projects were removed because I now use Debian 8 for testing, and I have been completely unable to get them to build. If you know quick and easy ways to get any of them to build on Debian 8, let me know, and I'll get them back into Quicklisp.

Enjoy!

2016-01-21

New Quicklisp client available

I've updated the Quicklisp client to version 2016-01-21. There are a few new things:

  • Fix for issue #116, so"asdf" is now ignored as a system to be bundled instead of signaling an error. Thanks to Dimitri Fontaine for inspiration and some code for fixing this.
  • Merged pull request #127, which has some small fixes courtesy of Attila Lendvai
  • Merged pull request #124, which adds recognition of URL schemes to fetching, and a special variable to control what function is used for what scheme. This feature moves Quicklisp closer to out-of-beta; many thanks to SANO Masatoshi for contributing it.
To get this update, use (ql:update-client) and restart your session.