File libosmium.changes of Package libosmium
-------------------------------------------------------------------
Mon Feb 14 18:15:10 UTC 2022 - Predrag Ivanović <predivan@mts.rs>
- Update to 2.18.0
* Use `system_error` instead of `runtime_error` where it fits better.
* Remove `OSMIUM_NORETURN` macro. This hasn't been used in a while.
### Removed deprecated parts of the code
Several parts of libosmium have been marked deprecated, many of them for a very
long time. These are now removed:
* Sparsehash index class `osmium::index::map::SparseMemTable` as well as the
complete file `osmium/index/map/sparse_mem_table.hpp`.
* Callback functionality of the `osmium::memory::Buffer` class. The
`set_full_callback()` will not be available any more. See the source
for replacement options.
* Various `osmium::builder::build_*` functions in
`osmium/builder/builder_helper.hpp`. Use `osmium::builder::add_*`
functions instead. Removes `builder_helper.hpp`.
* `osmium::builder::Builder::add_item(const osmium::memory::Item* item)`.
Use the function of the same name taking a reference instead.
* `osmium::builder::OSMObject/ChangesetBuilder::add_user()`. Use
`set_user()` instead.
* `osmium::builder::ChangesetBuilder::bounds()` returning a modifiable
reference. Use `set_bounds()` instead.
* Several functions around `osmium::io::OutputIterator`.
* `osmium::Area::inner_ring_cbegin/cend()`, use `inner_rings()` instead.
* `osmium::RelationMember::ref()`, use `set_ref()` instead.
* Implicit conversion from `osmium::Timestamp` to `std::time_t`. Use
`seconds_since_epoch()` instead.
* `osmium::string_to_user_id()`, use `string_to_uid` instead.
* `osmium::static_cast_with_assert()` helper functions as well as the
complete include file `osmium/util/cast.hpp`.
* Some constructors of `osmium::util::MemoryMapping` and
`osmium::util::TypedMemoryMapping`. Use other constructor instead.
-------------------------------------------------------------------
Sat Jan 29 13:25:46 UTC 2022 - Predrag Ivanović <predivan@mts.rs>
- Update to 2.17.3
* Removed possible deadlock when shutting down active Reader.
-------------------------------------------------------------------
Mon Dec 20 19:22:39 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Update to 2.17.2
* Libosmium now supports being compiled in C++17 and C++20 mode. The minimum
version required is still C++11, but if you use libosmium in an C++17 or
C++20 application this should work properly.
* Switch from catch version 1 to catch2 as test framework.
* When `std::variant` is available (C++17 and above), libosmium will use that
instead of `boost::variant` reducing the dependencies a little bit.
* Remove use of `boost::filter_iterator` and `boost::indirect_iterator`. The
removes the dependency on Boost Iterator.
* When ordering OSM objects (mostly use in the `CheckOrder` handler), the
smallest id possible (`INTMIN`) wasn't sorted correctly.
* Threading problem when reading files.
* Possible dereference of invalid iterator in legacy area assembler. This
only affects the legacy area assembler that takes old-style multipolygons
into account, so modern code that is not working with history data is not
affected.
* Fixed read from an empty queue when reading a file which could block
libosmium forever when an error was encountered while reading a file.
* As always: Various small code cleanups.
- Packaging:
* Drop signal.diff patch, no longer required.
* Add liblz4 to BuildRequires
-------------------------------------------------------------------
Sat Nov 27 14:04:14 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Update to 2.17.1
* Add `osmium_tags_filter` example showing use of tags filter.
* Add `Writer::set_header()` function to set header after constructing.
* Various improvements in PBF file reading make it slightly faster and less
CPU intensive.
* Since 2.17.0 Osmium will, when reading files, tell the kernel using
`fadvise` that it can remove pages from the buffer cache that are not
needed any more. This is usually beneficial, because the memory can be used
for something else. But if you are reading the same OSM file multiple times
at the same time or in short succession, it might be better to keep those
buffer pages. In that case you can set the environment variable
`OSMIUM_CLEAN_PAGE_CACHE_AFTER_READ` to `no` and Osmium will not call
`fadvise`. Set it to `yes` or anything else (or not set it at all) to get
the default behaviour.
* If the macro `OSMIUM_DEFINE_EXPORT` is defined, all exception classes used
by Osmium will get "tagged as exported" using `__declspec(dllexport)` when
using MSVC or `__attribute__ ((visibility("default")))` on other compilers.
This is needed in PyOsmium.
* Fix integer parser. IDs in OPL files can now be anything between -2^63 and
2^63-1.
- Add signal.patch from @kukuk to deal with catch test failures on Factory/TW
-------------------------------------------------------------------
Thu Jul 15 13:47:53 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Update to 2.17.0
Added
Add "ids" output format. New IDS output format that is similar to the OPL format, but only the entity type and id is written out.
Add convenience functions left(), right(), top(), bottom() to access osmium::Box boundaries.
Add polygon output to WKB factory.
Add functions to access storage from node_locations_for_ways handler.
Add flag osmium::io::buffers_type for telling the Reader class whether you want buffers read to only contain a single type of OSM entity.
Add convenient named nodes(), ways(), and relations() accessor functions to nwr_array class.
Add DeltaDecode::value() accessor function.
Add variant of the Buffer::purge_removed() function which doesn't take a callback parameter.
Changed
Different varint decoding for faster PBF decoding. This makes PBF decoding about 15% faster.
Several code optimmizations in (PBF) writer code that speed up writing of OSM files considerably while using less CPU and spreading the load on multiple CPUs.
Use memset/memcpy instead of std::fill_n and std::copy in object builder for some slight speedups.
Ignore metadata setting on reader for history/change files. History and change files must be read with metadata,
because otherwise the information is lost whether an object is visible or deleted. So ignore this setting in that case.
On Linux: Use fadvise() to tell kernel about our reading patterns:
Tell kernel that we are reading OSM files sequentially. This should improve pre-fetching of data blocks.
Tell kernel that we are done with block so they can be released. This means we don't hog the buffer cache for something that will, in all likelyhood, not be needed any more.
Use assert() instead of exception in "can not happen" situation in the relations manager code.
Various code cleanups.
Fixed
Remove undefined behaviour in bzip2 compression code.
Rename some local variables to not shadow member functions.
Removed superfluous std::forwards and fixed code that called std::forward multiple times on the same object.
Fix in OPL parser which could lead to invalid data being generated.
Fixed three bugs in O5M parser which could lead to an infinit loop or segmentation faults.
-------------------------------------------------------------------
Tue Jun 30 07:02:38 UTC 2020 - Dirk Stoecker <opensuse@dstoecker.de>
- update to 2.15.6
Added
Add IdSetSmall::merge_sorted function.
Changed
Little optimization for IdSetSmall: Don't add the same id twice in a row.
Fixed
Do not build areas with "recursion depth > 20". This happens when there are complex multipolygon with many rings touching in single points. This is a quick fix that hopefully keeps us going until we find a better solution.
* 2.15.5
Added
Additional constructor for builder::attr::member_type(_string) taking char type making it even easier to generate test data.
Allow single C string or std::string as argument for builder::attr::_tag. Must contain key and value separated by the equal sign.
New builder::attr::_t() function to set tags from comma-separated string.
New nwr_array iterator.
Support for the PROJ library has now been declared deprecated. The old PROJ API (up to version PROJ 6) is currently still available, but will be removed in a future version. Support for the new PROJ API will not be in libosmium. See https://github.com/osmcode/osmium-proj for some code that might help you if you need this.
Changed
Check how much space is available in file system before resizing memory mapped file (not on Windows). This means we can, at least in some cases, show an error message instead of crashing the program.
Fixed
Parsing coordinates in PBF files did not work correctly if an lat/lon offset was specified (which almost never happens).
Make OPL parser more strict: Attributes can only be specified once.
Do not close stdout after writing OSM file to it.
-------------------------------------------------------------------
Sat Apr 18 12:55:34 UTC 2020 - Dirk Stoecker <opensuse@dstoecker.de>
- Update to 2.15.4
Added
Add osmium::Options::empty() for consistency with STL containers.
Fixed
Massive reduction of memory consumption in area assembly code. For
some very complex polygons memory usage can drop from multiple
gigabytes to just megabytes.
-------------------------------------------------------------------
Thu Nov 21 13:37:47 UTC 2019 - Jonathan Brielmaier <jbrielmaier@suse.de>
- Update to 2.15.3:
See https://github.com/osmcode/libosmium/blob/master/CHANGELOG.md
for details
-------------------------------------------------------------------
Wed Jul 3 10:31:14 UTC 2019 - Dirk Stoecker <opensuse@dstoecker.de>
- update to 2.15.1
See https://github.com/osmcode/libosmium/releases for details
-------------------------------------------------------------------
Wed Oct 18 14:07:33 UTC 2017 - mpluskal@suse.com
- Update to version 2.13.1
-------------------------------------------------------------------
Wed May 31 11:05:04 UTC 2017 - mpluskal@suse.com
- Update to version 2.11.3
- Cleanup spec-file
-------------------------------------------------------------------
Tue Apr 19 15:33:17 CEST 2016 - kukuk@suse.de
- Update to version 2.6.1
- lot of speed improvements
-------------------------------------------------------------------
Wed Dec 2 14:54:44 CET 2015 - kukuk@suse.de
- Update to version 2.5.3
-------------------------------------------------------------------
Fri Apr 17 14:14:08 CEST 2015 - kukuk@suse.de
- Initial version