Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WCS tab in Data Source Manager broken (both 3.26 and master)? #49513

Closed
2 tasks done
rduivenvoorde opened this issue Jul 29, 2022 · 9 comments · Fixed by #49974
Closed
2 tasks done

WCS tab in Data Source Manager broken (both 3.26 and master)? #49513

rduivenvoorde opened this issue Jul 29, 2022 · 9 comments · Fixed by #49974
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Data Source Manager Regression Something which used to work, but doesn't anymore WCS data provider

Comments

@rduivenvoorde
Copy link
Contributor

What is the bug or the crash?

After adding a new 'WCS connection' in the dialog, it does not show up in the 'connections dropdown'.

When you add a new connection via the browser, it works though.

Also: when you add it, and give it a name 'test', you do not see it, but if you start over with making a new one, you are asked: 'Should the excisting connection test be overwritten?'..
So it look's like it IS there.

Steps to reproduce the issue

Use the following public WCS url to reproduce (tested here on a recent master and 3.26)
https://geodata.nationaalgeoregister.nl/ahn3/wcs?request=GetCapabilities&service=WCS:

  • open the Data Source Manager
  • click in the left column on the tab WCS
  • create new connection via button New, call the connection 'test'
  • paste the url above in the url input
  • click OK

gnome-shell-screenshot-91g16l

Another observation: when you added the WCS connection successfully via the Browser, all is working fine: 4 layers are shown, and you can load one (please zoom in A LOT on EPSG:28992)
BUT (!) when you open that connection in the Dats Source Dialog, the name is in the dropdown, but if you want to 'edit' the connection, the URL is emtpy?

gnome-shell-screenshot-4u2cl9

Versions

My QGIS 3.22 is working FINE !

My QGIS 3.24 is working FINE !

BUT My QGIS 3.26 has this issue:

QGIS version 3.26.1-Buenos Aires QGIS code revision e80d5e6
Qt version 5.15.4
Python version 3.10.5
GDAL/OGR version 3.5.1
PROJ version 9.0.1
EPSG Registry database version v10.064 (2022-05-19)
GEOS version 3.11.0-CAPI-1.17.0
SQLite version 3.39.1
PostgreSQL client version unknown
SpatiaLite version 5.0.1
QWT version 6.1.4
QScintilla2 version 2.11.6
OS version Debian GNU/Linux bookworm/sid
       
This copy of QGIS writes debugging output.
       
Active Python plugins
db_manager 0.1.20
sagaprovider 2.12.99
grassprovider 2.12.99
MetaSearch 0.3.6
processing 2.12.99

And my Master has this issue:

QGIS version 3.27.0-Master QGIS code revision 876188b
Qt version 5.15.4
Python version 3.10.5
Compiled against GDAL/OGR 3.5.0 Running against GDAL/OGR 3.5.1
PROJ version 9.0.1
EPSG Registry database version v10.064 (2022-05-19)
GEOS version 3.11.0-CAPI-1.17.0
Compiled against SQLite 3.39.0 Running against SQLite 3.39.1
PostgreSQL client version unknown
SpatiaLite version 5.0.1
QWT version 6.1.4
QScintilla2 version 2.11.6
OS version Debian GNU/Linux bookworm/sid
       
This copy of QGIS writes debugging output.
       
Active Python plugins
db_manager 0.1.20
sagaprovider 2.12.99
grassprovider 2.12.99
MetaSearch 0.3.6
processing 2.12.99

AND

Supported QGIS version

  • I'm running a supported QGIS version according to the roadmap.

New profile

  • I tried with a new QGIS profile

Additional context

No response

@rduivenvoorde rduivenvoorde added Regression Something which used to work, but doesn't anymore Bug Either a bug report, or a bug fix. Let's hope for the latter! Data Source Manager labels Jul 29, 2022
@landryb
Copy link
Contributor

landryb commented Aug 25, 2022

i can confirm that this is broken with 3.26.2 on OpenBSD.

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

i can add some new connections via the explorer, they show in the wcs tab in the source manager, and i can connect to them. Adding a new connection in the source manager fails, as in "doesnt show up in the connection list".

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

the "working" WCS connections added by right clicking on WCS in the explorer looks like this in QGIS3.ini:

connections-wcs\rtge%20dev\dpiMode=7
connections-wcs\rtge%20dev\ignoreAxisOrientation=false
connections-wcs\rtge%20dev\ignoreGetMapURI=false
connections-wcs\rtge%20dev\invertAxisOrientation=false
connections-wcs\rtge%20dev\reportedLayerExtents=false
connections-wcs\rtge%20dev\smoothPixmapTransform=false
connections-wcs\rtge%20dev\url=https://wms.xxxx/
connections-wcs\selected=rtge dev
connections-wcs\test\dpiMode=7
connections-wcs\test\ignoreAxisOrientation=false
connections-wcs\test\ignoreGetMapURI=false
connections-wcs\test\invertAxisOrientation=false
connections-wcs\test\reportedLayerExtents=false
connections-wcs\test\smoothPixmapTransform=false
connections-wcs\test\url=aaaa

the ones added via the wcs tab in the data source manager have a weird connections-\qgis\ prefix:

connections-\qgis\connections-wcs\selected=test
connections-\qgis\connections-wcs\test\dpiMode=7
connections-\qgis\connections-wcs\test\ignoreAxisOrientation=false
connections-\qgis\connections-wcs\test\ignoreGetMapURI=false
connections-\qgis\connections-wcs\test\invertAxisOrientation=false
connections-\qgis\connections-wcs\test\reportedLayerExtents=false
connections-\qgis\connections-wcs\test\smoothPixmapTransform=false
connections-\qgis\connections-wcs\test\url=qqq

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

somehow i think it's a regression from a bit in #48192 but i havent dug deeper yet.

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

another data point: the "add WCS connection" widget has a weird title:

image

@rduivenvoorde
Copy link
Contributor Author

somehow i think it's a regression from a bit in #48192 but i havent dug deeper yet.

@3nids does the above change of settings ring a bell for you?

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

also i have a weird connections-WCS\selected=test (with uppercase WCS) which lists the connection name added in the data source manager - which is conflicting with connections-wcs\selected=rtge-dev.

if i manually edit QGIS3.ini, adding "-wcs" suffix to the broken connection, it shows as "qgis" in the selector.

So, to my understanding, when adding a new WCS connection via the data source manager, an extra "connections-\qgis" is added as a prefix in the settings group.

Not that if that matters, this is on OpenBSD but would probably be the same on linux or windows ?

@nicogodet
Copy link
Member

void QgsOWSSourceSelect::mNewButton_clicked()
{
const QgsNewHttpConnection::ConnectionType type = connectionTypeFromServiceString( mService );
QgsNewHttpConnection *nc = new QgsNewHttpConnection( this, type, "/qgis/connections-" + mService.toLower() + '/' );
if ( nc->exec() )
{
populateConnectionList();
emit connectionsChanged();
}
delete nc;
}

"/qgis/connections-" is still passed to QgsNewHttpConnection which is not able to treat the old API compat as there is a / at beginning

if ( mServiceName.startsWith( QLatin1String( "qgis/" ) ) )

Another leftover from #48192

QgsNewHttpConnection nc( nullptr, QgsNewHttpConnection::ConnectionWms, QStringLiteral( "qgis/connections-wms/" ), item->name(), QgsNewHttpConnection::FlagShowHttpSettings );

which is a non-breaker as there is not a / at beginning

@landryb
Copy link
Contributor

landryb commented Aug 26, 2022

wip patch being tested here, thanks to @nicogodet :

Index: src/gui/qgsowssourceselect.cpp
--- src/gui/qgsowssourceselect.cpp.orig
+++ src/gui/qgsowssourceselect.cpp
@@ -273,7 +273,7 @@ QgsNewHttpConnection::ConnectionType connectionTypeFro
 void QgsOWSSourceSelect::mNewButton_clicked()
 {
   const QgsNewHttpConnection::ConnectionType type = connectionTypeFromServiceString( mService );
-  QgsNewHttpConnection *nc = new QgsNewHttpConnection( this, type, "/qgis/connections-" + mService.toLower() + '/' );
+  QgsNewHttpConnection *nc = new QgsNewHttpConnection( this, type, mService.toUpper() );
 
   if ( nc->exec() )
   {
@@ -287,7 +287,7 @@ void QgsOWSSourceSelect::mNewButton_clicked()
 void QgsOWSSourceSelect::mEditButton_clicked()
 {
   const QgsNewHttpConnection::ConnectionType type = connectionTypeFromServiceString( mService );
-  QgsNewHttpConnection *nc = new QgsNewHttpConnection( this, type, "/qgis/connections-" + mService.toLower() + '/', mConnectionsComboBox->currentText() );
+  QgsNewHttpConnection *nc = new QgsNewHttpConnection( this, type, mService.toUpper(), mConnectionsComboBox->currentText() );
 
   if ( nc->exec() )
   {

bob-beck pushed a commit to openbsd/ports that referenced this issue Sep 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Data Source Manager Regression Something which used to work, but doesn't anymore WCS data provider
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants