Welcome to Planet OSGeo

June 22, 2024

Moritz Schillinger joins the club of Maps in the Wild contributors with his first post of this superb map mannequin.

“Last weekend in Paris I discovered a map in the wild myself. I found these artworks in the art center “59 Rivoli”, a former squat which now hosts really cool (temporary) art studios. 

The map mannequin here is from Isabelle Marty (artist’s name @i.m.arty – Instagram). What I can see is that she’s wearing pieces of France, Ireland and the Netherlands. “

Welcome to the club Moritz, keep them coming!

MapsintheWild Map Mannequin in Paris

by Steven at June 22, 2024 09:00 AM

June 21, 2024

Reinder sent us this pic from the Maritime Museum in Rotterdam

“The Maritime Museum in Rotterdam has taken the next step in the field of target group approach and public outreach using the Cultural Target Group Model. “This has given us a shared language and a shared image of our Cultural Target Groups. And more awareness about its importance,” says Layla Salamoun, Head of Marketing, Communications & Development.”

https://www.den.nl/kennis-en-inspiratie/het-culturele-doelgroepenmodel-in-de-praktijk

Seems that giant maps that you can walk on, play on and explore are appear.ing quite often on Mappery, send us more – we love them!

MapsintheWild Kids on the Map

by Steven at June 21, 2024 09:00 AM

June 20, 2024

During the pandemic, people noticed how well they could work remotely, how productive meetings via video call could be, and how well webinars worked. At OPENGIS.ch, this wasn’t news because we have always been 100% remote. However, we missed the unplanned, in-person interactions that occur during meetups with a 🍺or ☕. That’s why we’re very pleased that last week we could join the Swiss QGIS user day for the second time after the pandemic.

OPENGIS.ch has been invested in QGIS since its inception in 2014, actually even before; our CEO Marco started working with QGIS 0.6 in 2004 and our CTO Matthias with version 1.7 in 2012. Since 2019, we have also been the company with the most core committers. We can definitely say that OPENGIS.ch has been one of the main driving forces behind the large adoption of QGIS in Switzerland and worldwide. 

Contributions to the QGIS core measured in commit numbers

Looking at the work done in the QGIS code we’re by far the most prolific company in Switzerland and second worldwide only to North Road Consulting. On top of it, we were the first – and still only one of two- companies to sustain QGIS.org at a Large level since 2021.

This makes us very proud and it is why we’re even happier to see how much that is happening around QGIS in Switzerland aligns with the visions and goals we set out to reach years ago.

The morning started with a presentation by our CTO Matthias “What’s new in QGIS” featuring plenty of work sponsored by the Anwendergruppe CH.

Our CTO Matthias answering QGIS questions

DXF Improvements, the release of SwissLocator 3.0 with swissalti3d and vector tiles integration, and an update on the advances towards solid curve handling in QGIS, a prerequisite for properly handling AV data in Switzerland, were only some of the many noteworthy points he touched.

The highlight of Matthias’ presentation was the better OGC API Features support in QGIS, which was also highlighted in a subsequent talk about Kablo, showing how the next generation of industry solutions (Fachschalen) will be implemented.

Slides: Neues aus der QGIS Welt - QGIS Anwendertag 2024

Following was a short presentation on the project DMAV, Christoph Lauber introduced a project that aims to implement an industry solution for official cadastral surveying with QGIS.

Adrian Wicki of the Federal Office for the Environment (FOEN) and Isabel presented how OPENGIS.ch and the partners Puzzle and Zeilenwerk help the FOEN with the SAM project with assess the hazards of flood, forest fire, or landslides, and warn authorities and the population. With an agile project organisation, the complex project succeeds in fulfilling requirements by applying user-centred development concepts. QGIS is used for visualizing and analyzing data and helping forecasters gain insights into the current situation.

Slides: BAFU_SAM

Andreas Neumann from ETH Zurich and Michael presented the qgis-js project. QGIS-js is an effort to port QGIS core to WebAssembly so that it can be run in a web browser. Although still in the early experimentation phase, this project has great potential to leverage interesting new use cases that weren’t even thinkable before.

Slides: https://boardend.github.io/qgis-js-demo/ 

Olivier Monod from the City of Yverdon presented Kablo, an electricity management proof of concept of the next generation implementation for industry solutions developed in collaboration with OPENGIS.ch.

By applying a middleware based on OGC API Features and Django, Kablo shows how common limitations of current industry solutions (like permission management and atomic operations) can be overcome and how the future brings desktop and web closer together.

Slides: kablo-qgis-user-days

Obviously, it wasn’t just OPENGIS.ch. Sandro Mani from Sourcepole presented the latest and greatest improvements on QWC2, like street view integration and cool QGIS features brought to a beautiful web gis. Andreas Schmid from Kt. Solothurn presented how cool cloud-optimized geotiff (COG) is and what challenges come with it. Interested in the topic? Read more in our report about cloud optimized formats. Mattia Panduri from Canton Ticino explained how they used QGIS to harmonise the cantonal building datasets and Timothée Produit from IG Group SA presented how pic2map helps bring photos to maps. 

To round up the morning, Nyall Dawson from North Road Consulting did a live session around the world to show the latest developments around elevation filtering in QGIS.

In the afternoon, workshops followed. Claas Leiner led a QGIS expression one while Matthias and Michael showed how to leverage QGIS processing for building geospatial data processing workflows. 

The first QGIS model baker user meeting took place in the third room. The participants discussed this fantastic tool we developed to make INTERLIS work smarter and more productive.

First ModelBaker user meeting

It was a very rich and constructive QGIS user day. We came home with plenty of new ideas and a sense of fulfilment, seeing how great the community we observed and helped grow has become.

A big thanks go to the organisers and everyone involved in making such a great event happen. Only the beer in the sunshine was literally watered by the rain. Nevertheless, there were exciting discussions in the station bistro or in the restaurant coaches on the way home.

See you next time and keep contributing 🙂

by Marco Bernasocchi at June 20, 2024 04:45 AM

June 19, 2024

June 18, 2024

GeoTools 29.6 releasedGeoTools team is providing a release of GeoTools 29.6:geotools-29.6-bin.zipgeotools-29.6-doc.zipgeotools-29.6-userguide.zipgeotools-29.6-project.zipThis is an unscheduled release provided to help teams address CVE-2024-36404. Details of this issue will be made available at the end of the month. This is in keeping with our coordinated vulnerability disclosure policy&nbsp

by Jody Garnett (noreply@blogger.com) at June 18, 2024 06:19 PM

Anthony spotted this at East Finchley underground station.

The blurb says:

“Destination East Finchley is a community project, which began in 2017, led by Martin Primary School and funded by the Celebrate Lottery Fund. The project celebrates the journeys made by local residents to live here in the diverse community of East Finchley, N2.

Many of the stories were documented on the circular posterds by those who made the journey, or by their families. The postcards then inspired pupils at Martin Primary School to create poetry on the theme of migration, some of which are displayed here inside the birds.

Each dot on the map represents the place from where a local resident or family originates, reflecting the breath of migration to this small part of London. More Info

MapsintheWild Destination East Finchley

by Steven at June 18, 2024 09:00 AM

This blog post will introduce QField’s brand new plugin framework and walk through the creation of a plugin to support bird watchers in need of a quick way to digitize photos of spotted birds onto a point vector layer.

QField Plugin Snap! in action

A plugin framework is born!

As announced recently, QField now empowers users through a brand new plugin framework allowing for simple customization on the way the application behaves or looks all the way through to creating completely new functionalities.

The plugin framework relies on Qt’s QML engine and JavaScript, allowing for cross-platform support out of the box. This means that plugins will run perfectly fine on all platforms currently supported by QField: Android, iOS, Windows, Linux, and macOS.

App-wide plugin vs. project plugin

First, let’s look at the two types of plugins supported by QField: app-wide plugins and project plugins. As their names imply, the main difference is their scope. An enabled app-wide plugin will remain active as long as QField is running, while project plugins are activated on project load and deactivated when the project tied to the plugin is closed.

Project plugins are shipped alongside a given project file (.qgs/.qgz). Project plugins must share the same name of the project file with a .qml extension. For example, if your project file is birdwatcher.qgz, QField will look for the presence of a birdwatcher.qml to activate the project plugin. For app-wide plugins, installation is done via the plugins manager popup; more on this below.

Distribution of project plugins can be greatly facilitated through QFieldCloud. The presence of project plugins within a cloud project environment will be automatically detected and packaged alongside the project file and its datasets when deployed to QField devices.

Starting with a project plugin

We will start with looking into a simple project plugin that offers a new digitizing mechanism focused on snapping photos as a trigger for point feature addition. This plugin will demonstrate how new functionalities and behaviors can be added to QField to serve specific needs. In this case, the new digitizing mechanism could come in handy for bird watchers and other users in need of a quick way to snap photos!

It’s advised to download a version of QField running on your desktop environment while testing plugins. Links to Windows, Linux, and macOS builds are available here. Once installed, download this project archive containing a tiny birdwatcher sample project and extract it into a new directory on your local machine.

The project archive consists of a point vector layer (observations.gpkg), a project file (birdwatcher.qgz) as well as a project plugin (birdwatcher.qml) which we will look into below. Please note that the point vector layer’s attribute form is already configured to display captured photos. We will not spend time on attribute form setup in this post; see this relevant documentation page if you are interested in knowing how that was achieved.

We can now test the project plugin by opening the project (birdwatcher.qgz) in QField. Users familiar with QField will notice a new ‘camera’ tool button present on the top-right corner of the map canvas. This button was added by the project plugin. You can press on it, to open the QField camera, take a photo (of yourself, a random object on your table, or with a bit of luck a bird), and witness how that leads to a point feature creation.

Digging into the project plugin file

Let’s open the project plugin file (birdwatcher.qml) in your favorite text editor. The first few lines define the QML imports needed by the plugin:

import QtQuick
import QtQuick.Controls

import org.qfield
import org.qgis
import Theme

import "qrc:/qml" as QFieldItems

Beyond the two QtQuick imports, we will make use of QField-specific types and items as well as QGIS ones (registered and declared in this source file), a Theme to retrieve icons and colors as well as QField items such as tool buttons (see this source directory), as well as the QField QML items embedded into the application itself to make use of the camera.

The next line declares an generic Item component which will be used by QField to initiate the plugin. This must be present in all plugins. As this plugin does, you can use the Component.onCompleted signal to trigger code execution. In this case, we are using iface to add a tool button on top of the map canvas:

Component.onCompleted: {
  iface.addItemToPluginsToolbar(snapButton)
}

Just above these lines, the plugin declare a number of properties pointing to items found in the main QField ApplicationWindow:

property var mainWindow: iface.mainWindow()
property var positionSource: iface.findItemByObjectName('positionSource')
property var dashBoard: iface.findItemByObjectName('dashBoard')
property var overlayFeatureFormDrawer: iface.findItemByObjectName('overlayFeatureFormDrawer')

Users can reach through to any items within QField’s ApplicationWindow provided they have an objectName property defined. The string value is used in the iface.findItemByObjectName() function to retrieve the item.

The rest of the file consists of a loader to activate the QField camera, a tool button to snap a photo, and a function to create a new feature within which the current position is used as geometry and the snapped photo is attached to the feature form.

The function itself provides a good example of what can be achieved by using the parts of QGIS exposed through QML, as well as utility functions and user interface provided by QField:

function snap(path) {
  let today = new Date()
  let relativePath = 'DCIM/' + today.getFullYear()
                              + (today.getMonth() +1 ).toString().padStart(2,0)
                              + today.getDate().toString().padStart(2,0)
                              + today.getHours().toString().padStart(2,0)
                              + today.getMinutes().toString().padStart(2,0)
                              + today.getSeconds().toString().padStart(2,0)
                              + '.' + FileUtils.fileSuffix(path)
  platformUtilities.renameFile(path, qgisProject.homePath + '/' + relativePath)
  
  let pos = positionSource.projectedPosition
  let wkt = 'POINT(' + pos.x + ' ' + pos.y + ')'
  
  let geometry = GeometryUtils.createGeometryFromWkt(wkt)
  let feature = FeatureUtils.createFeature(dashBoard.activeLayer, geometry)
      
  let fieldNames = feature.fields.names
  if (fieldNames.indexOf('photo') > -1) {
    feature.setAttribute(fieldNames.indexOf('photo'), relativePath)
  } else if (fieldNames.indexOf('picture') > -1) {
    feature.setAttribute(fieldNames.indexOf('picture'), relativePath)
  }

  overlayFeatureFormDrawer.featureModel.feature = feature
  overlayFeatureFormDrawer.state = 'Add'
  overlayFeatureFormDrawer.open()
}

The QGIS API Documentation site is a good resource for learning what parts of the many QGIS classes are exposed to QML. For example, the QgsFeature documentation page contains a Properties section and a Q_INVOKABLE prefix next to functions indicating their availability within a QML/JavaScript environment.

Deployment of a project plugin via QFieldCloud

As mentioned above, QFieldCloud greatly eases the deployment of project plugins to devices in the field. We will now go through the steps required to create a cloud project environment based on the birdwatcher sample project, and witness it handling the project plugin automatically.

This will require you to registered for a freely available QFieldCloud community account if you haven’t done so yet (it takes a minute to do so, what are you waiting for 😉 ). We will also need the QFieldSync plugin in QGIS, which can be enabled through the QGIS plugin manager.

Let’s open QGIS, and log into QFieldCloud by clicking on the QFieldSync toolbar’s blue cloud icon. Once logged in, click on the ‘Create New Project’ tool button found at the bottom of the dialog.

In the subsequent panel dialog, choose the ‘Create a new empty QFieldCloud project’ and then hit the ‘Next’ button. Give it a name and a description, and for the local directory, pick the folder within which you had extracted the birdwatcher project, then hit the ‘Create’ button.

QFieldSync will then ask you to upload your newly created cloud project environment to the server. Notice how the project plugin file (birdwatcher.qml) is part of the files to be delivered to the cloud. Confirm by clicking on the ‘Upload to server’ button.

When QFieldSync is finished uploading, you are ready to take your mobile device, open QField, log into your QFieldCloud account and download the cloud project. Once the cloud project is loaded, you will be asked for permission to load the project plugin, which you can grant on a permanent or one-time basis.

Bravo! You have successfully deployed a project plugin through QFieldCloud.

Creating an app-wide plugin directory

Let’s move on to creating a functional app-wide plugin directory. Download this sample app-wide plugin and extract it into a new directory placed in the ‘plugins’ directory, itself found within the QField app directory. The location of the app directory is provided in the ‘About QField’ overlay, take note of it prior to extracting the plugin if you have not done so yet.

As seen in the screenshot above, which demonstrates the directory hierarchy, a given plugin directory must contain at least two files: a main.qml file, which QField will use to activate the plugin, and a metadata.txt file containing basic information on the plugin, such as the plugin name, author details, and version.

Here’s a sample metadata.txt from the birdwatcher project plugin upgraded into an app-wide plugin:

[general]
name=Snap!
description=Digitize points through snapping photos
author=OPENGIS.ch
icon=icon.svg
version=1.0
homepage=https://www.opengis.ch/

Opening main.qml in your favourite text editor will reveal that it has the exact same content as the above-shared project plugin. The only change is the renaming of birdwatcher.qml to main.qml to take into account this plugin’s app-wide scope.

PSA: we have setup this GitHub QField template plugin repository to ease creation of plugins. Fork at will!

Deploying app-wide plugins

While currently not as smooth as deploying a project plugin through QFieldCloud, app-wide plugins can be installed onto devices using a URL pointing to a zipped archive file containing the content of a given plugin directory. The zipped archive file can then be hosted on your own website, on a GitHub or GitLab repository, a Dropbox link, etc.

In QField, open the plugins manager popup found in the settings panel, and use the ‘Install plugin from URL’ button to paste a URL pointing to a zipped plugin file.

You should keep the zipped archive file name consistent for a better user experience, as it is used to determine the installation directory. This is an important consideration to take into account when offering plugin updates. If your zipped plugin file name changes, the plugin will not be updated but rather added to a new directory alongside the previously installed plugin.

QField does allow for a version tag to be added to a zipped archive file name, provided it is appended at the end of the file name, preceded by a dash, and includes only numbers and dots. For example, myplugin-0.0.1.zip and myplugin-0.2.1.zip will install the plugin in the myplugin directory.

Empowering users as well as developers

Here at OPENGIS.ch, we believe this new plugin framework empowers not only users but also developers, including our very own ninjas! With plugin support, we now have the possibility to develop answers to specific field scenarios that would not necessarily be fit for QField-wide functionalities. We would love to hear your opinion and ideas.

If you would like to supercharge your fieldwork and need some help, do not hesitate to contact us – your projects are our passion 💚

P.S. If you are developing a cool QField plugin, also let us know! 🙂

Bird SVG in video CC-BY https://svgrepo.com/svg/417419/bird

by Mathieu at June 18, 2024 04:45 AM

GeoServer 2.25.2 release is now available with downloads (bin, war, windows), along with docs and extensions.

This is a stable release of GeoServer recommended for production use. This release is made ahead of schedule to address an urgent bug or security vulnerability (see CVE-2024-36401 below). GeoServer 2.25.2 is made in conjunction with GeoTools 31.2, and GeoWebCache 1.25.2.

Thanks to Jody Garnett (GeoCat) for making this release on behalf of GeoCat customers.

Security Considerations

This release addresses security vulnerabilities and is considered an essential upgrade for production systems.

  • CVE-2024-36401 Critical
  • CVE-2024-34696 Moderate
  • CVE-2024-35230 Moderate
  • CVE-2024-24749 Moderate

The details of this vulnerability will be made available at the end of the month providing an opportunity to update.

The use of the CVE system allows the GeoServer team to reach a wider audience than blog posts. See the project security policy for more information on how security vulnerabilities are managed.

Demo Requests page rewritten

The Demo Request page has been rewritten to use JavaScript to issue POST examples. This provides a much better user experience:

  • Show Result lists the response headers to be viewed along side the returned result (with an option for XML pretty printing).
  • Show Result in a New Page is available to allow your browser to display the result.

The WCS Request Builder and WPS Request Builder demos now have the option to show their results in Demo Requests page. Combined these changes replace the previous practice of using an iframe popup, and have allowed the TestWfsPost servlet to be removed.

For more information please see the Demo requests in the User Guide.

Thanks to David Blasby (GeoCat) for these improvements, made on behalf of the GeoCat Live project.

  • GEOS-11390 Replace TestWfsPost with Javascript Demo Page

Release notes

New Feature:

  • GEOS-11390 Replace TestWfsPost with Javascript Demo Page

Improvement:

  • GEOS-11351 Exact term search in the pages’ filters

Bug:

  • GEOS-7183 Demo request/wcs/wps pages incompatible with HTTPS/PKI
  • GEOS-11416 GeoPackage output contains invalid field types when exporting content from PostGIS
  • GEOS-11430 CiteComplianceHack not correctly parsing the context

Task:

  • GEOS-11411 Upgrade to ImageIO-EXT 1.4.11
  • GEOS-11426 Rework community dependency packaging to use module’s dependencies
  • GEOS-11429 Split COG community module packaging based on target cloud provider
  • GEOS-11432 Upgrade to ImageIO-EXT 1.4.12

For the complete list see 2.25.2 release notes.

Community Updates

Community module development:

  • GEOS-11412 Remove reference to JDOM from JMS Cluster (as JDOM is no longer in use)
  • GEOS-11413 STAC uses inefficient dabase queries when asking for collections in JSON format

Community modules are shared as source code to encourage collaboration. If a topic being explored is of interest to you, please contact the module developer to offer assistance.

About GeoServer 2.25 Series

Additional information on GeoServer 2.25 series:

Release notes: ( 2.25.2 | 2.25.1 | 2.25.0 | 2.25-RC )

by Jody Garnett at June 18, 2024 12:00 AM

GeoServer 2.24.4 release is now available with downloads (bin, war, windows), along with docs and extensions.

This is a maintenance release of GeoServer providing existing installations with minor updates and bug fixes. It also includes security vulnerability fixes.

GeoServer 2.24.4 is made in conjunction with GeoTools 30.4, and GeoWebCache 1.24.4.

Thanks to Peter Smythe (AfriGIS) for making this release.

Security Considerations

This release addresses security vulnerabilities and is considered an essential upgrade for production systems.

  • CVE-2024-36401 Critical
  • CVE-2024-34696 Moderate
  • CVE-2024-24749 Moderate

The details of this vulnerability will be made available at the end of the month providing an opportunity to update.

The use of the CVE system allows the GeoServer team to reach a wider audience than blog posts. See project security policy for more information on how security vulnerabilities are managed.

Demo Requests page rewritten

The Demo Request page has been rewritten to use JavaScript to issue POST examples. This provides a much better user experience:

  • Show Result lists the response headers to be viewed along side the returned result (with an option for XML pretty printing).
  • Show Result in a New Page is available to allow your browser to display the result.

The WCS Request Builder and WPS Request Builder demos now have the option to show their results in Demo Requests page. Combined these changes replace the previous practice of using an iframe popup, and have allowed the TestWfsPost servlet to be removed.

For more information please see the Demo requests in the User Guide.

Thanks to David Blasby (GeoCat) for these improvements, made on behalf of the GeoCat Live project.

  • GEOS-11390 Replace TestWfsPost with Javascript Demo Page

Release notes

New Feature:

  • GEOS-11390 Replace TestWfsPost with Javascript Demo Page

Improvement:

  • GEOS-11311 Show a full stack trace in the JVM stack dump panel
  • GEOS-11369 Additional authentication options for cascaded WMS WMTS data stores
  • GEOS-11400 About Page Layout and display of build information
  • GEOS-11401 Introduce environmental variables for Module Status page

Bug:

  • GEOS-7183 Demo request/wcs/wps pages incompatible with HTTPS/PKI
  • GEOS-11202 CAS extension doesn’t use global “proxy base URL” setting for service ticket
  • GEOS-11331 OAuth2 can throw a “ java.lang.RuntimeException: Never should reach this point”
  • GEOS-11332 Renaming style with uppercase/downcase empty the sld file
  • GEOS-11382 The interceptor “CiteComplianceHack” never gets invoked by the Dispatcher Servlet
  • GEOS-11385 Demo Requests functionality does not honour ENV variable PROXY_BASE_URL
  • GEOS-11416 GeoPackage output contains invalid field types when exporting content from PostGIS
  • GEOS-11430 CiteComplianceHack not correctly parsing the context

Task:

  • GEOS-11318 Upgrade postgresql from 42.6.0 to 42.7.2
  • GEOS-11374 Upgrade Spring version from 5.3.33 to 5.3.34
  • GEOS-11375 GSIP 224 - Individual contributor clarification
  • GEOS-11393 Upgrade commons-io from 2.12.0 to 2.16.1
  • GEOS-11395 Upgrade guava from 32.0.0 to 33.2.0
  • GEOS-11397 App-Schema Includes fix Integration Tests
  • GEOS-11402 Upgrade PostgreSQL driver from 42.7.2 to 42.7.3
  • GEOS-11403 Upgrade commons-text from 1.10.0 to 1.12.0
  • GEOS-11404 Upgrade commons-codec from 1.15 to 1.17.0

For the complete list see 2.24.4 release notes.

Community Updates

Community module development:

  • GEOS-11040 Could not get a ServiceInfo for service Features thus could not check if the service is enabled
  • GEOS-11381 Error in OIDC plugin in combination with RoleService
  • GEOS-11412 Remove reference to JDOM from JMS Cluster (as JDOM is no longer in use)

Community modules are shared as source code to encourage collaboration. If a topic being explored is of interest to you, please contact the module developer to offer assistance.

About GeoServer 2.24 Series

Additional information on GeoServer 2.24 series:

Release notes: ( 2.24.4 | 2.24.3 | 2.24.2 | 2.24.1 | 2.24.0 | 2.24-RC )

by Peter Smythe at June 18, 2024 12:00 AM

June 17, 2024

June 16, 2024

June 15, 2024

June 14, 2024

Oslandia is the main partner of OPENGIS.ch around QField. We are proud today to forward the announcement of the new QField release 3.3 “Darién”. This release introduces a brand new plugin framework that empowers users to customize and add completely new functionalities to their favourite field application.

The plugin framework comes with other new features and improvements for this release, detailed below.

Main highlights

One of the biggest feature additions of this version is a brand new drawing tool that allows users to sketch out important details over captured photos or annotate drawing templates. This was a highly requested feature, which is brought to all supported platforms (Android, iOS, Windows, macOS, and, of course, Linux) with the financial support of the Swiss QGIS user group.

Also landing in this version is support for copying and pasting vector features into and from the clipboard. This comes in handy in multiple ways, from providing a quick and easy way to transfer attributes from one feature to another through matching field names to pasting the details of a captured feature in the field into a third-party messenger, word editing, or email application. Copying and pasting features can be done through the feature form’s menu as well as long pressed over the map canvas. Moreover, a new feature-to-feature attributes transfer shortcut has also been added to the feature form’s menu. Appreciation to Switzerland, Canton of Lucerne, Environment and Energy for providing the funds for this feature.

The feature form continues to gain more functionalities; in this version, the feature form’s value map editor widget has gained a new toggle button interface that can help fasten data entry. The interface replaces the traditional combo box with a series of toggle buttons, lowering the number of taps required to pick a value. The German Archaeological Institut – KulturGutRetter sponsored this feature.

Other improvements in the feature form include support for value relation item grouping and respect for the vector layer attributes’ « reuse last entered value » setting.

Finally, additional features include support for image decoration overlay, a new interface to hop through cameras (front, back, and external devices) for the ‘non-native’ camera, the possibility to disable the 3-finger map rotation gesture, and much more.

User experience improvements

Long-time users of QField will notice the new version restyling of the information panels such as GNSS positioning, navigation, elevation profile, and sensor data. The information is now presented as an overlay sitting on top of the map canvas, which increases the map canvas’ visibility while also achieving better focus and clarity on the provided details. With this new version, all details, including altitude and distance to destination, respect user-configured project distance unit type.

The dashboard’s legend has also received some attention. You can now toggle the visibility of any layer via a quick tap on a new eye icon sitting in the legend tree itself. Similarly, legend groups can be expanded and collapsed directly for the tree. This also permits you to show or hide layers while digitizing a feature, something which was not possible until now. The development of these improvements was supported by Gispo and sponsored by the National Land Survey of Finland.

Plugin framework

QField 3.3 introduces a brand new plugin framework using Qt’s powerful QML and JavaScript engine. With a few lines of code, plugins can be written to tweak QField’s behaviour and add new capabilities. Two types of plugins are possible: app-wide plugins as well as project-scoped plugins. To ensure maximum ease of deployment, plugin distribution has been made possible  through QFieldCloud! Amsa provided the financial contribution that brought this project to life.

Our partner OPENGIS.ch will soon offer a webinar to discover how QField plugins can help your field (and business) workflows by allowing you to be even more efficient in the field.

Users interested in authoring plugins or better understanding the framework, can already visit the dedicated documentation page and a sample plugin implementation sporting a weather forecast integration.

A question concerning QField ? Interested in QField deployment ? Do not hesitate to contact Oslandia to discuss your project !

 

by Vincent Picavet at June 14, 2024 01:10 PM

Thanks to generous supporters, we are in the wonderful position to be able to announce that another project is successfully funded:

    Our thanks go out to:

    for providing the additional funding to top up the QGIS Grant Programme contribution for QEP#248.

    The next proposals on the wait list are:

    If you want to help make these improvement a reality, please get in touch.

    by underdark at June 14, 2024 06:30 AM

    Location: Remote, preferably with at least 4h overlap to CEST office hours

    Employment Type: Full-time (80-100%)

    About OPENGIS.ch:

    OPENGIS.ch is a team of Full-Stack GeoNinjas offering personalized open-source geodata solutions to Swiss and international clients. We are dedicated to using and developing open-source tools, providing flexibility, scalability, and future-proof solutions, and playing a key role in the free and open-source geospatial community. We pride ourselves on our agile and distributed nature, which allows us to have a motivated and multicultural team that supports each other in working together.

    Job Description:

    We are seeking a passionate and skilled Django Full-Stack Engineer with a strong affinity for DevOps to join our team. The ideal candidate will work primarily on QFieldCloud, our cutting-edge cloud-based solution that brings QGIS projects to the field. You will help develop and maintain the full stack of the QFieldCloud platform, ensuring high performance and stability and implementing new features.

    Responsibilities:

    • Develop, test, and maintain the QFieldCloud platform using Django, Python, PostgreSQL and other modern web technologies.
    • Collaborate with cross-functional teams to define, design, and ship new features.
    • Ensure the performance, quality, and responsiveness of the application.
    • Identify and correct bottlenecks and fix bugs.
    • Help maintain code quality, organization, and automation.
    • Work closely with the DevOps team to manage and optimize deployment pipelines, including Docker, Kubernetes, and other containerization and orchestration technologies.
    • Provide technical guidance and support to clients regarding deployment and usage of the platform.

    Qualifications:

    • Strong experience with Django and Python in a full-stack capacity.
    • Proficiency in front-end technologies, including JavaScript, HTML5, and CSS3.
    • Experience with Linux, Docker (compose), K8s, Git, and PostgreSQL.
    • Familiarity with geospatial concepts and web GIS applications is a plus.
    • Good understanding of software deployment, containerization, and continuous integration practices.
    • Excellent problem-solving skills and ability to work independently.
    • Strong communication skills and ability to work in a distributed team environment.
    • Fluency in English; knowledge of German, French, Italian, Spanish, or Romansh is a plus.

    Perks:

    At OPENGIS.ch, we enjoy a variety of perks that make our work experience rewarding. Here’s what we get:

    • Flexible Work Hours: We have the freedom to set our own schedules, which helps us better manage our personal and professional lives.
    • Remote Work Opportunities: We can work from anywhere, giving us the flexibility to choose our work environment.
    • Learning and Development: We are encouraged to grow professionally with access to training programs and workshops.
    • Innovative Environment: We thrive in an atmosphere that’s at the forefront of GIS technology, which keeps our work exciting.
    • Collaborative Team: We value teamwork and the exchange of ideas, making our workplace dynamic and supportive.

    Questions for Applicants:

    • What’s your experience with software deployment and containers?
    • What is your favourite Django app? Why? Have you ever upstreamed a patch in Django or an app? if so, please provide a link to the pull request.
    • What is the error in the featured image of this post?
    • What did you last learn out of interest?

    How to Apply:

    If you are excited about this opportunity and meet the qualifications, please submit an application at opengis.ch/jobs

    Join us at OPENGIS.ch and become a part of our mission to provide innovative open-source geospatial solutions! 🌍💻🚀

    by Marco Bernasocchi at June 14, 2024 04:47 AM

    June 13, 2024

    Since 2018 and the arrival of Loïc Bartoletti, Oslandia has accelerated its focus on topography and topology within and around QGIS.

    Two questions have driven this focus:

    • How to draw directly in GIS by integrating drawing tools inspired by the CAD world into QGIS.
    • How to integrate plugins for topographic calculations directly into QGIS.

    To address this, Oslandia has worked on several fronts: training, developing open-source plugins, and improvements in QGIS.

    1- Plugins

    The following plugins were developed by Oslandia or partners, with contributions from Oslandia:

    These plugins can be used at different stages of a project. They can be used all together or only those needed and integrated into workflows.

    2- Improvements on QGIS

    Oslandia also focuses on improving the core of QGIS. Last years, our teams have worked on:

    — Integration of shape tools: circles, ellipses, rectangles, regular polygons, etc.
    — Improvement of snapping tools.
    — Enhancement of Z and M coordinate support.
    — Improvement of topological tools (relationships between geometries).

    Coming soon is the possibility to use geometry and topology validation and correction plugins directly in QGIS processing tools, developed by Jacky Volpès and Loïc Bartoletti.

    3- Training

    Oslandia is QUALIOPI certified and offers a training program around QGIS and QField:

    « In 2023, 89 people were trained by Oslandia, who recommend our training at 90.9%.»

    4- And QField ?

    Since our partnership with OPENGIS.ch, Oslandia offers QField Cloud server deployment services, training, and QField support.

    5- Coming Soon!

    Several technical posts are being prepared: how to open CAD files in a GIS? What are the differences between QField and LSCI? You will find them on our website in the coming weeks. 🙂

    Additionally, we are preparing a white paper on the topic of migrating from CAD to QGIS, which we should release in September.

    Stay tuned!

     

    by Caroline Chanlon at June 13, 2024 06:34 AM

    GeoServer 2.23.6 release is now available with downloads (bin, war, windows), along with docs and extensions.

    This series has previously reached end-of-life, with this release issued to address an urgent bug or security vulnerability (see CVE-2024-36401 below).

    This GeoServer 2.23.6 update is provided as a temporary measure. Rather plan to upgrade to a stable GeoServer 2.25.2 or maintenance GeoServer 2.24.4.

    GeoServer 2.23.6 is made in conjunction with GeoTools 29.6, and GeoWebCache 1.23.5.

    Thanks to Jody Garnett (GeoCat) for making this release on behalf of GeoCat customers.

    Security Considerations

    This release addresses security vulnerabilities and is considered an essential update for production systems.

    • CVE-2024-36401 Critical
    • CVE-2024-24749 Moderate

    The details of this vulnerability will be made available at the end of the month providing an opportunity to update.

    See project security policy for more information on how security vulnerabilities are managed.

    Release notes

    Improvement:

    • GEOS-11327 Add warning about using embedded data directories
    • GEOS-11347 STAC Landing Page links should include root link

    Bug:

    • GEOS-11331 OAuth2 can throw a “java.lang.RuntimeException: Never should reach this point”

    Task:

    For the complete list see 2.23.6 release notes.

    Community Updates

    Community module development:

    • GEOS-11348 JMS cluster does not allow to publish style via REST “2 step” approach
    • GEOS-11358 Feature-Autopopulate Update operation does not apply the Update Element filter
    • GEOS-11381 Error in OIDC plugin in combination with RoleService
    • GEOS-11412 Remove reference to JDOM from JMS Cluster (as JDOM is no longer in use)

    Community modules are shared as source code to encourage collaboration. If a topic being explored is of interest to you, please contact the module developer to offer assistance.

    About GeoServer 2.23 Series

    Additional information on GeoServer 2.23 series:

    Release notes: ( 2.23.6 | 2.23.5 | 2.23.4 | 2.23.3 | 2.23.2 | 2.23.1 | 2.23.0 | 2.23-RC1 )

    by Jody Garnett at June 13, 2024 12:00 AM

    June 12, 2024

    June 11, 2024

    QField 3.3 has been released, and with it, we are proud to introduce a brand new plugin framework that empowers users to customize and add completely new functionalities to their favourite field application. That’s on top of a bunch of new features and improvements added during this development cycle. What preceded this moment was just the beginning!

    Main highlights

    One of the biggest feature additions of this version is a brand new drawing tool that allows users to sketch out important details over captured photos or annotate drawing templates. This was a highly requested feature, which we are delighted to bring to all supported platforms (Android, iOS, Windows, macOS, and, of course, Linux) with the financial support of the Swiss QGIS user group.

    Also landing in this version is support for copying and pasting vector features into and from the clipboard. This comes in handy in multiple ways, from providing a quick and easy way to transfer attributes from one feature to another through matching field names to pasting the details of a captured feature in the field into a third-party messenger, word editing, or email application. Copying and pasting features can be done through the feature form’s menu as well as long pressed over the map canvas. If copy pasting ain’t your style, a new feature-to-feature attributes transfer shortcut has also been added to the feature form’s menu. Appreciation to Switzerland, Canton of Lucerne, Environment and Energy for providing the funds for this feature.

    The feature form continues to gain more functionalities; in this version, the feature form’s value map editor widget has gained a new toggle button interface that can help fasten data entry. The interface replaces the traditional combo box with a series of toggle buttons, lowering the number of taps required to pick a value. If you enjoy this as much as we do, send a virtual thanks to German Archaeological Institut – KulturGutRetter, which sponsored this feature.

    Other improvements in the feature form include support for value relation item grouping and respect for the vector layer attributes’ “reuse last entered value” setting.

    Finally, additional features that are sure to please include support for image decoration overlay, a new interface to hop through cameras (front, back, and external devices) for the ‘non-native’ camera, the possibility to disable the 3-finger map rotation gesture, and much more.

    User experience improvements

    Long-time users of QField will notice the new version restyling of the information panels such as GNSS positioning, navigation, elevation profile, and sensor data. The information is now presented as an overlay sitting on top of the map canvas, which increases the map canvas’ visibility while also achieving better focus and clarity on the provided details. While revisiting these information panels, we’ve made sure all details, including altitude and distance to destination, respect user-configured project distance unit type.

    The dashboard’s legend has also received some attention. You can now toggle the visibility of any layer via a quick tap on a new eye icon sitting in the legend tree itself. Similarly, legend groups can be expanded and collapsed directly for the tree. This also permits you to show or hide layers while digitizing a feature, something which was not possible until now. The development of these improvements was supported by Gispo and sponsored by the National Land Survey of Finland.

    Plugin framework

    Last but far away from least, QField 3.3 introduces a brand new plugin framework using Qt’s powerful QML and JavaScript engine. With a few lines of code, plugins can be written to tweak QField’s behaviour and add breathtaking capabilities. Two types of plugins are possible: app-wide plugins as well as project-scoped plugins. To ensure maximum ease of deployment, we have enabled project plugin distribution through QFieldCloud! We extend our heartfelt thanks to Amsa for the financial contribution that brought this incredible project to life.

    Stay tuned for an upcoming webinar and a dedicated post that will dive into how QField plugins can revolutionize your field (and business) workflows by allowing you to be even more efficient in the field.

    Users interested in authoring plugins or better understanding the framework can already visit the dedicated documentation page, a sample plugin implementation sporting a weather forecast integration and our latest blog article.

    by Mathieu at June 11, 2024 04:50 AM

    June 10, 2024

    June 09, 2024

    June 08, 2024

    June 07, 2024

    QGIS User Groups all over the world have become an essential component of the QGIS community. They provide a point of contact for local users and developers and help people connect through localized communication channels or by organizing events.

    Another important aspect of users groups is that many of them also have become sustaining members of QGIS.ORG. In total, their contributions account for a significant share of our project budget.

    The Danish User Group now has opened a new chapter by becoming the first user group supporting QGIS on the Flagship level. And that’s a reason to celebrate 🥳 and to reminisce. For example, about the awesome time we had at the first QGIS User Conference organized at the University of Copenhagen campus in Nødebo.

    And who can forget how we all struggled to pronounce QGIS 2.16 “Nødebo”?

    And how the “ø” upset some services? Good times.

    Thank you very much to everyone from the Danish user group and to all the other user groups, small and large, who support QGIS our project and help make it even better for everyone.

    by underdark at June 07, 2024 05:34 AM

    June 06, 2024

    On June 5th, SERDEX International awarded prizes to four companies that stood out in the region. Mapgears was one of the winning companies in the “Sustained Growth in Exportation” category. As mentioned by Daniel Morissette, President of Mapgears:

    This award is a recognition for the entire Mapgears team: we sell software, and our raw materials to make it are the brains, skills, and creativity of the team members… without all the team members, none of this would have been possible.

    Photo Credit: Journal Le Quotidien

    To learn more about this wonderful evening and the incredible companies that were honored, we invite you to read the article in Le Quotidien newspaper right here! (French only)

    The post Mapgears wins the regional MercadOr award in the category ‘Sustained Growth in Exportation’ appeared first on Mapgears.

    by ablanchette at June 06, 2024 03:24 PM

    Vaisigano is a prototype citizen science project focused on fresh water resources by National University of Samoa and The Übersee Museum. On Instagram @s_vaisigano and on Facebook Citizen Science Vaisigano. Vaisigano is the name of the river in Samoa by the University.

    Last year I was involved to help develop the prototype mobile-first web app for geolocated data collection ahead of a visit to the field with biologists and students.

    Aimed at non specialist university students to use in the field to help survey and record measurements and observations for river quality health along a river in Samoa. The purpose of this first app is to show possibilities and demonstration for future solutions. River and water quality measurements can involve surveys for invertebrates (aquatic insects), pH of the water, turbidity, velocity, temperature etc. Traditionally such surveys were taken, recorded on paper and input later back in the laboratory. A mobile device out in the field can also have documents, multimedia and tutorials to guide users.  The project involved research into Citizen Science projects. Many good platforms exist, for example ODK or Kobo which can have very complex and detailed logic for forms but it was decided that a more user friendly and casual approach would be better.

    The front page gives a brief outline, a call to action button “Start Collecting”, two summary tables of the latest observations and the latest active users.

    The main aims:

    • Sustainable – able to run on its own
    • Collect data in a continuous manner 
    • Accessible and easy to use
    • Handheld
    • Benefit learning for curriculum
    • Incorporate reinforcement rewards, feedback
    • Surveys should be georeferenced
    • Review of previous surveys

    Some of the challenges included GPS variability in forest, using mobile devices and water, and bandwidth requirements in the field.

    The app showed tips before starting.

    The application was designed around 3 types of data forms. physical, biological and chemical

    Each form had a time and location which used browser / GPS geolocation. Users could move the location if they wanted.

    Physical

    • River width
    • River depth
    • Has it been raining or not?
    • What evidence of water user can you see (fishing, boats, use for homes, irrigation, etc)
    • What man made structures can you see (e.g. weirds, dams, wells, bypass channels etc
    • On the surface. Can you see foam, litter, oil on the surface?
    • What land use is around the site (pasture, town, forest etc)
    • Flow regime. (pools, ripples, waterfalls, rapids, cascade etc)
    • What is the colour of the water (clear, murky etc)
    • Estimate the water flow (still, slower, or faster than walking speed etc)
    • Turblence of water (calm, turbulent)
    • Images looking down stream showing both banks

    Chemical
    These needed a kit to help complete

    • Water temperature
    • Water acidity
    • Conductivity
    • Nitrates
    • Phosphates

    Biological

    • Description of the river bank and vegetation and what % of the river is shade
    • What evidence of aquatic life: plants below surface, emerging, floating. Fish, insects etc
    • Substrates – boulders, stones, gravel, sand, organic matter etc
    • Macroinvertables
      • From kick sampling
      • These allowed users to add a name with a count and attach images.
      • Some species would be pre-populatated in the boxes.

    The site has an admin page which allows editing and reviewing of contributions and allows them to download all the data as a spreadsheet and to download the images zipped up.

    The site has a simple scoring for users based on number of contributions, and shows feedback of their contributions so that people can see the reports coming in and the nature of them

    Vaisigano.org

    code on github

    by tim at June 06, 2024 03:14 PM

    Easy command history navigation through the History browser panel Linda’s work in her own words During my master’s studies, I began contributing to the enhancement of the GRASS GIS user interface (GUI). My main goal was to increase its user-friendliness, making GRASS accessible not only to experienced users with scripting knowledge but also to GIS beginners. Over the years, I have worked on several projects, including: “Creation of a new GRASS GIS startup mechanism”, “First steps towards a new GRASS GIS Single-Window GUI “, “Redesigning a map display status bar combo box into a new settings dialog “, “Improving Single-Window GUI user experience”.

    June 06, 2024 11:12 AM

    We are thrilled to announce that the Best of Swiss Apps Enterprise winner 2022, QField, has been officially recognized as a Digital Public Good by the UN-endorsed Digital Public Goods Alliance. This prestigious recognition highlights QField’s significant contributions to six key Sustainable Development Goals (SDGs): SDG 6 (Clean Water and Sanitation), SDG 9 (Industry, Innovation, and Infrastructure), SDG 11 (Sustainable Cities and Communities), SDG 13 (Climate Action), SDG 15 (Life on Land), and SDG 16 (Peace, Justice, and Strong Institutions). The “Swiss Made Software” QField is the leading fieldwork application with almost 1 Million downloads worldwide.

    Leading the Way in Fieldwork Technology

    QField stands out as the leading fieldwork app, designed to bring the power of geospatial data collection and management to the fingertips of users worldwide. Developed with a user-centric approach, QField allows seamless integration with QGIS, providing a robust and intuitive platform for data collection, visualization, and analysis directly in the field. This recognition as a Digital Public Good underscores QField’s vital role in advancing digital solutions for sustainable development.

    QField 3.2 Statistics

    Accessible for Everyone

    One of QField’s key strengths is its ease of use, making it accessible not only to professionals but also to students, researchers, and community members. Its intuitive interface ensures that users with varying levels of technical expertise can efficiently collect and manage geospatial data. This inclusivity promotes wider adoption and engagement, enhancing the app’s impact across different sectors and communities.

    Land surveying project Tonga

    Exemplary Open Source Project

    At the heart of QField’s success is its commitment to technological excellence and open-source principles. As an exemplary open-source project, QField fosters a collaborative environment where developers and users alike contribute to continuous improvement and innovation. QField frequently contributes back to its upstream project, QGIS, ensuring mutual growth and enhancement of both platforms. This community-driven approach not only enhances the app’s functionality but also ensures that it remains accessible and adaptable to diverse needs across the globe.

    Supporting Sustainable Development Goals

    QField’s capabilities extend beyond just one aspect of the United Nations Sustainable Development Goals (SDGs); they intersect with multiple goals, enhancing efforts towards a sustainable future:

    • SDG 6: Clean Water and Sanitation: QField facilitates efficient water quality monitoring and management, ensuring communities have access to clean and safe water.
    • SDG 9: Industry, Innovation, and Infrastructure: By providing cutting-edge tools for infrastructure planning and development, QField drives innovation in various industries.
    • SDG 11: Sustainable Cities and Communities: QField supports urban planning and sustainable development, contributing to the creation of resilient and inclusive cities.
    • SDG 13: Climate Action: The app enables precise data collection for climate research and environmental monitoring, aiding in climate action initiatives.
    • SDG 15: Life on Land: QField aids in biodiversity assessments and conservation efforts, promoting the sustainable use of terrestrial ecosystems.
    • SDG 16: Peace, Justice, and Strong Institutions: Through its reliable and transparent data management capabilities, QField supports the development of strong institutions and governance systems.
    Post-disaster assessment Tonga

    A Future of Innovation and Sustainability

    As we celebrate this recognition, we remain committed to pushing the boundaries of what is possible in fieldwork technology. QField will continue to evolve, driven by the needs of its global user base and the imperative to support sustainable development. We invite all stakeholders to join us on this journey towards a more sustainable and equitable future.

    Land surveying project Tonga

    For more information about QField and its contributions to the SDGs, please visit https://qfield.org/sdgs.html

    Media Contact:

    Marco Bernasocchi is happy to receive interview requests or queries about the project.
    Email: marco@opengis.ch
    Phone: +41 79 467 24 70 (14:00 – 18:00 CET)

    OPENGIS.ch GmbH
    Via Geinas 2
    CH-7031 Laax


    About the OPENGIS.ch product “QField” application

    QField is an open-source fieldwork app that integrates seamlessly with #QGIS, providing a powerful platform for data collection, visualization, and analysis. Designed for professionals across various sectors, QField empowers users to efficiently manage and analyze geospatial data in the field, contributing to sustainable development and innovation worldwide. Link: https://qfield.org

    About the OPENGIS.ch service QFieldCloud

    #QFieldCloud is a spatial cloud service integrated in #QField that allows remote provisioning and synchronisation of geodata and projects. Although “QFieldCloud” is still in an advanced beta stage, it is already being used by many groups to significantly improve their workflows. Link: https://qfield.cloud

    About OPENGIS.ch:

    OPENGIS.ch GmbH is a Swiss software development company based in Laax. OPENGIS.ch employs 19 people and works mainly in the field of spatial software development, geodata infrastructure deployments and professional support. Personalised open-source GIS solutions are often planned and developed as desktop or mobile applications. OPENGIS.ch finances itself through tailor-made customer solutions, professional support and adaptations. Link: https://opengis.ch

    OPENGIS.ch

    About Digital Public Goods Alliance (DPGA)

    The Digital Public Goods Alliance is a multi-stakeholder initiative endorsed by the United Nations Secretary-General, working to accelerate the attainment of the Sustainable Development Goals in low- and middle-income countries by facilitating the discovery, development, use of, and investment in digital public goods.

    For more information on the Digital Public Goods Alliance please reach out to hello@digitalpublicgoods.net.


    Images for editorial purposes are freely available for download if the copyright ©OPENGIS.ch is mentioned: https://download.opengis.ch/2024_qfield_sdgs_images.zip

    by Marco Bernasocchi at June 06, 2024 06:28 AM

    June 05, 2024