PureBasic 6.20 is out !

Developed or developing a new product in PureBasic? Tell the world about it.
Fred
Administrator
Administrator
Posts: 18344
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by Fred »

2025-01-17: Happy New Year everyone ! The 6.20 beta 3 is available for testing and comes some new stuffs with more fixes:

Code: Select all

- Added QT based IDE on Linux (thanks Fr34k) ! It's still early stage and could be unstable, feedback is welcome. Another prefs file is used (purebasic_qt.prefs) as some saved values aren't compatiable with the GTK version.
- Added external colorscheme support for the IDE to easily share them (thanks Kenmo !)
- Added string above 2GB support for 64-bit versions of PureBasic. Such big strings will be probably slow to handle, but it could be useful for simple operations.

Bugfixes for this version:This list was created automatically. All updated bug threads from the date of the last final version have been determined.
User avatar
HeX0R
Addict
Addict
Posts: 1211
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: PureBasic 6.20 beta 3 is out !

Post by HeX0R »

Yeah, great!
Thank you so much!
Quin
Addict
Addict
Posts: 1135
Joined: Thu Mar 31, 2022 7:03 pm
Location: Colorado, United States
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by Quin »

Thanks as always Fred!
User avatar
minimy
Enthusiast
Enthusiast
Posts: 676
Joined: Mon Jul 08, 2013 8:43 pm
Location: off world

Re: PureBasic 6.20 beta 3 is out !

Post by minimy »

After reading the entire post, I must also thank pf_shadoko for his contribution to Ogre1.4 and amazing examples.
And thanks again to all the PB team!

A forever noob question: :mrgreen:
PB 6.20 and Ogre1.4 can run over macos catalina?
If translation=Error: reply="Sorry, Im Spanish": Endif
PrincieD
Addict
Addict
Posts: 862
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by PrincieD »

Excellent! thanks Fred :)
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
User avatar
useful
Enthusiast
Enthusiast
Posts: 403
Joined: Fri Jul 19, 2013 7:36 am

Re: PureBasic 6.20 beta 3 is out !

Post by useful »

Is webview available in qt?
Or just gtk3?
Dawn will come inevitably.
Fred
Administrator
Administrator
Posts: 18344
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by Fred »

Just GTK3
User avatar
kenmo
Addict
Addict
Posts: 2049
Joined: Tue Dec 23, 2003 3:54 am

Re: PureBasic 6.20 beta 3 is out !

Post by kenmo »

Thanks for this! :D Testing on Linux first.
PrincieD
Addict
Addict
Posts: 862
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by PrincieD »

Hi Fred, when using the new user lib do un-used procedures get pruned from the build?
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
User avatar
Paul
PureBasic Expert
PureBasic Expert
Posts: 1285
Joined: Fri Apr 25, 2003 4:34 pm
Location: Canada
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by Paul »

PrincieD wrote: Sun Jan 19, 2025 11:57 pm Hi Fred, when using the new user lib do un-used procedures get pruned from the build?
According to Fred's first post...
There is some limitation for PureBasic purelibrary:
- No debugger support (in progress)
- All functions are compiled in the same object, which means the library will always includes all the functions in the final executable.
- No help support (in progress)
Image Image
PrincieD
Addict
Addict
Posts: 862
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by PrincieD »

Paul wrote: Mon Jan 20, 2025 12:06 am
PrincieD wrote: Sun Jan 19, 2025 11:57 pm Hi Fred, when using the new user lib do un-used procedures get pruned from the build?
According to Fred's first post...
There is some limitation for PureBasic purelibrary:
- No debugger support (in progress)
- All functions are compiled in the same object, which means the library will always includes all the functions in the final executable.
- No help support (in progress)
Ahh that's a bugger, might as well compile to a DLL then
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
PrincieD
Addict
Addict
Posts: 862
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by PrincieD »

PrincieD wrote: Mon Jan 20, 2025 12:07 am
Paul wrote: Mon Jan 20, 2025 12:06 am
PrincieD wrote: Sun Jan 19, 2025 11:57 pm Hi Fred, when using the new user lib do un-used procedures get pruned from the build?
According to Fred's first post...
There is some limitation for PureBasic purelibrary:
- No debugger support (in progress)
- All functions are compiled in the same object, which means the library will always includes all the functions in the final executable.
- No help support (in progress)
Ahh that's a bugger, might as well compile to a DLL then
That's what made TailBite and user libray generation, unfortuantely the TailBite code became unmanageable
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
PrincieD
Addict
Addict
Posts: 862
Joined: Wed Aug 10, 2005 2:08 pm
Location: Yorkshire, England
Contact:

Re: PureBasic 6.20 beta 3 is out !

Post by PrincieD »

Just leave it to the C linker at compile time? (you would need to compile your code in C)
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
Thorium
Addict
Addict
Posts: 1308
Joined: Sat Aug 15, 2009 6:59 pm

Re: PureBasic 6.20 beta 1 is out !

Post by Thorium »

Fred wrote: Thu Dec 12, 2024 9:11 am The library used is LibreSSL. TLS server example:

Code: Select all

EnableExplicit
Define.i Con, Timeout, Length
Define Receive$, Key$, Cert$, ClientID
Define *Buffer

Key$ = "-----BEGIN PRIVATE KEY-----"+#LF$+
       "MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAPEbSQq/uwESZduPtDd83qXXkSPf6lUNa17xhM2fOZQxGr0Fdmvw6IsC+QGX25EE1TG6TFQkHlM2rW8y6a3WEC/WzCNWaTCPYD/rguiAFG+4eQmwHjiJFVec0InjjSG9SX8xwS/gQeWdQniKROO4DmMJO8N7mdUhdHODSntXdr9zAgMBAAECgYAE+VMgbaQl+YMwbF6DZogRU8kivFPRPV2hr8nVlBtT+09Z5uryfx3NAFqytbdJ3penVviMI9KcVNxvFtXLSEc9KyjzgysorAfUpwFuECCLDbOXX0HlV6rgkqJdhyV6FybcDLvgcvulHQ64QdYRhW+jPx7vXk3h0/JRFqKQJsY7QQJBAPrDLJRPbAw+Mlq1fHBWk8Z1Qn1ivPAmz+2nPAgDya/xdAlb9GbFAMzCS3upIBpxW70uLI04OuTVhwYL194I5C0CQQD2JHtHp25SkIDpBgZGicEC7yAIE/wPC0P9X85UJqXx5dPx4HbEc8lqSKMbCzkbHyvjHonSHu00QxU1W6ZALFYfAkBcPWzphSl+e2Z0XWvPutkS2FFD5A0R3YUAq1J2tEX9NTj0tGF7aB36M8ImU7jeYTJYrWJv8+4d/Ll1LOgT4XtlAkAxofOV5EYTsf28fzF+wcJAtDUyS81Uv0HLcqkpQM3PdDeDm253eJ2Rp+nzxxSRynxQBNVnoELWefxp0Pw6DnajAkBF5h7fQIbwAEPrhDzhjMXU7g9k9KzkkJN/bluLbleqkkAz1kfkGtWXJdGITZuY4K/X2yp1diWQ0utZjmOmhWsl"+#LF$+
       "-----END PRIVATE KEY-----"

Cert$ = "-----BEGIN CERTIFICATE-----"+#LF$+
        "MIICnTCCAgYCCQD0AWy2vzfcpzANBgkqhkiG9w0BAQUFADCBkjELMAkGA1UEBhMCVVMxDjAMBgNVBAgTBVN0YXRlMQ0wCwYDVQQHEwRDaXR5MRUwEwYDVQQKEwxPcmdhbml6YXRpb24xHDAaBgNVBAsTE09yZ2FuaXphdGlvbmFsIFVuaXQxLzAtBgNVBAMTJkNvbW1vbiBOYW1lIChlLmcuLCB5b3VyIHNlcnZlciBkb21haW4pMB4XDTI0MTEwNjE2NTI1N1oXDTI0MTIwNjE2NTI1N1owgZIxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIEwVTdGF0ZTENMAsGA1UEBxMEQ2l0eTEVMBMGA1UEChMMT3JnYW5pemF0aW9uMRwwGgYDVQQLExNPcmdhbml6YXRpb25hbCBVbml0MS8wLQYDVQQDEyZDb21tb24gTmFtZSAoZS5nLiwgeW91ciBzZXJ2ZXIgZG9tYWluKTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8RtJCr+7ARJl24+0N3zepdeRI9/qVQ1rXvGEzZ85lDEavQV2a/DoiwL5AZfbkQTVMbpMVCQeUzatbzLprdYQL9bMI1ZpMI9gP+uC6IAUb7h5CbAeOIkVV5zQieONIb1JfzHBL+BB5Z1CeIpE47gOYwk7w3uZ1SF0c4NKe1d2v3MCAwEAATANBgkqhkiG9w0BAQUFAAOBgQCprm5a5bg1LqCDdtwDTnRDmVcca6HoUlvbjZLmWdLjltG1McNAATppTy/bF7vT3jXLobA1Vzs2g14POjYQhPnIbRPEnNzvAe+Se3y0YeFOwYarEyFBHKHODGIPaCnXGH8gB9fgcp2SYtLaPKvXdNL44VeYGbD4+fvUcu/zkXqTSg=="+#LF$+
        "-----END CERTIFICATE-----"

UseNetworkTLS(Key$, Cert$)
Con = CreateNetworkServer(#PB_Any, 20252, #PB_Network_TCP | #PB_Network_IPv4 | #PB_Network_TLSv1_3)
*Buffer = AllocateMemory(1000)

If Con
  Timeout = 10000
  
    Repeat
      Select NetworkServerEvent()
        Case #PB_NetworkEvent_Data
          
          Debug "Data !"
          ClientID = EventClient()
          PokeA(*Buffer, 0)
          Debug ReceiveNetworkData(ClientID, *Buffer, 1000)
          
          Debug "String: "+PeekS(*Buffer, -1, #PB_UTF8)
          SendNetworkString(ClientID, "Well received !!!")
          
        Case #PB_NetworkEvent_None
          Delay(200)
          Timeout - 1
      EndSelect
          
    Until Timeout = 0
    
    CloseNetworkServer(Con)
  Else
    Debug "Can't create the server"
EndIf
And the associated client:

Code: Select all

Define.i Con, Timeout, Length
Define Receive$
Define *Buffer
  
  
UseNetworkTLS()

Con = OpenNetworkConnection("127.0.0.1", 20252, #PB_Network_TCP | #PB_Network_IPv4 | #PB_Network_TLSv1_3)
If Con
  *Buffer = AllocateMemory($FFFF, #PB_Memory_NoClear)
  If *Buffer
    Debug "Sending string"
    SendNetworkString(Con, "GET / HTTP/1.1" + #CRLF$ + "Host: www.purebasic.fr" + #CRLF$ + #CRLF$)
    Debug "String Sent"
    Timeout = 100
    Repeat
      Select NetworkServerEvent()
          
      EndSelect
      
      Select NetworkClientEvent(Con)
        Case #PB_NetworkEvent_Data
          Repeat
            Length = ReceiveNetworkData(Con, *Buffer, MemorySize(*Buffer))
            If Length > 0
              Receive$ + PeekS(*Buffer, Length, #PB_UTF8 | #PB_ByteLength)
            EndIf
          Until Length = 0 Or (Length > 0 And Length <> MemorySize(*Buffer))
          Break
          
        Case #PB_NetworkEvent_Disconnect
          Debug "Disconnect"
          Break
          
        Case #PB_NetworkEvent_None
          Delay(10)
          Timeout - 1
          
      EndSelect
    Until Timeout = 0
    Debug Timeout
    
    If Receive$ <> ""
      Debug Receive$
    EndIf
    
    FreeMemory(*Buffer)
  EndIf
  
  CloseNetworkConnection(Con)
Else
  Debug "can't create the client"
EndIf


Sweet. Does it accept self-signed certificates by default. And do we have any way to enable or disable self signed certificate accepting?
User avatar
pf shadoko
Enthusiast
Enthusiast
Posts: 408
Joined: Thu Jul 09, 2015 9:07 am

Re: PureBasic 6.20 beta 3 is out !

Post by pf shadoko »

minimy wrote: Fri Jan 17, 2025 6:32 pm PB 6.20 and Ogre1.4 can run over macos catalina?
sorry for the late reply
normally the bug with macs is fixed
can you confirm?
Post Reply