20 May 2015
The mailing list is email@example.com.
If you are interested in following developments to the next release you can join at:
20 May 2015 2:08am GMT
16 May 2015
In preparation for making Clasp generate performant code, I've switched to using tagged pointers and immediate fixnums, characters and single-floats. This is a common technique in dynamic language implementations where you represent small values directly within pointers rather than storing them on the heap. The tagging scheme in Clasp is as follows for 64-bit systems (32-bit is not supported at the moment).
A pointer provides 64-bits (63 … 0) to work with.
|FIXNUM||0b0||The other 63 bits are used to store a signed FIXNUM. The 0b0 bit allows certain arithmetic operations (addition, subtraction, comparison) to be very fast.|
|OTHER||0b001||In the lower three bits represents a pointer to an object on the heap. The pointer is 8-byte aligned in memory.|
|CONS||0b011||A pointer to a CONS cell. Robert Strandh suggested this so that Common Lisp code can easily distinguish CONS cells from non CONS cells and speed up list traversal.|
|FRAME||0b101||A pointer to an array on the stack. I'm not sure if I'll continue to use this going forward - it's really just for bootstrapping. I may reuse this tag to represent a pointer to C++ objects on the C++ heap.|
|CHARACTER||0b00111||A character in a 32-bit value (>> 5 to unbox).|
|SINGLE-FLOAT||0b01111||Represents a single precision C/C++ float, a 32-bit value (>>5 to unbox).|
I'm especially interested in peoples thoughts on embedding something like a double-precision float within 61 bits. I'm 99.9(repeating)% sure it can't be done but I'd love something like that. Arithmetic, Arrr! she be a harsh mistress.
All pointer access in Clasp is performed using a C++ template class called smart_ptr and it was relatively easy to modify this class to manage the tagged pointers. The untagging/tagging of OTHER-PTR and CONS-PTR pointers is carried out by overloading the C++ dereferencing operators: operator-> and operator*, of the smart_ptr template class.
It was a bit tricky to get these immediate values to play nice with C++ types and inheritance because the Clasp C++ code does not treat all Common Lisp types as a single undifferentiated pointer type. Clasp uses C++ types like T_sp, List_sp, Cons_sp, Float_sp, Symbol_sp, HashTable_sp etc. to distinguish different Common Lisp pointer types from each other within the C++ code. An assignment like:
T_sp x = y;
is valid and very common within the Clasp C++ code. But:
Symbol_sp s = gc::As<Symbol_sp>(a);
will signal a Common Lisp error if
a doesn't point to a SYMBOL at the time of the assignment to s.
To deal with this I defined a template class: TaggedCast<ToPtr,FromPtr> that provides an "isA" function and a "castOrNULL" function that can be specialized to simulate inheritance between classes that represent immediate values to the regular C++ class hierarchy.
16 May 2015 8:25pm GMT
12 May 2015
Jörg Höhle: "it seems to me that part of the difficulties with compiling, packaging and obtaining clisp stem from the core libraries that it uses, namely libffi and esp. libsigsegv. Both were created by Bruno Haible decades ago and both are in need of a maintainer."
You can read the entire article on gmane.
Sam Steingold follows up: "note that libffi is actively maintained[, ] clisp uses libffcall"
12 May 2015 12:44pm GMT
09 May 2015
In the next week or two, I'm going to update Quicklisp so that if ASDF is missing, or not at least version 3.1, it will fetch and load ASDF 3.1.4. This should be a pretty conservative change. Almost all implementations already include ASDF 3.
If you'd like to try the new Quicklisp client that fetches ASDF 3 if needed, see this post to the Quicklisp mailing list.
09 May 2015 1:27am GMT
07 May 2015
Jörg Höhle writes: "[…] we're looking for a maintainer, i.e. somebody who has time to donate to assess patches, test and build a new release. It would be nice if somebody younger than us, the old guys, who have been with clisp for over 20 years, would jump in and care."
07 May 2015 6:37pm GMT
06 May 2015
- bytecurry.asdf-ext - ASDF extension(s) for generating atdoc documentation. - MIT
- cl-durian - dynamic html generation from list structures (interpolation friendly) - WTFPL
- cl-marklogic - Common Lisp library for accessing MarkLogic Server. - LGPL3
- cl-pslib - A CFFI wrapper for the pslib library, a library for generating PostScript files. - LLGPL
- cl-pslib-barcode - A barcode generator for the cl-pslib library. - LLGPL
- cl-simple-concurrent-jobs - A simple API for running concurrent jobs and collecting the results - BSD 2-Clause
- cl-sophia - High-level API for Sophia key-value storage - WTFPL
- cl-strftime - Common Lisp compiler for the strftime language. - MIT
- cl-tga - TGA file loader - MIT
- erudite - Literate Programming System for Common Lisp - MIT
- intel-hex - A library to handle Intel HEX format. - MIT
- snakes - Python style generators for Common Lisp. - Apache 2.0
Updated projects: alexandria, antik, arrow-macros, babel, beirc, birch, blackbird, buffalo, bytecurry.mocks, caveman, chanl, chipz, cl+ssl, cl-ana, cl-async, cl-charms, cl-enumeration, cl-gobject-introspection, cl-grace, cl-graph, cl-i18n, cl-launch, cl-mtgnet, cl-netstring-plus, cl-ply, cl-quickcheck, cl-rabbit, cl-read-macro-tokens, cl-readline, cl-rethinkdb, cl-sdl2, cl-singleton-mixin, cl-slug, cl-voxelize, cl-yaml, clack, clack-errors, clim-widgets, climacs, clinch, clipper, closer-mop, colleen, common-doc, common-html, common-lisp-stat, commonqt, corona, dartsclhashtree, dartsclmessagepack, defclass-std, dyna, eazy-process, exscribe, f2cl, fare-csv, fast-http, function-cache, gbbopen, generic-comparability, gsll, hu.dwim.delico, hu.dwim.stefil, hu.dwim.syntax-sugar, hu.dwim.util, immutable-struct, inferior-shell, jonathan, json-responses, lass, let-over-lambda, lev, lisp-interface-library, lisp-invocation, lisp-matrix, lquery, lucerne, metap, mexpr, mgl-pax, nibbles, ningle, nsort, perlre, plump, proc-parse, qlot, qtools, quadtree, quasiquote-2.0, scalpl, scriba, scribble, serapeum, shellpool, should-test, shuffletron, staple, stmx, stumpwm, thorn, transparent-wrap, trivial-download, usocket, with-c-syntax, wookie.
To get this update, use
06 May 2015 2:04pm GMT
05 May 2015
Here are the top 100 downloads for last month:
05 May 2015 6:26pm GMT
Dave Fox just posted this message to the LispWorks mailing list:
LispWorks Ltd is pleased to announce the release of LispWorks 7.0 on Windows®, Macintosh®, x86/x86_64 Linux®, ARM Linux®, FreeBSD®, AIX®, x86/x64 Solaris™ and SPARC/Solaris™ platforms. Also, new LispWorks for Mobile Runtime products target Android and iOS apps.
LispWorks 7.0 brings these new features:
- 32-bit implementation for ARM Linux.
- 32-bit and 64-bit implementations for PowerPC/AIX.
- Java interface.
- Characters and strings support all Unicode planes.
- Editor supports Unicode entire range, including Chinese and Japanese characters.
- Improved documentation including consolidation of CAPI manuals with more cross references, and more self-contained examples.
- Code coverage tools.
- Asynchronous socket I/O and UDP sockets.
- Editor supports more fonts on Cocoa.
- Support for multi-touch gestures.
- Graphic Tools API (beta quality).
- More CAPI enhancements including efficient transient display on output-panes.
- Improvements in the IDE including Directory mode and buffers list options in Editor.
- Various other new features including:
- Thread-safe operations for ensuring a hash table entry.
- Efficient access for 8-bit simple vectors.
- FLI type for holding the address of a foreign symbol (suitable for C to Lisp callbacks).
- 64-bit integer FLI types in 32-bit LispWorks.
- Efficient raw 64-bit arithmetic and vector access in 64-bit LispWorks.
- UTF-16 and KOI8-R encodings.
- CLOS optimizations for copying objects.
- On Windows, delivered DLLs can use a private copy of the MSVCRT runtime.
- On Macintosh, the Cocoa IDE's event loop has better error handling and a new defense against deadlocks.
- Bug fixes.
Not all features are supported for every LispWorks product and platform. For details please see the feature table at
LispWorks Professional (64-bit implementation now available) and Enterprise Editions still offer excellent value to commercial users and academic institutions with no runtime license fees. An annual maintenance contract is available.
LispWorks Hobbyist and HobbyistDV Editions now offer an affordable fully functional Common Lisp IDE for non-commercial and non-academic use by individuals.
LispWorks for Android Runtime allows you to deliver (non-GUI) Lisp libraries which you can incorporate into Android apps ("mobile Lisp libraries"). It is available as an add-on to customers with LispWorks 7.0, which you use to develop your code before creating the mobile Lisp library. We do not charge runtime license fees for mobile Lisp libraries generated by LispWorks for Android Runtime.
LispWorks for iOS Runtime allows you to deliver (non-GUI) Lisp libraries which you can incorporate into iOS apps. It is available as an add-on to customers with LispWorks 7.0, which you use to develop your code before creating the mobile Lisp library. We do not charge runtime license fees for mobile Lisp libraries generated by LispWorks for iOS Runtime.
More details of the improvements in this release can be found in the Release Notes at
Pricing, sales, and other information is available in the original lisp-hug article.
05 May 2015 3:31pm GMT
04 May 2015
For anyone interested in acquiring a Symbolics system, here is an email I just received from David K. Schmidt, director of sales at Symbolics:
We are in the process of consolidating two storage facilities into one new one. To reduce the amount that needs to be moved we are liquidating some of the inventory that is not needed for future operations.
Along with auctions for 36xx boards and other spare parts we are going to sell the following 4 MacIvory systems in serial auctions one after the other:
1. MacIvory model 3 with 8 MWords in a Quadra 700 with 20 MBs and a 9GB 10000 rpm disk
2. MacIvory model 3 with 8 MWords in a Mac IIci with 20 MBs, a 4GB 7200 rpm disk and a Radius Accelerated 24-bit graphics card
3. MacIvory model 2 with 2.6 MWords in a Mac IIfx with 20 MBs, a 4GB 7200 rpm disk, a Radius Accelerated 24-bit graphics card and an ethernet card
4. MacIvory model 2 with 1.3 MWords in a Quadra 650 with 64 MBs and a 9GB 10000 disk
I will send you a link to each auction as they are put on line.
If you are interested in any 36xx part that you don't see an auction for, email me for a quote.
You can contact David at firstname.lastname@example.org
04 May 2015 10:21pm GMT
02 May 2015
Sometimes I am pointed that when compared to other programming languages Common Lisp is lacking a lot in the batteries included area. After having had to package about 50 common lisp librairies for debian I can tell you that I politely disagree with that.
And this post is about the tool and process I use to maintain all those librairies.
Quicklisp is good at ensuring a proper distribution of all those libs it supports and actually tests that they all compile and load together, so I've been using it as my upstream for debian packaging purposes. Using Quicklisp here makes my life much simpler as I can grovel through its metadata and automate most of the maintenance of my cl related packages.
It's all automated in the ql-to-deb software which, unsurprisingly, has been written in Common Lisp itself. It's a kind of a Quicklisp client that will fetch Quicklisp current list of releases with version numbers and compare to the list of managed packages for debian in order to then build new version automatically.
The current workflow I'm using begins with using `ql-to-deb` is to `check` for the work to be done today:
$ /vagrant/build/bin/ql-to-deb check Fetching "http://beta.quicklisp.org/dist/quicklisp.txt" Fetching "http://beta.quicklisp.org/dist/quicklisp/2015-04-07/releases.txt" update: cl+ssl cl-csv cl-db3 drakma esrap graph hunchentoot local-time lparallel nibbles qmynd trivial-backtrace upload: hunchentoot
After careful manual review of the automatic decision, let's just `update` all what `check` decided would have to be:
$ /vagrant/build/bin/ql-to-deb update Fetching "http://beta.quicklisp.org/dist/quicklisp.txt" Fetching "http://beta.quicklisp.org/dist/quicklisp/2015-04-07/releases.txt" Updating package cl-plus-ssl from 20140826 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-plus-ssl.log" Fetching "http://beta.quicklisp.org/archive/cl+ssl/2015-03-02/cl+ssl-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/cl+ssl-20150302-git.tgz" md5: 61d9d164d37ab5c91048827dfccd6835 Building package cl-plus-ssl Updating package cl-csv from 20140826 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-csv.log" Fetching "http://beta.quicklisp.org/archive/cl-csv/2015-03-02/cl-csv-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/cl-csv-20150302-git.tgz" md5: 32f6484a899fdc5b690f01c244cd9f55 Building package cl-csv Updating package cl-db3 from 20131111 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-db3.log" Fetching "http://beta.quicklisp.org/archive/cl-db3/2015-03-02/cl-db3-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/cl-db3-20150302-git.tgz" md5: 578896a3f60f474742f240b703f8c5f5 Building package cl-db3 Updating package cl-drakma from 1.3.11 to 1.3.13. see logs in "//tmp/ql-to-deb/logs//cl-drakma.log" Fetching "http://beta.quicklisp.org/archive/drakma/2015-04-07/drakma-1.3.13.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/drakma-1.3.13.tgz" md5: 3b548bce10728c7a058f19444c8477c3 Building package cl-drakma Updating package cl-esrap from 20150113 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-esrap.log" Fetching "http://beta.quicklisp.org/archive/esrap/2015-03-02/esrap-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/esrap-20150302-git.tgz" md5: 8b198d26c27afcd1e9ce320820b0e569 Building package cl-esrap Updating package cl-graph from 20141106 to 20150407. see logs in "//tmp/ql-to-deb/logs//cl-graph.log" Fetching "http://beta.quicklisp.org/archive/graph/2015-04-07/graph-20150407-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/graph-20150407-git.tgz" md5: 3894ef9262c0912378aa3b6e8861de79 Building package cl-graph Updating package hunchentoot from 1.2.29 to 1.2.31. see logs in "//tmp/ql-to-deb/logs//hunchentoot.log" Fetching "http://beta.quicklisp.org/archive/hunchentoot/2015-04-07/hunchentoot-1.2.31.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/hunchentoot-1.2.31.tgz" md5: 973eccfef87e81f1922424cb19884d63 Building package hunchentoot Updating package cl-local-time from 20150113 to 20150407. see logs in "//tmp/ql-to-deb/logs//cl-local-time.log" Fetching "http://beta.quicklisp.org/archive/local-time/2015-04-07/local-time-20150407-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/local-time-20150407-git.tgz" md5: 7be4a31d692f5862014426a53eb1e48e Building package cl-local-time Updating package cl-lparallel from 20141106 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-lparallel.log" Fetching "http://beta.quicklisp.org/archive/lparallel/2015-03-02/lparallel-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/lparallel-20150302-git.tgz" md5: dbda879d0e3abb02a09b326e14fa665d Building package cl-lparallel Updating package cl-nibbles from 20141106 to 20150407. see logs in "//tmp/ql-to-deb/logs//cl-nibbles.log" Fetching "http://beta.quicklisp.org/archive/nibbles/2015-04-07/nibbles-20150407-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/nibbles-20150407-git.tgz" md5: 2ffb26241a1b3f49d48d28e7a61b1ab1 Building package cl-nibbles Updating package cl-qmynd from 20141217 to 20150302. see logs in "//tmp/ql-to-deb/logs//cl-qmynd.log" Fetching "http://beta.quicklisp.org/archive/qmynd/2015-03-02/qmynd-20150302-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/qmynd-20150302-git.tgz" md5: b1cc35f90b0daeb9ba507fd4e1518882 Building package cl-qmynd Updating package cl-trivial-backtrace from 20120909 to 20150407. see logs in "//tmp/ql-to-deb/logs//cl-trivial-backtrace.log" Fetching "http://beta.quicklisp.org/archive/trivial-backtrace/2015-04-07/trivial-backtrace-20150407-git.tgz" Checksum test passed. File: "/tmp/ql-to-deb/archives/trivial-backtrace-20150407-git.tgz" md5: 762b0acf757dc8a2a6812d2f0f2614d9 Building package cl-trivial-backtrace
To be totally honnest, I first had a problem with the parser generator library esrap wherein the
README documentation changed to be a
README.org file, and I had to tell my debian packaging about that. See the 0ef669579cf7c07280eae7fe6f61f1bd664d337e commit to ql-to-deb for details.
What about trying to install those packages locally? That's usually a very good test. Sometimes some dependencies are missing at the
dpkg command line, so another
apt-get install -f is needed:
$ /vagrant/build/bin/ql-to-deb install sudo dpkg -i /tmp/ql-to-deb/cl-plus-ssl_20150302-1_all.deb /tmp/ql-to-deb/cl-csv_20150302-1_all.deb /tmp/ql-to-deb/cl-csv-clsql_20150302-1_all.deb /tmp/ql-to-deb/cl-csv-data-table_20150302-1_all.deb /tmp/ql-to-deb/cl-db3_20150302-1_all.deb /tmp/ql-to-deb/cl-drakma_1.3.13-1_all.deb /tmp/ql-to-deb/cl-esrap_20150302-1_all.deb /tmp/ql-to-deb/cl-graph_20150407-1_all.deb /tmp/ql-to-deb/cl-hunchentoot_1.2.31-1_all.deb /tmp/ql-to-deb/cl-local-time_20150407-1_all.deb /tmp/ql-to-deb/cl-lparallel_20150302-1_all.deb /tmp/ql-to-deb/cl-nibbles_20150407-1_all.deb /tmp/ql-to-deb/cl-qmynd_20150302-1_all.deb /tmp/ql-to-deb/cl-trivial-backtrace_20150407-1_all.deb (Reading database ... 79689 files and directories currently installed.) Preparing to unpack .../cl-plus-ssl_20150302-1_all.deb ... Unpacking cl-plus-ssl (20150302-1) over (20140826-1) ... Selecting previously unselected package cl-csv. Preparing to unpack .../cl-csv_20150302-1_all.deb ... Unpacking cl-csv (20150302-1) ... Selecting previously unselected package cl-csv-clsql. Preparing to unpack .../cl-csv-clsql_20150302-1_all.deb ... Unpacking cl-csv-clsql (20150302-1) ... Selecting previously unselected package cl-csv-data-table. Preparing to unpack .../cl-csv-data-table_20150302-1_all.deb ... Unpacking cl-csv-data-table (20150302-1) ... Selecting previously unselected package cl-db3. Preparing to unpack .../cl-db3_20150302-1_all.deb ... Unpacking cl-db3 (20150302-1) ... Preparing to unpack .../cl-drakma_1.3.13-1_all.deb ... Unpacking cl-drakma (1.3.13-1) over (1.3.11-1) ... Preparing to unpack .../cl-esrap_20150302-1_all.deb ... Unpacking cl-esrap (20150302-1) over (20150113-1) ... Preparing to unpack .../cl-graph_20150407-1_all.deb ... Unpacking cl-graph (20150407-1) over (20141106-1) ... Preparing to unpack .../cl-hunchentoot_1.2.31-1_all.deb ... Unpacking cl-hunchentoot (1.2.31-1) over (1.2.29-1) ... Preparing to unpack .../cl-local-time_20150407-1_all.deb ... Unpacking cl-local-time (20150407-1) over (20150113-1) ... Preparing to unpack .../cl-lparallel_20150302-1_all.deb ... Unpacking cl-lparallel (20150302-1) over (20141106-1) ... Preparing to unpack .../cl-nibbles_20150407-1_all.deb ... Unpacking cl-nibbles (20150407-1) over (20141106-1) ... Preparing to unpack .../cl-qmynd_20150302-1_all.deb ... Unpacking cl-qmynd (20150302-1) over (20141217-1) ... Preparing to unpack .../cl-trivial-backtrace_20150407-1_all.deb ... Unpacking cl-trivial-backtrace (20150407-1) over (20120909-2) ... Setting up cl-plus-ssl (20150302-1) ... dpkg: dependency problems prevent configuration of cl-csv: cl-csv depends on cl-interpol; however: Package cl-interpol is not installed. dpkg: error processing package cl-csv (--install): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of cl-csv-clsql: cl-csv-clsql depends on cl-csv; however: Package cl-csv is not configured yet. dpkg: error processing package cl-csv-clsql (--install): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of cl-csv-data-table: cl-csv-data-table depends on cl-csv; however: Package cl-csv is not configured yet. dpkg: error processing package cl-csv-data-table (--install): dependency problems - leaving unconfigured Setting up cl-db3 (20150302-1) ... Setting up cl-drakma (1.3.13-1) ... Setting up cl-esrap (20150302-1) ... Setting up cl-graph (20150407-1) ... Setting up cl-local-time (20150407-1) ... Setting up cl-lparallel (20150302-1) ... Setting up cl-nibbles (20150407-1) ... Setting up cl-qmynd (20150302-1) ... Setting up cl-trivial-backtrace (20150407-1) ... Setting up cl-hunchentoot (1.2.31-1) ... Errors were encountered while processing: cl-csv cl-csv-clsql cl-csv-data-table
Let's make sure that our sid users will be happy with the update here:
$ sudo apt-get install -f Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies... Done The following packages were automatically installed and are no longer required: g++-4.7 git git-man html2text libaugeas-ruby1.8 libbind9-80 libclass-isa-perl libcurl3-gnutls libdns88 libdrm-nouveau1a libegl1-mesa-drivers libffi5 libgraphite3 libgssglue1 libisc84 libisccc80 libisccfg82 liblcms1 liblwres80 libmpc2 libopenjpeg2 libopenvg1-mesa libpoppler19 librtmp0 libswitch-perl libtiff4 libwayland-egl1-mesa luatex openssh-blacklist openssh-blacklist-extra python-chardet python-debian python-magic python-pkg-resources python-six ttf-dejavu-core ttf-marvosym Use 'apt-get autoremove' to remove them. The following extra packages will be installed: cl-interpol The following NEW packages will be installed: cl-interpol 0 upgraded, 1 newly installed, 0 to remove and 51 not upgraded. 3 not fully installed or removed. Need to get 20.7 kB of archives. After this operation, 135 kB of additional disk space will be used. Do you want to continue? [Y/n] Get:1 http://ftp.fr.debian.org/debian/ sid/main cl-interpol all 0.2.1-2 [20.7 kB] Fetched 20.7 kB in 0s (84.5 kB/s) debconf: unable to initialize frontend: Dialog debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) debconf: falling back to frontend: Readline Selecting previously unselected package cl-interpol. (Reading database ... 79725 files and directories currently installed.) Preparing to unpack .../cl-interpol_0.2.1-2_all.deb ... Unpacking cl-interpol (0.2.1-2) ... Setting up cl-interpol (0.2.1-2) ... Setting up cl-csv (20150302-1) ... Setting up cl-csv-clsql (20150302-1) ... Setting up cl-csv-data-table (20150302-1) ...
All looks fine, time to sign those packages. There's a trick here, where you want to be sure you're using a GnuPG setup that allows you to enter your passphrase only once, see ql-to-deb vm setup for details, and the usual documentations about all that if you're interested into the details.
$ /vagrant/build/bin/ql-to-deb sign signfile /tmp/ql-to-deb/cl-plus-ssl_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-plus-ssl_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-csv_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-csv_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-db3_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-db3_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-drakma_1.3.13-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-drakma_1.3.13-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-esrap_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-esrap_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-graph_20150407-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-graph_20150407-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/hunchentoot_1.2.31-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/hunchentoot_1.2.31-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-local-time_20150407-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-local-time_20150407-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-lparallel_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-lparallel_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-nibbles_20150407-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-nibbles_20150407-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-qmynd_20150302-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-qmynd_20150302-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files signfile /tmp/ql-to-deb/cl-trivial-backtrace_20150407-1.dsc 60B1CB4E signfile /tmp/ql-to-deb/cl-trivial-backtrace_20150407-1_amd64.changes 60B1CB4E Successfully signed dsc and changes files
Ok, with all tested and signed, it's time we upload our packages on debian servers for our dear debian users to be able to use newer and better versions of their beloved Common Lisp librairies:
$ /vagrant/build/bin/ql-to-deb upload Trying to upload package to ftp-master (ftp.upload.debian.org) Checking signature on .changes gpg: Signature made Sat 02 May 2015 05:06:48 PM MSK using RSA key ID 60B1CB4E gpg: Good signature from "Dimitri Fontaine <email@example.com>" Good signature on /tmp/ql-to-deb/cl-plus-ssl_20150302-1_amd64.changes. Checking signature on .dsc gpg: Signature made Sat 02 May 2015 05:06:46 PM MSK using RSA key ID 60B1CB4E gpg: Good signature from "Dimitri Fontaine <firstname.lastname@example.org>" Good signature on /tmp/ql-to-deb/cl-plus-ssl_20150302-1.dsc. Uploading to ftp-master (via ftp to ftp.upload.debian.org): Uploading cl-plus-ssl_20150302-1.dsc: done. Uploading cl-plus-ssl_20150302.orig.tar.gz: done. Uploading cl-plus-ssl_20150302-1.debian.tar.xz: done. Uploading cl-plus-ssl_20150302-1_all.deb: done. Uploading cl-plus-ssl_20150302-1_amd64.changes: done. Successfully uploaded packages.
Of course the same text or abouts is then repeated for all the other packages.
Enjoy using Common Lisp in debian!
Oh and remember, the only reason I've written ql-to-deb and signed myself up to maintain those upteens Common Lisp librairies as debian package is to be able to properly package pgloader in debian, as you can see at https://packages.debian.org/sid/pgloader and in particular in the Other Packages Related to pgloader section of the debian source package for pgloader at https://packages.debian.org/source/sid/pgloader.
That level of effort is done to ensure that we respect the Debian Social Contract wherein debian ensures its users that it's possible to rebuild anything from sources as found in the debian repositories.
02 May 2015 2:06pm GMT