From 939055a6bd85940c728a51ad05cfb67a0dd086e9 Mon Sep 17 00:00:00 2001 From: Tushar Goel <34160672+TG1999@users.noreply.github.com> Date: Thu, 14 Dec 2023 17:29:28 +0530 Subject: [PATCH 01/12] Add endpoint for purl lookup (#1359) * Add endpoint for purl lookup Signed-off-by: Tushar Goel * Add endpoint for bulk_lookup Signed-off-by: Tushar Goel * Add tests for purl lookup Signed-off-by: Tushar Goel --------- Signed-off-by: Tushar Goel --- vulnerabilities/api.py | 36 ++++++++++++ vulnerabilities/models.py | 3 + vulnerabilities/tests/test_api.py | 95 +++++++++++++++++++++++++++++++ 3 files changed, 134 insertions(+) diff --git a/vulnerabilities/api.py b/vulnerabilities/api.py index 86f800e71..a98580f7f 100644 --- a/vulnerabilities/api.py +++ b/vulnerabilities/api.py @@ -347,6 +347,42 @@ def all(self, request): vulnerable_purls = [str(package.package_url) for package in vulnerable_packages] return Response(vulnerable_purls) + @action(detail=False, methods=["post"]) + def lookup(self, request): + """ + Return the response for exact PackageURL requested for. + """ + purl = request.data.get("purl") + if not purl: + return Response( + status=400, + data={"Error": "A 'purl' is required."}, + ) + return Response( + PackageSerializer( + Package.objects.for_purls([purl]), many=True, context={"request": request} + ).data + ) + + @action(detail=False, methods=["post"]) + def bulk_lookup(self, request): + """ + Return the response for exact PackageURLs requested for. + """ + purls = request.data.get("purls") or [] + if not purls: + return Response( + status=400, + data={"Error": "A non-empty 'purls' list of PURLs is required."}, + ) + return Response( + PackageSerializer( + Package.objects.for_purls(purls), + many=True, + context={"request": request}, + ).data + ) + class VulnerabilityFilterSet(filters.FilterSet): class Meta: diff --git a/vulnerabilities/models.py b/vulnerabilities/models.py index 0a724031f..71d6f9bf1 100644 --- a/vulnerabilities/models.py +++ b/vulnerabilities/models.py @@ -546,6 +546,9 @@ def for_cve(self, cve): """ return self.filter(vulnerabilities__vulnerabilityreference__reference_id__exact=cve) + def for_purls(self, purls=[]): + return Package.objects.filter(package_url__in=purls).distinct() + def get_purl_query_lookups(purl): """ diff --git a/vulnerabilities/tests/test_api.py b/vulnerabilities/tests/test_api.py index 57c0ce2da..924d6fa2e 100644 --- a/vulnerabilities/tests/test_api.py +++ b/vulnerabilities/tests/test_api.py @@ -749,3 +749,98 @@ class TesBanUserAgent(TestCase): def test_ban_request_with_bytedance_user_agent(self): response = self.client.get(f"/api/packages", format="json", HTTP_USER_AGENT="bytedance") assert 404 == response.status_code + + +class TestLookup(TestCase): + def setUp(self): + Package.objects.create( + type="pypi", namespace="", name="microweber/microweber", version="1.2" + ) + self.user = ApiUser.objects.create_api_user(username="e@mail.com") + self.auth = f"Token {self.user.auth_token.key}" + self.csrf_client = APIClient(enforce_csrf_checks=True) + self.csrf_client.credentials(HTTP_AUTHORIZATION=self.auth) + + def test_lookup_endpoint_failure(self): + request_body = {"purl": None} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert response == {"Error": "A 'purl' is required."} + + def test_lookup_endpoint(self): + request_body = {"purl": "pkg:pypi/microweber/microweber@1.2"} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert len(response) == 1 + assert response[0]["purl"] == "pkg:pypi/microweber/microweber@1.2" + + def test_lookup_endpoint_1(self): + Package.objects.create( + type="pypi", namespace="microweber", name="microweber", version="1.2" + ) + request_body = {"purl": "pkg:pypi/microweber/microweber@1.2"} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert len(response) == 2 + assert response[0]["purl"] == "pkg:pypi/microweber/microweber@1.2" + assert response[0]["purl"] == response[1]["purl"] + + def test_lookup_endpoint_with_one_purl_with_qualifier(self): + Package.objects.create( + type="pypi", namespace="microweber", name="microweber", version="1.2" + ) + Package.objects.create( + type="pypi", + namespace="microweber", + name="microweber", + version="1.2", + qualifiers={"foo": "bar"}, + ) + request_body = {"purl": "pkg:pypi/microweber/microweber@1.2"} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert len(response) == 2 + assert response[0]["purl"] == "pkg:pypi/microweber/microweber@1.2" + assert response[0]["purl"] == response[1]["purl"] + request_body = {"purl": "pkg:pypi/microweber/microweber@1.2?foo=bar"} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert len(response) == 1 + assert response[0]["purl"] == "pkg:pypi/microweber/microweber@1.2?foo=bar" + request_body = {"purl": "pkg:pypi/microweber/microweber@1.2?foo=baz"} + response = self.csrf_client.post( + "/api/packages/lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert response == [] + + def test_bulk_lookup_endpoint(self): + request_body = { + "purls": [ + "pkg:pypi/microweber/microweber@1.2?foo=bar", + "pkg:pypi/microweber/microweber@1.2", + "pkg:pypi/foo/bar@1.0", + ], + } + response = self.csrf_client.post( + "/api/packages/bulk_lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + assert len(response) == 1 From e9c280d3940f503d1ba9b23be82d30c63dbf675e Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 15 Dec 2023 13:25:57 +0530 Subject: [PATCH 02/12] Fix swagger API docs generation (#1366) * Fix swagger API doc for `api/packages/bulk_search/` - Use `extend_schema` to override the request body, which was not being properly discovered. - drf-spectacular relies on `get_serializer_class()` and `get_serializer()`, and it works well for view functions that purely deal with ModelSerializer. For anything else, it gets a bit murky, and it is advised to provide proper overrides in the `extend_schema` decorator. - Override erroneous pagination and filter backend caused due to response containing multiple serializer object https://drf-spectacular.readthedocs.io/en/latest/faq.html#my-action-is-erroneously-paginated-or-has-filter-parameters-that-i-do-not-want Signed-off-by: Keshav Priyadarshi * Add tests for `bulk_search` Signed-off-by: Keshav Priyadarshi * Test `bulk_search` with empty request body Signed-off-by: Keshav Priyadarshi * Fix API doc generation for `api/packages/lookup` Signed-off-by: Keshav Priyadarshi * Fix API doc generation for `api/packages/bulk_lookup` Signed-off-by: Keshav Priyadarshi --------- Signed-off-by: Keshav Priyadarshi --- vulnerabilities/api.py | 106 ++++++++++++++++++++++++------ vulnerabilities/tests/test_api.py | 72 +++++++++++++++++++- 2 files changed, 158 insertions(+), 20 deletions(-) diff --git a/vulnerabilities/api.py b/vulnerabilities/api.py index a98580f7f..3b82a7970 100644 --- a/vulnerabilities/api.py +++ b/vulnerabilities/api.py @@ -11,8 +11,11 @@ from django.db.models import Prefetch from django_filters import rest_framework as filters +from drf_spectacular.utils import extend_schema +from drf_spectacular.utils import inline_serializer from packageurl import PackageURL from rest_framework import serializers +from rest_framework import status from rest_framework import viewsets from rest_framework.decorators import action from rest_framework.response import Response @@ -272,6 +275,26 @@ def filter_purl(self, queryset, name, value): return self.queryset.filter(**lookups) +class PackageurlListSerializer(serializers.Serializer): + purls = serializers.ListField( + child=serializers.CharField(), + allow_empty=False, + help_text="List of PackageURL strings in canonical form.", + ) + + +class PackageBulkSearchRequestSerializer(PackageurlListSerializer): + purl_only = serializers.BooleanField(required=False, default=False) + plain_purl = serializers.BooleanField(required=False, default=False) + + +class LookupRequestSerializer(serializers.Serializer): + purl = serializers.CharField( + required=True, + help_text="PackageURL strings in canonical form.", + ) + + class PackageViewSet(viewsets.ReadOnlyModelViewSet): """ Lookup for vulnerable packages by Package URL. @@ -283,21 +306,34 @@ class PackageViewSet(viewsets.ReadOnlyModelViewSet): filterset_class = PackageFilterSet throttle_classes = [StaffUserRateThrottle, AnonRateThrottle] - # TODO: Fix the swagger documentation for this endpoint - @action(detail=False, methods=["post"]) + @extend_schema( + request=PackageBulkSearchRequestSerializer, + responses={200: PackageSerializer(many=True)}, + ) + @action( + detail=False, + methods=["post"], + serializer_class=PackageBulkSearchRequestSerializer, + filter_backends=[], + pagination_class=None, + ) def bulk_search(self, request): """ Lookup for vulnerable packages using many Package URLs at once. """ - - purls = request.data.get("purls", []) or [] - purl_only = request.data.get("purl_only", False) - plain_purl = request.data.get("plain_purl", False) - if not purls or not isinstance(purls, list): + serializer = self.serializer_class(data=request.data) + if not serializer.is_valid(): return Response( - status=400, - data={"Error": "A non-empty 'purls' list of PURLs is required."}, + status=status.HTTP_400_BAD_REQUEST, + data={ + "error": serializer.errors, + "message": "A non-empty 'purls' list of PURLs is required.", + }, ) + validated_data = serializer.validated_data + purls = validated_data.get("purls") + purl_only = validated_data.get("purl_only", False) + plain_purl = validated_data.get("plain_purl", False) if plain_purl: purl_objects = [PackageURL.from_string(purl) for purl in purls] @@ -347,34 +383,66 @@ def all(self, request): vulnerable_purls = [str(package.package_url) for package in vulnerable_packages] return Response(vulnerable_purls) - @action(detail=False, methods=["post"]) + @extend_schema( + request=LookupRequestSerializer, + responses={200: PackageSerializer(many=True)}, + ) + @action( + detail=False, + methods=["post"], + serializer_class=LookupRequestSerializer, + filter_backends=[], + pagination_class=None, + ) def lookup(self, request): """ Return the response for exact PackageURL requested for. """ - purl = request.data.get("purl") - if not purl: + serializer = self.serializer_class(data=request.data) + if not serializer.is_valid(): return Response( - status=400, - data={"Error": "A 'purl' is required."}, + status=status.HTTP_400_BAD_REQUEST, + data={ + "error": serializer.errors, + "message": "A 'purl' is required.", + }, ) + validated_data = serializer.validated_data + purl = validated_data.get("purl") + return Response( PackageSerializer( Package.objects.for_purls([purl]), many=True, context={"request": request} ).data ) - @action(detail=False, methods=["post"]) + @extend_schema( + request=PackageurlListSerializer, + responses={200: PackageSerializer(many=True)}, + ) + @action( + detail=False, + methods=["post"], + serializer_class=PackageurlListSerializer, + filter_backends=[], + pagination_class=None, + ) def bulk_lookup(self, request): """ Return the response for exact PackageURLs requested for. """ - purls = request.data.get("purls") or [] - if not purls: + serializer = self.serializer_class(data=request.data) + if not serializer.is_valid(): return Response( - status=400, - data={"Error": "A non-empty 'purls' list of PURLs is required."}, + status=status.HTTP_400_BAD_REQUEST, + data={ + "error": serializer.errors, + "message": "A non-empty 'purls' list of PURLs is required.", + }, ) + validated_data = serializer.validated_data + purls = validated_data.get("purls") + return Response( PackageSerializer( Package.objects.for_purls(purls), diff --git a/vulnerabilities/tests/test_api.py b/vulnerabilities/tests/test_api.py index 924d6fa2e..c6e667280 100644 --- a/vulnerabilities/tests/test_api.py +++ b/vulnerabilities/tests/test_api.py @@ -647,6 +647,55 @@ def test_bulk_api_with_purl_only_option(self): assert len(response) == 1 assert response[0] == "pkg:nginx/nginx@1.0.15" + def test_bulk_api_without_purls_list(self): + request_body = { + "purls": None, + } + response = self.csrf_client.post( + "/api/packages/bulk_search", + data=json.dumps(request_body), + content_type="application/json", + ).json() + + expected = { + "error": {"purls": ["This field may not be null."]}, + "message": "A non-empty 'purls' list of PURLs is required.", + } + + self.assertEqual(response, expected) + + def test_bulk_api_without_purls_empty_list(self): + request_body = { + "purls": [], + } + response = self.csrf_client.post( + "/api/packages/bulk_search", + data=json.dumps(request_body), + content_type="application/json", + ).json() + + expected = { + "error": {"purls": ["This list may not be empty."]}, + "message": "A non-empty 'purls' list of PURLs is required.", + } + + self.assertEqual(response, expected) + + def test_bulk_api_with_empty_request_body(self): + request_body = {} + response = self.csrf_client.post( + "/api/packages/bulk_search", + data=json.dumps(request_body), + content_type="application/json", + ).json() + + expected = { + "error": {"purls": ["This field is required."]}, + "message": "A non-empty 'purls' list of PURLs is required.", + } + + self.assertEqual(response, expected) + class BulkSearchAPICPE(TestCase): def setUp(self): @@ -768,7 +817,13 @@ def test_lookup_endpoint_failure(self): data=json.dumps(request_body), content_type="application/json", ).json() - assert response == {"Error": "A 'purl' is required."} + + expected = { + "error": {"purl": ["This field may not be null."]}, + "message": "A 'purl' is required.", + } + + self.assertEqual(response, expected) def test_lookup_endpoint(self): request_body = {"purl": "pkg:pypi/microweber/microweber@1.2"} @@ -844,3 +899,18 @@ def test_bulk_lookup_endpoint(self): content_type="application/json", ).json() assert len(response) == 1 + + def test_bulk_lookup_endpoint_failure(self): + request_body = {"purls": None} + response = self.csrf_client.post( + "/api/packages/bulk_lookup", + data=json.dumps(request_body), + content_type="application/json", + ).json() + + expected = { + "error": {"purls": ["This field may not be null."]}, + "message": "A non-empty 'purls' list of PURLs is required.", + } + + self.assertEqual(response, expected) From 5fb36dc593f6faa2dc52c26246ab14a0636006b1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Dec 2023 10:26:27 +0530 Subject: [PATCH 03/12] Bump paramiko from 2.10.3 to 3.4.0 (#1369) Bumps [paramiko](https://github.com/paramiko/paramiko) from 2.10.3 to 3.4.0. - [Commits](https://github.com/paramiko/paramiko/compare/2.10.3...3.4.0) --- updated-dependencies: - dependency-name: paramiko dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 2baddad7f..ebd22384c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -55,7 +55,7 @@ multidict==6.0.2 mypy-extensions==0.4.3 packageurl-python==0.10.5rc1 packaging==21.3 -paramiko==2.10.3 +paramiko==3.4.0 parso==0.8.3 pathspec==0.9.0 pbr==5.8.1 From 9babdafd6facfa5377c297678f692262d564834a Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Thu, 30 Nov 2023 23:13:02 +0530 Subject: [PATCH 04/12] Drop package_managers in favour of fetchcode.package_versions Signed-off-by: Keshav Priyadarshi --- requirements.txt | 3 +- setup.cfg | 3 +- vulnerabilities/importers/istio.py | 2 - vulnerabilities/improvers/valid_versions.py | 47 +- vulnerabilities/package_managers.py | 747 -- vulnerabilities/tests/conftest.py | 2 +- .../improver/nginx-versions-expected.json | 2735 ++---- .../package_manager_data/composer.json | 8179 ----------------- .../test_data/package_manager_data/gem.json | 54 - .../package_manager_data/maven-metadata.xml | 15 - .../package_manager_data/nuget-data.json | 626 -- .../package_manager_data/nuget_index.json | 1737 ---- vulnerabilities/tests/test_github.py | 9 +- vulnerabilities/tests/test_nginx.py | 7 +- .../tests/test_package_managers.py | 462 - vulnerabilities/tests/test_utils.py | 2 +- 16 files changed, 575 insertions(+), 14055 deletions(-) delete mode 100644 vulnerabilities/package_managers.py delete mode 100644 vulnerabilities/tests/test_data/package_manager_data/composer.json delete mode 100644 vulnerabilities/tests/test_data/package_manager_data/gem.json delete mode 100644 vulnerabilities/tests/test_data/package_manager_data/maven-metadata.xml delete mode 100644 vulnerabilities/tests/test_data/package_manager_data/nuget-data.json delete mode 100644 vulnerabilities/tests/test_data/package_manager_data/nuget_index.json delete mode 100644 vulnerabilities/tests/test_package_managers.py diff --git a/requirements.txt b/requirements.txt index ebd22384c..3249b7828 100644 --- a/requirements.txt +++ b/requirements.txt @@ -113,7 +113,8 @@ websocket-client==0.59.0 yarl==1.7.2 zipp==3.8.0 dateparser==1.1.1 -fetchcode==0.2.0 +# TODO: pin fetchcode, once nexB/fetchcode#93 is merged +# fetchcode==0.2.0 cwe2==2.0.0 drf-spectacular-sidecar==2022.10.1 drf-spectacular==0.24.2 diff --git a/setup.cfg b/setup.cfg index 111a61ff3..2a8f5f0a2 100644 --- a/setup.cfg +++ b/setup.cfg @@ -90,7 +90,8 @@ install_requires = # networking GitPython>=3.1.17 requests>=2.25.1 - fetchcode>=0.2.0 + # TODO: replace this with new fetchcode release + fetchcode @ git+https://github.com/nexB/fetchcode.git@refs/pull/93/head #vulntotal python-dotenv diff --git a/vulnerabilities/importers/istio.py b/vulnerabilities/importers/istio.py index d37c6083e..334905ac6 100644 --- a/vulnerabilities/importers/istio.py +++ b/vulnerabilities/importers/istio.py @@ -34,8 +34,6 @@ from vulnerabilities.improver import Improver from vulnerabilities.improver import Inference from vulnerabilities.models import Advisory -from vulnerabilities.package_managers import GitHubTagsAPI -from vulnerabilities.package_managers import VersionAPI from vulnerabilities.utils import AffectedPackage as LegacyAffectedPackage from vulnerabilities.utils import get_affected_packages_by_patched_package from vulnerabilities.utils import nearest_patched_package diff --git a/vulnerabilities/improvers/valid_versions.py b/vulnerabilities/improvers/valid_versions.py index 61f62d5a7..df3674c2b 100644 --- a/vulnerabilities/improvers/valid_versions.py +++ b/vulnerabilities/improvers/valid_versions.py @@ -17,6 +17,7 @@ from django.db.models import Q from django.db.models.query import QuerySet +from fetchcode import package_versions from packageurl import PackageURL from univers.versions import NginxVersion @@ -41,12 +42,6 @@ from vulnerabilities.improver import Improver from vulnerabilities.improver import Inference from vulnerabilities.models import Advisory -from vulnerabilities.package_managers import GitHubTagsAPI -from vulnerabilities.package_managers import GoproxyVersionAPI -from vulnerabilities.package_managers import PackageVersion -from vulnerabilities.package_managers import VersionAPI -from vulnerabilities.package_managers import get_api_package_name -from vulnerabilities.package_managers import get_version_fetcher from vulnerabilities.utils import AffectedPackage as LegacyAffectedPackage from vulnerabilities.utils import clean_nginx_git_tag from vulnerabilities.utils import evolve_purl @@ -63,8 +58,8 @@ class ValidVersionImprover(Improver): importer: Importer ignorable_versions: List[str] = dataclasses.field(default_factory=list) - def __init__(self) -> None: - self.versions_fetcher_by_purl: Mapping[str, VersionAPI] = {} + def __init__(self): + pass @property def interesting_advisories(self) -> QuerySet: @@ -74,21 +69,16 @@ def get_package_versions( self, package_url: PackageURL, until: Optional[datetime] = None ) -> List[str]: """ - Return a list of `valid_versions` for the `package_url` + Return a list of versions published before `until` for the `package_url` """ - api_name = get_api_package_name(package_url) - if not api_name: - logger.error(f"Could not get versions for {package_url!r}") - return [] - versions_fetcher = self.versions_fetcher_by_purl.get(package_url) - if not versions_fetcher: - versions_fetcher = get_version_fetcher(package_url) - self.versions_fetcher_by_purl[package_url] = versions_fetcher() - - versions_fetcher = self.versions_fetcher_by_purl[package_url] + versions = package_versions.versions(str(package_url)) + versions_before_until = set() + for version in versions: + if until and version.release_date and version.release_date > until: + continue + versions_before_until.add(version.value) - self.versions_fetcher_by_purl[package_url] = versions_fetcher - return versions_fetcher.get_until(package_name=api_name, until=until).valid_versions + return versions_before_until def get_inferences(self, advisory_data: AdvisoryData) -> Iterable[Inference]: """ @@ -248,11 +238,10 @@ def get_inferences(self, advisory_data: AdvisoryData) -> Iterable[Inference]: ) def get_inferences_from_versions( - self, advisory_data: AdvisoryData, all_versions: List[PackageVersion] + self, advisory_data: AdvisoryData, all_versions: List[str] ) -> Iterable[Inference]: """ - Yield inferences given an ``advisory_data`` and a ``all_versions`` of - PackageVersion. + Yield inferences given an ``advisory_data`` and a ``all_versions``. """ try: @@ -268,9 +257,9 @@ def get_inferences_from_versions( affected_purls = [] for affected_version_range in affected_version_ranges: - for package_version in all_versions: + for version in all_versions: # FIXME: we should reference an NginxVersion tbd in univers - version = NginxVersion(package_version.value) + version = NginxVersion(version) if is_vulnerable_nginx_version( version=version, affected_version_range=affected_version_range, @@ -294,12 +283,12 @@ def get_inferences_from_versions( def fetch_nginx_version_from_git_tags(self): """ - Yield all nginx PackageVersion from its git tags. + Yield all nginx version from its git tags. """ - nginx_versions = GitHubTagsAPI().fetch("nginx/nginx") + nginx_versions = package_versions.versions("pkg:github/nginx/nginx") for version in nginx_versions: cleaned = clean_nginx_git_tag(version.value) - yield PackageVersion(value=cleaned, release_date=version.release_date) + yield cleaned class ApacheHTTPDImprover(ValidVersionImprover): diff --git a/vulnerabilities/package_managers.py b/vulnerabilities/package_managers.py deleted file mode 100644 index efce7ec1b..000000000 --- a/vulnerabilities/package_managers.py +++ /dev/null @@ -1,747 +0,0 @@ -# -# Copyright (c) nexB Inc. and others. All rights reserved. -# VulnerableCode is a trademark of nexB Inc. -# SPDX-License-Identifier: Apache-2.0 -# See http://www.apache.org/licenses/LICENSE-2.0 for the license text. -# See https://github.com/nexB/vulnerablecode for support or download. -# See https://aboutcode.org for more information about nexB OSS projects. -# - -import dataclasses -import json -import logging -import traceback -import xml.etree.ElementTree as ET -from datetime import datetime -from typing import Iterable -from typing import List -from typing import Optional -from typing import Set -from urllib.parse import urlparse - -import requests -from dateutil import parser as dateparser -from django.utils.dateparse import parse_datetime -from packageurl import PackageURL - -from vulnerabilities import utils -from vulnerabilities.utils import get_item - -logger = logging.getLogger(__name__) - -""" -Utilities to retrieve lists of package versions from remote package -repositories, registries or APIs. -""" - -# FIXME: use purl for cache key, rather than an undefined package_name key -# FIXME: DO NOT cache by default as this is an optimization that does not work for long running processes -# FIXME: DO NOT use set() for storing version lists: they lose the original ordering - - -@dataclasses.dataclass(frozen=True) -class PackageVersion: - value: str - release_date: Optional[datetime] = None - - def to_dict(self): - release_date = self.release_date - release_date = release_date and release_date.isoformat() - return dict(value=self.value, release_date=release_date) - - -@dataclasses.dataclass -class VersionResponse: - valid_versions: Set[str] = dataclasses.field(default_factory=set) - newer_versions: Set[str] = dataclasses.field(default_factory=set) - - -def get_response(url, content_type="json", headers=None): - """ - Fetch ``url`` and return its content as ``content_type`` which is one of - binary, text or json. - """ - assert content_type in ("binary", "text", "json") - - try: - resp = requests.get(url=url, headers=headers) - except: - logger.error(traceback.format_exc()) - return - if not resp.status_code == 200: - logger.error(f"Error while fetching {url!r}: {resp.status_code!r}") - return - - if content_type == "binary": - return resp.content - elif content_type == "text": - return resp.text - elif content_type == "json": - return resp.json() - - -class VersionAPI: - """ - Base class for version APIs classes that fetch package versions from remote - package repositories, registries or APIs. - """ - - # subclasses must define the purl package_type they catter to - package_type = None - - def get_until(self, package_name, until=None) -> VersionResponse: - """ - Return a VersionResponse given a ``package_name`` cache key and an - optional ``until`` datetime object for a date "until" which to fetch - versions. - """ - new_versions = set() - valid_versions = set() - - for version in self.fetch(package_name): - if until and version.release_date and version.release_date > until: - new_versions.add(version.value) - else: - valid_versions.add(version.value) - - return VersionResponse(valid_versions=valid_versions, newer_versions=new_versions) - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - """ - Yield PackageVersion versions given a ``pkg`` package name. - Subclasses must override this method and can create caches as needed. - """ - raise NotImplementedError - - -def remove_debian_default_epoch(version): - """ - Remove the default epoch from a Debian ``version`` string. - """ - return version and version.replace("0:", "") - - -class LaunchpadVersionAPI(VersionAPI): - """ - Fetch versions of Ubuntu debian packages from Launchpad - """ - - package_type = "deb" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - url = ( - f"https://api.launchpad.net/1.0/ubuntu/+archive/primary?" - f"ws.op=getPublishedSources&source_name={pkg}&exact_match=true" - ) - - while True: - response = get_response(url=url, content_type="json") - - if not response: - break - entries = response.get("entries") - if not entries: - break - - for release in entries: - source_package_version = release.get("source_package_version") - source_package_version = remove_debian_default_epoch(version=source_package_version) - date_published = release.get("date_published") - release_date = None - if date_published and type(date_published) is str: - release_date = dateparser.parse(date_published) - if source_package_version: - yield PackageVersion( - value=source_package_version, - release_date=release_date, - ) - if response.get("next_collection_link"): - url = response["next_collection_link"] - else: - break - - -class PypiVersionAPI(VersionAPI): - """ - Fetch versions of Python pypi packages from the PyPI API. - """ - - package_type = "pypi" - - def fetch(self, pkg): - response = get_response(url=f"https://pypi.org/pypi/{pkg}/json") - if not response: - # FIXME: raise! - return - - releases = response.get("releases") or {} - for version, download_items in releases.items(): - if not download_items: - continue - - release_date = self.get_latest_date(download_items) - yield PackageVersion( - value=version, - release_date=release_date, - ) - - def get_latest_date(self, downloads): - """ - Return the latest date from a list of mapping of PyPI ``downloadss`` or None. - - The data has this shape: - [ - { - .... - "upload_time_iso_8601": "2010-12-23T05:14:23.509436Z", - "url": "https://files.pythonhosted.org/packages/8f/1f/c20ca80fa5df025cc/Django-1.1.3.tar.gz", - }, - { - .... - "upload_time_iso_8601": "2010-12-23T05:20:23.509436Z", - "url": "https://files.pythonhosted.org/packages/8f/1f/561bddc20ca80fa5df025cc/Django-1.1.3.wheel", - }, - ] - """ - latest_date = None - for download in downloads: - upload_time = download.get("upload_time_iso_8601") - if upload_time: - current_date = dateparser.parse(upload_time) - if not latest_date: - latest_date = current_date - else: - if current_date > latest_date: - latest_date = current_date - return latest_date - - -class CratesVersionAPI(VersionAPI): - """ - Fetch versions of Rust cargo packages from the crates.io API. - """ - - package_type = "cargo" - - def fetch(self, pkg): - url = f"https://crates.io/api/v1/crates/{pkg}" - response = get_response(url=url, content_type="json") - for version_info in response["versions"]: - yield PackageVersion( - value=version_info["num"], - release_date=dateparser.parse(version_info["updated_at"]), - ) - - -class RubyVersionAPI(VersionAPI): - """ - Fetch versions of Rubygems packages from the rubygems API. - """ - - package_type = "gem" - - def fetch(self, pkg): - url = f"https://rubygems.org/api/v1/versions/{pkg}.json" - response = get_response(url=url, content_type="json") - if not response: - return - for release in response: - if release.get("published_at"): - release_date = dateparser.parse(release["published_at"]) - elif release.get("created_at"): - release_date = dateparser.parse(release["created_at"]) - else: - release_date = None - if release.get("number"): - yield PackageVersion(value=release["number"], release_date=release_date) - else: - logger.error(f"Failed to parse release {release} from url: {url}") - - -class NpmVersionAPI(VersionAPI): - """ - Fetch versions of npm packages from the npm registry API. - """ - - package_type = "npm" - - def fetch(self, pkg): - lower_pkg = pkg.lower() - url = f"https://registry.npmjs.org/{lower_pkg}" - response = get_response(url=url, content_type="json") - if not response: - logger.error(f"Failed to fetch {url}") - return - for version in response.get("versions") or []: - release_date = response.get("time", {}).get(version) - release_date = release_date and dateparser.parse(release_date) or None - yield PackageVersion(value=version, release_date=release_date) - - -class DebianVersionAPI(VersionAPI): - """ - Fetch versions of Debian debian packages from the sources.debian.org API - """ - - package_type = "deb" - - def fetch(self, pkg): - # Need to set the headers, because the Debian API upgrades - # the connection to HTTP 2.0 - response = get_response( - url=f"https://sources.debian.org/api/src/{pkg}", - headers={"Connection": "keep-alive"}, - content_type="json", - ) - if response and (response.get("error") or not response.get("versions")): - return - - for release in response["versions"]: - version = release["version"] - version = remove_debian_default_epoch(version) - yield PackageVersion(value=version) - - -class MavenVersionAPI(VersionAPI): - """ - Fetch versions of Maven packages from Maven Central maven-metadata.xml data - """ - - package_type = "maven" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - artifact_comps = pkg.split(":") - endpoint = self.artifact_url(artifact_comps) - response = get_response(url=endpoint, content_type="binary") - if response: - xml_resp = ET.ElementTree(ET.fromstring(response.decode("utf-8"))) - yield from self.extract_versions(xml_resp) - - @staticmethod - def artifact_url(artifact_comps: List[str]) -> str: - try: - group_id, artifact_id = artifact_comps - except ValueError: - if len(artifact_comps) == 1: - group_id = artifact_comps[0] - artifact_id = artifact_comps[0].split(".")[-1] - - elif len(artifact_comps) == 3: - group_id, artifact_id = list(dict.fromkeys(artifact_comps)) - - else: - raise - - group_url = group_id.replace(".", "/") - endpoint = f"https://repo1.maven.org/maven2/{group_url}/{artifact_id}/maven-metadata.xml" - return endpoint - - @staticmethod - def extract_versions(xml_response: ET.ElementTree) -> Iterable[PackageVersion]: - for child in xml_response.getroot().iter(): - if child.tag == "version" and child.text: - yield PackageVersion(value=child.text) - - -class NugetVersionAPI(VersionAPI): - """ - Fetch versions of NuGet packages from the nuget.org API - """ - - package_type = "nuget" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - pkg = pkg.lower().strip() - url = f"https://api.nuget.org/v3/registration5-semver1/{pkg}/index.json" - resp = get_response(url=url) - if resp: - yield from self.extract_versions(resp) - - @staticmethod - def extract_versions(response: dict) -> Iterable[PackageVersion]: - for entry_group in response.get("items") or []: - for entry in entry_group.get("items") or []: - catalog_entry = entry.get("catalogEntry") or {} - version = catalog_entry.get("version") - if not version: - continue - release_date = catalog_entry.get("published") - if release_date: - release_date = dateparser.parse(release_date) - yield PackageVersion( - value=version, - release_date=release_date, - ) - - -def cleaned_version(version): - """ - Return a ``version`` string stripped from leading "v" prefix. - """ - return version.lstrip("vV") - - -class ComposerVersionAPI(VersionAPI): - """ - Fetch versions of PHP Composer packages from the packagist.org API - """ - - package_type = "composer" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - response = get_response(url=f"https://repo.packagist.org/p/{pkg}.json") - if response: - yield from self.extract_versions(response, pkg) - - @staticmethod - def extract_versions(resp: dict, pkg: str) -> Iterable[PackageVersion]: - for version in get_item(resp, "packages", pkg) or []: - if "dev" in version: - continue - - # This if statement ensures, that all_versions contains only released versions - # See https://github.com/composer/composer/blob/44a4429978d1b3c6223277b875762b2930e83e8c/doc/articles/versions.md#tags # nopep8 - # for explanation of removing 'v' - time = get_item(resp, "packages", pkg, version, "time") - yield PackageVersion( - value=cleaned_version(version), - release_date=dateparser.parse(time) if time else None, - ) - - -class GraphQLError(Exception): - pass - - -# Isolated network call for simplicity of testing -def get_gh_response(endpoint: str, headers: dict, query: dict): - return requests.post(endpoint, headers=headers, json=query).json() - - -# FIXME: this code is duplicated with the imports/github.py code - - -class GitHubTagsAPI(VersionAPI): - """ - Fetch tags of Git repositories from the GitHub graphql API - This requires the "GH_TOKEN" environment variable to be set. - """ - - package_type = "github" - - GQL_QUERY = """ - query getTags($name: String!, $owner: String!, $after: String) - { - repository(name: $name, owner: $owner) { - refs(refPrefix: "refs/tags/", first: 100, after: $after) { - totalCount - pageInfo { - endCursor - hasNextPage - } - nodes { - name - target { - ... on Commit { - committedDate - } - ... on Tag { - target { - ... on Commit { - committedDate - } - } - } - } - } - } - } - }""" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - """ - Yield PackageVersion from the Git tags of the ``pkg`` "{owner}/{repo}" - repository using the GitHub API. - ``pkg`` is a string of format "{repo_owner}/{repo_name}" Example value - of owner_repo = "nexB/scancode-toolkit" - """ - - for node in self.fetch_tag_nodes(pkg): - name = node["name"] - target = node["target"] - - # in case the tag is a signed tag, then the commit info is in target['target'] - if "committedDate" not in target: - target = target["target"] - - committed_date = target.get("committedDate") - if committed_date: - release_date = dateparser.parse(committed_date) - else: - # Tags can actually point to tree and not commit, so - # there is no guaranteed date. This is seen in the linux kernel. - # Github cannot even properly display it. - # https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux/+/refs/tags/v2.6.11 - release_date = None - - yield PackageVersion(value=name, release_date=release_date) - - def fetch_tag_nodes(self, pkg: str, _DUMP_TO_FILE=False) -> Iterable[PackageVersion]: - """ - Yield node "name/target} mappings for Git tags of the ``pkg`` "{owner}/{repo}" - GitHub repository using the GitHub graphql API. ``pkg`` is a string of - format "{repo_owner}/{repo_name}" as in "nexB /scancode-toolkit" - - Each node has this shape: - { - "name": "v2.6.24-rc5", - "target": { - "target": { - "committedDate": "2007-12-11T03:48:43Z" - } - } - }, - """ - repo_owner, repo_name = pkg.split("/") - - variables = { - "owner": repo_owner, - "name": repo_name, - } - graphql_query = { - "query": self.GQL_QUERY, - "variables": variables, - } - - idx = 0 - while True: - response = utils.fetch_github_graphql_query(graphql_query) - - # this is a convenience for testing to dump results to a file - if _DUMP_TO_FILE: - fn = f"github-{repo_owner}-{repo_name}-{idx}.json" - print(f"fetch_tag_nodes: Dumping to file: {fn}") - with open(fn, "w") as o: - json.dump(response, o, indent=2) - idx += 1 - - refs = response["data"]["repository"]["refs"] - for node in refs["nodes"]: - yield node - - page_info = refs["pageInfo"] - if not page_info["hasNextPage"]: - break - - # to fetch next page, we just set the after variable to endCursor - variables["after"] = page_info["endCursor"] - - -class HexVersionAPI(VersionAPI): - """ - Fetch versions of Erlang packages from the hex API - """ - - package_type = "hex" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - response = get_response( - url=f"https://hex.pm/api/packages/{pkg}", - content_type="json", - ) - for release in response["releases"]: - yield PackageVersion( - value=release["version"], - release_date=dateparser.parse(release["inserted_at"]), - ) - - -class ConanVersionAPI(VersionAPI): - """ - Fetch versions of ``conan`` packages from the Conan API - """ - - package_type = "conan" - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - response = get_response( - url=f"https://conan.io/center/api/ui/details?name={pkg}&user=_&channel=_", - content_type="json", - ) - for release in response["versions"]: - yield PackageVersion(value=release["version"]) - - -class GoproxyVersionAPI(VersionAPI): - """ - Fetch versions of Go "golang" packages from the Go proxy API - """ - - package_type = "golang" - - def __init__(self): - self.module_name_by_package_name = {} - - @staticmethod - def trim_go_url_path(url_path: str) -> Optional[str]: - """ - Return a trimmed Go `url_path` removing trailing - package references and keeping only the module - references. - - Github advisories for Go are using package names - such as "https://github.com/nats-io/nats-server/v2/server" - (e.g., https://github.com/advisories/GHSA-jp4j-47f9-2vc3 ), - yet goproxy works with module names instead such as - "https://github.com/nats-io/nats-server" (see for details - https://golang.org/ref/mod#goproxy-protocol ). - This functions trims the trailing part(s) of a package URL - and returns the remaining the module name. - For example: - >>> module = "github.com/xx/a" - >>> assert GoproxyVersionAPI.trim_go_url_path("https://github.com/xx/a/b") == module - """ - # some advisories contains this prefix in package name, e.g. https://github.com/advisories/GHSA-7h6j-2268-fhcm - if url_path.startswith("https://pkg.go.dev/"): - url_path = url_path[len("https://pkg.go.dev/") :] - parsed_url_path = urlparse(url_path) - path = parsed_url_path.path - parts = path.split("/") - if len(parts) < 3: - logger.error(f"Not a valid Go URL path {url_path} trim_go_url_path") - return - else: - joined_path = "/".join(parts[:3]) - return f"{parsed_url_path.netloc}{joined_path}" - - @staticmethod - def escape_path(path: str) -> str: - """ - Return an case-encoded module path or version name. - - This is done by replacing every uppercase letter with an exclamation - mark followed by the corresponding lower-case letter, in order to - avoid ambiguity when serving from case-insensitive file systems. - Refer to https://golang.org/ref/mod#goproxy-protocol. - """ - escaped_path = "" - for c in path: - if c >= "A" and c <= "Z": - # replace uppercase with !lowercase - escaped_path += "!" + chr(ord(c) + ord("a") - ord("A")) - else: - escaped_path += c - return escaped_path - - @staticmethod - def fetch_version_info(version_info: str, escaped_pkg: str) -> Optional[PackageVersion]: - v = version_info.split() - if not v: - return None - - value = v[0] - if len(v) > 1: - # get release date from the second part. see - # https://github.com/golang/go/blob/master/src/cmd/go/internal/modfetch/proxy.go#latest() - release_date = parse_datetime(v[1]) - else: - escaped_ver = GoproxyVersionAPI.escape_path(value) - response = get_response( - url=f"https://proxy.golang.org/{escaped_pkg}/@v/{escaped_ver}.info", - content_type="json", - ) - - if not response: - logger.error( - f"Error while fetching version info for {escaped_pkg}/{escaped_ver} " - f"from goproxy:\n{traceback.format_exc()}" - ) - release_date = parse_datetime(response.get("Time", "")) if response else None - - return PackageVersion(value=value, release_date=release_date) - - def fetch(self, pkg: str) -> Iterable[PackageVersion]: - - # escape uppercase in module path - escaped_pkg = self.escape_path(pkg) - trimmed_pkg = pkg - response = None - # resolve module name from package name, see https://go.dev/ref/mod#resolve-pkg-mod - while escaped_pkg is not None: - url = f"https://proxy.golang.org/{escaped_pkg}/@v/list" - response = get_response(url=url, content_type="text") - if not response: - trimmed_escaped_pkg = self.trim_go_url_path(escaped_pkg) - trimmed_pkg = self.trim_go_url_path(trimmed_pkg) or "" - if trimmed_escaped_pkg == escaped_pkg: - break - - escaped_pkg = trimmed_escaped_pkg - continue - - break - - if response is None or escaped_pkg is None or trimmed_pkg is None: - logger.error(f"Error while fetching versions for {pkg!r} from goproxy") - return - self.module_name_by_package_name[pkg] = trimmed_pkg - for version_info in response.split("\n"): - version = self.fetch_version_info(version_info, escaped_pkg) - if version: - yield version - - -VERSION_API_CLASSES = { - MavenVersionAPI, - NugetVersionAPI, - ComposerVersionAPI, - PypiVersionAPI, - RubyVersionAPI, - GoproxyVersionAPI, - NpmVersionAPI, - HexVersionAPI, - LaunchpadVersionAPI, - CratesVersionAPI, - DebianVersionAPI, - GitHubTagsAPI, - ConanVersionAPI, -} - -VERSION_API_CLASSES_BY_PACKAGE_TYPE = {cls.package_type: cls for cls in VERSION_API_CLASSES} - -VERSION_API_CLASSES_BY_PACKAGE_TYPE["apache"] = GitHubTagsAPI - -VERSION_API_CLASS_BY_PACKAGE_NAMESPACE = { - "debian": DebianVersionAPI, - "ubuntu": LaunchpadVersionAPI, -} - - -def get_api_package_name(purl: PackageURL) -> str: - """ - Return the package name expected by the GitHub API given a PackageURL - >>> get_api_package_name(PackageURL(type="maven", namespace="org.apache.commons", name="commons-lang3")) - 'org.apache.commons:commons-lang3' - >>> get_api_package_name(PackageURL(type="composer", namespace="foo", name="bar")) - 'foo/bar' - """ - if not purl.name: - return None - if purl.type == "apache": - return f"{purl.type}/{purl.name}" - if purl.type in ("nuget", "pypi", "gem", "deb") or not purl.namespace: - return purl.name - if purl.type == "maven": - return f"{purl.namespace}:{purl.name}" - if purl.type in ("composer", "golang", "npm", "github"): - return f"{purl.namespace}/{purl.name}" - - logger.error(f"get_api_package_name: Unknown PURL {purl!r}") - - -def get_version_fetcher(package_url): - if package_url.type == "deb": - versions_fetcher: VersionAPI = VERSION_API_CLASS_BY_PACKAGE_NAMESPACE[package_url.namespace] - else: - versions_fetcher: VersionAPI = VERSION_API_CLASSES_BY_PACKAGE_TYPE[package_url.type] - return versions_fetcher diff --git a/vulnerabilities/tests/conftest.py b/vulnerabilities/tests/conftest.py index bfd59e045..8076f4b9b 100644 --- a/vulnerabilities/tests/conftest.py +++ b/vulnerabilities/tests/conftest.py @@ -25,7 +25,7 @@ def no_rmtree(monkeypatch): # Step 2: Run test for importer only if it is activated (pytestmark = pytest.mark.skipif(...)) # Step 3: Migrate all the tests collect_ignore = [ - "test_package_managers.py", + "test_models.py", "test_ruby.py", "test_rust.py", "test_suse_backports.py", diff --git a/vulnerabilities/tests/test_data/nginx/improver/nginx-versions-expected.json b/vulnerabilities/tests/test_data/nginx/improver/nginx-versions-expected.json index d5cdddd32..eb9d47b4b 100644 --- a/vulnerabilities/tests/test_data/nginx/improver/nginx-versions-expected.json +++ b/vulnerabilities/tests/test_data/nginx/improver/nginx-versions-expected.json @@ -1,2190 +1,549 @@ [ - { - "value": "0.1.0", - "release_date": "2004-10-04T15:04:06+00:00" - }, - { - "value": "0.1.1", - "release_date": "2004-10-11T15:07:03+00:00" - }, - { - "value": "0.1.2", - "release_date": "2004-10-21T15:34:38+00:00" - }, - { - "value": "0.1.3", - "release_date": "2004-10-25T15:29:23+00:00" - }, - { - "value": "0.1.4", - "release_date": "2004-10-26T06:27:24+00:00" - }, - { - "value": "0.1.5", - "release_date": "2004-11-11T14:07:14+00:00" - }, - { - "value": "0.1.6", - "release_date": "2004-11-11T20:58:09+00:00" - }, - { - "value": "0.1.7", - "release_date": "2004-11-12T14:35:09+00:00" - }, - { - "value": "0.1.8", - "release_date": "2004-11-20T19:52:20+00:00" - }, - { - "value": "0.1.9", - "release_date": "2004-11-25T16:17:31+00:00" - }, - { - "value": "0.1.10", - "release_date": "2004-11-26T09:33:59+00:00" - }, - { - "value": "0.1.11", - "release_date": "2004-12-02T18:40:46+00:00" - }, - { - "value": "0.1.12", - "release_date": "2004-12-06T14:45:08+00:00" - }, - { - "value": "0.1.13", - "release_date": "2004-12-21T12:30:30+00:00" - }, - { - "value": "0.1.14", - "release_date": "2005-01-18T13:03:58+00:00" - }, - { - "value": "0.1.15", - "release_date": "2005-01-19T13:10:56+00:00" - }, - { - "value": "0.1.16", - "release_date": "2005-01-25T12:27:35+00:00" - }, - { - "value": "0.1.17", - "release_date": "2005-02-03T19:33:37+00:00" - }, - { - "value": "0.1.18", - "release_date": "2005-02-09T14:31:07+00:00" - }, - { - "value": "0.1.19", - "release_date": "2005-02-16T13:40:36+00:00" - }, - { - "value": "0.1.20", - "release_date": "2005-02-17T11:59:36+00:00" - }, - { - "value": "0.1.21", - "release_date": "2005-02-22T14:40:13+00:00" - }, - { - "value": "0.1.22", - "release_date": "2005-02-24T12:29:09+00:00" - }, - { - "value": "0.1.23", - "release_date": "2005-03-01T15:20:36+00:00" - }, - { - "value": "0.1.24", - "release_date": "2005-03-04T14:06:57+00:00" - }, - { - "value": "0.1.25", - "release_date": "2005-03-19T12:38:37+00:00" - }, - { - "value": "0.1.26", - "release_date": "2005-03-22T16:02:46+00:00" - }, - { - "value": "0.1.27", - "release_date": "2005-03-28T14:43:02+00:00" - }, - { - "value": "0.1.28", - "release_date": "2005-04-08T15:18:55+00:00" - }, - { - "value": "0.1.29", - "release_date": "2005-05-12T14:58:06+00:00" - }, - { - "value": "0.1.30", - "release_date": "2005-05-14T18:42:03+00:00" - }, - { - "value": "0.1.31", - "release_date": "2005-05-16T13:53:20+00:00" - }, - { - "value": "0.1.32", - "release_date": "2005-05-19T13:25:22+00:00" - }, - { - "value": "0.1.33", - "release_date": "2005-05-23T12:07:45+00:00" - }, - { - "value": "0.1.34", - "release_date": "2005-05-26T18:12:40+00:00" - }, - { - "value": "0.1.35", - "release_date": "2005-06-07T15:56:31+00:00" - }, - { - "value": "0.1.36", - "release_date": "2005-06-15T18:33:41+00:00" - }, - { - "value": "0.1.37", - "release_date": "2005-06-23T13:41:06+00:00" - }, - { - "value": "0.1.38", - "release_date": "2005-07-08T14:34:20+00:00" - }, - { - "value": "0.1.39", - "release_date": "2005-07-14T12:51:53+00:00" - }, - { - "value": "0.1.40", - "release_date": "2005-07-25T09:41:38+00:00" - }, - { - "value": "0.1.41", - "release_date": "2005-08-19T08:54:17+00:00" - }, - { - "value": "0.1.42", - "release_date": "2005-08-23T15:36:54+00:00" - }, - { - "value": "0.1.43", - "release_date": "2005-08-30T10:55:07+00:00" - }, - { - "value": "0.1.44", - "release_date": "2005-09-06T16:09:32+00:00" - }, - { - "value": "0.1.45", - "release_date": "2005-09-08T14:36:09+00:00" - }, - { - "value": "0.2.0", - "release_date": "2005-09-23T11:02:22+00:00" - }, - { - "value": "0.2.1", - "release_date": "2005-09-23T14:43:49+00:00" - }, - { - "value": "0.2.2", - "release_date": "2005-09-30T14:41:25+00:00" - }, - { - "value": "0.2.3", - "release_date": "2005-09-30T16:02:34+00:00" - }, - { - "value": "0.2.4", - "release_date": "2005-10-03T12:53:14+00:00" - }, - { - "value": "0.2.5", - "release_date": "2005-10-04T10:38:53+00:00" - }, - { - "value": "0.2.6", - "release_date": "2005-10-05T14:46:21+00:00" - }, - { - "value": "0.3.0", - "release_date": "2005-10-07T13:30:52+00:00" - }, - { - "value": "0.3.1", - "release_date": "2005-10-10T12:59:41+00:00" - }, - { - "value": "0.3.2", - "release_date": "2005-10-12T13:50:36+00:00" - }, - { - "value": "0.3.3", - "release_date": "2005-10-19T12:33:58+00:00" - }, - { - "value": "0.3.4", - "release_date": "2005-10-19T13:34:28+00:00" - }, - { - "value": "0.3.5", - "release_date": "2005-10-21T19:12:18+00:00" - }, - { - "value": "0.3.6", - "release_date": "2005-10-24T15:09:41+00:00" - }, - { - "value": "0.3.7", - "release_date": "2005-10-27T15:46:13+00:00" - }, - { - "value": "0.3.8", - "release_date": "2005-11-09T17:25:55+00:00" - }, - { - "value": "0.3.9", - "release_date": "2005-11-10T07:44:53+00:00" - }, - { - "value": "0.3.10", - "release_date": "2005-11-15T13:30:52+00:00" - }, - { - "value": "0.3.11", - "release_date": "2005-11-15T14:49:57+00:00" - }, - { - "value": "0.3.12", - "release_date": "2005-11-26T10:11:11+00:00" - }, - { - "value": "0.3.13", - "release_date": "2005-12-05T13:18:09+00:00" - }, - { - "value": "0.3.14", - "release_date": "2005-12-05T16:59:05+00:00" - }, - { - "value": "0.3.15", - "release_date": "2005-12-07T14:51:31+00:00" - }, - { - "value": "0.3.16", - "release_date": "2005-12-16T15:07:08+00:00" - }, - { - "value": "0.3.17", - "release_date": "2005-12-18T16:02:44+00:00" - }, - { - "value": "0.3.18", - "release_date": "2005-12-26T17:07:48+00:00" - }, - { - "value": "0.3.19", - "release_date": "2005-12-28T14:23:52+00:00" - }, - { - "value": "0.3.20", - "release_date": "2006-01-11T15:26:57+00:00" - }, - { - "value": "0.3.21", - "release_date": "2006-01-16T14:56:53+00:00" - }, - { - "value": "0.3.22", - "release_date": "2006-01-17T20:04:32+00:00" - }, - { - "value": "0.3.23", - "release_date": "2006-01-24T16:08:27+00:00" - }, - { - "value": "0.3.24", - "release_date": "2006-02-01T18:22:15+00:00" - }, - { - "value": "0.3.25", - "release_date": "2006-02-01T20:01:51+00:00" - }, - { - "value": "0.3.26", - "release_date": "2006-02-03T12:58:48+00:00" - }, - { - "value": "0.3.27", - "release_date": "2006-02-08T15:33:12+00:00" - }, - { - "value": "0.3.28", - "release_date": "2006-02-16T15:26:46+00:00" - }, - { - "value": "0.3.29", - "release_date": "2006-02-20T16:48:17+00:00" - }, - { - "value": "0.3.30", - "release_date": "2006-02-22T19:41:39+00:00" - }, - { - "value": "0.3.31", - "release_date": "2006-03-10T12:51:52+00:00" - }, - { - "value": "0.3.32", - "release_date": "2006-03-11T06:40:30+00:00" - }, - { - "value": "0.3.33", - "release_date": "2006-03-15T09:53:04+00:00" - }, - { - "value": "0.3.34", - "release_date": "2006-03-21T08:20:41+00:00" - }, - { - "value": "0.3.35", - "release_date": "2006-03-28T12:24:47+00:00" - }, - { - "value": "0.3.36", - "release_date": "2006-04-05T13:40:54+00:00" - }, - { - "value": "0.3.37", - "release_date": "2006-04-07T14:08:04+00:00" - }, - { - "value": "0.3.38", - "release_date": "2006-04-14T09:53:38+00:00" - }, - { - "value": "0.3.39", - "release_date": "2006-04-17T19:55:41+00:00" - }, - { - "value": "0.3.40", - "release_date": "2006-04-19T15:30:56+00:00" - }, - { - "value": "0.3.41", - "release_date": "2006-04-21T12:06:44+00:00" - }, - { - "value": "0.3.42", - "release_date": "2006-04-26T09:52:47+00:00" - }, - { - "value": "0.3.43", - "release_date": "2006-04-26T15:21:08+00:00" - }, - { - "value": "0.3.44", - "release_date": "2006-05-04T15:32:46+00:00" - }, - { - "value": "0.3.45", - "release_date": "2006-05-06T16:28:56+00:00" - }, - { - "value": "0.3.46", - "release_date": "2006-05-11T14:43:47+00:00" - }, - { - "value": "0.3.47", - "release_date": "2006-05-23T14:54:58+00:00" - }, - { - "value": "0.3.48", - "release_date": "2006-05-29T17:28:12+00:00" - }, - { - "value": "0.3.49", - "release_date": "2006-05-31T14:11:45+00:00" - }, - { - "value": "0.3.50", - "release_date": "2006-06-28T16:00:26+00:00" - }, - { - "value": "0.3.51", - "release_date": "2006-06-30T12:19:32+00:00" - }, - { - "value": "0.3.52", - "release_date": "2006-07-03T16:49:20+00:00" - }, - { - "value": "0.3.53", - "release_date": "2006-07-07T16:33:19+00:00" - }, - { - "value": "0.3.54", - "release_date": "2006-07-11T13:20:19+00:00" - }, - { - "value": "0.3.55", - "release_date": "2006-07-28T15:16:17+00:00" - }, - { - "value": "0.3.56", - "release_date": "2006-08-04T16:04:04+00:00" - }, - { - "value": "0.3.57", - "release_date": "2006-08-09T19:59:45+00:00" - }, - { - "value": "0.3.58", - "release_date": "2006-08-14T15:09:38+00:00" - }, - { - "value": "0.3.59", - "release_date": "2006-08-16T13:09:33+00:00" - }, - { - "value": "0.3.60", - "release_date": "2006-08-18T14:17:54+00:00" - }, - { - "value": "0.3.61", - "release_date": "2006-08-28T16:57:48+00:00" - }, - { - "value": "0.4.0", - "release_date": "2006-08-30T10:39:17+00:00" - }, - { - "value": "0.4.1", - "release_date": "2006-09-14T13:28:04+00:00" - }, - { - "value": "0.4.2", - "release_date": "2006-09-14T15:29:09+00:00" - }, - { - "value": "0.4.3", - "release_date": "2006-09-26T12:23:14+00:00" - }, - { - "value": "0.4.4", - "release_date": "2006-10-02T11:44:21+00:00" - }, - { - "value": "0.4.5", - "release_date": "2006-10-02T15:07:23+00:00" - }, - { - "value": "0.4.6", - "release_date": "2006-10-06T14:23:44+00:00" - }, - { - "value": "0.4.7", - "release_date": "2006-10-10T16:10:29+00:00" - }, - { - "value": "0.4.8", - "release_date": "2006-10-11T15:11:22+00:00" - }, - { - "value": "0.4.9", - "release_date": "2006-10-13T15:43:19+00:00" - }, - { - "value": "0.4.10", - "release_date": "2006-10-23T13:25:27+00:00" - }, - { - "value": "0.4.11", - "release_date": "2006-10-25T16:29:25+00:00" - }, - { - "value": "0.4.12", - "release_date": "2006-10-31T15:28:43+00:00" - }, - { - "value": "0.4.13", - "release_date": "2006-11-15T20:02:11+00:00" - }, - { - "value": "0.4.14", - "release_date": "2006-11-27T14:28:44+00:00" - }, - { - "value": "0.5.0", - "release_date": "2006-12-04T16:56:53+00:00" - }, - { - "value": "0.5.1", - "release_date": "2006-12-11T10:00:05+00:00" - }, - { - "value": "0.5.2", - "release_date": "2006-12-11T15:23:27+00:00" - }, - { - "value": "0.5.3", - "release_date": "2006-12-13T15:06:55+00:00" - }, - { - "value": "0.5.4", - "release_date": "2006-12-14T23:14:11+00:00" - }, - { - "value": "0.5.5", - "release_date": "2006-12-24T18:32:58+00:00" - }, - { - "value": "0.5.6", - "release_date": "2007-01-09T17:08:42+00:00" - }, - { - "value": "0.5.7", - "release_date": "2007-01-15T17:49:11+00:00" - }, - { - "value": "0.5.8", - "release_date": "2007-01-19T16:13:59+00:00" - }, - { - "value": "0.5.9", - "release_date": "2007-01-25T16:34:51+00:00" - }, - { - "value": "0.5.10", - "release_date": "2007-01-25T22:09:28+00:00" - }, - { - "value": "0.5.11", - "release_date": "2007-02-05T14:02:51+00:00" - }, - { - "value": "0.5.12", - "release_date": "2007-02-12T14:59:20+00:00" - }, - { - "value": "0.5.13", - "release_date": "2007-02-19T13:25:54+00:00" - }, - { - "value": "0.5.14", - "release_date": "2007-02-23T12:37:06+00:00" - }, - { - "value": "0.5.15", - "release_date": "2007-03-19T13:44:24+00:00" - }, - { - "value": "0.5.16", - "release_date": "2007-03-26T14:32:00+00:00" - }, - { - "value": "0.5.17", - "release_date": "2007-04-02T10:44:44+00:00" - }, - { - "value": "0.5.18", - "release_date": "2007-04-19T18:16:53+00:00" - }, - { - "value": "0.5.19", - "release_date": "2007-04-24T06:20:59+00:00" - }, - { - "value": "0.5.20", - "release_date": "2007-05-07T14:24:25+00:00" - }, - { - "value": "0.5.21", - "release_date": "2007-05-28T14:32:02+00:00" - }, - { - "value": "0.5.22", - "release_date": "2007-05-29T12:07:48+00:00" - }, - { - "value": "0.5.23", - "release_date": "2007-06-04T13:57:56+00:00" - }, - { - "value": "0.5.24", - "release_date": "2007-06-06T06:05:05+00:00" - }, - { - "value": "0.5.25", - "release_date": "2007-06-11T18:42:55+00:00" - }, - { - "value": "0.5.26", - "release_date": "2007-06-17T19:07:55+00:00" - }, - { - "value": "0.5.27", - "release_date": "2007-07-09T06:53:54+00:00" - }, - { - "value": "0.5.28", - "release_date": "2007-07-17T10:01:17+00:00" - }, - { - "value": "0.5.29", - "release_date": "2007-07-23T07:58:59+00:00" - }, - { - "value": "0.5.30", - "release_date": "2007-07-30T09:14:34+00:00" - }, - { - "value": "0.5.31", - "release_date": "2007-08-15T12:47:26+00:00" - }, - { - "value": "0.5.32", - "release_date": "2007-09-24T04:11:20+00:00" - }, - { - "value": "0.5.33", - "release_date": "2007-11-07T14:31:56+00:00" - }, - { - "value": "0.5.34", - "release_date": "2007-12-13T10:49:26+00:00" - }, - { - "value": "0.5.35", - "release_date": "2008-01-08T17:42:10+00:00" - }, - { - "value": "0.5.36", - "release_date": "2008-05-04T11:17:13+00:00" - }, - { - "value": "0.5.37", - "release_date": "2008-07-07T12:09:02+00:00" - }, - { - "value": "0.5.38", - "release_date": "2009-09-14T13:17:16+00:00" - }, - { - "value": "0.6.0", - "release_date": "2007-06-14T05:41:42+00:00" - }, - { - "value": "0.6.1", - "release_date": "2007-06-17T19:13:33+00:00" - }, - { - "value": "0.6.2", - "release_date": "2007-07-09T06:54:47+00:00" - }, - { - "value": "0.6.3", - "release_date": "2007-07-12T11:21:56+00:00" - }, - { - "value": "0.6.4", - "release_date": "2007-07-17T09:57:37+00:00" - }, - { - "value": "0.6.5", - "release_date": "2007-07-23T07:57:08+00:00" - }, - { - "value": "0.6.6", - "release_date": "2007-07-30T09:13:17+00:00" - }, - { - "value": "0.6.7", - "release_date": "2007-08-15T12:44:26+00:00" - }, - { - "value": "0.6.8", - "release_date": "2007-08-20T13:05:32+00:00" - }, - { - "value": "0.6.9", - "release_date": "2007-08-28T16:22:48+00:00" - }, - { - "value": "0.6.10", - "release_date": "2007-09-03T10:29:59+00:00" - }, - { - "value": "0.6.11", - "release_date": "2007-09-11T13:15:48+00:00" - }, - { - "value": "0.6.12", - "release_date": "2007-09-21T14:36:10+00:00" - }, - { - "value": "0.6.13", - "release_date": "2007-09-24T04:10:01+00:00" - }, - { - "value": "0.6.14", - "release_date": "2007-10-15T11:24:11+00:00" - }, - { - "value": "0.6.15", - "release_date": "2007-10-22T11:16:55+00:00" - }, - { - "value": "0.6.16", - "release_date": "2007-10-29T13:41:41+00:00" - }, - { - "value": "0.6.17", - "release_date": "2007-11-15T15:04:22+00:00" - }, - { - "value": "0.6.18", - "release_date": "2007-11-27T16:20:11+00:00" - }, - { - "value": "0.6.19", - "release_date": "2007-11-27T16:53:14+00:00" - }, - { - "value": "0.6.20", - "release_date": "2007-11-28T19:13:23+00:00" - }, - { - "value": "0.6.21", - "release_date": "2007-12-03T17:18:48+00:00" - }, - { - "value": "0.6.22", - "release_date": "2007-12-19T16:44:38+00:00" - }, - { - "value": "0.6.23", - "release_date": "2007-12-27T14:59:57+00:00" - }, - { - "value": "0.6.24", - "release_date": "2007-12-27T18:43:53+00:00" - }, - { - "value": "0.6.25", - "release_date": "2008-01-08T12:31:35+00:00" - }, - { - "value": "0.6.26", - "release_date": "2008-02-11T15:22:25+00:00" - }, - { - "value": "0.6.27", - "release_date": "2008-03-12T13:27:10+00:00" - }, - { - "value": "0.6.28", - "release_date": "2008-03-13T06:10:32+00:00" - }, - { - "value": "0.6.29", - "release_date": "2008-03-18T14:11:55+00:00" - }, - { - "value": "0.6.30", - "release_date": "2008-04-29T12:36:39+00:00" - }, - { - "value": "0.6.31", - "release_date": "2008-05-12T09:48:43+00:00" - }, - { - "value": "0.6.32", - "release_date": "2008-07-07T11:44:11+00:00" - }, - { - "value": "0.6.33", - "release_date": "2008-11-20T17:26:44+00:00" - }, - { - "value": "0.6.34", - "release_date": "2008-11-27T15:32:51+00:00" - }, - { - "value": "0.6.35", - "release_date": "2009-01-26T15:31:47+00:00" - }, - { - "value": "0.6.36", - "release_date": "2009-04-02T06:48:50+00:00" - }, - { - "value": "0.6.37", - "release_date": "2009-05-18T16:29:57+00:00" - }, - { - "value": "0.6.38", - "release_date": "2009-06-22T10:11:55+00:00" - }, - { - "value": "0.6.39", - "release_date": "2009-09-14T13:13:21+00:00" - }, - { - "value": "0.7.0", - "release_date": "2008-05-19T10:34:41+00:00" - }, - { - "value": "0.7.1", - "release_date": "2008-05-26T09:32:30+00:00" - }, - { - "value": "0.7.2", - "release_date": "2008-06-16T09:04:22+00:00" - }, - { - "value": "0.7.3", - "release_date": "2008-06-23T10:34:57+00:00" - }, - { - "value": "0.7.4", - "release_date": "2008-06-30T12:38:49+00:00" - }, - { - "value": "0.7.5", - "release_date": "2008-07-01T07:22:00+00:00" - }, - { - "value": "0.7.6", - "release_date": "2008-07-07T09:43:21+00:00" - }, - { - "value": "0.7.7", - "release_date": "2008-07-30T12:55:03+00:00" - }, - { - "value": "0.7.8", - "release_date": "2008-08-04T15:46:34+00:00" - }, - { - "value": "0.7.9", - "release_date": "2008-08-12T15:34:08+00:00" - }, - { - "value": "0.7.10", - "release_date": "2008-08-13T16:53:31+00:00" - }, - { - "value": "0.7.11", - "release_date": "2008-08-18T14:22:50+00:00" - }, - { - "value": "0.7.12", - "release_date": "2008-08-26T16:13:43+00:00" - }, - { - "value": "0.7.13", - "release_date": "2008-08-26T17:19:07+00:00" - }, - { - "value": "0.7.14", - "release_date": "2008-09-01T15:31:56+00:00" - }, - { - "value": "0.7.15", - "release_date": "2008-09-08T08:36:22+00:00" - }, - { - "value": "0.7.16", - "release_date": "2008-09-08T09:42:41+00:00" - }, - { - "value": "0.7.17", - "release_date": "2008-09-15T16:59:30+00:00" - }, - { - "value": "0.7.18", - "release_date": "2008-10-13T13:18:28+00:00" - }, - { - "value": "0.7.19", - "release_date": "2008-10-13T15:16:11+00:00" - }, - { - "value": "0.7.20", - "release_date": "2008-11-10T16:30:45+00:00" - }, - { - "value": "0.7.21", - "release_date": "2008-11-11T20:04:58+00:00" - }, - { - "value": "0.7.22", - "release_date": "2008-11-20T16:47:36+00:00" - }, - { - "value": "0.7.23", - "release_date": "2008-11-27T13:05:34+00:00" - }, - { - "value": "0.7.24", - "release_date": "2008-12-01T14:54:42+00:00" - }, - { - "value": "0.7.25", - "release_date": "2008-12-08T14:43:16+00:00" - }, - { - "value": "0.7.26", - "release_date": "2008-12-08T18:32:42+00:00" - }, - { - "value": "0.7.27", - "release_date": "2008-12-15T11:30:08+00:00" - }, - { - "value": "0.7.28", - "release_date": "2008-12-22T13:06:23+00:00" - }, - { - "value": "0.7.29", - "release_date": "2008-12-24T12:50:21+00:00" - }, - { - "value": "0.7.30", - "release_date": "2008-12-24T16:21:40+00:00" - }, - { - "value": "0.7.31", - "release_date": "2009-01-19T13:57:01+00:00" - }, - { - "value": "0.7.32", - "release_date": "2009-01-26T14:41:26+00:00" - }, - { - "value": "0.7.33", - "release_date": "2009-02-02T11:00:11+00:00" - }, - { - "value": "0.7.34", - "release_date": "2009-02-10T16:50:28+00:00" - }, - { - "value": "0.7.35", - "release_date": "2009-02-16T13:58:43+00:00" - }, - { - "value": "0.7.36", - "release_date": "2009-02-21T07:26:17+00:00" - }, - { - "value": "0.7.37", - "release_date": "2009-02-21T14:42:38+00:00" - }, - { - "value": "0.7.38", - "release_date": "2009-02-23T16:01:23+00:00" - }, - { - "value": "0.7.39", - "release_date": "2009-03-02T12:43:09+00:00" - }, - { - "value": "0.7.40", - "release_date": "2009-03-09T08:54:23+00:00" - }, - { - "value": "0.7.41", - "release_date": "2009-03-11T13:16:09+00:00" - }, - { - "value": "0.7.42", - "release_date": "2009-03-16T07:23:09+00:00" - }, - { - "value": "0.7.43", - "release_date": "2009-03-18T12:46:23+00:00" - }, - { - "value": "0.7.44", - "release_date": "2009-03-23T13:27:39+00:00" - }, - { - "value": "0.7.45", - "release_date": "2009-03-30T08:32:56+00:00" - }, - { - "value": "0.7.46", - "release_date": "2009-03-30T11:02:56+00:00" - }, - { - "value": "0.7.47", - "release_date": "2009-04-01T13:20:34+00:00" - }, - { - "value": "0.7.48", - "release_date": "2009-04-06T10:15:22+00:00" - }, - { - "value": "0.7.49", - "release_date": "2009-04-06T10:42:53+00:00" - }, - { - "value": "0.7.50", - "release_date": "2009-04-06T11:44:34+00:00" - }, - { - "value": "0.7.51", - "release_date": "2009-04-12T09:35:25+00:00" - }, - { - "value": "0.7.52", - "release_date": "2009-04-20T06:16:19+00:00" - }, - { - "value": "0.7.53", - "release_date": "2009-04-27T12:02:01+00:00" - }, - { - "value": "0.7.54", - "release_date": "2009-05-01T18:52:58+00:00" - }, - { - "value": "0.7.55", - "release_date": "2009-05-06T09:28:57+00:00" - }, - { - "value": "0.7.56", - "release_date": "2009-05-11T13:42:26+00:00" - }, - { - "value": "0.7.57", - "release_date": "2009-05-12T12:11:50+00:00" - }, - { - "value": "0.7.58", - "release_date": "2009-05-18T13:14:17+00:00" - }, - { - "value": "0.7.59", - "release_date": "2009-05-25T10:00:08+00:00" - }, - { - "value": "0.7.60", - "release_date": "2009-06-15T09:55:51+00:00" - }, - { - "value": "0.7.61", - "release_date": "2009-06-22T09:37:07+00:00" - }, - { - "value": "0.7.62", - "release_date": "2009-09-14T13:09:54+00:00" - }, - { - "value": "0.7.63", - "release_date": "2009-10-26T17:57:36+00:00" - }, - { - "value": "0.7.64", - "release_date": "2009-11-16T15:29:46+00:00" - }, - { - "value": "0.7.65", - "release_date": "2010-02-01T16:09:15+00:00" - }, - { - "value": "0.7.66", - "release_date": "2010-06-07T12:41:31+00:00" - }, - { - "value": "0.7.67", - "release_date": "2010-06-15T09:55:00+00:00" - }, - { - "value": "0.7.68", - "release_date": "2010-12-14T19:48:03+00:00" - }, - { - "value": "0.7.69", - "release_date": "2011-07-19T14:20:25+00:00" - }, - { - "value": "0.8.0", - "release_date": "2009-06-02T16:22:26+00:00" - }, - { - "value": "0.8.1", - "release_date": "2009-06-08T12:55:49+00:00" - }, - { - "value": "0.8.2", - "release_date": "2009-06-15T08:15:11+00:00" - }, - { - "value": "0.8.3", - "release_date": "2009-06-19T10:56:35+00:00" - }, - { - "value": "0.8.4", - "release_date": "2009-06-22T09:17:24+00:00" - }, - { - "value": "0.8.5", - "release_date": "2009-07-13T11:47:59+00:00" - }, - { - "value": "0.8.6", - "release_date": "2009-07-20T08:24:31+00:00" - }, - { - "value": "0.8.7", - "release_date": "2009-07-27T15:24:01+00:00" - }, - { - "value": "0.8.8", - "release_date": "2009-08-10T08:26:27+00:00" - }, - { - "value": "0.8.9", - "release_date": "2009-08-17T17:59:56+00:00" - }, - { - "value": "0.8.10", - "release_date": "2009-08-24T11:10:36+00:00" - }, - { - "value": "0.8.11", - "release_date": "2009-08-28T13:21:06+00:00" - }, - { - "value": "0.8.12", - "release_date": "2009-08-31T11:32:16+00:00" - }, - { - "value": "0.8.13", - "release_date": "2009-08-31T15:02:36+00:00" - }, - { - "value": "0.8.14", - "release_date": "2009-09-07T08:25:45+00:00" - }, - { - "value": "0.8.15", - "release_date": "2009-09-14T13:07:17+00:00" - }, - { - "value": "0.8.16", - "release_date": "2009-09-22T14:35:21+00:00" - }, - { - "value": "0.8.17", - "release_date": "2009-09-28T13:08:09+00:00" - }, - { - "value": "0.8.18", - "release_date": "2009-10-06T12:44:50+00:00" - }, - { - "value": "0.8.19", - "release_date": "2009-10-06T16:19:42+00:00" - }, - { - "value": "0.8.20", - "release_date": "2009-10-14T12:57:25+00:00" - }, - { - "value": "0.8.21", - "release_date": "2009-10-26T14:09:25+00:00" - }, - { - "value": "0.8.22", - "release_date": "2009-11-03T18:52:37+00:00" - }, - { - "value": "0.8.23", - "release_date": "2009-11-11T11:05:22+00:00" - }, - { - "value": "0.8.24", - "release_date": "2009-11-11T14:53:17+00:00" - }, - { - "value": "0.8.25", - "release_date": "2009-11-16T13:47:10+00:00" - }, - { - "value": "0.8.26", - "release_date": "2009-11-16T19:25:37+00:00" - }, - { - "value": "0.8.27", - "release_date": "2009-11-17T16:53:17+00:00" - }, - { - "value": "0.8.28", - "release_date": "2009-11-23T15:53:12+00:00" - }, - { - "value": "0.8.29", - "release_date": "2009-11-30T13:28:12+00:00" - }, - { - "value": "0.8.30", - "release_date": "2009-12-15T14:34:09+00:00" - }, - { - "value": "0.8.31", - "release_date": "2009-12-23T15:44:31+00:00" - }, - { - "value": "0.8.32", - "release_date": "2010-01-11T15:35:44+00:00" - }, - { - "value": "0.8.33", - "release_date": "2010-02-01T13:36:31+00:00" - }, - { - "value": "0.8.34", - "release_date": "2010-03-03T17:00:09+00:00" - }, - { - "value": "0.8.35", - "release_date": "2010-04-01T15:44:11+00:00" - }, - { - "value": "0.8.36", - "release_date": "2010-04-22T17:37:21+00:00" - }, - { - "value": "0.8.37", - "release_date": "2010-05-17T06:08:52+00:00" - }, - { - "value": "0.8.38", - "release_date": "2010-05-24T12:47:49+00:00" - }, - { - "value": "0.8.39", - "release_date": "2010-05-31T15:10:04+00:00" - }, - { - "value": "0.8.40", - "release_date": "2010-06-07T12:38:32+00:00" - }, - { - "value": "0.8.41", - "release_date": "2010-06-15T09:45:06+00:00" - }, - { - "value": "0.8.42", - "release_date": "2010-06-21T10:16:24+00:00" - }, - { - "value": "0.8.43", - "release_date": "2010-06-30T15:11:43+00:00" - }, - { - "value": "0.8.44", - "release_date": "2010-07-05T15:23:55+00:00" - }, - { - "value": "0.8.45", - "release_date": "2010-07-13T11:59:36+00:00" - }, - { - "value": "0.8.46", - "release_date": "2010-07-19T11:31:30+00:00" - }, - { - "value": "0.8.47", - "release_date": "2010-07-28T16:16:48+00:00" - }, - { - "value": "0.8.48", - "release_date": "2010-08-03T15:10:56+00:00" - }, - { - "value": "0.8.49", - "release_date": "2010-08-09T08:24:13+00:00" - }, - { - "value": "0.8.50", - "release_date": "2010-09-02T14:59:18+00:00" - }, - { - "value": "0.8.51", - "release_date": "2010-09-27T13:08:40+00:00" - }, - { - "value": "0.8.52", - "release_date": "2010-09-28T06:59:58+00:00" - }, - { - "value": "0.8.53", - "release_date": "2010-10-18T12:03:26+00:00" - }, - { - "value": "0.8.54", - "release_date": "2010-12-14T10:55:48+00:00" - }, - { - "value": "0.8.55", - "release_date": "2011-07-19T13:59:47+00:00" - }, - { - "value": "0.9.0", - "release_date": "2010-11-29T15:29:31+00:00" - }, - { - "value": "0.9.1", - "release_date": "2010-11-30T13:10:32+00:00" - }, - { - "value": "0.9.2", - "release_date": "2010-12-06T11:36:30+00:00" - }, - { - "value": "0.9.3", - "release_date": "2010-12-13T11:05:52+00:00" - }, - { - "value": "0.9.4", - "release_date": "2011-01-21T11:04:39+00:00" - }, - { - "value": "0.9.5", - "release_date": "2011-02-21T09:43:57+00:00" - }, - { - "value": "0.9.6", - "release_date": "2011-03-21T15:33:26+00:00" - }, - { - "value": "0.9.7", - "release_date": "2011-04-04T12:50:22+00:00" - }, - { - "value": "1.0.0", - "release_date": "2011-04-12T09:04:32+00:00" - }, - { - "value": "1.0.1", - "release_date": "2011-05-03T12:12:04+00:00" - }, - { - "value": "1.0.2", - "release_date": "2011-05-10T12:27:52+00:00" - }, - { - "value": "1.0.3", - "release_date": "2011-05-25T14:50:50+00:00" - }, - { - "value": "1.0.4", - "release_date": "2011-06-01T09:29:58+00:00" - }, - { - "value": "1.0.5", - "release_date": "2011-07-19T13:38:37+00:00" - }, - { - "value": "1.0.6", - "release_date": "2011-08-29T14:28:23+00:00" - }, - { - "value": "1.0.7", - "release_date": "2011-09-30T15:35:23+00:00" - }, - { - "value": "1.0.8", - "release_date": "2011-10-01T06:00:42+00:00" - }, - { - "value": "1.0.9", - "release_date": "2011-11-01T14:51:19+00:00" - }, - { - "value": "1.0.10", - "release_date": "2011-11-15T08:24:03+00:00" - }, - { - "value": "1.0.11", - "release_date": "2011-12-15T14:04:39+00:00" - }, - { - "value": "1.0.12", - "release_date": "2012-02-06T14:08:59+00:00" - }, - { - "value": "1.0.13", - "release_date": "2012-03-05T15:19:49+00:00" - }, - { - "value": "1.0.14", - "release_date": "2012-03-15T11:50:53+00:00" - }, - { - "value": "1.0.15", - "release_date": "2012-04-12T13:00:53+00:00" - }, - { - "value": "1.1.0", - "release_date": "2011-08-01T14:47:40+00:00" - }, - { - "value": "1.1.1", - "release_date": "2011-08-22T13:56:08+00:00" - }, - { - "value": "1.1.2", - "release_date": "2011-09-05T13:14:27+00:00" - }, - { - "value": "1.1.3", - "release_date": "2011-09-14T15:00:43+00:00" - }, - { - "value": "1.1.4", - "release_date": "2011-09-20T11:18:24+00:00" - }, - { - "value": "1.1.5", - "release_date": "2011-10-05T14:44:11+00:00" - }, - { - "value": "1.1.6", - "release_date": "2011-10-17T15:10:23+00:00" - }, - { - "value": "1.1.7", - "release_date": "2011-10-31T14:52:46+00:00" - }, - { - "value": "1.1.8", - "release_date": "2011-11-14T15:37:54+00:00" - }, - { - "value": "1.1.9", - "release_date": "2011-11-28T15:02:38+00:00" - }, - { - "value": "1.1.10", - "release_date": "2011-11-30T10:00:50+00:00" - }, - { - "value": "1.1.11", - "release_date": "2011-12-12T14:17:49+00:00" - }, - { - "value": "1.1.12", - "release_date": "2011-12-26T15:05:17+00:00" - }, - { - "value": "1.1.13", - "release_date": "2012-01-16T15:14:37+00:00" - }, - { - "value": "1.1.14", - "release_date": "2012-01-30T13:52:10+00:00" - }, - { - "value": "1.1.15", - "release_date": "2012-02-15T13:26:06+00:00" - }, - { - "value": "1.1.16", - "release_date": "2012-02-29T13:45:18+00:00" - }, - { - "value": "1.1.17", - "release_date": "2012-03-15T11:32:18+00:00" - }, - { - "value": "1.1.18", - "release_date": "2012-03-28T13:29:29+00:00" - }, - { - "value": "1.1.19", - "release_date": "2012-04-12T12:42:46+00:00" - }, - { - "value": "1.2.0", - "release_date": "2012-04-23T13:06:47+00:00" - }, - { - "value": "1.2.2", - "release_date": "2012-07-03T10:48:31+00:00" - }, - { - "value": "1.2.3", - "release_date": "2012-08-07T12:35:56+00:00" - }, - { - "value": "1.2.4", - "release_date": "2012-09-25T13:42:43+00:00" - }, - { - "value": "1.2.5", - "release_date": "2012-11-13T13:34:59+00:00" - }, - { - "value": "1.2.6", - "release_date": "2012-12-11T14:24:23+00:00" - }, - { - "value": "1.2.7", - "release_date": "2013-02-12T13:40:16+00:00" - }, - { - "value": "1.2.8", - "release_date": "2013-04-02T12:34:21+00:00" - }, - { - "value": "1.2.9", - "release_date": "2013-05-13T10:41:51+00:00" - }, - { - "value": "1.3.0", - "release_date": "2012-05-15T14:23:49+00:00" - }, - { - "value": "1.3.1", - "release_date": "2012-06-05T13:47:29+00:00" - }, - { - "value": "1.3.2", - "release_date": "2012-06-26T13:46:23+00:00" - }, - { - "value": "1.3.3", - "release_date": "2012-07-10T12:20:10+00:00" - }, - { - "value": "1.3.4", - "release_date": "2012-07-31T12:38:37+00:00" - }, - { - "value": "1.3.5", - "release_date": "2012-08-21T13:05:02+00:00" - }, - { - "value": "1.3.6", - "release_date": "2012-09-12T10:41:36+00:00" - }, - { - "value": "1.3.7", - "release_date": "2012-10-02T13:33:37+00:00" - }, - { - "value": "1.3.8", - "release_date": "2012-10-30T13:34:23+00:00" - }, - { - "value": "1.3.9", - "release_date": "2012-11-27T13:55:34+00:00" - }, - { - "value": "1.3.10", - "release_date": "2012-12-25T14:23:45+00:00" - }, - { - "value": "1.3.11", - "release_date": "2013-01-10T13:17:04+00:00" - }, - { - "value": "1.3.12", - "release_date": "2013-02-05T14:06:41+00:00" - }, - { - "value": "1.3.13", - "release_date": "2013-02-19T15:14:48+00:00" - }, - { - "value": "1.3.14", - "release_date": "2013-03-05T14:35:58+00:00" - }, - { - "value": "1.3.15", - "release_date": "2013-03-26T13:03:02+00:00" - }, - { - "value": "1.3.16", - "release_date": "2013-04-16T14:05:11+00:00" - }, - { - "value": "1.4.0", - "release_date": "2013-04-24T13:59:34+00:00" - }, - { - "value": "1.4.1", - "release_date": "2013-05-06T10:20:27+00:00" - }, - { - "value": "1.4.2", - "release_date": "2013-07-17T12:51:21+00:00" - }, - { - "value": "1.4.3", - "release_date": "2013-10-08T12:07:13+00:00" - }, - { - "value": "1.4.4", - "release_date": "2013-11-19T11:25:24+00:00" - }, - { - "value": "1.4.5", - "release_date": "2014-02-11T13:24:43+00:00" - }, - { - "value": "1.4.6", - "release_date": "2014-03-04T11:46:44+00:00" - }, - { - "value": "1.4.7", - "release_date": "2014-03-18T13:17:09+00:00" - }, - { - "value": "1.5.0", - "release_date": "2013-05-06T09:52:36+00:00" - }, - { - "value": "1.5.1", - "release_date": "2013-06-04T13:21:52+00:00" - }, - { - "value": "1.5.2", - "release_date": "2013-07-02T12:28:50+00:00" - }, - { - "value": "1.5.3", - "release_date": "2013-07-30T13:27:55+00:00" - }, - { - "value": "1.5.4", - "release_date": "2013-08-27T13:37:15+00:00" - }, - { - "value": "1.5.5", - "release_date": "2013-09-17T13:31:00+00:00" - }, - { - "value": "1.5.6", - "release_date": "2013-10-01T13:44:51+00:00" - }, - { - "value": "1.5.7", - "release_date": "2013-11-19T10:03:47+00:00" - }, - { - "value": "1.5.8", - "release_date": "2013-12-17T13:46:26+00:00" - }, - { - "value": "1.5.9", - "release_date": "2014-01-22T13:42:59+00:00" - }, - { - "value": "1.5.10", - "release_date": "2014-02-04T12:26:46+00:00" - }, - { - "value": "1.5.11", - "release_date": "2014-03-04T11:39:23+00:00" - }, - { - "value": "1.5.12", - "release_date": "2014-03-18T13:08:35+00:00" - }, - { - "value": "1.5.13", - "release_date": "2014-04-08T14:15:21+00:00" - }, - { - "value": "1.6.0", - "release_date": "2014-04-24T12:52:24+00:00" - }, - { - "value": "1.6.1", - "release_date": "2014-08-05T11:18:34+00:00" - }, - { - "value": "1.6.2", - "release_date": "2014-09-16T12:23:18+00:00" - }, - { - "value": "1.6.3", - "release_date": "2015-04-07T15:51:37+00:00" - }, - { - "value": "1.7.0", - "release_date": "2014-04-24T12:54:22+00:00" - }, - { - "value": "1.7.1", - "release_date": "2014-05-27T13:58:08+00:00" - }, - { - "value": "1.7.2", - "release_date": "2014-06-17T12:51:25+00:00" - }, - { - "value": "1.7.3", - "release_date": "2014-07-08T13:22:38+00:00" - }, - { - "value": "1.7.4", - "release_date": "2014-08-05T11:13:04+00:00" - }, - { - "value": "1.7.5", - "release_date": "2014-09-16T12:19:03+00:00" - }, - { - "value": "1.7.6", - "release_date": "2014-09-30T13:20:32+00:00" - }, - { - "value": "1.7.7", - "release_date": "2014-10-28T15:04:46+00:00" - }, - { - "value": "1.7.8", - "release_date": "2014-12-02T13:02:14+00:00" - }, - { - "value": "1.7.9", - "release_date": "2014-12-23T15:28:37+00:00" - }, - { - "value": "1.7.10", - "release_date": "2015-02-10T14:33:32+00:00" - }, - { - "value": "1.7.11", - "release_date": "2015-03-24T15:45:34+00:00" - }, - { - "value": "1.7.12", - "release_date": "2015-04-07T15:35:33+00:00" - }, - { - "value": "1.8.0", - "release_date": "2015-04-21T14:11:58+00:00" - }, - { - "value": "1.8.1", - "release_date": "2016-01-26T14:39:30+00:00" - }, - { - "value": "1.9.0", - "release_date": "2015-04-28T15:31:17+00:00" - }, - { - "value": "1.9.1", - "release_date": "2015-05-26T13:49:50+00:00" - }, - { - "value": "1.9.2", - "release_date": "2015-06-16T14:49:39+00:00" - }, - { - "value": "1.9.3", - "release_date": "2015-07-14T16:46:05+00:00" - }, - { - "value": "1.9.4", - "release_date": "2015-08-18T15:16:17+00:00" - }, - { - "value": "1.9.5", - "release_date": "2015-09-22T14:36:21+00:00" - }, - { - "value": "1.9.6", - "release_date": "2015-10-27T13:47:29+00:00" - }, - { - "value": "1.9.7", - "release_date": "2015-11-17T14:50:56+00:00" - }, - { - "value": "1.9.8", - "release_date": "2015-12-08T15:16:51+00:00" - }, - { - "value": "1.9.9", - "release_date": "2015-12-09T14:47:20+00:00" - }, - { - "value": "1.9.10", - "release_date": "2016-01-26T14:27:40+00:00" - }, - { - "value": "1.9.11", - "release_date": "2016-02-09T14:11:56+00:00" - }, - { - "value": "1.9.12", - "release_date": "2016-02-24T14:53:22+00:00" - }, - { - "value": "1.9.13", - "release_date": "2016-03-29T15:09:30+00:00" - }, - { - "value": "1.9.14", - "release_date": "2016-04-05T14:57:08+00:00" - }, - { - "value": "1.9.15", - "release_date": "2016-04-19T16:02:37+00:00" - }, - { - "value": "1.10.0", - "release_date": "2016-04-26T13:31:18+00:00" - }, - { - "value": "1.10.1", - "release_date": "2016-05-31T13:47:01+00:00" - }, - { - "value": "1.10.2", - "release_date": "2016-10-18T15:03:12+00:00" - }, - { - "value": "1.10.3", - "release_date": "2017-01-31T15:01:10+00:00" - }, - { - "value": "1.11.0", - "release_date": "2016-05-24T15:54:41+00:00" - }, - { - "value": "1.11.1", - "release_date": "2016-05-31T13:43:49+00:00" - }, - { - "value": "1.11.2", - "release_date": "2016-07-05T15:56:14+00:00" - }, - { - "value": "1.11.3", - "release_date": "2016-07-26T13:58:58+00:00" - }, - { - "value": "1.11.4", - "release_date": "2016-09-13T15:39:23+00:00" - }, - { - "value": "1.11.5", - "release_date": "2016-10-11T15:03:00+00:00" - }, - { - "value": "1.11.6", - "release_date": "2016-11-15T15:11:46+00:00" - }, - { - "value": "1.11.7", - "release_date": "2016-12-13T15:21:23+00:00" - }, - { - "value": "1.11.8", - "release_date": "2016-12-27T14:23:07+00:00" - }, - { - "value": "1.11.9", - "release_date": "2017-01-24T14:02:18+00:00" - }, - { - "value": "1.11.10", - "release_date": "2017-02-14T15:36:04+00:00" - }, - { - "value": "1.11.11", - "release_date": "2017-03-21T15:04:22+00:00" - }, - { - "value": "1.11.12", - "release_date": "2017-03-24T15:05:05+00:00" - }, - { - "value": "1.11.13", - "release_date": "2017-04-04T15:01:57+00:00" - }, - { - "value": "1.12.0", - "release_date": "2017-04-12T14:46:00+00:00" - }, - { - "value": "1.12.1", - "release_date": "2017-07-11T13:24:04+00:00" - }, - { - "value": "1.12.2", - "release_date": "2017-10-17T13:16:37+00:00" - }, - { - "value": "1.13.0", - "release_date": "2017-04-25T14:18:21+00:00" - }, - { - "value": "1.13.1", - "release_date": "2017-05-30T14:55:22+00:00" - }, - { - "value": "1.13.2", - "release_date": "2017-06-27T14:44:17+00:00" - }, - { - "value": "1.13.3", - "release_date": "2017-07-11T13:18:30+00:00" - }, - { - "value": "1.13.4", - "release_date": "2017-08-08T15:00:11+00:00" - }, - { - "value": "1.13.5", - "release_date": "2017-09-05T14:59:31+00:00" - }, - { - "value": "1.13.6", - "release_date": "2017-10-10T15:22:50+00:00" - }, - { - "value": "1.13.7", - "release_date": "2017-11-21T15:09:43+00:00" - }, - { - "value": "1.13.8", - "release_date": "2017-12-26T16:01:11+00:00" - }, - { - "value": "1.13.9", - "release_date": "2018-02-20T14:08:48+00:00" - }, - { - "value": "1.13.10", - "release_date": "2018-03-20T15:58:30+00:00" - }, - { - "value": "1.13.11", - "release_date": "2018-04-03T14:38:09+00:00" - }, - { - "value": "1.13.12", - "release_date": "2018-04-10T14:11:09+00:00" - }, - { - "value": "1.14.0", - "release_date": "2018-04-17T15:22:35+00:00" - }, - { - "value": "1.14.1", - "release_date": "2018-11-06T13:52:46+00:00" - }, - { - "value": "1.14.2", - "release_date": "2018-12-04T14:52:24+00:00" - }, - { - "value": "1.15.0", - "release_date": "2018-06-05T13:47:25+00:00" - }, - { - "value": "1.15.1", - "release_date": "2018-07-03T15:07:43+00:00" - }, - { - "value": "1.15.2", - "release_date": "2018-07-24T13:10:59+00:00" - }, - { - "value": "1.15.3", - "release_date": "2018-08-28T15:36:00+00:00" - }, - { - "value": "1.15.4", - "release_date": "2018-09-25T15:11:39+00:00" - }, - { - "value": "1.15.5", - "release_date": "2018-10-02T15:13:51+00:00" - }, - { - "value": "1.15.6", - "release_date": "2018-11-06T13:32:08+00:00" - }, - { - "value": "1.15.7", - "release_date": "2018-11-27T14:40:20+00:00" - }, - { - "value": "1.15.8", - "release_date": "2018-12-25T14:53:03+00:00" - }, - { - "value": "1.15.9", - "release_date": "2019-02-26T15:29:22+00:00" - }, - { - "value": "1.15.10", - "release_date": "2019-03-26T14:06:54+00:00" - }, - { - "value": "1.15.11", - "release_date": "2019-04-09T13:00:30+00:00" - }, - { - "value": "1.15.12", - "release_date": "2019-04-16T14:54:58+00:00" - }, - { - "value": "1.16.0", - "release_date": "2019-04-23T13:12:57+00:00" - }, - { - "value": "1.16.1", - "release_date": "2019-08-13T12:51:42+00:00" - }, - { - "value": "1.17.0", - "release_date": "2019-05-21T14:23:57+00:00" - }, - { - "value": "1.17.1", - "release_date": "2019-06-25T12:19:45+00:00" - }, - { - "value": "1.17.2", - "release_date": "2019-07-23T12:01:47+00:00" - }, - { - "value": "1.17.3", - "release_date": "2019-08-13T12:45:56+00:00" - }, - { - "value": "1.17.4", - "release_date": "2019-09-24T15:08:48+00:00" - }, - { - "value": "1.17.5", - "release_date": "2019-10-22T15:16:08+00:00" - }, - { - "value": "1.17.6", - "release_date": "2019-11-19T14:18:58+00:00" - }, - { - "value": "1.17.7", - "release_date": "2019-12-24T15:00:09+00:00" - }, - { - "value": "1.17.8", - "release_date": "2020-01-21T13:39:41+00:00" - }, - { - "value": "1.17.9", - "release_date": "2020-03-03T15:04:21+00:00" - }, - { - "value": "1.17.10", - "release_date": "2020-04-14T14:19:26+00:00" - }, - { - "value": "1.18.0", - "release_date": "2020-04-21T14:09:01+00:00" - }, - { - "value": "1.19.0", - "release_date": "2020-05-26T15:00:20+00:00" - }, - { - "value": "1.19.1", - "release_date": "2020-07-07T15:56:05+00:00" - }, - { - "value": "1.19.2", - "release_date": "2020-08-11T14:52:30+00:00" - }, - { - "value": "1.19.3", - "release_date": "2020-09-29T14:32:10+00:00" - }, - { - "value": "1.19.4", - "release_date": "2020-10-27T15:09:20+00:00" - }, - { - "value": "1.19.5", - "release_date": "2020-11-24T15:06:34+00:00" - }, - { - "value": "1.19.6", - "release_date": "2020-12-15T14:41:39+00:00" - }, - { - "value": "1.19.7", - "release_date": "2021-02-16T15:57:18+00:00" - }, - { - "value": "1.19.8", - "release_date": "2021-03-09T15:27:50+00:00" - }, - { - "value": "1.19.9", - "release_date": "2021-03-30T14:47:11+00:00" - }, - { - "value": "1.19.10", - "release_date": "2021-04-13T15:13:58+00:00" - }, - { - "value": "1.20.0", - "release_date": "2021-04-20T13:35:46+00:00" - }, - { - "value": "1.20.1", - "release_date": "2021-05-25T12:35:38+00:00" - }, - { - "value": "1.20.2", - "release_date": "2021-11-16T14:44:02+00:00" - }, - { - "value": "1.21.0", - "release_date": "2021-05-25T12:28:55+00:00" - }, - { - "value": "1.21.1", - "release_date": "2021-07-06T14:59:16+00:00" - }, - { - "value": "1.21.2", - "release_date": "2021-08-31T15:13:46+00:00" - }, - { - "value": "1.21.3", - "release_date": "2021-09-07T15:21:02+00:00" - }, - { - "value": "1.21.4", - "release_date": "2021-11-02T14:49:22+00:00" - }, - { - "value": "1.21.5", - "release_date": "2021-12-28T15:28:37+00:00" - }, - { - "value": "1.21.6", - "release_date": "2022-01-25T15:03:51+00:00" - } + "0.1.0", + "0.1.1", + "0.1.2", + "0.1.3", + "0.1.4", + "0.1.5", + "0.1.6", + "0.1.7", + "0.1.8", + "0.1.9", + "0.1.10", + "0.1.11", + "0.1.12", + "0.1.13", + "0.1.14", + "0.1.15", + "0.1.16", + "0.1.17", + "0.1.18", + "0.1.19", + "0.1.20", + "0.1.21", + "0.1.22", + "0.1.23", + "0.1.24", + "0.1.25", + "0.1.26", + "0.1.27", + "0.1.28", + "0.1.29", + "0.1.30", + "0.1.31", + "0.1.32", + "0.1.33", + "0.1.34", + "0.1.35", + "0.1.36", + "0.1.37", + "0.1.38", + "0.1.39", + "0.1.40", + "0.1.41", + "0.1.42", + "0.1.43", + "0.1.44", + "0.1.45", + "0.2.0", + "0.2.1", + "0.2.2", + "0.2.3", + "0.2.4", + "0.2.5", + "0.2.6", + "0.3.0", + "0.3.1", + "0.3.2", + "0.3.3", + "0.3.4", + "0.3.5", + "0.3.6", + "0.3.7", + "0.3.8", + "0.3.9", + "0.3.10", + "0.3.11", + "0.3.12", + "0.3.13", + "0.3.14", + "0.3.15", + "0.3.16", + "0.3.17", + "0.3.18", + "0.3.19", + "0.3.20", + "0.3.21", + "0.3.22", + "0.3.23", + "0.3.24", + "0.3.25", + "0.3.26", + "0.3.27", + "0.3.28", + "0.3.29", + "0.3.30", + "0.3.31", + "0.3.32", + "0.3.33", + "0.3.34", + "0.3.35", + "0.3.36", + "0.3.37", + "0.3.38", + "0.3.39", + "0.3.40", + "0.3.41", + "0.3.42", + "0.3.43", + "0.3.44", + "0.3.45", + "0.3.46", + "0.3.47", + "0.3.48", + "0.3.49", + "0.3.50", + "0.3.51", + "0.3.52", + "0.3.53", + "0.3.54", + "0.3.55", + "0.3.56", + "0.3.57", + "0.3.58", + "0.3.59", + "0.3.60", + "0.3.61", + "0.4.0", + "0.4.1", + "0.4.2", + "0.4.3", + "0.4.4", + "0.4.5", + "0.4.6", + "0.4.7", + "0.4.8", + "0.4.9", + "0.4.10", + "0.4.11", + "0.4.12", + "0.4.13", + "0.4.14", + "0.5.0", + "0.5.1", + "0.5.2", + "0.5.3", + "0.5.4", + "0.5.5", + "0.5.6", + "0.5.7", + "0.5.8", + "0.5.9", + "0.5.10", + "0.5.11", + "0.5.12", + "0.5.13", + "0.5.14", + "0.5.15", + "0.5.16", + "0.5.17", + "0.5.18", + "0.5.19", + "0.5.20", + "0.5.21", + "0.5.22", + "0.5.23", + "0.5.24", + "0.5.25", + "0.5.26", + "0.5.27", + "0.5.28", + "0.5.29", + "0.5.30", + "0.5.31", + "0.5.32", + "0.5.33", + "0.5.34", + "0.5.35", + "0.5.36", + "0.5.37", + "0.5.38", + "0.6.0", + "0.6.1", + "0.6.2", + "0.6.3", + "0.6.4", + "0.6.5", + "0.6.6", + "0.6.7", + "0.6.8", + "0.6.9", + "0.6.10", + "0.6.11", + "0.6.12", + "0.6.13", + "0.6.14", + "0.6.15", + "0.6.16", + "0.6.17", + "0.6.18", + "0.6.19", + "0.6.20", + "0.6.21", + "0.6.22", + "0.6.23", + "0.6.24", + "0.6.25", + "0.6.26", + "0.6.27", + "0.6.28", + "0.6.29", + "0.6.30", + "0.6.31", + "0.6.32", + "0.6.33", + "0.6.34", + "0.6.35", + "0.6.36", + "0.6.37", + "0.6.38", + "0.6.39", + "0.7.0", + "0.7.1", + "0.7.2", + "0.7.3", + "0.7.4", + "0.7.5", + "0.7.6", + "0.7.7", + "0.7.8", + "0.7.9", + "0.7.10", + "0.7.11", + "0.7.12", + "0.7.13", + "0.7.14", + "0.7.15", + "0.7.16", + "0.7.17", + "0.7.18", + "0.7.19", + "0.7.20", + "0.7.21", + "0.7.22", + "0.7.23", + "0.7.24", + "0.7.25", + "0.7.26", + "0.7.27", + "0.7.28", + "0.7.29", + "0.7.30", + "0.7.31", + "0.7.32", + "0.7.33", + "0.7.34", + "0.7.35", + "0.7.36", + "0.7.37", + "0.7.38", + "0.7.39", + "0.7.40", + "0.7.41", + "0.7.42", + "0.7.43", + "0.7.44", + "0.7.45", + "0.7.46", + "0.7.47", + "0.7.48", + "0.7.49", + "0.7.50", + "0.7.51", + "0.7.52", + "0.7.53", + "0.7.54", + "0.7.55", + "0.7.56", + "0.7.57", + "0.7.58", + "0.7.59", + "0.7.60", + "0.7.61", + "0.7.62", + "0.7.63", + "0.7.64", + "0.7.65", + "0.7.66", + "0.7.67", + "0.7.68", + "0.7.69", + "0.8.0", + "0.8.1", + "0.8.2", + "0.8.3", + "0.8.4", + "0.8.5", + "0.8.6", + "0.8.7", + "0.8.8", + "0.8.9", + "0.8.10", + "0.8.11", + "0.8.12", + "0.8.13", + "0.8.14", + "0.8.15", + "0.8.16", + "0.8.17", + "0.8.18", + "0.8.19", + "0.8.20", + "0.8.21", + "0.8.22", + "0.8.23", + "0.8.24", + "0.8.25", + "0.8.26", + "0.8.27", + "0.8.28", + "0.8.29", + "0.8.30", + "0.8.31", + "0.8.32", + "0.8.33", + "0.8.34", + "0.8.35", + "0.8.36", + "0.8.37", + "0.8.38", + "0.8.39", + "0.8.40", + "0.8.41", + "0.8.42", + "0.8.43", + "0.8.44", + "0.8.45", + "0.8.46", + "0.8.47", + "0.8.48", + "0.8.49", + "0.8.50", + "0.8.51", + "0.8.52", + "0.8.53", + "0.8.54", + "0.8.55", + "0.9.0", + "0.9.1", + "0.9.2", + "0.9.3", + "0.9.4", + "0.9.5", + "0.9.6", + "0.9.7", + "1.0.0", + "1.0.1", + "1.0.2", + "1.0.3", + "1.0.4", + "1.0.5", + "1.0.6", + "1.0.7", + "1.0.8", + "1.0.9", + "1.0.10", + "1.0.11", + "1.0.12", + "1.0.13", + "1.0.14", + "1.0.15", + "1.1.0", + "1.1.1", + "1.1.2", + "1.1.3", + "1.1.4", + "1.1.5", + "1.1.6", + "1.1.7", + "1.1.8", + "1.1.9", + "1.1.10", + "1.1.11", + "1.1.12", + "1.1.13", + "1.1.14", + "1.1.15", + "1.1.16", + "1.1.17", + "1.1.18", + "1.1.19", + "1.2.0", + "1.2.2", + "1.2.3", + "1.2.4", + "1.2.5", + "1.2.6", + "1.2.7", + "1.2.8", + "1.2.9", + "1.3.0", + "1.3.1", + "1.3.2", + "1.3.3", + "1.3.4", + "1.3.5", + "1.3.6", + "1.3.7", + "1.3.8", + "1.3.9", + "1.3.10", + "1.3.11", + "1.3.12", + "1.3.13", + "1.3.14", + "1.3.15", + "1.3.16", + "1.4.0", + "1.4.1", + "1.4.2", + "1.4.3", + "1.4.4", + "1.4.5", + "1.4.6", + "1.4.7", + "1.5.0", + "1.5.1", + "1.5.2", + "1.5.3", + "1.5.4", + "1.5.5", + "1.5.6", + "1.5.7", + "1.5.8", + "1.5.9", + "1.5.10", + "1.5.11", + "1.5.12", + "1.5.13", + "1.6.0", + "1.6.1", + "1.6.2", + "1.6.3", + "1.7.0", + "1.7.1", + "1.7.2", + "1.7.3", + "1.7.4", + "1.7.5", + "1.7.6", + "1.7.7", + "1.7.8", + "1.7.9", + "1.7.10", + "1.7.11", + "1.7.12", + "1.8.0", + "1.8.1", + "1.9.0", + "1.9.1", + "1.9.2", + "1.9.3", + "1.9.4", + "1.9.5", + "1.9.6", + "1.9.7", + "1.9.8", + "1.9.9", + "1.9.10", + "1.9.11", + "1.9.12", + "1.9.13", + "1.9.14", + "1.9.15", + "1.10.0", + "1.10.1", + "1.10.2", + "1.10.3", + "1.11.0", + "1.11.1", + "1.11.2", + "1.11.3", + "1.11.4", + "1.11.5", + "1.11.6", + "1.11.7", + "1.11.8", + "1.11.9", + "1.11.10", + "1.11.11", + "1.11.12", + "1.11.13", + "1.12.0", + "1.12.1", + "1.12.2", + "1.13.0", + "1.13.1", + "1.13.2", + "1.13.3", + "1.13.4", + "1.13.5", + "1.13.6", + "1.13.7", + "1.13.8", + "1.13.9", + "1.13.10", + "1.13.11", + "1.13.12", + "1.14.0", + "1.14.1", + "1.14.2", + "1.15.0", + "1.15.1", + "1.15.2", + "1.15.3", + "1.15.4", + "1.15.5", + "1.15.6", + "1.15.7", + "1.15.8", + "1.15.9", + "1.15.10", + "1.15.11", + "1.15.12", + "1.16.0", + "1.16.1", + "1.17.0", + "1.17.1", + "1.17.2", + "1.17.3", + "1.17.4", + "1.17.5", + "1.17.6", + "1.17.7", + "1.17.8", + "1.17.9", + "1.17.10", + "1.18.0", + "1.19.0", + "1.19.1", + "1.19.2", + "1.19.3", + "1.19.4", + "1.19.5", + "1.19.6", + "1.19.7", + "1.19.8", + "1.19.9", + "1.19.10", + "1.20.0", + "1.20.1", + "1.20.2", + "1.21.0", + "1.21.1", + "1.21.2", + "1.21.3", + "1.21.4", + "1.21.5", + "1.21.6" ] \ No newline at end of file diff --git a/vulnerabilities/tests/test_data/package_manager_data/composer.json b/vulnerabilities/tests/test_data/package_manager_data/composer.json deleted file mode 100644 index ada11da0b..000000000 --- a/vulnerabilities/tests/test_data/package_manager_data/composer.json +++ /dev/null @@ -1,8179 +0,0 @@ -{ - "packages": { - "typo3/cms-core": { - "10.2.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "10.2.x-dev", - "version_normalized": "10.2.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "947419f147aaa58303239122522a50465f687c67" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/947419f147aaa58303239122522a50465f687c67", - "reference": "947419f147aaa58303239122522a50465f687c67", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-11T15:52:04+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~6.1.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3463039 - }, - "10.4.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "10.4.x-dev", - "version_normalized": "10.4.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "185c6f94c5512dd17435986aa63e070fdb789205" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/185c6f94c5512dd17435986aa63e070fdb789205", - "reference": "185c6f94c5512dd17435986aa63e070fdb789205", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-06-09T09:23:11+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3892285 - }, - "8.7.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "8.7.x-dev", - "version_normalized": "8.7.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "7011005023bde897da11b41cd07e0e91d125554f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/7011005023bde897da11b41cd07e0e91d125554f", - "reference": "7011005023bde897da11b41cd07e0e91d125554f", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-03-31T08:48:25+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/cms-cli": "^1.0.2", - "helhum/typo3-composer-setup": "^0.5", - "doctrine/lexer": "^1.0", - "algo26-matthias/idna-convert": "^1.1.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.5.5", - "php": "^7.0", - "symfony/http-foundation": "^3.4.28 || ^4.2.9" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-zip": "", - "ext-mysqli": "", - "ext-openssl": "" - }, - "conflict": { - "typo3/cms": "*", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5", - "guzzlehttp/guzzle": "6.5.0" - }, - "uid": 1695263 - }, - "9.2.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "9.2.x-dev", - "version_normalized": "9.2.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "1eaffde228376d130272926286e96ad430efcd78" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/1eaffde228376d130272926286e96ad430efcd78", - "reference": "1eaffde228376d130272926286e96ad430efcd78", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-11T10:36:21+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.6", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^3.1", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "~3.0.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "~9.0.1", - "typo3/testing-framework": "^3.2" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "uid": 2214987 - }, - "9.3.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "9.3.x-dev", - "version_normalized": "9.3.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a37c4c86d5af3df446dbd8d41de48c04e1cbcdfb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a37c4c86d5af3df446dbd8d41de48c04e1cbcdfb", - "reference": "a37c4c86d5af3df446dbd8d41de48c04e1cbcdfb", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-11T10:36:09+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4", - "doctrine/dbal": "~2.7.0", - "doctrine/lexer": "^1.0" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "^9.1", - "typo3/testing-framework": "^3.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "uid": 2325977 - }, - "9.5.x-dev": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "9.5.x-dev", - "version_normalized": "9.5.9999999.9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "71b010af5c02d623a2754e0ec13aeb357f18ba37" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/71b010af5c02d623a2754e0ec13aeb357f18ba37", - "reference": "71b010af5c02d623a2754e0ec13aeb357f18ba37", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-06-09T09:15:43+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "psr/container": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "symfony/polyfill-intl-idn": "^1.10", - "typo3/phar-stream-wrapper": "^3.1.3", - "doctrine/dbal": "^2.10", - "doctrine/annotations": "^1.7", - "typo3fluid/fluid": "^2.6.8", - "symfony/routing": "^4.3", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "psr/http-message": "^1.0", - "psr/log": "^1.0", - "nikic/php-parser": "^4.3.0" - }, - "require-dev": { - "fiunchinho/phpunit-randomizer": "^4.0", - "typo3/cms-styleguide": "~9.2.2", - "codeception/codeception": "^2.5.4", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/testing-framework": "^4.14.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "typo3fluid/fluid": "2.6.4 || 2.6.5", - "guzzlehttp/guzzle": "6.5.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2638889 - }, - "dev-master": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "dev-master", - "version_normalized": "9999999-dev", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "d94f2004eb2158cacb4c2e5acb21d73ffdf49858" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/d94f2004eb2158cacb4c2e5acb21d73ffdf49858", - "reference": "d94f2004eb2158cacb4c2e5acb21d73ffdf49858", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-06-09T07:29:08+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "11.0.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "symfony/polyfill-mbstring": "^1.2", - "typo3/class-alias-loader": "^1.0", - "cogpowered/finediff": "~0.3.1", - "guzzlehttp/guzzle": "^6.3.0", - "symfony/polyfill-intl-icu": "^1.6", - "php": "^7.2", - "psr/http-server-middleware": "^1.0", - "typo3/cms-cli": "^2.0", - "psr/container": "^1.0", - "doctrine/lexer": "^1.0", - "ext-pdo": "*", - "psr/http-server-handler": "^1.0", - "doctrine/instantiator": "^1.1", - "symfony/polyfill-intl-idn": "^1.10", - "psr/event-dispatcher": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-client": "^1.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "doctrine/dbal": "^2.10", - "psr/http-message": "^1.0", - "psr/log": "^1.0", - "nikic/php-parser": "^4.3", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "doctrine/annotations": "^1.7", - "symfony/http-foundation": "^4.4 || ^5.0", - "egulias/email-validator": "^2.1", - "typo3fluid/fluid": "^2.6.8 || ^3", - "typo3/cms-composer-installers": "^2.0 || ^3.0" - }, - "require-dev": { - "typo3/cms-styleguide": "~10.0.2", - "phpspec/prophecy": "^1.7.5", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpstan/phpstan": "^0.12.13", - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "typo3/testing-framework": "^6.3.2" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-zip": "", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"" - }, - "conflict": { - "typo3/cms": "*", - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0", - "psr/http-client-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-sv": "*", - "typo3/cms-saltedpasswords": "*" - }, - "uid": 1695262 - }, - "v10.0.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.0.0", - "version_normalized": "10.0.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a5f643b16d85202d716e313e9558a5005c3f7137" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a5f643b16d85202d716e313e9558a5005c3f7137", - "reference": "a5f643b16d85202d716e313e9558a5005c3f7137", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-07-23T07:06:03+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.0.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.9", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "symfony/config": "^4.1", - "symfony/console": "^4.1", - "symfony/dependency-injection": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/mailer": "^4.3", - "symfony/mime": "^4.3", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.12.2", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~5.0.11" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.36 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3117731 - }, - "v10.1.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.1.0", - "version_normalized": "10.1.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "610a424b654b538912388816dec249383cba9406" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/610a424b654b538912388816dec249383cba9406", - "reference": "610a424b654b538912388816dec249383cba9406", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-10-01T08:18:18+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.1.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.9", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "symfony/config": "^4.1", - "symfony/console": "^4.1", - "symfony/dependency-injection": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.3", - "symfony/mailer": "^4.3", - "symfony/mime": "^4.3", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.4" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.15.2", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~5.0.14" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.36 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3269885 - }, - "v10.2.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.2.0", - "version_normalized": "10.2.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "e0f2bbd3c7e2493c77aec94f6fc352236fc7e4d1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/e0f2bbd3c7e2493c77aec94f6fc352236fc7e4d1", - "reference": "e0f2bbd3c7e2493c77aec94f6fc352236fc7e4d1", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-03T11:16:26+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.2.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~6.1.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3428517 - }, - "v10.2.1": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.2.1", - "version_normalized": "10.2.1.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "bde408e849e26ef871b0d1ce3d9800659c0f8b62" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/bde408e849e26ef871b0d1ce3d9800659c0f8b62", - "reference": "bde408e849e26ef871b0d1ce3d9800659c0f8b62", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-17T11:00:00+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.2.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~6.1.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3464031 - }, - "v10.2.2": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.2.2", - "version_normalized": "10.2.2.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "7a3ec251d13d0d5649183ae10d64f020f3a59ae4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/7a3ec251d13d0d5649183ae10d64f020f3a59ae4", - "reference": "7a3ec251d13d0d5649183ae10d64f020f3a59ae4", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-17T11:36:14+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.2.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~6.1.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3464102 - }, - "v10.3.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.3.0", - "version_normalized": "10.3.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "b56d8d595a457080bed7dc1354548fdc03eb66c6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/b56d8d595a457080bed7dc1354548fdc03eb66c6", - "reference": "b56d8d595a457080bed7dc1354548fdc03eb66c6", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-25T12:50:09+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.3.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4 || ^3", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "~6.1.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": ">= 6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3640743 - }, - "v10.4.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.4.0", - "version_normalized": "10.4.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "c7b5957461a4813401c4d497ee9b0d1f275775d3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/c7b5957461a4813401c4d497ee9b0d1f275775d3", - "reference": "c7b5957461a4813401c4d497ee9b0d1f275775d3", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-04-21T08:00:15+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.3" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3801229 - }, - "v10.4.1": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.4.1", - "version_normalized": "10.4.1.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "51f0192a6d286301b5777f3aa58c0721acdc1a48" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/51f0192a6d286301b5777f3aa58c0721acdc1a48", - "reference": "51f0192a6d286301b5777f3aa58c0721acdc1a48", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-04-28T09:07:54+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.3" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3819719 - }, - "v10.4.2": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.4.2", - "version_normalized": "10.4.2.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "1584c47e1b3686fed1bc1b59a374d6104457ea2f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/1584c47e1b3686fed1bc1b59a374d6104457ea2f", - "reference": "1584c47e1b3686fed1bc1b59a374d6104457ea2f", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-05-12T10:41:40+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3858902 - }, - "v10.4.3": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.4.3", - "version_normalized": "10.4.3.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "439dcaf7699149e9206afcbe813de911071d4575" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/439dcaf7699149e9206afcbe813de911071d4575", - "reference": "439dcaf7699149e9206afcbe813de911071d4575", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-05-19T13:16:31+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3877663 - }, - "v10.4.4": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v10.4.4", - "version_normalized": "10.4.4.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "05880a17298fc781b20a8301352aaca8f689d43d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/05880a17298fc781b20a8301352aaca8f689d43d", - "reference": "05880a17298fc781b20a8301352aaca8f689d43d", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-06-09T08:56:30+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "10.4.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Core\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "egulias/email-validator": "^2.1", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3", - "psr/container": "^1.0", - "psr/event-dispatcher": "^1.0", - "psr/http-client": "^1.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/console": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/expression-language": "^4.4 || ^5.0", - "symfony/finder": "^4.4 || ^5.0", - "symfony/http-foundation": "^4.4 || ^5.0", - "symfony/mailer": "^4.4 || ^5.0", - "symfony/mime": "^4.4 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.4 || ^5.0", - "symfony/yaml": "^4.4 || ^5.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8 || ^3" - }, - "require-dev": { - "codeception/codeception": "^4.0", - "codeception/module-asserts": "^1.1", - "codeception/module-filesystem": "^1.0", - "codeception/module-webdriver": "^1.0.1", - "friendsofphp/php-cs-fixer": "^2.16.1", - "phpspec/prophecy": "^1.7.5", - "phpstan/phpstan": "^0.12.13", - "typo3/cms-styleguide": "~10.0.2", - "typo3/testing-framework": "^6.2.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "hoa/core": "*", - "guzzlehttp/guzzle": "6.5.0", - "typo3/cms": "*" - }, - "provide": { - "psr/http-client-implementation": "1.0", - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3935089 - }, - "v8.7.10": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.10", - "version_normalized": "8.7.10.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "68695e100a0be3b97c9d7b6fd246642e9e96eea6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/68695e100a0be3b97c9d7b6fd246642e9e96eea6", - "reference": "68695e100a0be3b97c9d7b6fd246642e9e96eea6", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-02-06T10:46:02+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0.2", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "helhum/typo3-composer-setup": "^0.5" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-openssl": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1895070 - }, - "v8.7.11": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.11", - "version_normalized": "8.7.11.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "fad6bf40b818513342318c93c5983b364d328459" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/fad6bf40b818513342318c93c5983b364d328459", - "reference": "fad6bf40b818513342318c93c5983b364d328459", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-03-13T12:44:45+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0.2", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "helhum/typo3-composer-setup": "^0.5" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-openssl": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1986324 - }, - "v8.7.12": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.12", - "version_normalized": "8.7.12.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "ceb227021957adf46192aacccd89267582c349dd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/ceb227021957adf46192aacccd89267582c349dd", - "reference": "ceb227021957adf46192aacccd89267582c349dd", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-03-22T11:35:42+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0.2", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "helhum/typo3-composer-setup": "^0.5" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-openssl": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2019875 - }, - "v8.7.13": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.13", - "version_normalized": "8.7.13.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "53bcce552e30d374414757fa6e119db5a4836187" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/53bcce552e30d374414757fa6e119db5a4836187", - "reference": "53bcce552e30d374414757fa6e119db5a4836187", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-04-17T08:15:46+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2104370 - }, - "v8.7.14": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.14", - "version_normalized": "8.7.14.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "604c139c5514559bbc60d5a582c78777991a373f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/604c139c5514559bbc60d5a582c78777991a373f", - "reference": "604c139c5514559bbc60d5a582c78777991a373f", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-05-22T13:51:09+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2217170 - }, - "v8.7.15": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.15", - "version_normalized": "8.7.15.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a0145c0ac0d942cee4f4bdc74558acc4df01acfe" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a0145c0ac0d942cee4f4bdc74558acc4df01acfe", - "reference": "a0145c0ac0d942cee4f4bdc74558acc4df01acfe", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-05-23T11:31:21+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2218907 - }, - "v8.7.16": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.16", - "version_normalized": "8.7.16.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "95aaa2633fcf3eee695a0df4286a92c3b3a6e331" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/95aaa2633fcf3eee695a0df4286a92c3b3a6e331", - "reference": "95aaa2633fcf3eee695a0df4286a92c3b3a6e331", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-06-11T17:18:14+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2255078 - }, - "v8.7.17": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.17", - "version_normalized": "8.7.17.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "bec31f84e3d8cba731a44e6ce653cdea6d8a3432" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/bec31f84e3d8cba731a44e6ce653cdea6d8a3432", - "reference": "bec31f84e3d8cba731a44e6ce653cdea6d8a3432", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-07-12T11:29:19+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2327401 - }, - "v8.7.18": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.18", - "version_normalized": "8.7.18.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "768092f662e463085a7177959fe0d2e154cae1d7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/768092f662e463085a7177959fe0d2e154cae1d7", - "reference": "768092f662e463085a7177959fe0d2e154cae1d7", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-07-31T08:15:29+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2370885 - }, - "v8.7.19": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.19", - "version_normalized": "8.7.19.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "8b70531974f35846f035db55d54bbad421b3daa5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/8b70531974f35846f035db55d54bbad421b3daa5", - "reference": "8b70531974f35846f035db55d54bbad421b3daa5", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-08-21T07:23:21+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2411446 - }, - "v8.7.20": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.20", - "version_normalized": "8.7.20.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "3a40fcf47298e76c70c6d871ce5e863c9a63867b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/3a40fcf47298e76c70c6d871ce5e863c9a63867b", - "reference": "3a40fcf47298e76c70c6d871ce5e863c9a63867b", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-10-30T10:39:51+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.0.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2549850 - }, - "v8.7.21": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.21", - "version_normalized": "8.7.21.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "2a1f0cff0525b7f56564e79aceb98bb279f06c65" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/2a1f0cff0525b7f56564e79aceb98bb279f06c65", - "reference": "2a1f0cff0525b7f56564e79aceb98bb279f06c65", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-12-11T12:40:12+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.0.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2632266 - }, - "v8.7.22": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.22", - "version_normalized": "8.7.22.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "0038f2a7b71f69246d188fd6458e4dc235cca1b7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/0038f2a7b71f69246d188fd6458e4dc235cca1b7", - "reference": "0038f2a7b71f69246d188fd6458e4dc235cca1b7", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-12-14T07:43:50+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.0.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2638788 - }, - "v8.7.23": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.23", - "version_normalized": "8.7.23.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "40994a542be0d1da4c2c180541e04091ad38f17d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/40994a542be0d1da4c2c180541e04091ad38f17d", - "reference": "40994a542be0d1da4c2c180541e04091ad38f17d", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-01-22T10:10:02+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.0.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2706618 - }, - "v8.7.24": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.24", - "version_normalized": "8.7.24.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "cf2edb1222539016c6073bd6de46b146916150b4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/cf2edb1222539016c6073bd6de46b146916150b4", - "reference": "cf2edb1222539016c6073bd6de46b146916150b4", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-01-22T15:25:55+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "mso/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.0.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2707409 - }, - "v8.7.25": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.25", - "version_normalized": "8.7.25.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "df7370142b096d72738ec9ffc4601735651939f1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/df7370142b096d72738ec9ffc4601735651939f1", - "reference": "df7370142b096d72738ec9ffc4601735651939f1", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-05-07T10:05:55+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.1", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2945274 - }, - "v8.7.26": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.26", - "version_normalized": "8.7.26.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "8f356375551ebb66621fcd96d11fb3415d4c2a7b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/8f356375551ebb66621fcd96d11fb3415d4c2a7b", - "reference": "8f356375551ebb66621fcd96d11fb3415d4c2a7b", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-05-15T11:24:12+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2963226 - }, - "v8.7.27": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.27", - "version_normalized": "8.7.27.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "29728d43cee7f71300effa037d2bfda00f94fa8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/29728d43cee7f71300effa037d2bfda00f94fa8c", - "reference": "29728d43cee7f71300effa037d2bfda00f94fa8c", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-06-25T08:24:21+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 3058316 - }, - "v8.7.28": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.28", - "version_normalized": "8.7.28.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "06bee894abe35412db5214c371b206a6e549d112" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/06bee894abe35412db5214c371b206a6e549d112", - "reference": "06bee894abe35412db5214c371b206a6e549d112", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-10-15T07:21:52+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "uid": 3301346 - }, - "v8.7.29": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.29", - "version_normalized": "8.7.29.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "3b8d91b7bbdae375b1e8910033af5a55300567ad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/3b8d91b7bbdae375b1e8910033af5a55300567ad", - "reference": "3b8d91b7bbdae375b1e8910033af5a55300567ad", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-10-30T21:00:45+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0 <7.4", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "uid": 3341187 - }, - "v8.7.30": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.30", - "version_normalized": "8.7.30.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "55e9928167b7b855cca939823d065310c9267526" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/55e9928167b7b855cca939823d065310c9267526", - "reference": "55e9928167b7b855cca939823d065310c9267526", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-17T10:49:17+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": ">= 6.5.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "uid": 3463848 - }, - "v8.7.31": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.31", - "version_normalized": "8.7.31.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "b885452d54bb2c5db7df8c580c0b281bad3d074f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/b885452d54bb2c5db7df8c580c0b281bad3d074f", - "reference": "b885452d54bb2c5db7df8c580c0b281bad3d074f", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-17T23:29:16+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/http-foundation": "^3.4 || ^4.2", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": ">= 6.5.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "uid": 3620755 - }, - "v8.7.32": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.32", - "version_normalized": "8.7.32.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "69f3db31901d6e301c53300010eb428519649ec3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/69f3db31901d6e301c53300010eb428519649ec3", - "reference": "69f3db31901d6e301c53300010eb428519649ec3", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-03-31T08:33:03+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": "^7.0", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/dbal": "~2.5.4", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "helhum/typo3-composer-setup": "^0.5", - "algo26-matthias/idna-convert": "^1.1.0", - "psr/http-message": "~1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/http-foundation": "^3.4.28 || ^4.2.9", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^1.0.2", - "typo3/cms-composer-installers": "^1.2.8", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.5.5" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "uid": 3741351 - }, - "v8.7.7": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.7", - "version_normalized": "8.7.7.0", - "license": [ - "GPL-2.0+" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "b23d71a6d75e01039c27e556a04cd5408c384362" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/b23d71a6d75e01039c27e556a04cd5408c384362", - "reference": "b23d71a6d75e01039c27e556a04cd5408c384362", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2017-09-19T14:22:53+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-TYPO3_8-7": "8.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": ">=7.0.0 <=7.1.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0", - "symfony/finder": "^2.7 || ^3.0", - "symfony/yaml": "^2.7 || ^3.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-soap": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1695260 - }, - "v8.7.8": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.8", - "version_normalized": "8.7.8.0", - "license": [ - "GPL-2.0+" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "82636bce83829b56d726608fc859d6cbd65975e8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/82636bce83829b56d726608fc859d6cbd65975e8", - "reference": "82636bce83829b56d726608fc859d6cbd65975e8", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2017-10-10T16:08:44+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-TYPO3_8-7": "8.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": ">=7.0.0 <=7.1.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0", - "symfony/finder": "^2.7 || ^3.0", - "symfony/yaml": "^2.7 || ^3.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-soap": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1695261 - }, - "v8.7.9": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v8.7.9", - "version_normalized": "8.7.9.0", - "license": [ - "GPL-2.0+" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "e260f0631d774da14eb00c546120f348eb09d9cb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/e260f0631d774da14eb00c546120f348eb09d9cb", - "reference": "e260f0631d774da14eb00c546120f348eb09d9cb", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2017-12-12T16:09:50+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-TYPO3_8-7": "8.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - } - }, - "require": { - "php": ">=7.0.0 <=7.2.99", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0", - "symfony/finder": "^2.7 || ^3.0", - "symfony/yaml": "^2.7 || ^3.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "typo3/cms-cli": "^1.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^1.2.8", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-soap": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1782574 - }, - "v9.0.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.0.0", - "version_normalized": "9.0.0.0", - "license": [ - "GPL-2.0+" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "e520d5a50e635ed6c83cc7f78fdf8c117d2e5f4f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/e520d5a50e635ed6c83cc7f78fdf8c117d2e5f4f", - "reference": "e520d5a50e635ed6c83cc7f78fdf8c117d2e5f4f", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2017-12-12T16:48:22+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.0.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "doctrine/annotations": "^1.3", - "typo3/cms-cli": "^1.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^2.0", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "typo3fluid/fluid": "^2.4", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "nikic/php-parser": "^3.1", - "symfony/polyfill-intl-icu": "^1.6" - }, - "require-dev": { - "typo3/testing-framework": "2.0.1", - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "typo3/cms-styleguide": "~9.0.0", - "friendsofphp/php-cs-fixer": "^2.0", - "fiunchinho/phpunit-randomizer": "~3.0.0" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-openssl": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1782645 - }, - "v9.1.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.1.0", - "version_normalized": "9.1.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "2e9c051d79e1a3804d60441be47c1045363362bd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/2e9c051d79e1a3804d60441be47c1045363362bd", - "reference": "2e9c051d79e1a3804d60441be47c1045363362bd", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-01-30T15:31:12+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.1.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-mbstring": "^1.2", - "doctrine/instantiator": "~1.0.4", - "doctrine/annotations": "^1.3", - "typo3/cms-cli": "^1.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-composer-installers": "^2.0", - "psr/http-message": "~1.0", - "cogpowered/finediff": "~0.3.1", - "mso/idna-convert": "^1.1.0", - "typo3fluid/fluid": "^2.4", - "guzzlehttp/guzzle": "^6.3.0", - "doctrine/dbal": "~2.5.4", - "nikic/php-parser": "^3.1", - "symfony/polyfill-intl-icu": "^1.6" - }, - "require-dev": { - "typo3/testing-framework": "2.0.1", - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "typo3/cms-styleguide": "~9.0.0", - "friendsofphp/php-cs-fixer": "^2.0", - "fiunchinho/phpunit-randomizer": "~3.0.0" - }, - "suggest": { - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-openssl": "", - "ext-zip": "", - "ext-mysqli": "" - }, - "conflict": { - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 1879921 - }, - "v9.2.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.2.0", - "version_normalized": "9.2.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "19476f389b36f26d3e41ad79c925afd7db244c8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/19476f389b36f26d3e41ad79c925afd7db244c8c", - "reference": "19476f389b36f26d3e41ad79c925afd7db244c8c", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-04-09T20:51:35+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.2.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.6", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^3.1", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "~3.0.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "~9.0.1", - "typo3/testing-framework": "^3.2" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2082719 - }, - "v9.2.1": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.2.1", - "version_normalized": "9.2.1.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "6be5a7f91d2caa07276d13ba2f66ce9000dfaa61" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/6be5a7f91d2caa07276d13ba2f66ce9000dfaa61", - "reference": "6be5a7f91d2caa07276d13ba2f66ce9000dfaa61", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-05-22T13:47:11+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.2.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.6", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^3.1", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "~3.0.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "~9.0.1", - "typo3/testing-framework": "^3.2" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2217323 - }, - "v9.3.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.3.0", - "version_normalized": "9.3.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a9a625face9d5177d8d47763978a34beee6a33e7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a9a625face9d5177d8d47763978a34beee6a33e7", - "reference": "a9a625face9d5177d8d47763978a34beee6a33e7", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-06-11T17:14:33+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.3.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.7", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "^9.1", - "typo3/testing-framework": "^3.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2255165 - }, - "v9.3.1": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.3.1", - "version_normalized": "9.3.1.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "4c8202d5b462dc8a55fd541abcacb8f778b0f814" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/4c8202d5b462dc8a55fd541abcacb8f778b0f814", - "reference": "4c8202d5b462dc8a55fd541abcacb8f778b0f814", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-07-12T11:33:12+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.3.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.7", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "^9.1", - "typo3/testing-framework": "^3.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2327493 - }, - "v9.3.2": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.3.2", - "version_normalized": "9.3.2.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "dcc2a2d3b34f103411d57656b10c872d1a816af3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/dcc2a2d3b34f103411d57656b10c872d1a816af3", - "reference": "dcc2a2d3b34f103411d57656b10c872d1a816af3", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-07-12T15:51:49+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.3.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.7", - "doctrine/instantiator": "~1.0.4", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "^9.1", - "typo3/testing-framework": "^3.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2327945 - }, - "v9.3.3": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.3.3", - "version_normalized": "9.3.3.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "9d08ad8c8f43021f37d7395634882fd7a9e82f80" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/9d08ad8c8f43021f37d7395634882fd7a9e82f80", - "reference": "9d08ad8c8f43021f37d7395634882fd7a9e82f80", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-07-31T08:20:17+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.3.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.0", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^2.7 || ^3.0 || ^4.0", - "symfony/finder": "^2.7 || ^3.0 || ^4.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/yaml": "^2.7 || ^3.0 || ^4.0", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3fluid/fluid": "^2.4" - }, - "require-dev": { - "codeception/codeception": "^2.3", - "enm1989/chromedriver": "~2.30", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.0", - "typo3/cms-styleguide": "^9.1", - "typo3/testing-framework": "^3.8" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*" - }, - "uid": 2370985 - }, - "v9.4.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.4.0", - "version_normalized": "9.4.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "ef5cadda8fc8ad9c8db7c9a93960b8e0944ac431" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/ef5cadda8fc8ad9c8db7c9a93960b8e0944ac431", - "reference": "ef5cadda8fc8ad9c8db7c9a93960b8e0944ac431", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-09-04T12:08:20+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.4.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^1.0.1", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.0", - "typo3/testing-framework": "~4.8.2" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2442325 - }, - "v9.5.0": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.0", - "version_normalized": "9.5.0.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "65cc2f636c32a2884b1c01b45e26233eb31a0fc0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/65cc2f636c32a2884b1c01b45e26233eb31a0fc0", - "reference": "65cc2f636c32a2884b1c01b45e26233eb31a0fc0", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-10-02T08:10:33+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.5.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.0", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.1", - "typo3/testing-framework": "~4.9.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2496229 - }, - "v9.5.1": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.1", - "version_normalized": "9.5.1.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "6c6b889644051663f1f892701eb52ae2295fa5da" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/6c6b889644051663f1f892701eb52ae2295fa5da", - "reference": "6c6b889644051663f1f892701eb52ae2295fa5da", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-10-30T10:45:30+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.5.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "~1.0.4", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.1", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.1", - "typo3/testing-framework": "~4.10.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2549933 - }, - "v9.5.10": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.10", - "version_normalized": "9.5.10.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "c35002293c084e625bdd124eef4885e30ade235d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/c35002293c084e625bdd124eef4885e30ade235d", - "reference": "c35002293c084e625bdd124eef4885e30ade235d", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-10-15T07:29:55+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.8.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.4" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.15.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3301422 - }, - "v9.5.11": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.11", - "version_normalized": "9.5.11.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "eff039b6fb8e7978a215f5341538bcf033762717" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/eff039b6fb8e7978a215f5341538bcf033762717", - "reference": "eff039b6fb8e7978a215f5341538bcf033762717", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-10-30T20:46:49+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.8.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.15.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3341136 - }, - "v9.5.12": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.12", - "version_normalized": "9.5.12.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "b42cd787823ce5844136301a06a3056820665593" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/b42cd787823ce5844136301a06a3056820665593", - "reference": "b42cd787823ce5844136301a06a3056820665593", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-17T10:53:45+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": ">= 6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3463966 - }, - "v9.5.13": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.13", - "version_normalized": "9.5.13.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "ba5f270e9ecb43040ea83a2b70d3086fab1f0fcc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/ba5f270e9ecb43040ea83a2b70d3086fab1f0fcc", - "reference": "ba5f270e9ecb43040ea83a2b70d3086fab1f0fcc", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-12-17T14:17:37+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": ">= 6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3464576 - }, - "v9.5.14": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.14", - "version_normalized": "9.5.14.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a0e8eb1ca657cbb30c189f2930cfbcddae4a0b0d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a0e8eb1ca657cbb30c189f2930cfbcddae4a0b0d", - "reference": "a0e8eb1ca657cbb30c189f2930cfbcddae4a0b0d", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-02-17T23:37:02+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": ">= 6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3620811 - }, - "v9.5.15": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.15", - "version_normalized": "9.5.15.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "1b955cdd084daf2596162c27d543891d6271b381" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/1b955cdd084daf2596162c27d543891d6271b381", - "reference": "1b955cdd084daf2596162c27d543891d6271b381", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-03-31T08:40:25+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3741352 - }, - "v9.5.16": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.16", - "version_normalized": "9.5.16.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "1c345f39fa9890a2df8078368082210ab57a6cef" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/1c345f39fa9890a2df8078368082210ab57a6cef", - "reference": "1c345f39fa9890a2df8078368082210ab57a6cef", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-04-28T09:22:14+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.3" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3819857 - }, - "v9.5.17": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.17", - "version_normalized": "9.5.17.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "4ecdf459027eb96c6423f7cb8dfd9616027b2b18" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/4ecdf459027eb96c6423f7cb8dfd9616027b2b18", - "reference": "4ecdf459027eb96c6423f7cb8dfd9616027b2b18", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-05-12T10:36:00+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3858828 - }, - "v9.5.18": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.18", - "version_normalized": "9.5.18.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "96a3fe773ed42a8362bf8e86ab66632015418037" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/96a3fe773ed42a8362bf8e86ab66632015418037", - "reference": "96a3fe773ed42a8362bf8e86ab66632015418037", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-05-19T13:10:50+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3877603 - }, - "v9.5.19": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.19", - "version_normalized": "9.5.19.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "c899b8d2e8a0f6c1ba843ee34df1c14e13b7d787" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/c899b8d2e8a0f6c1ba843ee34df1c14e13b7d787", - "reference": "c899b8d2e8a0f6c1ba843ee34df1c14e13b7d787", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2020-06-09T08:44:34+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.7", - "doctrine/dbal": "^2.10", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.3.0", - "psr/container": "^1.0", - "psr/http-message": "^1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/http-foundation": "^4.2.9 || ^5.0", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.3", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0 || ^3.0", - "typo3/phar-stream-wrapper": "^3.1.3", - "typo3fluid/fluid": "^2.6.8" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.16.1", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "^4.14.4" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint, and for extensions such as \"rsaauth\"", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "guzzlehttp/guzzle": "6.5.0", - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7", - "typo3fluid/fluid": "2.6.4 || 2.6.5" - }, - "replace": { - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3935028 - }, - "v9.5.2": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.2", - "version_normalized": "9.5.2.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "15312c64e2817b25a065851308e58ae19a7cc09c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/15312c64e2817b25a065851308e58ae19a7cc09c", - "reference": "15312c64e2817b25a065851308e58ae19a7cc09c", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-12-11T12:42:55+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.5.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.1", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.11.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2632124 - }, - "v9.5.3": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.3", - "version_normalized": "9.5.3.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "169b3ba93c9ce152fdb0a75085f0dfff576d8ae8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/169b3ba93c9ce152fdb0a75085f0dfff576d8ae8", - "reference": "169b3ba93c9ce152fdb0a75085f0dfff576d8ae8", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2018-12-14T07:28:48+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "branch-alias": { - "dev-master": "9.5.x-dev" - }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.1", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.11.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2638731 - }, - "v9.5.4": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.4", - "version_normalized": "9.5.4.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "a2f35d02818d0bc5eccbce31387bfb8dbb1c6f9c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/a2f35d02818d0bc5eccbce31387bfb8dbb1c6f9c", - "reference": "a2f35d02818d0bc5eccbce31387bfb8dbb1c6f9c", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-01-22T10:12:04+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.7.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.1", - "typo3fluid/fluid": "^2.5.2" - }, - "require-dev": { - "codeception/codeception": "^2.4.5", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.11.1" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2706682 - }, - "v9.5.5": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.5", - "version_normalized": "9.5.5.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "2c53d453a68bc9e88a31c87f59d3eefc0f9c4a12" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/2c53d453a68bc9e88a31c87f59d3eefc0f9c4a12", - "reference": "2c53d453a68bc9e88a31c87f59d3eefc0f9c4a12", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-03-04T20:25:08+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.8.0", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "mso/idna-convert": "^1.1.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.0.1", - "typo3fluid/fluid": "^2.6.0" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2811293 - }, - "v9.5.6": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.6", - "version_normalized": "9.5.6.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "1a0ce1c0d9247c89ea4664f602ac395edcbea86a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/1a0ce1c0d9247c89ea4664f602ac395edcbea86a", - "reference": "1a0ce1c0d9247c89ea4664f602ac395edcbea86a", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-05-07T10:16:30+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.8.0", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.1", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2945495 - }, - "v9.5.7": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.7", - "version_normalized": "9.5.7.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "918ba8f151c5ce3b9df7eb613fd365fdb98c8531" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/918ba8f151c5ce3b9df7eb613fd365fdb98c8531", - "reference": "918ba8f151c5ce3b9df7eb613fd365fdb98c8531", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-05-15T11:41:51+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "~2.8.0", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 2963309 - }, - "v9.5.8": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.8", - "version_normalized": "9.5.8.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "887bc9304473d3c2c9ebd453de4ab01f0dfd59a7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/887bc9304473d3c2c9ebd453de4ab01f0dfd59a7", - "reference": "887bc9304473d3c2c9ebd453de4ab01f0dfd59a7", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-06-25T08:28:51+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.8.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.0", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3058386 - }, - "v9.5.9": { - "name": "typo3/cms-core", - "description": "The core library of TYPO3.", - "keywords": [], - "homepage": "https://typo3.org", - "version": "v9.5.9", - "version_normalized": "9.5.9.0", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "bd1efc03cb11b4a8c8249cc81d09ec87de87b8c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/bd1efc03cb11b4a8c8249cc81d09ec87de87b8c7", - "reference": "bd1efc03cb11b4a8c8249cc81d09ec87de87b8c7", - "shasum": "" - }, - "type": "typo3-cms-framework", - "time": "2019-08-20T09:33:35+00:00", - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Core\\": "Classes/" - }, - "classmap": [ - "Resources/PHP/" - ], - "files": [ - "Resources/PHP/GlobalDebugFunctions.php" - ] - }, - "extra": { - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "core" - }, - "typo3/class-alias-loader": { - "class-alias-maps": [ - "Migrations/Code/ClassAliasMap.php" - ] - } - }, - "require": { - "php": "^7.2", - "ext-pdo": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-session": "*", - "ext-xml": "*", - "algo26-matthias/idna-convert": "^1.1.0", - "cogpowered/finediff": "~0.3.1", - "doctrine/annotations": "^1.3", - "doctrine/dbal": "^2.8.1", - "doctrine/instantiator": "^1.1", - "doctrine/lexer": "^1.0", - "guzzlehttp/guzzle": "^6.3.0", - "nikic/php-parser": "^4.2", - "psr/container": "^1.0", - "psr/http-message": "~1.0", - "psr/http-server-handler": "^1.0", - "psr/http-server-middleware": "^1.0", - "psr/log": "~1.0.0", - "swiftmailer/swiftmailer": "~5.4.5", - "symfony/console": "^4.1", - "symfony/expression-language": "^4.1", - "symfony/finder": "^4.1", - "symfony/polyfill-intl-icu": "^1.6", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.2", - "symfony/routing": "^4.1", - "symfony/yaml": "^4.1", - "typo3/class-alias-loader": "^1.0", - "typo3/cms-cli": "^2.0", - "typo3/cms-composer-installers": "^2.0", - "typo3/phar-stream-wrapper": "^3.1.2", - "typo3fluid/fluid": "^2.6.1" - }, - "require-dev": { - "codeception/codeception": "^2.5.4", - "fiunchinho/phpunit-randomizer": "^4.0", - "friendsofphp/php-cs-fixer": "^2.12.2", - "typo3/cms-styleguide": "~9.2.2", - "typo3/testing-framework": "~4.12.0" - }, - "suggest": { - "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", - "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", - "ext-mysqli": "", - "ext-openssl": "", - "ext-zip": "", - "ext-zlib": "TYPO3 uses zlib for amongst others output compression and un/packing t3x extension files" - }, - "conflict": { - "symfony/cache": "< 2.8.50 >= 2.8.0 || < 3.4.26 >= 3.4.0 || < 4.1.12 >= 4.1.0 || < 4.2.7 >= 4.2.0", - "symfony/finder": "2.7.44 || 2.8.37 || 3.4.7 || 4.0.7", - "typo3/cms": "*", - "symfony/routing": "4.2.7" - }, - "replace": { - "core": "*", - "typo3/cms-lang": "*", - "typo3/cms-saltedpasswords": "*", - "typo3/cms-sv": "*" - }, - "uid": 3173298 - } - } - } -} \ No newline at end of file diff --git a/vulnerabilities/tests/test_data/package_manager_data/gem.json b/vulnerabilities/tests/test_data/package_manager_data/gem.json deleted file mode 100644 index ba49463f1..000000000 --- a/vulnerabilities/tests/test_data/package_manager_data/gem.json +++ /dev/null @@ -1,54 +0,0 @@ -[ - { - "authors": "David Heinemeier Hansson", - "built_at": "2022-03-08T00:00:00.000Z", - "published_at": "2022-03-08T17:50:52.496Z", - "description": "Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration.", - "downloads_count": 295102, - "metadata": { - "changelog_uri": "https://github.com/rails/rails/releases/tag/v7.0.2.3", - "bug_tracker_uri": "https://github.com/rails/rails/issues", - "source_code_uri": "https://github.com/rails/rails/tree/v7.0.2.3", - "mailing_list_uri": "https://discuss.rubyonrails.org/c/rubyonrails-talk", - "documentation_uri": "https://api.rubyonrails.org/v7.0.2.3/", - "rubygems_mfa_required": true - }, - "number": "7.0.2.3", - "summary": "Full-stack web application framework.", - "platform": "ruby", - "rubygems_version": ">= 1.8.11", - "ruby_version": ">= 2.7.0", - "prerelease": false, - "licenses": [ - "MIT" - ], - "requirements": [], - "sha": "ee4e24075c72dec6e02e3fcddec86399c2b4eb0466efe4ccb5f78f96d3daa283" - }, - { - "authors": "David Heinemeier Hansson", - "built_at": "2022-02-11T00:00:00.000Z", - "created_at": "2022-02-11T19:44:19.017Z", - "description": "Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration.", - "downloads_count": 347689, - "metadata": { - "changelog_uri": "https://github.com/rails/rails/releases/tag/v7.0.2.2", - "bug_tracker_uri": "https://github.com/rails/rails/issues", - "source_code_uri": "https://github.com/rails/rails/tree/v7.0.2.2", - "mailing_list_uri": "https://discuss.rubyonrails.org/c/rubyonrails-talk", - "documentation_uri": "https://api.rubyonrails.org/v7.0.2.2/", - "rubygems_mfa_required": true - }, - "number": "7.0.2.2", - "summary": "Full-stack web application framework.", - "platform": "ruby", - "rubygems_version": ">= 1.8.11", - "ruby_version": ">= 2.7.0", - "prerelease": false, - "licenses": [ - "MIT" - ], - "requirements": [], - "sha": "3393e21131e2120a42cf634416033e587b5dfdccdc84d1a2d2c176b847f6f17f" - } -] \ No newline at end of file diff --git a/vulnerabilities/tests/test_data/package_manager_data/maven-metadata.xml b/vulnerabilities/tests/test_data/package_manager_data/maven-metadata.xml deleted file mode 100644 index c1e07f44d..000000000 --- a/vulnerabilities/tests/test_data/package_manager_data/maven-metadata.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - eu.inloop - easygcm - - 1.3.0 - 1.3.0 - - 1.2.2 - 1.2.3 - 1.3.0 - - 20150312152220 - - diff --git a/vulnerabilities/tests/test_data/package_manager_data/nuget-data.json b/vulnerabilities/tests/test_data/package_manager_data/nuget-data.json deleted file mode 100644 index d73cdfddf..000000000 --- a/vulnerabilities/tests/test_data/package_manager_data/nuget-data.json +++ /dev/null @@ -1,626 +0,0 @@ -{ - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json", - "@type": [ - "catalog:CatalogRoot", - "PackageRegistration", - "catalog:Permalink" - ], - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "count": 2, - "items": [ - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json#page/2.1.0/4.1.5-beta1", - "@type": "catalog:CatalogPage", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "count": 64, - "items": [ - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/2.1.0.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.2.1.0.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott, Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/2.1.0/razorengine.2.1.0.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2011-01-22T13:34:08.55+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine", - "version": "2.1.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/2.1.0/razorengine.2.1.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.0.0.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.0.0.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.0/razorengine.3.0.0.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2011-11-24T00:26:02.527+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine v3.0.0beta", - "version": "3.0.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.0/razorengine.3.0.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.0.3.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.0.3.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.3/razorengine.3.0.3.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2011-11-27T13:50:02.063+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine v3.0.3beta", - "version": "3.0.3" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.3/razorengine.3.0.3.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.0.4.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.0.4.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.4/razorengine.3.0.4.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2011-12-12T10:18:33.38+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine v3.0.4beta", - "version": "3.0.4" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.4/razorengine.3.0.4.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.0.5.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.0.5.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.5/razorengine.3.0.5.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2011-12-12T12:00:25.947+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine v3.0.5beta", - "version": "3.0.5" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.5/razorengine.3.0.5.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.0.6.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.0.6.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "description": "A templating engine built upon Microsoft's Razor parsing technology. RazorEngine allows you to use Razor syntax to build robust templates.", - "iconUrl": "", - "id": "RazorEngine", - "language": "en-US", - "licenseExpression": "", - "licenseUrl": "http://razorengine.codeplex.com/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.6/razorengine.3.0.6.nupkg", - "projectUrl": "http://razorengine.codeplex.com/", - "published": "2012-01-02T21:10:43.403+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "razor", - "razorengine", - "templating" - ], - "title": "RazorEngine v3.0.6beta", - "version": "3.0.6" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.0.6/razorengine.3.0.6.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.4.0.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.0.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.0.json#dependencygroup", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.0.json#dependencygroup/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ] - } - ], - "description": "Simple templating using Razor syntax.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.4.0/razorengine.3.4.0.nupkg", - "projectUrl": "", - "published": "2013-10-20T13:32:30.837+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "" - ], - "title": "RazorEngine", - "version": "3.4.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.4.0/razorengine.3.4.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.4.1.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.1.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott,Ben Dornis", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.1.json#dependencygroup", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.4.1.json#dependencygroup/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ] - } - ], - "description": "Simple templating using Razor syntax.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.4.1/razorengine.3.4.1.nupkg", - "projectUrl": "https://github.com/Antaris/RazorEngine/wiki", - "published": "2014-01-17T09:17:43.68+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "" - ], - "title": "RazorEngine", - "version": "3.4.1" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.4.1/razorengine.3.4.1.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.5.0-beta2.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta2.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott, Ben Dornis, Matthias Dittrich", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta2.json#dependencygroup/.netframework4.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta2.json#dependencygroup/.netframework4.0/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[2.0.30506, 2.0.30506]", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.0" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta2.json#dependencygroup/.netframework4.5", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta2.json#dependencygroup/.netframework4.5/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.5" - } - ], - "description": "RazorEngine - A Templating Engine based on the Razor parser.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Antaris/RazorEngine/blob/master/doc/LICENSE.md", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0-beta2/razorengine.3.5.0-beta2.nupkg", - "projectUrl": "https://github.com/Antaris/RazorEngine", - "published": "2015-01-01T14:09:28.71+00:00", - "requireLicenseAcceptance": false, - "summary": "Simple templating using Razor syntax.", - "tags": [ - "C#", - "razor", - "template", - "engine", - "programming" - ], - "title": "RazorEngine", - "version": "3.5.0-beta2" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0-beta2/razorengine.3.5.0-beta2.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.5.0-beta3.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta3.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott, Ben Dornis, Matthias Dittrich", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta3.json#dependencygroup/.netframework4.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta3.json#dependencygroup/.netframework4.0/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[2.0.30506, 2.0.30506]", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.0" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta3.json#dependencygroup/.netframework4.5", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0-beta3.json#dependencygroup/.netframework4.5/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.5" - } - ], - "description": "RazorEngine - A Templating Engine based on the Razor parser.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Antaris/RazorEngine/blob/master/doc/LICENSE.md", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0-beta3/razorengine.3.5.0-beta3.nupkg", - "projectUrl": "https://github.com/Antaris/RazorEngine", - "published": "2015-01-06T17:39:25.147+00:00", - "requireLicenseAcceptance": false, - "summary": "Simple templating using Razor syntax.", - "tags": [ - "C#", - "razor", - "template", - "engine", - "programming" - ], - "title": "RazorEngine", - "version": "3.5.0-beta3" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0-beta3/razorengine.3.5.0-beta3.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.5.0.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott, Ben Dornis, Matthias Dittrich", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0.json#dependencygroup/.netframework4.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0.json#dependencygroup/.netframework4.0/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[2.0.30506, 2.0.30506]", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.0" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0.json#dependencygroup/.netframework4.5", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.0.json#dependencygroup/.netframework4.5/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.5" - } - ], - "description": "RazorEngine - A Templating Engine based on the Razor parser.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Antaris/RazorEngine/blob/master/doc/LICENSE.md", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0/razorengine.3.5.0.nupkg", - "projectUrl": "https://github.com/Antaris/RazorEngine", - "published": "2015-01-14T02:01:58.853+00:00", - "requireLicenseAcceptance": false, - "summary": "Simple templating using Razor syntax.", - "tags": [ - "C#", - "razor", - "template", - "engine", - "programming" - ], - "title": "RazorEngine", - "version": "3.5.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.0/razorengine.3.5.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/razorengine/3.5.1.json", - "@type": "Package", - "commitId": "63ff8119-d8af-49a0-9906-28cba30dd479", - "commitTimeStamp": "2022-03-11T23:18:21.9196828+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.1.json", - "@type": "PackageDetails", - "authors": "Matthew Abbott, Ben Dornis, Matthias Dittrich", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.1.json#dependencygroup/.netframework4.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.1.json#dependencygroup/.netframework4.0/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[2.0.30506, 2.0.30506]", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.0" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.1.json#dependencygroup/.netframework4.5", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2022.03.11.23.17.27/razorengine.3.5.1.json#dependencygroup/.netframework4.5/microsoft.aspnet.razor", - "@type": "PackageDependency", - "id": "Microsoft.AspNet.Razor", - "range": "[3.0.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.aspnet.razor/index.json" - } - ], - "targetFramework": ".NETFramework4.5" - } - ], - "description": "RazorEngine - A Templating Engine based on the Razor parser.", - "iconUrl": "", - "id": "RazorEngine", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Antaris/RazorEngine/blob/master/doc/LICENSE.md", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.1/razorengine.3.5.1.nupkg", - "projectUrl": "https://github.com/Antaris/RazorEngine", - "published": "2015-01-23T01:05:44.447+00:00", - "requireLicenseAcceptance": false, - "summary": "Simple templating using Razor syntax.", - "tags": [ - "C#", - "razor", - "template", - "engine", - "programming" - ], - "title": "RazorEngine", - "version": "3.5.1" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/razorengine/3.5.1/razorengine.3.5.1.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json" - } - ], - "parent": "https://api.nuget.org/v3/registration5-semver1/razorengine/index.json", - "lower": "2.1.0", - "upper": "4.1.5-beta1" - } - ], - "@context": { - "@vocab": "http://schema.nuget.org/schema#", - "catalog": "http://schema.nuget.org/catalog#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "items": { - "@id": "catalog:item", - "@container": "@set" - }, - "commitTimeStamp": { - "@id": "catalog:commitTimeStamp", - "@type": "xsd:dateTime" - }, - "commitId": { - "@id": "catalog:commitId" - }, - "count": { - "@id": "catalog:count" - }, - "parent": { - "@id": "catalog:parent", - "@type": "@id" - }, - "tags": { - "@id": "tag", - "@container": "@set" - }, - "reasons": { - "@container": "@set" - }, - "packageTargetFrameworks": { - "@id": "packageTargetFramework", - "@container": "@set" - }, - "dependencyGroups": { - "@id": "dependencyGroup", - "@container": "@set" - }, - "dependencies": { - "@id": "dependency", - "@container": "@set" - }, - "packageContent": { - "@type": "@id" - }, - "published": { - "@type": "xsd:dateTime" - }, - "registration": { - "@type": "@id" - } - } -} \ No newline at end of file diff --git a/vulnerabilities/tests/test_data/package_manager_data/nuget_index.json b/vulnerabilities/tests/test_data/package_manager_data/nuget_index.json deleted file mode 100644 index 28e56c8b9..000000000 --- a/vulnerabilities/tests/test_data/package_manager_data/nuget_index.json +++ /dev/null @@ -1,1737 +0,0 @@ -{ - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json", - "@type": [ - "catalog:CatalogRoot", - "PackageRegistration", - "catalog:Permalink" - ], - "commitId": "4b2bebc9-f63a-432a-8bcc-f9a277093541", - "commitTimeStamp": "2020-04-21T12:30:33.5740394+00:00", - "count": 1, - "items": [ - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json#page/0.23.0/2.7.0", - "@type": "catalog:CatalogPage", - "commitId": "4b2bebc9-f63a-432a-8bcc-f9a277093541", - "commitTimeStamp": "2020-04-21T12:30:33.5740394+00:00", - "count": 14, - "items": [ - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/0.23.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.32/sustainsys.saml2.0.23.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.32/sustainsys.saml2.0.23.0.json#dependencygroup", - "@type": "PackageDependencyGroup" - } - ], - "description": "SAML2 Protocol library for ASP.NET. Don't reference this directly, use one of the API modules: Sustainsys.Saml2.HttpModule/Mvc/Owin/AspNetCore2.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.23.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.23.0/sustainsys.saml2.0.23.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-01-17T09:32:59.283+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "Sustainsys.Saml2", - "version": "0.23.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.23.0/sustainsys.saml2.0.23.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/0.24.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.32/sustainsys.saml2.0.24.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.32/sustainsys.saml2.0.24.0.json#dependencygroup", - "@type": "PackageDependencyGroup" - } - ], - "description": "SAML2 Protocol library for ASP.NET. Don't reference this directly, use one of the API modules: Sustainsys.Saml2.HttpModule/Mvc/Owin/AspNetCore2.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.24.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.24.0/sustainsys.saml2.0.24.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-03-30T07:25:18.393+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "Sustainsys.Saml2", - "version": "0.24.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/0.24.0/sustainsys.saml2.0.24.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/1.0.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.13.08.20.19/sustainsys.saml2.1.0.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.13.08.20.19/sustainsys.saml2.1.0.0.json#dependencygroup", - "@type": "PackageDependencyGroup" - } - ], - "description": "SAML2 Protocol library for ASP.NET. Don't reference this directly, use one of the API modules: Sustainsys.Saml2.HttpModule/Mvc/Owin/AspNetCore2.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.0/sustainsys.saml2.1.0.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-09-13T08:16:00.42+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "Sustainsys.Saml2", - "version": "1.0.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.0/sustainsys.saml2.1.0.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/1.0.1.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.33.40/sustainsys.saml2.1.0.1.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.33.40/sustainsys.saml2.1.0.1.json#dependencygroup", - "@type": "PackageDependencyGroup" - } - ], - "description": "SAML2 Protocol library for ASP.NET. Don't reference this directly, use one of the API modules: Sustainsys.Saml2.HttpModule/Mvc/Owin/AspNetCore2.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.1/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.1/sustainsys.saml2.1.0.1.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-01-17T15:31:41.857+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "Sustainsys.Saml2", - "version": "1.0.1" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.1/sustainsys.saml2.1.0.1.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/1.0.2.json", - "@type": "Package", - "commitId": "65b0f343-125e-4509-a679-d42e82c15314", - "commitTimeStamp": "2020-04-21T12:27:30.5473966+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.27.06/sustainsys.saml2.1.0.2.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.27.06/sustainsys.saml2.1.0.2.json#dependencygroup", - "@type": "PackageDependencyGroup" - } - ], - "description": "SAML2 Protocol library for ASP.NET. Don't reference this directly, use one of the API modules: Sustainsys.Saml2.HttpModule/Mvc/Owin/AspNetCore2.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.2/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.2/sustainsys.saml2.1.0.2.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-04-21T12:24:53.877+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "Sustainsys.Saml2", - "version": "1.0.2" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/1.0.2/sustainsys.saml2.1.0.2.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.0.0-preview01.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json#dependencygroup/.netframework4.5", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json#dependencygroup/.netframework4.5/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.0-preview2-41113220915, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - } - ], - "targetFramework": ".NETFramework4.5" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json#dependencygroup/.netcoreapp2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json#dependencygroup/.netcoreapp2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.0-preview2-41113220915, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.20.18.48.24/sustainsys.saml2.2.0.0-preview01.json#dependencygroup/.netcoreapp2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETCoreApp2.0" - } - ], - "description": "Protocol support for SAML2 for .NET Core and full framework", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0-preview01/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0-preview01/sustainsys.saml2.2.0.0-preview01.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-01-09T17:12:20.44+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "" - ], - "title": "", - "version": "2.0.0-preview01" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0-preview01/sustainsys.saml2.2.0.0-preview01.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.0.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys.Saml2", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.09.27.17.39.53/sustainsys.saml2.2.0.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "Package Description", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0/sustainsys.saml2.2.0.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-09-27T13:33:15.37+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.0.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.0.0/sustainsys.saml2.2.0.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.1.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys.Saml2", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.10.16.07.05.10/sustainsys.saml2.2.1.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "Package Description", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.1.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.1.0/sustainsys.saml2.2.1.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-10-16T06:59:44.68+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.1.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.1.0/sustainsys.saml2.2.1.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.2.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.0.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2018.11.23.08.17.25/sustainsys.saml2.2.2.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.4.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "Package Description", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.2.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.2.0/sustainsys.saml2.2.2.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2018-11-23T08:13:08.003+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.2.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.2.0/sustainsys.saml2.2.2.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.3.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.6.1/system.valuetuple", - "@type": "PackageDependency", - "id": "System.ValueTuple", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.valuetuple/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.1.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2019.06.27.14.32.15/sustainsys.saml2.2.3.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "SAML2 protocol support. Do not use directly, use the high level package for your platform.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.3.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.3.0/sustainsys.saml2.2.3.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2019-06-27T14:27:31.613+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.3.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.3.0/sustainsys.saml2.2.3.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.4.0.json", - "@type": "Package", - "commitId": "98ea3ac2-146d-4d38-bdf9-532dbef29db5", - "commitTimeStamp": "2020-02-08T00:52:47.1835669+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.6.1/system.valuetuple", - "@type": "PackageDependency", - "id": "System.ValueTuple", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.valuetuple/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.1.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.01.17.15.23.31/sustainsys.saml2.2.4.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "SAML2 protocol support. Do not use directly, use the high level package for your platform.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.4.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "", - "licenseUrl": "https://github.com/Sustainsys/Saml2/blob/master/LICENSE", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.4.0/sustainsys.saml2.2.4.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-01-17T15:11:05.81+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.4.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.4.0/sustainsys.saml2.2.4.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.5.0.json", - "@type": "Package", - "commitId": "9559ccd8-4589-495d-8e6d-58cd8f93e893", - "commitTimeStamp": "2020-03-24T14:25:33.9377403+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.6.1/system.valuetuple", - "@type": "PackageDependency", - "id": "System.ValueTuple", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.valuetuple/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.1.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.24.14.25.15/sustainsys.saml2.2.5.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "SAML2 protocol support. Do not use directly, use the high level package for your platform.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.5.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "MIT", - "licenseUrl": "https://www.nuget.org/packages/Sustainsys.Saml2/2.5.0/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.5.0/sustainsys.saml2.2.5.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-03-24T14:22:39.96+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.5.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.5.0/sustainsys.saml2.2.5.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.6.0.json", - "@type": "Package", - "commitId": "26d895e3-cb4d-4607-af2a-783522ba1840", - "commitTimeStamp": "2020-03-27T11:09:03.672231+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.6.1/system.valuetuple", - "@type": "PackageDependency", - "id": "System.ValueTuple", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.valuetuple/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.1.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.03.27.11.08.40/sustainsys.saml2.2.6.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "SAML2 protocol support. Do not use directly, use the high level package for your platform.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.6.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "MIT", - "licenseUrl": "https://www.nuget.org/packages/Sustainsys.Saml2/2.6.0/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.6.0/sustainsys.saml2.2.6.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-03-27T11:06:27.5+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.6.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.6.0/sustainsys.saml2.2.6.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - }, - { - "@id": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/2.7.0.json", - "@type": "Package", - "commitId": "4b2bebc9-f63a-432a-8bcc-f9a277093541", - "commitTimeStamp": "2020-04-21T12:30:33.5740394+00:00", - "catalogEntry": { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json", - "@type": "PackageDetails", - "authors": "Sustainsys", - "dependencyGroups": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.6.1/system.valuetuple", - "@type": "PackageDependency", - "id": "System.ValueTuple", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.valuetuple/index.json" - } - ], - "targetFramework": ".NETFramework4.6.1" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netframework4.7/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETFramework4.7" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0", - "@type": "PackageDependencyGroup", - "dependencies": [ - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/microsoft.extensions.caching.memory", - "@type": "PackageDependency", - "id": "Microsoft.Extensions.Caching.Memory", - "range": "[2.1.2, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.extensions.caching.memory/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.protocols", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Protocols", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.protocols/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/microsoft.identitymodel.tokens.saml", - "@type": "PackageDependency", - "id": "Microsoft.IdentityModel.Tokens.Saml", - "range": "[5.2.4, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/microsoft.identitymodel.tokens.saml/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/system.configuration.configurationmanager", - "@type": "PackageDependency", - "id": "System.Configuration.ConfigurationManager", - "range": "[4.4.1, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.configuration.configurationmanager/index.json" - }, - { - "@id": "https://api.nuget.org/v3/catalog0/data/2020.04.21.12.30.11/sustainsys.saml2.2.7.0.json#dependencygroup/.netstandard2.0/system.security.cryptography.xml", - "@type": "PackageDependency", - "id": "System.Security.Cryptography.Xml", - "range": "[4.5.0, )", - "registration": "https://api.nuget.org/v3/registration5-semver1/system.security.cryptography.xml/index.json" - } - ], - "targetFramework": ".NETStandard2.0" - } - ], - "description": "SAML2 protocol support. Do not use directly, use the high level package for your platform.", - "iconUrl": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.7.0/icon", - "id": "Sustainsys.Saml2", - "language": "", - "licenseExpression": "MIT", - "licenseUrl": "https://www.nuget.org/packages/Sustainsys.Saml2/2.7.0/license", - "listed": true, - "minClientVersion": "", - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.7.0/sustainsys.saml2.2.7.0.nupkg", - "projectUrl": "https://github.com/Sustainsys/Saml2", - "published": "2020-04-21T12:27:36.427+00:00", - "requireLicenseAcceptance": false, - "summary": "", - "tags": [ - "SAML2", - "authentication", - "AspNet", - "SAML", - "SSO" - ], - "title": "", - "version": "2.7.0" - }, - "packageContent": "https://api.nuget.org/v3-flatcontainer/sustainsys.saml2/2.7.0/sustainsys.saml2.2.7.0.nupkg", - "registration": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json" - } - ], - "parent": "https://api.nuget.org/v3/registration5-semver1/sustainsys.saml2/index.json", - "lower": "0.23.0", - "upper": "2.7.0" - } - ], - "@context": { - "@vocab": "http://schema.nuget.org/schema#", - "catalog": "http://schema.nuget.org/catalog#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "items": { - "@id": "catalog:item", - "@container": "@set" - }, - "commitTimeStamp": { - "@id": "catalog:commitTimeStamp", - "@type": "xsd:dateTime" - }, - "commitId": { - "@id": "catalog:commitId" - }, - "count": { - "@id": "catalog:count" - }, - "parent": { - "@id": "catalog:parent", - "@type": "@id" - }, - "tags": { - "@id": "tag", - "@container": "@set" - }, - "reasons": { - "@container": "@set" - }, - "packageTargetFrameworks": { - "@id": "packageTargetFramework", - "@container": "@set" - }, - "dependencyGroups": { - "@id": "dependencyGroup", - "@container": "@set" - }, - "dependencies": { - "@id": "dependency", - "@container": "@set" - }, - "packageContent": { - "@type": "@id" - }, - "published": { - "@type": "xsd:dateTime" - }, - "registration": { - "@type": "@id" - } - } -} diff --git a/vulnerabilities/tests/test_github.py b/vulnerabilities/tests/test_github.py index 0f2e634d5..87496ad56 100644 --- a/vulnerabilities/tests/test_github.py +++ b/vulnerabilities/tests/test_github.py @@ -279,7 +279,7 @@ def test_github_improver(mock_response, regen=REGEN): assert result == expected -@mock.patch("vulnerabilities.package_managers.get_response") +@mock.patch("fetchcode.package_versions.get_response") def test_get_package_versions(mock_response): with open(os.path.join(BASE_DIR, "test_data", "package_manager_data", "pypi.json"), "r") as f: mock_response.return_value = json.load(f) @@ -305,13 +305,6 @@ def test_get_package_versions(mock_response): improver.get_package_versions(package_url=PackageURL(type="pypi", name="django")) == valid_versions ) - mock_response.return_value = None - assert not improver.get_package_versions(package_url=PackageURL(type="gem", name="foo")) - assert not improver.get_package_versions(package_url=PackageURL(type="pypi", name="foo")) - - assert PackageURL(type="gem", name="foo") in improver.versions_fetcher_by_purl - assert PackageURL(type="pypi", name="django") in improver.versions_fetcher_by_purl - assert PackageURL(type="pypi", name="foo") in improver.versions_fetcher_by_purl def test_get_cwes_from_github_advisory(): diff --git a/vulnerabilities/tests/test_nginx.py b/vulnerabilities/tests/test_nginx.py index 1d59830ee..c27ef2d10 100644 --- a/vulnerabilities/tests/test_nginx.py +++ b/vulnerabilities/tests/test_nginx.py @@ -25,7 +25,6 @@ from vulnerabilities.importers import nginx from vulnerabilities.improvers.valid_versions import NginxBasicImprover from vulnerabilities.models import Advisory -from vulnerabilities.package_managers import PackageVersion from vulnerabilities.tests import util_tests from vulnerabilities.utils import is_vulnerable_nginx_version @@ -199,7 +198,7 @@ def interesting_advisories(self) -> QuerySet: ) assert interesting_advisories == advisories - @mock.patch("vulnerabilities.utils.fetch_github_graphql_query") + @mock.patch("fetchcode.package_versions.github_response") def test_NginxBasicImprover_fetch_nginx_version_from_git_tags(self, mock_fetcher): reponse_files = [ "github-nginx-nginx-0.json", @@ -215,7 +214,7 @@ def test_NginxBasicImprover_fetch_nginx_version_from_git_tags(self, mock_fetcher side_effects.append(json.load(f)) mock_fetcher.side_effect = side_effects - results = [pv.to_dict() for pv in NginxBasicImprover().fetch_nginx_version_from_git_tags()] + results = list(NginxBasicImprover().fetch_nginx_version_from_git_tags()) expected_file = self.get_test_loc("improver/nginx-versions-expected.json", must_exist=False) util_tests.check_results_against_json(results, expected_file) @@ -226,7 +225,7 @@ def test_NginxBasicImprover__get_inferences_from_versions_end_to_end(self): advisories_data = json.load(vf) with open(self.get_test_loc("improver/improver-versions.json")) as vf: - all_versions = [PackageVersion(**vd) for vd in json.load(vf)] + all_versions = [vd["value"] for vd in json.load(vf)] results = [] improver = NginxBasicImprover() diff --git a/vulnerabilities/tests/test_package_managers.py b/vulnerabilities/tests/test_package_managers.py deleted file mode 100644 index adf46e1cd..000000000 --- a/vulnerabilities/tests/test_package_managers.py +++ /dev/null @@ -1,462 +0,0 @@ -# -# Copyright (c) nexB Inc. and others. All rights reserved. -# VulnerableCode is a trademark of nexB Inc. -# SPDX-License-Identifier: Apache-2.0 -# See http://www.apache.org/licenses/LICENSE-2.0 for the license text. -# See https://github.com/nexB/vulnerablecode for support or download. -# See https://aboutcode.org for more information about nexB OSS projects. -# - -import json -import os -from datetime import datetime -from functools import partial -from unittest import mock - -import pytest -from dateutil.tz import tzlocal -from packageurl import PackageURL - -from vulnerabilities.package_managers import ComposerVersionAPI -from vulnerabilities.package_managers import DebianVersionAPI -from vulnerabilities.package_managers import GitHubTagsAPI -from vulnerabilities.package_managers import GoproxyVersionAPI -from vulnerabilities.package_managers import MavenVersionAPI -from vulnerabilities.package_managers import NugetVersionAPI -from vulnerabilities.package_managers import PackageVersion -from vulnerabilities.package_managers import PypiVersionAPI -from vulnerabilities.package_managers import RubyVersionAPI -from vulnerabilities.package_managers import VersionResponse -from vulnerabilities.package_managers import get_version_fetcher - -BASE_DIR = os.path.dirname(os.path.abspath(__file__)) -TEST_DATA = os.path.join(BASE_DIR, "test_data", "package_manager_data") - -dt_local = partial(datetime, tzinfo=tzlocal()) - - -@pytest.mark.parametrize( - "url_path", ["https://pkg.go.dev/https://github.com/xx/a/b", "https://github.com/xx/a/b"] -) -def test_trim_go_url_path(url_path): - assert GoproxyVersionAPI.trim_go_url_path(url_path) == "github.com/xx/a" - - -def test_trim_go_url_path_failure(caplog): - url_path = "https://github.com" - assert GoproxyVersionAPI.trim_go_url_path(url_path) == None - assert "Not a valid Go URL path" in caplog.text - - -def test_nuget_extract_version(): - with open(os.path.join(TEST_DATA, "nuget-data.json"), "r") as f: - response = json.load(f) - results = list(NugetVersionAPI().extract_versions(response)) - expected = [ - PackageVersion(value="2.1.0", release_date=dt_local(2011, 1, 22, 13, 34, 8, 550000)), - PackageVersion(value="3.0.0", release_date=dt_local(2011, 11, 24, 0, 26, 2, 527000)), - PackageVersion(value="3.0.3", release_date=dt_local(2011, 11, 27, 13, 50, 2, 63000)), - PackageVersion(value="3.0.4", release_date=dt_local(2011, 12, 12, 10, 18, 33, 380000)), - PackageVersion(value="3.0.5", release_date=dt_local(2011, 12, 12, 12, 0, 25, 947000)), - PackageVersion(value="3.0.6", release_date=dt_local(2012, 1, 2, 21, 10, 43, 403000)), - PackageVersion(value="3.4.0", release_date=dt_local(2013, 10, 20, 13, 32, 30, 837000)), - PackageVersion(value="3.4.1", release_date=dt_local(2014, 1, 17, 9, 17, 43, 680000)), - PackageVersion(value="3.5.0-beta2", release_date=dt_local(2015, 1, 1, 14, 9, 28, 710000)), - PackageVersion(value="3.5.0-beta3", release_date=dt_local(2015, 1, 6, 17, 39, 25, 147000)), - PackageVersion(value="3.5.0", release_date=dt_local(2015, 1, 14, 2, 1, 58, 853000)), - PackageVersion(value="3.5.1", release_date=dt_local(2015, 1, 23, 1, 5, 44, 447000)), - ] - assert results == expected - - -def test_nuget_extract_version_with_illformed_data(): - test_data = {"items": [{"items": [{"catalogEntry": {}}]}]} - results = list(NugetVersionAPI.extract_versions(test_data)) - assert results == [] - - -@mock.patch("vulnerabilities.package_managers.get_response") -def test_pypi_fetch_data(mock_response): - pypi_api = PypiVersionAPI() - with open(os.path.join(TEST_DATA, "pypi.json"), "r") as f: - mock_response.return_value = json.load(f) - - results = list(pypi_api.fetch("django")) - expected = [ - PackageVersion(value="1.1.3", release_date=dt_local(2010, 12, 23, 5, 14, 23, 509436)), - PackageVersion(value="1.1.4", release_date=dt_local(2011, 2, 9, 4, 13, 7, 75)), - PackageVersion(value="1.10", release_date=dt_local(2016, 8, 1, 18, 32, 16, 280614)), - PackageVersion(value="1.10.1", release_date=dt_local(2016, 9, 1, 23, 18, 18, 672706)), - PackageVersion(value="1.10.2", release_date=dt_local(2016, 10, 1, 20, 5, 31, 330942)), - PackageVersion(value="1.10.3", release_date=dt_local(2016, 11, 1, 13, 57, 16, 55061)), - PackageVersion(value="1.10.4", release_date=dt_local(2016, 12, 1, 23, 46, 50, 215935)), - PackageVersion(value="1.10.5", release_date=dt_local(2017, 1, 4, 19, 23, 0, 596664)), - PackageVersion(value="1.10.6", release_date=dt_local(2017, 3, 1, 13, 37, 40, 243134)), - PackageVersion(value="1.10.7", release_date=dt_local(2017, 4, 4, 14, 27, 54, 235551)), - PackageVersion(value="1.10.8", release_date=dt_local(2017, 9, 5, 15, 31, 58, 221021)), - PackageVersion(value="1.10a1", release_date=dt_local(2016, 5, 20, 12, 24, 59, 952686)), - PackageVersion(value="1.10b1", release_date=dt_local(2016, 6, 22, 1, 15, 17, 267637)), - PackageVersion(value="1.10rc1", release_date=dt_local(2016, 7, 18, 18, 5, 5, 503584)), - ] - assert results == expected - - -@mock.patch("vulnerabilities.package_managers.get_response") -def test_pypi_fetch_with_no_release(mock_response): - mock_response.return_value = {"info": {}} - results = list(PypiVersionAPI().fetch("django")) - assert results == [] - - -@mock.patch("vulnerabilities.package_managers.get_response") -def test_ruby_fetch_with_no_release(mock_response): - - with open(os.path.join(TEST_DATA, "gem.json")) as f: - mock_response.return_value = json.load(f) - - results = list(RubyVersionAPI().fetch("rails")) - - expected = [ - PackageVersion(value="7.0.2.3", release_date=dt_local(2022, 3, 8, 17, 50, 52, 496000)), - PackageVersion(value="7.0.2.2", release_date=dt_local(2022, 2, 11, 19, 44, 19, 17000)), - ] - - assert results == expected - - -class TestComposerVersionAPI: - - expected_versions = [ - PackageVersion(value=("10.0.0",), release_date=dt_local(2019, 7, 23, 7, 6, 3)), - PackageVersion(value=("10.1.0",), release_date=dt_local(2019, 10, 1, 8, 18, 18)), - PackageVersion(value=("10.2.0",), release_date=dt_local(2019, 12, 3, 11, 16, 26)), - PackageVersion(value=("10.2.1",), release_date=dt_local(2019, 12, 17, 11, 0)), - PackageVersion(value=("10.2.2",), release_date=dt_local(2019, 12, 17, 11, 36, 14)), - PackageVersion(value=("10.3.0",), release_date=dt_local(2020, 2, 25, 12, 50, 9)), - PackageVersion(value=("10.4.0",), release_date=dt_local(2020, 4, 21, 8, 0, 15)), - PackageVersion(value=("10.4.1",), release_date=dt_local(2020, 4, 28, 9, 7, 54)), - PackageVersion(value=("10.4.2",), release_date=dt_local(2020, 5, 12, 10, 41, 40)), - PackageVersion(value=("10.4.3",), release_date=dt_local(2020, 5, 19, 13, 16, 31)), - PackageVersion(value=("10.4.4",), release_date=dt_local(2020, 6, 9, 8, 56, 30)), - PackageVersion(value=("8.7.10",), release_date=dt_local(2018, 2, 6, 10, 46, 2)), - PackageVersion(value=("8.7.11",), release_date=dt_local(2018, 3, 13, 12, 44, 45)), - PackageVersion(value=("8.7.12",), release_date=dt_local(2018, 3, 22, 11, 35, 42)), - PackageVersion(value=("8.7.13",), release_date=dt_local(2018, 4, 17, 8, 15, 46)), - PackageVersion(value=("8.7.14",), release_date=dt_local(2018, 5, 22, 13, 51, 9)), - PackageVersion(value=("8.7.15",), release_date=dt_local(2018, 5, 23, 11, 31, 21)), - PackageVersion(value=("8.7.16",), release_date=dt_local(2018, 6, 11, 17, 18, 14)), - PackageVersion(value=("8.7.17",), release_date=dt_local(2018, 7, 12, 11, 29, 19)), - PackageVersion(value=("8.7.18",), release_date=dt_local(2018, 7, 31, 8, 15, 29)), - PackageVersion(value=("8.7.19",), release_date=dt_local(2018, 8, 21, 7, 23, 21)), - PackageVersion(value=("8.7.20",), release_date=dt_local(2018, 10, 30, 10, 39, 51)), - PackageVersion(value=("8.7.21",), release_date=dt_local(2018, 12, 11, 12, 40, 12)), - PackageVersion(value=("8.7.22",), release_date=dt_local(2018, 12, 14, 7, 43, 50)), - PackageVersion(value=("8.7.23",), release_date=dt_local(2019, 1, 22, 10, 10, 2)), - PackageVersion(value=("8.7.24",), release_date=dt_local(2019, 1, 22, 15, 25, 55)), - PackageVersion(value=("8.7.25",), release_date=dt_local(2019, 5, 7, 10, 5, 55)), - PackageVersion(value=("8.7.26",), release_date=dt_local(2019, 5, 15, 11, 24, 12)), - PackageVersion(value=("8.7.27",), release_date=dt_local(2019, 6, 25, 8, 24, 21)), - PackageVersion(value=("8.7.28",), release_date=dt_local(2019, 10, 15, 7, 21, 52)), - PackageVersion(value=("8.7.29",), release_date=dt_local(2019, 10, 30, 21, 0, 45)), - PackageVersion(value=("8.7.30",), release_date=dt_local(2019, 12, 17, 10, 49, 17)), - PackageVersion(value=("8.7.31",), release_date=dt_local(2020, 2, 17, 23, 29, 16)), - PackageVersion(value=("8.7.32",), release_date=dt_local(2020, 3, 31, 8, 33, 3)), - PackageVersion(value=("8.7.7",), release_date=dt_local(2017, 9, 19, 14, 22, 53)), - PackageVersion(value=("8.7.8",), release_date=dt_local(2017, 10, 10, 16, 8, 44)), - PackageVersion(value=("8.7.9",), release_date=dt_local(2017, 12, 12, 16, 9, 50)), - PackageVersion(value=("9.0.0",), release_date=dt_local(2017, 12, 12, 16, 48, 22)), - PackageVersion(value=("9.1.0",), release_date=dt_local(2018, 1, 30, 15, 31, 12)), - PackageVersion(value=("9.2.0",), release_date=dt_local(2018, 4, 9, 20, 51, 35)), - PackageVersion(value=("9.2.1",), release_date=dt_local(2018, 5, 22, 13, 47, 11)), - PackageVersion(value=("9.3.0",), release_date=dt_local(2018, 6, 11, 17, 14, 33)), - PackageVersion(value=("9.3.1",), release_date=dt_local(2018, 7, 12, 11, 33, 12)), - PackageVersion(value=("9.3.2",), release_date=dt_local(2018, 7, 12, 15, 51, 49)), - PackageVersion(value=("9.3.3",), release_date=dt_local(2018, 7, 31, 8, 20, 17)), - PackageVersion(value=("9.4.0",), release_date=dt_local(2018, 9, 4, 12, 8, 20)), - PackageVersion(value=("9.5.0",), release_date=dt_local(2018, 10, 2, 8, 10, 33)), - PackageVersion(value=("9.5.1",), release_date=dt_local(2018, 10, 30, 10, 45, 30)), - PackageVersion(value=("9.5.10",), release_date=dt_local(2019, 10, 15, 7, 29, 55)), - PackageVersion(value=("9.5.11",), release_date=dt_local(2019, 10, 30, 20, 46, 49)), - PackageVersion(value=("9.5.12",), release_date=dt_local(2019, 12, 17, 10, 53, 45)), - PackageVersion(value=("9.5.13",), release_date=dt_local(2019, 12, 17, 14, 17, 37)), - PackageVersion(value=("9.5.14",), release_date=dt_local(2020, 2, 17, 23, 37, 2)), - PackageVersion(value=("9.5.15",), release_date=dt_local(2020, 3, 31, 8, 40, 25)), - PackageVersion(value=("9.5.16",), release_date=dt_local(2020, 4, 28, 9, 22, 14)), - PackageVersion(value=("9.5.17",), release_date=dt_local(2020, 5, 12, 10, 36)), - PackageVersion(value=("9.5.18",), release_date=dt_local(2020, 5, 19, 13, 10, 50)), - PackageVersion(value=("9.5.19",), release_date=dt_local(2020, 6, 9, 8, 44, 34)), - PackageVersion(value=("9.5.2",), release_date=dt_local(2018, 12, 11, 12, 42, 55)), - PackageVersion(value=("9.5.3",), release_date=dt_local(2018, 12, 14, 7, 28, 48)), - PackageVersion(value=("9.5.4",), release_date=dt_local(2019, 1, 22, 10, 12, 4)), - PackageVersion(value=("9.5.5",), release_date=dt_local(2019, 3, 4, 20, 25, 8)), - PackageVersion(value=("9.5.6",), release_date=dt_local(2019, 5, 7, 10, 16, 30)), - PackageVersion(value=("9.5.7",), release_date=dt_local(2019, 5, 15, 11, 41, 51)), - PackageVersion(value=("9.5.8",), release_date=dt_local(2019, 6, 25, 8, 28, 51)), - PackageVersion(value=("9.5.9",), release_date=dt_local(2019, 8, 20, 9, 33, 35)), - ] - - def test_extract_versions(self): - with open(os.path.join(TEST_DATA, "composer.json")) as f: - mock_response = json.load(f) - - results = list(ComposerVersionAPI().extract_versions(mock_response, "typo3/cms-core")) - assert results == self.expected_versions - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch(self, mock_response): - with open(os.path.join(TEST_DATA, "composer.json")) as f: - mock_response.return_value = json.load(f) - - results = list(ComposerVersionAPI().fetch("typo3/cms-core")) - assert results == self.expected_versions - - -class TestMavenVersionAPI: - def test_extract_versions(self): - import xml.etree.ElementTree as ET - - with open(os.path.join(TEST_DATA, "maven-metadata.xml")) as f: - mock_response = ET.parse(f) - - results = list(MavenVersionAPI().extract_versions(mock_response)) - expected = [PackageVersion("1.2.2"), PackageVersion("1.2.3"), PackageVersion("1.3.0")] - assert results == expected - - def test_artifact_url(self): - eg_comps1 = ["org.apache", "kafka"] - eg_comps2 = ["apple.msft.windows.mac.oss", "exfat-ntfs"] - - url1 = MavenVersionAPI.artifact_url(eg_comps1) - url2 = MavenVersionAPI.artifact_url(eg_comps2) - - assert url1 == "https://repo1.maven.org/maven2/org/apache/kafka/maven-metadata.xml" - assert ( - url2 - == "https://repo1.maven.org/maven2/apple/msft/windows/mac/oss/exfat-ntfs/maven-metadata.xml" - ) - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_get_until(self, mock_response): - with open(os.path.join(TEST_DATA, "maven-metadata.xml"), "rb") as f: - mock_response.return_value = f.read() - - assert MavenVersionAPI().get_until("org.apache:kafka") == VersionResponse( - valid_versions={"1.3.0", "1.2.2", "1.2.3"}, newer_versions=set() - ) - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch(self, mock_response): - with open(os.path.join(TEST_DATA, "maven-metadata.xml"), "rb") as f: - mock_response.return_value = f.read() - - expected = [ - PackageVersion(value="1.2.2"), - PackageVersion(value="1.2.3"), - PackageVersion(value="1.3.0"), - ] - results = list(MavenVersionAPI().fetch("org.apache:kafka")) - assert results == expected - - -class TestGoproxyVersionAPI: - def test_trim_go_url_path(self): - - url1 = "https://pkg.go.dev/github.com/containous/traefik/v2" - assert GoproxyVersionAPI.trim_go_url_path(url1) == "github.com/containous/traefik" - - url2 = "github.com/FerretDB/FerretDB/cmd/ferretdb" - assert GoproxyVersionAPI.trim_go_url_path(url2) == "github.com/FerretDB/FerretDB" - - url3 = GoproxyVersionAPI.trim_go_url_path(url2) - assert GoproxyVersionAPI.trim_go_url_path(url3) == "github.com/FerretDB/FerretDB" - - def test_escape_path(self): - path = "github.com/FerretDB/FerretDB" - expected = "github.com/!ferret!d!b/!ferret!d!b" - assert GoproxyVersionAPI.escape_path(path) == expected - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch_version_info(self, mock_response): - mock_response.return_value = {"Version": "v0.0.5", "Time": "2022-01-04T13:54:01Z"} - result = GoproxyVersionAPI.fetch_version_info( - "v0.0.5", - "github.com/!ferret!d!b/!ferret!d!b", - ) - expected = PackageVersion( - value="v0.0.5", - release_date=dt_local(2022, 1, 4, 13, 54, 1), - ) - assert result == expected - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch(self, mock_fetcher): - # we have many calls made to get_response - versions_list = "v0.0.1\nv0.0.5\nv0.0.3\nv0.0.4\nv0.0.2\n" - responses = [ - versions_list, - {"Version": "v0.0.1", "Time": "2021-11-02T06:56:38Z"}, - {"Version": "v0.0.2", "Time": "2021-11-13T21:36:37Z"}, - {"Version": "v0.0.3", "Time": "2021-11-19T20:31:22Z"}, - {"Version": "v0.0.4", "Time": "2021-12-01T19:02:44Z"}, - {"Version": "v0.0.5", "Time": "2022-01-04T13:54:01Z"}, - ] - mock_fetcher.side_effect = responses - - results = list(GoproxyVersionAPI().fetch("github.com/FerretDB/FerretDB")) - expected = [ - PackageVersion(value="v0.0.1", release_date=dt_local(2021, 11, 2, 6, 56, 38)), - PackageVersion(value="v0.0.5", release_date=dt_local(2021, 11, 13, 21, 36, 37)), - PackageVersion(value="v0.0.3", release_date=dt_local(2021, 11, 19, 20, 31, 22)), - PackageVersion(value="v0.0.4", release_date=dt_local(2021, 12, 1, 19, 2, 44)), - PackageVersion(value="v0.0.2", release_date=dt_local(2022, 1, 4, 13, 54, 1)), - ] - assert results == expected - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch_with_responses_are_none(self, mock_fetcher): - # we have many calls made to get_response - responses = [None, None, None, None, None] - mock_fetcher.side_effect = responses - - results = list(GoproxyVersionAPI().fetch("github.com/FerretDB/FerretDB")) - assert results == [] - - -class TestNugetVersionAPI: - expected_versions = [ - PackageVersion(value="0.23.0", release_date=dt_local(2018, 1, 17, 9, 32, 59, 283000)), - PackageVersion(value="0.24.0", release_date=dt_local(2018, 3, 30, 7, 25, 18, 393000)), - PackageVersion(value="1.0.0", release_date=dt_local(2018, 9, 13, 8, 16, 0, 420000)), - PackageVersion(value="1.0.1", release_date=dt_local(2020, 1, 17, 15, 31, 41, 857000)), - PackageVersion(value="1.0.2", release_date=dt_local(2020, 4, 21, 12, 24, 53, 877000)), - PackageVersion( - value="2.0.0-preview01", release_date=dt_local(2018, 1, 9, 17, 12, 20, 440000) - ), - PackageVersion(value="2.0.0", release_date=dt_local(2018, 9, 27, 13, 33, 15, 370000)), - PackageVersion(value="2.1.0", release_date=dt_local(2018, 10, 16, 6, 59, 44, 680000)), - PackageVersion(value="2.2.0", release_date=dt_local(2018, 11, 23, 8, 13, 8, 3000)), - PackageVersion(value="2.3.0", release_date=dt_local(2019, 6, 27, 14, 27, 31, 613000)), - PackageVersion(value="2.4.0", release_date=dt_local(2020, 1, 17, 15, 11, 5, 810000)), - PackageVersion(value="2.5.0", release_date=dt_local(2020, 3, 24, 14, 22, 39, 960000)), - PackageVersion(value="2.6.0", release_date=dt_local(2020, 3, 27, 11, 6, 27, 500000)), - PackageVersion(value="2.7.0", release_date=dt_local(2020, 4, 21, 12, 27, 36, 427000)), - ] - - def test_extract_versions(self): - with open(os.path.join(TEST_DATA, "nuget_index.json")) as f: - mock_response = json.load(f) - results = list(NugetVersionAPI().extract_versions(mock_response)) - assert results == self.expected_versions - - @mock.patch("vulnerabilities.package_managers.get_response") - def test_fetch(self, mock_response): - with open(os.path.join(TEST_DATA, "nuget_index.json")) as f: - mock_response.return_value = json.load(f) - results = list(NugetVersionAPI().fetch("Exfat.Ntfs")) - assert results == self.expected_versions - - -class TestGitHubTagsAPI: - @mock.patch("vulnerabilities.utils.fetch_github_graphql_query") - def test_fetch_large_repo(self, mock_fetcher): - reponse_files = [ - "github-torvalds-linux-0.json", - "github-torvalds-linux-1.json", - "github-torvalds-linux-2.json", - "github-torvalds-linux-3.json", - "github-torvalds-linux-4.json", - "github-torvalds-linux-5.json", - "github-torvalds-linux-6.json", - "github-torvalds-linux-7.json", - ] - side_effects = [] - for response_file in reponse_files: - with open(os.path.join(TEST_DATA, "github", response_file)) as f: - side_effects.append(json.load(f)) - mock_fetcher.side_effect = side_effects - - results = list(GitHubTagsAPI().fetch("torvalds/linux")) - assert len(results) == 739 - - @mock.patch("vulnerabilities.utils.fetch_github_graphql_query") - def test_fetch_small_repo_1(self, mock_graphql_response): - with open(os.path.join(TEST_DATA, "github", "github-nexb-scancode-toolkit-0.json")) as f: - mock_graphql_response.return_value = json.load(f) - results = list(GitHubTagsAPI().fetch("nexB/scancode-toolkit")) - expected = [ - PackageVersion(value="v1.0.0", release_date=dt_local(2015, 7, 1, 15, 14, 15)), - PackageVersion(value="v1.1.0", release_date=dt_local(2015, 7, 6, 10, 9, 51)), - PackageVersion(value="v1.2.0", release_date=dt_local(2015, 7, 13, 14, 56, 45)), - PackageVersion(value="v1.2.1", release_date=dt_local(2015, 7, 13, 16, 36, 42)), - PackageVersion(value="v1.2.2", release_date=dt_local(2015, 7, 14, 14, 10, 20)), - PackageVersion(value="v1.2.3", release_date=dt_local(2015, 7, 16, 6, 53, 40)), - PackageVersion(value="v1.2.4", release_date=dt_local(2015, 7, 22, 14, 6, 14)), - PackageVersion(value="v1.3.0", release_date=dt_local(2015, 7, 24, 12, 20, 54)), - PackageVersion(value="v1.3.1", release_date=dt_local(2015, 7, 27, 18, 46, 11)), - PackageVersion(value="v1.4.0", release_date=dt_local(2015, 11, 24, 18, 15, 21)), - PackageVersion(value="v1.4.1", release_date=dt_local(2015, 12, 3, 11, 22, 26)), - PackageVersion(value="v1.4.2", release_date=dt_local(2015, 12, 3, 11, 39, 30)), - PackageVersion(value="v1.4.3", release_date=dt_local(2015, 12, 10, 17, 7, 19)), - PackageVersion(value="v1.5.0", release_date=dt_local(2015, 12, 15, 14, 57, 37)), - PackageVersion(value="v1.6.0", release_date=dt_local(2016, 1, 29, 21, 50, 30)), - PackageVersion(value="v1.6.1", release_date=dt_local(2016, 3, 1, 19, 49, 6)), - PackageVersion(value="v1.6.2", release_date=dt_local(2016, 6, 24, 14, 35, 1)), - PackageVersion(value="v1.6.3", release_date=dt_local(2016, 6, 24, 16, 4, 25)), - PackageVersion(value="v2.0.0.rc1", release_date=dt_local(2016, 10, 7, 20, 49, 42)), - PackageVersion(value="v2.0.0.rc2", release_date=dt_local(2017, 1, 16, 14, 34, 49)), - PackageVersion(value="v2.0.0.rc3", release_date=dt_local(2017, 6, 16, 15, 56, 50)), - PackageVersion(value="v2.0.0", release_date=dt_local(2017, 6, 23, 8, 7, 3)), - PackageVersion(value="v2.0.1", release_date=dt_local(2017, 7, 3, 16, 0, 36)), - PackageVersion(value="v2.1.0", release_date=dt_local(2017, 9, 22, 19, 34, 57)), - PackageVersion(value="v2.2.0", release_date=dt_local(2017, 10, 5, 22, 41, 56)), - PackageVersion(value="v2.2.1", release_date=dt_local(2017, 10, 5, 22, 53, 25)), - PackageVersion(value="v2.9.0b1", release_date=dt_local(2018, 3, 2, 21, 18, 40)), - PackageVersion(value="v2.9.1", release_date=dt_local(2018, 3, 22, 15, 44, 33)), - PackageVersion(value="v2.9.2", release_date=dt_local(2018, 5, 8, 13, 54, 52)), - PackageVersion(value="v2.9.3", release_date=dt_local(2018, 9, 27, 21, 11, 57)), - PackageVersion(value="v2.9.4", release_date=dt_local(2018, 10, 19, 14, 31, 36)), - PackageVersion(value="v2.9.5", release_date=dt_local(2018, 10, 22, 20, 33, 50)), - PackageVersion(value="v2.9.6", release_date=dt_local(2018, 10, 25, 20, 26, 28)), - PackageVersion(value="v2.9.7", release_date=dt_local(2018, 10, 26, 1, 55, 40)), - PackageVersion(value="v2.9.8", release_date=dt_local(2018, 12, 12, 10, 13, 24)), - PackageVersion(value="v2.9.9", release_date=dt_local(2019, 1, 7, 11, 20, 18)), - PackageVersion(value="v3.0.0", release_date=dt_local(2019, 2, 14, 19, 15, 6)), - PackageVersion(value="v3.0.1", release_date=dt_local(2019, 2, 15, 14, 17, 54)), - PackageVersion(value="v3.0.2", release_date=dt_local(2019, 2, 15, 14, 34, 52)), - PackageVersion(value="v3.1.0", release_date=dt_local(2019, 8, 12, 18, 31, 48)), - PackageVersion(value="v3.1.1", release_date=dt_local(2019, 9, 3, 20, 27, 57)), - PackageVersion(value="v3.2.0rc1", release_date=dt_local(2020, 9, 8, 18, 12, 16)), - PackageVersion(value="v3.2.1rc2", release_date=dt_local(2020, 9, 11, 15, 28, 54)), - PackageVersion(value="v3.2.2rc3", release_date=dt_local(2020, 10, 14, 22, 18)), - PackageVersion(value="v3.2.3", release_date=dt_local(2020, 10, 27, 18, 44, 17)), - PackageVersion(value="v21.2.9", release_date=dt_local(2021, 2, 9, 18, 0, 14)), - PackageVersion(value="v21.2.25", release_date=dt_local(2021, 2, 25, 21, 6, 9)), - PackageVersion(value="v21.3.30", release_date=dt_local(2021, 3, 31, 17, 36, 32)), - PackageVersion(value="v21.3.31", release_date=dt_local(2021, 4, 1, 7, 21, 52)), - PackageVersion(value="v21.6.7", release_date=dt_local(2021, 6, 8, 8, 27, 29)), - PackageVersion(value="v21.7.30", release_date=dt_local(2021, 7, 30, 20, 12, 30)), - PackageVersion(value="v21.8.4", release_date=dt_local(2021, 8, 4, 17, 42, 25)), - PackageVersion(value="v30.0.0", release_date=dt_local(2021, 9, 23, 10, 41, 40)), - PackageVersion(value="v30.0.1", release_date=dt_local(2021, 9, 24, 10, 1, 28)), - PackageVersion(value="v30.1.0", release_date=dt_local(2021, 9, 26, 14, 31, 56)), - ] - assert results == expected - - @mock.patch("vulnerabilities.utils.fetch_github_graphql_query") - def test_fetch_small_repo_2(self, mock_graphql_response): - with open(os.path.join(TEST_DATA, "github", "github-nexb-vulnerablecode-0.json")) as f: - mock_graphql_response.return_value = json.load(f) - results = list(GitHubTagsAPI().fetch("nexB/vulnerablecode")) - expected = [ - PackageVersion(value="v0.1", release_date=dt_local(2019, 12, 3, 13, 48, 53)), - PackageVersion(value="v20.10", release_date=dt_local(2020, 9, 28, 12, 31, 16)), - PackageVersion(value="v22.01", release_date=dt_local(2022, 1, 24, 23, 48, 4)), - ] - assert results == expected - - -def test_get_version_fetcher(): - purl = "pkg:deb/debian/foo@1.2.3" - purl = PackageURL.from_string(purl) - fetcher = get_version_fetcher(purl) - assert isinstance(fetcher, DebianVersionAPI) diff --git a/vulnerabilities/tests/test_utils.py b/vulnerabilities/tests/test_utils.py index a377d4745..e67aa18bf 100644 --- a/vulnerabilities/tests/test_utils.py +++ b/vulnerabilities/tests/test_utils.py @@ -7,12 +7,12 @@ # See https://aboutcode.org for more information about nexB OSS projects. # +from fetchcode.package_versions import PackageVersion from packageurl import PackageURL from univers.version_constraint import VersionConstraint from univers.version_range import GemVersionRange from univers.versions import RubygemsVersion -from vulnerabilities.package_managers import PackageVersion from vulnerabilities.utils import AffectedPackage from vulnerabilities.utils import get_item from vulnerabilities.utils import get_severity_range From cc7d145a2916aeaf72c237602b61c9cf386e5e3e Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Thu, 30 Nov 2023 23:16:11 +0530 Subject: [PATCH 05/12] Use purl.name as package name for golang See this: https://github.com/nexB/vulnerablecode/issues/749#issuecomment-1830251882 Signed-off-by: Keshav Priyadarshi --- vulnerabilities/improvers/valid_versions.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/vulnerabilities/improvers/valid_versions.py b/vulnerabilities/improvers/valid_versions.py index df3674c2b..98fe5c616 100644 --- a/vulnerabilities/improvers/valid_versions.py +++ b/vulnerabilities/improvers/valid_versions.py @@ -153,15 +153,6 @@ def get_inferences(self, advisory_data: AdvisoryData) -> Iterable[Inference]: fixed_purl=fixed_purl, ) else: - if purl.type == "golang": - # Problem with the Golang and Go that they provide full path - # FIXME: We need to get the PURL subpath for Go module - versions_fetcher = self.versions_fetcher_by_purl.get(purl) - if not versions_fetcher: - versions_fetcher = GoproxyVersionAPI() - self.versions_fetcher_by_purl[purl] = versions_fetcher - pkg_name = versions_fetcher.module_name_by_package_name.get(pkg_name, pkg_name) - valid_versions = self.get_package_versions( package_url=purl, until=advisory_data.date_published ) From 92638fcc5e36f826bdcbe250dc5dcfdb73088d59 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Tue, 19 Dec 2023 16:19:06 +0530 Subject: [PATCH 06/12] Bump fetchcode to v0.3.0 Signed-off-by: Keshav Priyadarshi --- requirements.txt | 3 +-- setup.cfg | 3 +-- vulnerabilities/improvers/valid_versions.py | 4 ++-- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/requirements.txt b/requirements.txt index 3249b7828..042f541da 100644 --- a/requirements.txt +++ b/requirements.txt @@ -113,8 +113,7 @@ websocket-client==0.59.0 yarl==1.7.2 zipp==3.8.0 dateparser==1.1.1 -# TODO: pin fetchcode, once nexB/fetchcode#93 is merged -# fetchcode==0.2.0 +fetchcode==0.3.0 cwe2==2.0.0 drf-spectacular-sidecar==2022.10.1 drf-spectacular==0.24.2 diff --git a/setup.cfg b/setup.cfg index 2a8f5f0a2..7fc65fa21 100644 --- a/setup.cfg +++ b/setup.cfg @@ -90,8 +90,7 @@ install_requires = # networking GitPython>=3.1.17 requests>=2.25.1 - # TODO: replace this with new fetchcode release - fetchcode @ git+https://github.com/nexB/fetchcode.git@refs/pull/93/head + fetchcode>=0.3.0 #vulntotal python-dotenv diff --git a/vulnerabilities/improvers/valid_versions.py b/vulnerabilities/improvers/valid_versions.py index 98fe5c616..4847081e3 100644 --- a/vulnerabilities/improvers/valid_versions.py +++ b/vulnerabilities/improvers/valid_versions.py @@ -73,7 +73,7 @@ def get_package_versions( """ versions = package_versions.versions(str(package_url)) versions_before_until = set() - for version in versions: + for version in versions or []: if until and version.release_date and version.release_date > until: continue versions_before_until.add(version.value) @@ -277,7 +277,7 @@ def fetch_nginx_version_from_git_tags(self): Yield all nginx version from its git tags. """ nginx_versions = package_versions.versions("pkg:github/nginx/nginx") - for version in nginx_versions: + for version in nginx_versions or []: cleaned = clean_nginx_git_tag(version.value) yield cleaned From 979fb06853f44db1a035a647d88cf01792f5d880 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Tue, 19 Dec 2023 16:28:15 +0530 Subject: [PATCH 07/12] Remove unused init Signed-off-by: Keshav Priyadarshi --- vulnerabilities/improvers/valid_versions.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/vulnerabilities/improvers/valid_versions.py b/vulnerabilities/improvers/valid_versions.py index 4847081e3..cd28353a7 100644 --- a/vulnerabilities/improvers/valid_versions.py +++ b/vulnerabilities/improvers/valid_versions.py @@ -53,14 +53,11 @@ logger = logging.getLogger(__name__) -@dataclasses.dataclass(order=True) +@dataclasses.dataclass(order=True, init=False) class ValidVersionImprover(Improver): importer: Importer ignorable_versions: List[str] = dataclasses.field(default_factory=list) - def __init__(self): - pass - @property def interesting_advisories(self) -> QuerySet: return Advisory.objects.filter(Q(created_by=self.importer.qualified_name)).paginated() From 2326a0929c375446078dfa06309b5c492750a664 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Wed, 20 Dec 2023 20:46:41 +0530 Subject: [PATCH 08/12] Retrun list in get_package_versions Signed-off-by: Keshav Priyadarshi --- vulnerabilities/improvers/valid_versions.py | 4 ++-- vulnerabilities/tests/test_github.py | 9 +++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/vulnerabilities/improvers/valid_versions.py b/vulnerabilities/improvers/valid_versions.py index cd28353a7..76b7993a9 100644 --- a/vulnerabilities/improvers/valid_versions.py +++ b/vulnerabilities/improvers/valid_versions.py @@ -69,11 +69,11 @@ def get_package_versions( Return a list of versions published before `until` for the `package_url` """ versions = package_versions.versions(str(package_url)) - versions_before_until = set() + versions_before_until = [] for version in versions or []: if until and version.release_date and version.release_date > until: continue - versions_before_until.add(version.value) + versions_before_until.append(version.value) return versions_before_until diff --git a/vulnerabilities/tests/test_github.py b/vulnerabilities/tests/test_github.py index 87496ad56..b38af16ae 100644 --- a/vulnerabilities/tests/test_github.py +++ b/vulnerabilities/tests/test_github.py @@ -285,7 +285,7 @@ def test_get_package_versions(mock_response): mock_response.return_value = json.load(f) improver = GitHubBasicImprover() - valid_versions = { + valid_versions = [ "1.1.3", "1.1.4", "1.10", @@ -300,11 +300,12 @@ def test_get_package_versions(mock_response): "1.10a1", "1.10b1", "1.10rc1", - } - assert ( + ] + result = sorted( improver.get_package_versions(package_url=PackageURL(type="pypi", name="django")) - == valid_versions ) + expected = sorted(valid_versions) + assert result == expected def test_get_cwes_from_github_advisory(): From f8d0e6b05daf4f09effde2dc241006e89341f781 Mon Sep 17 00:00:00 2001 From: Tushar Goel <34160672+TG1999@users.noreply.github.com> Date: Thu, 21 Dec 2023 19:48:27 +0530 Subject: [PATCH 09/12] Add /var/www/html as volume in docker compose (#1371) Signed-off-by: Tushar Goel --- docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yml b/docker-compose.yml index 243c14132..e04955fa6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,6 +21,7 @@ services: volumes: - /etc/vulnerablecode/:/etc/vulnerablecode/ - static:/var/vulnerablecode/static/ + - /var/www/html:/var/www/html depends_on: - db From ecf3532a586bf29c6e3814cb06e2198f5a5e58fe Mon Sep 17 00:00:00 2001 From: Tushar Goel <34160672+TG1999@users.noreply.github.com> Date: Thu, 21 Dec 2023 19:53:25 +0530 Subject: [PATCH 10/12] Prepare for release v33.6.4 (#1372) Signed-off-by: Tushar Goel --- CHANGELOG.rst | 12 ++++++++++++ vulnerablecode/__init__.py | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 275c0b804..fc716f59f 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,18 @@ Release notes ============= +Version v33.6.4 +------------------- + +- We added /var/www/html as volume in Docker compose (#1371). +- We fixed table borders in Vulnerability details UI #1356 (#1358) +- We fixed import runner's process_inferences (#1360) +- We fixed debian OVAL importer (#1361) +- We added graph model diagrams #977(#1350) +- We added endpoint for purl lookup (#1359) +- We fixed swagger API docs generation (#1366) + + Version v33.6.3 ---------------- diff --git a/vulnerablecode/__init__.py b/vulnerablecode/__init__.py index 56e7550a1..68e869c3a 100644 --- a/vulnerablecode/__init__.py +++ b/vulnerablecode/__init__.py @@ -12,7 +12,7 @@ import warnings from pathlib import Path -__version__ = "33.6.3" +__version__ = "33.6.4" def command_line(): From 3ec022a85ac0bb286e57dc2033d6f42ae21a44ce Mon Sep 17 00:00:00 2001 From: Tushar Goel <34160672+TG1999@users.noreply.github.com> Date: Thu, 21 Dec 2023 22:16:31 +0530 Subject: [PATCH 11/12] Update docker-compose.yml (#1373) Add /var/www/html volume in nginx Signed-off-by: Tushar Goel --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index e04955fa6..865be14e1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,7 +21,6 @@ services: volumes: - /etc/vulnerablecode/:/etc/vulnerablecode/ - static:/var/vulnerablecode/static/ - - /var/www/html:/var/www/html depends_on: - db @@ -35,6 +34,7 @@ services: volumes: - ./etc/nginx/conf.d/:/etc/nginx/conf.d/ - static:/var/vulnerablecode/static/ + - /var/www/html:/var/www/html depends_on: - vulnerablecode From d21d2c1de127118a7ff884c184eb6aefdadf157c Mon Sep 17 00:00:00 2001 From: Tushar Goel <34160672+TG1999@users.noreply.github.com> Date: Thu, 21 Dec 2023 22:20:54 +0530 Subject: [PATCH 12/12] Prepare for release v33.6.5 (#1374) Signed-off-by: Tushar Goel --- CHANGELOG.rst | 6 ++++++ vulnerablecode/__init__.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index fc716f59f..c2e546095 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,12 @@ Release notes ============= +Version v33.6.5 +------------------- + +- We added /var/www/html as volume in nginx Docker compose (#1373). + + Version v33.6.4 ------------------- diff --git a/vulnerablecode/__init__.py b/vulnerablecode/__init__.py index 68e869c3a..694c5d3f5 100644 --- a/vulnerablecode/__init__.py +++ b/vulnerablecode/__init__.py @@ -12,7 +12,7 @@ import warnings from pathlib import Path -__version__ = "33.6.4" +__version__ = "33.6.5" def command_line():