tamurashingo / reddit1.0

Refactored old reddit source code
MIT License
59 stars 2 forks source link

When migrate db, error shows "UFFI does not match version 2.0" #9

Open imnisen opened 6 years ago

imnisen commented 6 years ago

Hi, when I (ql:quickload :reddit-db) to make first migration, a error as following happens:

Component CLSQL-UFFI-SYSTEM::UFFI does not match version 2.0,
required by #<SYSTEM "clsql-uffi">
   [Condition of type ASDF/FIND-COMPONENT:MISSING-DEPENDENCY-OF-VERSION]

Restarts:
 0: [ABORT] Give up on "reddit-db"
 1: [RETRY] Retry SLIME REPL evaluation request.
 2: [*ABORT] Return to SLIME's top level.
 3: [ABORT] abort thread (#<THREAD "repl-thread" RUNNING {1002B81B43}>)

Backtrace:
  0: (QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES "reddit-db" :PROMPT NIL)
  1: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION (T T)) #<unused argument> #<CLOSURE (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1002DD2F4B}>) [fast-method]
  2: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION :AROUND (QL-IMPL:SBCL T)) #<QL-IMPL:SBCL {1001AA7C63}> #<CLOSURE (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1002DD2F4B}>) [fast-me..
  3: ((:METHOD QUICKLISP-CLIENT:QUICKLOAD (T)) (:REDDIT-DB) :PROMPT NIL :SILENT NIL :VERBOSE NIL) [fast-method]
  4: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<CLOSURE (LAMBDA NIL :IN QUICKLISP-CLIENT:QUICKLOAD) {1002DC887B}>)
  5: (SB-INT:SIMPLE-EVAL-IN-LEXENV (QUICKLISP-CLIENT:QUICKLOAD :REDDIT-DB) #<NULL-LEXENV>)
  6: (EVAL (QUICKLISP-CLIENT:QUICKLOAD :REDDIT-DB))
  7: (SWANK::EVAL-REGION "(ql:quickload :reddit-db) ..)
  8: ((LAMBDA NIL :IN SWANK-REPL::REPL-EVAL))
  9: (SWANK-REPL::TRACK-PACKAGE #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::REPL-EVAL) {1002B8999B}>)
 10: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<CLOSURE (LAMBDA NIL :IN SWANK-REPL::REPL-EVAL) {1002B8993B}>)

This error shows "UFFI does not match version 2.0", but I don't know how to upgrade it or somewhat. I am unfamiliar with uffi things and forgive me if it is a silly question.

I use sbcl 1.3.20.

Thank you!

imnisen commented 6 years ago

I download the uffi package from http://uffi.kpe.io/download.html and put it in quicklisp/local-projects, and load the correct uffi.

I don't know is this the right solution.

Before this, quicklisp wants to load uffi from cffi, which cause the error, as following defines:

;; from cffi_0.19.0/uffi-compat/uffi-compat.lisp
(defpackage #:cffi-uffi-compat
  (:nicknames #:uffi) ;; is this a good idea?
  (:use #:cl)
  (:export
  ...))