unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Holger Peters <holger.peters@posteo.de>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 42771@debbugs.gnu.org
Subject: bug#42771: [PATCH] Disable tests for smalltalk and add candidate releases
Date: Sun, 03 Jan 2021 16:34:10 +0100	[thread overview]
Message-ID: <93bb20f770baa66f25b1f0839794b5d4faac96c6.camel@posteo.de> (raw)
In-Reply-To: <87mtys72bw.fsf@gnu.org>


[-- Attachment #1.1: Type: text/plain, Size: 7633 bytes --]

Hi,

I am not sure I will have the time to solve the remaining issues,
but I would like to share some intermediate results with you.
Find attached the smalltalk file I have in my personal channel,
it contains 2 package definitions.

smalltalk-alt: corresponds to the `normal' smalltalk package with
    various fixes over the one currently in gui (a) added
    dependencies, (b) uses gcc-5 for building because I found a
    reference in the smalltalk mailing list about newer GCC
    releases optimizing some statements away that are crucial for
    GNU Smalltalk to build.

    As a result the test failures for intmath and others that are
    present in the current `smalltalk' recipe in guix are
    resolved in this variant.

    Note that there are still failing tests for this release,
    namely all the ANSI compliancy tests. I do feel like since
    each and every one of these tests fails, it might be a
    build-system-setup/autotest related failure.

`smalltalk-next' is a derived clean build from the VCS. I dropped
    the pre-release build as you suggested in (2).


As for going forward I am not quite sure whether I'll find time
to do more debugging.  If I were a heavy GNU Smalltalk user I'd
probably use `smalltalk-next' anyway as it seems to build
flawlessly.


-- Failing Tests for `smalltalk-alt'

ANSI compliancy tests.

 47: ArrayANSITest                                   FAILED
(testsuite.at:83)
 48: ArrayFactoryANSITest                            FAILED
(testsuite.at:84)
 49: BagANSITest                                     FAILED
(testsuite.at:85)
 50: BagFactoryANSITest                              FAILED
(testsuite.at:86)
 51: BooleanANSITest                                 FAILED
(testsuite.at:87)
 52: ByteArrayANSITest                               FAILED
(testsuite.at:88)
 53: ByteArrayFactoryANSITest                        FAILED
(testsuite.at:89)
 54: CharacterANSITest                               FAILED
(testsuite.at:90)
 55: CharacterFactoryANSITest                        FAILED
(testsuite.at:91)
 56: DateAndTimeANSITest                             FAILED
(testsuite.at:92)
 57: DateAndTimeFactoryANSITest                      FAILED
(testsuite.at:93)
 58: DictionaryANSITest                              FAILED
(testsuite.at:94)
 59: DictionaryFactoryANSITest                       FAILED
(testsuite.at:95)
 60: DurationANSITest                                FAILED
(testsuite.at:96)
 61: DurationFactoryANSITest                         FAILED
(testsuite.at:97)
 62: DyadicValuableANSITest                          FAILED
(testsuite.at:98)
 63: ErrorANSITest                                   FAILED
(testsuite.at:99)
 64: ErrorClassANSITest                              FAILED
(testsuite.at:100)
 65: ExceptionANSITest                               FAILED
(testsuite.at:101)
 66: ExceptionClassANSITest                          FAILED
(testsuite.at:102)
 67: ExceptionSetANSITest                            FAILED
(testsuite.at:103)
 68: FailedMessageANSITest                           FAILED
(testsuite.at:104)
 69: FileStreamFactoryANSITest                       FAILED
(testsuite.at:105)
 70: FloatANSITest                                   FAILED
(testsuite.at:106)
 71: FloatCharacterizationANSITest                   FAILED
(testsuite.at:107)
 72: FractionANSITest                                FAILED
(testsuite.at:108)
 73: FractionFactoryANSITest                         FAILED
(testsuite.at:109)
 74: IdentityDictionaryANSITest                      FAILED
(testsuite.at:110)
 75: IdentityDictionaryFactoryANSITest               FAILED
(testsuite.at:111)
 76: IntegerANSITest                                 FAILED
(testsuite.at:112)
 77: IntervalANSITest                                FAILED
(testsuite.at:113)
 78: IntervalFactoryANSITest                         FAILED
(testsuite.at:114)
 79: MessageNotUnderstoodANSITest                    FAILED
(testsuite.at:115)
 80: MessageNotUnderstoodSelectorANSITest            FAILED
(testsuite.at:116)
 81: MonadicBlockANSITest                            FAILED
(testsuite.at:117)
 82: NilANSITest                                     FAILED
(testsuite.at:118)
 83: NiladicBlockANSITest                            FAILED
(testsuite.at:119)
 84: NotificationANSITest                            FAILED
(testsuite.at:120)
 85: NotificationClassANSITest                       FAILED
(testsuite.at:121)
 86: ObjectANSITest                                  FAILED
(testsuite.at:122)
 87: ObjectClassANSITest                             FAILED
(testsuite.at:123)
 88: OrderedCollectionANSITest                       FAILED
(testsuite.at:124)
 89: OrderedCollectionFactoryANSITest                FAILED
(testsuite.at:125)
 90: ReadFileStreamANSITest                          FAILED
(testsuite.at:126)
 91: ReadStreamANSITest                              FAILED
(testsuite.at:127)
 92: ReadStreamFactoryANSITest                       FAILED
(testsuite.at:128)
 93: ReadWriteStreamANSITest                         FAILED
(testsuite.at:129)
 94: ReadWriteStreamFactoryANSITest                  FAILED
(testsuite.at:130)
 95: ScaledDecimalANSITest                           FAILED
(testsuite.at:131)
 96: SelectorANSITest                                FAILED
(testsuite.at:132)
 97: SetANSITest                                     FAILED
(testsuite.at:133)
 98: SetFactoryANSITest                              FAILED
(testsuite.at:134)
 99: SortedCollectionANSITest                        FAILED
(testsuite.at:135)
100: SortedCollectionFactoryANSITest                 FAILED
(testsuite.at:136)
101: StringANSITest                                  FAILED
(testsuite.at:137)
102: StringFactoryANSITest                           FAILED
(testsuite.at:138)
103: SymbolANSITest                                  FAILED
(testsuite.at:139)
104: TranscriptANSITest                              FAILED
(testsuite.at:140)
105: WarningANSITest                                 FAILED
(testsuite.at:141)
106: WarningClassANSITest                            FAILED
(testsuite.at:142)
107: WriteFileStreamANSITest                         FAILED
(testsuite.at:143)
108: WriteStreamANSITest                             FAILED
(testsuite.at:144)
109: WriteStreamFactoryANSITest                      FAILED
(testsuite.at:145)
110: ZeroDivideANSITest                              FAILED
(testsuite.at:146)
111: ZeroDivideFactoryANSITest                       FAILED
(testsuite.at:147)



On Sat, 2020-12-05 at 15:30 +0100, Ludovic Courtès wrote:
> Hi Holger,
> 
> Holger Peters <holger.peters@posteo.de> skribis:
> 
> > * gnu/packages/smalltalk.scm (smalltalk): disable tests
> > (smalltalk-next): New variable.
> > (smalltalk-next-from-vcs): New variable.
> 
> I have mostly two comments, as discussed on IRC (restating them here
> for
> those following along):
> 
>   1. Instead of disabling tests wholesale, what we usually do is (1)
>      investigate why the test is failing (I think it’s a single test
>      failure here), (2) try to determine whether it’s serious or not,
>      (3) see if we can work around it with reasonable effort, and if
>      not, skip just this test.
> 
>   2. I think we should just have ‘smalltalk’ (latest release) and
>      ‘smalltalk-next’ (VCS snapshot).  Having an extra package for 
> the release candidate is not really useful IMO, and not something we
>      generally do.



[-- Attachment #1.2: smalltalk.scm --]
[-- Type: text/x-scheme, Size: 3674 bytes --]


(define-module (yas packages smalltalk)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix git-download)
  #:use-module (guix build-system cmake)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages)
  #:use-module (gnu packages audio)
  #:use-module (gnu packages autotools)
  #:use-module (gnu packages base)
  #:use-module (gnu packages bison)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages emacs)
  #:use-module (gnu packages flex)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages gcc)
  #:use-module (gnu packages gettext)
  #:use-module (gnu packages gl)
  #:use-module (gnu packages glib)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages libffi)
  #:use-module (gnu packages libsigsegv)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages ncurses)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages pulseaudio)
  #:use-module (gnu packages texinfo)
  #:use-module (gnu packages tls)
  #:use-module (gnu packages xorg))



(define-public smalltalk-alt
  (package
    (name "smalltalk-alt")
    (version "3.2.5")
    (source
     (origin
      (method url-fetch)
      (uri (string-append "mirror://gnu/smalltalk/smalltalk-"
                          version ".tar.xz"))
      (sha256
       (base32
        "1k2ssrapfzhngc7bg1zrnd9n2vyxp9c9m70byvsma6wapbvib6l1"))))

    (build-system gnu-build-system)
    (native-inputs
     `(("gcc@5" ,gcc-5)
       ("libtool" ,libtool)
       ("perl" ,perl)
       ("gettext" ,gettext-minimal)
       ("libffi" ,libffi)
       ("libltdl" ,libltdl)
       ("libsigsegv" ,libsigsegv)
       ("pkg-config" ,pkg-config)))
    (inputs
     `(("emacs" ,emacs)
       ("glib" ,glib)
       ("gtk+" ,gtk+-2)
       ("gnutls" ,gnutls)
       ("ncurses" ,ncurses)
       ("zip" ,zip)
       ("zlib" ,zlib)))
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         (add-before 'configure 'fix-libc
           (lambda _
             (let ((libc (assoc-ref %build-inputs "libc")))
               (substitute* "libc.la.in"
                 (("@LIBC_SO_NAME@") "libc.so")
                 (("@LIBC_SO_DIR@")  (string-append libc "/lib"))))
             #t)))))
    (home-page "http://smalltalk.gnu.org/")
    (synopsis "Smalltalk environment")
    (description
     "GNU Smalltalk is a free implementation of the Smalltalk language.  It
implements the ANSI standard for the language and also includes extra classes
such as ones for networking and GUI programming.")
    (license license:gpl2+)))

(define-public smalltalk-next
  (let ((revision "18")
        (commit "dfe4b5660037c4d178853ee00458a75e51a88563")
        (git-url "git://git.sv.gnu.org/smalltalk.git"))
    (package (inherit smalltalk-alt)
      (name "smalltalk-next")
      (version (git-version "3.2.91" revision commit))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                      (url git-url)
                      (commit commit)))
                (file-name (git-file-name name version))
                (sha256 (base32 "11dm1qricq7fwn1gfyn9ik7f1axw7l3ivipsh11dywa42pmb5j2r"))))
      (native-inputs
       `(("autoconf" ,autoconf)
         ("automake" ,automake)
         ("libtool" ,libtool)
         ("flex" ,flex)
         ("texinfo" ,texinfo)
         ("perl" ,perl)
         ("gettext" ,gettext-minimal)
         ("libffi" ,libffi)
         ("libltdl" ,libltdl)
         ("bison" ,bison)
         ("libsigsegv" ,libsigsegv)
         ("pkg-config" ,pkg-config))))))

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 695 bytes --]

      parent reply	other threads:[~2021-01-03 15:35 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-08 18:53 bug#42771: smalltalk fails to build Michael Rohleder
2020-11-28 22:09 ` bug#42771: [PATCH] Disable tests for smalltalk and add candidate releases Holger Peters
2020-12-04 11:34   ` Holger Peters
2020-12-04 12:06     ` Holger Peters
2020-11-29  8:43 ` Holger Peters
2020-12-05 14:30   ` Ludovic Courtès
2020-12-28 11:42     ` bug#42771: smalltalk fails to build Miguel Ángel Arruga Vivas
2021-01-04  9:28       ` Ludovic Courtès
2021-01-05 12:09         ` Miguel Ángel Arruga Vivas
2021-01-03 15:34     ` Holger Peters [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=93bb20f770baa66f25b1f0839794b5d4faac96c6.camel@posteo.de \
    --to=holger.peters@posteo.de \
    --cc=42771@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).