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

Tile size: water only changes #2010

Merged
merged 10 commits into from Dec 16, 2021
Merged

Tile size: water only changes #2010

merged 10 commits into from Dec 16, 2021

Conversation

nvkelso
Copy link
Member

@nvkelso nvkelso commented Nov 19, 2021

Connects to #1998 and replaces PR #2000 (RIP).

  • Update tests
  • Update docs

@nvkelso nvkelso changed the title water only changes Tile size: water only changes Nov 19, 2021
@nvkelso
Copy link
Member Author

nvkelso commented Dec 9, 2021

#2012

params:
source_layer: water
start_zoom: 0
end_zoom: 16
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

exclusive

@peitili peitili self-assigned this Dec 14, 2021
@peitili
Copy link
Contributor

peitili commented Dec 14, 2021

This PR has 95 integration tests failures and 23 errors vs master where it has 92 failures and 0 errors

23 errors vs master:

======================================================================
ERROR: test_baltic_sea_exists (integration-test.1030-invalid-wkb-polygons.InvalidWkbPolygons)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1030-invalid-wkb-polygons.py", line 51, in test_baltic_sea_exists
    {'kind': 'ocean'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_caspian_sea_exists (integration-test.1030-invalid-wkb-polygons.InvalidWkbPolygons)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1030-invalid-wkb-polygons.py", line 40, in test_caspian_sea_exists
    {'kind': 'ocean'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_mvt_feature_validity (integration-test.1030-invalid-wkb-polygons.InvalidWkbPolygons)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1030-invalid-wkb-polygons.py", line 63, in test_mvt_feature_validity
    with self.features_in_mvt_layer(5, 17, 9, 'water') as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1106, in inner
    pfl, extra = self._generate_feature_layers(z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_min_zoom_osmdata (integration-test.1287-ne-earth-min-zoom.EarthMinZoomTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1287-ne-earth-min-zoom.py", line 44, in test_min_zoom_osmdata
    'min_zoom': 0,
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_drop_label (integration-test.1477-water-layer-too-big.WaterLayerTooBigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1477-water-layer-too-big.py", line 46, in test_drop_label
    'name': 'Foo',
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_greenland_sea (integration-test.148-sea-ocean-labels-water-layer.SeaOceanLabelsWaterLayer)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/148-sea-ocean-labels-water-layer.py", line 31, in test_greenland_sea
    'label_placement': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_gulf_of_california (integration-test.148-sea-ocean-labels-water-layer.SeaOceanLabelsWaterLayer)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/148-sea-ocean-labels-water-layer.py", line 19, in test_gulf_of_california
    'label_placement': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_generative_non_maritime (integration-test.1482-maritime_boundary-buffered_land.MaritimeBoundary)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1482-maritime_boundary-buffered_land.py", line 32, in test_generative_non_maritime
    'maritime_boundary': type(None),
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_label_lake_athabasca_z5 (integration-test.1730-further-water-layer-name-dropping.WaterLabelZoomAdjustmentTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1730-further-water-layer-name-dropping.py", line 222, in test_label_lake_athabasca_z5
    'name:de': str,
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_boundary (integration-test.1810-alternate-viewpoints.CountryBoundaryTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1810-alternate-viewpoints.py", line 95, in test_boundary
    'name': 'XX - YY',
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_bays (integration-test.1838-too-many-bays.BayTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1838-too-many-bays.py", line 35, in test_bays
    with self.features_in_tile_layer(z, x, y, 'water') as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_openstreetmapdata_land (integration-test.399-add-island-labels.AddIslandLabels)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/399-add-island-labels.py", line 68, in test_openstreetmapdata_land
    {'kind': 'earth', 'source': 'osmdata.openstreetmap.de'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_horsens_fjord (integration-test.400-bay-water.BayWater)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/400-bay-water.py", line 45, in test_horsens_fjord
    {'kind': 'fjord', 'label_placement': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_san_pablo_bay (integration-test.400-bay-water.BayWater)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/400-bay-water.py", line 21, in test_san_pablo_bay
    {'kind': 'bay', 'label_placement': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_sansum_narrows (integration-test.400-bay-water.BayWater)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/400-bay-water.py", line 29, in test_sansum_narrows
    {'kind': 'strait', 'label_placement': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_great_salt_lake_ne (integration-test.628-standardize-water-kinds.StandardizeWaterKinds)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/628-standardize-water-kinds.py", line 16, in test_great_salt_lake_ne
    {'kind': 'lake', 'alkaline': True})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_planet_way (integration-test.742-predictable-layers-pois.PredictableLayersPois)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/742-predictable-layers-pois.py", line 293, in test_planet_way
    {'id': 26278098, 'kind': 'plant'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_drop_sea_polygon_but_keep_label (integration-test.951-remove-sea.RemoveSea)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/951-remove-sea.py", line 25, in test_drop_sea_polygon_but_keep_label
    {'id': -4594226, 'kind': 'sea', 'label_placement': None})
  File "/home/circleci/project/integration-test/__init__.py", line 1495, in assert_no_matching_feature
    self.test_instance.assert_no_matching_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1328, in assert_no_matching_feature
    self.assertions.assert_no_matching_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1198, in assert_no_matching_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_boundaries (integration-test.976-fractional-pois.FractionalPoisNe)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/976-fractional-pois.py", line 135, in test_boundaries
    'kind': 'region'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_roads (integration-test.976-fractional-pois.FractionalPoisNe)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/976-fractional-pois.py", line 141, in test_roads
    'source': 'naturalearthdata.com'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_water_osm (integration-test.976-fractional-pois.FractionalPoisNe)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/976-fractional-pois.py", line 149, in test_water_osm
    'name': type(None)})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_water_ne (integration-test.976-fractional-pois.FractionalPoisNeGenerative)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/976-fractional-pois.py", line 177, in test_water_ne
    'name': 'John H. Kerr Reservoir'})
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

======================================================================
ERROR: test_non_maritime_boundary (integration-test.988-add-collision-rank.CollisionRankTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/988-add-collision-rank.py", line 269, in test_non_maritime_boundary
    'collision_rank': 807,
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1147, in assert_has_feature
    with self.ff.features_in_tile_layer(z, x, y, layer) as features:
  File "/usr/local/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "integration-test/__init__.py", line 1086, in inner
    tile_layers = self._generate_tile(z, x, y)
  File "integration-test/__init__.py", line 1069, in _generate_tile
    z, x, y)
  File "integration-test/__init__.py", line 1065, in _generate_feature_layers
    self.fixture_env.output_calc_spec())
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 416, in process_coord_no_format
    unpadded_bounds, log_fn)
  File "/home/circleci/env/lib/python2.7/site-packages/tilequeue/process.py", line 101, in _postprocess_data
    layer = fn(ctx)
  File "/home/circleci/project/vectordatasource/transform.py", line 2717, in drop_properties
    return _project_properties(ctx, action)
  File "/home/circleci/project/vectordatasource/transform.py", line 2694, in _project_properties
    if where is None or eval(where, {}, local):
  File "queries.yaml", line 1, in <module>
    all:
AttributeError: 'NoneType' object has no attribute 'get'

3 new Failures vs master:

======================================================================
FAIL: test_successful_merge (integration-test.1135-water-lines-merge.WaterLinesMergeTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1135-water-lines-merge.py", line 30, in test_successful_merge
    }, 1)
  File "/home/circleci/project/integration-test/__init__.py", line 1498, in assert_n_matching_features
    self.test_instance.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1331, in assert_n_matching_features
    self.assertions.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1224, in assert_n_matching_features
    (num_matching, properties, layer, n, num_features))
AssertionError: Found 0 features matching properties {'label_placement': <type 'NoneType'>, 'kind': 'river', 'name': 'foo'} in layer 'water', but was supposed to find 1. Found 1 total features.

======================================================================
FAIL: test_unsuccessful_merge_diff_props (integration-test.1135-water-lines-merge.WaterLinesMergeTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1135-water-lines-merge.py", line 109, in test_unsuccessful_merge_diff_props
    }, 2)
  File "/home/circleci/project/integration-test/__init__.py", line 1498, in assert_n_matching_features
    self.test_instance.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1331, in assert_n_matching_features
    self.assertions.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1224, in assert_n_matching_features
    (num_matching, properties, layer, n, num_features))
AssertionError: Found 1 features matching properties {'label_placement': <type 'NoneType'>, 'kind': 'river'} in layer 'water', but was supposed to find 2. Found 1 total features.

======================================================================
FAIL: test_unsuccessful_merge_same_props (integration-test.1135-water-lines-merge.WaterLinesMergeTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1135-water-lines-merge.py", line 69, in test_unsuccessful_merge_same_props
    }, 1)
  File "/home/circleci/project/integration-test/__init__.py", line 1498, in assert_n_matching_features
    self.test_instance.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1331, in assert_n_matching_features
    self.assertions.assert_n_matching_features(z, x, y, layer, props, n)
  File "integration-test/__init__.py", line 1224, in assert_n_matching_features
    (num_matching, properties, layer, n, num_features))
AssertionError: Found 0 features matching properties {'label_placement': <type 'NoneType'>, 'kind': 'river', 'name': 'foo'} in layer 'water', but was supposed to find 1. Found 1 total features.

======================================================================

@peitili
Copy link
Contributor

peitili commented Dec 15, 2021

made a commit to try to fix the integration tests errors (not failures)

# should only have top 10 features
self.assertEqual(10, len(features))
# should only have top 2 features
self.assertEqual(2, len(features))
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At zoom 8 our area threshold for labels is 500,000,000 (was 200,000,000) and for polygons it's still 20000000.

Under the earlier system 5 meet the area threshold, but after only 2 do. So the changes here make sense to me.

end_zoom: 15
properties:
- id
- area
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could add boundary and osm_relation, too

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

queries.yaml Outdated
- fn: vectordatasource.transform.drop_properties
params:
source_layer: water
start_zoom: 8
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be for low zoom tiles as well, so 8 > 0.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

queries.yaml Outdated
- fn: vectordatasource.transform.drop_properties
params:
source_layer: water
start_zoom: 8
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Low zoom too, so 8 > 0.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

queries.yaml Outdated
] if area >= area_threshold][0]
where: >-
kind == 'lake' and label_placement
kind in ['lake','bay','water','riverbank','reservoir'] and label_placement
Copy link
Member Author

@nvkelso nvkelso Dec 16, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm seeing basin and dock label points very early still in London, and strait along the English Channel.

The full list of water kinds is:

basin, bay, canal, ditch, dock, drain, fjord, fountain, lake, playa, reef, river, riverbank, strait, stream, swimming_pool, water

But perhaps it's too brittle to have a full list (since values will come and go), when the measure should just be that we generated a label_placement for it at all?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps:

      where: >-
        (properties is not None and properties.get('label_placement') is True)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

queries.yaml Show resolved Hide resolved
queries.yaml Outdated
- wikidata_id
- kind_tile_rank
- label_placement
where: >-
Copy link
Member Author

@nvkelso nvkelso Dec 16, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also drop boundary which randomly appears when a river is also forms part of an administrative boundary.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This where clause doesn't seem to work.

There's another pattern we can switch to, like:

  # no lake labels at zoom 0-3:
  # https://github.com/tilezen/vector-datasource/issues/1730
  - fn: vectordatasource.transform.drop_names
    params:
      source_layer: water
      start_zoom: 0
      end_zoom: 4
      geom_types: [Polygon, MultiPolygon]
      where: >-
        kind == 'lake'

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

(6, 40000000000),
(7, 10000000000),
(8, 500000000),
(9, 200000000),
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The larger range of min_zoom remappings is working for features are in the allowlist, woot!

queries.yaml Outdated Show resolved Hide resolved
queries.yaml Outdated
all_name_variants: true
properties:
- name
where: >-
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also: old_name

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

queries.yaml Outdated
properties:
- name
where: >-
geom_type in ('Polygon', 'MultiPolygon')
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same where clause switch as above.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed via 77e663c.

self.assert_has_feature(
z, x, y, 'water', {
'kind': 'lake',
'label_placement': True,
'min_zoom': 5,
'min_zoom': 2, # min_zoom changed at https://github.com/tilezen/vector-datasource/pull/2010/
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only the 'label_placement': True point should have names at this early zoom, and the min_zoom on that should probably be a different value besides 2 (like 7)?

source_layer: water
start_zoom: 0
end_zoom: 15
geom_types: [LineString, MultiLineString, Polygon, MultiPolygon]
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Switched to geom_types param instead of where clause.

source_layer: water
start_zoom: 0
end_zoom: 15
geom_types: [Polygon, MultiPolygon]
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Switched to geom_types param instead of where clause.

(kind == 'water' and zoom < 12) or
(kind == 'canal' and zoom < 13) or
(kind == 'basin' and zoom < 13) or
(kind == 'dock' and zoom < 13) or
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I expanded the list of kinds in this section based on QA where I saw low zoom basin, dock and straight points around London and the English Channel. Now it has every water kind.

@nvkelso
Copy link
Member Author

nvkelso commented Dec 16, 2021

Final QA over Sweden checks out, all remaining issues resolved. Ready to merge.

@peitili
Copy link
Contributor

peitili commented Dec 16, 2021

two new failures:

======================================================================
FAIL: test_drop_label (integration-test.1477-water-layer-too-big.WaterLayerTooBigTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1477-water-layer-too-big.py", line 46, in test_drop_label
    'name': 'Foo',
  File "/home/circleci/project/integration-test/__init__.py", line 1492, in assert_has_feature
    self.test_instance.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1325, in assert_has_feature
    self.assertions.assert_has_feature(z, x, y, layer, props)
  File "integration-test/__init__.py", line 1161, in assert_has_feature
    (properties, closest['properties'], misses))
AssertionError: Did not find feature including properties {'kind': 'water', 'name': 'Foo'}. The closest match was {'sort_rank': 367, 'kind': 'water'}: missed {'name': "None != 'Foo'"}.

======================================================================

======================================================================
FAIL: test_bays (integration-test.1838-too-many-bays.BayTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/circleci/project/integration-test/1838-too-many-bays.py", line 37, in test_bays
    self.assertEqual(2, len(features))
AssertionError: 2 != 10

======================================================================

@nvkelso nvkelso mentioned this pull request Dec 16, 2021
@nvkelso
Copy link
Member Author

nvkelso commented Dec 16, 2021

Those look like they should be updated, but don't show a problem with the new logic.

Let's keep tracking that with #2038, but merge this now.

@nvkelso nvkelso merged commit f7994f6 into master Dec 16, 2021
@nvkelso nvkelso deleted the nvkelso/1998-logical-changes branch December 16, 2021 23:18
@nvkelso nvkelso restored the nvkelso/1998-logical-changes branch December 16, 2021 23:20
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

4 participants