Author Topic: RFC: Dropping support for old wxWidgets releases (2.8 in particular)  (Read 1852 times)

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
wx3.0.0 has been released: November 11, 2013
wx2.8.x somewhere around 2007.

Probably it is time to drop 2.8.x for all platforms?
Anyone still not able to migrate to 3.x? Reasons?
Most linuxes are on wx3.0.x something at the moment. The only exception in CentOS7, but there are workarounds, so it is not a big deal.

I'd also be happy if we could drop wx3.0 support for Windows. There is no particular reason to support it. I don't test it and we don't intend to ship a version with it because it doesn't support HiDPI. It only clutters our project files with another set of them.

I'm currently porting the popup changes from wxSTC to wxScintilla and they are really hard to port to wx2.8. I'm not sure it is worth the time to do it. It will mean that I'd have to copy a lot of wxWidget internals or probably leave the old code and mod it a bit.

Anyone interested in this should speak soon, because I think I'll take action in the next couple of weeks. :)  8)
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Online killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5179
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #1 on: August 01, 2019, 03:45:18 pm »
I totally support the drop of wx 2.8, and wx 3.0 on windows too.
I even think many linuxes already provide out of the bow more recent then 3.0.x too.


Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #2 on: August 01, 2019, 03:48:57 pm »
I don't think, so. A quick check at pkgs.org showed that most linux distros are at 3.0.x and only OpenSuSe is shipping 3.1.2 (which is broken for cb:))
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline LETARTARE

  • Regular
  • ***
  • Posts: 390
  • L'ami de l'homme.The friend of man.
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #3 on: August 01, 2019, 04:41:15 pm »
I am five machines with my configuration. I build 'CB' without problems with wx-2.8.12 and gcc-510.

For 'OpenSuse-Leap-42.3' :  always with native 2.8.12,
- I have not been able to install 3.0.2 next to 2.8.12, but I'm working on it (the native compiler is 4.8.5 !!),
- I'm also trying to install gcc530, gcc730 and use 'update-alternatives' I can not use for 'wx-config'
( these difficulties probably come from my inexperience with LINUX !)
I am also working on the installation of 'openSUSE Tumbleweed' ;  wx-3.0.4,  3.1.3 (wxGTK3-3_2) come with 'openSUSE Tumbleweed', but again the coexistence is difficult.

For Windows : for a week I'm trying to install versions 2.8.12, 3.0.1, 3.12 with the gcc-530, gcc-730, gcc-810 compilers as well as build CB from the sdk143 (cb-11793 .. .) : it seems more accessible ...

If the decision is made towards the beginning of September, I think I have made serious progress in all these problems.

C::B  : svn11831, wx2.8, 3.1.1, plugins : QtPregen-2.6.2-sdk143
1-Vista Business Pack 2 32bits : gcc-8.1.0,
2-OpenSuse-15.1-Leap 64bits :  gcc-7.4.1,
=> !! The messages are translated by Deepl !!

Offline stahta01

  • Lives here!
  • ****
  • Posts: 6636
    • My Best Post
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #4 on: August 01, 2019, 04:50:48 pm »
I think dropping the Windows wx 2.8 projects make sense.
I do suggest keeping the core windows wx 3.0 projects;  CodeBlocks_wx30.cbp and CodeBlocks_wx30_64.cbp.
The windows wx 3.0 plugins projects make sense to delete.

This way it will be easier for the few remaining Windows wx 3.0 self building to still build core CB.
And, we can always delete them later.

Tim S.


C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 32 bit.
On Debian Stretch, compiling CB Trunk against wxWidgets 3.0.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline Pecan

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 2173
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #5 on: August 01, 2019, 06:45:07 pm »
I support the drop of wx 2.8, and wx 3.0 .

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #6 on: August 01, 2019, 06:47:42 pm »
I do suggest keeping the core windows wx 3.0 projects;  CodeBlocks_wx30.cbp and CodeBlocks_wx30_64.cbp.
The windows wx 3.0 plugins projects make sense to delete.
This doesn't make sense.

This way it will be easier for the few remaining Windows wx 3.0 self building to still build core CB.
And, we can always delete them later.
Building another wx is not a rocket science it is just a download, unpack and run of a copy-pasted command from the wiki.

This doesn't seem like a valid reason to preserve the wx30 builds. A valid reason would be that something is broken with wx31 and only works in wx30. If this is the case then we can postpone the deletion. But I've not seen any indication that this is the case. We're shipping wx31 night builds for quite a while.

(I know that the pile of bug reports would start happening after we ship a wx31 release :))
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline sodev

  • Regular
  • ***
  • Posts: 325
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #7 on: August 01, 2019, 08:04:58 pm »
I am using wx-master for many years for all our (windows only) applications and this works quite well, nothing broke badly, sometimes i picked a commit that broke something, but usually this got fixed after a short time so i simply picked the fixed commit. On windows there is no such thing like a package repository, building wxWidgets from source is not that kind of big deal (it is self contained, no external dependencies), so you can easily use the source.

On linux it's a bit different, so if you want to provide packages, at least there stick to some release that is available in the repositories.

I don't use wx 2.8 since CodeBlocks got useable with wx 3.x, maybe soon i don't have to apply my patches to be able to use CodeBlocks with wx-master ;D

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #8 on: August 01, 2019, 10:34:05 pm »
...maybe soon i don't have to apply my patches to be able to use CodeBlocks with wx-master ;D
Patches? To cb or wx? Anyway wx-master is only for testing...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline sodev

  • Regular
  • ***
  • Posts: 325
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #9 on: August 02, 2019, 12:35:55 am »
Patches for CB. Only two, around a month ago you and BlueHazzard looked at them again, you didn't like one of them because of the code duplication required to work with wx 2.8, and the other one... well, i guess no one was in the mood to try to understand the affected CodeBlocks parts to maybe agree with me that CodeBlocks does it wrong and wxWidgets refuses to compile with that for good reason :). And since then... silence again :-X.

My 5 years+ test run is quite successful so far, i get the latest and greatest stuff and don't have to work around bugs because i can simply upgrade 8)

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5226
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #10 on: August 02, 2019, 05:53:33 am »
My option: drop wx2.8 on Windows, and I suggest using wx3.1.2 and above under Windows.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #11 on: August 02, 2019, 09:10:03 am »
3.1.2 is broken and needs patching.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2492
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #12 on: August 02, 2019, 10:45:42 am »
Oh no, come on.... Now where i have nearly finished my build setup to build every version of codeblocks with every version of wxWidgets and compiler on windows and linux automatically, you want to kill 90% of the work...

joke aside: I am totally for dropping old wx versions!

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #13 on: August 02, 2019, 11:44:54 am »
There would be 3.2 in some years time. :)
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline Miguel Gimenez

  • Regular
  • ***
  • Posts: 341
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #14 on: August 02, 2019, 12:02:34 pm »
wxWidgets' roadmap says 3.1.3 will come out in september and 3.2.0 in early 2020. These dates are estimations, of course.

IMHO wx2.8 can be removed in all platforms, 3.0 in MSW and the nightlies changed to 3.1.3 as soon as it is released.

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9496
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #15 on: August 02, 2019, 01:58:17 pm »
We talked about that for quite some time now. For me, I understood we do that step by step:
1. Provide wx28 and wx30 nightlies for testing
2. Provide only wx30 nightly builds to enforce testing once we don't get serious errors
3. Switch with release

We did step 1. We can do step 2 now, if you like.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #16 on: August 02, 2019, 02:43:47 pm »
Morten: We're already at step 2? Or by step 2 you mean remove project files for wx2.8?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9496
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #17 on: August 02, 2019, 04:42:58 pm »
Morten: We're already at step 2? Or by step 2 you mean remove project files for wx2.8?
We provide wx31 but not wx30. If you intend to switch to wx30 then this should be tested. Maybe I don't get the point?
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #18 on: August 02, 2019, 05:33:49 pm »
The plan is:
- use wx30 for linux,
- use wx31 for windows and macos.
- delete wx28 projects for linux/macos
- delete wx30 projects for windows.

We cannot use wx30 on windows, because it doesn't have enough hidpi features, as far as I know.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9496
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #19 on: August 03, 2019, 11:19:33 am »
The plan is:
- use wx30 for linux,
- use wx31 for windows and macos.
- delete wx28 projects for linux/macos
- delete wx30 projects for windows.

We cannot use wx30 on windows, because it doesn't have enough hidpi features, as far as I know.
OK, go ahead!
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2492
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #20 on: August 03, 2019, 11:51:55 am »
Quote
We cannot use wx30 on windows, because it doesn't have enough hidpi features, as far as I know.
but hasn't wx3.1.2 a fatal crash bug if you use code completion pop up?
found the report by Miguel Gimenez and i am hitting this too
http://forums.codeblocks.org/index.php/topic,23291.msg158701.html#msg158701

[Edit: specify wxWidgets version]
« Last Edit: August 03, 2019, 11:58:34 am by BlueHazzard »

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #21 on: August 03, 2019, 06:29:36 pm »
Yes, 3.1.2 is broken for cb. We need 3.1.3 or wx-master ;( This is why night builds are still on 3.1.1.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Online killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5179
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #22 on: August 03, 2019, 10:27:34 pm »
no idea when wx 3.1.3 might arrive, but maybe we could switch for the nightlies to wx master till 3.1.3 arrives ?

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #23 on: August 04, 2019, 12:01:35 am »
Yes, but which master? It is really bad situation. :(
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Online killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5179
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #24 on: August 04, 2019, 08:32:39 am »
oh, I assumed their would be 1 master ?

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #25 on: August 04, 2019, 09:37:09 am »
There is only one master, but which point/commit should we choose?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline Miguel Gimenez

  • Regular
  • ***
  • Posts: 341
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #26 on: August 04, 2019, 11:21:29 am »
The wx3.1.3 release is estimated for september, so there is no real need to use wx-master now.

The only advantage would be prerelease bug detection in wx (like the wxPopup issue that invalidated 3.1.2)

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 12002
    • Travis build status
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #27 on: August 04, 2019, 01:12:28 pm »
There are several fixes for toolbars in wx-master, which are useful to us. :(
Also relying on wx's schedule isn't a good idea.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Online killerbot

  • Administrator
  • Lives here!
  • *****
  • Posts: 5179
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #28 on: August 05, 2019, 05:54:17 pm »
The wx3.1.3 release is estimated for september, so there is no real need to use wx-master now.

The only advantage would be prerelease bug detection in wx (like the wxPopup issue that invalidated 3.1.2)

ok let's wait on this one, and if that one still have to many bugs, then we can think of wx-master ...

Offline sodev

  • Regular
  • ***
  • Posts: 325
Re: RFC: Dropping support for old wxWidgets releases (2.8 in particular)
« Reply #29 on: August 05, 2019, 10:04:17 pm »
There is only one master, but which point/commit should we choose?

My usual approach is to check the log messages to not pick a commit that is in the middle of a series, but usually they don't merge these commits individually but only as whole branch from a PR. Then i try to estimate how dangerous the recent commits are and depending on that i wait a little to see if follow ups get commited. And then i usually take what git fetch gives :).