#710375 squeak-vm: uses removed pcre_info

Package:
squeak-vm
Source:
squeak-vm
Description:
virtual machine for Smalltalk
Submitter:
Julian Taylor
Date:
2021-11-10 00:30:02 UTC
Severity:
important
#710375#5
Date:
2013-05-30 10:48:58 UTC
From:
To:
squeak-vm uses the system pcre library which does not provide the
prce_info anymore:
       int pcre_fullinfo(const pcre *code, const pcre_extra *extra,
            int what, void *where);

       The  pcre_fullinfo() function returns information about a
compiled pat-
       tern. It replaces the pcre_info() function, which was removed
from  the
       library at version 8.30, after more than 10 years of obsolescence.

it is used in:
unix/src/vm/intplugins/RePlugin/RePlugin.c:354
interpreterProxy->pushInteger(pcre_info((pcre *)pcrePtr, NULL, NULL));


note this causes a build failure in ubuntu:
https://launchpadlibrarian.net/141082673/buildlog_ubuntu-saucy-amd64.squeak-vm_1%3A4.10.2.2614-1ubuntu1_FAILEDTOBUILD.txt.gz

#710375#10
Date:
2013-08-11 20:16:44 UTC
From:
To:
tags 710375 + patch
thanks

attached patch should fix it
there is another mention in RePlugin.cs but I have no idea what that is
(smalltalk I guess?) so its still there

#710375#17
Date:
2013-08-15 10:38:09 UTC
From:
To:
Forwarding a message from the upstream developers list below. The Debian patch appears to only make the build succeed, but does not restore the proper functioning. Upstream bug report at
http://bugs.squeak.org/view.php?id=7785

- Bert -

Begin forwarded message:

#710375#22
Date:
2021-11-09 12:11:18 UTC
From:
To:
Quoting Bert Freudenberg (2013-08-15 12:38:09)

Thanks, Bert (and sorry for the crazy late reply!).

I have tried many times over the years to wrap my head around the
alien-to-me build routines of Squak and Squak VMs.  I have not given up
yet, but evidently not making progress on it yet :-/


 - Jonas

#710375#31
Date:
2021-11-09 14:27:21 UTC
From:
To:
Jonas,

I think you can disregard this patch as it is quite old and would have been
incorporated into the upstream repo long ago.  Dave Lewis, the current
upstream maintainer of the squeak-vm code, recently (in the last few
months) incorporated most/all of the patches from the Debian squeak-vm
package into his repo.  So if we use that directly it would eliminate the
need for most, if not all, of the current package patches and allow you to
just use the upstream code directly as we are very interested in trying to
keep that repo in sync with any needed Debian changes where possible.  It
should at least be available via svn and I've asked him if there's a http
download link as well. (I hope to hear back from him today)

Also, per a previous email you sent you can always feel free to cc: me at
this address on-list as I am very interested in any discussions re:
squeak-vm and the upcoming opensmalltalk-vm packaging.

Thanks,
Phil

#710375#36
Date:
2021-11-09 14:37:10 UTC
From:
To:
Jonas,

Of course, immediately after I hit send I heard back from Dave ;-)  Here's
what he said:

All sources are maintained in Subversion at
http://squeakvm.org/svn/squeak/trunk/

The command to check out the up-do-date sources, including all changes that
I have made, is:

$ svn co http://squeakvm.org/svn/squeak/trunk

You can also browse the sources on line at
http://squeakvm.org/cgi-bin/viewvc.cgi/squeak/trunk/

I also keep a "how to" page with instructions at
https://wiki.squeak.org/squeak/6354

<end of Dave's message>

If you have any questions or issues, please let me know and I'll try to get
you answers / resolutions.

Thanks,
Phil

#710375#41
Date:
2021-11-09 15:11:19 UTC
From:
To:
Hi Phil,

Quoting Phil B (2021-11-09 15:27:21)

Agreed.  Sorry that I didn't comment on it, but disregarding the patch
was what the second of those runes in my previous post was about. :-)

Which repo is that, and where would I have had a change to learn about
it (apart from picking your brain)?

The more-current-than-tracked-in-Debian source that I am aware of is the
Cog branh of http://github.com/OpenSmalltalk/opensmalltalk-vm.git/ - is
that what you are referring to?

I'd be quite happy to track something actually maintained upstream.

If you are generally interested in following activities with the
squeak-vm package then instead of cc'ing you it would be far more
convenient that you subsribe to the package at the "Subscribe" button in
top right corner of https://tracker.debian.org/pkg/squeak-vm

Or if you would be interested in getting your hands dirty with packaging
work, then create a Salsa account - see
https://wiki.debian.org/Salsa/Doc#Users - and then request membership of
the Salsa Sugar team at
https://salsa.debian.org/groups/pkg-sugar-team/-/group_members - and
then when you are involved, you can add yourself as "Uploader" (even if
technically you are not actually permitted to _upload_ packages - the
meaning of that field is nowadays more like "Contributor") and you will
then get notified about activities through that indicator.


Kind regards,

 - Jonas

#710375#46
Date:
2021-11-09 15:22:45 UTC
From:
To:
Quoting Phil B (2021-11-09 15:37:10)

I looked at the above ealier today, but was discouraged by the lack of
tags since 12 years.

Would be really helpful if from time to time the code was tagged.  Bonus
points if tagged code was published as tarballs, but I can do that
myself.  I cannot easily guess at which points in a version control
system is sensible to make a snapshot for long-term use.

Thanks, that one is new to me.  I will try read that. :-)


 - Jonas

#710375#51
Date:
2021-11-10 00:27:14 UTC
From:
To:
Jonas,
<snip>

Please don't let that discourage you...

The short answer is the most recent commit to trunk should be considered
the latest stable at any given point in time.

I've confirmed with Dave that every commit to squeak-vm should be
considered stable at this point as it's essentially in maintenance mode.
Code changes tend to be small with the recent merge of the patches from the
Debian package likely being the most activity in well over a year.  Since
it's a legacy VM, we don't add major new functionality to it but rather
generally fix bugs and rarely (a small handful of times in the last decade)
will add a capability to keep Smalltalk source code compatible with the
modern VM when possible.  The biggest changes tend to be along the lines of
when a new OS/library version is released (i.e. something changed outside
of squeak-vm) and minor changes need to be made in the source code to keep
things running.

Please let me know if you have any questions.
Thanks,
Phil