Implements the tilelive API for generating vector tiles from PostGIS

Overview

tilelive-postgis

npm version npm downloads Build Status

Implements the tilelive API for generating mapnik vector tiles from PostGIS.

Installation

npm install @mapbox/tilelive tilelive-postgis

Usage

const tilelive = require('@mapbox/tilelive');
require('tilelive-postgis').registerProtocols(tilelive);

const uri = 'postgis://user:password@localhost:5432/test?table=test_table&geometry_field=geometry&srid=4326';
tilelive.load(uri, (error, source) => {
  if (error) throw error;

  source.getTile(0, 0, 0, (error, tile, headers) => {
    // `error` is an error object when generation failed, otherwise null.
    // `tile` contains the compressed image file as a Buffer
    // `headers` is a hash with HTTP headers for the image.
  });
});

If PostgreSQL server running locally and accepting connections on Unix domain socket, you can connect like this:

const uri = 'postgis:///var/run/postgresql/test?table=test&geometry_field=geom';
tilelive.load(uri, (error, source) => { ... });

You can also use query parameter to specify sub-query like this:

const query = `(select * from schemaName.tableName where st_intersects(geometry, !bbox!)) as query`;
const uri = `postgis://user@localhost/test?table=test_table&geometry_field=geometry&query=${encodeURI(query)}`;
tilelive.load(uri, (error, source) => { ... });

Parameters

The only parameter that is not mapnik specific is:

parameter value description default
layerName string name of the layer in resulting tiles. defaults to the table name for backwards compatibility.

Actual list of parameters you can see here.

parameter value description default
table string name of the table to fetch.
geometry_field string name of the geometry field, in case you have more than one in a single table. This field and the SRID will be deduced from the query in most cases, but may need to be manually specified in some cases.
geometry_table string name of the table containing the returned geometry; for determining RIDs with subselects
srid integer srid of the table, if this is > 0 then fetching data will avoid an extra database query for knowing the srid of the table 0
extent string maxextent of the geometries determined by querying the metadata for the table
extent_from_subquery boolean evaluate the extent of the subquery, this might be a performance issue false
connect_timeout integer timeout is seconds for the connection to take place 4
persist_connection boolean choose whether to share the same connection for subsequent queries true
row_limit integer max number of rows to return when querying data, 0 means no limit 0
cursor_size integer if this is > 0 then server cursor will be used, and will prefetch this number of features 0
initial_size integer initial size of the stateless connection pool 1
max_size integer max size of the stateless connection pool 10
multiple_geometries boolean whether to use multiple different objects or a single one when dealing with multi-objects (this is mainly related to how the label are used in the map, one label for a multi-polygon or one label for each polygon of a multi-polygon) false
encoding string internal file encoding utf-8
simplify_geometries boolean whether to automatically reduce input vertices. Only effective when output projection matches (or is similar to) input projection. Available from version 2.1.x up. false
max_async_connection integer max number of PostGIS queries for rendering one map in asynchronous mode. Default value (1) has no effect. 1
Comments
  • Upgrade mapnik version to 3.6.3

    Upgrade mapnik version to 3.6.3

    I ran into problems running node-mapnik (3.6.2) on our platform because of https://github.com/mapnik/node-mapnik/issues/835.

    This was fixed by https://github.com/mapnik/node-mapnik/pull/839 and is included in the planned new milestone version 3.6.3 (https://github.com/mapnik/node-mapnik/milestone/39).

    I thought that you would be interested in this, since tilelive-postgis has a 3.6.2 dependency.

    opened by MichaelHedman 3
  • Could we support a layerName

    Could we support a layerName

    Currently, the layerName defaults to tableName here.

    Would it make sense to not expose the backend concern of what the table name in DB is, to the frontend consumers using mapbox-gl, if so I can send a PR.

    Thanks.

    opened by charandas 2
  • Query/subqueries with joins across tables

    Query/subqueries with joins across tables

    Hi there,

    I have been really benefiting from this tilelive-plugin. Thanks for putting it out there.

    I have especially liked the feature, whereby all the other non-geom properties end up a properties for Features in tiles. Today, I set out to see if that would work with queries.

    I started by trying to do multi-join with an initial table with customer data (with a geom POINT column), performed against another table (with a geom MULTIPOLYGON column, so an ST_INTERSECTS really), with another JOIN with a table without geom field, one which I wanna use to augment the data from the MULTIPOLYGON table.

    I am surprised by the fact, that the first level of join can be used to enrich the properties in tile Features, but the third table join, which is legal and produces all the fields from 3 tables (as I am testing in psql on the side) but does not enrich the properties when used with mapnik / or this plugin (not sure where the issue may be).

    Please excuse the verbosity, but thought it may help with explaining what I am trying to achieve. I have tried something like below.

    const sqlQuery = `
      (
        SELECT
          customer_info.geom as geom,
          customer_info.some_customer_data,      
          subquery.tractce,
          subquery,countyfp,
          subquery.ctract as ctract,
          subquery.place
        FROM customer_info
        LEFT JOIN (
          SELECT tractce, countyfp, geom, ctract, basetractfincome, tracts.place as place, tractfincome
          FROM tl_2014_us_tracts
          LEFT JOIN tracts
            ON regexp_replace(tracts.ctract, '\.', '') = tractce
          ) subquery
        ON ST_Intersects(subquery.geom, customer_info.geom)
      ) as query`;
    

    as well as below, so doing the the third join within the second as a subquery does not impact the result.

     const sqlQuery = `
      (
        SELECT
          customer_info.geom as geom,
          customer_info.some_customer_data,       
          tracts_geo.tractce,
          t.ctract as ctract,
          t.basetractfincome as basetractfincome,
          t.tractfincome as tractfincome
        FROM customer_info
        LEFT JOIN tl_2014_us_tracts as tracts_geo
          ON ST_Intersects(tracts_geo.geom, customer_info.geom)
        LEFT JOIN tracts as t
          ON regexp_replace(t.ctract, '\.', '') = tracts_geo.tractce
      ) as query`;
    

    I am basically wanting the feature to include:

    properties: { some_customer_data, tractce, ctract, basetractfincome, tractfincome }, but it almost without any issues always gives me properties: { some_customer_data, tractce }. I have tried putting in other fields in the query from tl_2014_us_tracts as tracts_geo table, and they get added as expected.

    opened by charandas 2
  • Graceful shutdown explanation

    Graceful shutdown explanation

    I looked at the prototype of this implementation, and it has a close function to clean up the DB connection.

    When looking at tilelive source code, I could not see close being invoked unless for the tillelive.copy function.

    I am using tilelive.load only, and am curious how a SIGTERM in my process is currently handled? Alluding to this, could you shed some light on whether the db connection is properly closed before exit?

    Thanks.

    question 
    opened by charandas 2
  • chore(deps-dev): bump snyk from 1.298.1 to 1.996.0

    chore(deps-dev): bump snyk from 1.298.1 to 1.996.0

    Bumps snyk from 1.298.1 to 1.996.0.

    Release notes

    Sourced from snyk's releases.

    v1.996.0

    1.996.0 (2022-09-01)

    Bug Fixes

    • bump golang plugin version (8893f81)

    Features

    v1.995.0

    1.995.0 (2022-08-31)

    Bug Fixes

    • matching configurations error on gradle version catalog (20dcdae)

    v1.994.0

    1.994.0 (2022-08-31)

    Bug Fixes

    Features

    • add custom severities to iac test config (9d86574)
    • add ignore count in the experimental version of iac test (d390ca2)
    • Added support for depth-detection (8cf1815)

    v1.993.0

    1.993.0 (2022-08-29)

    Features

    v1.992.0

    1.992.0 (2022-08-25)

    Bug Fixes

    ... (truncated)

    Commits
    • f614f80 Merge pull request #3803 from snyk/fix/bump-golang-plugin-version
    • d779654 Merge pull request #3620 from snyk/chore/cliv2_support_alpine
    • 8893f81 fix: bump golang plugin version
    • d2fd088 Merge pull request #3792 from snyk/feat/add-var-file-support
    • 544b0f1 Merge pull request #3800 from snyk/chore/capsule-doesnt-exist
    • 537372d feat: add --var-file support
    • 581ebb8 chore: handle GOOS alpine in Makefile
    • 424289d chore: remove code ownership from Capsule
    • 9717d2a Merge pull request #3793 from snyk/fix/bump-gradle-plugin-version
    • 20dcdae fix: matching configurations error on gradle version catalog
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by snyk-admin, a new releaser for snyk since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • chore(deps): bump tar from 4.4.13 to 4.4.15

    chore(deps): bump tar from 4.4.13 to 4.4.15

    Bumps tar from 4.4.13 to 4.4.15.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Couldn't run tilelive-postgis

    Couldn't run tilelive-postgis

    In my Ubuntu 16 environment, I was not able to run the router due to the following error.

    Error: Postgis Plugin: could not translate host name "postgresql" to address: Name or service not known
    Connection string: 'host=postgresql port=5432 dbname=:secretpass user=secretuser connect_timeout=4 fallback_application_name=mapnik'
    
    

    Is there anything I should install to fix this error?

    opened by wondie 1
  • Call getData with release:true on tile

    Call getData with release:true on tile

    I noticed that mapnik 4.0.1 came out with the new {release: true} feature, so thought it might benefit this tilelive plugin.

    See the PR on node-mapnik for context.

    I have been running successfully with these changes in my environment.

    opened by charandas 1
  • Error: ENOENT: no such file or directory, uv_os_get_passwd

    Error: ENOENT: no such file or directory, uv_os_get_passwd

    When I run my app in our Openshift environment I get the following error:

    Error: ENOENT: no such file or directory, uv_os_get_passwd

    The whole stack trace looks like this:

    /opt/app-root/src/node_modules/tilelive-postgis/src/parse.js:5

      | const { username } = os.userInfo();   | ^   | Error: ENOENT: no such file or directory, uv_os_get_passwd   | at Error (native)   | at Object. (/opt/app-root/src/node_modules/tilelive-postgis/src/parse.js:5:25)   | at Module._compile (module.js:570:32)   | at Object.Module._extensions..js (module.js:579:10)   | at Module.load (module.js:487:32)   | at tryModuleLoad (module.js:446:12)   | at Function.Module._load (module.js:438:3)   | at Module.require (module.js:497:17)   | at require (internal/module.js:20:19)   | at Object. (/opt/app-root/src/node_modules/tilelive-postgis/src/index.js:2:15)

    The call to os.userInfo() should be surrounded by a try-catch to prevent the application from crashing when running the app as a user with no entry in /etc/passwd. See https://github.com/Unitech/pm2/issues/3184 for a similar case.

    opened by MichaelHedman 1
  • add layerName param falling back to table

    add layerName param falling back to table

    Currently, the layerName defaults to tableName here.

    It would help to not expose the backend concern of what the table name in DB is, to frontend consumers such as say, mapbox-gl.

    Since tableName was anyway an internal param, it was easy to refactor the code to switch to the new layerName.

    opened by charandas 1
  • chore(deps): bump glob-parent from 5.1.0 to 5.1.2

    chore(deps): bump glob-parent from 5.1.0 to 5.1.2

    Bumps glob-parent from 5.1.0 to 5.1.2.

    Release notes

    Sourced from glob-parent's releases.

    v5.1.2

    Bug Fixes

    v5.1.1

    Bug Fixes

    Changelog

    Sourced from glob-parent's changelog.

    5.1.2 (2021-03-06)

    Bug Fixes

    6.0.0 (2021-05-03)

    ⚠ BREAKING CHANGES

    • Correct mishandled escaped path separators (#34)
    • upgrade scaffold, dropping node <10 support

    Bug Fixes

    • Correct mishandled escaped path separators (#34) (32f6d52), closes #32

    Miscellaneous Chores

    • upgrade scaffold, dropping node <10 support (e83d0c5)

    5.1.1 (2021-01-27)

    Bug Fixes

    Commits
    • eb2c439 chore: update changelog
    • 12bcb6c chore: release 5.1.2
    • f923116 fix: eliminate ReDoS (#36)
    • 0b014a7 chore: add JSDoc returns information (#33)
    • 2b24ebd chore: generate initial changelog
    • 9b6e874 chore: release 5.1.1
    • 749c35e ci: try wrapping the JOB_ID in a string
    • 5d39def ci: attempt to switch to published coveralls
    • 0b5b37f ci: put the npm step back in for only Windows
    • 473f5d8 ci: update azure build images
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump decode-uri-component from 0.2.0 to 0.2.2

    chore(deps): bump decode-uri-component from 0.2.0 to 0.2.2

    Bumps decode-uri-component from 0.2.0 to 0.2.2.

    Release notes

    Sourced from decode-uri-component's releases.

    v0.2.2

    • Prevent overwriting previously decoded tokens 980e0bf

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.1...v0.2.2

    v0.2.1

    • Switch to GitHub workflows 76abc93
    • Fix issue where decode throws - fixes #6 746ca5d
    • Update license (#1) 486d7e2
    • Tidelift tasks a650457
    • Meta tweaks 66e1c28

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.1

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump snyk-go-plugin and snyk

    chore(deps): bump snyk-go-plugin and snyk

    Removes snyk-go-plugin. It's no longer used after updating ancestor dependency snyk. These dependencies need to be updated together.

    Removes snyk-go-plugin

    Updates snyk from 1.298.1 to 1.1024.0

    Release notes

    Sourced from snyk's releases.

    v1.1024.0

    1.1024.0 (2022-10-06)

    v1.1023.0

    1.1023.0 (2022-10-06)

    Bug Fixes

    • Ignored issues count displays "undefined" (962df51)

    v1.1022.0

    1.1022.0 (2022-10-05)

    Bug Fixes

    • do not check stderr output in IaC smoke tests (55cbba0)

    Features

    • use short link to the Integrated IaC docs (8fd823d)

    v1.1021.0

    1.1021.0 (2022-10-04)

    Bug Fixes

    • remove gradle matching config error (401c0f0)

    Features

    • add flag to exclude app vulnerabilities (5d704e2)
    • print warning message on app-vulns enablement (9216c49)

    v1.1020.0

    1.1020.0 (2022-10-03)

    v1.1019.0

    1.1019.0 (2022-09-30)

    Bug Fixes

    • use @​snyk/child-process package without shell (2d8845d)

    ... (truncated)

    Commits
    • 9b48446 Merge pull request #4111 from snyk/feat/snyk-iac-debug-log
    • 85bfd82 chore: Add debug log for local bundle
    • 7533751 Merge pull request #4064 from snyk/docs/automatic-gitbook-update
    • 61c983d Merge pull request #4110 from snyk/fix/undefined-ignored-issues-count
    • 962df51 fix: Ignored issues count displays "undefined"
    • 29bb68b docs: synchronizing help from snyk/user-docs
    • b0c0789 Merge pull request #4106 from snyk/feat/use-short-integrated-iac-link
    • 8fd823d feat: use short link to the Integrated IaC docs
    • e9b88b9 Merge pull request #4043 from snyk/fix/iac-smoke-stderr
    • 0f54465 Merge pull request #3874 from snyk/feat/no-app-vulns
    • Additional commits viewable in compare view
    Maintainer changes

    This version was pushed to npm by snyk-admin, a new releaser for snyk since your current version.


    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump degenerator and snyk

    chore(deps): bump degenerator and snyk

    Removes degenerator. It's no longer used after updating ancestor dependency snyk. These dependencies need to be updated together.

    Removes degenerator

    Updates snyk from 1.298.1 to 1.1012.0

    Release notes

    Sourced from snyk's releases.

    v1.1012.0

    1.1012.0 (2022-09-23)

    Features

    • pass snykHttpClient to plugin.inspect (17b1273)

    v1.1011.0

    1.1011.0 (2022-09-22)

    Bug Fixes

    • improve cpp-plugin performance on windows (b5f6770)

    v1.1010.0

    1.1010.0 (2022-09-21)

    Bug Fixes

    • added check for existing key in loop (04c00bc)

    v1.1009.0

    1.1009.0 (2022-09-21)

    v1.1008.0

    1.1008.0 (2022-09-20)

    v1.1007.0

    1.1007.0 (2022-09-20)

    Bug Fixes

    • upgrade go-httpauth to support basic auth (875f0e9)

    Features

    • add unmanaged service test call ff (55b6fbb)

    v1.1006.0

    1.1006.0 (2022-09-15)

    Features

    • show Cloud Issues URL when sharing results with snyk iac test (9e1f2d7)

    ... (truncated)

    Commits
    • b69d4b3 Merge pull request #3863 from snyk/feat/pass-http-client-to-plugins
    • 17b1273 feat: pass snykHttpClient to plugin.inspect
    • 4fe1808 Merge pull request #3855 from snyk/fix/perf-win-unmanaged
    • b5f6770 fix: improve cpp-plugin performance on windows
    • bebfec3 Merge pull request #3854 from snyk/fix/unmanaged-severity-threshold
    • 04c00bc fix: added check for existing key in loop
    • d856544 Merge pull request #3838 from snyk/chore/create-iac-e2e-tests-cfg-2106
    • 8890fb3 chore: Create IaC smoke tests for experimental test
    • 60f7a48 Merge pull request #3847 from snyk/chore/release-golang-cli-for-windows
    • a3f87ba Merge pull request #3603 from snyk/feat/add-unmanaged-service-test-call-ff
    • Additional commits viewable in compare view

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump jszip from 3.2.2 to 3.10.1

    chore(deps): bump jszip from 3.2.2 to 3.10.1

    Bumps jszip from 3.2.2 to 3.10.1.

    Changelog

    Sourced from jszip's changelog.

    v3.10.1 2022-08-02

    • Add sponsorship files.
      • If you appreciate the time spent maintaining JSZip then I would really appreciate your sponsorship.
    • Consolidate metadata types and expose OnUpdateCallback #851 and #852
    • use const instead var in example from README.markdown #828
    • Switch manual download link to HTTPS #839

    Internals:

    • Replace jshint with eslint #842
    • Add performance tests #834

    v3.10.0 2022-05-20

    • Change setimmediate dependency to more efficient one. Fixes Stuk/jszip#617 (see #829)
    • Update types of currentFile metadata to include null (see #826)

    v3.9.1 2022-04-06

    • Fix recursive definition of InputFileFormat introduced in 3.9.0.

    v3.9.0 2022-04-04

    • Update types JSZip#loadAsync to accept a promise for data, and remove arguments from new JSZip() (see #752)
    • Update types for compressionOptions to JSZipFileOptions and JSZipGeneratorOptions (see #722)
    • Add types for generateInternalStream (see #774)

    v3.8.0 2022-03-30

    • Santize filenames when files are loaded with loadAsync, to avoid "zip slip" attacks. The original filename is available on each zip entry as unsafeOriginalName. See the documentation. Many thanks to McCaulay Hudson for reporting.

    v3.7.1 2021-08-05

    • Fix build of dist files.
      • Note: this version ensures the changes from 3.7.0 are actually included in the dist files. Thanks to Evan W for reporting.

    v3.7.0 2021-07-23

    • Fix: Use a null prototype object for this.files (see #766)
      • This change might break existing code if it uses prototype methods on the .files property of a zip object, for example zip.files.toString(). This approach is taken to prevent files in the zip overriding object methods that would exist on a normal object.

    v3.6.0 2021-02-09

    • Fix: redirect main to dist on browsers (see #742)
    • Fix duplicate require DataLengthProbe, utils (see #734)
    • Fix small error in read_zip.md (see #703)

    v3.5.0 2020-05-31

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump ajv from 6.11.0 to 6.12.6

    chore(deps): bump ajv from 6.11.0 to 6.12.6

    Bumps ajv from 6.11.0 to 6.12.6.

    Release notes

    Sourced from ajv's releases.

    v6.12.6

    Fix performance issue of "url" format.

    v6.12.5

    Fix uri scheme validation (@​ChALkeR). Fix boolean schemas with strictKeywords option (#1270)

    v6.12.4

    Fix: coercion of one-item arrays to scalar that should fail validation (failing example).

    v6.12.3

    Pass schema object to processCode function Option for strictNumbers (@​issacgerges, #1128) Fixed vulnerability related to untrusted schemas (CVE-2020-15366)

    v6.12.2

    Removed post-install script

    v6.12.1

    Docs and dependency updates

    v6.12.0

    Improved hostname validation (@​sambauers, #1143) Option keywords to add custom keywords (@​franciscomorais, #1137) Types fixes (@​boenrobot, @​MattiAstedrone) Docs:

    Commits
    • fe59143 6.12.6
    • d580d3e Merge pull request #1298 from ajv-validator/fix-url
    • fd36389 fix: regular expression for "url" format
    • 490e34c docs: link to v7-beta branch
    • 9cd93a1 docs: note about v7 in readme
    • 877d286 Merge pull request #1262 from b4h0-c4t/refactor-opt-object-type
    • f1c8e45 6.12.5
    • 764035e Merge branch 'ChALkeR-chalker/fix-comma'
    • 3798160 Merge branch 'chalker/fix-comma' of git://github.com/ChALkeR/ajv into ChALkeR...
    • a3c7eba Merge branch 'refactor-opt-object-type' of github.com:b4h0-c4t/ajv into refac...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • chore(deps): bump tar from 4.4.13 to 4.4.19

    chore(deps): bump tar from 4.4.13 to 4.4.19

    Bumps tar from 4.4.13 to 4.4.19.

    Commits
    • 9a6faa0 4.4.19
    • 70ef812 drop dirCache for symlink on all platforms
    • 3e35515 4.4.18
    • 52b09e3 fix: prevent path escape using drive-relative paths
    • bb93ba2 fix: reserve paths properly for unicode, windows
    • 2f1bca0 fix: prune dirCache properly for unicode, windows
    • 9bf70a8 4.4.17
    • 6aafff0 fix: skip extract if linkpath is stripped entirely
    • 5c5059a fix: reserve paths case-insensitively
    • fd6accb 4.4.16
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Owner
Stepan Kuzmin
Engineering manager at @yandextaxitech, ex-CTO at @urbica
Stepan Kuzmin
A Node.js map tile library for PostGIS and torque.js, with CartoCSS styling

Windshaft A Node.js map tile library for PostGIS and torque.js, with CartoCSS styling. Can render arbitrary SQL queries Generates image and UTFGrid in

CARTO 306 Dec 22, 2022
Demo of Singapore buildings 3D tiles from OneMap on Mapbox GL JS.

Singapore buildings 3D Tiles from OneMap 3D on Mapbox GL JS This is a demo of Singapore buildings 3D tiles from OneMap 3D on Mapbox GL JS. Development

Chee Aun 5 Nov 6, 2021
jQuery Vector Map Library

This project is a heavily modified version of jVectorMap as it was in April of 2012. I chose to start fresh rather than fork their project as my inten

10 Best Design 1.8k Dec 28, 2022
jQuery Vector Map Library

This project is a heavily modified version of jVectorMap as it was in April of 2012. I chose to start fresh rather than fork their project as my inten

10 Best Design 1.8k Dec 28, 2022
Serverless raster and vector map tile generation using Mapnik and AWS Lambda

tilegarden ??️ ?? Contents About Usage Deployment to AWS Additional Configuration Options Required AWS Permissions Features Configuration Selection an

Azavea 89 Dec 22, 2022
Mapbox JavaScript API, a Leaflet Plugin

mapbox.js A Mapbox plugin for Leaflet, a lightweight JavaScript library for traditional raster maps. For the state-of-the-art Mapbox vector maps libra

Mapbox 1.9k Dec 23, 2022
React friendly API wrapper around MapboxGL JS

react-map-gl | Docs react-map-gl is a suite of React components designed to provide a React API for Mapbox GL JS-compatible libraries. More informatio

Vis.gl 6.9k Jan 2, 2023
Node.js REST API for PostGres Spatial Entities. AKA: SpatialServer

PGRestAPI (a.k.a. Chubbs Spatial Server) Overview Node.js REST API for PostgreSQL Spatial Tables. An introduction to PGRestAPI can be found here A few

SpatialDev 429 Dec 9, 2022
A web based data mining tool for OpenStreetMap using the Overpass API.

overpass turbo https://overpass-turbo.eu/ – stable version https://tyrasd.github.io/overpass-turbo/ – latest version This is a GUI for testing and dev

Martin Raifer 607 Dec 29, 2022
This map is tracking the position of ISS(international space setallite) at every 1 second. I use Nasa's "where the iss" API and "Leaflet.js" for the map.

ISS-tracking-map About This map is tracking the position of ISS(international space setallite) at every 1 second. I use Nasa's "where the iss" API and

Waz.sheeran 2 Oct 25, 2021
MERN stack travel app using mapbox API, Travel and drop pin , share reviews and rate the location

MERN-Travel-Map Travel Map Pin A single page application built with MERN Stack from scratch (MongoDB + Mongoose, Express, React & NodeJs) Table of Con

Bùi Quốc Trọng 11 Dec 29, 2022
Interactive, thoroughly customizable maps in the browser, powered by vector tiles and WebGL

Mapbox GL JS is a JavaScript library for interactive, customizable vector maps on the web. It takes map styles that conform to the Mapbox Style Specif

Mapbox 9.4k Jan 7, 2023
⚡️The Fullstack React Framework — built on Next.js

The Fullstack React Framework "Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails Read the Documentation “Zero-API” data layer lets y

⚡️Blitz 12.5k Jan 4, 2023
JustGage is a handy JavaScript plugin for generating and animating nice & clean dashboard gauges. It is based on Raphaël library for vector drawing.

JustGage JustGage is a handy JavaScript plugin for generating and animating nice & clean dashboard gauges. It is based on Raphaël library for vector d

Bojan Djuricic 1.8k Jan 3, 2023
A Node.js map tile library for PostGIS and torque.js, with CartoCSS styling

Windshaft A Node.js map tile library for PostGIS and torque.js, with CartoCSS styling. Can render arbitrary SQL queries Generates image and UTFGrid in

CARTO 306 Dec 22, 2022
Demo of Singapore buildings 3D tiles from OneMap on Mapbox GL JS.

Singapore buildings 3D Tiles from OneMap 3D on Mapbox GL JS This is a demo of Singapore buildings 3D tiles from OneMap 3D on Mapbox GL JS. Development

Chee Aun 5 Nov 6, 2021
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Color palette text parser to a function, compatible with GMT, GDAL, GRASS, PostGIS, ArcGIS

cpt2js Color palette text parser to a function, input compatible with GMT, GDAL, GRASS, PostGIS, ArcGIS Demo From GDAL docs: The text-based color conf

WeatherLayers 5 Dec 4, 2022