10e rencontres de la communauté QGIS (Partie 1)

Lundi, 23 April 2012

Le dixième Community Meeting de Quantum GIS (aka HackFest) s’est achevé la semaine passée. Après quelques jours pour se remettre de ces émotions codesques, voici la première partie d’un petit compte rendu (non exhaustif) de ce qui s’est déroulé pendant ce rendez vous de développeurs.

La rencontre, organisée par l‘OSGeo-fr, a commencé jeudi 12 midi, dans les locaux de l’université de médecine à Lyon. Les premiers participants sont arrivés dans l’après midi, et se sont mis directement au travail.

L’évènement a rassemblé une trentaine de personnes et était sponsorisé par Camptocamp, 3Liz, Services Géographiques, et Oslandia, qui ont permis d’accueillir tout le monde dans les locaux et de s’assurer que les développeurs ne manquent ni de café ni de pizzas pendant ces journées.

Ci dessous la première partie des sujets qui ont été abordés pendant ce community meeting.

Documentation

Un gros travail de refonte a commencé sur la documentation utilisateur de QGIS. L’objectif est de faire une transition du format LaTeX vers le format ReST pour utiliser Sphinx afin de générer la documentation. Une transcription automatique a commencé, mais il reste encore beaucoup de travail manuel pour finaliser la transition. Le travail avance vite cependant, et des volontaires se présentent spontanément pour donner un coup de main.
Un nouveau style ReST a aussi été intégré, et devrait harmoniser désormais toutes les documentations de QGIS.
Cette transition s’accompagne aussi d’un nouveau système de traduction de la documentation utilisateur, dont l’objectif est de la rendre accessible au plus grand nombre.


Ce travail très important a été mené par l’équipe de documentation du projet QGIS. Une grosse partie a été achevée pendant la rencontre, et les travaux continuent en ce moment sur le projet. N’hésitez pas à apporter votre contribution !

QGIS Workshop en français

Oslandia a libéré la traduction française du workshop «Développer des plugins Python pour QGIS». Il reste un peu de travail pour harmoniser le document avec la documentation générale de QGIS, mais déjà des corrections ont été faites et la traduction est disponible sur GitHub : https://github.com/qgis/QGIS-workshop . Une traduction en italien a également été lancée à la suite.

QGIS Mobile

QGIS Mobile fait beaucoup parler. Depuis le début du développement par Marco Bernasocchi pour le Google Summer Of Code l’été dernier, de nombreux progrès ont été accomplis. Désormais QGIS tourne correctement sur Android, tablet ou smartphone. Le dernier point manquant est le support du Python, afin de pouvoir utiliser les plugins et de développer pour QGIS dans ce langage. Des avancées ont été faites à Lyon, et on s’achemine vers un support complet de QGIS sur cette plateforme.

La prochaine étape est désormais de réaliser une interface graphique QGIS spécifique pour les plateformes mobiles. En effet, hormis sur les grandes tablettes, l’interface de QGIS, prévue pour être utilisée sur un ordinateur classique, n’est pas adaptée pour le matériel que l’on trouve sur les tablettes et smartphones. Il faut donc redévelopper une interface. Ce travail a été proposé pour le Google Summer Of Code 2012, et (EDIT : le projet est accepté, ce qui devrait être le cas sauf surprise), une première version devrait voir le jour à la rentrée de septembre.

La suite des progrès effectués sur QGIS sera dans une prochaine entrée ici-même. Si vous souhaitez avoir plus d’information sur le projet QGIS, sur les formations disponibles, ou sur les prestations d’Oslandia autour de QGIS, n’hésitez pas à nous contacter !

Code Sprint 2012 OSGeo

Jeudi, 9 Février 2012

Le code sprint OSGeo de la communauté C (et apparenté), est en passe de devenir un marronnier, avec une quatrième édition qui s’achève aujourd’hui…

Le leitmotiv de cette session aurait pu être “Release, release, release…” tant les efforts coordonnés de chacun étaient orientés sur les tickets restant à clôturer avant de pouvoir sortir de nouvelles versions officielles, de la stack SIG Open Source.

Une nouvelle version de maintenance de MapServer en 6.0.2 est sortie hier, avec de multiples bugfixes, dont un correctif de sécurité (à lui seul une bonne raison de procéder à une mise à jour),voir le Changelog complet en ligne.

La prochaine version majeure de MapServer, sera la 6.2.0 et devrait sortir au courant du printemps, avec comme principales nouvelles fonctionnalités l’intégration de MapCache et de TinyOWS, ou la gestion de INSPIRE View Service.

TinyOWS est également sorti en version 1.0.0 hier, avec de nombreuses nouvelles fonctionnalités, et correctifs
( cf précédent billet sur ce sujet).

Concernant PostGIS, la 2.0 est désormais proche, et devrait (selon toute vraisemblance) sortir dans les prochaines semaines. Pour accélérer le processus vous êtes vivement encouragés à tester et faire le cas échéant des retours sur la mailing list, des versions alphas qui sortent (très) régulièrement.
Code source de PostGIS 2.0 alpha5

Ce sprint était légèrement différent des précédents avec une localisation sur la côté Ouest, et en milieu naturel et fermé (comprendre un centre au milieu des bois), au lieu du traditionnel environnement (hyper)urbain. L’idée était d’expérimenter ce qui se fait déjà avec la Java Tribe sur Bolsena, et effectivement les retours en terme de dynamique d’équipe sont intéressants.
Et pour la suite, Regina Obe de la team PostGIS (et auteur de ‘PostGIS in Action’) s’est déjà proposée d’organiser la session 2013 sur Boston !

Un grand merci aux nombreux sponsors mobilisés sur cette action, c’est toujours surprenant du point de vue Européen, de voir que les Nord-Américains arrivent réellement à financer ce type d’événenement, alors que la pénétration de l’Open Source (dans les SIG) est jusqu’à présent plus marginale que chez nous.

Quantum GIS Atlas Plugin

Mardi, 24 Janvier 2012

As an effort for participation in the OpenSource community in general, and the OSGeo community in particular, Oslandia develops free software for research and development, internal needs, client needs or sometimes just for fun !

Of course we work with the community, publish source code, work together in order to leverage the power of OpenSource to its full extent.

This time, we publish a small but very convenient Quantum GIS plugin, named «Atlas». This a a map book tool, and it fills a gap in QGIS features, as such a fonctionality is a long-awaited one. (The easyprint plugin was great but lacked easy customization). Let’s show you what this Atlas plugin is about.

Overview

The Atlas plugin helps you create map books, or series of maps, in an automated way. The concept is to use a coverage layer, wich contains geometries and fields. This layer will define the maps to output. You can create image files or PDF files. All the composition is done in the QGIS map composer, and a specific composition is used as a template.

The plugin allows to replace text labels set up in the composer, with coverage layer’s attribute values, enabling you to set a title, comment, document name, page number, or any dynamic information you want to display on your final maps.

Let’s see the steps needed to create a map book.

Create a project

Begin with a classic QGIS project, import your layers and set styles according to your needs.

qgis_layers

Coverage layer

You have to create a layer containing coverage geometries, which can be any type of geometries, even if polygons are best to represent a coverage. The Atlas plugin will read this layer and for each feature of the layer, will create an output map.

This coverage can have any field number and names.

coverage_attributes

Composer template

You can now create a template for your output, in the Quantum GIS composer. The template is a classic composer document. Two things can be noted :

  • You have to remind which map item will contain your coverages. You can know the map item name with the tooltip (”Map 0” for example).
  • You can use text replacement in label. Every occurence of $FIELD(fieldname) in a label will be replaced by the value of the field with name fieldname from the coverage layer, for the current coverage.

Atlas plugin

You are now ready to launch the plugin. Find the entry in the plugins menu or click the atlas plugin button. You should see the following dialog.

Main Atlas plugin window

Main Atlas plugin window

You have to fill the form before clicking on Render to launch the rendering of the output maps. The options are :

  • Coverage layer : The name of the layer containing the coverage geometries
  • Hide coverage : If checked, the coverage layer itself will not be rendered on the output map
  • Composer template : Choose a template for output images. You can refresh the template list or show the selected template in the composer window
  • Composer map object : Item on the composer template where the map extent will be zoomed on each coverage. Use the tooltip over objects in the composer window to know the map item name
  • Margin around coverage : Amount of space around given coverage geometry. Default is 10% of coverage bounding box
  • Output directory : Location where the rendering writes the output images to
  • Filename pattern : Generic name of the output files. The final names will have a _n suffix before the extension, n being the image number (like basename_0.pdf). The pattern extension determines the output file type. The latter can be any image format (PNG, JPG…) or PDF.
  • Render : The render button launches the rendering process, writing output in the specified directory

Results

The results are written to the filesystem, with the file type specified in the filename pattern.
For example, PNG output :

image_resultsAnd a PDF output example :

okular_results

We can notice that labels have been replaced by corresponding field values in the coverage layer.

Where is it ?

The plugin has been published on QGIS main plugin repository, just look in QGIS plugin installer. Don’t forget to activate the experimental plugins in QGIS plugin installer’s options.

[Update] : For versions < 1.7.3 you have to manually add the new plugin repository : http://plugins.qgis.org/plugins/plugins.xml

Plugin’s homepage is http://hub.qgis.org/projects/atlas

The code can be obtained at : http://hub.qgis.org/projects/atlas/repository

The bugtracker is there : http://hub.qgis.org/projects/atlas/issues

What’s next ?

This plugin is a first release. While being functional for us, it is a beta prototype. There is still a lot of work needed to be done to have a production-ready tool. We are looking for contributors (code, documentation, bug reports, funding…). We would also be happy to have feedback and a gallery of map books if you can publish them.

If you like the plugin and want some improvement, do not hesitate to contact us, we can develop it for you, or adapt it to your specific needs !


TinyOWS et MapCache dans le giron de MapServer

Samedi, 20 Aout 2011

C’était déjà, depuis le dernier Code Sprint de Montréal, une hypothèse de travail, c’est devenu officiel depuis le vote du PSC MapServer: TinyOWS et MapCache rejoignent le giron du projet MapServer.

L’enjeux est de rester fonctionnellement dans la compétition des solutions très intégrées Java based, en ayant comme élément différenciant un axe résolument orienté performance et forte montée en charge.

MapCache apportera la composante de cache de tuiles et TinyOWS la partie WFS-T, tous deux étant évidemment axés ‘hautes performances’.

Au final un seul PSC (celui de MapServer) sera désormais compétent pour les trois projets, et la plateforme de développement sera commune (documentation, mailing liste, svn…). Gage de simplicité pour les utilisateurs qui disposeront ainsi d’un ‘guichet unique’.

Néanmoins chaque projet gardera ses propres rythmes de release, et les utilisateurs aillant leurs habitudes sur un seul des softs de la ’suite’ ne seront pas contraint de devoir installer/configurer de nouveaux binaires, pour continuer à utiliser leurs outils préférés.

Pour de plus amples détails, une conférence sur Denver sur ces thématiques: http://2011.foss4g.org/sessions/mapserver-project-stack

Complément de lecture pour les curieux: RFC 70 et RFC 71.

Oslandia recrute un Développeur Senior

Dimanche, 7 Aout 2011

Oslandia recherche pour agrandir son équipe, et œuvrer sur de nouveaux projets, un développeur senior sur des technos C, C++ et Python.

Si vous êtes intéressé(e)s ou connaissez la personne idoine, une seule adresse: jobs@oslandia.com

En ligne: Le texte complet de l’annonce.

Recherche de financements (aka funding)

Samedi, 28 Mai 2011

Ce post se propose de relayer des appels récents ou récurrents à financement sur de nouvelles fonctionnalités en SIG OpenSource.

PostGIS et SP-GIST

Paul Ramsey met en avant la possibilité d’accroitre significativement les performances des index spatiaux dans PostGIS.

Oleg Bartunov et Teodor Sigaev, tous deux derrières les mécanismes d’indexation GiST et GIN de PostgreSQL, ont fait un prototype d’un nouveau type d’index, SP-GiST, ou «Spatial Partitioning Generalized Search Tree».

Ce nouveau type d’index correspond aux besoins des indexes spatiaux utilisés dans PostGIS. Le prototype actuel a montré qu’il était sur un jeu de test 6 fois plus rapide que l’implémentation actuelle des indexes GiST de PostGIS (l’enjeu est de ne pas avoir besoin de parcourir tout l’index, mais seulement une partie)

Il serait possible d’inclure cette fonctionnalité dans PostgreSQL 9.2, (et donc dans PostGIS en suivant), mais il y a encore besoin de développement pour rendre le code robuste et l’intégrer totalement dans PostgreSQL. Il y a donc un besoin de financement.

Si vous êtes prêt à y participer, n’hésitez pas à contacter directement Paul Ramsey.

PostGIS Rastercode_arrays2

PostGIS Raster est encore dans une phase où le projet nécessite des ressources et financements, pour étendre et stabiliser les fonctionnalités existantes.

Le chemin parcouru est déjà grand, mais il reste bon nombre de choses à faire pour avoir une solution complète, et cela nécessite des fonds.

Pour rappel Pierre Racine présentera le projet PostGIS Raster sur Paris le 23 Juin.
Et c’est lui que vous pouvez directement contacter si vous êtes prêt à financer ce projet.

TinyOWS

TinyOWS qui est en ce moment en cours de finition de la version 1.0.0, se projette déjà sur les sorties à venir, avec une liste de fonctionnalités à financer.

On peut notamment citer :

  • Le support WFS 2.0 et INSPIRE (l’échéance légale INSPIRE pour Download Service étant mi 2012)
  • le support de bases de données multiples
  • Le support d’Oracle Spatial et/ou de SpatiaLite
  • le fonctionnement comme module d’apache (pour gagner encore en performance)
  • l’intégration complète avec MapServer, pour avoir toutes les options du MapFile WFS supportées (et non ‘uniquement’ les options de TinyOWS)
  • L’intégration avec QGIS Server, pour publier du WFS-T directement à partir d’un projet QGIS

Olivier Courtin est la personne référente sur ces chantiers.

Quantum GIS

Le projet Quantum GIS évolue aussi très rapidement, et nécessite donc également des financements.
La version 1.7 sur le point de sortir contient encore certains bugs critiques, à corriger.

D’une manière générale, les tâches de maintenance, refactoring et correction de bugs de Quantum GIS ont du mal à être assumée par l’équipe de développement de façon exhaustive sans financement spécifique.

Des fonctionnalités particulières avanceront aussi beaucoup plus rapidement avec un support financier. On peut citer par exemple:

  • la partie QGIS Server
  • l’intégration d’un serveur WFS-T
  • la refonte de l’ergonomie et des possibilités de personnalisation de l’interface
  • la gestion globale des bases de données
  • le multithreading
  • la 3D.

Comme vous le voyez les projets pour QGIS ne manquent pas !
Contacter Vincent Picavet pour toute demande de précision.

Financement = pérennité

D’une manière plus générale, participer (même modestement) au financement des logiciels qui sont dans au coeur de votre SI est le meilleur moyen de maintenir des communautés dynamiques.
Et donc in fine de garantir la pérennité de votre infrastructure.

Session PostGIS – le 23 Juin sur Paris

Mardi, 17 Mai 2011

Dalibo et Oslandia coorganisent le jeudi 23 Juin à Paris une session internationale d’échange et de conférences consacrée à PostGIS.

Ce sera la deuxième session organisée par Dalibo sur des technologies liées à PostgreSQL cette année, la précédente ayant été un franc succès.

Les mots clefs de ces sessions sont:

  • convivialité, avec de vrais moments dans la journée pour échanger entre tous les participants
  • technicité, avec des intervenants de (très) haut niveau, dont cette fois ci pas moins de 3 commiteurs du projet PostGIS
  • diversité, avec des présentations sur des thématiques variées, tout en restant connexes

En invité spécial, nous aurons le plaisir d’accueillir Sandro Santilli, venant d’Italie pour présenter ses dernières avancées sur le support topologique de PostGIS.
Sachant que Sandro n’est plus intervenu publiquement depuis le FOSS4G de Lausanne en 2006, sa présence est à elle seule un événement !

Pierre Racine sera également au rendez vous, en provenance du Québec, pour présenter PostGIS Raster, dont il est l’initiateur et le chef de file.

De nombreuses autres intervenants et conférences promettent elles aussi d’être d’un excellent niveau, vous pouvez voir le programme complet en ligne.

Les inscriptions, non payantes, sont à réaliser directement sur le site.
Attention, le nombre d’inscription étant volontairement réduit à 100 participants, il convient (vraiment) de ne pas trop tarder à s’inscrire.

Horaires : 9h30 à 17h30.
Lieu :  Le Comptoir Général 80, quai de Jemmapes, 75010 Paris http://osm.org/go/0BPIqc7Q

TinyOWS 1.0.0rc1

Dimanche, 1 Mai 2011

Et la voici, la première mouture de TinyOWS 1.0.0, le serveur WFS-T haute performance, vient tout juste de sortir dans les bacs !
Plus de 500 heures de développement auront été nécessaires pour aboutir à cette nouvelle release. La sortir un 1er Mai est donc tout un symbole ;)

Download: http://tinyows.org/tracdocs/release/tinyows-1.0.0rc1.tar.bz2

Les principales fonctionnalités et améliorations de cette mouture:

  • Support complet de OGC WFS-T 1.0.0 et 1.1.0 (ce qui implique tout de même de passer plus de 1000 tests unitaires OGC CITE)
  • Améliorations très nette des performances sur les requêtes de type Transaction et GetCapabilities. (gains de l’ordre de facteur x20 sur les Transactions)
  • Ajout d’un parseur de MapFile permettant d’utiliser un seul fichier de configuration pour à la fois MapServer et TinyOWS (typiquement un en WMS et un en WFS-T)
  • De nombreux correctifs et debugs

C’est encore une RC1, l’objectif est de la tester en grandeur nature pour faire remonter tous les éventuels bugs résiduels avant la prochaine release stable.
Donc d’avance merci à tous les bétas testeurs qui prendront un peu de leur temps pour tester et faire des retours.

Attention de petits ajustement dans le fichier de configuration ont été introduits par rapport aux précédentes releases:

  • renommage de ’server’ et ‘prefix’ en ‘ns_uri’ et ‘ns_prefix’
  • renommage de ‘wfs_display_bbox’ en ‘display_bbox’

ChangeLog:

- Configuration change with broken backward compatibility:
* rename server and prefix to ns_uri ans ns_prefix
* rename wfs_display_bbox to display_bbox
- Encoding support, written by Carlos Ruiz: cruizch@gmail.com
- Estimated_bbox option for GetCapabilities response (default is false)
- Schema cache for fast-cgi mode (huge performance improvement on transaction operations)
- Improve drasticaly GetCapabilities performance on huge layer (Thanks to Nicklas Aven for report)
- Add ability to use different names for layer and storage table (table property)
- Mapfile config file support (use related TINYOWS_MAPFILE env. var)
- Debug option available from configure step (–enable-debug)
- Improve result from –check option
- Add wfs_default_version config file option, to set server default WFS Version
- Add gml_ns config file option, to set if any, layers properties using GML namespace
- Add log_level config file option, to allow more granularity in log output
- PostGIS version init check (support 1.5 and coming 2.0)
- Update XSD schema (WFS, FE, GML), so need a new ‘make install’ step if you upgrade
- CITE WFS-T 1.0.0 SF-0 full compliant (require PostGIS 2.0)
- CITE WFS-T 1.1.0 SF-0 full compliant (require PostGIS 2.0)
- Lot of debug stuff (a special thanks to Boris Leukert for detailled reports)

MapServer et INSPIRE View Service

Jeudi, 28 April 2011

MapServer cherche à être nativement compatible INSPIRE View Service.
(A l’heure actuelle il est nécessaire de passer par des surcouches en PHP/MapScript pour rajouter la plupart des spécificités INSPIRE manquantes)

Sachant qu’il est déjà comptabile avec WMS 1.3.0 (ISO 19128), la charge de travail en sera d’autant simplifiée.

L’horizon de la prochaine release majeure (Septembre 2011 avant le FOSS4G) est visée, pour cet ajout fonctionnel.
Ceci restant cohérent avec la date butoire INSPIRE de mise en oeuvre: Novembre 2011 pour View Service.

Depuis le dernier code sprint MapServer de Montréal en Février, les moyens mis en oeuvres sont:

Précision du mentor concernant ce GSoC:

To give some background, over the summer Stefan will be working to improve the INSPIRE view service support in MapServer with focus on METADATA elements including multiple languages.

Of course we’ll take into account the work done so far like the documentation at and the recent discussions on the mapserver-inspire list.

The project plan is to first evaluate the INSPIRE specification version 3.0 and document the results in the form of a MapServer RFC for discussion and then implementation.

Votez pour les présentations FOSS4G 2011 !

Mercredi, 27 April 2011

Cette année le FOSS4G, grande conférence mondiale du monde des SIG OpenSource, aura lieu à Denver, du 12 au 16 septembre.

Vous pouvez dès maintenant, et jusqu’au 8 mai seulement, voter pour les présentations qui vous intéressent le plus. Près de 300 présentations ont été soumises, et seulement 130 environ seront sélectionnées !

Oslandia a soumis quatre propositions, deux pour des présentations longues, et deux «lightning talks» :

  • «WFS and SQL Injection»  par Olivier Courtin
  • «TinyOWS, what’s new for the high performance WFS-T server ?» par Olivier Courtin
  • «Rumble: communicate with your elephant !» Par Vincent Picavet
  • «Efficiently using PostGIS with QGIS» Par Vincent Picavet

A noter que dans l’interface de vote, les présentations pour lesquelles vous pouvez donner une note sont limitées à 120, prises et affichées au hasard, afin de conserver un maximum d’égalité entre les talks.

N’attendez pas et allez donc voir faire le programme !