Thread from comp.lang.tcl (5 replies)

tcltls v1.7.23 and Tcl 9
Posted by Alan Grunwald <nospam.nurdglaw@gmail.com> 3 days 8 hours ago

I have encountered a problem with the above extension under tcl9.0.0

After downloading 
https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, as 
advertised on the "Porting extensions to Tcl 9" page on the wiki, 
configuring using the line

../configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib

building and installing, I cannot load the extension:

     % package require tls
     version conflict for package "tcl": have 9.0.0, need 8.4

The same error also occurs if I do

     % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls

so I assume a problem in the .so file. I've had a quick look through the 
sources, but I have no confidence that I can find the appropriate change.

Please can someone help?

Click on article to view all threads in comp.lang.tcl
Re: tcltls v1.7.23 and Tcl 9
Posted by Alan Grunwald <nospam.nurdglaw@gmail.com> 3 days 7 hours ago

On 29/09/2024 13:33, Alan Grunwald wrote:
> I have encountered a problem with the above extension under tcl9.0.0
> 
> After downloading 
> https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, as 
> advertised on the "Porting extensions to Tcl 9" page on the wiki, 
> configuring using the line
> 
> ./configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib
> 
> building and installing, I cannot load the extension:
> 
>      % package require tls
>      version conflict for package "tcl": have 9.0.0, need 8.4
> 
> The same error also occurs if I do
> 
>      % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls
> 
> so I assume a problem in the .so file. I've had a quick look through the 
> sources, but I have no confidence that I can find the appropriate change.
> 
> Please can someone help?

Maybe I should have more confidence...

I changed line 1809 of tls.c from

     Tcl_InitStubs(interp, "Tcl", "8.4", 0)

to

     Tcl_InitStubs(interp, "Tcl", "8.4", 0) || Tcl_InitStubs(interp, 
"Tcl", "9", 0)

and the package now loads ok. Once I've ploughed through several more 
porting issues in my own code, I'll have an idea of whether the modified 
tls works.

Click on article to view all threads in comp.lang.tcl
Re: tcltls v1.7.23 and Tcl 9
Posted by Paul Obermeier <obermeier@poSoft.de> 3 days 5 hours ago

Am 29.09.2024 um 15:24 schrieb Alan Grunwald:
> On 29/09/2024 13:33, Alan Grunwald wrote:
>> I have encountered a problem with the above extension under tcl9.0.0
>>
>> After downloading https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, as advertised on the "Porting extensions to Tcl 9" page on the wiki, configuring using the line
>>
>> ./configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib
>>
>> building and installing, I cannot load the extension:
>>
>>      % package require tls
>>      version conflict for package "tcl": have 9.0.0, need 8.4
>>
>> The same error also occurs if I do
>>
>>      % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls
>>
>> so I assume a problem in the .so file. I've had a quick look through the sources, but I have no confidence that I can find the appropriate change.
>>
>> Please can someone help?
> 
> Maybe I should have more confidence...
> 
> I changed line 1809 of tls.c from
> 
>      Tcl_InitStubs(interp, "Tcl", "8.4", 0)
> 
> to
> 
>      Tcl_InitStubs(interp, "Tcl", "8.4", 0) || Tcl_InitStubs(interp, "Tcl", "9", 0)
> 
> and the package now loads ok. Once I've ploughed through several more porting issues in my own code, I'll have an idea of whether the modified tls works.

As long as I was testing with Tcl9 beta versions, the "8.4" in Tcl_InitStubs or Tk_InitStubs worked.
Since using official Tcl9 this does not work anymore, so I switched to use "8.4-" as is done with "package require" calls.

I forgot to update the preview page with the changed packages.
Will do today or tomorrow.

Paul

Click on article to view all threads in comp.lang.tcl
Re: tcltls v1.7.23 and Tcl 9
Posted by Paul Obermeier <obermeier@poSoft.de> 3 days 3 hours ago

Am 29.09.2024 um 18:19 schrieb Paul Obermeier:
> Am 29.09.2024 um 15:24 schrieb Alan Grunwald:
>> On 29/09/2024 13:33, Alan Grunwald wrote:
>>> I have encountered a problem with the above extension under tcl9.0.0
>>>
>>> After downloading https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, as advertised on the "Porting extensions to Tcl 9" page on the wiki, configuring using the line
>>>
>>> ./configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib
>>>
>>> building and installing, I cannot load the extension:
>>>
>>>      % package require tls
>>>      version conflict for package "tcl": have 9.0.0, need 8.4
>>>
>>> The same error also occurs if I do
>>>
>>>      % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls
>>>
>>> so I assume a problem in the .so file. I've had a quick look through the sources, but I have no confidence that I can find the appropriate change.
>>>
>>> Please can someone help?
>>
>> Maybe I should have more confidence...
>>
>> I changed line 1809 of tls.c from
>>
>>      Tcl_InitStubs(interp, "Tcl", "8.4", 0)
>>
>> to
>>
>>      Tcl_InitStubs(interp, "Tcl", "8.4", 0) || Tcl_InitStubs(interp, "Tcl", "9", 0)
>>
>> and the package now loads ok. Once I've ploughed through several more porting issues in my own code, I'll have an idea of whether the modified tls works.
> 
> As long as I was testing with Tcl9 beta versions, the "8.4" in Tcl_InitStubs or Tk_InitStubs worked.
> Since using official Tcl9 this does not work anymore, so I switched to use "8.4-" as is done with "package require" calls.
> 
> I forgot to update the preview page with the changed packages.
> Will do today or tomorrow.
> 
> Paul

Updated relevant packages at the BAWT preview page.
Note, that version 1.7.23 is based upon 1.7.22, which is 4 years old.
You might also check the current trunk of tcltls at https://core.tcl-lang.org/tcltls

Paul

Click on article to view all threads in comp.lang.tcl
Re: tcltls v1.7.23 and Tcl 9
Posted by Alan Grunwald <nospam.nurdglaw@gmail.com> 3 days ago

On 29/09/2024 18:29, Paul Obermeier wrote:
> Am 29.09.2024 um 18:19 schrieb Paul Obermeier:
>> Am 29.09.2024 um 15:24 schrieb Alan Grunwald:
>>> On 29/09/2024 13:33, Alan Grunwald wrote:
>>>> I have encountered a problem with the above extension under tcl9.0.0
>>>>
>>>> After downloading 
>>>> https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, 
>>>> as advertised on the "Porting extensions to Tcl 9" page on the wiki, 
>>>> configuring using the line
>>>>
>>>> ./configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib
>>>>
>>>> building and installing, I cannot load the extension:
>>>>
>>>>      % package require tls
>>>>      version conflict for package "tcl": have 9.0.0, need 8.4
>>>>
>>>> The same error also occurs if I do
>>>>
>>>>      % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls
>>>>
>>>> so I assume a problem in the .so file. I've had a quick look through 
>>>> the sources, but I have no confidence that I can find the 
>>>> appropriate change.
>>>>
>>>> Please can someone help?
>>>
>>> Maybe I should have more confidence...
>>>
>>> I changed line 1809 of tls.c from
>>>
>>>      Tcl_InitStubs(interp, "Tcl", "8.4", 0)
>>>
>>> to
>>>
>>>      Tcl_InitStubs(interp, "Tcl", "8.4", 0) || Tcl_InitStubs(interp, 
>>> "Tcl", "9", 0)
>>>
>>> and the package now loads ok. Once I've ploughed through several more 
>>> porting issues in my own code, I'll have an idea of whether the 
>>> modified tls works.
>>
>> As long as I was testing with Tcl9 beta versions, the "8.4" in 
>> Tcl_InitStubs or Tk_InitStubs worked.
>> Since using official Tcl9 this does not work anymore, so I switched to 
>> use "8.4-" as is done with "package require" calls.
>>
>> I forgot to update the preview page with the changed packages.
>> Will do today or tomorrow.
>>
>> Paul
> 
> Updated relevant packages at the BAWT preview page.
> Note, that version 1.7.23 is based upon 1.7.22, which is 4 years old.
> You might also check the current trunk of tcltls at 
> https://core.tcl-lang.org/tcltls
> 
> Paul

Thanks Paul. The package seems to work ok with the change I made above, 
your suggestion sounds tidier but on the basis of leaving well alone, 
I'll stick with what I've got at present.

Click on article to view all threads in comp.lang.tcl
Re: tcltls v1.7.23 and Tcl 9
Posted by Emiliano <emil.g@example.invalid> 2 days 8 hours ago

On Sun, 29 Sep 2024 13:33:45 +0100
Alan Grunwald <nospam.nurdglaw@gmail.com> wrote:

> I have encountered a problem with the above extension under tcl9.0.0
> 
> After downloading 
> https://www.tcl3d.org/bawt/download/Preview/Tcl9/tcltls-1.7.23.7z, as 
> advertised on the "Porting extensions to Tcl 9" page on the wiki, 
> configuring using the line
> 
> ./configure --prefix=/opt/tcl9.0.0 --with-tcl=/opt/tcl9.0.0/lib
> 
> building and installing, I cannot load the extension:
> 
>      % package require tls
>      version conflict for package "tcl": have 9.0.0, need 8.4
> 
> The same error also occurs if I do
> 
>      % load /opt/tcl9.0.0/lib/tcltls1.7.23/tcltls.so Tls
> 
> so I assume a problem in the .so file. I've had a quick look through the 
> sources, but I have no confidence that I can find the appropriate change.
> 
> Please can someone help?

The work is being done in the tls-1.8 branch. If you don't want to mess
with fossil, you can download a snapshot from

https://core.tcl-lang.org/tcltls/download?r=tls-1.8

Note that it needs a version of OpenSSL newer than 1.X

-- 
Emiliano

Click on article to view all threads in comp.lang.tcl