State of GeoServer 2022
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 351 | |
Author | ||
License | CC Attribution 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/69025 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Production Year | 2022 |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
00:00
Presentation of a groupOpen sourceProduct (business)Vector spaceProcess (computing)Communications protocolCore dumpOpen setPrototypeStandard deviationExtension (kinesiology)Java appletGroup actionSoftware maintenanceInformation securitySeries (mathematics)State transition systemRevision controlStack (abstract data type)Installation artComputer iconSlide ruleDistribution (mathematics)CodeComputer-generated imagerySession Initiation ProtocolLocal ringComputer configurationTexture mappingLocal GroupPersonal digital assistantDifferent (Kate Ryan album)Representation (politics)Control flowPoint (geometry)Complex (psychology)Factory (trading post)Data typeMathematicsAttribute grammarRegulärer Ausdruck <Textverarbeitung>WebsiteContext awarenessMusical ensembleData structurePixelOrder (biology)Order of magnitudeImplementationPoint cloudData compressionComputer fileModule (mathematics)Library (computing)Parameter (computer programming)outputFunction (mathematics)Bit rateGoogolContent (media)Raster graphicsConfiguration spaceLibrary catalogGrass (card game)Normal (geometry)Similarity (geometry)Military operationInformationFocus (optics)System administratorComputer programVulnerability (computing)Exploit (computer security)BuildingSoftware developerWeb pageData modelData recoveryPhotographic mosaicVolumenvisualisierungData storage deviceDatabasePrice indexModul <Datentyp>EmailCollaborationismVulnerability (computing)ImplementationInformationWeb serviceRevision controlShared memoryGeometryWeb applicationComputer configurationRun time (program lifecycle phase)Module (mathematics)Server (computing)Electronic mailing listFormal languageData storage deviceProblemorientierte ProgrammierspracheWebsiteExtension (kinesiology)Software testingProcess (computing)Open sourceDifferent (Kate Ryan album)Subject indexingoutputJava appletLevel (video gaming)Multiplication signSoftware developer1 (number)Scripting languageRight angleTerm (mathematics)Inheritance (object-oriented programming)Single-precision floating-point formatScheduling (computing)Slide ruleCache (computing)NumberCommunications protocolCore dumpSheaf (mathematics)Internet service providerPhotographic mosaicBitGroup actionLipschitz-StetigkeitMedical imagingFile formatMappingMathematicsDistribution (mathematics)Software maintenanceType theoryPoint (geometry)Set (mathematics)Exterior algebraInstallation artWindowInformation securityFactory (trading post)Greatest elementFunction (mathematics)Data compressionLibrary (computing)Musical ensemblePoint cloudExpressionAttribute grammarOracleComputer fileCurvatureField (computer science)Self-organizationProjective planeWeb pageParameter (computer programming)Content (media)TesselationConfiguration spaceCASE <Informatik>MereologyParallel portForm (programming)MetadataDoubling the cubeFunctional (mathematics)Asynchronous Transfer ModeShape (magazine)AdditionBookmark (World Wide Web)Semiconductor memoryHecke operatorExecution unitInternationalization and localizationGoodness of fitAddress spaceVector spaceEmailLoginSpring (hydrology)Stack (abstract data type)Library catalogWeb 2.0Online helpSound effectAutomationRepresentational state transferPatch (Unix)GoogolCodeComputer animation
Transcript: English(auto-generated)
00:03
So, my name is Jody Guinot, I've just had an introduction, I'd just like to thank my employer Geocat for the chance to speak with you today. So, GeoServer, what does GeoServer do? GeoServer is a Java web application. It's really designed to publish your information, share your information with the public.
00:22
The idea with GeoServer is you publish your information once, and we speak as many protocols as we possibly can to get your data in the hands of the most people. Just a GeoServer community update for 2022, we're roughly holding steady the size of the GeoServer teams, kind of hanging out here with a core PSE member and 21 committers.
00:43
We've organized, if you visit our website, there's a number of different service providers which are organized into core contributors, experienced providers, and other folks that showed up to have fun. In terms of GeoServer infrastructure, we've been in the process of migrating our infrastructure from Foundless Geo over to OSGeo, and we're just completing the last section of that,
01:06
migrating our docs over to OSGeo hosting. Any updates for the community modules? Well, as usual, every year we have new modules coming in, old modules that are not used or maintained anymore going out, so you have a list there.
01:21
We are going through the significant ones over the next slides, so I'm not going to list them right now. Sounds good. In terms of GeoServer release, we've run two releases in parallel, a stable release and a maintenance release, and we're just in the process of scheduling GeoServer 2.22 coming up in September.
01:41
Just in terms of what to look forward to here, in GeoServer 2.22 we're going to look at dropping Java 8 support and going to Java 11 moving forward. If you're using an older version, please upgrade. Security fixes are only really added to the supported versions, the stable and maintenance
02:01
ones, so just a reminder to update your GeoServers. If you update, you've got lots to look forward to. New features show up in the stable branch, and if you look at the bottom of these slides, you can see the folks who implemented the change, the improvement, and occasionally the sponsors or who paid for the work.
02:21
Just coming up for distribution, we've got an official Docker image. This has been a really community-led effort, started at one of the Phosphor-G conferences, and it's just become live in the last two or three weeks. We used it for our workshop on Monday. We've also restored our Windows installer, which was lost due to vandalism like five
02:40
years ago, so good to have that back. Okay, mapping. Mapping. So new feature in GeoServer 221 is layer group styles. So now if you are publishing a layer group, you can provide an alternate set of styles for them, which means different styles for the same layers, but also a different
03:01
layer list if you need to. We have a new feature that allows us to control the symbology factories, which it really helps when you need to publish hundreds of thousands of points. This is a map from Emsa. It's depicting all ships in the European seas. It's like 150,000 ships.
03:23
In terms of data sources and formats, we have this new feature type customization, which was long needed. You can rename attributes, change the type, add new attributes based on SQL expressions. We... Well, E? Yeah, Geocat, on behalf of one of our customers, managed to upgrade to GDL3 support.
03:45
GDL3 has been out for some time, but we don't actually get compatibility and a chance to work with the latest GDL unless we've got funding to test and make sure it works for you. We also have new support, native support for Google Cloud Storage in the Cog module,
04:02
in the Cloud Automated GeoTF module, and we have improved a lot performance reading hyperspectral images, these images which have hundreds of bands and which are typically organized in a band interleaved fashion. We also have added support for libdeflight in GeoTF.
04:21
We always supported deflight compression, both in input and output, but this library allows it to run faster. In terms of services, back to Jody. Once again, we've added Geo package output support. In addition to downloading your favorite Excel or CSV or shapefile, you can now finally
04:42
download a Geo package from WFS or WMS requests. Functionality was there already, but we graduated it to extension. We also have the graduation of the CSWizer module, which was once upon a time an extension then downgraded to community, and then a few months ago, it came back up with a maintainer.
05:02
Along with it came the metadata module, which allows us to define an input form, add extra metadata in the layer, and then use that information to make the ISO documents richer. Is that an actual extension or a community module? Extension. It graduated through Neils along with the CSWizer.
05:23
We also have the KML output support for WPS now, which makes the parallel with the WFS. It's part of the WPS package. You don't have to do anything. You just download the WPS accounts with KML. We also have support for MBTiles as a new geocache layer, so if you have a fully
05:42
seeded MBTiles file, you can configure it as a tile layer in geocache. In terms of configuration and setup, we now have a language chooser at the top right so that you can switch language at runtime. We have, thanks to the efforts of Alexandre Gassone,
06:01
much improved internationalization. He has updated most of the languages, and we have support for the inspired language request parameter so that you can switch the contents of your map, get feature info, the capabilities to the language that you desire.
06:20
We also have a... We just cleaned up the server status page a little bit, made it have actual units, checked, updated the documentation, and so forth, so just health and happiness updates. We also added a really nice tool for troubleshooting GeoServer. If you ever had GeoServer run out of memory or otherwise be unhappy with you,
06:41
there's some debugging techniques where you can ask Java, what the heck are you doing, or where did all your memory go? That's now available right from the GeoServer UI. And yeah, just a big update here. There was a number of security vulnerabilities discussed in the press, and although GeoServer was not vulnerable, and we made an announcement to that effect,
07:00
people honestly wouldn't shut up. They kept panicking and contacting us, so eventually we asked them, well, we can update it. Do you want to pay us? And so we did a small fundraising, so thank you to the organizations listed below for helping sponsor this activity. And then also thanks to Jeroen and Geocat for giving me a chance to work on that.
07:22
Project went way over budget. I had to, like, ask the Log4J folks for help, but we got there, so... I don't want to say too much it's logging. How exciting can it be? We also added a feature that was buried off in the depths of configuring your web XML file by hand,
07:41
so there's now a UI to enable request logging, so you can actually check what GeoServer sees for requests, request headers, request bodies, and so on. Getting back to security vulnerabilities, if you do run into something, there's a contact email address as part of our security policy. Give us a shout. There was a number of security vulnerabilities that hit us this year.
08:04
Log4Shell was the one that was popular in the press. There was a minor one, Spring4Shell. We couldn't find an exploit, and the mitigation was to run in Java 8, but we did release a copy of GeoServer with that vulnerability patched. We also had, shock, our own security vulnerability,
08:23
our first one to get an official CVE number. There's a vulnerability in our Jiffle scripting language. So once again, a reminder to please update your GeoServers. Once again, we're holding steady with developers at GeoServer.
08:40
We really would like to recruit more people, so please come by the code sprint this weekend. Roadmap. This is one I'm really excited about, and thanks for everyone who attended my workshop on Monday for beta testing this. So the welcome page in GeoServer has, for the first time in a decade, changed. So it now actually lists your web services with their header and their abstract.
09:02
You can use that little language chooser to change between the different languages that you're publishing, and it lists the services for each one. It also reveals a feature that GeoServer's had forever that people didn't know about. You can actually get a web service that's just for one workspace, or even a single layer.
09:22
Right. So the cog reader is now getting support also for Azure, so it means that we can now read from HTTP Server, S3, Azure, and Google Storage. Is that ever gonna graduate? It's still lurking there, isn't it? It's still lurking there.
09:41
I think that we want to have a little bit more testing in the real world before it graduates, but it's getting close. And by testing, do you mean funding? Also funding, sure. Okay, okay, sounds good. I would really love to have caching before releasing it to the public. In terms of a small change,
10:00
the GeoServer REST API now has the ability to reset a single store or layer. Previously, you could only just reload the entire catalog. This really prevents folks writing scripts that delete a data store and recreate it, or other just horrible things I've seen. Right, we are also working on a stack data store where there is a data store
10:21
that can talk to a stack API server, and that would then publish all the stack items as WMS or WFS and the protocols. And we are now integrating it with image mosaic so that if the items are pointing to assets which are cogs, we are then going to dynamically mosaic remote images and produce maps.
10:43
We are also working on a vector mosaic in store which deals with a slightly different use case. Say you have millions and millions of points, like billions maybe, but they are organized in single collects like all the points where a tractor was in a field, and you are normally watching only that field for that day.
11:01
Then the vector mosaic in store is probably interesting because you can store all your collects in files in the blobs, in S3, maybe as a flat geobuff, and then have this store index them all and give you access to the right file as a single seamless source
11:20
rather than publishing thousands of different sources. Yeah, back to roadmap things here. So we are looking to drop Java 8 support. Java's had a real revitalization now that Oracle's gotten out of the way. So yeah, we're looking ahead at the Java roadmap, dropping support for Java 8. We currently support Java 11
11:41
which is a long-term support release, and we are running in Java 17, but we don't recommend that quite yet. Okay, and there was a few people at the workshop trying to run Java 18 and failing. So we'll be looking ahead at that. Okay, so in terms of R&D, we have talked already about the cloud.msgeotiff community module.
12:02
We are looking forward to people that want to contribute or sponsor more blob storage options and caching support. The OGC API community modules are in the works. Again, we are looking for people that want to contribute and complete the implementation of the APIs. Some are lacking some bits.
12:22
And updating the existing one to the latest version of the spec because they keep on being updated. They are in draft mode and keep on being changed. The Geopackage community module, well, you heard about it. It has been split into parts. The WFS and WPS outputs are now extensions.
12:45
The WMS one, not yet. And we have a WPS process that allows you to create multi-layered Geopackages and so on, which is still in community. If you're interested in helping with time or funding, please contact me. Site, we did schedule to work on site this year
13:02
and then security vulnerabilities happened and sucked all the oxygen out of the room. If oxygen returns to the room, we encourage you to support us in this activity. Thanks. Did we actually finish early? Wow, good job.