https://github.com/maplibre/maplibre-gl-js Skip to content Sign up Sign up * Why GitHub? Features - + Mobile - + Actions - + Codespaces - + Packages - + Security - + Code review - + Project management - + Integrations - + GitHub Sponsors - + Customer stories- * Team * Enterprise * Explore + Explore GitHub - Learn and contribute + Topics - + Collections - + Trending - + Learning Lab - + Open source guides - Connect with others + The ReadME Project - + Events - + Community forum - + GitHub Education - + GitHub Stars program - * Marketplace * Pricing Plans - + Compare plans - + Contact Sales - + Education - [ ] [search-key] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up Sign up {{ message }} maplibre / maplibre-gl-js * Notifications * Star 1.4k * Fork 71 MapLibre GL is a free and open-source fork of mapbox-gl-js View license 1.4k stars 71 forks Star Notifications * Code * Issues 49 * Pull requests 12 * Discussions * Actions * Projects 2 * Security * Insights More * Code * Issues * Pull requests * Discussions * Actions * Projects * Security * Insights main Switch branches/tags [ ] Branches Tags Nothing to show {{ refName }} default View all branches Nothing to show {{ refName }} default View all tags 4 branches 2 tags Go to file Code Clone HTTPS GitHub CLI [https://github.com/m] Use Git or checkout with SVN using the web URL. [gh repo clone maplib] Work fast with our official CLI. Learn more. * Open with GitHub Desktop * Download ZIP Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching Xcode If nothing happens, download Xcode and try again. Go back Launching Visual Studio If nothing happens, download the GitHub extension for Visual Studio and try again. Go back Latest commit @JannikGM JannikGM Avoid sorting of features if the sort-key is constant (#78) ... ba7bfbc Mar 30, 2021 Avoid sorting of features if the sort-key is constant (#78) This addresses 2 related bugs: 1. An unevaluated mapbox expression-object was used in a condition (`if (expression)`) to decide if sorting was necessary, the assumption was probably that the default constant value of `undefined` would skip sorting. However, the unevaluated mapbox expression is not the value `undefined`, but an expression-object describing the value and its type. So, even if the mapbox expression was a constant `undefined`, the check would never be true. This leads to a lot of unnecessary sorting. This was already correct for the drawing sort in circles and symbols, and this is where the `sortFeaturesByKey` variable name originates. 2. Even where the check was correct, it would explicitly check if the sort-key was a constant with value `undefined` to skip sorting. However, we also know that the sort-key is irrelevant if it's *any* constant, not just `undefined`. Note that the second optimization would not be possible if cross-layer sorting was implemented (see mapbox/mapbox-gl-js#1349). I'm unable to provide good performance benchmarks because of #76. ba7bfbc Git stats * 9,395 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .circleci Remove deployment code from circleci config (#18) Dec 10, 2020 .github Release process documentation (#118) Mar 29, 2021 bench Update HTML debug files to use MapLibre in titles (#84) Feb 18, 2021 build Release automation (#95) Mar 24, 2021 cloudformation Collect GL performance stats (#8645) Sep 10, 2019 debug Update HTML debug files to use MapLibre in titles (#84) Feb 18, 2021 docs "Life of a tile" documentation (#44) Feb 20, 2021 flow-typed Add names before types for lambda types and object indexer types (# 9331) Feb 26, 2020 rollup Move output files from mapbox.* to maplibre.* (#75) Feb 17, 2021 src Avoid sorting of features if the sort-key is constant (#78) Mar 30, 2021 test Release automation (#95) Mar 24, 2021 .dockerignore Create a dockerfile for repeatable releases (#17) Dec 10, 2020 .editorconfig EditorConfig updates (#3537) [ckip ci] Nov 4, 2016 .eslintrc Add eslint config for JSDoc (#8961) Nov 15, 2019 .flowconfig update Flow ignores for faster start (#8337) Jun 11, 2019 .gitattributes Got github actions working (#38) Dec 15, 2020 .gitignore Remove docs pages from .gitignore file (#9504) Apr 7, 2020 .npmignore Add diff-tarball script and more explicit files property in package.j... Apr 15, 2020 .stylelintrc Minify SVG images and add rules for High Contrast mode on Windows (# 8... Oct 31, 2019 .topissuesrc Update high priority label Aug 10, 2018 ARCHITECTURE.md Update docs to set a clear "we are a new project" stance (#12) Dec 10, 2020 CHANGELOG.md Avoid sorting of features if the sort-key is constant (#78) Mar 30, 2021 CODE-OF-CONDUCT.md Document MapLibre specific items (#14) Dec 10, 2020 COMMUNITY.md Add initial community document. (#43) Jan 26, 2021 CONTRIBUTING.md Update docs to set a clear "we are a new project" stance (#12) Dec 10, 2020 LICENSE.txt Fix copyright (#63) Feb 9, 2021 MapLibre.png Icon and logo update, changelog preparation for 1.14.0 release Mar 24, 2021 README.md Logo too dominant here. Mar 24, 2021 RELEASE-PROCESS.md Release process documentation (#118) Mar 29, 2021 package.json version 1.14.0-rc.1 Mar 24, 2021 postcss.config.js Minify SVG images and add rules for High Contrast mode on Windows (# 8... Oct 31, 2019 rollup.config.csp.js Move output files from mapbox.* to maplibre.* (#75) Feb 17, 2021 rollup.config.js Move output files from mapbox.* to maplibre.* (#75) Feb 17, 2021 yarn.lock Release automation (#95) Mar 24, 2021 View code MapLibre GL Migrating from mapbox-gl Roadmap Getting Involved Community Leadership Avoid Fragmentation Thank you Mapbox License README.md MapLibre GL MapLibre GL is a community led fork derived from mapbox-gl-js prior to their switch to a non-OSS license. Migrating from mapbox-gl If you depend on mapbox-gl directly, simply replace mapbox-gl with maplibre-gl in package.json: "dependencies": { - "mapbox-gl": "^1.13.0" + "maplibre-gl": ">=1.14.0" } Want an example? Try out MapLibre GL on CodePen If you use mapbox-gl via bindings (react, vue, etc), you may need to wait a little longer as we develop an easy migration path for each binding. Contributions welcome! Roadmap This project's initial plans are outlined in the Roadmap project. The primary goal is consistency and backwards-compatability with previous releases and continued bug-fixes and maintenance going forward. Getting Involved Join the #maplibre slack channel at OSMUS: get an invite at https:// osmus-slack.herokuapp.com/ Community Leadership The official status of the backing community and steering committee can be found in the COMMUNITY.md document. Avoid Fragmentation If you depend on a free software alternative to mapbox-gl-js, please consider joining our effort! Anyone with a stake in a healthy community led fork is welcome to help us figure out our next steps. We welcome contributors and leaders! MapLibre GL already represents the combined efforts of a few early fork efforts, and we all benefit from "one project" rather than "our way". If you know of other forks, please reach out to them and direct them here. Thank you Mapbox We'd like to acknowledge the amazing work Mapbox has contributed to open source. The open source community is sad to part ways with them, but we simultaneously feel grateful for everything they already contributed. mapbox-gl-js 1.x is an open source achievment which now lives on as maplibre-gl. We're proud to develop on the shoulders of giants, thank you Mapbox [?] License MapLibre GL is licensed under the 3-Clause BSD license. About MapLibre GL is a free and open-source fork of mapbox-gl-js Resources Readme License View license Releases 2 v1.14.0 Latest Mar 24, 2021 + 1 release Packages 0 No packages published Used by 44 * @watergis * @joelondon * @DAXGRID * @theosanderson * @zbycz * @frontiersi * @wipfli * @GUI + 36 Contributors 305 * @jfirebaugh * @ansis * @mourner * @kkaefer * @tmcw * @yhahn * @anandthakker * @ChrisLoer * @tristen * @mollymerp * @andrewharvey + 294 contributors Languages * JavaScript 94.1% * HTML 3.1% * GLSL 2.0% * CSS 0.6% * EJS 0.2% * Shell 0.0% * (c) 2021 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.