From 339a5677fe183bbbc44072baba88b0a2f1d0b267 Mon Sep 17 00:00:00 2001
From: Christoph Reiter <reiter.christoph@gmail.com>
Date: Tue, 12 May 2020 15:11:12 +0200
Subject: [PATCH] Switch from license-checker to rollup-plugin-license

The rollup plugin knows which modules end up in our final bundle
and which are relevant for license checks.

This also updates all vendored packages which got a license now.

Because the license check takes 0.4s we'll only do it in non-watch mode.
---
 package-lock.json      | 352 +++++++++++++++--------------------------
 package.json           |  11 +-
 rollup.config.js       |  20 ++-
 vendor/app-shell       |   2 +-
 vendor/auth            |   2 +-
 vendor/common          |   2 +-
 vendor/file-upload     |   2 +-
 vendor/language-select |   2 +-
 vendor/notification    |   2 +-
 vendor/person-profile  |   2 +-
 10 files changed, 163 insertions(+), 234 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index f95249c..b34111b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -638,63 +638,6 @@
         "estree-walker": "^1.0.1"
       }
     },
-    "@sentry/browser": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.14.2.tgz",
-      "integrity": "sha512-Vuuy2E5mt2VQKeHpFqtowZdKUe1Ui7J2KmgZQCduVilM7dFmprdXfv/mQ3Uv+73VIiCd22PpxojR3peDksb/Gg==",
-      "requires": {
-        "@sentry/core": "5.14.2",
-        "@sentry/types": "5.14.2",
-        "@sentry/utils": "5.14.2",
-        "tslib": "^1.9.3"
-      }
-    },
-    "@sentry/core": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.14.2.tgz",
-      "integrity": "sha512-B2XjUMCmVu4H3s5hapgynhb28MSc+irt9wRI9j0Lbjx2cxsCUr/YFGL8GuEuYwf4zXNKnh2ke6t+I37OlSaGOg==",
-      "requires": {
-        "@sentry/hub": "5.14.2",
-        "@sentry/minimal": "5.14.2",
-        "@sentry/types": "5.14.2",
-        "@sentry/utils": "5.14.2",
-        "tslib": "^1.9.3"
-      }
-    },
-    "@sentry/hub": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.14.2.tgz",
-      "integrity": "sha512-0ckTDnhCANkuY+VepMPz5vl/dkFQnWmzlJiCIxgM5fCgAF8dfNd9VhGn0qVQXnzKPGoW9zxs/uAmH3/XFqqmNA==",
-      "requires": {
-        "@sentry/types": "5.14.2",
-        "@sentry/utils": "5.14.2",
-        "tslib": "^1.9.3"
-      }
-    },
-    "@sentry/minimal": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.14.2.tgz",
-      "integrity": "sha512-uih9a8KwFCQrWaGb3UxkrSntxMRT4EIlud158ZKlrsLaCOE6i08unOR4xWqlrXlKPySq16H4wjbBFQ56ogOWdQ==",
-      "requires": {
-        "@sentry/hub": "5.14.2",
-        "@sentry/types": "5.14.2",
-        "tslib": "^1.9.3"
-      }
-    },
-    "@sentry/types": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.14.2.tgz",
-      "integrity": "sha512-NtB/o+/whR/mJJf67Nvdab7E2+/THgAUY114FWFqDLHMaoiIVWy9J/yLKtQWymwuQslh7zpPxjA1AhqTJerVCg=="
-    },
-    "@sentry/utils": {
-      "version": "5.14.2",
-      "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.14.2.tgz",
-      "integrity": "sha512-DV9/kw/O8o5xqvQYwITm0lBaBqS4RKicjguWYJQ/+F94P/SKxuXor7EE0iMDYvUGslvPz8TlgB7r+nb/YRl+Fg==",
-      "requires": {
-        "@sentry/types": "5.14.2",
-        "tslib": "^1.9.3"
-      }
-    },
     "@types/color-name": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
@@ -775,7 +718,8 @@
     "abbrev": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
-      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
+      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
+      "optional": true
     },
     "abstract-leveldown": {
       "version": "0.12.4",
@@ -1105,12 +1049,6 @@
       "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==",
       "dev": true
     },
-    "asap": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
-      "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
-      "dev": true
-    },
     "asn1": {
       "version": "0.2.4",
       "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
@@ -1746,6 +1684,12 @@
       "integrity": "sha512-4Rjb1FnxtOcv9qsfuaNuVsmmVn4ooVoBHzYfyKteiXwIU84PClyGA5jASoFMwPV93+FPh9spwueXauxFJZkGAg==",
       "dev": true
     },
+    "commenting": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/commenting/-/commenting-1.1.0.tgz",
+      "integrity": "sha512-YeNK4tavZwtH7jEgK1ZINXzLKm6DZdEMfsaaieOsCAN0S8vsY7UeuO3Q7d/M018EFgE+IeUAuBOKkFccBZsUZA==",
+      "dev": true
+    },
     "commondir": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
@@ -1995,12 +1939,6 @@
         "ms": "^2.1.1"
       }
     },
-    "debuglog": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz",
-      "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=",
-      "dev": true
-    },
     "decamelize": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
@@ -2141,16 +2079,6 @@
       "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
       "optional": true
     },
-    "dezalgo": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz",
-      "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=",
-      "dev": true,
-      "requires": {
-        "asap": "^2.0.0",
-        "wrappy": "1"
-      }
-    },
     "di": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
@@ -3387,12 +3315,6 @@
         "minimalistic-crypto-utils": "^1.0.1"
       }
     },
-    "hosted-git-info": {
-      "version": "2.8.8",
-      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
-      "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
-      "dev": true
-    },
     "html-encoding-sniffer": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz",
@@ -4011,12 +3933,6 @@
       "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
       "dev": true
     },
-    "json-parse-better-errors": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
-      "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
-      "dev": true
-    },
     "json-schema": {
       "version": "0.2.3",
       "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
@@ -4422,35 +4338,6 @@
         "type-check": "~0.3.2"
       }
     },
-    "license-checker": {
-      "version": "25.0.1",
-      "resolved": "https://registry.npmjs.org/license-checker/-/license-checker-25.0.1.tgz",
-      "integrity": "sha512-mET5AIwl7MR2IAKYYoVBBpV0OnkKQ1xGj2IMMeEFIs42QAkEVjRtFZGWmQ28WeU7MP779iAgOaOy93Mn44mn6g==",
-      "dev": true,
-      "requires": {
-        "chalk": "^2.4.1",
-        "debug": "^3.1.0",
-        "mkdirp": "^0.5.1",
-        "nopt": "^4.0.1",
-        "read-installed": "~4.0.3",
-        "semver": "^5.5.0",
-        "spdx-correct": "^3.0.0",
-        "spdx-expression-parse": "^3.0.0",
-        "spdx-satisfies": "^4.0.0",
-        "treeify": "^1.1.0"
-      },
-      "dependencies": {
-        "debug": {
-          "version": "3.2.6",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
-          "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
-          "dev": true,
-          "requires": {
-            "ms": "^2.1.1"
-          }
-        }
-      }
-    },
     "lie": {
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
@@ -4923,6 +4810,12 @@
         }
       }
     },
+    "moment": {
+      "version": "2.24.0",
+      "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz",
+      "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==",
+      "dev": true
+    },
     "ms": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -5018,23 +4911,12 @@
       "version": "4.0.3",
       "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
       "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
+      "optional": true,
       "requires": {
         "abbrev": "1",
         "osenv": "^0.1.4"
       }
     },
-    "normalize-package-data": {
-      "version": "2.5.0",
-      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
-      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
-      "dev": true,
-      "requires": {
-        "hosted-git-info": "^2.1.4",
-        "resolve": "^1.10.0",
-        "semver": "2 || 3 || 4 || 5",
-        "validate-npm-package-license": "^3.0.1"
-      }
-    },
     "normalize-path": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
@@ -5062,7 +4944,8 @@
     "npm-normalize-package-bin": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz",
-      "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA=="
+      "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==",
+      "optional": true
     },
     "npm-packlist": {
       "version": "1.4.8",
@@ -5213,7 +5096,8 @@
     "os-homedir": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
-      "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M="
+      "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
+      "optional": true
     },
     "os-tmpdir": {
       "version": "1.0.2",
@@ -5224,6 +5108,7 @@
       "version": "0.1.5",
       "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
       "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
+      "optional": true,
       "requires": {
         "os-homedir": "^1.0.0",
         "os-tmpdir": "^1.0.0"
@@ -5618,34 +5503,6 @@
         }
       }
     },
-    "read-installed": {
-      "version": "4.0.3",
-      "resolved": "https://registry.npmjs.org/read-installed/-/read-installed-4.0.3.tgz",
-      "integrity": "sha1-/5uLZ/GH0eTCm5/rMfayI6zRkGc=",
-      "dev": true,
-      "requires": {
-        "debuglog": "^1.0.1",
-        "graceful-fs": "^4.1.2",
-        "read-package-json": "^2.0.0",
-        "readdir-scoped-modules": "^1.0.0",
-        "semver": "2 || 3 || 4 || 5",
-        "slide": "~1.1.3",
-        "util-extend": "^1.0.1"
-      }
-    },
-    "read-package-json": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz",
-      "integrity": "sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A==",
-      "dev": true,
-      "requires": {
-        "glob": "^7.1.1",
-        "graceful-fs": "^4.1.2",
-        "json-parse-better-errors": "^1.0.1",
-        "normalize-package-data": "^2.0.0",
-        "npm-normalize-package-bin": "^1.0.0"
-      }
-    },
     "readable-stream": {
       "version": "2.3.7",
       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
@@ -5660,18 +5517,6 @@
         "util-deprecate": "~1.0.1"
       }
     },
-    "readdir-scoped-modules": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz",
-      "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==",
-      "dev": true,
-      "requires": {
-        "debuglog": "^1.0.1",
-        "dezalgo": "^1.0.0",
-        "graceful-fs": "^4.1.2",
-        "once": "^1.3.0"
-      }
-    },
     "readdirp": {
       "version": "3.4.0",
       "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
@@ -5956,9 +5801,9 @@
       }
     },
     "rollup": {
-      "version": "2.7.5",
-      "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.7.5.tgz",
-      "integrity": "sha512-xQSM8uzhgtF6tTnTVEvOQThrcG3LPUP3T/4l4EukzDp0kbTY1QRDuXjiwtYzs9odKj9Bj/PccRG6viFfS7DmCQ==",
+      "version": "2.9.1",
+      "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.9.1.tgz",
+      "integrity": "sha512-kEZn76R0j+WD4AActu5Np4RShNlewTtJhdUaWNtHwHnAA8AOapyXgH6O7NL2RkcQLHnl49oz1xW1VrDcu5yP+Q==",
       "dev": true,
       "requires": {
         "fsevents": "~2.1.2"
@@ -6045,6 +5890,41 @@
         }
       }
     },
+    "rollup-plugin-license": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/rollup-plugin-license/-/rollup-plugin-license-2.0.0.tgz",
+      "integrity": "sha512-xeCtHPluNFUJPuTdCFJrdNfCR/3yEX2M65s/i47SmEblmJxdxea2m9yodiIKtfVoWUMbosfHTcALgZk+utbrhA==",
+      "dev": true,
+      "requires": {
+        "commenting": "1.1.0",
+        "glob": "7.1.6",
+        "lodash": "4.17.15",
+        "magic-string": "0.25.7",
+        "mkdirp": "1.0.4",
+        "moment": "2.24.0",
+        "spdx-expression-validate": "2.0.0",
+        "spdx-satisfies": "5.0.0"
+      },
+      "dependencies": {
+        "mkdirp": {
+          "version": "1.0.4",
+          "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+          "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+          "dev": true
+        },
+        "spdx-satisfies": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-5.0.0.tgz",
+          "integrity": "sha512-/hGhwh20BeGmkA+P/lm06RvXD94JduwNxtx/oX3B5ClPt1/u/m5MCaDNo1tV3Y9laLkQr/NRde63b9lLMhlNfw==",
+          "dev": true,
+          "requires": {
+            "spdx-compare": "^1.0.0",
+            "spdx-expression-parse": "^3.0.0",
+            "spdx-ranges": "^2.0.0"
+          }
+        }
+      }
+    },
     "rollup-plugin-node-builtins": {
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz",
@@ -6263,12 +6143,6 @@
         }
       }
     },
-    "slide": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz",
-      "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=",
-      "dev": true
-    },
     "socket.io": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz",
@@ -6434,16 +6308,6 @@
         "spdx-ranges": "^2.0.0"
       }
     },
-    "spdx-correct": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
-      "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
-      "dev": true,
-      "requires": {
-        "spdx-expression-parse": "^3.0.0",
-        "spdx-license-ids": "^3.0.0"
-      }
-    },
     "spdx-exceptions": {
       "version": "2.2.0",
       "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz",
@@ -6460,6 +6324,15 @@
         "spdx-license-ids": "^3.0.0"
       }
     },
+    "spdx-expression-validate": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/spdx-expression-validate/-/spdx-expression-validate-2.0.0.tgz",
+      "integrity": "sha512-b3wydZLM+Tc6CFvaRDBOF9d76oGIHNCLYFeHbftFXUWjnfZWganmDmvtM5sm1cRwJc/VDBMLyGGrsLFd1vOxbg==",
+      "dev": true,
+      "requires": {
+        "spdx-expression-parse": "^3.0.0"
+      }
+    },
     "spdx-license-ids": {
       "version": "3.0.5",
       "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
@@ -6473,9 +6346,9 @@
       "dev": true
     },
     "spdx-satisfies": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-4.0.1.tgz",
-      "integrity": "sha512-WVzZ/cXAzoNmjCWiEluEA3BjHp5tiUmmhn9MK+X0tBbR9sOqtC6UQwmgCNrAIZvNlMuBUYAaHYfb2oqlF9SwKA==",
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-5.0.0.tgz",
+      "integrity": "sha512-/hGhwh20BeGmkA+P/lm06RvXD94JduwNxtx/oX3B5ClPt1/u/m5MCaDNo1tV3Y9laLkQr/NRde63b9lLMhlNfw==",
       "dev": true,
       "requires": {
         "spdx-compare": "^1.0.0",
@@ -6871,12 +6744,6 @@
         "punycode": "^2.1.0"
       }
     },
-    "treeify": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz",
-      "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==",
-      "dev": true
-    },
     "tslib": {
       "version": "1.11.1",
       "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz",
@@ -7028,12 +6895,6 @@
       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
       "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
     },
-    "util-extend": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz",
-      "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=",
-      "dev": true
-    },
     "utils-merge": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
@@ -7052,16 +6913,6 @@
       "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
       "dev": true
     },
-    "validate-npm-package-license": {
-      "version": "3.0.4",
-      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
-      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
-      "dev": true,
-      "requires": {
-        "spdx-correct": "^3.0.0",
-        "spdx-expression-parse": "^3.0.0"
-      }
-    },
     "value-or-function": {
       "version": "3.0.0",
       "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz",
@@ -7185,9 +7036,68 @@
       "version": "file:vendor/common",
       "requires": {
         "@open-wc/scoped-elements": "^1.0.8",
-        "@sentry/browser": "^5.13.2",
-        "i18next": "^19.3.2",
+        "@sentry/browser": "^5.15.5",
+        "i18next": "^19.4.4",
         "lit-element": "^2.2.1"
+      },
+      "dependencies": {
+        "@sentry/browser": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-5.15.5.tgz",
+          "integrity": "sha512-rqDvjk/EvogfdbZ4TiEpxM/lwpPKmq23z9YKEO4q81+1SwJNua53H60dOk9HpRU8nOJ1g84TMKT2Ov8H7sqDWA==",
+          "requires": {
+            "@sentry/core": "5.15.5",
+            "@sentry/types": "5.15.5",
+            "@sentry/utils": "5.15.5",
+            "tslib": "^1.9.3"
+          }
+        },
+        "@sentry/core": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.15.5.tgz",
+          "integrity": "sha512-enxBLv5eibBMqcWyr+vApqeix8uqkfn0iGsD3piKvoMXCgKsrfMwlb/qo9Ox0lKr71qIlZVt+9/A2vZohdgnlg==",
+          "requires": {
+            "@sentry/hub": "5.15.5",
+            "@sentry/minimal": "5.15.5",
+            "@sentry/types": "5.15.5",
+            "@sentry/utils": "5.15.5",
+            "tslib": "^1.9.3"
+          }
+        },
+        "@sentry/hub": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.15.5.tgz",
+          "integrity": "sha512-zX9o49PcNIVMA4BZHe//GkbQ4Jx+nVofqU/Il32/IbwKhcpPlhGX3c1sOVQo4uag3cqd/JuQsk+DML9TKkN0Lw==",
+          "requires": {
+            "@sentry/types": "5.15.5",
+            "@sentry/utils": "5.15.5",
+            "tslib": "^1.9.3"
+          }
+        },
+        "@sentry/minimal": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.15.5.tgz",
+          "integrity": "sha512-zQkkJ1l9AjmU/Us5IrOTzu7bic4sTPKCatptXvLSTfyKW7N6K9MPIIFeSpZf9o1yM2sRYdK7GV08wS2eCT3JYw==",
+          "requires": {
+            "@sentry/hub": "5.15.5",
+            "@sentry/types": "5.15.5",
+            "tslib": "^1.9.3"
+          }
+        },
+        "@sentry/types": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.15.5.tgz",
+          "integrity": "sha512-F9A5W7ucgQLJUG4LXw1ZIy4iLevrYZzbeZ7GJ09aMlmXH9PqGThm1t5LSZlVpZvUfQ2rYA8NU6BdKJSt7B5LPw=="
+        },
+        "@sentry/utils": {
+          "version": "5.15.5",
+          "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.15.5.tgz",
+          "integrity": "sha512-Nl9gl/MGnzSkuKeo3QaefoD/OJrFLB8HmwQ7HUbTXb6E7yyEzNKAQMHXGkwNAjbdYyYbd42iABP6Y5F/h39NtA==",
+          "requires": {
+            "@sentry/types": "5.15.5",
+            "tslib": "^1.9.3"
+          }
+        }
       }
     },
     "vpu-file-upload": {
diff --git a/package.json b/package.json
index d4fcd48..80802bc 100644
--- a/package.json
+++ b/package.json
@@ -2,6 +2,7 @@
   "name": "vpu-signature",
   "version": "1.0.0",
   "main": "src/vpu-signature.js",
+  "license": "LGPL-2.1-or-later",
   "devDependencies": {
     "@babel/core": "^7.9.6",
     "@babel/plugin-syntax-dynamic-import": "^7.8.3",
@@ -27,18 +28,19 @@
     "karma-chrome-launcher": "^3.1.0",
     "karma-firefox-launcher": "^1.3.0",
     "karma-mocha": "^2.0.1",
-    "license-checker": "^25.0.1",
     "mocha": "^7.1.2",
     "puppeteer": "^2.0.0",
-    "rollup": "^2.7.5",
+    "rollup": "^2.9.1",
     "rollup-plugin-consts": "^1.0.2",
     "rollup-plugin-copy": "^3.3.0",
     "rollup-plugin-delete": "^1.2.0",
     "rollup-plugin-emit-ejs": "^3.0.0",
+    "rollup-plugin-license": "^2.0.0",
     "rollup-plugin-node-builtins": "^2.1.2",
     "rollup-plugin-serve": "^1.0.1",
     "rollup-plugin-terser": "^5.2.0",
-    "selfsigned": "^1.10.7"
+    "selfsigned": "^1.10.7",
+    "spdx-satisfies": "^5.0.0"
   },
   "dependencies": {
     "@open-wc/scoped-elements": "^1.1.1",
@@ -72,7 +74,6 @@
     "watch-local": "rollup -c --watch",
     "watch-dev": "rollup -c --watch --environment BUILD:development",
     "test": "npm run build-test && karma start --singleRun",
-    "lint": "eslint .",
-    "license-checker": "license-checker --production --onlyAllow 'MIT;BSD-3-Clause;ISC;Apache-2.0;BSD-2-Clause' --excludePackages 'vpu-auth@1.0.0;vpu-common@1.0.1;vpu-data-table-view@1.0.0;vpu-knowledge-base-web-page-element-view@1.0.0;vpu-signature@1.0.0;vpu-language-select@1.0.0;vpu-signature-book-offer-select@1.0.0;vpu-notification@1.0.0;vpu-person-profile@1.0.0;vpu-person-select@1.0.0'"
+    "lint": "eslint ."
   }
 }
diff --git a/rollup.config.js b/rollup.config.js
index e96970a..d45df70 100644
--- a/rollup.config.js
+++ b/rollup.config.js
@@ -2,6 +2,7 @@ import path from 'path';
 import fs from 'fs';
 import url from 'url';
 import glob from 'glob';
+import spdxSatisfies from 'spdx-satisfies';
 import resolve from '@rollup/plugin-node-resolve';
 import builtins from "rollup-plugin-node-builtins";
 import commonjs from '@rollup/plugin-commonjs';
@@ -12,6 +13,7 @@ import replace from "@rollup/plugin-replace";
 import serve from 'rollup-plugin-serve';
 import urlPlugin from "@rollup/plugin-url";
 import consts from 'rollup-plugin-consts';
+import license from 'rollup-plugin-license';
 import del from 'rollup-plugin-delete';
 import emitEJS from 'rollup-plugin-emit-ejs'
 import babel from '@rollup/plugin-babel'
@@ -29,6 +31,7 @@ const USE_HTTPS = false;
 
 const pkg = require('./package.json');
 const build = (typeof process.env.BUILD !== 'undefined') ? process.env.BUILD : 'local';
+const watch = process.env.ROLLUP_WATCH === 'true';
 console.log("build: " + build);
 let basePath = '';
 let entryPointURL = '';
@@ -40,6 +43,7 @@ let matomoSiteId = 131;
 let useTerser = true;
 let useBabel = true;
 let useManualChunks = true;
+let checkLicenses = !watch;
 
 switch (build) {
   case 'local':
@@ -224,6 +228,20 @@ export default {
           preferBuiltins: true
         }),
         builtins(),
+        checkLicenses && license({
+          thirdParty: {
+            allow: {
+              test(dependency) {
+                // https://github.com/mjeanroy/rollup-plugin-license/issues/550
+                if (dependency.name === null)
+                  return true;
+                return spdxSatisfies(dependency.license, "MIT OR BSD-3-Clause OR Apache-2.0 OR LGPL-2.1-or-later");
+              },
+              failOnUnlicensed: true,
+              failOnViolation: true,
+            },
+          },
+        }),
         commonjs({
             include: 'node_modules/**',
             namedExports: {
@@ -285,7 +303,7 @@ export default {
           '@babel/plugin-syntax-dynamic-import',
           '@babel/plugin-syntax-import-meta']
         }),
-        (process.env.ROLLUP_WATCH === 'true') ? serve({
+        watch ? serve({
           contentBase: '.',
           host: '127.0.0.1',
           port: 8001,
diff --git a/vendor/app-shell b/vendor/app-shell
index a22f3f0..1e4251b 160000
--- a/vendor/app-shell
+++ b/vendor/app-shell
@@ -1 +1 @@
-Subproject commit a22f3f056add8c6db83ff3b73fb10df2d24e0e99
+Subproject commit 1e4251bbfe4d14a864bee30e93ad3e192363dc09
diff --git a/vendor/auth b/vendor/auth
index 2e17933..3f56ec2 160000
--- a/vendor/auth
+++ b/vendor/auth
@@ -1 +1 @@
-Subproject commit 2e179331c2f7572a85e98c825736a3c93494e1ea
+Subproject commit 3f56ec29e170b9fd3b00980a40ef527be63387cb
diff --git a/vendor/common b/vendor/common
index 9c6dc1f..81d7d37 160000
--- a/vendor/common
+++ b/vendor/common
@@ -1 +1 @@
-Subproject commit 9c6dc1fd5e004eba32e31adf8e4485a26c345fe0
+Subproject commit 81d7d37d35c583f1dcdccbf19506df0bed9f129b
diff --git a/vendor/file-upload b/vendor/file-upload
index 87decfd..d318272 160000
--- a/vendor/file-upload
+++ b/vendor/file-upload
@@ -1 +1 @@
-Subproject commit 87decfdaf136064dddff4ed357d37e68cd192733
+Subproject commit d318272e69a85a88a2cca838d4764e4170ab77c1
diff --git a/vendor/language-select b/vendor/language-select
index 7cddfd6..0f3cc37 160000
--- a/vendor/language-select
+++ b/vendor/language-select
@@ -1 +1 @@
-Subproject commit 7cddfd69bc3343f02d6403f93e4bf5d567bdbc47
+Subproject commit 0f3cc374561aeef2443a5659df430e77cd772d50
diff --git a/vendor/notification b/vendor/notification
index 9a7b68e..a7c57a2 160000
--- a/vendor/notification
+++ b/vendor/notification
@@ -1 +1 @@
-Subproject commit 9a7b68e12c1c9d28c248bfa102be8773f06a7c58
+Subproject commit a7c57a215cbea9b2ee6ae50d97f527a13de06380
diff --git a/vendor/person-profile b/vendor/person-profile
index 8158d84..8a61a4c 160000
--- a/vendor/person-profile
+++ b/vendor/person-profile
@@ -1 +1 @@
-Subproject commit 8158d8451e08bfaf495ee263d208a448df83e12d
+Subproject commit 8a61a4c7c79527d8d57e7bc2501d596845b40efd
-- 
GitLab