Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump osmium to version 2.20.0 #6997

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Conversation

SiarheiFedartsou
Copy link
Member

@SiarheiFedartsou SiarheiFedartsou commented Jul 13, 2024

Benchmark Results

Benchmark Base PR
alias aliased u32: 1155.5
plain u32: 1143.43
aliased double: 1259.59
plain double: 1278
aliased u32: 1210.63
plain u32: 1176.24
aliased double: 1264.12
plain double: 1244.09
e2e_match_ch Ops: 41.22 ± 0.07 ops/s. Best: 41.32 ops/s
Total: 3177.97ms ± 5.85ms. Best: 3170.42ms
Min time: 2.17ms ± 0.03ms
Mean time: 24.26ms ± 0.05ms
Median time: 17.85ms ± 0.11ms
95th percentile: 83.02ms ± 0.50ms
99th percentile: 102.68ms ± 0.49ms
Max time: 107.27ms ± 0.62ms
Ops: 41.69 ± 0.15 ops/s. Best: 41.97 ops/s
Total: 3142.47ms ± 12.47ms. Best: 3121.02ms
Min time: 2.18ms ± 0.05ms
Mean time: 23.99ms ± 0.10ms
Median time: 18.22ms ± 0.09ms
95th percentile: 80.83ms ± 0.34ms
99th percentile: 99.30ms ± 0.56ms
Max time: 106.69ms ± 0.74ms
e2e_match_mld Ops: 64.06 ± 0.24 ops/s. Best: 64.31 ops/s
Total: 2045.34ms ± 7.55ms. Best: 2037.03ms
Min time: 1.72ms ± 0.02ms
Mean time: 15.61ms ± 0.06ms
Median time: 8.09ms ± 0.08ms
95th percentile: 52.27ms ± 0.13ms
99th percentile: 60.64ms ± 0.14ms
Max time: 69.83ms ± 0.42ms
Ops: 64.04 ± 0.25 ops/s. Best: 64.38 ops/s
Total: 2045.77ms ± 7.72ms. Best: 2034.79ms
Min time: 1.73ms ± 0.01ms
Mean time: 15.61ms ± 0.06ms
Median time: 8.09ms ± 0.07ms
95th percentile: 52.12ms ± 0.34ms
99th percentile: 61.73ms ± 1.77ms
Max time: 70.62ms ± 1.89ms
e2e_nearest_ch Ops: 867.49 ± 2.74 ops/s. Best: 872.64 ops/s
Total: 1152.76ms ± 4.19ms. Best: 1145.95ms
Min time: 0.98ms ± 0.01ms
Mean time: 1.15ms ± 0.00ms
Median time: 1.06ms ± 0.00ms
95th percentile: 1.61ms ± 0.00ms
99th percentile: 1.65ms ± 0.01ms
Max time: 5.96ms ± 2.79ms
Ops: 875.54 ± 3.33 ops/s. Best: 881.73 ops/s
Total: 1142.19ms ± 4.77ms. Best: 1134.14ms
Min time: 0.98ms ± 0.00ms
Mean time: 1.14ms ± 0.00ms
Median time: 1.06ms ± 0.00ms
95th percentile: 1.59ms ± 0.01ms
99th percentile: 1.63ms ± 0.01ms
Max time: 5.83ms ± 2.83ms
e2e_nearest_mld Ops: 860.05 ± 8.31 ops/s. Best: 875.29 ops/s
Total: 1163.12ms ± 12.06ms. Best: 1142.48ms
Min time: 0.98ms ± 0.00ms
Mean time: 1.16ms ± 0.01ms
Median time: 1.07ms ± 0.01ms
95th percentile: 1.61ms ± 0.02ms
99th percentile: 1.75ms ± 0.14ms
Max time: 6.87ms ± 2.98ms
Ops: 862.15 ± 6.79 ops/s. Best: 872.95 ops/s
Total: 1159.73ms ± 8.84ms. Best: 1145.54ms
Min time: 0.99ms ± 0.00ms
Mean time: 1.16ms ± 0.01ms
Median time: 1.07ms ± 0.01ms
95th percentile: 1.61ms ± 0.01ms
99th percentile: 1.66ms ± 0.01ms
Max time: 6.26ms ± 3.08ms
e2e_route_ch Ops: 364.66 ± 2.76 ops/s. Best: 371.30 ops/s
Total: 2742.61ms ± 20.29ms. Best: 2693.22ms
Min time: 1.19ms ± 0.01ms
Mean time: 2.74ms ± 0.02ms
Median time: 2.76ms ± 0.02ms
95th percentile: 3.64ms ± 0.03ms
99th percentile: 4.04ms ± 0.05ms
Max time: 7.07ms ± 2.68ms
Ops: 379.00 ± 0.82 ops/s. Best: 380.62 ops/s
Total: 2638.57ms ± 5.68ms. Best: 2627.30ms
Min time: 1.18ms ± 0.01ms
Mean time: 2.64ms ± 0.01ms
Median time: 2.66ms ± 0.01ms
95th percentile: 3.48ms ± 0.01ms
99th percentile: 3.87ms ± 0.03ms
Max time: 6.59ms ± 2.49ms
e2e_route_mld Ops: 287.05 ± 6.56 ops/s. Best: 300.48 ops/s
Total: 3487.42ms ± 85.57ms. Best: 3328.06ms
Min time: 1.21ms ± 0.01ms
Mean time: 3.49ms ± 0.09ms
Median time: 3.53ms ± 0.08ms
95th percentile: 4.83ms ± 0.12ms
99th percentile: 5.32ms ± 0.14ms
Max time: 8.45ms ± 2.76ms
Ops: 313.82 ± 3.68 ops/s. Best: 318.72 ops/s
Total: 3188.59ms ± 37.21ms. Best: 3137.54ms
Min time: 1.17ms ± 0.01ms
Mean time: 3.19ms ± 0.04ms
Median time: 3.23ms ± 0.04ms
95th percentile: 4.34ms ± 0.06ms
99th percentile: 4.87ms ± 0.12ms
Max time: 8.01ms ± 1.67ms
e2e_table_ch Ops: 318.94 ± 0.62 ops/s. Best: 319.85 ops/s
Total: 3135.45ms ± 6.40ms. Best: 3126.45ms
Min time: 1.55ms ± 0.04ms
Mean time: 3.14ms ± 0.01ms
Median time: 3.13ms ± 0.02ms
95th percentile: 4.37ms ± 0.02ms
99th percentile: 4.71ms ± 0.05ms
Max time: 8.38ms ± 2.54ms
Ops: 316.46 ± 0.57 ops/s. Best: 317.33 ops/s
Total: 3159.86ms ± 5.83ms. Best: 3151.30ms
Min time: 1.60ms ± 0.04ms
Mean time: 3.16ms ± 0.01ms
Median time: 3.15ms ± 0.01ms
95th percentile: 4.39ms ± 0.02ms
99th percentile: 4.73ms ± 0.07ms
Max time: 8.54ms ± 2.52ms
e2e_table_mld Ops: 110.64 ± 0.67 ops/s. Best: 111.20 ops/s
Total: 9040.14ms ± 57.46ms. Best: 8992.65ms
Min time: 3.66ms ± 0.08ms
Mean time: 9.04ms ± 0.06ms
Median time: 9.00ms ± 0.05ms
95th percentile: 13.81ms ± 0.07ms
99th percentile: 14.56ms ± 0.16ms
Max time: 18.68ms ± 3.31ms
Ops: 112.14 ± 0.10 ops/s. Best: 112.31 ops/s
Total: 8917.48ms ± 8.02ms. Best: 8903.94ms
Min time: 3.60ms ± 0.07ms
Mean time: 8.92ms ± 0.01ms
Median time: 8.88ms ± 0.04ms
95th percentile: 13.68ms ± 0.03ms
99th percentile: 14.33ms ± 0.05ms
Max time: 16.63ms ± 2.14ms
e2e_trip_ch Ops: 97.30 ± 0.38 ops/s. Best: 97.89 ops/s
Total: 10276.41ms ± 39.30ms. Best: 10215.96ms
Min time: 1.52ms ± 0.09ms
Mean time: 10.28ms ± 0.04ms
Median time: 9.72ms ± 0.03ms
95th percentile: 18.48ms ± 0.09ms
99th percentile: 20.55ms ± 0.21ms
Max time: 22.62ms ± 0.52ms
Ops: 102.32 ± 0.15 ops/s. Best: 102.50 ops/s
Total: 9772.72ms ± 15.08ms. Best: 9756.19ms
Min time: 1.44ms ± 0.11ms
Mean time: 9.77ms ± 0.02ms
Median time: 9.19ms ± 0.03ms
95th percentile: 17.72ms ± 0.04ms
99th percentile: 19.54ms ± 0.10ms
Max time: 21.56ms ± 0.99ms
e2e_trip_mld Ops: 56.08 ± 0.73 ops/s. Best: 57.06 ops/s
Total: 17827.95ms ± 235.04ms. Best: 17524.72ms
Min time: 1.93ms ± 0.24ms
Mean time: 17.84ms ± 0.24ms
Median time: 17.35ms ± 0.24ms
95th percentile: 29.12ms ± 0.35ms
99th percentile: 31.46ms ± 0.35ms
Max time: 34.11ms ± 1.12ms
Ops: 60.55 ± 0.24 ops/s. Best: 60.83 ops/s
Total: 16511.64ms ± 67.59ms. Best: 16439.61ms
Min time: 1.55ms ± 0.23ms
Mean time: 16.52ms ± 0.07ms
Median time: 15.99ms ± 0.07ms
95th percentile: 27.27ms ± 0.14ms
99th percentile: 29.38ms ± 0.13ms
Max time: 31.25ms ± 0.27ms
json-render String: 5.61074ms
Stringstream: 9.24026ms
Vector: 6.60868ms
String: 5.62181ms
Stringstream: 8.89788ms
Vector: 6.51806ms
match_ch Default radius:
4.58919ms/req at 82 coordinate
0.0559658ms/coordinate
Radius 10m:
16.0858ms/req at 82 coordinate
0.196169ms/coordinate
Default radius:
4.60838ms/req at 82 coordinate
0.0561998ms/coordinate
Radius 10m:
16.1283ms/req at 82 coordinate
0.196687ms/coordinate
match_mld Default radius:
3.01557ms/req at 82 coordinate
0.0367752ms/coordinate
Radius 10m:
11.1467ms/req at 82 coordinate
0.135935ms/coordinate
Default radius:
3.04245ms/req at 82 coordinate
0.037103ms/coordinate
Radius 10m:
11.5818ms/req at 82 coordinate
0.141242ms/coordinate
osrm_contract Time: 99.14s Peak RAM: 201.77MB Time: 100.16s Peak RAM: 200.95MB
osrm_customize Time: 1.29s Peak RAM: 117.55MB Time: 1.30s Peak RAM: 117.69MB
osrm_extract Time: 11.66s Peak RAM: 430.19MB Time: 12.17s Peak RAM: 431.55MB
osrm_partition Time: 2.08s Peak RAM: 144.07MB Time: 2.13s Peak RAM: 145.80MB
packedvector random write:
std::vector 11311.5 ms
util::packed_vector 73701.4 ms
slowdown: 6.51561
random read:
std::vector 11050.1 ms
util::packed_vector 30379.9 ms
slowdown: 2.74929
random write:
std::vector 11262.9 ms
util::packed_vector 74295.2 ms
slowdown: 6.59643
random read:
std::vector 11122.7 ms
util::packed_vector 30851.6 ms
slowdown: 2.77375
random_match_ch 500 matches, default radius
ops: 203.38 ± 0.84 ops/s. best: 204.20ops/s.
total: 280.28 ± 1.16ms. best: 279.14ms.
avg: 4.92 ± 0.02ms
min: 0.13 ± 0.01ms
max: 24.90 ± 0.04ms
p99: 24.90 ± 0.04ms

500 matches, radius=10
ops: 59.80 ± 0.09 ops/s. best: 59.95ops/s.
total: 1070.26 ± 1.54ms. best: 1067.52ms.
avg: 16.72 ± 0.02ms
min: 0.15 ± 0.00ms
max: 224.23 ± 1.12ms
p99: 224.23 ± 1.12ms

500 matches, radius=20
ops: 14.34 ± 0.02 ops/s. best: 14.36ops/s.
total: 4531.84 ± 4.95ms. best: 4526.49ms.
avg: 69.72 ± 0.08ms
min: 0.30 ± 0.00ms
max: 1142.35 ± 3.40ms
p99: 1142.35 ± 3.40ms
500 matches, default radius
ops: 201.17 ± 0.73 ops/s. best: 202.13ops/s.
total: 283.35 ± 1.03ms. best: 282.00ms.
avg: 4.97 ± 0.02ms
min: 0.14 ± 0.01ms
max: 24.40 ± 0.03ms
p99: 24.40 ± 0.03ms

500 matches, radius=10
ops: 59.79 ± 0.25 ops/s. best: 60.29ops/s.
total: 1070.47 ± 4.55ms. best: 1061.54ms.
avg: 16.73 ± 0.07ms
min: 0.15 ± 0.00ms
max: 221.24 ± 1.20ms
p99: 221.24 ± 1.20ms

500 matches, radius=20
ops: 14.46 ± 0.05 ops/s. best: 14.56ops/s.
total: 4494.10 ± 15.34ms. best: 4465.24ms.
avg: 69.14 ± 0.24ms
min: 0.30 ± 0.00ms
max: 1131.12 ± 5.36ms
p99: 1131.12 ± 5.36ms
random_match_mld 500 matches, default radius
ops: 294.25 ± 2.77 ops/s. best: 296.77ops/s.
total: 193.74 ± 1.85ms. best: 192.07ms.
avg: 3.40 ± 0.03ms
min: 0.12 ± 0.01ms
max: 19.57 ± 0.11ms
p99: 19.57 ± 0.11ms

500 matches, radius=10
ops: 104.01 ± 0.24 ops/s. best: 104.40ops/s.
total: 615.35 ± 1.32ms. best: 613.00ms.
avg: 9.61 ± 0.02ms
min: 0.14 ± 0.00ms
max: 114.19 ± 0.23ms
p99: 114.19 ± 0.23ms

500 matches, radius=20
ops: 21.04 ± 0.02 ops/s. best: 21.07ops/s.
total: 3088.71 ± 3.00ms. best: 3085.53ms.
avg: 47.52 ± 0.05ms
min: 0.19 ± 0.00ms
max: 601.29 ± 1.34ms
p99: 601.29 ± 1.34ms
500 matches, default radius
ops: 303.25 ± 1.75 ops/s. best: 304.74ops/s.
total: 187.98 ± 1.10ms. best: 187.04ms.
avg: 3.30 ± 0.02ms
min: 0.12 ± 0.01ms
max: 18.91 ± 0.06ms
p99: 18.91 ± 0.06ms

500 matches, radius=10
ops: 106.93 ± 0.51 ops/s. best: 107.35ops/s.
total: 598.54 ± 2.95ms. best: 596.18ms.
avg: 9.35 ± 0.05ms
min: 0.14 ± 0.00ms
max: 110.71 ± 0.49ms
p99: 110.71 ± 0.49ms

500 matches, radius=20
ops: 21.76 ± 0.03 ops/s. best: 21.81ops/s.
total: 2987.78 ± 3.60ms. best: 2980.02ms.
avg: 45.97 ± 0.06ms
min: 0.18 ± 0.01ms
max: 582.86 ± 0.58ms
p99: 582.86 ± 0.58ms
random_nearest_ch 10000 nearest, number_of_results=1
ops: 24647.59 ± 75.87 ops/s. best: 24710.24ops/s.
total: 405.73 ± 1.28ms. best: 404.69ms.
avg: 0.04 ± 0.00ms
min: 0.01 ± 0.00ms
max: 0.15 ± 0.03ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 18622.32 ± 40.91 ops/s. best: 18669.96ops/s.
total: 536.99 ± 1.19ms. best: 535.62ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.11 ± 0.00ms

10000 nearest, number_of_results=10
ops: 14793.61 ± 12.92 ops/s. best: 14820.43ops/s.
total: 675.97 ± 0.59ms. best: 674.74ms.
avg: 0.07 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.17 ± 0.00ms
p99: 0.13 ± 0.00ms
10000 nearest, number_of_results=1
ops: 24335.03 ± 59.44 ops/s. best: 24429.17ops/s.
total: 410.93 ± 1.07ms. best: 409.35ms.
avg: 0.04 ± 0.00ms
min: 0.01 ± 0.00ms
max: 0.16 ± 0.03ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 18128.89 ± 48.45 ops/s. best: 18195.47ops/s.
total: 551.61 ± 1.48ms. best: 549.59ms.
avg: 0.06 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.23 ± 0.11ms
p99: 0.11 ± 0.00ms

10000 nearest, number_of_results=10
ops: 14427.20 ± 32.53 ops/s. best: 14482.95ops/s.
total: 693.14 ± 1.53ms. best: 690.47ms.
avg: 0.07 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.19 ± 0.01ms
p99: 0.13 ± 0.00ms
random_nearest_mld 10000 nearest, number_of_results=1
ops: 24595.46 ± 51.44 ops/s. best: 24633.70ops/s.
total: 406.58 ± 0.85ms. best: 405.95ms.
avg: 0.04 ± 0.00ms
min: 0.01 ± 0.00ms
max: 0.15 ± 0.02ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 18560.48 ± 26.46 ops/s. best: 18619.55ops/s.
total: 538.78 ± 0.77ms. best: 537.07ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.11 ± 0.00ms

10000 nearest, number_of_results=10
ops: 14843.71 ± 12.08 ops/s. best: 14869.48ops/s.
total: 673.69 ± 0.55ms. best: 672.52ms.
avg: 0.07 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.17 ± 0.00ms
p99: 0.13 ± 0.00ms
10000 nearest, number_of_results=1
ops: 24603.40 ± 48.80 ops/s. best: 24641.42ops/s.
total: 406.45 ± 0.81ms. best: 405.82ms.
avg: 0.04 ± 0.00ms
min: 0.01 ± 0.00ms
max: 0.16 ± 0.02ms
p99: 0.10 ± 0.00ms

10000 nearest, number_of_results=5
ops: 18512.69 ± 8.43 ops/s. best: 18532.01ops/s.
total: 540.17 ± 0.24ms. best: 539.61ms.
avg: 0.05 ± 0.00ms
min: 0.02 ± 0.00ms
max: 0.15 ± 0.00ms
p99: 0.11 ± 0.00ms

10000 nearest, number_of_results=10
ops: 14651.58 ± 7.81 ops/s. best: 14663.81ops/s.
total: 682.52 ± 0.36ms. best: 681.95ms.
avg: 0.07 ± 0.00ms
min: 0.03 ± 0.00ms
max: 0.18 ± 0.01ms
p99: 0.13 ± 0.00ms
random_route_ch 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 536.28 ± 1.33 ops/s. best: 537.28ops/s.
total: 1834.89 ± 4.56ms. best: 1831.45ms.
avg: 1.86 ± 0.00ms
min: 0.32 ± 0.00ms
max: 3.07 ± 0.31ms
p99: 2.63 ± 0.02ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 650.31 ± 5.01 ops/s. best: 653.83ops/s.
total: 1537.89 ± 12.02ms. best: 1529.44ms.
avg: 1.54 ± 0.01ms
min: 0.05 ± 0.00ms
max: 3.90 ± 0.09ms
p99: 3.19 ± 0.04ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 1007.79 ± 14.25 ops/s. best: 1032.80ops/s.
total: 976.63 ± 13.70ms. best: 952.75ms.
avg: 0.99 ± 0.01ms
min: 0.23 ± 0.00ms
max: 1.57 ± 0.06ms
p99: 1.36 ± 0.02ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 1233.32 ± 5.00 ops/s. best: 1237.98ops/s.
total: 810.84 ± 3.31ms. best: 807.76ms.
avg: 0.81 ± 0.00ms
min: 0.05 ± 0.00ms
max: 2.08 ± 0.03ms
p99: 1.74 ± 0.03ms
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 478.57 ± 5.53 ops/s. best: 489.51ops/s.
total: 2056.49 ± 23.83ms. best: 2010.19ms.
avg: 2.09 ± 0.02ms
min: 0.33 ± 0.01ms
max: 3.79 ± 0.23ms
p99: 3.09 ± 0.03ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 579.28 ± 14.17 ops/s. best: 593.82ops/s.
total: 1727.82 ± 43.65ms. best: 1684.02ms.
avg: 1.73 ± 0.04ms
min: 0.06 ± 0.00ms
max: 4.58 ± 0.17ms
p99: 3.81 ± 0.13ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 977.51 ± 15.15 ops/s. best: 992.54ops/s.
total: 1006.95 ± 15.75ms. best: 991.40ms.
avg: 1.02 ± 0.02ms
min: 0.23 ± 0.00ms
max: 1.67 ± 0.04ms
p99: 1.43 ± 0.04ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 969.28 ± 43.22 ops/s. best: 1023.54ops/s.
total: 1034.57 ± 46.87ms. best: 977.00ms.
avg: 1.03 ± 0.05ms
min: 0.04 ± 0.00ms
max: 2.69 ± 0.13ms
p99: 2.38 ± 0.12ms
random_route_mld 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 261.21 ± 0.47 ops/s. best: 261.72ops/s.
total: 3767.08 ± 6.83ms. best: 3759.69ms.
avg: 3.83 ± 0.01ms
min: 0.31 ± 0.00ms
max: 8.45 ± 0.04ms
p99: 6.42 ± 0.06ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 252.75 ± 0.16 ops/s. best: 253.03ops/s.
total: 3956.52 ± 2.55ms. best: 3952.13ms.
avg: 3.96 ± 0.00ms
min: 0.05 ± 0.00ms
max: 9.25 ± 0.21ms
p99: 8.18 ± 0.02ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 343.10 ± 0.31 ops/s. best: 343.48ops/s.
total: 2868.01 ± 2.62ms. best: 2864.82ms.
avg: 2.91 ± 0.00ms
min: 0.26 ± 0.00ms
max: 7.11 ± 0.02ms
p99: 5.01 ± 0.02ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 305.63 ± 5.84 ops/s. best: 313.58ops/s.
total: 3273.37 ± 62.35ms. best: 3188.98ms.
avg: 3.27 ± 0.06ms
min: 0.04 ± 0.00ms
max: 7.13 ± 0.29ms
p99: 6.53 ± 0.11ms
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
ops: 260.41 ± 1.19 ops/s. best: 261.60ops/s.
total: 3778.75 ± 17.35ms. best: 3761.48ms.
avg: 3.84 ± 0.02ms
min: 0.31 ± 0.00ms
max: 8.47 ± 0.02ms
p99: 6.41 ± 0.04ms

1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
ops: 246.78 ± 2.73 ops/s. best: 252.88ops/s.
total: 4052.95 ± 44.25ms. best: 3954.41ms.
avg: 4.05 ± 0.04ms
min: 0.05 ± 0.00ms
max: 10.84 ± 1.44ms
p99: 8.45 ± 0.20ms

1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
ops: 334.59 ± 7.22 ops/s. best: 341.47ops/s.
total: 2942.99 ± 65.31ms. best: 2881.66ms.
avg: 2.99 ± 0.07ms
min: 0.27 ± 0.00ms
max: 7.11 ± 0.01ms
p99: 5.19 ± 0.11ms

1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
ops: 310.95 ± 1.99 ops/s. best: 313.32ops/s.
total: 3216.17 ± 20.70ms. best: 3191.65ms.
avg: 3.22 ± 0.02ms
min: 0.04 ± 0.00ms
max: 6.82 ± 0.08ms
p99: 6.44 ± 0.03ms
random_table_ch 250 tables, 3 coordinates
ops: 1447.34 ± 11.61 ops/s. best: 1456.46ops/s.
total: 172.75 ± 1.41ms. best: 171.65ms.
avg: 0.69 ± 0.01ms
min: 0.46 ± 0.00ms
max: 1.05 ± 0.23ms
p99: 0.86 ± 0.02ms

250 tables, 25 coordinates
ops: 169.74 ± 0.03 ops/s. best: 169.79ops/s.
total: 1472.80 ± 0.29ms. best: 1472.41ms.
avg: 5.89 ± 0.00ms
min: 5.21 ± 0.02ms
max: 6.48 ± 0.07ms
p99: 6.38 ± 0.01ms

250 tables, 50 coordinates
ops: 84.04 ± 0.13 ops/s. best: 84.18ops/s.
total: 2974.79 ± 4.71ms. best: 2969.66ms.
avg: 11.90 ± 0.02ms
min: 11.01 ± 0.02ms
max: 12.93 ± 0.05ms
p99: 12.74 ± 0.04ms
250 tables, 3 coordinates
ops: 1359.30 ± 14.56 ops/s. best: 1376.65ops/s.
total: 183.95 ± 2.03ms. best: 181.60ms.
avg: 0.74 ± 0.01ms
min: 0.50 ± 0.01ms
max: 1.15 ± 0.31ms
p99: 0.93 ± 0.05ms

250 tables, 25 coordinates
ops: 160.72 ± 1.09 ops/s. best: 162.37ops/s.
total: 1555.62 ± 10.53ms. best: 1539.73ms.
avg: 6.22 ± 0.04ms
min: 5.62 ± 0.07ms
max: 6.87 ± 0.05ms
p99: 6.75 ± 0.05ms

250 tables, 50 coordinates
ops: 79.30 ± 0.53 ops/s. best: 80.03ops/s.
total: 3152.73 ± 22.03ms. best: 3123.88ms.
avg: 12.61 ± 0.09ms
min: 11.75 ± 0.08ms
max: 13.72 ± 0.13ms
p99: 13.48 ± 0.13ms
random_table_mld 250 tables, 3 coordinates
ops: 338.68 ± 0.91 ops/s. best: 339.62ops/s.
total: 738.16 ± 1.99ms. best: 736.11ms.
avg: 2.95 ± 0.01ms
min: 2.49 ± 0.01ms
max: 3.84 ± 0.22ms
p99: 3.53 ± 0.07ms

250 tables, 25 coordinates
ops: 37.57 ± 0.10 ops/s. best: 37.69ops/s.
total: 6654.87 ± 18.12ms. best: 6633.94ms.
avg: 26.62 ± 0.07ms
min: 25.14 ± 0.07ms
max: 31.82 ± 4.49ms
p99: 28.47 ± 0.18ms

250 tables, 50 coordinates
ops: 17.74 ± 0.08 ops/s. best: 17.85ops/s.
total: 14091.23 ± 65.78ms. best: 14007.36ms.
avg: 56.36 ± 0.26ms
min: 54.16 ± 0.10ms
max: 59.64 ± 0.96ms
p99: 59.13 ± 0.80ms
250 tables, 3 coordinates
ops: 337.34 ± 0.66 ops/s. best: 338.17ops/s.
total: 741.08 ± 1.45ms. best: 739.27ms.
avg: 2.96 ± 0.01ms
min: 2.49 ± 0.01ms
max: 3.87 ± 0.23ms
p99: 3.53 ± 0.07ms

250 tables, 25 coordinates
ops: 37.72 ± 0.03 ops/s. best: 37.75ops/s.
total: 6627.65 ± 5.97ms. best: 6622.15ms.
avg: 26.51 ± 0.02ms
min: 25.04 ± 0.05ms
max: 28.88 ± 0.46ms
p99: 28.30 ± 0.06ms

250 tables, 50 coordinates
ops: 17.85 ± 0.02 ops/s. best: 17.88ops/s.
total: 14002.10 ± 13.86ms. best: 13984.96ms.
avg: 56.01 ± 0.06ms
min: 54.02 ± 0.02ms
max: 59.10 ± 0.68ms
p99: 58.18 ± 0.14ms
random_trip_ch 250 trips, 3 coordinates
ops: 512.11 ± 3.10 ops/s. best: 514.64ops/s.
total: 488.21 ± 3.03ms. best: 485.78ms.
avg: 1.95 ± 0.01ms
min: 1.11 ± 0.00ms
max: 2.81 ± 0.36ms
p99: 2.50 ± 0.04ms

250 trips, 5 coordinates
ops: 338.13 ± 0.41 ops/s. best: 338.61ops/s.
total: 739.35 ± 0.91ms. best: 738.31ms.
avg: 2.96 ± 0.00ms
min: 1.99 ± 0.02ms
max: 3.73 ± 0.17ms
p99: 3.56 ± 0.03ms
250 trips, 3 coordinates
ops: 438.68 ± 2.86 ops/s. best: 444.16ops/s.
total: 569.92 ± 3.65ms. best: 562.86ms.
avg: 2.28 ± 0.01ms
min: 1.17 ± 0.01ms
max: 3.38 ± 0.34ms
p99: 3.08 ± 0.04ms

250 trips, 5 coordinates
ops: 290.56 ± 1.71 ops/s. best: 294.54ops/s.
total: 860.45 ± 5.09ms. best: 848.77ms.
avg: 3.44 ± 0.02ms
min: 2.19 ± 0.04ms
max: 4.65 ± 0.14ms
p99: 4.33 ± 0.04ms
random_trip_mld 250 trips, 3 coordinates
ops: 176.96 ± 0.53 ops/s. best: 177.49ops/s.
total: 1412.76 ± 4.29ms. best: 1408.53ms.
avg: 5.65 ± 0.02ms
min: 3.44 ± 0.01ms
max: 7.47 ± 0.59ms
p99: 7.02 ± 0.02ms

250 trips, 5 coordinates
ops: 114.92 ± 0.19 ops/s. best: 115.21ops/s.
total: 2175.45 ± 3.65ms. best: 2169.89ms.
avg: 8.70 ± 0.01ms
min: 6.44 ± 0.01ms
max: 10.31 ± 0.03ms
p99: 10.14 ± 0.07ms
250 trips, 3 coordinates
ops: 176.69 ± 0.50 ops/s. best: 177.20ops/s.
total: 1414.89 ± 4.04ms. best: 1410.83ms.
avg: 5.66 ± 0.02ms
min: 3.45 ± 0.02ms
max: 7.50 ± 0.60ms
p99: 7.02 ± 0.04ms

250 trips, 5 coordinates
ops: 114.92 ± 0.13 ops/s. best: 115.12ops/s.
total: 2175.36 ± 2.51ms. best: 2171.64ms.
avg: 8.70 ± 0.01ms
min: 6.47 ± 0.02ms
max: 10.40 ± 0.09ms
p99: 10.14 ± 0.03ms
route_ch 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
426.86ms
0.42686ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
506.25ms
0.50625ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
150.721ms
0.150721ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
133.275ms
0.133275ms/req
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
426.528ms
0.426528ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
504.751ms
0.504751ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
147.577ms
0.147577ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
130.702ms
0.130702ms/req
route_mld 1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
571.734ms
0.571734ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
713.581ms
0.713581ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
291.447ms
0.291447ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
319.614ms
0.319614ms/req
1000 routes, 3 coordinates, no alternatives, overview=full, steps=true
571.174ms
0.571174ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=full, steps=true
715.507ms
0.715507ms/req
1000 routes, 3 coordinates, no alternatives, overview=false, steps=false
287.79ms
0.28779ms/req
1000 routes, 2 coordinates, 3 alternatives, overview=false, steps=false
315.52ms
0.31552ms/req
rtree 1 result:
197.119ms -> 0.0197119 ms/query
10 results:
232.764ms -> 0.0232764 ms/query
1 result:
191.878ms -> 0.0191878 ms/query
10 results:
227.504ms -> 0.0227504 ms/query

cd892f98e Release v2.20.0
e3de973e9 Disable false positive warning from GCC
938b98970 Optionally allow fractional seconds in timestamps
345d19054 Remove broken Appveyor build
8540bd4b5 Disable readability-convert-member-functions-to-static warning
8bda57bcc Fix some clang-tidy constness warnings
61d415bd8 Avoid C-style casts
4fa920809 Use default member initialization
e80a04c34 We do want macros for the version numbers
7b3ebb52a Make string global in test to avoid sanitizer errors
b904200aa Github actions: Disable "integer" sanitizer checks
d0c0741e4 Github actions: Disable dangling-reference warnings
2fcd1947d Github action: Cleanup build
8acce311b Github action: Use newer OS versions for builds
253b68795 Bugfix: Don't use class template arguments on constructor definition
58b313d3e Enable posix_fadvise usage on FreeBSD
d81d4c809 Github actions: Really disable stretch build...
a85834cf9 Github actions: Remove build on (unsupported) Debian stretch
94674ed90 Make parsing PBFs a bit less picky
f73731a1c Fix comment
5af0a4b48 Update README.md: Remove appveyor and codecov links
a44ae7be0 Release v2.19.0
d74ee5178 Update change log
af0e728c1 Update copyright date to 2023
3a76dfc4f Mark RapidJSON support as deprecated
866cdbdf1 Remove YCM config
752742ad3 Update included Catch to v2.13.10
c19fd7f16 Use PROJ_DATA in addition to PROJ_LIB
86c983378 Github actions: Cleanup
e6376a5aa Github actions: Update actions/upload-artifact to v3
2adf892d7 Github actions: Update config
146cc02f6 Github action: Update config
4e6ab3798 Revert "Remove deprecated functions in RelationsMapIndex"
7781aeb6f Remove deprecated functions in RelationsMapIndex
7314118a3 Remove deprecated BoolVector class
f6e6b1873 Remove deprecated NWRIdSet class
1676d386e Remove deprecated AssemblerConfig constructor
098f5f81e Remove comments referring to deprecated functions recently removed
4b3f18a9f Github actions: Disable Fedora 34 build
f8f54de13 Make conversion to double explicit
62b8ebe93 Various cleanups based on clang-tidy warnings
95016bf9c Use modern member initialization
3dc22331f Add lots of const's
7b9b68667 CMake config: Also check for newer clang-tidy versions
3ed568f74 Print start of offending string in overlong string exception
5663f7781 Github action: Build on Fedora 36 instead of 34
dcb34b53e Make bzip2 unit tests pass on musl-based systems
73d3594b7 Github action: Fix build on Ubuntu 22.04
a65d90902 Add lz4 library to AppVeyor build
a9416a981 Github actions: Build with Ubuntu 22.04 instead of outdated 21.04
4acdcfd40 Fix bug in members database test case
04506b22f Merge pull request #348 from AMDmi3/thread-name-freebsd
4d01c4f09 Implement set_thread_name() on FreeBSD
1fb34f931 Merge pull request #347 from a-balashov/master
6a34529d1 Fix return type.
5cec5e9c7 Fix compilation problem in example
9c50fde42 Release v2.18.0
8ab3ec47a Add a note in the source code about missing changeset id in CRC
d9264f597 Remove code that has been deprecated for a while
4ee289652 Update change log
50fe2b633 Formatting
a9ed5f93d Modernize some code
3cd09750a Rule of 5 for IdSetSmall
172f01b19 Use noexcept for move constructor/assignement
53ad0fa06 Remove OSMIUM_NORETURN macro
83002751c Use system_error instead of runtime_error where it fits better
35aecff32 Formatting fix
88c97620f Release v2.17.3
49d07bd8c Github actions: Give slow macOS machines more time
5971549fc Update change log
5aa70017c Update included Catch framework to v2.13.8
6683867cf Bugfix: Removed deadlock when shutting down active Reader
9c1cfc06b Update copyright date to 2022
481c77ed6 License file was renamed a couple of years ago
9e709fe3b Release v2.17.2
55f2a9423 Fix various formatting issues
9b94aa798 Fix detection of std::variant availability
97c6c282d Update change log
29b9ca1eb Use std::variant instead of boost::variant if available
5aea3bffb Add note about deprecated code to be removed to change log
67ca42393 Mark osmium::geom::CRS and Projection classes as deprecated
d7907274a Remove unused include
322fd9396 Don't install (deprecated) sparsehash on msys2 build
ac5a20e64 Github actions: Use lz4 library in CI builds
83af3efe7 Remove various workarounds for Windows compiler
156a4600f Github action: Also build benchmarks on Windows CI builds
38741c61e Bugfix: Possible dereference of invalid iterator in area assembler
0a51d0e69 Declare support of sparsehash based index deprecated
c7f136fb9 Remove dependency on boost::filter_iterator
a58a869c2 Disable clang-tidy warning
0af04dcf3 Add missing virtual destructors and use rule of 5
437461fa6 Add explicit explicit
da202152d Github actions: Add clang-tidy workflow (runs only on demand)
205ad0347 Various small cleanups based on clang-tidy findings
b6fed6b48 Avoid bugprone-implicit-widening-of-multiplication-result warning
8cad37cb8 Use `return` or `throw` instead of std::exit where possible
b89da1374 Various clang-tidy fixes
555918726 Better variable name
4e16fd340 Use explicit constructor
e51709efa Github CI: Also test on Windows 2022 (beta)
d8e4acba5 Do increment test together with copy constructor test
bbb0e169e Remove dependency on boost::indirect_iterator
5962b26be Github actions: Add Fedora 35 CI build
7180195f4 Github actions: Fix Debian testing gcc build
a3a1974c2 Switch from catch version 1 to catch2 as test framework
f031f8e26 Fix signed/unsigned comparisons
f3c8f86ab Get file size in Reader earlier, before we use fd in other thread
0d910154e Remove unused variables
d063e894b Bugfix: Do not read from queue that might be empty.
5c1d8d619 Modernize clang-tidy config
8e09b1c99 Pass by value and move std::string
56506a35f Github Actions CI: Remove build with thread sanitizer
68dbf631d Set timeouts on Github action workflows
346a92232 Remove superfluous buffer.commit()
d9167bfb9 Rework Github actions
b9582997d Fix stringop-overflow warning on GCC
5977dde02 Bugfix: Checking of ID order
44c05bf6f Add offending IDs to out-of-order exception messages
421814b3f Add more object comparison tests
090e70064 Workaround for GCC in C++17 mode
0901c5aee Set CMake minimum version to 2.8.12
ddce269e7 Remove unused includes/libraries from test
10520b3a9 Fix threading problem
ae90568c9 Make integer type conversion explicit
6ebfbb2a7 Revert "Make integer type conversion explicit"
ea58b8100 Replace std::forward with std::move for clarity
309fac854 Cast unicode literals in C++20
351209de9 Put two enum constants we are using together into same enum
e933414c1 Use std::invoke_result_t instead of std::result_of from C++17
134fcfb77 Use explicit casts from enum constants to double
568d7dee7 Make integer type conversion explicit
a11e77db1 Add missing initialization
a2c4f5031 Make some member functions static
f75e01e9f Make member functions static in examples
489e19dd1 Small cleanups in Reader
b6d6c5b90 Fix include order
aa684d06c Avoid warnign in CMake script for finding gem
78e28d1f5 Add Github sponsoring button
d124e2ea7 Release v2.17.1
30f5c4a95 Link to help.osm.org as further support option
f277d1379 Add github issue template
315709f08 Update change log
068c7405b Store offset in Reader directly from Decompressor
586d9fbb6 Make tracking of file size the responsibility of the Reader
5dcc2fe89 Mark page cache blocks as DONT_NEED later,
0cf064c8c Fix file_size()/offset() functions for PBF files
15d594fe6 Better implementation of integer parser for OPL parser
85633a023 Only set OSMIUM_EXPORT when OSMIUM_DEFINE_EXPORT is set
e2de86aff Add missing initializer in test
17f251c91 Add support for fadvise DONT_NEED to the PBF reader
313a3e598 Check env var OSMIUM_CLEAN_PAGE_CACHE_AFTER_READ
8a000cf89 Add option to use or not use fadvise in decompressors
7f9c48654 Read PBF files without an extra thread
cd7d5fa45 Add osmium_tags_filter example showing use of tags filter
b4901a312 Use newest version of gdal.hpp
02d26a97e Mock out OSMIUM_EXPORT macro for header checks
5d50405a8 Explicitly export exception types.
4bdb688c0 Remove Ubuntu 16 CI runs
f94e1218d Use #ifdef instead of #if to check if a macro is set
19d4e5f46 Allow integers with up to 18 digits in OPL parser
7316c657e Rename confusing variable name
8f5a85235 Remove unnecessary int -> double -> int conversion in PBF output
e970573a4 Add Writer::set_header() function to set header after constructing
9d5b890f7 Do not try to compile osmium/geom/projection.hpp without proj lib
c95404d78 Make compile/test with proj lib optional
5e8e6630d Github actions: Remove broken coverage workflow
111529b3c Do fewer string allocations in PBF reader
daae73d58 Check OSMIUM_USE_POOL_THREADS_FOR_PBF_PARSING env var only once
b263ba5e8 Release v2.17.0
d484726ed Update the notes for developers
e0045079a Update change log
7e0a0867f Cleanup and some new asserts for o5m parser code
66c5efe2f Bugfix: Another OPL parser bug
a4a57b1d6 Bugfix: Access beyond end of buffer in OPL parser
4dd1f9a11 Bugfix: Avoid integer overflow in o5m parser
c236ceb5d Update to newest osm-testdata submodule
f17bd7af9 Bugfix: OPL parser stumbled on "%%" in text
f8d031311 Add value accessor function to DeltaDecode class
3d88936fb Fix msys2 build
56b023608 Add convenient access functions to nwr_array
aa88c1c3c Add version of osmium::memory::Buffer::purge_removed without callback
dd2788554 Update change log
5702748fc Disable clang-tidy check that has false positives
b36d6c998 Code cleanup
44c6286a8 Avoid type confusion on Windows
d5aa671c0 Github actions: Install missing compilers
d6ea0da09 Fix failing test missing initializer
58839058f Add flag osmium::io::buffers_type for Reader
ef6f0a614 Remove code duplication in OSM file input parsing
ae936b158 Add recent changes to changelog
61da2e4e2 Add Github action GCC 10 Dev build
fa152fb8b Disable spurious warning generated by GCC >=8
bffdb24a5 Revert "Disable spurious warning generated by older gcc versions"
cb35dd02a Rename variables to avoid shadowing other function/variable names
2a929cc19 Tinker with cppcheck warning suppression
c81e76595 Reference parameter can be const
b6fc08347 Reduce scope of "visible" variable
b6e211116 Use shared_ptr instead of unique_ptr
8a78ac477 Disable clang checks about global variables in some tests
06a1efc9b Disable spurious warning generated by older gcc versions
39a518a93 Remove github actions Windows workflow
445fc4ecd Add "ids" output format
69ab990f3 Better bucket_count tracking without global
8a9679c3e Move more of the pbf serialization code into pool threads
5ced435b9 Cleaner implementation of PrimitiveBlock that doesn't need reuse
770cd8a89 We don't need the type() function
7cdf0765e We know how many nodes there usually are in a DenseNode block
f81469d63 Make a copy of the output options in the PrimitiveBlock
1cfe4818f Don't use references as class members
c488a14d1 Use DenseNodes only when needed in PrimitiveBlock
d38d6635c Move SerializeBlob class down in the file
953fdd57f Remove superfluous std::move()
9bb70f968 Optimization: Wrap check for future in atomic bool check
e9ab79c39 Use memset/memcpy instead of std::fill_n and std::copy
d24ca6b77 Different varint decoding for faster PBF decoding
1b24ed181 Adapt cppcheck suppression for newer cppcheck versions
bc915d487 Bugfix: Can't use std::forward multiple times on the same object
4679374a9 Remove superfluous std::forwards
b8fcdfbf8 std::forward not needed
4e406564a Can't use std::forward twice on a parameter
0d5d92ab8 Can't use std::forward twice on a parameter
f75faf2e8 Avoid strange segfault on Windows
b81deee17 Remove Windows build on Github actions
9543c8898 Correct formatting for cppcheck supression
f3bdabde7 Remove unnecessary test
77a5d0b15 Sprinkle some const's around the code
644efeaa7 Use assert instead of exception in "can not happen" situation
d9b1c12c8 Use const buffer (because we can)
f79e46d86 Wrap unmap() in try/catch on Windows also
b8621fb78 lat/lon_without_check() can be noexcept
7302bcc6d Rename some local variables to not shadow member functions
aaa983625 Fix functions accessing borders of box (noexcept)
36c4cc2d8 Another call to posix_fadvice() that should only happen on Linux
016305de6 Check we don't have a negative offset before calling fadvise
c3e877e0e Only call posix_fadvise() on Linux
94a5c9063 Use fadvise to tell kernel about our reading patterns
6a4f553a6 Add functions to access storage from node_locations_for_ways handler
3aef811e2 Add polygon output to WKB factory
04720be8c Add convenience functions to access box boundaries
1705adb8a Remove undefined behaviour
072612ab9 Ignore metadata setting on reader for history/change files
d7a880873 Update docs related to read_meta setting
336001aba Merge pull request #321 from fxcoudert/patch-1
c587e53e8 Update catch.hpp
b293e96db Fix: Test failure because of ordering by address, not string
46c063928 Release v2.16.0
a91eac694 User cmake helper for finding LZ4
6009389e3 Disable data test because it doesn't work (No Spatialite in OGR)
4160d2378 Update CI workflow
6318f51fa Remove old build.bat
78ac3abda Disable some clang-tidy warnings
efcebbfe5 Use simple return instead of std::exit
b5cec1a9b Avoid else after return
2fb593a56 CMake config: Update list of clang-tidy versions we look for
c2da87d08 Update change log
54894fdbb Make number of bytes written to an OSM file accessible from Writer
0e47ca0d2 Use std::stable_sort instead of std::sort in area assembler
3d5c90750 Add function to show supported pbf compression types
d22b419c9 Do not use pkg-config to find LZ4 library
366c3f5ac Make pbf_compression into an enum class
87e492aad Replace unordered_set by vector
9ca43812a Fix broken comment
ce88a2a08 Use proper name "macOS"
6cec53471 Update copyright date
2c9ab8627 Only try to compile lz4 code if it is enabled
9be3779b1 Make zlib_default_compression_level() function constexpr
4d629c91b Error out if zstd compressed data is detected in a PBF file
e3a8b2af4 Add support for LZ4 compression in PBF files
78f70e50c Prepare for more (optional) PBF compression types
5cd5bd6f6 Add support for setting zlib compression level when writing PBF files
23d662260 Add optional compression_level parameter to zlib_compress()
f077b8351 Add lz4_data and zstd_data fields in protobuf Blob message
35939b2cc Make some file helper functions noexcept
b74047957 Update submodule
cce503a44 Add some casts in CRC code to avoid undefined behaviour
5e72f050f Make timer class member functions non-static again
729b0317b Replace two timers by a single one, we only ever use one or the other
98268aa95 Switch from Travis CI to github actions
6c4ee8b6b Fix appveyor build
91350d7cd Iterate over const ref to avoid copy
0e14ef635 Fix cast so we don't get UB
26144743b Array iterator isn't necessarily a pointer
1109d7347 Range-for loop iterates over values not references in this case
ce09cb7b8 Also check for clang-tidy versions 11 and 12
fd106ff08 Disable some clang-tidy checks
2bee7dd34 Avoid const return values so automatic move will work
fe3f00dad Make member functions const if possible
a82bc94f6 Use member initializer where possible
c757a1d5f Always initialize variables even if not strictly necessary
efd7e0799 Make some member functions static
89134cafb Use qualified auto where it makes sense
a1cbd7cd2 Merge pull request #314 from tomhughes/dependency
ec65b9f44 Fix typo in test dependency
c965256e3 Derive exception class from std::exception
4352b68ca Mark overridden destructors as override
3f64f0189 Add some documentation around the use of the thread pool
be04b4d58 Use stable sort when sorting ObjectPointerCollection
1bd2059f2 Release v2.15.6
378305f4c Avoid wrong integer promotion
9fc63bc5e Update change log
ae649700c Quick fix: Restrict recursion depth to 20 when building areas
e9368b642 Add getter function for object_id to problem reporter
9599aa447 Mark classes as final instead of individual member functions
e076b6d27 Add IdSetSmall::merge_sorted function
fd7b1e9c9 Little optimization for IdSetSmall
69113a832 Release v2.15.5
1af498ad6 Update change log
312a537c9 Update travis config according to the newest fashion
a5f61f66f Revert "Remove YCM config"
4db1ab3c0 Mark projection classes using PROJ library as deprecated
dae2898db Revert "Also support API of modern PROJ library (version 6 and above)"
2c9ea591a Revert struct initialization because old GCCs don't like it
c2d4734d7 Various small cleanups
f960e9c5f Update change log
d0cd61337 Make OPL parser more strict: Attributes can only be specified once
d5a76e635 Also support API of modern PROJ library (version 6 and above)
cd580daae Remove YCM config
531828135 Merge pull request #304 from zhaitianduo/master
3fa9a2f47 Stick to west const convention
42fc3238f fix parsing lat bug from pbf densenode
a2df9f058 Make available_space() always return 0 on Windows
00471e02c Merge pull request #303 from CloudNiner/patch-1
fb305564a Fix location attr variable name typo
e532f5938 Add additional constructor for member_type(_string) taking char type
872338442 Add iterator to nwr_array
2709257c3 Check how much space is available in file system before resizing file
c8920d819 Disable our own deprecation warning when checking our headers
392f31c87 Update copyright date
51d15f8bd Document that location and box parameters are WGS84
01bf91a45 Bugfix: Do not close stdout after writing OSM file to it
31cc17dc4 TagMatcher now remembers whether it has a value matcher.
0bb6f48b2 Simpler emptyness test.
a2baf014e Split up large test cases.
e571f87fb New builder::attr::_t() function to set tags from comma-separated string
a9793a429 Doc fix: Not a question.
2010af4d1 Remove unused header include
f56d7a2ef cleanup code
07589f471 Allow single C string or std::string as argument for _tag.
cf5d3b2b0 Make distance function noexcept and use std versions of math funcs
3c605280f Make two almost identical overloads of haversine for pyosmium
7d85f5538 Make haversine function take a NodeRefList instead of WayNodeList
a43ffb61c Release v2.15.4
a77b99dbd Various small code improvements in area assembly code.
13ba60cb7 Reduce memory consumption in area builder
2e1d7f05b Keep track of recursion depth in area builder.
e8a7d81eb Make debug output for complex multipolygons slightly more verbose.
23c7341de Revert "Travis: Also try building on ARM."
49f8c54c7 Travis: Also try building on ARM.
e0bc0e55e Travis: Remove failing old OSX build.
a83406e45 Add osmium::Options::empty() for consistency with STL containers.
8fb753a6f Release v2.15.3
5eea80c50 New header option "sorting" when reading and writing PBFs.
46a6e4399 Bugfix: Do not propagate C++ exception through C code.
c47366d3f Release v2.15.2
1c5762f65 Change member variable init to make GCC 4.8/4.9 happy.
2503f94c9 Initialize array.
e2c10a1b3 Use std::array for nwr_array class.
8c95a6605 Workaround for old compiler.
91d63d1a5 Use larger int so we don't get narrowing conversion warnings.
96d963155 Make clang-tidy happy.
180ad2e0c Bugfix: Call parent constructor in IdSetDense copy constructor.
d0554c9d4 Add swap, copy constructor and assignment operator to IdSetDense.
b30715ed8 Retire use of OSMIUM_NORETURN macro. Use [[noreturn]] instead.
12e5f69ad Make wrapper class constructor explicit.
aeb514563 Update included catch.hpp to 1.12.2.
07322bd94 Update change log.
1bd037197 The apply function can now also take lambdas.
618e4af0a Fix Appveyor badge.
162694bda Merge pull request #285 from tusharpm/appveyor_fix_msys
820798c6a Use workaround for spatialite - readline
c3e05d977 Travis: Better homebrew config and also run on OSX 11.
6df0bbea8 Fold one-liner function only used once into code at call site.
e7f1f0ccc Make member functions of Timer class non-static again.
0204aa980 Remove assert, because check is not needed.
e3e60312a Revert "Use ftruncate64 instead of ftruncate."
9fa018323 Enable use of the old proj API in proj version 6.
9d046b4c8 Use ftruncate64 instead of ftruncate.
1a7654b05 Make some member function static.
98ce21919 Disable more clang-tidy warnings.
ba8502702 CMake config: Also look for clang-tidy-10.
90391c15a Use explicit cast and document why it is okay.
ebc5164f7 Disable narrowing conversion warning here.
1b4bbcb37 Make it clear that we are intending a conversion to double here.
cbe2e2f3e Build some of travis builds on dist bionic.
e7e4031ff Fix integer conversion algorithm.
c664fc4be Disable another clang-tidy warning.
df23ce407 Disable overstrict clang-tidy warning.
39e69d7b7 Use const ref instead of value parameters.
42e480430 Disable clang-tidy avoid-c-arrays checks.
032ee4c31 Use std::array instead of C style arrays.
60b936229 Use uppercase letters for integer literal suffixes.
f0e7d1281 Disable clang-tidy checks.
accb19c6e Disable clang-tidy check in test.
d0ebf2668 Disable clang-tidy warning cppcoreguidelines-avoid-magic-numbers.
bbbb246ef Replace c-style arrays by std::array in some places.
631e39c12 Use uppercase letters for integer literal suffixes.
c59fac3d7 Give name to unused function parameters to make clang-tidy happy.
91151ad52 Remove const from return types because it doesn't do anything.
49dea1c31 Do not use multiple declarations on a single line (readability).
90115a5bd Do not return pointer to local string.
546681234 Also look for newer clang-tidy versions in CMake config.
5858c491a Better error messages when parsing a timestamp fails.
5c06fbb60 Ignore <bbox> or <bounds> subelement of <way> or <relation>.
90f26c772 Document that valid values must be used for projections.
65a75b7d2 Make some compilers happy.
7d82a43aa Do not build areas with more than 100 locations where rings touch.
f3003e774 Fix wrong comment.
35f184f08 Release v2.15.1
3553d03bd Update copyright date to 2019.
ffa35e0c2 Appveyor config: Move the slow MSYS2 compilation to the back.
d6024a9d6 Update change log.
10ecb1335 Fix bugprone-forwarding-reference-overload clang-tidy warnings.
b66bc888d Disable bugprone-macro-parentheses clang-tidy check.
40bf6614e Switch appveyor badge
c19e26906 Disable a warning on new GCC compilers.
28c753846 Fix signed bitwise operation.
1304ad246 Bugfix: Function is not noexcept.
ce5867ea1 Put try/catch around most of main() in benchmark and test programs.
bfe1c5384 Fix exception specifications.
6c1ade020 Put try/catch around most of main() in example programs.
345359a2a Bugfix: Integer truncation on 32 bit systems.
7b66ff706 Fix or disable some clang-tidy warnings.
538e0f52f Bugfix: correctly throw exception.
c582ebdcf CMake config: also find clang-tidy-7.
0ec6cda55 Add some assertions testing alignment.
e40fc3ff0 Cheat compiler so we don't get a warning.
882f01e64 Compile with NDEBUG in RelWithDebInfo mode.
9600bcdaf Merge pull request #275 from Nakaner/test_dump_as_list
0e9344f9b replace std::bind by lambdas, replace hardcoded type
8e8a4dbd8 test Map::dump_as_list
a70e4accb Merge pull request #274 from Nakaner/index-test-cleanup
aa2555ef5 fix typo
b48567a17 test SparseMmapArray as well
825859f9d Release v2.15.0
bde2d0024 Give Buffer a better move constructor and move assignment.
0bd61ba95 Some cleanup.
a46ea362b Fixed some clang-tidy warnings.
5c9d3c2de Add function to mark tags on OSM objects as removed.
da5f083c7 Make chunk_bits in IdSetDense configurable.
e5600bbc6 Make the result type of TagsFilter configurable.
b107e964b Some code cleanup.
99ea830e0 Use explicit type instead of auto.
baff26c29 More efficient use of Buffers in XML/OPL/O5M parsers.
6e4fc2ed3 Various formatting fixes and small cleanups.
dc5d08d54 Consolidate queue config code.
2a336d445 Update change log.
968f88152 Stackless implementation of Reader.
7b14860ff Formatting.
1dd2a9f1f Tweak buffer size for PBF decoder.
d11ab7db2 Make grow_internal a private method.
a8737494c Fix default initialization of Buffer.
f6b98df70 Rewrite initializer of unique_ptr.
1efcc32e8 Remove redundant get() call.
bef66b861 Experimental code using nested buffers to reduce memory consumption.
2302da299 Clean up error handling code of bzip compression.
67786d98c Clean up error handling code of gzip compression.
dd507e322 Move coverage settings before configuration type settings.
07162475f Fix windows build.
e1912a8c2 Also implement compression tests for writer side.
16d7800a3 Remove two const_casts.
a5e3bd8af Cleanup of compression code and more tests.
f42e68745 Fix typo.
a1f88fe44 Update travis config to xenial.
5bb5db6a3 Disable clang-tidy warning.
4af366a30 Move appveyor config to new Visual Studio version.
75fc34c0b Revert use of some enums (because of problems with MSVC).
86e9d4393 Use enums for some more constants.
392347512 Force underlying type for some enums.
f4ecfc9fe Disable some clang-tidy warnings.
09d785414 Reduce the number of builds on travis.
2056202de Merge pull request #273 from Nakaner/test-missing-rel-member
ba511d204 Use enums for integer constants.
59ebb9120 Use const where possible.
5f9ac226c Fix formatting.
f5e996670 Use enums for integer constants.
4280437be Remove unused enum names.
76bbf25b2 Test that RelationsManagerBase::get_member_object returns nullptr
091a75f5a Hardcode %lld format instead of using <cinttypes> PRI macro.
d6abc4dd7 Travis: Also build with gcc 7.
fdf45be5d Update travis conf with newer OSX builds.
e4b3d8f31 CMake config: Fatal error with better message if libosmium isn't found.
0632d6007 Formatting/Cleanup.
b190b95e5 Set the xml_josm_upload header option when reading XML files.
4a3cbe0f1 Disable docker builds on travis. They are being phased out by travis.
a5cb873bc Sort includes.
0e4c57a09 Merge pull request #271 from DennisOSRM/patch-2
13dfd56e1 Minor: Wrong order of qualifiers
1bb69ec62 Code cleanup.
54ae75658 Merge pull request #269 from Nakaner/dump_sparse_as_array
bb1a4e3e8 make const what can be const
d44c79a5e remove duplicated initialization with empty values
c2ef6a67e also test SparseMemArray and don't test SparseMmapArray on OS X
31f10bb2f add comments and check all entries in the index
c30845bcf code style issues
5ff69d536 use std::fill_n
78939b47a remove unnecessary variable
93e747244 style fixes
a76385a2e simplify test
364830df3 use a simpler loop
393be1270 fix code style issues, use std::unique_ptr instead of bare pointers
309e890bf write empty values during each iteration
0aa4c914e Update to newest gdalcpp.
6fea0e82a tidy up unit test
d0fce0ac3 don't confuse the number of elements and the size of the array
98923b8bb MinGW appveyor build is broken again. Try this workaround again.
d9c7e25e0 Merge pull request #266 from Nakaner/dump_and_load_index_test
ccbcea885 use better name for variable
d91f9c8a1 Make sure assert() is not defined in test.
f8dc3aad4 implement SparseMmapArray::dump_as_array
02b2ebde1 Add DenseMemArray and run DenseMmapArray only on Linux
8ba350a9b use the file index, not the mmaped index
15f215095 add unit test checking dumping and loading of dense indexes
2d5244a24 Remove workaround.
058cd3a36 Release v2.14.2
ff16782fb Rewrite code to be byte-order independent.
c7e76743a Add workaround for gdal problem on MinGW appveyor build.
75d1b48b1 Remove test that doesn't work reliably on all architectures.
269066889 Release v2.14.1
f21bf5738 Write assert in a way it also works on 32 bit machines.
748917839 Refactored some SECTIONs from test cases into TEST_CASEs.
3af83c68a Fix a WKB test which was too sensitive to tiny arithmetic errors.
a198b06ba Update change log.
3dfc97fc2 Split up large test cases.
4cae84b1d Add missing includes.
dd2a0caf8 Use auto after static_cast to avoid duplication of type.
6fdda54ae Use our internal functions for writing out locations in box output.
060b0ec59 Use unsigned in bit operation.
bd8b76eee Remove utfcpp library from libosmium.
467e1a1f1 Add UTF8 to Unicode codepoint conversion.
68c981313 Use our own function for unicode codepoint to tf8 conversion.
2a35ad727 Use protozero::byteswap_inplace instead of htonl/ntohl.
452f56e87 Add Timestamp::to_iso_all() function which also outputs the 0 value.
5f6638f88 Ask for the newest Protozero version.
b9886c58b Do a static_cast to avoid compiler warnings.
954b9e5a4 Move test case SECTIONs into their own TEST_CASEs.
be99d53ef Add some asserts, docs, and noexcepts.
6ce3bcb10 Replace some SECTIONs by TEST_CASEs in test code.
05841f16f Disable the last clang-tidy warning we are seeing.
e16b4ad1e Disable warning about struct initialization.
d7e033672 Correct way to disable clang-diagnostic warning in clang-tidy.
f60c8fa0a Proper initialization.
6aa3929e1 Resolve some clang-tidy reports.
5bb84716d Mark static_cast_with_assert as deprecated.
e51b8e3af Remove remaining use of static_cast_with_assert.
d19d97c46 Refactor StringTable to minimize casts needed.
cbf0c6e1a Fix naming of member functions that are not found by doxygen.
cd3a18a53 Add support for using the CRC32 implementation from the zlib library.
874a79133 Document use of mutable in DiffIterator class.
07985a68e Fix compilation error when fileno() is a macro.
eee3d0af6 Use https links where possible.
6465f9ff2 Use https URL for osmcode.org.
60b3bcc16 Make two functions noexcept.
ff160aa30 Add clear_user() function to OSMObject and Changeset.
63a6cf4b4 Use {} for constructors.
47b66ed46 Merge pull request #255 from DennisOSRM/patch-1
3e015b4c7 Make sure -stdlib=libc++ is only set on Mac when compiling with Clang
7674775c1 Document MultipolygonCollector class as deprecated.
e114fefb9 Travis: build with clang 6.0, remove clang 4.0
8be488572 CMake config: Also look for clang-tidy version 7.
2e7eb285e Fix namespace closing comment.

git-subtree-dir: third_party/libosmium
git-subtree-split: cd892f98e8e355f5d0a4b717c153c7de0d15bb0d
@SiarheiFedartsou SiarheiFedartsou marked this pull request as ready for review July 13, 2024 12:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant