cf89d56ac Release 1.1.0
6defc33ea Update changelog
8480ce447 Use basic_pbf_builder to make buffer type configurable
25fbe0caf Travis: Disable test that fails with out of memory error
f6741c19a Travis: Test on different architectures
598031339 Explicitly return 0 or 1 in example code, don't use std::exit
dd8d315ea Remove virtual inheritance in builder
f8511cc9e Fix another unused variable
4002414f0 Switch to catch2 for testing
9bb27a31f Avoid unused variable warning
b04163da6 Use std::array instead of C array
4701b6a57 Make string non-const so the return doesn't copy
454f7d711 Fix clang-tidy config
6105d7a62 "Modernize" travis config
7fefbf932 Use try/catch in main()
b3a62df21 Various fixes based on clang-tidy reports
83f784641 Use uppercase letters for numeric literals
23fd5f5c9 CMake config: Also look for newer clang-tidy versions
25ba7a7f6 Remove unnecessary ref qualifier
f1cc1728a Doxygen: Remove config settings not available in newer versions
0a0afc97d Fix doc.
630dc80bc fix docs
e022ba387 Call commit on finished features.
5d3f6eaf9 Remember version in layer_builder_impl. Add accessor functions.
bc9d5f977 Remove comment that doesn't apply (any more).
e1618d063 Update appveyor config to use more recent visual studio version.
e6f9e3e62 Remove unnecessary workaround in Appveyor config.
e1df3894c Remove xcode6.4 build soon to be removed from travis.
808a7b6a1 Release 1.0.3
d4faa2fb0 catch exceptions in vtzero-stats
291572505 Add overload of copy_properties function using a property_manager.
189caf4b8 Use new copy_id() function in advanced documentation.
184bb33e1 Add feature::for_each_property_indexes() member function.
3e296a36f Bugfix: Wrong iterator was checked in assert.
1115c0910 Update submodule to use newest mvt-fixtures.
f32e73893 Explicitly initialize member (needed by older GCCs).
8d37928ca More tests.
bf68443be Add copy_properties() helper function to feature builders.
96ed8cbd7 Add copy_id() helper function to builders.
b166fcc3a Document that layer class uses mutable.
8609cdf96 Add missing word
3484299f2 Release 1.0.2
6d3dd8940 Bugfix: layer_builder::add_feature() now commits features it adds.
8da72723f Update links in change log.
git-subtree-dir: third_party/vtzero
git-subtree-split: cf89d56ac22eee0a252aab8d2e87344e4ce73d70
* Remove include that breaks compilation for Boost v1.85.0
* Update CHANGELOG.md
* Fix typo
* Fix issues found by newer clang-tidy version
* Add include to boost filesystem to satisfy Windows compiler
Each leg of a via-route supporting u-turns does not need to consider
force-loops. Negative weight checks are sufficient to prevent
incorrect results when waypoints are on the same edge.
* Added approach on the opposite side of the road.
* Additional test and docs coverage for opposite approach
---------
Co-authored-by: Aleksandrs Saveljevs <Aleksandrs.Saveljevs@gmail.com>
* sort manuever overrides vector after partition
---------
Co-authored-by: rshokri <reza.shokri@tapsi.cab>
Co-authored-by: Michael Bell <michael@mjjbell.com>
* Extract prerelease/build information from package semver
Currently we only extract the major.minor.patch identifiers from
the semver label stored in package.json.
This leads to version information in executables incorrectly
reporting a release version is running on prereleases and special builds.
This commit is a quickfix to extract this information and report it
in version strings.
CMake regex parsing is not sophisticated enough to handle the full semver
regex, so we might need to explore other CMake modules if we want to
strictly parse the label.
Unidirectional traffic signal segments are currently not compressed.
This means traffic signals which are not on turns can be missed and
not applied the correct penalty.
This commit changes this behaviour to correctly handle the graph
compression. Additional tests are added to ensure there is no
regression for other cases (turns, restrictions).
Co-authored-by: Michael Bell <michael@mjjbell.com>
* Pin Conan revisions correctly
Conan dependencies are not pinned correctly. This means we're
pulling in a newer onetbb recipe that no longer has a shared
library option.
Following other examples of how to pin revisions with cmake
for conan v1, we correctly pin the expected revisions.
Longer term we should look into
- upgrading to conan v2
- defining the conan config separately from cmakelists.txt
- understanding the need for disabling onetbb shared library support
but for the purposes of reviving CI, this will be sufficient.
* Fix macos CI builds
This change adds support for disabling datasets, such that specific
files are not loaded into memory when running OSRM. This enables users
to not pay the memory cost for features they do not intend to use.
Initially, there are two options:
- ROUTE_GEOMETRY, for disabling overview, steps, annotations and waypoints.
- ROUTE_STEPS, for disabling steps only.
Attempts to query features for which the datasets are disabled will
lead to a DisabledDatasetException being returned.
Currently `npm test` runs the Cucumber suite with a matrix
configuration for selecting the algorithm (CH, MLD) and data loading
(shared-memory, mmap) options.
However, there is a third data loading option, 'load directly',
which is to directly load the datasets into the osrm-routed process memory.
The code paths for each data loading option are distinct:
Storage::Run + SharedMemoryAllocator
MMapMemoryAllocator
ProcessMemoryAllocator
This commit adds direct data loading as part of the Cucumber
configuration matrix.
This will ensure optional dataset support can be added without any
regressions.
* Ensure required file check in osrm-routed is correctly enforced.
The storage module had a stricter check. This keeps the IOConfig
check in sync.
* Correct HTTP docs to reflect summary output dependency on steps parameter.
There is no summary parameter.
* npm audit fix
Building with GCC 13 failed because for example std::int32_t
was not found. Porting guide [1] suggested to add explicit includes
for <cstdint> if necessary, so did just that.
[1]: https://gcc.gnu.org/gcc-13/porting_to.html
* print tracebacks and line numbers for Lua runtime errors
* revert format changes
* update changelog with lua traceback, #6564
* revert using protected_function for old GetStringListFromFunction and source_function #6564
* add unit test for line numbers in tracebacks, #6564
* apply clang-format (#6564)
* remove unused test helper function, #6564
* suppress leaksanitizer warnings in extract-tests, #6564
When the extractor encounters a lua runtime error, some osmium objects are not freed. In production this doesn't matter because these errors bring down OSRM. In the tests we catch them to ensure they occur, and the leaksanitizer flags them.