From ca77368c657a9f5165e13d0d5769bf537fa7073c Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 29 Nov 2024 23:30:32 +0530 Subject: [PATCH 01/14] Use default branch to sync data Signed-off-by: Keshav Priyadarshi --- fedcode/importer.py | 43 +++++++++---------------------------------- 1 file changed, 9 insertions(+), 34 deletions(-) diff --git a/fedcode/importer.py b/fedcode/importer.py index 7770d42..7525d8a 100644 --- a/fedcode/importer.py +++ b/fedcode/importer.py @@ -6,6 +6,7 @@ # See https://github.com/nexB/federatedcode for support or download. # See https://aboutcode.org for more information about AboutCode.org OSS projects. # + import logging import os.path from dataclasses import dataclass @@ -14,14 +15,13 @@ import saneyaml from fedcode.activitypub import Activity -from fedcode.activitypub import CreateActivity -from fedcode.activitypub import DeleteActivity from fedcode.activitypub import UpdateActivity from fedcode.models import Note from fedcode.models import Package from fedcode.models import Repository from fedcode.models import Service from fedcode.models import Vulnerability +from fedcode.pipes import utils logger = logging.getLogger(__name__) @@ -33,7 +33,7 @@ class Importer: def run(self): repo = self.repo_obj.git_repo_obj - latest_commit_hash = repo.heads.master.commit.hexsha + latest_commit_hash = repo.head.commit.hexsha latest_commit = repo.commit(latest_commit_hash) if self.repo_obj.last_imported_commit: last_imported_commit = repo.commit(self.repo_obj.last_imported_commit) @@ -43,12 +43,12 @@ def run(self): # Diff between empty trees and last_imported_commit diffs = latest_commit.diff("4b825dc642cb6eb9a060e54bf8d69288fbee4904", R=True) - if repo.heads.master.commit.hexsha == self.repo_obj.last_imported_commit: + if repo.head.commit.hexsha == self.repo_obj.last_imported_commit: logger.error("Nothing to import!") return for diff in diffs: - if not diff.a_path.endswith(".yml"): + if not diff.a_path.endswith(".yaml"): continue if diff.a_path.startswith("."): @@ -118,7 +118,7 @@ def pkg_handler(change_type, default_service, yaml_data_a_blob, yaml_data_b_blob pkg, _ = Package.objects.get_or_create(purl=package, service=default_service) for version in yaml_data_b_blob.get("versions", []): - create_note(pkg, version) + utils.create_note(pkg, version) elif change_type == "M": old_package = yaml_data_a_blob.get("package") @@ -132,10 +132,10 @@ def pkg_handler(change_type, default_service, yaml_data_a_blob, yaml_data_b_blob yaml_data_a_blob.get("versions", []), yaml_data_b_blob.get("versions", []) ): if version_b and not version_a: - create_note(pkg, version_b) + utils.create_note(pkg, version_b) if version_a and not version_b: - delete_note(pkg, version_a) + utils.delete_note(pkg, version_a) if version_a and version_b: note = Note.objects.get(acct=pkg.acct, content=saneyaml.dump(version_a)) @@ -156,30 +156,5 @@ def pkg_handler(change_type, default_service, yaml_data_a_blob, yaml_data_b_blob package = yaml_data_a_blob.get("package") pkg = Package.objects.get(purl=package, service=default_service) for version in yaml_data_a_blob.get("versions", []): - delete_note(pkg, version) + utils.delete_note(pkg, version) pkg.delete() - - -def create_note(pkg, version): - note, _ = Note.objects.get_or_create(acct=pkg.acct, content=saneyaml.dump(version)) - pkg.notes.add(note) - create_activity = CreateActivity(actor=pkg.to_ap, object=note.to_ap) - Activity.federate( - targets=pkg.followers_inboxes, - body=create_activity.to_ap(), - key_id=pkg.key_id, - ) - - -def delete_note(pkg, version): - note = Note.objects.get(acct=pkg.acct, content=saneyaml.dump(version)) - note_ap = note.to_ap - note.delete() - pkg.notes.remove(note) - - deleted_activity = DeleteActivity(actor=pkg.to_ap, object=note_ap) - Activity.federate( - targets=pkg.followers_inboxes, - body=deleted_activity.to_ap, - key_id=pkg.key_id, - ) From 76aa5daf4e4b68665df9672552e8e13ef5949f70 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 29 Nov 2024 23:32:26 +0530 Subject: [PATCH 02/14] Fix the note url Signed-off-by: Keshav Priyadarshi --- federatedcode/urls.py | 2 +- tests/test_utils.py | 8 +++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/federatedcode/urls.py b/federatedcode/urls.py index 97d4d3a..a059387 100644 --- a/federatedcode/urls.py +++ b/federatedcode/urls.py @@ -82,7 +82,7 @@ redirect_vulnerability, name="vulnerability-page", ), - path("notes/", NoteView.as_view(), name="note-page"), + path("notes/", NoteView.as_view(), name="note-page"), path("api/v0/users/@", UserProfile.as_view(), name="user-ap-profile"), path( "api/v0/purls/@/", diff --git a/tests/test_utils.py b/tests/test_utils.py index bb9371b..aead72e 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -74,11 +74,9 @@ def test_full_reverse(): def test_full_resolve(): - assert full_resolve(f"https://127.0.0.1:8000/notes/7e676ad1-995d-405c-a829-cb39813c74e5") == ( - {"note_id": "7e676ad1-995d-405c-a829-cb39813c74e5"}, - "note-page", - ) - + result_args, result_url_name = full_resolve(f"https://127.0.0.1:8000/notes/7e676ad1-995d-405c-a829-cb39813c74e5") + assert "7e676ad1-995d-405c-a829-cb39813c74e5" == str(result_args['uuid']) + assert "note-page" == result_url_name def test_check_purl_actor(): assert check_purl_actor("pkg:maven/org.apache.logging") From 2908673380a7dfa0b4a3fbbdae42f5747fa7daee Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 29 Nov 2024 23:33:24 +0530 Subject: [PATCH 03/14] Use uuid to map note page Signed-off-by: Keshav Priyadarshi --- fedcode/activitypub.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedcode/activitypub.py b/fedcode/activitypub.py index d2945a9..427b1d6 100644 --- a/fedcode/activitypub.py +++ b/fedcode/activitypub.py @@ -79,7 +79,7 @@ "purl-ap-profile": "purl_string", "review-page": "review_id", "repository-page": "repository_id", - "note-page": "note_id", + "note-page": "uuid", "vulnerability-page": "vulnerability_id", } From 12c30d3e2d61efa58d4eaf77f07354eebd672458 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 29 Nov 2024 23:34:25 +0530 Subject: [PATCH 04/14] Log the full traceback on error Signed-off-by: Keshav Priyadarshi --- fedcode/management/commands/tasks.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/fedcode/management/commands/tasks.py b/fedcode/management/commands/tasks.py index 0c5dc13..77ad56d 100644 --- a/fedcode/management/commands/tasks.py +++ b/fedcode/management/commands/tasks.py @@ -6,6 +6,8 @@ # See https://github.com/nexB/federatedcode for support or download. # See https://aboutcode.org for more information about AboutCode.org OSS projects. # +from traceback import format_exc as traceback_format_exc + from django.core.management.base import BaseCommand from django.core.management.base import CommandError @@ -29,7 +31,9 @@ def sync_task(): importer.run() sync_r.done = True except Exception as e: - sync_r.error_message = e + sync_r.error_message = ( + f"Failed to sync {sync_r.repo!r} {e!r} \n {traceback_format_exc()}" + ) finally: sync_r.save() From 6d01e097931623aaa4355777c041447844db3aed Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Fri, 29 Nov 2024 23:35:41 +0530 Subject: [PATCH 05/14] Add pipeline to advertise scancode.io scans Signed-off-by: Keshav Priyadarshi --- fedcode/pipelines/__init__.py | 97 +++++++++++++++++++ fedcode/pipelines/sync_scancode_scans.py | 113 +++++++++++++++++++++++ fedcode/pipes/utils.py | 74 +++++++++++++++ requirements.txt | 1 + setup.cfg | 12 ++- 5 files changed, 295 insertions(+), 2 deletions(-) create mode 100644 fedcode/pipelines/__init__.py create mode 100644 fedcode/pipelines/sync_scancode_scans.py create mode 100644 fedcode/pipes/utils.py diff --git a/fedcode/pipelines/__init__.py b/fedcode/pipelines/__init__.py new file mode 100644 index 0000000..72105a2 --- /dev/null +++ b/fedcode/pipelines/__init__.py @@ -0,0 +1,97 @@ +# +# Copyright (c) nexB Inc. and others. All rights reserved. +# FederatedCode 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/federatedcode for support or download. +# See https://aboutcode.org for more information about AboutCode.org OSS projects. +# + +import logging +from datetime import datetime +from datetime import timezone +from timeit import default_timer as timer + +from aboutcode.pipeline import BasePipeline +from aboutcode.pipeline import humanize_time + +module_logger = logging.getLogger(__name__) + + +class classproperty(object): + def __init__(self, fget): + self.fget = fget + + def __get__(self, owner_self, owner_cls): + return self.fget(owner_cls) + + +class FederatedCodePipeline(BasePipeline): + pipeline_id = None # Unique Pipeline ID + + def on_failure(self): + """ + Tasks to run in the event that pipeline execution fails. + + Implement cleanup or other tasks that need to be performed + on pipeline failure, such as: + - Removing cloned repositories. + - Deleting downloaded archives. + """ + pass + + def execute(self): + """Execute each steps in the order defined on this pipeline class.""" + self.log(f"Pipeline [{self.pipeline_name}] starting") + + steps = self.pipeline_class.get_steps(groups=self.selected_groups) + steps_count = len(steps) + pipeline_start_time = timer() + + for current_index, step in enumerate(steps, start=1): + step_name = step.__name__ + + if self.selected_steps and step_name not in self.selected_steps: + self.log(f"Step [{step_name}] skipped") + continue + + self.set_current_step(f"{current_index}/{steps_count} {step_name}") + self.log(f"Step [{step_name}] starting") + step_start_time = timer() + + try: + step(self) + except Exception as exception: + self.log("Pipeline failed") + on_failure_start_time = timer() + self.log(f"Running [on_failure] tasks") + self.on_failure() + on_failure_run_time = timer() - on_failure_start_time + self.log(f"Completed [on_failure] tasks in {humanize_time(on_failure_run_time)}") + + return 1, self.output_from_exception(exception) + + step_run_time = timer() - step_start_time + self.log(f"Step [{step_name}] completed in {humanize_time(step_run_time)}") + + self.set_current_step("") # Reset the `current_step` field on completion + pipeline_run_time = timer() - pipeline_start_time + self.log(f"Pipeline completed in {humanize_time(pipeline_run_time)}") + + return 0, "" + + def log(self, message, level=logging.INFO): + """Log the given `message` to the current module logger and execution_log.""" + now_local = datetime.now(timezone.utc).astimezone() + timestamp = now_local.strftime("%Y-%m-%d %H:%M:%S.%f")[:-3] + message = f"{timestamp} {message}" + module_logger.log(level, message) + self.append_to_log(message) + + @classproperty + def pipeline_id(cls): + """Return unique pipeline_id set in cls.pipeline_id""" + + if cls.pipeline_id is None or cls.pipeline_id == "": + raise NotImplementedError("pipeline_id is not defined or is empty") + return cls.pipeline_id diff --git a/fedcode/pipelines/sync_scancode_scans.py b/fedcode/pipelines/sync_scancode_scans.py new file mode 100644 index 0000000..e6211a8 --- /dev/null +++ b/fedcode/pipelines/sync_scancode_scans.py @@ -0,0 +1,113 @@ +# +# Copyright (c) nexB Inc. and others. All rights reserved. +# FederatedCode 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/federatedcode for support or download. +# See https://aboutcode.org for more information about AboutCode.org OSS projects. +# + +from pathlib import Path +from traceback import format_exc as traceback_format_exc + +from aboutcode.pipeline import LoopProgress + +from fedcode.models import Package +from fedcode.models import Repository +from fedcode.pipelines import FederatedCodePipeline +from fedcode.pipes import utils + + +class SyncScanCodeScans(FederatedCodePipeline): + """Sync Package scans from FederatedCode git repositories.""" + + pipeline_id = "sync_scancode_scans" + + @classmethod + def steps(cls): + return ( + cls.get_git_repos, + cls.sync_scan_repositories, + ) + + def get_git_repos(self): + self.git_repos = Repository.objects.all() + + def sync_scan_repositories(self): + repositories_count = self.git_repos.count() + self.log(f"Syncing package scans from {repositories_count:,d} repositories") + + synced_package_scan_count = 0 + progress = LoopProgress(total_iterations=repositories_count, logger=self.log) + for repo in progress.iter(self.git_repos.iterator(chunk_size=2000)): + repository, _ = Repository.objects.get_or_create(url=repo) + repository.git_repo_obj.remotes.origin.pull() + synced_package_scan_count += sync_scancodeio_scan( + repository=repository, + logger=self.log, + ) + + self.log(f"Successfully synced {synced_package_scan_count:,d} package scans") + + +def sync_scancodeio_scan(repository, logger): + repo = repository.git_repo_obj + latest_commit_hash = repo.head.commit.hexsha + latest_commit = repo.commit(latest_commit_hash) + + if last_commit_hash := repository.last_imported_commit: + last_imported_commit = repo.commit(last_commit_hash) + diffs = last_imported_commit.diff(latest_commit) + scans = [item for item in diffs if item.a_path.endswith("scancodeio.json")] + scan_count = sync_scan_from_diff(diffs=scans, repository=repository, logger=logger) + else: + scan_count = sync_all_scan(repository=repository, logger=logger) + + repository.last_imported_commit = latest_commit_hash + repository.save() + + return scan_count + + +def sync_scan_from_diff(diffs, repository, logger): + scans = [ + item + for item in diffs + if item.a_path.endswith("scancodeio.json") or item.b_path.endswith("scancodeio.json") + ] + scan_count = len(scans) + + logger(f"Syncing {scan_count:,d} package scan from {repository.url}") + progress = LoopProgress(total_iterations=scan_count, logger=logger) + for scan in progress.iter(scans): + change_type = scan.change_type + if change_type in ("A", "M", "R"): + scan_path = scan.b_path + action = utils.create_note + elif change_type == "D": + scan_path = scan.a_path + action = utils.delete_note + + purl = utils.package_metadata_path_to_purl(path=Path(scan_path), version=False) + package, _ = Package.objects.get_or_create(purl=str(purl), service=repository.admin) + note = utils.get_scan_note(path=Path(scan_path)) + action(pkg=package, note_dict=note) + return scan_count + + +def sync_all_scan(repository, logger): + repo = repository.git_repo_obj + root = Path(repo.working_dir) + scan_count = sum(1 for _ in root.rglob("scancodeio.json")) + + scans = root.rglob("scancodeio.json") + logger(f"Syncing {scan_count:,d} package scan from {repo.remotes.origin.url}") + + progress = LoopProgress(total_iterations=scan_count, logger=logger) + for scan in progress.iter(scans): + relative_path = scan.relative_to(root) + purl = utils.package_metadata_path_to_purl(relative_path, version=False) + package, _ = Package.objects.get_or_create(purl=str(purl), service=repository.admin) + note = utils.get_scan_note(path=relative_path) + utils.create_note(pkg=package, note_dict=note) + return scan_count diff --git a/fedcode/pipes/utils.py b/fedcode/pipes/utils.py new file mode 100644 index 0000000..f82bd56 --- /dev/null +++ b/fedcode/pipes/utils.py @@ -0,0 +1,74 @@ +# +# Copyright (c) nexB Inc. and others. All rights reserved. +# FederatedCode 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/federatedcode for support or download. +# See https://aboutcode.org for more information about AboutCode.org OSS projects. +# + +import saneyaml +from packageurl import PackageURL + +from fedcode.activitypub import Activity +from fedcode.activitypub import CreateActivity +from fedcode.activitypub import DeleteActivity +from fedcode.models import Note + + +def create_note(pkg, note_dict): + note, _ = Note.objects.get_or_create(acct=pkg.acct, content=saneyaml.dump(note_dict)) + pkg.notes.add(note) + create_activity = CreateActivity(actor=pkg.to_ap, object=note.to_ap) + Activity.federate( + targets=pkg.followers_inboxes, + body=create_activity.to_ap(), + key_id=pkg.key_id, + ) + + +def delete_note(pkg, note_dict): + note = Note.objects.get(acct=pkg.acct, content=saneyaml.dump(note_dict)) + note_ap = note.to_ap + note.delete() + pkg.notes.remove(note) + + deleted_activity = DeleteActivity(actor=pkg.to_ap, object=note_ap) + Activity.federate( + targets=pkg.followers_inboxes, + body=deleted_activity.to_ap, + key_id=pkg.key_id, + ) + + +def package_metadata_path_to_purl(path, version=True): + """ + Return PURL from relative metadata path. + + + """ + parts = path.parts + if len(parts) < 4: + ValueError("Not a valid package metadata path.") + + purl = f"pkg:{'/'.join(parts[:-2])}" + if version: + purl = f"{purl}@{parts[-2]}" + return PackageURL.from_string(purl=purl) + + +def get_scan_note(path): + """Return Note for Package scan.""" + purl = package_metadata_path_to_purl(path=path) + + # TODO: Use tool-alias.yml to get tool for corresponding tool + # for scan https://github.com/aboutcode-org/federatedcode/issues/24 + return { + "purl": str(purl), + "scans": [ + { + "tool": "pkg:pypi/scancode-toolkit", + "file_name": "scancodeio.json", + }, + ], + } diff --git a/requirements.txt b/requirements.txt index fe08d05..a6d9e4d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ +aboutcode.pipeline==0.1.0 aboutcode-toolkit==10.1.0 alabaster==0.7.13 anyio==4.1.0 diff --git a/setup.cfg b/setup.cfg index 50c53ca..55c739e 100644 --- a/setup.cfg +++ b/setup.cfg @@ -51,7 +51,6 @@ install_requires = django-rest-framework>=0.1.0 djangorestframework>=3.14.0 django-environ>=0.10.0 - django-ninja>=1.2.1 gunicorn>=21.2.0 GitPython>=3.1.31 requests>=2.31.0 @@ -59,7 +58,6 @@ install_requires = # httpx>=0.24.1 http-message-signatures>=0.4.4 - pydantic>=2.8.2 anyio>=4.1.0 asgiref>=3.7.2 @@ -85,7 +83,10 @@ install_requires = packageurl-python>=0.11.1 packaging>=23.1 pathspec>=0.11.2 + + #?? Pillow>=9.5.0 + platformdirs>=3.10.0 pluggy>=1.0.0 pycparser>=2.21 @@ -105,6 +106,13 @@ install_requires = unidiff>=0.7.5 urllib3>=2.0.3 wrapt>=1.15.0 + + #schema + django-ninja>=1.2.1 + pydantic>=2.8.2 + + #pipeline + aboutcode.pipeline>=0.1.0 [options.extras_require] From 8d3cceca1fe2f9626821c11ace5c6bc55d562aa7 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 21:54:19 +0530 Subject: [PATCH 06/14] Migrate vulnerability sync to the pipeline Signed-off-by: Keshav Priyadarshi --- .../sync_vulnerablecode.py} | 123 ++++++++++-------- 1 file changed, 72 insertions(+), 51 deletions(-) rename fedcode/{importer.py => pipelines/sync_vulnerablecode.py} (55%) diff --git a/fedcode/importer.py b/fedcode/pipelines/sync_vulnerablecode.py similarity index 55% rename from fedcode/importer.py rename to fedcode/pipelines/sync_vulnerablecode.py index 7525d8a..9cf691f 100644 --- a/fedcode/importer.py +++ b/fedcode/pipelines/sync_vulnerablecode.py @@ -9,83 +9,104 @@ import logging import os.path -from dataclasses import dataclass from itertools import zip_longest import saneyaml +from aboutcode.pipeline import LoopProgress from fedcode.activitypub import Activity from fedcode.activitypub import UpdateActivity from fedcode.models import Note from fedcode.models import Package from fedcode.models import Repository -from fedcode.models import Service from fedcode.models import Vulnerability +from fedcode.pipelines import FederatedCodePipeline from fedcode.pipes import utils -logger = logging.getLogger(__name__) +class SyncVulnerableCode(FederatedCodePipeline): + """Sync VulnerableCode data from FederatedCode git repositories.""" -@dataclass -class Importer: - repo_obj: Repository - default_service: Service + pipeline_id = "sync_vulnerablecode" - def run(self): - repo = self.repo_obj.git_repo_obj - latest_commit_hash = repo.head.commit.hexsha - latest_commit = repo.commit(latest_commit_hash) - if self.repo_obj.last_imported_commit: - last_imported_commit = repo.commit(self.repo_obj.last_imported_commit) - diffs = last_imported_commit.diff(latest_commit) - else: - last_imported_commit = None - # Diff between empty trees and last_imported_commit - diffs = latest_commit.diff("4b825dc642cb6eb9a060e54bf8d69288fbee4904", R=True) - - if repo.head.commit.hexsha == self.repo_obj.last_imported_commit: - logger.error("Nothing to import!") - return + @classmethod + def steps(cls): + return ( + cls.get_git_repos, + cls.sync_vulnerablecode_repositories, + ) - for diff in diffs: - if not diff.a_path.endswith(".yaml"): - continue + def get_git_repos(self): + self.git_repos = Repository.objects.all() - if diff.a_path.startswith("."): - continue + def sync_vulnerablecode_repositories(self): + repositories_count = self.git_repos.count() + self.log(f"Syncing vulnerability from {repositories_count:,d} repositories") - yaml_data_a_blob = ( - saneyaml.load(diff.a_blob.data_stream.read()) if diff.a_blob else None - ) - yaml_data_b_blob = ( - saneyaml.load(diff.b_blob.data_stream.read()) if diff.b_blob else None + progress = LoopProgress(total_iterations=repositories_count, logger=self.log) + for repository in progress.iter(self.git_repos.iterator(chunk_size=2000)): + repository.git_repo_obj.remotes.origin.pull() + sync_vulnerabilities( + repository=repository, + logger=self.log, ) - if os.path.split(diff.a_path)[1].startswith("VCID") or os.path.split(diff.b_path)[ - 1 - ].startswith("VCID"): - vul_handler( - diff.change_type, - self.repo_obj, - yaml_data_a_blob, - yaml_data_b_blob, - diff.a_path, - diff.b_path, - ) - continue - pkg_handler( +def sync_vulnerabilities(repository, logger): + repo = repository.git_repo_obj + latest_commit_hash = repo.head.commit.hexsha + latest_commit = repo.commit(latest_commit_hash) + if repository.last_imported_commit: + last_imported_commit = repo.commit(repository.last_imported_commit) + diffs = last_imported_commit.diff(latest_commit) + else: + last_imported_commit = None + # Diff between empty trees and last_imported_commit + diffs = latest_commit.diff("4b825dc642cb6eb9a060e54bf8d69288fbee4904", R=True) + + if repo.head.commit.hexsha == repository.last_imported_commit: + logger("Nothing to import!", level=logging.ERROR) + return + + diff_count = len(diffs) + + logger(f"Syncing {diff_count:,d} vulnerability scan from {repository.url}") + progress = LoopProgress(total_iterations=diff_count, logger=logger) + for diff in progress.iter(diffs): + if not diff.a_path.endswith(".yaml"): + continue + + if diff.a_path.startswith("."): + continue + + yaml_data_a_blob = saneyaml.load(diff.a_blob.data_stream.read()) if diff.a_blob else None + yaml_data_b_blob = saneyaml.load(diff.b_blob.data_stream.read()) if diff.b_blob else None + + if os.path.split(diff.a_path)[1].startswith("VCID") or os.path.split(diff.b_path)[ + 1 + ].startswith("VCID"): + vul_handler( diff.change_type, - self.default_service, + repository, yaml_data_a_blob, yaml_data_b_blob, + logger, ) - self.repo_obj.last_imported_commit = latest_commit_hash - self.repo_obj.save() - logger.info("The Importer run successfully") + continue + + pkg_handler( + diff.change_type, + repository.admin, + yaml_data_a_blob, + yaml_data_b_blob, + ) + break + repository.last_imported_commit = latest_commit_hash + repository.save() + logger("The Importer run successfully") -def vul_handler(change_type, repo_obj, yaml_data_a_blob, yaml_data_b_blob, a_path, b_path): +def vul_handler(change_type, repo_obj, yaml_data_a_blob, yaml_data_b_blob, logger): if change_type == "A": # A for added paths Vulnerability.objects.get_or_create( id=yaml_data_b_blob.get("vulnerability_id"), @@ -108,7 +129,7 @@ def vul_handler(change_type, repo_obj, yaml_data_a_blob, yaml_data_b_blob, a_pat ) vul.delete() else: - logger.error(f"Invalid Vulnerability File") + logger(f"Invalid Vulnerability File", level=logging.ERROR) def pkg_handler(change_type, default_service, yaml_data_a_blob, yaml_data_b_blob): From b81fc6e7ee638480f03ad3757196b03c2de95cca Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 21:57:34 +0530 Subject: [PATCH 07/14] Do not create repo in scan sync pipeline Signed-off-by: Keshav Priyadarshi --- fedcode/pipelines/sync_scancode_scans.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fedcode/pipelines/sync_scancode_scans.py b/fedcode/pipelines/sync_scancode_scans.py index e6211a8..df7c475 100644 --- a/fedcode/pipelines/sync_scancode_scans.py +++ b/fedcode/pipelines/sync_scancode_scans.py @@ -39,8 +39,7 @@ def sync_scan_repositories(self): synced_package_scan_count = 0 progress = LoopProgress(total_iterations=repositories_count, logger=self.log) - for repo in progress.iter(self.git_repos.iterator(chunk_size=2000)): - repository, _ = Repository.objects.get_or_create(url=repo) + for repository in progress.iter(self.git_repos.iterator(chunk_size=2000)): repository.git_repo_obj.remotes.origin.pull() synced_package_scan_count += sync_scancodeio_scan( repository=repository, From e0b1d95c42c8e925e1782cc36c5f77ea0ab7ebb8 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 22:54:57 +0530 Subject: [PATCH 08/14] Test sync_vulnerablecode pipeline Signed-off-by: Keshav Priyadarshi --- tests/{test_importer.py => pipelines/test_sync_vulnerablecode.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename tests/{test_importer.py => pipelines/test_sync_vulnerablecode.py} (100%) diff --git a/tests/test_importer.py b/tests/pipelines/test_sync_vulnerablecode.py similarity index 100% rename from tests/test_importer.py rename to tests/pipelines/test_sync_vulnerablecode.py From 3db0a98f57745edf88e16b1dfdd14fb02c928ed7 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 23:00:45 +0530 Subject: [PATCH 09/14] Refactor federate task Signed-off-by: Keshav Priyadarshi --- .../commands/{tasks.py => federate.py} | 32 ++----------------- fedcode/pipelines/sync_vulnerablecode.py | 2 +- tests/pipelines/test_sync_vulnerablecode.py | 26 +++++++-------- 3 files changed, 16 insertions(+), 44 deletions(-) rename fedcode/management/commands/{tasks.py => federate.py} (55%) diff --git a/fedcode/management/commands/tasks.py b/fedcode/management/commands/federate.py similarity index 55% rename from fedcode/management/commands/tasks.py rename to fedcode/management/commands/federate.py index 77ad56d..0046af2 100644 --- a/fedcode/management/commands/tasks.py +++ b/fedcode/management/commands/federate.py @@ -6,38 +6,16 @@ # See https://github.com/nexB/federatedcode for support or download. # See https://aboutcode.org for more information about AboutCode.org OSS projects. # + from traceback import format_exc as traceback_format_exc from django.core.management.base import BaseCommand -from django.core.management.base import CommandError -from fedcode.importer import Importer from fedcode.models import FederateRequest -from fedcode.models import SyncRequest from fedcode.signatures import FEDERATEDCODE_PRIVATE_KEY from fedcode.signatures import HttpSignature -def sync_task(): - """ - sync_task is a task to run the Importer and save the status - """ - for sync_r in SyncRequest.objects.all().order_by("created_at"): - if not sync_r.done: - try: - repo = sync_r.repo - repo.git_repo_obj.remotes.origin.pull() - importer = Importer(repo, repo.admin) - importer.run() - sync_r.done = True - except Exception as e: - sync_r.error_message = ( - f"Failed to sync {sync_r.repo!r} {e!r} \n {traceback_format_exc()}" - ) - finally: - sync_r.save() - - def send_fed_req_task(): """ send_fed_req_task is a task to send the http signed request to the target and save the status of the request @@ -57,11 +35,5 @@ def send_fed_req_task(): class Command(BaseCommand): - def add_arguments(self, parser): - parser.add_argument("task", choices=["sync", "federate"]) - def handle(self, *args, **options): - if options["task"] == "sync": - sync_task() - elif options["task"] == "federate": - send_fed_req_task() + send_fed_req_task() diff --git a/fedcode/pipelines/sync_vulnerablecode.py b/fedcode/pipelines/sync_vulnerablecode.py index 9cf691f..bfb3462 100644 --- a/fedcode/pipelines/sync_vulnerablecode.py +++ b/fedcode/pipelines/sync_vulnerablecode.py @@ -100,7 +100,7 @@ def sync_vulnerabilities(repository, logger): yaml_data_a_blob, yaml_data_b_blob, ) - break + repository.last_imported_commit = latest_commit_hash repository.save() logger("The Importer run successfully") diff --git a/tests/pipelines/test_sync_vulnerablecode.py b/tests/pipelines/test_sync_vulnerablecode.py index 221377b..5ccc016 100644 --- a/tests/pipelines/test_sync_vulnerablecode.py +++ b/tests/pipelines/test_sync_vulnerablecode.py @@ -10,12 +10,12 @@ from django.contrib.auth.models import User from fedcode_test_utils import mute_post_save_signal # NOQA -from fedcode.importer import Importer from fedcode.models import Note from fedcode.models import Package from fedcode.models import Repository from fedcode.models import Service from fedcode.models import Vulnerability +from fedcode.pipelines.sync_vulnerablecode import SyncVulnerableCode @pytest.fixture @@ -45,8 +45,8 @@ def repo(db, service, mute_post_save_signal): def test_simple_importer(service, repo, mute_post_save_signal): # just add all packages and vulnerabilities repo.path = "/home/ziad/vul-sample/repo1" - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() assert Note.objects.count() > 1 assert Vulnerability.objects.count() > 1 @@ -59,8 +59,8 @@ def test_simple_importer(service, repo, mute_post_save_signal): last_imported_commit = repo.last_imported_commit # Run importer again without add any new data - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() assert note_n == Note.objects.count() assert vul_n == Vulnerability.objects.count() @@ -70,8 +70,8 @@ def test_simple_importer(service, repo, mute_post_save_signal): # Edit last_imported_commit repo.last_imported_commit = "c8de84af0a7c11bf151e96142ce711824648ec41" repo.save() - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() @pytest.mark.skip(reason="Need a real git repo to test the importer") @@ -79,8 +79,8 @@ def test_simple_importer(service, repo, mute_post_save_signal): def test_complex_importer(service, repo, mute_post_save_signal): # repo with 1 commit repo.path = "/home/ziad/vul-sample/repo1" - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() assert Note.objects.count() > 1 assert Vulnerability.objects.count() > 1 @@ -95,8 +95,8 @@ def test_complex_importer(service, repo, mute_post_save_signal): # Run importer again without add any new data # the same repo with 2 commit ( after pull ) repo.path = "/home/ziad/vul-sample/repo2" - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() assert note_n > Note.objects.count() assert vul_n > Vulnerability.objects.count() @@ -105,5 +105,5 @@ def test_complex_importer(service, repo, mute_post_save_signal): # Edit last_imported_commit repo.last_imported_commit = "9c3ccee39baef6017d9152367402de9909eadd72" repo.save() - importer = Importer(repo, service) - importer.run() + importer = SyncVulnerableCode() + importer.execute() From 0b0efd9b357ea6e47a3d8bd4e6878b70067f52af Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 23:01:40 +0530 Subject: [PATCH 10/14] Add doctest to package_metadata_path_to_purl Signed-off-by: Keshav Priyadarshi --- fedcode/pipes/utils.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/fedcode/pipes/utils.py b/fedcode/pipes/utils.py index f82bd56..ee8cfdf 100644 --- a/fedcode/pipes/utils.py +++ b/fedcode/pipes/utils.py @@ -45,7 +45,10 @@ def package_metadata_path_to_purl(path, version=True): """ Return PURL from relative metadata path. - + >>> from pathlib import Path + >>> path=Path("npm/@angular/animation/3.0.1/scancodeio.json") + >>> purl=package_metadata_path_to_purl(path) + >>> assert "pkg:npm/%40angular/animation@3.0.1" == str(purl) """ parts = path.parts if len(parts) < 4: From 76d83dbf47c48f5676c8f5ed892bd12850d16a44 Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 23:02:39 +0530 Subject: [PATCH 11/14] Configure the logging for pipelines Signed-off-by: Keshav Priyadarshi --- federatedcode/settings.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/federatedcode/settings.py b/federatedcode/settings.py index 2231c52..8b68ac6 100644 --- a/federatedcode/settings.py +++ b/federatedcode/settings.py @@ -38,7 +38,6 @@ # SECURITY WARNING: don't run with debug turned on in production DEBUG = env.bool("FEDERATEDCODE_DEBUG", default=False) - ############################################ # Federation settings AP_CONTENT_TYPE = "application/activity+json" @@ -200,11 +199,6 @@ }, }, "loggers": { - "scanpipe": { - "handlers": ["null"] if IS_TESTS else ["console"], - "level": FEDERATEDCODE_LOG_LEVEL, - "propagate": False, - }, "django": { "handlers": ["null"] if IS_TESTS else ["console"], "propagate": False, @@ -213,6 +207,11 @@ "django.db.backends": { "level": FEDERATEDCODE_LOG_LEVEL, }, + "fedcode.pipelines": { + "handlers": ["null"] if IS_TESTS else ["console"], + "level": FEDERATEDCODE_LOG_LEVEL, + "propagate": False, + }, }, } From 42f3ca19be11eef81898c45c85a772928e3a6baf Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Mon, 2 Dec 2024 23:03:28 +0530 Subject: [PATCH 12/14] Add command to sync pipelines Signed-off-by: Keshav Priyadarshi --- fedcode/management/commands/sync.py | 83 +++++++++++++++++++++++++++++ tests/test_utils.py | 7 ++- 2 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 fedcode/management/commands/sync.py diff --git a/fedcode/management/commands/sync.py b/fedcode/management/commands/sync.py new file mode 100644 index 0000000..2ae632f --- /dev/null +++ b/fedcode/management/commands/sync.py @@ -0,0 +1,83 @@ +# +# Copyright (c) nexB Inc. and others. All rights reserved. +# FederatedCode 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/federatedcode for support or download. +# See https://aboutcode.org for more information about AboutCode.org OSS projects. +# + +from django.core.management.base import BaseCommand +from django.core.management.base import CommandError + +from fedcode.pipelines import sync_scancode_scans +from fedcode.pipelines import sync_vulnerablecode + +SYNC_REGISTRY = [ + sync_scancode_scans.SyncScanCodeScans, + sync_vulnerablecode.SyncVulnerableCode, +] + +SYNC_REGISTRY = {x.pipeline_id: x for x in SYNC_REGISTRY} + + +class Command(BaseCommand): + help = "Sync metadata from git repository" + + def add_arguments(self, parser): + parser.add_argument( + "--list", + action="store_true", + help="List available pipelines", + ) + parser.add_argument("--all", action="store_true", help="Sync all repo data.") + + parser.add_argument("pipelines", nargs="*", help="Pipeline ID") + + def handle(self, *args, **options): + try: + if options["list"]: + self.list_pipelines() + elif options["all"]: + self.import_data(pipelines=SYNC_REGISTRY.values()) + else: + pipelines = options["pipelines"] + if not pipelines: + raise CommandError( + 'Please provide at least one pipeline to execute or use "--all".' + ) + self.import_data(validate_pipelines(pipelines)) + except KeyboardInterrupt: + raise CommandError("Keyboard interrupt received. Stopping...") + + def list_pipelines(self): + self.stdout.write("Metadata can be synced from the following pipelines:") + self.stdout.write("\n".join(SYNC_REGISTRY)) + + def import_data(self, pipelines): + """Execute the given ``pipeline``.""" + failed_pipelines = [] + + for pipeline in pipelines: + self.stdout.write(f"Syncing data using {pipeline.pipeline_id}") + status, error = pipeline().execute() + if status != 0: + self.stdout.write(error) + failed_pipelines.append(pipeline.pipeline_id) + + if failed_pipelines: + raise CommandError(f"{len(failed_pipelines)} failed!: {','.join(failed_pipelines)}") + + +def validate_pipelines(pipelines): + validated_pipelines = [] + unknown_pipelines = [] + for pipeline in pipelines: + try: + validated_pipelines.append(SYNC_REGISTRY[pipeline]) + except KeyError: + unknown_pipelines.append(pipeline) + if unknown_pipelines: + raise CommandError(f"Unknown pipelines: {unknown_pipelines}") + + return validated_pipelines diff --git a/tests/test_utils.py b/tests/test_utils.py index aead72e..5b37c59 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -74,9 +74,12 @@ def test_full_reverse(): def test_full_resolve(): - result_args, result_url_name = full_resolve(f"https://127.0.0.1:8000/notes/7e676ad1-995d-405c-a829-cb39813c74e5") - assert "7e676ad1-995d-405c-a829-cb39813c74e5" == str(result_args['uuid']) + result_args, result_url_name = full_resolve( + f"https://127.0.0.1:8000/notes/7e676ad1-995d-405c-a829-cb39813c74e5" + ) + assert "7e676ad1-995d-405c-a829-cb39813c74e5" == str(result_args["uuid"]) assert "note-page" == result_url_name + def test_check_purl_actor(): assert check_purl_actor("pkg:maven/org.apache.logging") From 321ad3658fdf4f2927d0581d0af79d82f1a01fcf Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Tue, 3 Dec 2024 18:26:49 +0530 Subject: [PATCH 13/14] Remove unused JSON from /static Signed-off-by: Keshav Priyadarshi --- .../actionscript/actionscript.json | 21 ----------- .../pictogram-gh-pages/alcatraz/alcatraz.json | 22 ------------ .../pictogram-gh-pages/apache/apache.json | 18 ---------- .../pictogram-gh-pages/assembly/assembly.json | 27 -------------- .../static/pictogram-gh-pages/atom/atom.json | 32 ----------------- .../pictogram-gh-pages/biicode/biicode.json | 31 ---------------- .../pictogram-gh-pages/bower/bower.json | 34 ------------------ .../static/pictogram-gh-pages/c#/c#.json | 27 -------------- .../static/pictogram-gh-pages/c++/c++.json | 28 --------------- .../static/pictogram-gh-pages/c/c.json | 27 -------------- .../pictogram-gh-pages/cargo/cargo.json | 31 ---------------- .../pictogram-gh-pages/carthage/carthage.json | 33 ----------------- .../pictogram-gh-pages/clojars/clojars.json | 31 ---------------- .../pictogram-gh-pages/clojure/clojure.json | 34 ------------------ .../cocoapods/cocoapods.json | 35 ------------------- .../coffeescript/coffeescript.json | 18 ---------- .../static/pictogram-gh-pages/cpan/cpan.json | 27 -------------- .../static/pictogram-gh-pages/cran/cran.json | 28 --------------- .../pictogram-gh-pages/crystal/crystal.json | 33 ----------------- .../static/pictogram-gh-pages/css/css.json | 18 ---------- .../static/pictogram-gh-pages/d/d.json | 34 ------------------ .../static/pictogram-gh-pages/dart/dart.json | 35 ------------------- .../static/pictogram-gh-pages/dub/dub.json | 18 ---------- .../pictogram-gh-pages/elixir/elixir.json | 34 ------------------ .../static/pictogram-gh-pages/elm/elm.json | 34 ------------------ .../pictogram-gh-pages/emacs/emacs.json | 26 -------------- .../pictogram-gh-pages/erlang/erlang.json | 26 -------------- .../static/pictogram-gh-pages/f#/f#.json | 35 ------------------- .../pictogram-gh-pages/fortran/fortran.json | 26 -------------- .../game maker language.json | 27 -------------- .../static/pictogram-gh-pages/gem/gem.json | 32 ----------------- .../pictogram-gh-pages/golang/golang.json | 35 ------------------- .../pictogram-gh-pages/groovy/groovy.json | 34 ------------------ .../static/pictogram-gh-pages/hack/hack.json | 27 -------------- .../pictogram-gh-pages/hackage/hackage.json | 34 ------------------ .../handlebars/handlebars.json | 27 -------------- .../pictogram-gh-pages/haskell/haskell.json | 34 ------------------ .../static/pictogram-gh-pages/haxe/haxe.json | 28 --------------- .../static/pictogram-gh-pages/hex/hex.json | 33 ----------------- .../pictogram-gh-pages/homebrew/homebrew.json | 32 ----------------- .../static/pictogram-gh-pages/html/html.json | 18 ---------- .../pictogram-gh-pages/inqlude/inqlude.json | 26 -------------- .../static/pictogram-gh-pages/jam/jam.json | 21 ----------- .../static/pictogram-gh-pages/java/java.json | 26 -------------- .../javascript/javascript.json | 35 ------------------- .../pictogram-gh-pages/julia/julia.json | 34 ------------------ .../livescript/livescript.json | 27 -------------- .../static/pictogram-gh-pages/lua/lua.json | 34 ------------------ .../static/pictogram-gh-pages/make/make.json | 27 -------------- .../pictogram-gh-pages/makefile/makefile.json | 27 -------------- .../pictogram-gh-pages/maven/maven.json | 26 -------------- .../pictogram-gh-pages/meteor/meteor.json | 35 ------------------- .../pictogram-gh-pages/nimble/nimble.json | 35 ------------------- .../pictogram-gh-pages/nimrod/nimrod.json | 35 ------------------- .../static/pictogram-gh-pages/npm/npm.json | 34 ------------------ .../pictogram-gh-pages/nuget/nuget.json | 34 ------------------ .../packagist/packagist.json | 34 ------------------ .../static/pictogram-gh-pages/perl/perl.json | 18 ---------- .../pictogram-gh-pages/perl6/perl6.json | 26 -------------- .../static/pictogram-gh-pages/php/php.json | 34 ------------------ .../platformio/platformio.json | 32 ----------------- .../powershell/powershell.json | 35 ------------------- .../static/pictogram-gh-pages/pub/pub.json | 35 ------------------- .../pictogram-gh-pages/puppet/puppet.json | 34 ------------------ .../purescript/purescript.json | 35 ------------------- .../static/pictogram-gh-pages/pypi/pypi.json | 34 ------------------ .../pictogram-gh-pages/python/python.json | 34 ------------------ .../static/pictogram-gh-pages/r/r.json | 28 --------------- .../static/pictogram-gh-pages/ruby/ruby.json | 34 ------------------ .../static/pictogram-gh-pages/rust/rust.json | 34 ------------------ .../pictogram-gh-pages/scala/scala.json | 35 ------------------- .../pictogram-gh-pages/scheme/scheme.json | 25 ------------- .../pictogram-gh-pages/shards/shards.json | 33 ----------------- .../pictogram-gh-pages/sublime/sublime.json | 26 -------------- .../pictogram-gh-pages/swift/swift.json | 26 -------------- .../static/pictogram-gh-pages/tex/tex.json | 28 --------------- .../typescript/typescript.json | 27 -------------- .../wordpress/wordpress.json | 34 ------------------ .../static/pictogram-gh-pages/xml/xml.json | 26 -------------- 79 files changed, 2347 deletions(-) delete mode 100644 federatedcode/static/pictogram-gh-pages/actionscript/actionscript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/alcatraz/alcatraz.json delete mode 100644 federatedcode/static/pictogram-gh-pages/apache/apache.json delete mode 100644 federatedcode/static/pictogram-gh-pages/assembly/assembly.json delete mode 100644 federatedcode/static/pictogram-gh-pages/atom/atom.json delete mode 100644 federatedcode/static/pictogram-gh-pages/biicode/biicode.json delete mode 100644 federatedcode/static/pictogram-gh-pages/bower/bower.json delete mode 100644 federatedcode/static/pictogram-gh-pages/c#/c#.json delete mode 100644 federatedcode/static/pictogram-gh-pages/c++/c++.json delete mode 100644 federatedcode/static/pictogram-gh-pages/c/c.json delete mode 100644 federatedcode/static/pictogram-gh-pages/cargo/cargo.json delete mode 100644 federatedcode/static/pictogram-gh-pages/carthage/carthage.json delete mode 100644 federatedcode/static/pictogram-gh-pages/clojars/clojars.json delete mode 100644 federatedcode/static/pictogram-gh-pages/clojure/clojure.json delete mode 100644 federatedcode/static/pictogram-gh-pages/cocoapods/cocoapods.json delete mode 100644 federatedcode/static/pictogram-gh-pages/coffeescript/coffeescript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/cpan/cpan.json delete mode 100644 federatedcode/static/pictogram-gh-pages/cran/cran.json delete mode 100644 federatedcode/static/pictogram-gh-pages/crystal/crystal.json delete mode 100644 federatedcode/static/pictogram-gh-pages/css/css.json delete mode 100644 federatedcode/static/pictogram-gh-pages/d/d.json delete mode 100644 federatedcode/static/pictogram-gh-pages/dart/dart.json delete mode 100644 federatedcode/static/pictogram-gh-pages/dub/dub.json delete mode 100644 federatedcode/static/pictogram-gh-pages/elixir/elixir.json delete mode 100644 federatedcode/static/pictogram-gh-pages/elm/elm.json delete mode 100644 federatedcode/static/pictogram-gh-pages/emacs/emacs.json delete mode 100644 federatedcode/static/pictogram-gh-pages/erlang/erlang.json delete mode 100644 federatedcode/static/pictogram-gh-pages/f#/f#.json delete mode 100644 federatedcode/static/pictogram-gh-pages/fortran/fortran.json delete mode 100644 federatedcode/static/pictogram-gh-pages/game maker language/game maker language.json delete mode 100644 federatedcode/static/pictogram-gh-pages/gem/gem.json delete mode 100644 federatedcode/static/pictogram-gh-pages/golang/golang.json delete mode 100644 federatedcode/static/pictogram-gh-pages/groovy/groovy.json delete mode 100644 federatedcode/static/pictogram-gh-pages/hack/hack.json delete mode 100644 federatedcode/static/pictogram-gh-pages/hackage/hackage.json delete mode 100644 federatedcode/static/pictogram-gh-pages/handlebars/handlebars.json delete mode 100644 federatedcode/static/pictogram-gh-pages/haskell/haskell.json delete mode 100644 federatedcode/static/pictogram-gh-pages/haxe/haxe.json delete mode 100644 federatedcode/static/pictogram-gh-pages/hex/hex.json delete mode 100644 federatedcode/static/pictogram-gh-pages/homebrew/homebrew.json delete mode 100644 federatedcode/static/pictogram-gh-pages/html/html.json delete mode 100644 federatedcode/static/pictogram-gh-pages/inqlude/inqlude.json delete mode 100644 federatedcode/static/pictogram-gh-pages/jam/jam.json delete mode 100644 federatedcode/static/pictogram-gh-pages/java/java.json delete mode 100644 federatedcode/static/pictogram-gh-pages/javascript/javascript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/julia/julia.json delete mode 100644 federatedcode/static/pictogram-gh-pages/livescript/livescript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/lua/lua.json delete mode 100644 federatedcode/static/pictogram-gh-pages/make/make.json delete mode 100644 federatedcode/static/pictogram-gh-pages/makefile/makefile.json delete mode 100644 federatedcode/static/pictogram-gh-pages/maven/maven.json delete mode 100644 federatedcode/static/pictogram-gh-pages/meteor/meteor.json delete mode 100644 federatedcode/static/pictogram-gh-pages/nimble/nimble.json delete mode 100644 federatedcode/static/pictogram-gh-pages/nimrod/nimrod.json delete mode 100644 federatedcode/static/pictogram-gh-pages/npm/npm.json delete mode 100644 federatedcode/static/pictogram-gh-pages/nuget/nuget.json delete mode 100644 federatedcode/static/pictogram-gh-pages/packagist/packagist.json delete mode 100644 federatedcode/static/pictogram-gh-pages/perl/perl.json delete mode 100644 federatedcode/static/pictogram-gh-pages/perl6/perl6.json delete mode 100644 federatedcode/static/pictogram-gh-pages/php/php.json delete mode 100644 federatedcode/static/pictogram-gh-pages/platformio/platformio.json delete mode 100644 federatedcode/static/pictogram-gh-pages/powershell/powershell.json delete mode 100644 federatedcode/static/pictogram-gh-pages/pub/pub.json delete mode 100644 federatedcode/static/pictogram-gh-pages/puppet/puppet.json delete mode 100644 federatedcode/static/pictogram-gh-pages/purescript/purescript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/pypi/pypi.json delete mode 100644 federatedcode/static/pictogram-gh-pages/python/python.json delete mode 100644 federatedcode/static/pictogram-gh-pages/r/r.json delete mode 100644 federatedcode/static/pictogram-gh-pages/ruby/ruby.json delete mode 100644 federatedcode/static/pictogram-gh-pages/rust/rust.json delete mode 100644 federatedcode/static/pictogram-gh-pages/scala/scala.json delete mode 100644 federatedcode/static/pictogram-gh-pages/scheme/scheme.json delete mode 100644 federatedcode/static/pictogram-gh-pages/shards/shards.json delete mode 100644 federatedcode/static/pictogram-gh-pages/sublime/sublime.json delete mode 100644 federatedcode/static/pictogram-gh-pages/swift/swift.json delete mode 100644 federatedcode/static/pictogram-gh-pages/tex/tex.json delete mode 100644 federatedcode/static/pictogram-gh-pages/typescript/typescript.json delete mode 100644 federatedcode/static/pictogram-gh-pages/wordpress/wordpress.json delete mode 100644 federatedcode/static/pictogram-gh-pages/xml/xml.json diff --git a/federatedcode/static/pictogram-gh-pages/actionscript/actionscript.json b/federatedcode/static/pictogram-gh-pages/actionscript/actionscript.json deleted file mode 100644 index e2425e2..0000000 --- a/federatedcode/static/pictogram-gh-pages/actionscript/actionscript.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "actionscript", - "source": { - "url": "http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/authors/large/a/actionscript_lg.jpg.adimg.mw.138.png", - "referrer": "http://www.adobe.com/devnet/actionscript.html", - "headers": { - "server": "Apache", - "last-modified": "Tue, 17 Mar 2015 23:12:24 GMT", - "etag": "\"17fb36fd9-1191-5118419803ca3\"", - "accept-ranges": "bytes", - "content-length": "4497", - "cache-control": "max-age=900, s-maxage=300", - "content-type": "image/png", - "date": "Sat, 21 Mar 2015 20:16:47 GMT", - "x-cache": "MISS from cache_server", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/alcatraz/alcatraz.json b/federatedcode/static/pictogram-gh-pages/alcatraz/alcatraz.json deleted file mode 100644 index bb141aa..0000000 --- a/federatedcode/static/pictogram-gh-pages/alcatraz/alcatraz.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "alcatraz", - "source": { - "url": "http://alcatraz.io/images/logo.svg", - "referrer": "http://alcatraz.io/", - "headers": { - "server": "GitHub.com", - "date": "Sat, 21 Mar 2015 09:58:21 GMT", - "content-type": "image/svg+xml", - "content-length": "2834", - "last-modified": "Wed, 11 Mar 2015 19:16:07 GMT", - "expires": "Sat, 21 Mar 2015 10:08:21 GMT", - "cache-control": "max-age=600", - "access-control-allow-origin": "*", - "accept-ranges": "bytes", - "x-cache": "MISS from cache_server", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/apache/apache.json b/federatedcode/static/pictogram-gh-pages/apache/apache.json deleted file mode 100644 index 04b47d6..0000000 --- a/federatedcode/static/pictogram-gh-pages/apache/apache.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "apacheconf", - "source": { - "url": "https://accumulo.apache.org/images/feather-small.gif", - "referrer": "https://accumulo.apache.org", - "headers": { - "date": "Fri, 20 Mar 2015 22:40:14 GMT", - "server": "Apache/2.4.12 (Unix) OpenSSL/1.0.1l", - "last-modified": "Sun, 01 Apr 2012 01:27:29 GMT", - "etag": "\"1d4c-4bc93fa2003e8\"", - "accept-ranges": "bytes", - "content-length": "7500", - "keep-alive": "timeout=5, max=100", - "connection": "Keep-Alive", - "content-type": "image/gif" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/assembly/assembly.json b/federatedcode/static/pictogram-gh-pages/assembly/assembly.json deleted file mode 100644 index 727c3ee..0000000 --- a/federatedcode/static/pictogram-gh-pages/assembly/assembly.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "assembly", - "source": { - "url": "http://i.imgur.com/c18lFaQ.png", - "referrer": "http://imgur.com/gallery/72ouk", - "headers": { - "last-modified": "Sat, 17 Jan 2015 11:08:15 GMT", - "etag": "\"6415d32fde1d3dadb654a4fc023c8b5f\"", - "content-type": "image/png", - "cache-control": "public, max-age=31536000", - "content-length": "18343", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:46:36 GMT", - "x-served-by": "cache-iad2127-IAD, cache-lhr6322-LHR", - "x-cache": "HIT, HIT, HIT from cache_server", - "x-cache-hits": "1, 1", - "x-timer": "S1426970796.664084,VS0,VE0", - "access-control-allow-methods": "GET, OPTIONS", - "access-control-allow-origin": "*", - "server": "cat factory 1.0", - "age": "2705717", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/atom/atom.json b/federatedcode/static/pictogram-gh-pages/atom/atom.json deleted file mode 100644 index 06855bc..0000000 --- a/federatedcode/static/pictogram-gh-pages/atom/atom.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "atom", - "source": { - "url": "https://avatars0.githubusercontent.com/u/1089146?v=3&s=200", - "referrer": "https://github.com/atom", - "headers": { - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"4d17a873f85c8704e8464279e7a57c6267fd7176\"", - "last-modified": "Tue, 06 May 2014 14:29:46 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "cda92f04-0148-11e5-89db-f7ea2b8b01eb", - "x-xss-protection": "1; mode=block", - "content-length": "10458", - "accept-ranges": "bytes", - "date": "Sat, 23 May 2015 18:15:21 GMT", - "via": "1.1 varnish", - "connection": "keep-alive", - "x-served-by": "cache-lcy1131-LCY", - "x-cache": "HIT", - "x-cache-hits": "12", - "expires": "Sat, 23 May 2015 18:20:21 GMT", - "source-age": "20131", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/biicode/biicode.json b/federatedcode/static/pictogram-gh-pages/biicode/biicode.json deleted file mode 100644 index f426fac..0000000 --- a/federatedcode/static/pictogram-gh-pages/biicode/biicode.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "biicode", - "source": { - "url": "https://avatars2.githubusercontent.com/u/4687531?v=3&s=200", - "referrer": "https://github.com/biicode", - "headers": { - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Tue, 05 Nov 2013 10:54:24 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "f578c538-00a7-11e5-862a-21d76f3a5017", - "x-xss-protection": "1; mode=block", - "content-length": "21333", - "accept-ranges": "bytes", - "date": "Fri, 22 May 2015 17:28:28 GMT", - "via": "1.1 varnish", - "connection": "keep-alive", - "x-served-by": "cache-lcy1131-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Fri, 22 May 2015 17:33:28 GMT", - "source-age": "0", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/bower/bower.json b/federatedcode/static/pictogram-gh-pages/bower/bower.json deleted file mode 100644 index 81c127c..0000000 --- a/federatedcode/static/pictogram-gh-pages/bower/bower.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "bower", - "source": { - "url": "https://avatars3.githubusercontent.com/u/3709251?v=3&s=200", - "referrer": "https://github.com/bower", - "headers": { - "date": "Sun, 15 Mar 2015 10:25:48 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Mon, 22 Apr 2013 22:23:58 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "a5b9c5b2-cafd-11e4-8940-a7214a82c2cb", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "21715", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-fra1221-FRA", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 15 Mar 2015 10:30:48 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/c#/c#.json b/federatedcode/static/pictogram-gh-pages/c#/c#.json deleted file mode 100644 index 642f72f..0000000 --- a/federatedcode/static/pictogram-gh-pages/c#/c#.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "c#", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/0/0d/C_Sharp_wordmark.svg/200px-C_Sharp_wordmark.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:C_Sharp_wordmark.svg", - "headers": { - "x-object-meta-sha1base36": "ml2eicl9c1m16cq0odrib38cel1ux6v", - "content-disposition": "inline;filename*=UTF-8''C_Sharp_wordmark.svg.png", - "last-modified": "Sun, 19 Jan 2014 18:16:45 GMT", - "etag": "4d188cbf2629549d7a3bbd8291388e93", - "x-timestamp": "1390155404.18857", - "content-type": "image/png", - "x-trans-id": "txe325d071e61f40ec8c0e0-00550a9ce0", - "x-varnish": "2844179884 2811213489, 2767017012 2621554093, 3191517447", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "2982", - "accept-ranges": "bytes", - "date": "Fri, 20 Mar 2015 13:55:50 GMT", - "age": "100870", - "connection": "keep-alive", - "x-cache": "cp1061 hit (1), cp3010 hit (24), cp3007 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/c++/c++.json b/federatedcode/static/pictogram-gh-pages/c++/c++.json deleted file mode 100644 index 5293e92..0000000 --- a/federatedcode/static/pictogram-gh-pages/c++/c++.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "c++", - "source": { - "url": "https://pbs.twimg.com/profile_images/2515409731/rxrc5tqf0r7y98g1sfdj_200x200.png", - "referrer": "https://twitter.com/isocpp", - "headers": { - "date": "Sat, 14 Mar 2015 17:59:25 GMT", - "server": "tsa_b", - "cache-control": "max-age=604800, must-revalidate", - "content-md5": "al1uh3KUX4vfvROaOOZalg==", - "last-modified": "Thu, 04 Nov 2010 01:42:54 GMT", - "x-connection-hash": "04a3eacd26d3126992f7272003c5f60b", - "x-response-time": "17", - "content-type": "image/png", - "content-length": "50921", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "age": "0", - "x-served-by": "mtc-tw-lon2-1-TWLON2", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 29 Mar 2015 17:59:25 GMT", - "x-content-type-options": "nosniff", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/c/c.json b/federatedcode/static/pictogram-gh-pages/c/c.json deleted file mode 100644 index 855222d..0000000 --- a/federatedcode/static/pictogram-gh-pages/c/c.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "c", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/3/35/The_C_Programming_Language_logo.svg/200px-The_C_Programming_Language_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:The_C_Programming_Language_logo.svg", - "headers": { - "x-object-meta-sha1base36": "5wzecx02acldqfbbn9z9gsa2s78zjwv", - "content-disposition": "inline;filename*=UTF-8''The_C_Programming_Language_logo.svg.png", - "last-modified": "Sat, 03 May 2014 06:33:17 GMT", - "etag": "a7c96e0cd2cf40302b0cea4731d3ddc1", - "x-timestamp": "1399098796.67508", - "content-type": "image/png", - "x-trans-id": "tx6d193c09670a41a29e5f8-00550b5c66", - "x-varnish": "3288601965 3250119526, 948536444 891627264, 4230760775", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "11871", - "accept-ranges": "bytes", - "date": "Fri, 20 Mar 2015 13:53:39 GMT", - "age": "51709", - "connection": "keep-alive", - "x-cache": "cp1051 hit (3), cp3015 hit (3), cp3015 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/cargo/cargo.json b/federatedcode/static/pictogram-gh-pages/cargo/cargo.json deleted file mode 100644 index 8527760..0000000 --- a/federatedcode/static/pictogram-gh-pages/cargo/cargo.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "cargo", - "source": { - "url": "https://raw.githubusercontent.com/rust-lang/crates.io/master/public/assets/Cargo-Logo-Small.png", - "referrer": "https://github.com/rust-lang/crates.io/blob/master/public/assets/Cargo-Logo-Small.png", - "headers": { - "date": "Mon, 16 Mar 2015 23:45:39 GMT", - "server": "Apache", - "access-control-allow-origin": "https://render.githubusercontent.com", - "content-security-policy": "default-src 'none'", - "x-xss-protection": "1; mode=block", - "x-frame-options": "deny", - "x-content-type-options": "nosniff", - "strict-transport-security": "max-age=31536000", - "etag": "\"9a94dcc871a3bd606cef6f0647924a3447840304\"", - "content-type": "image/png", - "cache-control": "max-age=300", - "content-length": "58730", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6323-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "vary": "Authorization,Accept-Encoding", - "expires": "Mon, 16 Mar 2015 23:50:39 GMT", - "source-age": "0", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/carthage/carthage.json b/federatedcode/static/pictogram-gh-pages/carthage/carthage.json deleted file mode 100644 index bdb5c88..0000000 --- a/federatedcode/static/pictogram-gh-pages/carthage/carthage.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "carthage", - "source": { - "url": "https://avatars0.githubusercontent.com/u/9146792?v=3&s=200", - "referrer": "https://github.com/carthage", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"66e578efa7494ef9ba0ede5f0ae71ecfbb9700ff\"", - "last-modified": "Mon, 01 Dec 2014 19:58:19 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-xss-protection": "1; mode=block", - "x-github-request-id": "B91F131A:3F6A:13554528:56C3B3FE", - "content-length": "124979", - "accept-ranges": "bytes", - "date": "Fri, 26 Feb 2016 19:12:22 GMT", - "via": "1.1 varnish", - "connection": "close", - "x-served-by": "cache-lhr6323-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "access-control-allow-origin": "*", - "x-fastly-request-id": "708eb9bfa0fc544d75a385f6847617ca8f267878", - "expires": "Fri, 26 Feb 2016 19:17:22 GMT", - "source-age": "847767", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/clojars/clojars.json b/federatedcode/static/pictogram-gh-pages/clojars/clojars.json deleted file mode 100644 index a9d0109..0000000 --- a/federatedcode/static/pictogram-gh-pages/clojars/clojars.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "clojars", - "source": { - "url": "https://raw.githubusercontent.com/ato/clojars-web/master/resources/public/images/clojars-logo-big.png", - "referrer": "https://clojars.org/", - "headers": { - "date": "Wed, 18 Mar 2015 00:13:25 GMT", - "server": "Apache", - "access-control-allow-origin": "https://render.githubusercontent.com", - "content-security-policy": "default-src 'none'", - "x-xss-protection": "1; mode=block", - "x-frame-options": "deny", - "x-content-type-options": "nosniff", - "strict-transport-security": "max-age=31536000", - "etag": "\"1d13e9b92e80e87bc0e6cca6ab2a21cef2acc869\"", - "content-type": "image/png", - "cache-control": "max-age=300", - "content-length": "7274", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6322-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "vary": "Authorization,Accept-Encoding", - "expires": "Wed, 18 Mar 2015 00:18:25 GMT", - "source-age": "0", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/clojure/clojure.json b/federatedcode/static/pictogram-gh-pages/clojure/clojure.json deleted file mode 100644 index 5a432b8..0000000 --- a/federatedcode/static/pictogram-gh-pages/clojure/clojure.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "clojure", - "source": { - "url": "https://avatars2.githubusercontent.com/u/317875?v=3&s=200", - "referrer": "https://github.com/clojure", - "headers": { - "date": "Sat, 14 Mar 2015 16:28:54 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Wed, 30 Jun 2010 18:30:22 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "f0b970e0-ca66-11e4-8a7e-67a35a28dcaf", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "25770", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-ams4136-AMS", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Sat, 14 Mar 2015 16:33:54 GMT", - "source-age": "115", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/cocoapods/cocoapods.json b/federatedcode/static/pictogram-gh-pages/cocoapods/cocoapods.json deleted file mode 100644 index 1095ce1..0000000 --- a/federatedcode/static/pictogram-gh-pages/cocoapods/cocoapods.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "cocoapods", - "source": { - "url": "https://avatars1.githubusercontent.com/u/1189714?v=3&s=200", - "referrer": "https://github.com/cocoapods", - "headers": { - "date": "Wed, 18 Mar 2015 10:22:45 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"8275215b21b57e0561fa8ceb1fd9a4d4793626bc\"", - "last-modified": "Fri, 28 Mar 2014 17:10:48 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "d73de257-c0ef-11e4-80eb-0ba46456c81f", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "8658", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6324-LHR", - "x-cache": "HIT", - "x-cache-hits": "12", - "expires": "Wed, 18 Mar 2015 10:27:45 GMT", - "source-age": "1364458", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/coffeescript/coffeescript.json b/federatedcode/static/pictogram-gh-pages/coffeescript/coffeescript.json deleted file mode 100644 index 4d510bc..0000000 --- a/federatedcode/static/pictogram-gh-pages/coffeescript/coffeescript.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "coffeescript", - "source": { - "url": "http://coffeescript.org/documentation/images/logo.png", - "referrer": "http://coffeescript.org/", - "headers": { - "server": "GitHub.com", - "date": "Sat, 14 Mar 2015 19:01:28 GMT", - "content-type": "image/png", - "content-length": "12591", - "last-modified": "Wed, 18 Feb 2015 20:48:58 GMT", - "expires": "Sat, 14 Mar 2015 19:11:28 GMT", - "cache-control": "max-age=600", - "access-control-allow-origin": "*", - "accept-ranges": "bytes" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/cpan/cpan.json b/federatedcode/static/pictogram-gh-pages/cpan/cpan.json deleted file mode 100644 index 9b39741..0000000 --- a/federatedcode/static/pictogram-gh-pages/cpan/cpan.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "cpan", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/1/14/The_logo_of_CPAN.png", - "referrer": "http://en.wikipedia.org/wiki/File:The_logo_of_CPAN.png", - "headers": { - "x-object-meta-sha1base36": "hjx38dzcq6mldoe4oi7n0ml41c1ej6f", - "last-modified": "Fri, 18 Apr 2014 18:32:39 GMT", - "etag": "cad4d0c6684a04cff9e221fa07ba1448", - "x-timestamp": "1397845958.02096", - "content-type": "image/png", - "x-trans-id": "tx5ef1c302903a41f6a5535-00550b1869", - "x-varnish": "2701087188 2682602333, 2182943610 1989768456, 2266467108", - "content-length": "4282", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 10:09:18 GMT", - "age": "142053", - "x-cache": "cp1062 hit (1), cp3003 hit (7), cp3006 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/cran/cran.json b/federatedcode/static/pictogram-gh-pages/cran/cran.json deleted file mode 100644 index 068bd38..0000000 --- a/federatedcode/static/pictogram-gh-pages/cran/cran.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "cran", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/1/1b/R_logo.svg/200px-R_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:R_logo.svg", - "headers": { - "x-object-meta-sha1base36": "4k5u08r0xmrgw9as845n2yxbcfx2ohl", - "content-disposition": "inline;filename*=UTF-8''R_logo.svg.png", - "last-modified": "Wed, 24 Sep 2014 00:32:30 GMT", - "etag": "4d2a3c398e6dfebc8db0049b2d74055b", - "x-timestamp": "1411518749.34215", - "content-type": "image/png", - "x-trans-id": "tx2f2ab271ce2e4e2686449-00550c4ed7", - "x-varnish": "2379257310 2363119544, 2379253562 2317379629, 3417700854", - "content-length": "35295", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 10:07:47 GMT", - "x-cache": "cp1049 hit (121), cp3017 hit (351), cp3004 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "62539", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/crystal/crystal.json b/federatedcode/static/pictogram-gh-pages/crystal/crystal.json deleted file mode 100644 index 2a52818..0000000 --- a/federatedcode/static/pictogram-gh-pages/crystal/crystal.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "crystal", - "source": { - "url": "https://avatars0.githubusercontent.com/u/6539796?v=3&s=200", - "referrer": "https://github.com/crystal-lang", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"385531d498d8d3083523aa2eb9510d4160fc3f47\"", - "last-modified": "Fri, 28 Aug 2015 20:04:02 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-xss-protection": "1; mode=block", - "x-github-request-id": "B91F121F:4C0D:8668712:56CDD763", - "content-length": "5510", - "accept-ranges": "bytes", - "date": "Tue, 01 Mar 2016 09:40:49 GMT", - "via": "1.1 varnish", - "connection": "close", - "x-served-by": "cache-lcy1122-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "access-control-allow-origin": "*", - "x-fastly-request-id": "cc0dcec264acb2224de22404096688835e70b466", - "expires": "Tue, 01 Mar 2016 09:45:49 GMT", - "source-age": "494653", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/css/css.json b/federatedcode/static/pictogram-gh-pages/css/css.json deleted file mode 100644 index 702e59a..0000000 --- a/federatedcode/static/pictogram-gh-pages/css/css.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "css", - "source": { - "url": "http://www.bobbyberberyan.com/wp-content/uploads/2012/03/HTML5CSS3Logos.svg", - "referrer": "http://www.bobbyberberyan.com/2012/03/html-5-css-3-logos/", - "headers": { - "date": "Sat, 14 Mar 2015 18:38:56 GMT", - "server": "Apache", - "last-modified": "Thu, 22 Mar 2012 17:12:34 GMT", - "etag": "\"ddc-4bbd80395e597\"", - "accept-ranges": "bytes", - "content-length": "3548", - "keep-alive": "timeout=5, max=100", - "connection": "Keep-Alive", - "content-type": "image/svg+xml" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/d/d.json b/federatedcode/static/pictogram-gh-pages/d/d.json deleted file mode 100644 index b4f5159..0000000 --- a/federatedcode/static/pictogram-gh-pages/d/d.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "d", - "source": { - "url": "https://avatars3.githubusercontent.com/u/565913?v=3&s=200", - "referrer": "https://github.com/D-Programming-Language", - "headers": { - "date": "Tue, 17 Mar 2015 21:57:00 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sat, 15 Jan 2011 08:35:22 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "898ccc4f-ccf0-11e4-82c1-661745da0098", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "24001", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6335-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Tue, 17 Mar 2015 22:02:00 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/dart/dart.json b/federatedcode/static/pictogram-gh-pages/dart/dart.json deleted file mode 100644 index 10d0c25..0000000 --- a/federatedcode/static/pictogram-gh-pages/dart/dart.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "dart", - "source": { - "url": "https://avatars3.githubusercontent.com/u/1609975?v=3&s=200", - "referrer": "https://github.com/dart-lang", - "headers": { - "date": "Mon, 16 Mar 2015 23:11:23 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"5bb0f27e278424f9b2b57d13d5963798eeffde44\"", - "last-modified": "Tue, 29 Apr 2014 15:18:02 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "156c8588-c2a6-11e4-8e0b-5ea87ed5aba0", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "29207", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6334-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 16 Mar 2015 23:16:23 GMT", - "source-age": "1049552", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/dub/dub.json b/federatedcode/static/pictogram-gh-pages/dub/dub.json deleted file mode 100644 index 229a86b..0000000 --- a/federatedcode/static/pictogram-gh-pages/dub/dub.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "dub", - "source": { - "url": "http://code.dlang.org/images/logo-small.png", - "referrer": "http://code.dlang.org/", - "headers": { - "server": "vibe.d/0.7.22", - "date": "Tue, 17 Mar 2015 22:01:17 GMT", - "keep-alive": "timeout=10", - "last-modified": "Fri, 07 Dec 2012 16:30:27 GMT", - "etag": "\"09CE4277EF625410C1F51424793E5EC7\"", - "expires": "Wed, 18 Mar 2015 22:01:17 GMT", - "cache-control": "max-age=86400", - "content-type": "image/png", - "content-length": "2255" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/elixir/elixir.json b/federatedcode/static/pictogram-gh-pages/elixir/elixir.json deleted file mode 100644 index 4e9eb94..0000000 --- a/federatedcode/static/pictogram-gh-pages/elixir/elixir.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "elixir", - "source": { - "url": "https://avatars0.githubusercontent.com/u/1481354?v=3&s=200", - "referrer": "https://github.com/elixir-lang", - "headers": { - "date": "Sat, 14 Mar 2015 18:01:45 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sun, 25 Nov 2012 17:23:59 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "2d71b851-ca74-11e4-80f1-b761e8b8d339", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "23016", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6331-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sat, 14 Mar 2015 18:06:45 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/elm/elm.json b/federatedcode/static/pictogram-gh-pages/elm/elm.json deleted file mode 100644 index adfd0ec..0000000 --- a/federatedcode/static/pictogram-gh-pages/elm/elm.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "elm", - "source": { - "url": "https://avatars0.githubusercontent.com/u/4359353?v=3&s=200", - "referrer": "https://github.com/elm-lang", - "headers": { - "date": "Mon, 23 Mar 2015 18:21:10 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Wed, 12 Mar 2014 16:48:22 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "6173b377-d189-11e4-82f4-e6d28114a994", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "17159", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6327-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Mon, 23 Mar 2015 18:26:10 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/emacs/emacs.json b/federatedcode/static/pictogram-gh-pages/emacs/emacs.json deleted file mode 100644 index 501df73..0000000 --- a/federatedcode/static/pictogram-gh-pages/emacs/emacs.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "emacs", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/5/5f/Emacs-logo.svg/200px-Emacs-logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Emacs-logo.svg", - "headers": { - "last-modified": "Sat, 26 Oct 2013 06:45:23 GMT", - "etag": "5342afd2e38bdb7dbb17ae941c7088dd", - "x-timestamp": "1382769922.32171", - "content-type": "image/png", - "x-trans-id": "txf256c09d77574c98b65df-00550ce144", - "x-varnish": "1905484777 1875809950, 1434740035, 2701353227", - "content-length": "21580", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 09:52:06 GMT", - "x-cache": "cp1050 hit (2), cp3009 miss (0), cp3008 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "24084", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/erlang/erlang.json b/federatedcode/static/pictogram-gh-pages/erlang/erlang.json deleted file mode 100644 index 39cbf90..0000000 --- a/federatedcode/static/pictogram-gh-pages/erlang/erlang.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "erlang", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/4/42/Erlang_logo.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Erlang_logo.png", - "headers": { - "x-object-meta-sha1base36": "9fnc3q5zjgdogh1ts5xghu6rcwweko4", - "last-modified": "Sat, 05 Oct 2013 04:15:57 GMT", - "etag": "4f325ef346b07fe5139af2f4b8d983a9", - "x-timestamp": "1380946556.00977", - "content-type": "image/png", - "x-trans-id": "tx9f0f1b6e8f784f5693e1a-00550949eb", - "x-varnish": "2031717282 1982343325, 1739242467 1477335145, 2301118869", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "13204", - "accept-ranges": "bytes", - "date": "Fri, 20 Mar 2015 13:52:03 GMT", - "age": "187416", - "connection": "keep-alive", - "x-cache": "cp1049 hit (5), cp3005 hit (46), cp3005 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/f#/f#.json b/federatedcode/static/pictogram-gh-pages/f#/f#.json deleted file mode 100644 index 5d7400c..0000000 --- a/federatedcode/static/pictogram-gh-pages/f#/f#.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "f#", - "source": { - "url": "https://avatars2.githubusercontent.com/u/485415?v=3&s=200", - "referrer": "https://github.com/fsharp", - "headers": { - "date": "Fri, 20 Mar 2015 13:50:03 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"f392a0ef9ac460573056b23fdc397be8a1f6cbea\"", - "last-modified": "Fri, 03 Oct 2014 14:25:35 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "87303463-c5d9-11e4-8c90-7ea81075bd94", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "6229", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6322-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Fri, 20 Mar 2015 13:55:03 GMT", - "source-age": "1009524", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/fortran/fortran.json b/federatedcode/static/pictogram-gh-pages/fortran/fortran.json deleted file mode 100644 index 2d52e77..0000000 --- a/federatedcode/static/pictogram-gh-pages/fortran/fortran.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "fortran", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/b/b6/Fortran.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Fortran.png", - "headers": { - "x-object-meta-sha1base36": "5p0qf7xp6ghhgnidx3btraj2szpz7bd", - "last-modified": "Sun, 06 Oct 2013 08:19:50 GMT", - "etag": "98f202d06afc2058f7f0d098a34db798", - "x-timestamp": "1381047589.51325", - "content-type": "image/png", - "x-trans-id": "tx007ab3662eca4231bb4f5-00550c1218", - "x-varnish": "1954466162, 2342406270 2277457184, 53034675", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "60095", - "accept-ranges": "bytes", - "date": "Fri, 20 Mar 2015 22:30:46 GMT", - "age": "36223", - "connection": "keep-alive", - "x-cache": "cp1063 miss (0), cp3017 hit (6), cp3016 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/game maker language/game maker language.json b/federatedcode/static/pictogram-gh-pages/game maker language/game maker language.json deleted file mode 100644 index d277d34..0000000 --- a/federatedcode/static/pictogram-gh-pages/game maker language/game maker language.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "game maker language", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/1/1b/The_game_maker_logo.png", - "referrer": "http://en.wikipedia.org/wiki/File:The_game_maker_logo.png", - "headers": { - "x-object-meta-sha1base36": "2uxp2dfbse28bst2ffelrzkgpcada2e", - "last-modified": "Tue, 02 Dec 2014 22:16:41 GMT", - "etag": "9f5dc5513b37e51de5e601ff2c8abc60", - "x-timestamp": "1417558600.71868", - "content-type": "image/png", - "x-trans-id": "tx5470b678f611415985562-00550d7590", - "x-varnish": "3187625487 3158568938, 1519968004 1492707793, 2825840377", - "content-length": "7316", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:56:48 GMT", - "age": "25985", - "x-cache": "cp1061 hit (5), cp3009 hit (11), cp3008 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/gem/gem.json b/federatedcode/static/pictogram-gh-pages/gem/gem.json deleted file mode 100644 index c0184d3..0000000 --- a/federatedcode/static/pictogram-gh-pages/gem/gem.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "rubygems", - "source": { - "url": "https://avatars1.githubusercontent.com/u/208761?v=3&s=200", - "referrer": "https://github.com/rubygems", - "headers": { - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/jpeg", - "etag": "\"f730df7964c5bf7044a913e758d216fb917f5fd4\"", - "last-modified": "Tue, 12 May 2015 02:52:03 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "c367552b-f880-11e4-8c16-ca7939fa6deb", - "x-xss-protection": "1; mode=block", - "content-length": "5719", - "accept-ranges": "bytes", - "date": "Tue, 19 May 2015 05:51:19 GMT", - "via": "1.1 varnish", - "connection": "keep-alive", - "x-served-by": "cache-ams4132-AMS", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Tue, 19 May 2015 05:56:19 GMT", - "source-age": "595415", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/golang/golang.json b/federatedcode/static/pictogram-gh-pages/golang/golang.json deleted file mode 100644 index 6733f0e..0000000 --- a/federatedcode/static/pictogram-gh-pages/golang/golang.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "go", - "source": { - "url": "https://avatars3.githubusercontent.com/u/4314092?v=3&s=200", - "referrer": "https://github.com/golang", - "headers": { - "date": "Sat, 14 Mar 2015 09:45:04 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"94a4d9e18dd02badeaeb772757d530218acdd677\"", - "last-modified": "Tue, 29 Apr 2014 15:16:14 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "73aa078e-c0fc-11e4-893a-e199b1f411c7", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "17189", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6325-LHR", - "x-cache": "HIT", - "x-cache-hits": "6", - "expires": "Sat, 14 Mar 2015 09:50:04 GMT", - "source-age": "1011180", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/groovy/groovy.json b/federatedcode/static/pictogram-gh-pages/groovy/groovy.json deleted file mode 100644 index 813940f..0000000 --- a/federatedcode/static/pictogram-gh-pages/groovy/groovy.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "groovy", - "source": { - "url": "https://avatars3.githubusercontent.com/u/64846?v=3&s=200", - "referrer": "https://github.com/groovy", - "headers": { - "date": "Mon, 16 Mar 2015 23:03:12 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Mon, 19 Sep 2011 07:30:15 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "8ec6f362-cc30-11e4-8422-bbbe7f107df2", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "21804", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1128-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 16 Mar 2015 23:08:12 GMT", - "source-age": "27", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/hack/hack.json b/federatedcode/static/pictogram-gh-pages/hack/hack.json deleted file mode 100644 index 8329d8b..0000000 --- a/federatedcode/static/pictogram-gh-pages/hack/hack.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "hack", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/a/a0/Hack_-_Logo.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Hack_-_Logo.png", - "headers": { - "x-object-meta-sha1base36": "h35fejthfmy9xqfpcs62q6z3wp5omt7", - "last-modified": "Fri, 11 Jul 2014 09:02:48 GMT", - "etag": "9f0eee0e34ff13f0f5e1796566a76603", - "x-timestamp": "1405069367.28998", - "content-type": "image/png", - "x-trans-id": "tx7b847aa2cc2d468eaeee8-00550c046a", - "x-varnish": "3369011968 3323710527, 1063756058 990870583, 2262677973", - "content-length": "4827", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 09:43:16 GMT", - "age": "80074", - "x-cache": "cp1051 hit (9), cp3004 hit (18), cp3006 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/hackage/hackage.json b/federatedcode/static/pictogram-gh-pages/hackage/hackage.json deleted file mode 100644 index 255744f..0000000 --- a/federatedcode/static/pictogram-gh-pages/hackage/hackage.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "hackage", - "source": { - "url": "https://avatars2.githubusercontent.com/u/450574?v=3&s=200", - "referrer": "https://github.com/haskell", - "headers": { - "date": "Mon, 16 Mar 2015 23:42:33 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sat, 23 Oct 2010 23:35:06 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "0de2c5ca-cc36-11e4-811f-a7a1e9629941", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "13471", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6335-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 16 Mar 2015 23:47:33 GMT", - "source-age": "27", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/handlebars/handlebars.json b/federatedcode/static/pictogram-gh-pages/handlebars/handlebars.json deleted file mode 100644 index 4d7fbd6..0000000 --- a/federatedcode/static/pictogram-gh-pages/handlebars/handlebars.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "handlebars", - "source": { - "url": "http://handlebarsjs.com/images/handlebars_logo.png", - "referrer": "http://handlebarsjs.com/", - "headers": { - "server": "GitHub.com", - "content-type": "image/png", - "last-modified": "Tue, 10 Feb 2015 06:30:21 GMT", - "expires": "Thu, 12 Mar 2015 09:31:05 GMT", - "cache-control": "max-age=600", - "access-control-allow-origin": "*", - "content-length": "25946", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 19:42:14 GMT", - "age": "0", - "x-served-by": "cache-ams4145-AMS", - "x-cache": "HIT, MISS from cache_server", - "x-cache-hits": "1", - "x-timer": "S1426966934.602372,VS0,VE90", - "vary": "Accept-Encoding", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/haskell/haskell.json b/federatedcode/static/pictogram-gh-pages/haskell/haskell.json deleted file mode 100644 index 11e6a47..0000000 --- a/federatedcode/static/pictogram-gh-pages/haskell/haskell.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "haskell", - "source": { - "url": "https://avatars2.githubusercontent.com/u/450574?v=3&s=200", - "referrer": "https://github.com/haskell", - "headers": { - "date": "Sun, 15 Mar 2015 09:58:51 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sat, 23 Oct 2010 23:35:06 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "1a07c08c-caf8-11e4-8739-c67a1e2d6a72", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "13471", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-ams4146-AMS", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Sun, 15 Mar 2015 10:03:51 GMT", - "source-age": "765", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/haxe/haxe.json b/federatedcode/static/pictogram-gh-pages/haxe/haxe.json deleted file mode 100644 index d220a61..0000000 --- a/federatedcode/static/pictogram-gh-pages/haxe/haxe.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "haxe", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/8/89/Haxe_logo.svg/200px-Haxe_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Haxe_logo.svg", - "headers": { - "x-object-meta-sha1base36": "l1cgijtjx7vm1mhwcrafhrolscqboqd", - "content-disposition": "inline;filename*=UTF-8''Haxe_logo.svg.png", - "last-modified": "Mon, 26 Jan 2015 20:56:00 GMT", - "etag": "de1bd27446ee95f11e76d5f7bc475b33", - "x-timestamp": "1422305759.09582", - "content-type": "image/png", - "x-trans-id": "tx7b3e5487e39841c381a8b-00550dcad9", - "x-varnish": "3530181081, 3218751181 3218708352, 260505383", - "content-length": "8295", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 19:48:00 GMT", - "age": "23", - "x-cache": "cp1051 miss (0), cp3008 hit (1), cp3018 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/hex/hex.json b/federatedcode/static/pictogram-gh-pages/hex/hex.json deleted file mode 100644 index 2e1885f..0000000 --- a/federatedcode/static/pictogram-gh-pages/hex/hex.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "hex", - "source": { - "url": "https://avatars3.githubusercontent.com/u/6621265?v=3&s=200", - "referrer": "https://github.com/hexpm", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"e6f29a15e37482ecd924ac4c85d84a7e1a1f4cd9\"", - "last-modified": "Thu, 03 Dec 2015 17:46:07 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-xss-protection": "1; mode=block", - "x-github-request-id": "B91F1315:62B9:2932F64:569199A5", - "content-length": "38133", - "accept-ranges": "bytes", - "date": "Sat, 09 Jan 2016 23:37:28 GMT", - "via": "1.1 varnish", - "connection": "close", - "x-served-by": "cache-lhr6335-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "access-control-allow-origin": "*", - "x-fastly-request-id": "1923d523d1a5f68ebaab2106f0873f4564120340", - "expires": "Sat, 09 Jan 2016 23:42:28 GMT", - "source-age": "18", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/homebrew/homebrew.json b/federatedcode/static/pictogram-gh-pages/homebrew/homebrew.json deleted file mode 100644 index abb18b4..0000000 --- a/federatedcode/static/pictogram-gh-pages/homebrew/homebrew.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "homebrew", - "source": { - "url": "https://avatars2.githubusercontent.com/u/1503512?v=3&s=200", - "referrer": "https://github.com/homebrew", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sat, 07 Jun 2014 10:21:41 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-xss-protection": "1; mode=block", - "x-github-request-id": "B91F1221:3F69:D2FEA3B:56C0D2F8", - "content-length": "33056", - "accept-ranges": "bytes", - "date": "Sun, 14 Feb 2016 20:04:06 GMT", - "via": "1.1 varnish", - "connection": "close", - "x-served-by": "cache-lcy1135-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "access-control-allow-origin": "*", - "x-fastly-request-id": "d2b0b79562e8079857220f6626ce9ec7d49843fc", - "expires": "Sun, 14 Feb 2016 20:09:06 GMT", - "source-age": "2750", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/html/html.json b/federatedcode/static/pictogram-gh-pages/html/html.json deleted file mode 100644 index 8509a09..0000000 --- a/federatedcode/static/pictogram-gh-pages/html/html.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "html", - "source": { - "url": "http://www.bobbyberberyan.com/wp-content/uploads/2012/03/HTML5CSS3Logos.svg", - "referrer": "http://www.bobbyberberyan.com/2012/03/html-5-css-3-logos/", - "headers": { - "date": "Sat, 14 Mar 2015 18:43:03 GMT", - "server": "Apache", - "last-modified": "Thu, 22 Mar 2012 17:12:34 GMT", - "etag": "\"ddc-4bbd80395e597\"", - "accept-ranges": "bytes", - "content-length": "3548", - "keep-alive": "timeout=5, max=100", - "connection": "Keep-Alive", - "content-type": "image/svg+xml" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/inqlude/inqlude.json b/federatedcode/static/pictogram-gh-pages/inqlude/inqlude.json deleted file mode 100644 index 1c23762..0000000 --- a/federatedcode/static/pictogram-gh-pages/inqlude/inqlude.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "inqlude", - "source": { - "url": "http://i.imgur.com/nxdK4ID.png", - "referrer": "https://inqlude.org/", - "headers": { - "last-modified": "Sun, 14 Feb 2016 12:40:57 GMT", - "etag": "\"ee2a41bad2b8bdea420394654fef7f7e\"", - "content-type": "image/png", - "fastly-debug-digest": "2ca73e610654849e26001be963ac45b7d1c9b112c74c8086d5a06b0fb77978fa", - "cache-control": "public, max-age=31536000", - "content-length": "5921", - "accept-ranges": "bytes", - "date": "Sun, 14 Feb 2016 12:42:13 GMT", - "age": "76", - "connection": "close", - "x-served-by": "cache-iad2144-IAD, cache-lhr6328-LHR", - "x-cache": "HIT, MISS", - "x-cache-hits": "1, 0", - "x-timer": "S1455453733.534115,VS0,VE76", - "access-control-allow-methods": "GET, OPTIONS", - "access-control-allow-origin": "*", - "server": "cat factory 1.0" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/jam/jam.json b/federatedcode/static/pictogram-gh-pages/jam/jam.json deleted file mode 100644 index 7fe64dd..0000000 --- a/federatedcode/static/pictogram-gh-pages/jam/jam.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "jam", - "source": { - "url": "http://jamjs.org/img/jam_large.png", - "referrer": "http://jamjs.org/", - "headers": { - "server": "CouchDB/1.2.0 (Erlang OTP/R15B01)", - "etag": "\"X2b5KkOOeVZgrc1YLa8kYg==\"", - "date": "Sat, 21 Mar 2015 09:53:45 GMT", - "content-type": "image/png", - "content-md5": "X2b5KkOOeVZgrc1YLa8kYg==", - "content-length": "8088", - "cache-control": "must-revalidate", - "accept-ranges": "bytes", - "x-cache": "MISS from cache_server", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/java/java.json b/federatedcode/static/pictogram-gh-pages/java/java.json deleted file mode 100644 index 5daa4a8..0000000 --- a/federatedcode/static/pictogram-gh-pages/java/java.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "java", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/a/a4/Java_logo_and_wordmark.svg/500px-Java_logo_and_wordmark.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Java_logo_and_wordmark.svg", - "headers": { - "x-object-meta-sha1base36": "pwh107guwerk22u42wk4fgl5xlzn0jo", - "last-modified": "Thu, 31 Oct 2013 06:04:09 GMT", - "etag": "d0a95bc97c5792f6db1a4f3538ef0cd6", - "x-timestamp": "1383199448.25672", - "content-type": "image/png", - "x-trans-id": "tx91ec8e3a835a414eb562b-0055060cb8", - "x-varnish": "2265994897, 1099177107, 2216060245 2215958784", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "43989", - "accept-ranges": "bytes", - "date": "Sun, 15 Mar 2015 22:51:18 GMT", - "age": "46", - "connection": "keep-alive", - "x-cache": "cp1064 miss (0), cp3005 miss (0), cp3007 frontend hit (1)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/javascript/javascript.json b/federatedcode/static/pictogram-gh-pages/javascript/javascript.json deleted file mode 100644 index cd24593..0000000 --- a/federatedcode/static/pictogram-gh-pages/javascript/javascript.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "javascript", - "source": { - "url": "https://avatars2.githubusercontent.com/u/1782180?v=3&s=200", - "referrer": "https://github.com/javascript", - "headers": { - "date": "Sat, 14 Mar 2015 18:16:20 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"d3aea59fec2c937e534dfe6a0629346901fb4a06\"", - "last-modified": "Fri, 28 Mar 2014 14:33:48 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "ddf81d16-ca75-11e4-81e4-eaff48c4ed6c", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "7978", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6335-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Sat, 14 Mar 2015 18:21:20 GMT", - "source-age": "149", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/julia/julia.json b/federatedcode/static/pictogram-gh-pages/julia/julia.json deleted file mode 100644 index 7e22181..0000000 --- a/federatedcode/static/pictogram-gh-pages/julia/julia.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "julia", - "source": { - "url": "https://avatars2.githubusercontent.com/u/743164?v=3&s=200", - "referrer": "https://github.com/JuliaLang", - "headers": { - "date": "Mon, 23 Mar 2015 20:52:13 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Tue, 05 Feb 2013 04:28:55 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "2aaeb16d-d19e-11e4-8411-c962c4f9c5f4", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "10776", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-ams4146-AMS", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 23 Mar 2015 20:57:13 GMT", - "source-age": "136", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/livescript/livescript.json b/federatedcode/static/pictogram-gh-pages/livescript/livescript.json deleted file mode 100644 index ee46130..0000000 --- a/federatedcode/static/pictogram-gh-pages/livescript/livescript.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "livescript", - "source": { - "url": "http://livescript.net/images/icon.png", - "referrer": "http://livescript.net/", - "headers": { - "date": "Sat, 21 Mar 2015 19:59:43 GMT", - "content-type": "image/png", - "content-length": "1014", - "set-cookie": [ - "__cfduid=dc08b9d32eaa07436c6c9e6be50534ed81426967983; expires=Sun, 20-Mar-16 19:59:43 GMT; path=/; domain=.livescript.net; HttpOnly" - ], - "last-modified": "Tue, 24 Feb 2015 02:39:36 GMT", - "expires": "Thu, 26 Mar 2015 19:59:43 GMT", - "cache-control": "public, max-age=432000", - "access-control-allow-origin": "*", - "cf-cache-status": "HIT", - "accept-ranges": "bytes", - "server": "cloudflare-nginx", - "cf-ray": "1cac3d2691410b7b-LHR", - "x-cache": "MISS from cache_server", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/lua/lua.json b/federatedcode/static/pictogram-gh-pages/lua/lua.json deleted file mode 100644 index 4a3865e..0000000 --- a/federatedcode/static/pictogram-gh-pages/lua/lua.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "lua", - "source": { - "url": "https://avatars0.githubusercontent.com/u/2319114?v=3&s=200", - "referrer": "https://github.com/lua", - "headers": { - "date": "Tue, 17 Mar 2015 00:14:36 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Sun, 07 Jul 2013 00:20:33 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "98866c33-cc3a-11e4-8491-cf2de38bf09a", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "11885", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1132-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Tue, 17 Mar 2015 00:19:36 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/make/make.json b/federatedcode/static/pictogram-gh-pages/make/make.json deleted file mode 100644 index 275f3ef..0000000 --- a/federatedcode/static/pictogram-gh-pages/make/make.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "make", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/thumb/2/22/Heckert_GNU_white.svg/200px-Heckert_GNU_white.svg.png", - "referrer": "http://en.wikipedia.org/wiki/GNU_build_system", - "headers": { - "x-object-meta-sha1base36": "jphn9l2ntkyph5cpnkdqw3018978wpk", - "last-modified": "Fri, 18 Oct 2013 02:15:00 GMT", - "etag": "24fb20b34ca8d97ca3cf894f39714771", - "x-timestamp": "1382062499.97337", - "content-type": "image/png", - "x-trans-id": "tx29f08de73cb241fa9ee53-00550d11ac", - "x-varnish": "3492002593 3453183821, 2449133075 2409851222, 260742103", - "content-length": "20971", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:22:49 GMT", - "x-cache": "cp1051 hit (5), cp3017 hit (7), cp3017 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "49536", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/makefile/makefile.json b/federatedcode/static/pictogram-gh-pages/makefile/makefile.json deleted file mode 100644 index 635e86d..0000000 --- a/federatedcode/static/pictogram-gh-pages/makefile/makefile.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "makefile", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/thumb/2/22/Heckert_GNU_white.svg/200px-Heckert_GNU_white.svg.png", - "referrer": "http://en.wikipedia.org/wiki/GNU_build_system", - "headers": { - "x-object-meta-sha1base36": "jphn9l2ntkyph5cpnkdqw3018978wpk", - "last-modified": "Fri, 18 Oct 2013 02:15:00 GMT", - "etag": "24fb20b34ca8d97ca3cf894f39714771", - "x-timestamp": "1382062499.97337", - "content-type": "image/png", - "x-trans-id": "tx29f08de73cb241fa9ee53-00550d11ac", - "x-varnish": "3492002593 3453183821, 2449133075 2409851222, 260742103", - "content-length": "20971", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:22:49 GMT", - "x-cache": "cp1051 hit (5), cp3017 hit (7), cp3017 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "49536", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} diff --git a/federatedcode/static/pictogram-gh-pages/maven/maven.json b/federatedcode/static/pictogram-gh-pages/maven/maven.json deleted file mode 100644 index 6f06fb4..0000000 --- a/federatedcode/static/pictogram-gh-pages/maven/maven.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "maven", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/0/0b/Maven_logo.svg/200px-Maven_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Maven_logo.svg", - "headers": { - "x-object-meta-sha1base36": "05bje88vsirv1p1ba9k8ocl7wix6lx0", - "last-modified": "Wed, 23 Oct 2013 13:45:32 GMT", - "etag": "2ed277e3826f0d1eea4212fef7e6d5c2", - "x-timestamp": "1382535931.78982", - "content-type": "image/png", - "x-trans-id": "txb667e00095384da29b894-005505ef03", - "x-varnish": "2073997766 2057322608, 2031911708 2031659727, 1252298227", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "2269", - "accept-ranges": "bytes", - "date": "Sun, 15 Mar 2015 22:49:35 GMT", - "age": "7548", - "connection": "keep-alive", - "x-cache": "cp1062 hit (1), cp3016 hit (1), cp3010 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/meteor/meteor.json b/federatedcode/static/pictogram-gh-pages/meteor/meteor.json deleted file mode 100644 index faacf23..0000000 --- a/federatedcode/static/pictogram-gh-pages/meteor/meteor.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "meteor", - "source": { - "url": "https://avatars3.githubusercontent.com/u/789528?v=3&s=200", - "referrer": "https://github.com/meteor", - "headers": { - "date": "Mon, 16 Mar 2015 23:41:06 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"ea3ad9c5a3e51faaa74685e71f40e29c77367e37\"", - "last-modified": "Tue, 28 Oct 2014 18:20:15 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "27ae5a03-c94a-11e4-8967-0c0973f56157", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "3926", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1129-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 16 Mar 2015 23:46:06 GMT", - "source-age": "321160", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/nimble/nimble.json b/federatedcode/static/pictogram-gh-pages/nimble/nimble.json deleted file mode 100644 index 099c1f3..0000000 --- a/federatedcode/static/pictogram-gh-pages/nimble/nimble.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "nimble", - "source": { - "url": "https://avatars3.githubusercontent.com/u/603863?v=3&s=200", - "referrer": "https://github.com/nim-lang", - "headers": { - "date": "Tue, 17 Mar 2015 21:33:37 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"a513c8a1ca00d2b756d1aab7dd2929cdb7ae34a6\"", - "last-modified": "Thu, 05 Mar 2015 22:44:09 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "57a175a2-c97f-11e4-8e1f-3e2a3c6c6171", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "113754", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1124-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Tue, 17 Mar 2015 21:38:37 GMT", - "source-age": "377067", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/nimrod/nimrod.json b/federatedcode/static/pictogram-gh-pages/nimrod/nimrod.json deleted file mode 100644 index 95b2454..0000000 --- a/federatedcode/static/pictogram-gh-pages/nimrod/nimrod.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "nimrod", - "source": { - "url": "https://avatars3.githubusercontent.com/u/603863?v=3&s=200", - "referrer": "https://github.com/nim-lang", - "headers": { - "date": "Tue, 17 Mar 2015 21:34:35 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"a513c8a1ca00d2b756d1aab7dd2929cdb7ae34a6\"", - "last-modified": "Thu, 05 Mar 2015 22:44:09 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "0913fffe-c3d2-11e4-8f71-74323f6a3667", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "113754", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-ams4143-AMS", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Tue, 17 Mar 2015 21:39:35 GMT", - "source-age": "1001316", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/npm/npm.json b/federatedcode/static/pictogram-gh-pages/npm/npm.json deleted file mode 100644 index 99b6b8f..0000000 --- a/federatedcode/static/pictogram-gh-pages/npm/npm.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "npm", - "source": { - "url": "https://avatars2.githubusercontent.com/u/6078720?v=3&s=200", - "referrer": "https://github.com/npm", - "headers": { - "date": "Sun, 15 Mar 2015 10:16:20 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Wed, 11 Dec 2013 07:32:31 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "5318af5c-cafc-11e4-8bbf-e2ba349307bc", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "6569", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1127-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 15 Mar 2015 10:21:20 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/nuget/nuget.json b/federatedcode/static/pictogram-gh-pages/nuget/nuget.json deleted file mode 100644 index 6c0b72b..0000000 --- a/federatedcode/static/pictogram-gh-pages/nuget/nuget.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "nuget", - "source": { - "url": "https://avatars3.githubusercontent.com/u/968310?v=3&s=200", - "referrer": "https://github.com/nuget", - "headers": { - "date": "Sun, 15 Mar 2015 10:35:13 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Mon, 24 Oct 2011 23:18:07 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "f6c154d9-cafe-11e4-8229-55b0e70df56b", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "24672", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-ams4123-AMS", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 15 Mar 2015 10:40:13 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/packagist/packagist.json b/federatedcode/static/pictogram-gh-pages/packagist/packagist.json deleted file mode 100644 index dabadb8..0000000 --- a/federatedcode/static/pictogram-gh-pages/packagist/packagist.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "packagist", - "source": { - "url": "https://avatars3.githubusercontent.com/u/5014846?v=3&s=200", - "referrer": "https://github.com/packagist", - "headers": { - "date": "Sun, 15 Mar 2015 10:17:29 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Tue, 16 Jul 2013 09:43:29 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "7c5f0873-cafc-11e4-8ad7-436f9ae371f7", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "33759", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-fra1244-FRA", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 15 Mar 2015 10:22:29 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/perl/perl.json b/federatedcode/static/pictogram-gh-pages/perl/perl.json deleted file mode 100644 index 3e943cc..0000000 --- a/federatedcode/static/pictogram-gh-pages/perl/perl.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "perl", - "source": { - "url": "http://www.onlamp.com/images/perl/camel.gif", - "referrer": "http://www.onlamp.com/pub/a/oreilly/perl/usage/", - "headers": { - "server": "Apache", - "last-modified": "Fri, 24 Jan 2003 20:01:36 GMT", - "accept-ranges": "bytes", - "content-length": "4265", - "content-type": "image/gif", - "cache-control": "max-age=86334", - "expires": "Sat, 21 Mar 2015 22:49:00 GMT", - "date": "Fri, 20 Mar 2015 22:50:06 GMT", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/perl6/perl6.json b/federatedcode/static/pictogram-gh-pages/perl6/perl6.json deleted file mode 100644 index 3839e95..0000000 --- a/federatedcode/static/pictogram-gh-pages/perl6/perl6.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "perl6", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/8/85/Camelia.svg/200px-Camelia.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Camelia.svg", - "headers": { - "last-modified": "Wed, 30 Oct 2013 01:14:29 GMT", - "etag": "edd268c201ec56a28a618d7e9955e995", - "x-timestamp": "1383095668.99091", - "content-type": "image/png", - "x-trans-id": "tx8db83b396e70478f95e64-00550d6ce3", - "x-varnish": "1935352789 1919981991, 3318640027 3274448579, 2392106862", - "content-length": "13887", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 21:08:37 GMT", - "x-cache": "cp1050 hit (25), cp3007 hit (65), cp3006 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "28946", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/php/php.json b/federatedcode/static/pictogram-gh-pages/php/php.json deleted file mode 100644 index 93a8f56..0000000 --- a/federatedcode/static/pictogram-gh-pages/php/php.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "php", - "source": { - "url": "https://avatars3.githubusercontent.com/u/25158?v=3&s=200", - "referrer": "https://github.com/php", - "headers": { - "date": "Sat, 14 Mar 2015 16:11:57 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Tue, 15 Oct 2013 14:10:47 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "55f44d3e-ca64-11e4-8837-566d0201505c", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "15299", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6321-LHR", - "x-cache": "HIT", - "x-cache-hits": "2", - "expires": "Sat, 14 Mar 2015 16:16:57 GMT", - "source-age": "216", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/platformio/platformio.json b/federatedcode/static/pictogram-gh-pages/platformio/platformio.json deleted file mode 100644 index 9ab96a2..0000000 --- a/federatedcode/static/pictogram-gh-pages/platformio/platformio.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "platformio", - "source": { - "url": "https://avatars2.githubusercontent.com/u/11621357?v=3&s=200", - "referrer": "https://github.com/platformio", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"5881cb5ccf08f6a95d85eb34a848454984275a4b\"", - "last-modified": "Sat, 27 Jun 2015 15:00:39 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "b44e737d-1da2-11e5-89bf-2c77d4e0b3c8", - "x-xss-protection": "1; mode=block", - "content-length": "7358", - "accept-ranges": "bytes", - "date": "Sun, 28 Jun 2015 14:33:55 GMT", - "via": "1.1 varnish", - "connection": "keep-alive", - "x-served-by": "cache-lcy1120-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "access-control-allow-origin": "*", - "expires": "Sun, 28 Jun 2015 14:38:55 GMT", - "source-age": "0", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/powershell/powershell.json b/federatedcode/static/pictogram-gh-pages/powershell/powershell.json deleted file mode 100644 index 951c8b7..0000000 --- a/federatedcode/static/pictogram-gh-pages/powershell/powershell.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "powershell", - "source": { - "url": "https://avatars0.githubusercontent.com/u/11524380?v=3&s=200", - "referrer": "https://github.com/powershell", - "headers": { - "date": "Fri, 20 Mar 2015 13:50:44 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"e39dde03263468f440b359ec09095bdbfee92fd6\"", - "last-modified": "Tue, 17 Mar 2015 16:25:40 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "1aa8647a-cf08-11e4-83bc-9823d777ddf9", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "18816", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1133-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Fri, 20 Mar 2015 13:55:44 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/pub/pub.json b/federatedcode/static/pictogram-gh-pages/pub/pub.json deleted file mode 100644 index 2ff74c8..0000000 --- a/federatedcode/static/pictogram-gh-pages/pub/pub.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "pub", - "source": { - "url": "https://avatars3.githubusercontent.com/u/1609975?v=3&s=200", - "referrer": "https://github.com/dart-lang", - "headers": { - "date": "Tue, 17 Mar 2015 21:35:25 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"c5a357d3e7aa9966f25cb6ae2c53724064ba47a6\"", - "last-modified": "Tue, 29 Apr 2014 15:18:02 GMT", - "strict-transport-security": "max-age=2592000", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "f091f12f-7283-11e4-8b11-58e94b704dee", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "29207", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1120-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Tue, 17 Mar 2015 21:40:25 GMT", - "source-age": "9940953", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/puppet/puppet.json b/federatedcode/static/pictogram-gh-pages/puppet/puppet.json deleted file mode 100644 index 60d56b4..0000000 --- a/federatedcode/static/pictogram-gh-pages/puppet/puppet.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "puppet", - "source": { - "url": "https://avatars3.githubusercontent.com/u/234268?v=3&s=200", - "referrer": "https://github.com/puppetlabs", - "headers": { - "date": "Fri, 20 Mar 2015 22:40:44 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Fri, 09 Jul 2010 17:49:51 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "9c8b3fc5-cf4c-11e4-8ea4-a165337637e8", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "16770", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6335-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Fri, 20 Mar 2015 22:45:44 GMT", - "source-age": "2377", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/purescript/purescript.json b/federatedcode/static/pictogram-gh-pages/purescript/purescript.json deleted file mode 100644 index ef41b9b..0000000 --- a/federatedcode/static/pictogram-gh-pages/purescript/purescript.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "purescript", - "source": { - "url": "https://avatars3.githubusercontent.com/u/6556677?v=3&s=200", - "referrer": "https://github.com/purescript", - "headers": { - "date": "Fri, 20 Mar 2015 13:47:34 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"556d5792e43131aae9d4e04f373056977b16498d\"", - "last-modified": "Sun, 04 May 2014 19:45:39 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "ebc1d9de-abfe-11e4-81a8-1fd0c4853f23", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "1043", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6334-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Fri, 20 Mar 2015 13:52:34 GMT", - "source-age": "3852044", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/pypi/pypi.json b/federatedcode/static/pictogram-gh-pages/pypi/pypi.json deleted file mode 100644 index e529d66..0000000 --- a/federatedcode/static/pictogram-gh-pages/pypi/pypi.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "pypi", - "source": { - "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Python-logo-notext.svg/1024px-Python-logo-notext.svg.png", - "referrer": "wikipedia", - "headers": { - "server": "nginx/1.9.4", - "date": "Tue, 23 Feb 2016 18:48:11 GMT", - "content-type": "image/png", - "content-length": "73663", - "connection": "close", - "x-object-meta-sha1base36": "b7r64q960agb9lzuxhj43w7t9nbx6m2", - "content-disposition": "inline;filename*=UTF-8''Python-logo-notext.svg.png", - "last-modified": "Thu, 28 Aug 2014 14:31:18 GMT", - "etag": "ed666327dd3ce274d94f2b3547155891", - "x-timestamp": "1409236277.65046", - "x-trans-id": "txdcd1f30413644a95a4e96-0056cab8c7", - "x-varnish": "174832178 92364174, 3852301110 3599779678, 3631330066 3630947417", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "accept-ranges": "bytes", - "age": "127140", - "x-cache": "cp1074 hit(30), cp3046 hit(117), cp3048 frontend hit(2)", - "strict-transport-security": "max-age=31536000", - "set-cookie": [ - "WMF-Last-Access=23-Feb-2016;Path=/;HttpOnly;Expires=Sat, 26 Mar 2016 12:00:00 GMT" - ], - "x-analytics": "https=1;nocookies=1", - "x-client-ip": "81.187.162.80", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/python/python.json b/federatedcode/static/pictogram-gh-pages/python/python.json deleted file mode 100644 index 4462bba..0000000 --- a/federatedcode/static/pictogram-gh-pages/python/python.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "python", - "source": { - "url": "https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Python-logo-notext.svg/1024px-Python-logo-notext.svg.png", - "referrer": "wikipedia", - "headers": { - "server": "nginx/1.9.4", - "date": "Tue, 23 Feb 2016 18:48:05 GMT", - "content-type": "image/png", - "content-length": "73663", - "connection": "close", - "x-object-meta-sha1base36": "b7r64q960agb9lzuxhj43w7t9nbx6m2", - "content-disposition": "inline;filename*=UTF-8''Python-logo-notext.svg.png", - "last-modified": "Thu, 28 Aug 2014 14:31:18 GMT", - "etag": "ed666327dd3ce274d94f2b3547155891", - "x-timestamp": "1409236277.65046", - "x-trans-id": "txdcd1f30413644a95a4e96-0056cab8c7", - "x-varnish": "174832178 92364174, 3852301110 3599779678, 3631305694 3630947417", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "accept-ranges": "bytes", - "age": "127134", - "x-cache": "cp1074 hit(30), cp3046 hit(117), cp3048 frontend hit(1)", - "strict-transport-security": "max-age=31536000", - "set-cookie": [ - "WMF-Last-Access=23-Feb-2016;Path=/;HttpOnly;Expires=Sat, 26 Mar 2016 12:00:00 GMT" - ], - "x-analytics": "https=1;nocookies=1", - "x-client-ip": "81.187.162.80", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/r/r.json b/federatedcode/static/pictogram-gh-pages/r/r.json deleted file mode 100644 index f85eb28..0000000 --- a/federatedcode/static/pictogram-gh-pages/r/r.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "r", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/1/1b/R_logo.svg/200px-R_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:R_logo.svg", - "headers": { - "x-object-meta-sha1base36": "4k5u08r0xmrgw9as845n2yxbcfx2ohl", - "content-disposition": "inline;filename*=UTF-8''R_logo.svg.png", - "last-modified": "Wed, 24 Sep 2014 00:32:30 GMT", - "etag": "4d2a3c398e6dfebc8db0049b2d74055b", - "x-timestamp": "1411518749.34215", - "content-type": "image/png", - "x-trans-id": "tx2f2ab271ce2e4e2686449-00550c4ed7", - "x-varnish": "2379257310 2363119544, 2379253562 2317379629, 3417700854", - "content-length": "35295", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 10:07:47 GMT", - "x-cache": "cp1049 hit (121), cp3017 hit (351), cp3004 frontend miss (0), HIT from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "age": "62518", - "x-cache-lookup": "HIT from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/ruby/ruby.json b/federatedcode/static/pictogram-gh-pages/ruby/ruby.json deleted file mode 100644 index f36a072..0000000 --- a/federatedcode/static/pictogram-gh-pages/ruby/ruby.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "ruby", - "source": { - "url": "https://avatars0.githubusercontent.com/u/210414?v=3&s=200", - "referrer": "https://github.com/ruby", - "headers": { - "date": "Sat, 14 Mar 2015 10:15:13 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Wed, 19 Oct 2011 12:21:53 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "010585d7-ca33-11e4-86eb-0f0eb73790a9", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "32184", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1125-LCY", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sat, 14 Mar 2015 10:20:13 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/rust/rust.json b/federatedcode/static/pictogram-gh-pages/rust/rust.json deleted file mode 100644 index 9cf9c69..0000000 --- a/federatedcode/static/pictogram-gh-pages/rust/rust.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "rust", - "source": { - "url": "https://avatars1.githubusercontent.com/u/5430905?v=3&s=200", - "referrer": "https://github.com/rust-lang", - "headers": { - "date": "Mon, 16 Mar 2015 22:21:44 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Fri, 10 Jan 2014 04:29:00 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "c11a7bc3-cc2a-11e4-89be-4556c9ef9d95", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "15811", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lcy1125-LCY", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Mon, 16 Mar 2015 22:26:44 GMT", - "source-age": "32", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/scala/scala.json b/federatedcode/static/pictogram-gh-pages/scala/scala.json deleted file mode 100644 index 876cbdc..0000000 --- a/federatedcode/static/pictogram-gh-pages/scala/scala.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "scala", - "source": { - "url": "https://avatars1.githubusercontent.com/u/57059?v=3&s=200", - "referrer": "https://github.com/scala", - "headers": { - "date": "Sat, 14 Mar 2015 18:16:57 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"b33c1827875a985cc1c32ad87377a1aad4afa2e5\"", - "last-modified": "Mon, 14 Apr 2014 14:09:58 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "f36a2b9c-b4f4-11e4-86b5-bc82ab0ff7bb", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "13018", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6326-LHR", - "x-cache": "HIT", - "x-cache-hits": "1", - "expires": "Sat, 14 Mar 2015 18:21:57 GMT", - "source-age": "2364528", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/scheme/scheme.json b/federatedcode/static/pictogram-gh-pages/scheme/scheme.json deleted file mode 100644 index 0e7ed75..0000000 --- a/federatedcode/static/pictogram-gh-pages/scheme/scheme.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "scheme", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/3/39/Lambda_lc.svg/200px-Lambda_lc.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Lambda_lc.svg", - "headers": { - "last-modified": "Wed, 23 Oct 2013 08:41:09 GMT", - "etag": "d5e647ec2c09dd8d78e4dd9e17af985c", - "x-timestamp": "1382517668.24772", - "content-type": "image/png", - "x-trans-id": "tx4e212ff236e447819fd40-00550a6320", - "x-varnish": "2865338136 2830755169, 2833241096 2603490708, 2397153080", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "3625", - "accept-ranges": "bytes", - "date": "Fri, 20 Mar 2015 22:27:26 GMT", - "age": "146350", - "connection": "keep-alive", - "x-cache": "cp1064 hit (14), cp3010 hit (60), cp3005 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/shards/shards.json b/federatedcode/static/pictogram-gh-pages/shards/shards.json deleted file mode 100644 index ec7bf3e..0000000 --- a/federatedcode/static/pictogram-gh-pages/shards/shards.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "shards", - "source": { - "url": "https://avatars0.githubusercontent.com/u/6539796?v=3&s=200", - "referrer": "https://github.com/crystal-lang", - "headers": { - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "etag": "\"385531d498d8d3083523aa2eb9510d4160fc3f47\"", - "last-modified": "Fri, 28 Aug 2015 20:04:02 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-xss-protection": "1; mode=block", - "x-github-request-id": "B91F131F:56A6:42E13E2:56D4CA70", - "content-length": "5510", - "accept-ranges": "bytes", - "date": "Tue, 01 Mar 2016 09:33:46 GMT", - "via": "1.1 varnish", - "connection": "close", - "x-served-by": "cache-lhr6322-LHR", - "x-cache": "HIT", - "x-cache-hits": "2", - "access-control-allow-origin": "*", - "x-fastly-request-id": "432c66ef4c48ad83550c08460e7014413570c519", - "expires": "Tue, 01 Mar 2016 09:38:46 GMT", - "source-age": "38794", - "vary": "Authorization,Accept-Encoding" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/sublime/sublime.json b/federatedcode/static/pictogram-gh-pages/sublime/sublime.json deleted file mode 100644 index 898e618..0000000 --- a/federatedcode/static/pictogram-gh-pages/sublime/sublime.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "sublime", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/4/4c/Sublime_Text_Logo.png", - "referrer": "http://en.wikipedia.org/wiki/File:Sublime_Text_Logo.png", - "headers": { - "x-object-meta-sha1base36": "hv36qmmssteu7h0ukpm2uccspz5zryx", - "last-modified": "Thu, 03 Oct 2013 23:05:16 GMT", - "etag": "8a483f7a7efcf995491cb6d6a6474010", - "x-timestamp": "1380841515.42109", - "content-type": "image/png", - "x-trans-id": "txcfd34f52c6e646a1b81c0-005506ed92", - "x-varnish": "2645010696 2614188073, 1824459470 1793825958, 3545802880", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "31566", - "accept-ranges": "bytes", - "date": "Mon, 16 Mar 2015 23:48:14 GMT", - "age": "32299", - "connection": "keep-alive", - "x-cache": "cp1048 hit (91), cp3017 hit (24), cp3018 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/swift/swift.json b/federatedcode/static/pictogram-gh-pages/swift/swift.json deleted file mode 100644 index 9e25a39..0000000 --- a/federatedcode/static/pictogram-gh-pages/swift/swift.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "swift", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/en/4/43/Apple_Swift_Logo.png", - "referrer": "http://en.wikipedia.org/wiki/File:Apple_Swift_Logo.png", - "headers": { - "x-object-meta-sha1base36": "2ptisrx1l054z84wesbuph4ksw8jxac", - "last-modified": "Mon, 02 Jun 2014 19:58:39 GMT", - "etag": "7aa4103a8f6eb0040d3c2d665987c864", - "x-timestamp": "1401739118.51794", - "content-type": "image/png", - "x-trans-id": "tx7163bad1fc1c4552b58b2-0055097825", - "x-varnish": "1445163199, 2769866930 2768810317, 2260152190", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish", - "content-length": "26325", - "accept-ranges": "bytes", - "date": "Wed, 18 Mar 2015 13:15:38 GMT", - "age": "597", - "connection": "keep-alive", - "x-cache": "cp1050 miss (0), cp3008 hit (1), cp3009 frontend miss (0)", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/tex/tex.json b/federatedcode/static/pictogram-gh-pages/tex/tex.json deleted file mode 100644 index 8cfc644..0000000 --- a/federatedcode/static/pictogram-gh-pages/tex/tex.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "tex", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/6/68/TeX_logo.svg/200px-TeX_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:TeX_logo.svg", - "headers": { - "x-object-meta-sha1base36": "qp6w2uvrsdvwrva95lt8iinuxo6zifz", - "content-disposition": "inline;filename*=UTF-8''TeX_logo.svg.png", - "last-modified": "Sun, 02 Mar 2014 07:48:08 GMT", - "etag": "fdb248fa6053759fd85453b9e04ce6f9", - "x-timestamp": "1393746487.81891", - "content-type": "image/png", - "x-trans-id": "tx760ce7dca40c4a83b38a9-00550bfbcf", - "x-varnish": "1807553663 1764028894, 1606043310 1466343979, 2471478251 2471362502", - "content-length": "3739", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:18:58 GMT", - "age": "120420", - "x-cache": "cp1050 hit (12), cp3006 hit (39), cp3010 frontend hit (1), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/typescript/typescript.json b/federatedcode/static/pictogram-gh-pages/typescript/typescript.json deleted file mode 100644 index c3652d3..0000000 --- a/federatedcode/static/pictogram-gh-pages/typescript/typescript.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "typescript", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/a/a6/TypeScript_Logo.png", - "referrer": "http://commons.wikimedia.org/wiki/File:TypeScript_Logo.png", - "headers": { - "x-object-meta-sha1base36": "ta8zk9e0sbxw3dgndt2gf5az2lm2550", - "last-modified": "Fri, 08 Aug 2014 13:37:25 GMT", - "etag": "bd3114606fdd1882d29146523420bcaf", - "x-timestamp": "1407505044.06077", - "content-type": "image/png", - "x-trans-id": "tx9a3ac9c48dc64eea9e35b-00550d72c5", - "x-varnish": "2120026215 2105357961, 3309311353 3276531616, 2561116907", - "content-length": "3617", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 19:52:00 GMT", - "age": "22810", - "x-cache": "cp1063 hit (13), cp3007 hit (18), cp3005 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/wordpress/wordpress.json b/federatedcode/static/pictogram-gh-pages/wordpress/wordpress.json deleted file mode 100644 index 27f0966..0000000 --- a/federatedcode/static/pictogram-gh-pages/wordpress/wordpress.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "wordpress", - "source": { - "url": "https://avatars0.githubusercontent.com/u/276006?v=3&s=200", - "referrer": "https://github.com/wordpress", - "headers": { - "date": "Sun, 15 Mar 2015 10:33:53 GMT", - "server": "Apache", - "access-control-allow-origin": "*", - "cache-control": "max-age=300", - "content-security-policy": "default-src 'none'", - "content-type": "image/png", - "last-modified": "Thu, 01 Dec 2011 07:14:42 GMT", - "strict-transport-security": "max-age=31557600", - "timing-allow-origin": "https://github.com", - "x-content-type-options": "nosniff", - "x-frame-options": "deny", - "x-github-request-id": "c698b2f7-cafe-11e4-8e2f-f7d30ac9dc72", - "x-xss-protection": "1; mode=block", - "host": "avatars.githubusercontent.com", - "content-length": "32964", - "accept-ranges": "bytes", - "via": "1.1 varnish", - "x-served-by": "cache-lhr6323-LHR", - "x-cache": "MISS", - "x-cache-hits": "0", - "expires": "Sun, 15 Mar 2015 10:38:53 GMT", - "source-age": "0", - "vary": "AuthorizationAccept-Encoding", - "keep-alive": "timeout=10, max=50", - "connection": "Keep-Alive" - } - } -} \ No newline at end of file diff --git a/federatedcode/static/pictogram-gh-pages/xml/xml.json b/federatedcode/static/pictogram-gh-pages/xml/xml.json deleted file mode 100644 index efa8457..0000000 --- a/federatedcode/static/pictogram-gh-pages/xml/xml.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "xml", - "source": { - "url": "http://upload.wikimedia.org/wikipedia/commons/thumb/9/9d/Xml_logo.svg/200px-Xml_logo.svg.png", - "referrer": "http://commons.wikimedia.org/wiki/File:Xml_logo.svg", - "headers": { - "last-modified": "Sat, 02 Nov 2013 00:40:48 GMT", - "etag": "99291c0f454283fa81ddd4702d118024", - "x-timestamp": "1383352847.07070", - "content-type": "image/png", - "x-trans-id": "txdf2a4bc6c4c84b5db58df-00550dd009", - "x-varnish": "3532675300, 2957205573 2957142125, 264810498", - "content-length": "3048", - "accept-ranges": "bytes", - "date": "Sat, 21 Mar 2015 20:10:15 GMT", - "age": "29", - "x-cache": "cp1051 miss (0), cp3010 hit (1), cp3018 frontend miss (0), MISS from cache_server", - "access-control-allow-origin": "*", - "access-control-expose-headers": "Age, Date, Content-Length, Content-Range, X-Content-Duration, X-Cache, X-Varnish", - "timing-allow-origin": "*", - "x-cache-lookup": "MISS from cache_server:3128", - "via": "1.1 varnish, 1.1 varnish, 1.1 varnish, 1.0 cache_server:3128 (squid/2.6.STABLE21)", - "connection": "keep-alive" - } - } -} \ No newline at end of file From c9ce4f1a0a7f8a10a0874670d344d7fe1ee19b6c Mon Sep 17 00:00:00 2001 From: Keshav Priyadarshi Date: Tue, 3 Dec 2024 18:28:13 +0530 Subject: [PATCH 14/14] Use proper image path in template Signed-off-by: Keshav Priyadarshi --- fedcode/templatetags/webfinger_image.py | 2 +- fedcode/views.py | 49 ++++++++++++------------- 2 files changed, 25 insertions(+), 26 deletions(-) diff --git a/fedcode/templatetags/webfinger_image.py b/fedcode/templatetags/webfinger_image.py index 84a9d17..56d5f49 100644 --- a/fedcode/templatetags/webfinger_image.py +++ b/fedcode/templatetags/webfinger_image.py @@ -22,6 +22,6 @@ def get_pkg_image(purl_webfinger): try: purl, _ = purl_webfinger.split("@") package_type = PackageURL.from_string(purl).type - return "/" + STATIC_URL + "pictogram-gh-pages/" + package_type + "/" + package_type + ".png" + return STATIC_URL + "pictogram-gh-pages/" + package_type + "/" + package_type + ".png" except ValueError: return "" diff --git a/fedcode/views.py b/fedcode/views.py index 993c332..254b38a 100644 --- a/fedcode/views.py +++ b/fedcode/views.py @@ -42,42 +42,41 @@ from django.views.generic.edit import FormMixin from django.views.generic.edit import UpdateView +from fedcode.activitypub import AP_CONTEXT +from fedcode.activitypub import create_activity_obj +from fedcode.activitypub import has_valid_header +from fedcode.forms import CreateGitRepoForm +from fedcode.forms import CreateNoteForm +from fedcode.forms import CreateReviewForm from fedcode.forms import FetchForm from fedcode.forms import PersonSignUpForm +from fedcode.forms import ReviewStatusForm from fedcode.forms import SearchPackageForm from fedcode.forms import SearchRepositoryForm from fedcode.forms import SearchReviewForm from fedcode.forms import SubscribePackageForm +from fedcode.models import Follow +from fedcode.models import Note +from fedcode.models import Package +from fedcode.models import Person +from fedcode.models import Repository +from fedcode.models import Reputation +from fedcode.models import Review +from fedcode.models import SyncRequest +from fedcode.models import Vulnerability +from fedcode.signatures import FEDERATEDCODE_PUBLIC_KEY +from fedcode.signatures import HttpSignature +from fedcode.utils import ap_collection +from fedcode.utils import full_reverse +from fedcode.utils import generate_webfinger +from fedcode.utils import load_git_file +from fedcode.utils import parse_webfinger +from fedcode.utils import webfinger_actor from federatedcode.settings import AP_CONTENT_TYPE from federatedcode.settings import FEDERATEDCODE_CLIENT_ID from federatedcode.settings import FEDERATEDCODE_CLIENT_SECRET from federatedcode.settings import FEDERATEDCODE_DOMAIN -from .activitypub import AP_CONTEXT -from .activitypub import create_activity_obj -from .activitypub import has_valid_header -from .forms import CreateGitRepoForm -from .forms import CreateNoteForm -from .forms import CreateReviewForm -from .forms import ReviewStatusForm -from .models import Follow -from .models import Note -from .models import Package -from .models import Person -from .models import Repository -from .models import Reputation -from .models import Review -from .models import SyncRequest -from .models import Vulnerability -from .signatures import FEDERATEDCODE_PUBLIC_KEY -from .signatures import HttpSignature -from .utils import ap_collection -from .utils import full_reverse -from .utils import generate_webfinger -from .utils import load_git_file -from .utils import parse_webfinger -from .utils import webfinger_actor - logger = logging.getLogger(__name__)