Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » U++ community news and announcements » New release 2024 "alpha phase"
Re: New release 2024 "alpha phase" [message #60807 is a reply to message #60803] Fri, 13 September 2024 19:42 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Tom1 wrote on Thu, 12 September 2024 11:48
Another issue... On Linux Mint and UHD 4k display the console output (when compiling) is using a very tiny little font... And even if I zoom it in using Ctrl+Wheel, on next startup of TheIDE it has shrinked again back. All other panels in TheIDE seem to follow the UHD sizing.

// Tom


What is in Setup/Settings? (Maybe screenshot...)

Also, TheIDE font sizes are set once on the very first start. Perhaps you started in HD and only later switched to UHD ?

[Updated on: Fri, 13 September 2024 19:44]

Report message to a moderator

Re: New release 2024 "alpha phase" [message #60808 is a reply to message #60807] Fri, 13 September 2024 20:54 Go to previous messageGo to next message
Tom1
Messages: 1303
Registered: March 2007
Ultimate Contributor
mirek wrote on Fri, 13 September 2024 20:42
Tom1 wrote on Thu, 12 September 2024 11:48
Another issue... On Linux Mint and UHD 4k display the console output (when compiling) is using a very tiny little font... And even if I zoom it in using Ctrl+Wheel, on next startup of TheIDE it has shrinked again back. All other panels in TheIDE seem to follow the UHD sizing.

// Tom


What is in Setup/Settings? (Maybe screenshot...)

Also, TheIDE font sizes are set once on the very first start. Perhaps you started in HD and only later switched to UHD ?

It's entirely possible that it was mixed up on the very first start. Cannot check right now as the issue surfaced at the office. My home installation seems to work just fine. Also, I did not know that changing console font by Ctrl+Wheel is not persistent. (In the code editor it seems to be.)

I guess this can be considered solved. I will let you know next week if this is not the case once I check my office setup.

Thanks and best regards,

Tom
Re: New release 2024 "alpha phase" [message #60809 is a reply to message #60808] Sat, 14 September 2024 12:11 Go to previous messageGo to next message
omari is currently offline  omari
Messages: 276
Registered: March 2010
Experienced Member
index.php?t=getfile&id=6963&private=0

regards
omari.
Re: New release 2024 "alpha phase" [message #60815 is a reply to message #60805] Sun, 15 September 2024 15:41 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
omari wrote on Thu, 12 September 2024 13:53
Nightly build is stopped.

it seams that the builder host need update in order to use C++17

Thanks.


Should be now fixed.

Mirek
Re: New release 2024 "alpha phase" [message #60817 is a reply to message #60808] Mon, 16 September 2024 10:21 Go to previous messageGo to next message
Tom1
Messages: 1303
Registered: March 2007
Ultimate Contributor
Tom1 wrote on Fri, 13 September 2024 21:54
mirek wrote on Fri, 13 September 2024 20:42
Tom1 wrote on Thu, 12 September 2024 11:48
Another issue... On Linux Mint and UHD 4k display the console output (when compiling) is using a very tiny little font... And even if I zoom it in using Ctrl+Wheel, on next startup of TheIDE it has shrinked again back. All other panels in TheIDE seem to follow the UHD sizing.

// Tom


What is in Setup/Settings? (Maybe screenshot...)

Also, TheIDE font sizes are set once on the very first start. Perhaps you started in HD and only later switched to UHD ?

It's entirely possible that it was mixed up on the very first start. Cannot check right now as the issue surfaced at the office. My home installation seems to work just fine. Also, I did not know that changing console font by Ctrl+Wheel is not persistent. (In the code editor it seems to be.)

I guess this can be considered solved. I will let you know next week if this is not the case once I check my office setup.

Thanks and best regards,

Tom

Hi,

Settings were showing small font size for all but the 'Normal', which I had probably changed by Ctlr+Wheel. So I must have initially started in HD mode.

First I tried to fix it by using 'Restore defaults' and then 'Close'. This caused TheIDE to crash on every attempt. Then I selected the same font sizes manually and the values were successfully updated after close. So, there must be some issue with 'Restore defaults'.

Anyway, now I have the correct UHD font sizes.

Thanks and best regards,

Tom
Re: New release 2024 "alpha phase" [message #60821 is a reply to message #60817] Tue, 17 September 2024 09:10 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
[quote title=Tom1 wrote on Mon, 16 September 2024 10:21][quote title=Tom1 wrote on Fri, 13 September 2024 21:54]mirek wrote on Fri, 13 September 2024 20:42
First I tried to fix it by using 'Restore defaults' and then 'Close'. This caused TheIDE to crash on every attempt. Then I selected the same font sizes manually and the values were successfully updated after close. So, there must be some issue with 'Restore defaults'.
Tom


Should be now fixed.
Re: New release 2024 "alpha phase" [message #60823 is a reply to message #60821] Tue, 17 September 2024 10:43 Go to previous messageGo to next message
Tom1
Messages: 1303
Registered: March 2007
Ultimate Contributor
mirek wrote on Tue, 17 September 2024 10:10
Tom1 wrote on Mon, 16 September 2024 10:21
First I tried to fix it by using 'Restore defaults' and then 'Close'. This caused TheIDE to crash on every attempt. Then I selected the same font sizes manually and the values were successfully updated after close. So, there must be some issue with 'Restore defaults'.
Tom


Should be now fixed.

Thanks!

// Tom
Re: New release 2024 "alpha phase" [message #60825 is a reply to message #60805] Tue, 17 September 2024 17:34 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Thank you mirek for all the hard work!

I have a question. In CoWork.h, line 186, etc,
		void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(args...); }); }


shouldn't it be something like
void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(std::forward<Args>(args)...); }); }

for perfect forwarding to actually work?



The current upp codebase works fine with std=c++20, except the warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture] issue. This can be fixed without much effort and without affecting the aimed standard of c++17. I was wondering if you would consider accepting it if I make a pull request for that.



Re: New release 2024 "alpha phase" [message #60831 is a reply to message #60825] Wed, 18 September 2024 11:44 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Lance wrote on Tue, 17 September 2024 17:34
Thank you mirek for all the hard work!

I have a question. In CoWork.h, line 186, etc,
		void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(args...); }); }


shouldn't it be something like
void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(std::forward<Args>(args)...); }); }

for perfect forwarding to actually work?


Interestingly, does not work.

#include <Core/Core.h>

using namespace Upp;

CONSOLE_APP_MAIN
{
	auto a = Async([](int n) -> double {
		double f = 1;
		for(int i = 2; i <= n; i++)
			f *= i;
		return f;
	}, 100);
}


is compile time error with std_forward. Not sure why, but for now have to revert the change.
Re: New release 2024 "alpha phase" [message #60832 is a reply to message #60825] Wed, 18 September 2024 11:49 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Lance wrote on Tue, 17 September 2024 17:34

The current upp codebase works fine with std=c++20, except the warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture] issue. This can be fixed without much effort and without affecting the aimed standard of c++17. I was wondering if you would consider accepting it if I make a pull request for that.


Nope, cannot do that with C++17. Requires [=, this], which is C++20 feature. And, frankly, while [=] capturing 'this' is perhaps confusing, everybody is used to it by now so to require longer code for the same thing is at this point is kind of pointless... But when we go C++20, we shall do it anyway. In 3 years...
Re: New release 2024 "alpha phase" [message #60834 is a reply to message #60825] Wed, 18 September 2024 15:21 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Lance wrote on Tue, 17 September 2024 17:34
Thank you mirek for all the hard work!

I have a question. In CoWork.h, line 186, etc,
		void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(args...); }); }


shouldn't it be something like
void Do(Function&& f, Args&&... args) { co.Do([=]() { ret = f(std::forward<Args>(args)...); }); }

for perfect forwarding to actually work?


Follow up https://www.ultimatepp.org/forums/index.php?t=msg&goto=6 0833&#msg_60833
Re: New release 2024 "alpha phase" [message #60836 is a reply to message #60831] Wed, 18 September 2024 17:54 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Yes, I have the same problem. That's weird.
Re: New release 2024 "alpha phase" [message #60838 is a reply to message #60832] Wed, 18 September 2024 18:08 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
mirek wrote on Wed, 18 September 2024 05:49
Lance wrote on Tue, 17 September 2024 17:34

The current upp codebase works fine with std=c++20, except the warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture] issue. This can be fixed without much effort and without affecting the aimed standard of c++17. I was wondering if you would consider accepting it if I make a pull request for that.


Nope, cannot do that with C++17. Requires [=, this], which is C++20 feature. And, frankly, while [=] capturing 'this' is perhaps confusing, everybody is used to it by now so to require longer code for the same thing is at this point is kind of pointless... But when we go C++20, we shall do it anyway. In 3 years...


Thank you for the feedback. At least it doesn't affect my using c++20. For now, I will just suppress the warnings.

We can predict moving to c++20 is going to be really smooth in the future. c++23 however will break many String interfaces. That's something we won't need to worry in like 6 years Laughing

[Updated on: Wed, 18 September 2024 18:09]

Report message to a moderator

Re: New release 2024 "alpha phase" [message #60839 is a reply to message #60838] Wed, 18 September 2024 18:09 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Lance wrote on Wed, 18 September 2024 18:08
c++23 however will break many String interfaces.


Oops, can you post links why?

Mirek
Re: New release 2024 "alpha phase" [message #60840 is a reply to message #60839] Wed, 18 September 2024 18:54 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
with clang
when compiler flags set to -std=c++23 -Wno-logical-op-parentheses

we have multiple errors with messages like
Quote:

/home/lance/upp.src/uppsrc/Core/String.h (556): error: non-const lvalue reference to type 'String' cannot bind to a temporary of type 'String'


And the relevant source is
force_inline String& operator<<(String&& s, const char *x)
{
	s.Cat(x, strlen__(x));
	return s;
}


Now c++23 is rejecting code like these.
Re: New release 2024 "alpha phase" [message #60842 is a reply to message #60840] Wed, 18 September 2024 21:56 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Lance wrote on Wed, 18 September 2024 18:54
with clang
when compiler flags set to -std=c++23 -Wno-logical-op-parentheses

we have multiple errors with messages like
Quote:

/home/lance/upp.src/uppsrc/Core/String.h (556): error: non-const lvalue reference to type 'String' cannot bind to a temporary of type 'String'


And the relevant source is
force_inline String& operator<<(String&& s, const char *x)
{
	s.Cat(x, strlen__(x));
	return s;
}


Now c++23 is rejecting code like these.


https://github.com/ultimatepp/ultimatepp/commit/8016c484df87 3b7a0daf6ae4dd9d54971d888f84
Re: New release 2024 "alpha phase" [message #60846 is a reply to message #60842] Thu, 19 September 2024 04:47 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Fantastic. String are fixed. Now a simple Core console compiles with only one error.

Quote:

/home/lance/upp.src/uppsrc/Core/Stream.cpp (1226): error: no viable conversion from returned value of type 'StringBuffer' to function return type 'String'


And it points to Line 1226 of Core/Stream.cpp
String LoadFile(const char *filename) {
	FindFile ff(filename);
	if(ff && ff.IsFile()) {
	#ifdef PLATFORM_POSIX
		if(ff.GetLength() == 0) { // handle special cases like /proc/...
			int fd = open(filename,O_RDONLY);
			if(fd >= 0) {
				const int CHUNK = 32768;
				StringBuffer s;
				for(;;) {
					int n = s.GetCount();
					s.SetCount(n + CHUNK);
					int len = read(fd, ~s + n, CHUNK);
					if(len != CHUNK) {
						if(len >= 0)
							s.SetCount(n + len);
						close(fd);
						return s;   <---This Line


Re: New release 2024 "alpha phase" [message #60848 is a reply to message #60846] Thu, 19 September 2024 09:53 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
Sorry, only fixed Win32... Now MacOS and Linux should be fixed as well.
Re: New release 2024 "alpha phase" [message #60849 is a reply to message #60780] Thu, 19 September 2024 11:09 Go to previous messageGo to next message
coolman is currently offline  coolman
Messages: 119
Registered: April 2006
Location: Czech Republic
Experienced Member
Hi Mirek,

Would it be possible to clean up these annoying warnings?

uppsrc/RichText/ParaPaint.cpp (468): warning: unused variable 'pe' [-Wunused-variable]
uppsrc/ide/IconDes/Event.cpp (102): warning: unused variable 'c' [-Wunused-variable]
uppsrc/ide/IconDes/IconDes.cpp (130): warning: unused variable 'isz' [-Wunused-variable]
uppsrc/ide/IconDes/ImlFile.cpp (272): warning: unused function 'PutOctalString' [-Wunused-function]
uppsrc/ide/SelectPkg.cpp:661:3: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
  661 |                 for(int i = 0; i < dlg.list.GetCount(); i++)
      |                 ^
uppsrc/ide/SelectPkg.cpp:658:2: note: previous statement is here
  658 |         if(n)
      |         ^
1 warning generated.


Thank you, Radek
Re: New release 2024 "alpha phase" [message #60850 is a reply to message #60849] Thu, 19 September 2024 11:54 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
coolman wrote on Thu, 19 September 2024 11:09
Hi Mirek,

Would it be possible to clean up these annoying warnings?

uppsrc/RichText/ParaPaint.cpp (468): warning: unused variable 'pe' [-Wunused-variable]
uppsrc/ide/IconDes/Event.cpp (102): warning: unused variable 'c' [-Wunused-variable]
uppsrc/ide/IconDes/IconDes.cpp (130): warning: unused variable 'isz' [-Wunused-variable]
uppsrc/ide/IconDes/ImlFile.cpp (272): warning: unused function 'PutOctalString' [-Wunused-function]
uppsrc/ide/SelectPkg.cpp:661:3: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
  661 |                 for(int i = 0; i < dlg.list.GetCount(); i++)
      |                 ^
uppsrc/ide/SelectPkg.cpp:658:2: note: previous statement is here
  658 |         if(n)
      |         ^
1 warning generated.


Thank you, Radek


Is this GCC?
Previous Topic: Flatpak 2023.2.1 hotfix release
Next Topic: Win32 openssl updated to 3.2.1 version
Goto Forum:
  


Current Time: Wed Jun 11 14:50:03 CEST 2025

Total time taken to generate the page: 0.03145 seconds