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 » U++ 2017.2rc1
U++ 2017.2rc1 [message #48936] Sun, 05 November 2017 19:37 Go to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
2017.2 (rev 11427) (Nov 2017)

U++ now requires C++14 compatible compiler.



Core
====

New AsyncWork class - U++ future-alike tool
CoWork: Exception propagation from worker threads, job cancellation support.
Bits class optimized, it is now possible to set multiple bits (count parameter)
WebSocket refactored for asynchronous operation
UTF-32 support functions, UnicodeCompose and UnicodeDecompose functions, support for UTF16 surrogate pairs
DeleteFolderDeep now deletes symlinks
MakeOne function (alternative to One::Create)
LoadFromFile, StoreToFile - Event variant
ReverseRange and SortedRange
Server Name Indicator support in Socket and HttpRequest
SSL1.1 API support
RegisterGlobalSerialize


GUI programming
===============

ArrayCtrl: Improvements in sorting, new public GetCellRect, GetCellRectM, GetSelKeys, SetRowDisplay, SetColumnDisplay, AcceptRow methods
Button NakedStyle style.
WithDropChoice: Set/Remove entry in drop-down list
TextCtrl::Load refactored, now can break very long (>1MB) lines
TreeCtrl: GetOpenIds, OpenIds
IdCtrls, SqlCtrls refactored, improved
Option: SetColor
Edit...Spin: RoundFromMin modifier method
ColorPopup now has button to enter the color as text
New features in ScatterDraw, ScatterCtrl
Header / Footer can now be changed using paragraph properties
QTFDisplay now ignores text color / paper if style is not normal


TheIDE
======

Improved debugging of console applications with MinGW
MacroManager
Explicit Go to line.. operation (in addition to Navigator)
BRC now supports LZ4, LZMA and Zstd compression
File comparison tool improved
Directory comparison now can show/filter new/modified/removed files
Dark theme highlighting
Duplicate package function
FindAll button in normal Search (finds all occurences in current file)
HexView now remembers position
Selection can be interpreted as error list
now shows the number of selected characters
tab size now possible on per-file basis
Repository synchronize refactored, now supports both svn and git
Layout visgen improvements
theide now supports Visual Studio 2017 C++ compiler auto setup
MS build tools autosetup


3rd party modules
=================

MinGW 64 updated to GCC-7.2.0
OpenSSL for VC++ updated to 1.0.2l
plugin/lz4: lz4 updated to 1.7.3
plugin/bz2: updated to 1.0.6
plugin/jpg: updated to version 9b
plugin/pcre: updated to 8.41
plugin/png: updated to 1.2.57
plugin/sqlite3: updated to 3.17.9
plugin/z: Updated to 1.2.11
plugin/Eigen: Updated to version 3.3.4
Re: U++ 2017.2rc1 [message #48937 is a reply to message #48936] Sun, 05 November 2017 20:28 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
Quote:
2017.2 (rev 11427) (Nov 2017)

U++ now requires C++14 compatible compiler.


Hi

What the oldest compatible gcc version and clang version for this? GCC 6.1 and clang 3.5?

Those two variables from trunk/uppbox/Scripts/domake need to be updated:

minimum_gcc_dumpversion="4.9.0"
minimum_clang_dumpversion="3.5.0"
Re: U++ 2017.2rc1 [message #48942 is a reply to message #48937] Mon, 06 November 2017 10:43 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
amrein wrote on Sun, 05 November 2017 20:28
Quote:
2017.2 (rev 11427) (Nov 2017)

U++ now requires C++14 compatible compiler.


Hi

What the oldest compatible gcc version and clang version for this? GCC 6.1 and clang 3.5?

Those two variables from trunk/uppbox/Scripts/domake need to be updated:

minimum_gcc_dumpversion="4.9.0"
minimum_clang_dumpversion="3.5.0"


I have just succeeded to compile theide with GCC 5.4.0 (thats Ubuntu 16.04 LTS, so it is sort of important).

Clang 3.5 sounds about right.

Note: It is possible to compile theide with Clang 3.4, settings -std=c++11. This excludes AsyncWork, but rest of U++ works fine. I have specifically made this workaround to support Debian 6 Squeeze...

[Updated on: Mon, 06 November 2017 11:03]

Report message to a moderator

Re: U++ 2017.2rc1 [message #48943 is a reply to message #48942] Tue, 07 November 2017 11:02 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
minimum_gcc_dumpversion="5.4.0" added in svn repository. I also fixed clang version validation code.

For clang 3.4 and earlier versions, the user has to manually change -std=c++14 to -std=c++11 in several files:

* domake
* CLANG.bm.in
* GCC.bm.in
* uppsrc/Makefile.in
* uppsrc/uMakefile.in

I don't know if we should support those old clang releases.
Re: U++ 2017.2rc1 [message #48945 is a reply to message #48943] Tue, 07 November 2017 21:19 Go to previous messageGo to next message
Klugier is currently offline  Klugier
Messages: 1075
Registered: September 2012
Location: Poland, Kraków
Senior Contributor
Hello Amrein,

I found that the package "gnome-themes-standard" is require to avoid following warning while running GUI app (For example TheIDE):
Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",


I used KDE, so it might be the default package for all gtk like distribution like Ubuntu, but for KDE it is not. We should add it at least to our "debian" file. Please, let me know what do you think?

Sincerely,
Klugier


U++ - one framework to rule them all.

[Updated on: Tue, 07 November 2017 21:19]

Report message to a moderator

Re: U++ 2017.2rc1 [message #48946 is a reply to message #48945] Wed, 08 November 2017 00:16 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Klugier wrote on Tue, 07 November 2017 21:19
Hello Amrein,

I found that the package "gnome-themes-standard" is require to avoid following warning while running GUI app (For example TheIDE):
Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",


I used KDE, so it might be the default package for all gtk like distribution like Ubuntu, but for KDE it is not. We should add it at least to our "debian" file. Please, let me know what do you think?

Sincerely,
Klugier


Does not seem to be installed by default in gnome based distros...

Mirek
Re: U++ 2017.2rc1 [message #48952 is a reply to message #48946] Wed, 08 November 2017 23:01 Go to previous messageGo to next message
Klugier is currently offline  Klugier
Messages: 1075
Registered: September 2012
Location: Poland, Kraków
Senior Contributor
Hello,

It is minor it only affects terminal output when GUI application is launched via console. I believe we need to solve more important tasks... If you don't like the warning just install the package i mentioned above Smile

Sincerel,
Klugier


U++ - one framework to rule them all.
Re: U++ 2017.2rc1 [message #48958 is a reply to message #48952] Sat, 11 November 2017 15:37 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
I have succeeded to rewrite critical part of code in C++11, so U++ is now C++11 once again....
Re: U++ 2017.2rc1 [message #48962 is a reply to message #48958] Sun, 12 November 2017 13:17 Go to previous messageGo to next message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
Need to fix those files (c++14->c++11) and then rebuild and install umk on U++ server?

./uppbox/Scripts/CLANGMK.bm
./uppbox/Scripts/GCCMK.bm
./uppbox/Scripts/domake
./uppbox/Scripts/upp-devel.spec
./uppsrc/ide/Methods.cpp
./uppsrc/ide/InstantSetup.cpp
Re: U++ 2017.2rc1 [message #48963 is a reply to message #48962] Mon, 13 November 2017 00:16 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
ide/Methods.cpp: c++14 is only in context with android builder, irrelevant otherwise
ide/InstantSetup.cpp: is only active in Windows and there it only setup 'internal' mingw-w64, which we know is GCC 7.2.0 (and thus definitely supports c++14)
ide/domake: c++14 is only in list of variants to try

rest should be fixed....
Re: U++ 2017.2rc1 [message #49047 is a reply to message #48963] Fri, 08 December 2017 15:03 Go to previous messageGo to next message
Novo is currently offline  Novo
Messages: 1358
Registered: December 2006
Ultimate Contributor
Web-documentation is currently broken: https://www.ultimatepp.org/www$uppweb$documentation$en-us.ht ml
Clicking on links in internal documentation doesn't work as well. I checked that on Linux.


Regards,
Novo

[Updated on: Fri, 08 December 2017 16:34]

Report message to a moderator

Re: U++ 2017.2rc1 [message #49048 is a reply to message #49047] Fri, 08 December 2017 19:30 Go to previous message
mirek is currently offline  mirek
Messages: 13975
Registered: November 2005
Ultimate Member
Novo wrote on Fri, 08 December 2017 15:03
Web-documentation is currently broken: https://www.ultimatepp.org/www$uppweb$documentation$en-us.ht ml
Clicking on links in internal documentation doesn't work as well. I checked that on Linux.


Thanks for spotting this, I just checked the top of the space and did not bothered to scroll down... Smile

Should be now fixed.
Previous Topic: Bugs that should be solved in 2017.2?
Next Topic: 2017.2rc2 released
Goto Forum:
  


Current Time: Fri Mar 29 15:45:55 CET 2024

Total time taken to generate the page: 0.01702 seconds