3.20.1 has broken my Application

Post your Gambas programming questions here.
User avatar
sadams54
Regular
Posts: 181
Joined: Mon Jul 09, 2018 3:43 am
Contact:

Re: 3.20.1 has broken my Application

Post by sadams54 »

mariadb is case sensitive... so a field named BigStuff will throw an error if you access it as Bigstuff, missing the capital S makes a difference as will a period. You may want to rename that field if it is not too much trouble. also if you use quotes on something it will throw the entire thing off. I wrote a sub that catches the strange characters like a quote and changes it to something else unused to store and switches it back when read. First thing is centralize all the database access to a single class so you can control it better.
AndyGable
Regular
Posts: 419
Joined: Wed Dec 02, 2020 12:11 am
Location: Northampton, England
Contact:

Re: 3.20.1 has broken my Application

Post by AndyGable »

sadams54 wrote: Wed Feb 05, 2025 12:43 am mariadb is case sensitive... so a field named BigStuff will throw an error if you access it as Bigstuff, missing the capital S makes a difference as will a period. You may want to rename that field if it is not too much trouble. also if you use quotes on something it will throw the entire thing off. I wrote a sub that catches the strange characters like a quote and changes it to something else unused to store and switches it back when read. First thing is centralize all the database access to a single class so you can control it better.
I have found i type a few feilds in LikeThis so I have changed them

I assume 3.20.1 has a updated Database error handling as 3.19.5 allowed me to use the LikeThis Feilds names (I am running on my central database server of mariadb)

PLEASE can someone confirm if I make a Program in 3.20.1 on a AMD64 machine will it run with no issues on a I386 (32 bit machine)

I have 100 32bit computers that run my Debain software and I can not and will not tell customers they need to upgrade to 64bits just to run some back office applications (This was the reason I move to Debain in the first place so older hardware can still be used)

When I tryed to install 3.20.1 on my IBM ThinkPad X31 it kept saying sse_Support is not enabled on the device
BruceSteers
Legend
Posts: 2093
Joined: Thu Jul 23, 2020 5:20 pm
Location: Isle of Wight

Re: 3.20.1 has broken my Application

Post by BruceSteers »

I do not have a 32bit machine to test if it works.

if you have 100 can't you test it on one of them ?

I will say to your question that no, the is no guarantee if sse is a requirement.
google ai wrote: SSE support in Debian is handled by packages that check for the presence of Streaming SIMD Extensions (SSE) on a processor. These packages refuse to install on processors that don't have the required SSE features.
How it works

The isa-support family of packages check for SSE features like SSE3.
If a processor doesn't have the required SSE features, the package won't install.
This allows package dependencies to handle ISA requirements.
So it seems if the 32bit machines do not support sse then sse packages will not install.

you can get cpu info by installing and running cpuid, that will let you know if the cpu supports sse

Code: Select all

$ cpuid -1|grep SSE

      SSE extensions                         = true
      SSE2 extensions                        = true
      PNI/SSE3: Prescott New Instructions     = true
      SSSE3 extensions                        = true
      SSE4.1 extensions                       = true
      SSE4.2 extensions                       = true
         SSE state                            = true
         XCR0 supported: SSE state           = false
my guess is the packages do not exist on those systems because they do not support sse3.

https://packages.debian.org/bookworm/i3 ... t/download

But why the updated gambas suddenly demands it i do not know.
User avatar
gbWilly
Site Admin
Posts: 158
Joined: Fri Sep 23, 2016 11:41 am
Location: Netherlands
Contact:

Re: 3.20.1 has broken my Application

Post by gbWilly »

AndyGable wrote: Fri Feb 07, 2025 9:32 pm [
PLEASE can someone confirm if I make a Program in 3.20.1 on a AMD64 machine will it run with no issues on a I386 (32 bit machine)

I have 100 32bit computers that run my Debain software and I can not and will not tell customers they need to upgrade to 64bits just to run some back office applications (This was the reason I move to Debain in the first place so older hardware can still be used)

When I tryed to install 3.20.1 on my IBM ThinkPad X31 it kept saying sse_Support is not enabled on the device
I reported this problem in this thread on mailing list.
It has been fixed and I have tested the fix on both Debian 11 and Debian 12 i386.
I did create binary packages for i386 on both above systems, made a file repo and installed the above fixed master version from that repo. It installs and works.
Benoit confirmed that the fix will be in the 3.20.2 release.

On possible mariadb trouble:
Gambas 3.20.x uses the new gb.db2 and db2 family of components for it's IDE dependency.
So, if things behave strange in your project, make sure to install gambas3-gb-db and its db family (this does NOT happen default probably) and make your programs explicitly depend on these. That might solve some issues.
gbWilly
- Dutch translation for Gambas3
- Gambas wiki content contributor
- Gambas debian/ubuntu package recipe contributor
- Gambas3 Debian/Ubuntu repositories

- GambOS

... there is always a Catch if things go wrong!
AndyGable
Regular
Posts: 419
Joined: Wed Dec 02, 2020 12:11 am
Location: Northampton, England
Contact:

Re: 3.20.1 has broken my Application

Post by AndyGable »

gbWilly wrote: Fri Feb 07, 2025 11:07 pm
AndyGable wrote: Fri Feb 07, 2025 9:32 pm [
PLEASE can someone confirm if I make a Program in 3.20.1 on a AMD64 machine will it run with no issues on a I386 (32 bit machine)

I have 100 32bit computers that run my Debain software and I can not and will not tell customers they need to upgrade to 64bits just to run some back office applications (This was the reason I move to Debain in the first place so older hardware can still be used)

When I tryed to install 3.20.1 on my IBM ThinkPad X31 it kept saying sse_Support is not enabled on the device
I reported this problem in this thread on mailing list.
It has been fixed and I have tested the fix on both Debian 11 and Debian 12 i386.
I did create binary packages for i386 on both above systems, made a file repo and installed the above fixed master version from that repo. It installs and works.
Benoit confirmed that the fix will be in the 3.20.2 release.

On possible mariadb trouble:
Gambas 3.20.x uses the new gb.db2 and db2 family of components for it's IDE dependency.
So, if things behave strange in your project, make sure to install gambas3-gb-db and its db family (this does NOT happen default probably) and make your programs explicitly depend on these. That might solve some issues.
That's great news about the fix when I installed Gambas from source the sse_support was part of one of packages that get installed for building it.

Once 3.20.2 is available on the website I shall try that.
User avatar
gbWilly
Site Admin
Posts: 158
Joined: Fri Sep 23, 2016 11:41 am
Location: Netherlands
Contact:

Re: 3.20.1 has broken my Application

Post by gbWilly »

AndyGable wrote: Sat Feb 08, 2025 8:45 am That's great news about the fix when I installed Gambas from source the sse_support was part of one of packages that get installed for building it.

Once 3.20.2 is available on the website I shall try that.
Just so we are on the same page:

Code: Select all

[gb.gui.base].Splitter.DoLayout.239 #26: Division by zero
[gb.gui.base].Splitter.DoLayout.239 
[gb.gui.base].Splitter.Layout_Write.338 
[gb.gui.base].Splitter.MinSize_Write.525
FDbugInfo._new.57
FSearch._new.44
FMain._new.65
Project.Main.484 ?
This above issue has been fixed. I have not encountered the sse support problem.

I would attach a i386 file repository for debian11 and 12. It installs the 3.20.90 (master) version with this fix, so you could test on one of the systems. But it is not allowed as attachment, so I can't.
gbWilly
- Dutch translation for Gambas3
- Gambas wiki content contributor
- Gambas debian/ubuntu package recipe contributor
- Gambas3 Debian/Ubuntu repositories

- GambOS

... there is always a Catch if things go wrong!
AndyGable
Regular
Posts: 419
Joined: Wed Dec 02, 2020 12:11 am
Location: Northampton, England
Contact:

Re: 3.20.1 has broken my Application

Post by AndyGable »

BruceSteers wrote: Fri Feb 07, 2025 10:09 pm you can get cpu info by installing and running cpuid, that will let you know if the cpu supports sse

Code: Select all

$ cpuid -1|grep SSE
[/quote]

Well i ran the CPU ID command on my IBM ThinkPad X31 and this is the result

[code]$ cpuid -1|grep SSE

      SSE extensions                         = true
      SSE2 extensions                        = true
      PNI/SSE3: Prescott New Instructions     = false
      SSSE3 extensions                        = false
      SSE4.1 extensions                       = false
      SSE4.2 extensions                       = false
         SSE state                            = false
         XCR0 supported: SSE state           = false
The Packages that seem to need SSE_Support are Web packages does this mean I can not move to 3.20.2 when it comes out?
AndyGable
Regular
Posts: 419
Joined: Wed Dec 02, 2020 12:11 am
Location: Northampton, England
Contact:

Re: 3.20.1 has broken my Application

Post by AndyGable »

BruceSteers wrote: Fri Feb 07, 2025 10:09 pm

Code: Select all

$ cpuid -1|grep SSE
Well i ran the CPU ID command on my IBM ThinkPad X31 and this is the result

Code: Select all

$ cpuid -1|grep SSE

      SSE extensions                         = true
      SSE2 extensions                        = true
      PNI/SSE3: Prescott New Instructions     = false
      SSSE3 extensions                        = false
      SSE4.1 extensions                       = false
      SSE4.2 extensions                       = false
         SSE state                            = false
         XCR0 supported: SSE state           = false
The Packages that seem to need SSE_Support are Web packages does this mean I can not move to 3.20.2 when it comes out?
BruceSteers
Legend
Posts: 2093
Joined: Thu Jul 23, 2020 5:20 pm
Location: Isle of Wight

Re: 3.20.1 has broken my Application

Post by BruceSteers »

you have the supported sse2 packages yes?

isa-support - CPU feature checking - common back-end (maybe)
sse2-support - CPU feature checking - require SSE2

sudo apt install sse2-support

Beyond this I am not sure what the problem might be with gambas.

You may want to report the problem on the bugtracker
User avatar
sadams54
Regular
Posts: 181
Joined: Mon Jul 09, 2018 3:43 am
Contact:

Re: 3.20.1 has broken my Application

Post by sadams54 »

I don't think you'll have much of a choice. They do not produce 32 bit computers any longer so your clients will have to upgrade to 64bit at some time in the very near future. 32 bit design was outdated and abandoned years ago. This means your clients are using old out of date systems already. 32 bit computers are going the way of the commodore 64 computer.

I think you are best to get them updated before they have a real catastrophe. Move them to 64 bit in a controlled way.
Post Reply