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
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
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:
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
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
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
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
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
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