On 09/04/2024 21:14, David Higton wrote:
> For background, quoting Rob Kendrick:
>
>> My /guess/ is that SocketWatch (or similar) is running via an
>> application launched at boot and it is an earlier version than NetSurf
>> requires, so NetSurf's !Run's RMEnsure tries to replace it with a newer
>> version?
>
> At last Saturday nights RISC OS coding zoom meeting there was discussion
> of this SocketWatch issue and John Rickman was asked to write to this
> list seeking some information. (He's only subscribed to ns-users, so
> I've taken over the task.) We looked at the change log for v0.07 and
> tested the latest NetSurf against v0.04. It appeared to run without
> problems.
>
> Would you be willing in the short term to RMensure against v0.04 instead
> of v0.07. This would avoid some breakage and people having to change
> their run files.
>
I have now reverted all this functionality completely as I would prefer
not to declare a dependency on something with which we have not tested.
> The documentation provided with 0.07 specifically says that it is an
> unofficial release. The last "official" release seems to have been
> 0.04. Is it wise to force people to update their master !System with
> an unofficial release?
Yes, it is. The original author moved on over 20 years ago, the module
was made 32bit compatible by the Nettle developers in 2003 and committed
to their CVS at that time. Later, Frank de Bruijn became the de-facto
maintainer after his attempts to feed his changes back failed.
Further, in June 2012, the Nettle developers committed the sources for
his version 0.06 to their CVS and removed the historic 0.04y sources
they had been carrying up to that point. I cannot point you at the
Nettle CVS repository on Sourceforge because there is no longer a web
interface for it, and I wouldn't want to force anyone to use a CVS
client in 2024. Instead, here's the commit history from a copy of the
Nettle source repository in Git:
https://github.com/dpt/Nettle/commits/master/SocketWatch
To all intents and purposes, therefore, Frank's version is the official,
maintained, source of the module.
> Surely better to RMensure the official version if it works as expected.
> (The changelog shows no functional/API changes since 0.04). By all means
> include 0.07 in your zip, but use "RMensure" they way it was designed -
> to specify the minimum version the will function with your software.
We tested with, and thus declared a dependency on, the 0.07 release,
which is now 5 years old. We considered that 5 years was plenty of time
for people to have upgraded and, tbh, I'm somewhat surprised by the
suggestion that reverting to a dependency on 20+ year old abandonware is
a sensible course of action, given the existence of newer, less buggy,
maintained versions.
That this caused NetSurf not to run on systems running software that
vendored its own copy of the module, instead of using the system-wide
resources, is unfortunate, but was hardly foreseeable. Regardless,
lesson learned: never change anything in the RISC OS frontend.
J.
No comments:
Post a Comment