[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#33696: marked as done (biomode does not bytecompile)

Your message dated Fri, 11 Apr 2003 16:47:56 -0400
with message-id <E1945RE-0004oA-00@auric.debian.org>
and subject line Bug#33696: fixed in biomode 1.002-7
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

Received: (at submit) by bugs.debian.org; 22 Feb 1999 09:03:54 +0000
Received: (qmail 7136 invoked from network); 22 Feb 1999 09:03:53 -0000
Received: from nefertiti.pasteur.fr (
  by master.debian.org with SMTP; 22 Feb 1999 09:03:53 -0000
Received: from ezili.sis.pasteur.fr (root@ezili.sis.pasteur.fr [])
	by nefertiti.pasteur.fr (8.9.1/8.9.1) with ESMTP id KAA03826
	for <submit@bugs.debian.org>; Mon, 22 Feb 1999 10:03:46 +0100 (MET)
Received: from ezili.sis.pasteur.fr (bortz@localhost [])
	by ezili.sis.pasteur.fr (8.9.3/8.9.3/Debian/GNU) with ESMTP id KAA16179
	for <submit@bugs.debian.org>; Mon, 22 Feb 1999 10:03:49 +0100
Message-Id: <199902220903.KAA16179@ezili.sis.pasteur.fr>
X-Mailer: exmh version 2.0.2 2/24/98 (debian) 
From: Stephane Bortzmeyer <bortzmeyer@pasteur.fr>
To: submit@bugs.debian.org
Subject: biomode does not bytecompile
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Date: Mon, 22 Feb 1999 10:03:48 +0100
Sender: bortz@pasteur.fr

Package: biomode
Version: 1.002-1

The bug is upstream and has been forwarded. The following patch (untested) may 
help. Thanks to Frozen Rose for it.

- ------- Forwarded Message

Date: Wed, 17 Feb 1999 02:51:26 +0000
From: Frozen Rose <steve@arise.demon.co.uk>
To: Stephane Bortzmeyer <bortzmeyer@pasteur.fr>
Subject: Problem bytecompiling an Emacs add-on package

- - --2oS5YaxWCcQjTEyO
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit

In article <199902161031.LAA16092@ezili.sis.pasteur.fr>,
Stephane Bortzmeyer <bortzmeyer@pasteur.fr> wrote:

>I'm struggling with my first Emacs package, biomode 
>Everything works fine if I do not try to bytecompile.
>Now, I add a emacsen-install script, which is installed by dh_installemacsen. 
>When I 'dpkg -i' the resulting package, I see the attempt to bytecompile, a 
>ton of errors (see the attached file) and the mode no longer works in emacs19 
>(but it works fine on xemacs20):
>File mode specification error: (void-variable bio-gencode-table)
>Is it possible that a '.el' file works only when not compiled?

It bombs on xemacs21 as well, although you'd be unlikely to discover
this... although this seems to be due to make-hash-table being

In general, to get read of the "free variable" errors, defvar a
variable before referring to it.

For example, bio-current-seq is not defvar'ed, it's just referenced
several times and then setq'd and referenced at toplevel for some

Hmmm.... lots of temporary variables used with using "let" to declare
them... tut tut! :} Especially using "buffer-name", that's evil...

Once you cut down on the free variable warnings, you'll find useful
ones- e.g. the interactive spec for bio-search-forward is in the wrong 
place (?)

emacs19 doesn't allow 3 args to delete-region, apparently. Depending
on them will result in "FSF Emacs lossage", byte-compiled or no.


While compiling bio-embl-entry-extract in file /home/steve/bio-mode.el:
  ** variable translation-name bound but not referenced

Yup, translation-name is in the "let", but it doesn't appear to be

I think in the invocation of make-hash-table, you mean
"make-hash-table :size 64". Although this introduces a "reference to
free variable :size" error. Grrr....

puthash: yarg. Maybe use cl-puthash? Some with gethash. Nope, this is
severely crudulous.

Well, I've hacked your elisp up so that it will compile and load into
emacs19, xemacs20 and xemacs21. I'm not checking that at works at
2:47am, though.

I still get these errors with emacs19:

While compiling toplevel forms in file /home/steve/bio-mode.el:
  ** reference to free variable :size
  ** delete-region called with 3 args, but requires 2
While compiling bio-antiparallel-region:
  ** delete-region called with 3 args, but requires 2
While compiling bio-complement-region:
  ** delete-region called with 3 args, but requires 2
While compiling the end of the data:
  ** The following functions are not known to be defined: 
    with-output-to-string, make-hash-table, replace-in-string,
    exec-to-string, isearch-make-extent, count, loop, return,
    char-to-int, substitute, cl-puthash, gethash, endp, popup-menu,
    add-submenu, add-menu-button

It seems to me that the stuff to (require 'cl) on FSF Emacs should be
surrounded with (eval-and-compile ...) but this breaks compilation for 
some reason (don't ask me, I'm an XEmacs person...)

This is now a long and boring mail more about Emacs than Debian, so
I'll take it off debian-mentors...

- - -- 
Steve Haslam            Validation Engineer, ARM Limited, Cambridge, England
Life's been like dragging feet through sand
and never finding the promised land                            [queensrÿche]

- - --2oS5YaxWCcQjTEyO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="bio-mode.el.patch"

- - --- bio-mode.el.orig	Wed Feb 17 02:22:09 1999
+++ bio-mode.el	Wed Feb 17 02:48:09 1999
@@ -76,7 +76,11 @@
 ;;{{{ Compatibility functions
 ;; Needs some Common Lisp functions
- - -;;(require 'cl)
+;; sort out FSF Emacs needing 'cl package
+(or (fboundp 'make-hash-table)
+    (require 'cl))
 ;; Check if replace-in-string is defined 
 (cond ((null (fboundp 'replace-in-string))
        (defun replace-in-string (str regexp newtext &optional literal)
@@ -135,17 +139,6 @@
- - -;; check makehash-table, make alias if necessary (which needs Common Lisp)
- - -(cond ((null (fboundp 'make-hash-table))
- - -       (require 'cl)))
- - -;(cond ((null (fboundp 'makehash-table))
- - -;       (defalias 'makehash-table 'make-hash-table)))
- - -;(fboundp 'makehash-table)
- - -
- - -(cond ((null (fboundp 'puthash))
- - -       (defun puthash (key value table)
- - -	 (setf (gethash key table) value))))
- - -
 ;; processes
 (cond ((null (fboundp 'exec-to-string))
        (defmacro with-output-to-string (&rest forms)
@@ -193,7 +186,26 @@
 ;; the regex for grabbing an entry from an EMBL file
 (defconst bio-embl-entry "^FT   [Crt][DR].*\\(\nFT     .*\\)+")
 ;; hashtable for genetic code
- - -(setf bio-gencode-table (make-hash-table 64))
+(defvar bio-gencode-table (make-hash-table :size 64))
+(defvar bio-current-seq)
+(defvar gene-direction)
+(defvar gene-stop)
+(defvar gene-start)
+(defvar gene-length)
+(defvar gene-type)
+(defvar translation-name-tmp)
+(defvar buffer-name) ; scary!
+(defvar bio-seq-file)
+(defvar seq) ; scary!
+(defvar bio-aa-seq) ; scary!
+(defvar entry-counter)
+(defvar embl-current-entry)
+(defvar bio-prompt)
+(defvar bio-temp-file)
+(defvar bio-command)
+(defvar bio-blastp-res)
+(defvar bio-acgt)
 ;;{{{ Functions
@@ -411,8 +423,8 @@
 (defun bio-embl-entry-extract (entry out)
   ;; Extracts the translation part
- - -  (let* (
- - -	 (translation-name "no_translation")
+  (let (
+	 ;(translation-name "no_translation") unused?
 	 (gene-name "no_gene")
 	 (gene-real-name "xxx")
 	 (note-name "no_note")
@@ -566,8 +578,8 @@
 newline, tab, space, integers.."
   ;; uses function from the isearch package 
   ;; for highlighing
- - -  (isearch-dehighlight t)
   (interactive "p\nsSearch for oligo: ")
+  (isearch-dehighlight t)
   (setq oligo (bio-change-oligo oligo))
   (re-search-forward oligo nil t)
   (isearch-make-extent (match-beginning 0) (match-end 0))
@@ -615,8 +627,8 @@
      (setq gc3 (+ gc3 (bio-is-nt-gc (char-to-int (elt seq (+ counter 2))))))
      (setq counter (+ counter 3))
- - -(setq bio-current-seq "ATGGCAAATTCTTTCGTAAAAAGATGGT")
- - -(bio-count-gc bio-current-seq)
+;(bio-count-gc bio-current-seq)
 (defun bio-ATrich-over-GCrich-codons (seq)
@@ -783,7 +795,7 @@
 (defun bio-puthash (key val table)
   (let ((sym (if (stringp key) (intern key) key)))
- - -    (puthash sym val table)))
+    (cl-puthash sym val table)))
 (defun bio-gethash (key table &optional default)
   (let ((sym (if (stringp key) (intern-soft key) key)))

- - --2oS5YaxWCcQjTEyO--

- ------- End of Forwarded Message

Received: (at 33696-close) by bugs.debian.org; 11 Apr 2003 20:55:17 +0000
>From katie@auric.debian.org Fri Apr 11 15:55:16 2003
Return-path: <katie@auric.debian.org>
Received: from auric.debian.org [] (mail)
	by master.debian.org with esmtp (Exim 3.12 1 (Debian))
	id 1945YK-0002C2-00; Fri, 11 Apr 2003 15:55:16 -0500
Received: from katie by auric.debian.org with local (Exim 3.35 1 (Debian))
	id 1945RE-0004oA-00; Fri, 11 Apr 2003 16:47:56 -0400
From: Mario Lang <mlang@debian.org>
To: 33696-close@bugs.debian.org
X-Katie: $Revision: 1.33 $
Subject: Bug#33696: fixed in biomode 1.002-7
Message-Id: <E1945RE-0004oA-00@auric.debian.org>
Sender: Archive Administrator <katie@auric.debian.org>
Date: Fri, 11 Apr 2003 16:47:56 -0400
Delivered-To: 33696-close@bugs.debian.org

We believe that the bug you reported is fixed in the latest version of
biomode, which is due to be installed in the Debian FTP archive:

  to pool/main/b/biomode/biomode_1.002-7.diff.gz
  to pool/main/b/biomode/biomode_1.002-7.dsc
  to pool/main/b/biomode/biomode_1.002-7_all.deb

A summary of the changes between this version and the previous one is

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 33696@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
Mario Lang <mlang@debian.org> (supplier of updated biomode package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)

Hash: SHA1

Format: 1.7
Date: Fri, 11 Apr 2003 22:07:19 +0200
Source: biomode
Binary: biomode
Architecture: source all
Version: 1.002-7
Distribution: unstable
Urgency: low
Maintainer: Mario Lang <mlang@debian.org>
Changed-By: Mario Lang <mlang@debian.org>
 biomode    - [Biology] An Emacs mode to edit genetic data
Closes: 33696 100215 145589 185549
 biomode (1.002-7) unstable; urgency=low
   * Package adopted (Closes: Bug#100215)
   * Some rules cleanups, move to DH_COMPAT=4
   * Depend on debhelper >> 4 and bump Standards-Version to 3.5.9
   * bio-mode.el:
     - Change call to make-hash-table to use keywords
       (Closes: Bug#185549, Bug#145589)
     - Remove third arg from calls to delete-region
     - Use shell-command-to-string instead of exec-to-string
     - Fix several other byte-compile errors and reactivate dh_installemacsen
       again (Closes: Bug#33696)
 48fa97dd29cf5d092f2a858b1b5cccda 561 science optional biomode_1.002-7.dsc
 b1081aa198ea4ffe936c79d738973f45 4720 science optional biomode_1.002-7.diff.gz
 200bc6ad4e828f1a47053a26767f3569 12686 science optional biomode_1.002-7_all.deb

Version: GnuPG v1.2.1 (GNU/Linux)


Reply to: