diff --git a/.gitignore b/.gitignore index 9abc4997..7d6097d2 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,15 @@ # vim *.swp +# database +*.db + +# local copies of Google database loading files +fuji_server/helper/catalogue_helper_google_datasearch_copy.py +fuji_server/helper/create_google_cache_db_copy.py + +# private config +fuji_server/config/github.cfg # Created by https://www.gitignore.io/api/python,linux,macos diff --git a/README.md b/README.md index 1cb83914..a3b70d29 100644 --- a/README.md +++ b/README.md @@ -65,6 +65,8 @@ The F-UJI server can now be started with: python -m fuji_server -c fuji_server/config/server.ini ``` +The OpenAPI user interface is then available at . + ### Docker-based installation ```bash @@ -76,7 +78,7 @@ To access the OpenAPI user interface, open the URL below in the browser: Your OpenAPI definition lives here: - + You can provide a different server config file this way: @@ -100,6 +102,129 @@ If you receive the exception `urllib2.URLError: /fuji/simpleclient/* /var/www/fuji-dev/`. You might need to adjust the file permissions to allow non-root writes. + +Next, +```bash +sudo ln -s /etc/nginx/sites-available/fuji-dev /etc/nginx/sites-enabled/ +sudo nginx -t +sudo service nginx reload +sudo service php8.1-fpm start +``` + +The web client should now be available at . Make sure to adjust the username and password in [`simpleclient/index.php`](./simpleclient/index.php). + +After a restart, it may be necessary to start the services again: + +```bash +sudo service php8.1-fpm start +sudo service nginx start +python -m fuji_server -c fuji_server/config/server.ini +``` + +### Component interaction (walkthrough) + +This walkthrough can guide you through the comprehensive codebase. + +A good starting point is [`fair_object_controller/assess_by_id`](fuji_server/controllers/fair_object_controller.py#36). +Here, we create a [`FAIRCheck`](fuji_server/controllers/fair_check.py) object called `ft`. +This reads the metrics YAML file during initialisation and will provide all the `check` methods. + +Next, several harvesting methods are called, first [`harvest_all_metadata`](fuji_server/controllers/fair_check.py#329), followed by [`harvest_re3_data`](fuji_server/controllers/fair_check.py#345) (Datacite) and [`harvest_github`](fuji_server/controllers/fair_check.py#366) and finally [`harvest_all_data`](fuji_server/controllers/fair_check.py#359). +The harvesters are implemented separately in [`harvester/`](./fuji_server/harvester/), and each of them collects different kinds of data. +This is regardless of the defined metrics, the harvesters always run. +- The metadata harvester looks through HTML markup following schema.org, Dublincore etc., through signposting/typed links. +Ideally, it can find things like author information or license names that way. +- The data harvester is only run if the metadata harvester finds an `object_content_identifier` pointing at content files. +Then, the data harvester runs over the files and checks things like the file format. +- The Github harvester connects with the GitHub API to retrieve metadata and data from software repositories. +It relies on an access token being defined in [`config/github.cfg`](./fujji_server/config/github.cfg). + +After harvesting, all evaluators are called. +Each specific evaluator, e.g. [`FAIREvaluatorLicense`](fuji_server/evaluators/fair_evaluator_license.py), is associated with a specific FsF and/or FAIR4RS metric. +Before the evaluator runs any checks on the harvested data, it asserts that its associated metric is listed in the metrics YAML file. +Only if it is, the evaluator runs through and computes a local score. + +In the end, all scores are aggregated into F, A, I, R scores. + +### Adding support for new metrics + +Start by adding a new metrics YAML file in [`yaml/`](./fuji_server/yaml). +Its name has to match the following regular expression: `(metrics_v)?([0-9]+\.[0-9]+)(_[a-z]+)?(\.yaml)`, +and the content should be structured similarly to the existing metric files. + +Metric names are tested for validity using regular expressions throughout the code. +If your metric names do not match those, not all components of the tool will execute as expected, so make sure to adjust the expressions. +Regular expression groups are also used for mapping to F, A, I, R categories for scoring, and debug messages are only displayed if they are associated with a valid metric. + +Evaluators are mapped to metrics in their `__init__` methods, so adjust existing evaluators to associate with your metric as well or define new evaluators if needed. +The multiple test methods within an evaluator also check whether their specific test is defined. +[`FAIREvaluatorLicense`](fuji_server/evaluators/fair_evaluator_license.py) is an example of an evaluator corresponding to metrics from different sources. + +For each metric, the maturity is determined as the maximum of the maturity associated with each passed test. +This means that if a test indicating maturity 3 is passed and one indicating maturity 2 is not passed, the metric will still be shown to be fulfilled with maturity 3. + +### Updates to the API + +Making changes to the API requires re-generating parts of the code using Swagger. +First, edit [`fuji_server/yaml/openapi.yaml`](fuji_server/yaml/openapi.yaml). +Then, use the [Swagger Editor](https://editor.swagger.io/) to generate a python-flask server. +The zipped files should be automatically downloaded. +Unzip it. + +Next: +1. Place the files in `swagger_server/models` into `fuji_server/models`, except `swagger_server/models/__init__.py`. +2. Rename all occurrences of `swagger_server` to `fuji_server`. +3. Add the content of `swagger_server/models/__init__.py` into `fuji_server/__init__.py`. + +Unfortunately, the Swagger Editor doesn't always produce code that is compliant with PEP standards. +Run `pre-commit run` (or try to commit) and fix any errors that cannot be automatically fixed. ## License This project is licensed under the MIT License; for more details, see the [LICENSE](https://github.com/pangaea-data-publisher/fuji/blob/master/LICENSE) file. diff --git a/fuji_server/__init__.py b/fuji_server/__init__.py index bfec0e01..a69f396f 100644 --- a/fuji_server/__init__.py +++ b/fuji_server/__init__.py @@ -1,38 +1,69 @@ -# -*- coding: utf-8 -*- - # SPDX-FileCopyrightText: 2020 PANGAEA (https://www.pangaea.de/) # # SPDX-License-Identifier: MIT +# coding: utf-8 + # flake8: noqa from __future__ import absolute_import # import models into model package -from fuji_server.models.any_of_fair_results_items import AnyOfFAIRResultsResultsItems +from fuji_server.models.any_of_fair_results_results_items import AnyOfFAIRResultsResultsItems from fuji_server.models.body import Body +from fuji_server.models.community_endorsed_standard import CommunityEndorsedStandard +from fuji_server.models.community_endorsed_standard_output import CommunityEndorsedStandardOutput +from fuji_server.models.community_endorsed_standard_output_inner import CommunityEndorsedStandardOutputInner from fuji_server.models.core_metadata import CoreMetadata from fuji_server.models.core_metadata_output import CoreMetadataOutput +from fuji_server.models.data_access_level import DataAccessLevel +from fuji_server.models.data_access_output import DataAccessOutput +from fuji_server.models.data_content_metadata import DataContentMetadata +from fuji_server.models.data_content_metadata_output import DataContentMetadataOutput +from fuji_server.models.data_content_metadata_output_inner import DataContentMetadataOutputInner +from fuji_server.models.data_file_format import DataFileFormat +from fuji_server.models.data_file_format_output import DataFileFormatOutput +from fuji_server.models.data_file_format_output_inner import DataFileFormatOutputInner +from fuji_server.models.data_provenance import DataProvenance +from fuji_server.models.data_provenance_output import DataProvenanceOutput +from fuji_server.models.data_provenance_output_inner import DataProvenanceOutputInner from fuji_server.models.debug import Debug from fuji_server.models.fair_result_common import FAIRResultCommon from fuji_server.models.fair_result_common_score import FAIRResultCommonScore +from fuji_server.models.fair_result_evaluation_criterium import FAIRResultEvaluationCriterium from fuji_server.models.fair_results import FAIRResults +from fuji_server.models.formal_metadata import FormalMetadata +from fuji_server.models.formal_metadata_output import FormalMetadataOutput +from fuji_server.models.formal_metadata_output_inner import FormalMetadataOutputInner +from fuji_server.models.harvest import Harvest +from fuji_server.models.harvest_results import HarvestResults +from fuji_server.models.harvest_results_metadata import HarvestResultsMetadata from fuji_server.models.identifier_included import IdentifierIncluded from fuji_server.models.identifier_included_output import IdentifierIncludedOutput from fuji_server.models.identifier_included_output_inner import IdentifierIncludedOutputInner from fuji_server.models.license import License from fuji_server.models.license_output import LicenseOutput from fuji_server.models.license_output_inner import LicenseOutputInner +from fuji_server.models.metadata_preserved import MetadataPreserved +from fuji_server.models.metadata_preserved_output import MetadataPreservedOutput from fuji_server.models.metric import Metric from fuji_server.models.metrics import Metrics from fuji_server.models.output_core_metadata_found import OutputCoreMetadataFound from fuji_server.models.output_search_mechanisms import OutputSearchMechanisms from fuji_server.models.persistence import Persistence from fuji_server.models.persistence_output import PersistenceOutput +from fuji_server.models.persistence_output_inner import PersistenceOutputInner from fuji_server.models.related_resource import RelatedResource from fuji_server.models.related_resource_output import RelatedResourceOutput from fuji_server.models.related_resource_output_inner import RelatedResourceOutputInner from fuji_server.models.searchable import Searchable from fuji_server.models.searchable_output import SearchableOutput +from fuji_server.models.semantic_vocabulary import SemanticVocabulary +from fuji_server.models.semantic_vocabulary_output import SemanticVocabularyOutput +from fuji_server.models.semantic_vocabulary_output_inner import SemanticVocabularyOutputInner +from fuji_server.models.standardised_protocol_data import StandardisedProtocolData +from fuji_server.models.standardised_protocol_data_output import StandardisedProtocolDataOutput +from fuji_server.models.standardised_protocol_metadata import StandardisedProtocolMetadata +from fuji_server.models.standardised_protocol_metadata_output import StandardisedProtocolMetadataOutput from fuji_server.models.uniqueness import Uniqueness from fuji_server.models.uniqueness_output import UniquenessOutput diff --git a/fuji_server/config/github.ini b/fuji_server/config/github.ini new file mode 100644 index 00000000..fb32936a --- /dev/null +++ b/fuji_server/config/github.ini @@ -0,0 +1,3 @@ +[ACCESS] +# set equal to access token if available to increase rate limit (usually starts with 'ghp_') +token = diff --git a/fuji_server/controllers/fair_check.py b/fuji_server/controllers/fair_check.py index 2ad8c3e0..04b819d9 100644 --- a/fuji_server/controllers/fair_check.py +++ b/fuji_server/controllers/fair_check.py @@ -37,6 +37,7 @@ from fuji_server.evaluators.fair_evaluator_unique_identifier_data import FAIREvaluatorUniqueIdentifierData from fuji_server.evaluators.fair_evaluator_unique_identifier_metadata import FAIREvaluatorUniqueIdentifierMetadata from fuji_server.harvester.data_harvester import DataHarvester +from fuji_server.harvester.github_harvester import GithubHarvester from fuji_server.harvester.metadata_harvester import MetadataHarvester from fuji_server.helper.linked_vocab_helper import linked_vocab_helper from fuji_server.helper.metadata_collector import MetadataOfferingMethods @@ -80,6 +81,7 @@ def __init__( metadata_service_url=None, metadata_service_type=None, use_datacite=True, + use_github=False, verify_pids=True, oaipmh_endpoint=None, metric_version=None, @@ -137,6 +139,7 @@ def __init__( self.rdf_collector = None self.use_datacite = use_datacite + self.use_github = use_github self.repeat_pid_check = False self.logger_message_stream = io.StringIO() logging.addLevelName(self.LOG_SUCCESS, "SUCCESS") @@ -347,6 +350,17 @@ def harvest_all_data(self): data_harvester.retrieve_all_data() self.content_identifier = data_harvester.data + def harvest_github(self): + if self.use_github: + github_harvester = GithubHarvester(self.id) + github_harvester.harvest() + self.github_data = github_harvester.data + else: + self.github_data = {} + # NOTE: Update list of metrics that are impacted by this as more are implemented. + for m in ["FRSM-15-R1.1"]: + self.logger.warning(f"{m} : Github support disabled, therefore skipping harvesting through Github API") + def retrieve_metadata_embedded(self): self.metadata_harvester.retrieve_metadata_embedded() self.metadata_unmerged.extend(self.metadata_harvester.metadata_unmerged) @@ -512,7 +526,7 @@ def get_log_messages_dict(self): logger_messages = {} self.logger_message_stream.seek(0) for log_message in self.logger_message_stream.readlines(): - if log_message.startswith("FsF-"): + if log_message.startswith("FsF-") or log_message.startswith("FRSM-"): m = log_message.split(":", 1) metric = m[0].strip() message_n_level = m[1].strip().split("|", 1) @@ -541,7 +555,9 @@ def get_assessment_summary(self, results): } for res_k, res_v in enumerate(results): if res_v.get("metric_identifier"): - metric_match = re.search(r"^FsF-(([FAIR])[0-9](\.[0-9])?)-", str(res_v.get("metric_identifier"))) + metric_match = re.search( + r"^(?:FRSM-[0-9]+|FsF)-(([FAIR])[0-9](\.[0-9])?)", str(res_v.get("metric_identifier")) + ) # match both FAIR and FsF metrics if metric_match.group(2) is not None: fair_principle = metric_match[1] fair_category = metric_match[2] diff --git a/fuji_server/controllers/fair_object_controller.py b/fuji_server/controllers/fair_object_controller.py index da14e63d..68e4a78b 100644 --- a/fuji_server/controllers/fair_object_controller.py +++ b/fuji_server/controllers/fair_object_controller.py @@ -39,6 +39,7 @@ async def assess_by_id(body): oaipmh_endpoint = body.get("oaipmh_endpoint") metadata_service_type = body.get("metadata_service_type") usedatacite = body.get("use_datacite") + usegithub = body.get("use_github") metric_version = body.get("metric_version") print("BODY METRIC", metric_version) auth_token = body.get("auth_token") @@ -56,6 +57,7 @@ async def assess_by_id(body): metadata_service_url=metadata_service_endpoint, metadata_service_type=metadata_service_type, use_datacite=usedatacite, + use_github=usegithub, oaipmh_endpoint=oaipmh_endpoint, metric_version=metric_version, ) @@ -80,10 +82,11 @@ async def assess_by_id(body): if ft.repeat_pid_check: ft.retrieve_metadata_external(ft.pid_url, repeat_mode=True) ft.harvest_re3_data() + ft.harvest_github() core_metadata_result = ft.check_minimal_metatadata() # print(ft.metadata_unmerged) content_identifier_included_result = ft.check_data_identifier_included_in_metadata() - # print('F-UJI checks: accsee level') + # print('F-UJI checks: access level') access_level_result = ft.check_data_access_level() # print('F-UJI checks: license') license_result = ft.check_license() diff --git a/fuji_server/data/README.md b/fuji_server/data/README.md new file mode 100644 index 00000000..60c2ccea --- /dev/null +++ b/fuji_server/data/README.md @@ -0,0 +1,21 @@ +# Data files + + +- [`linked_vocabs/*_ontologies.json`](./linked_vocabs) +- [`access_rights.json`](./access_rights.json): Lists COAR, EPRINTS, EU, OPENAIRE access rights. Used for evaluation of the data access level, FsF-A1-01M, which looks for metadata item `access_level`. +- [`bioschemastypes.txt`](./bioschemastypes.txt) +- [`creativeworktypes.txt`](./creativeworktypes.txt) +- [`default_namespaces.txt`](./default_namespaces.txt): Excluded during evaluation of the semantic vocabulary, FsF-I2-01M. +- [`file_formats.json`](./file_formats.json): Dictionary of scientific file formats. Used in evaluation of R1.3-02D to check the file format of the data. +- [`google_cache.db`](./google_cache.db): Used for evaluating FsF-F4-01M (searchability in major catalogues like DataCite registry, Google Dataset, Mendeley, ...). Google Data search is queried for a PID in column `google_links`. It's a dataset with metadata about datasets that have a DOI or persistent identifier from `identifer.org`. +- [`identifiers_org_resolver_data.json`](./identifiers_org_resolver_data.json): Used in [`IdentifierHelper`](fuji_server/helper/identifier_helper.py). +- [`jsonldcontext.json`](./jsonldcontext.json) +- [`licenses.json`](./licenses.json): Used to populate `Preprocessor.license_names`, a list of SPDX licences. Used in evaluation of licenses, FsF-R1.1-01M. +- [`linked_vocab.json`](./linked_vocab.json) +- [`longterm_formats.json`](./longterm_formats.json): This isn't used any more (code is commented out). Instead, the info should be pulled from [`file_formats.json`](./file_formats.json). +- [`metadata_standards_uris.json`](./metadata_standards_uris.json) +- [`metadata_standards.json`](./metadata_standards.json): Used in evaluation of community metadata, FsF-R1.3-01M. +- [`open_formats.json`](./open_formats.json): This isn't used any more (code is commented out). Instead, the info should be pulled from [`file_formats.json`](./file_formats.json). +- [`repodois.yaml`](./repodois.yaml): DOIs from re3data (Datacite). +- [`ResourceTypes.txt`](./ResourceTypes.txt) +- [`standard_uri_protocols.json`](./standard_uri_protocols.json): Used for evaluating access through standardised protocols (FsF-A1-03D). Mapping of acronym to long name (e.g. FTP, SFTP, HTTP etc.) diff --git a/fuji_server/data/repodois.yaml b/fuji_server/data/repodois.yaml index 594c844d..db9707e2 100644 --- a/fuji_server/data/repodois.yaml +++ b/fuji_server/data/repodois.yaml @@ -33,7 +33,7 @@ bl.lincoln: https://doi.org/10.17616/R3MZ01 bl.lshtm: https://doi.org/10.17616/R3705V bl.mendeley: https://doi.org/10.17616/R3DD11 bl.nhm: https://doi.org/10.17616/R3PS7K -bl.oxdb: https://doi.org/10.17616/R3504V +bl.oxdb: https://doi.org/10.17616/R3Q056 bl.reading: https://doi.org/10.17616/R3D075 bl.salford: https://doi.org/10.17616/R31D20 bl.shef: https://doi.org/10.17616/R3P64K @@ -45,6 +45,7 @@ bl.uclan: https://doi.org/10.17616/R38D3J bl.ucld: https://doi.org/10.17616/R34F41 bl.uel: https://doi.org/10.17616/R3V48Z bl.ukda: https://doi.org/10.17616/R3088K +bmbf.hirzqt: https://doi.org/10.17616/R3CK9G brown.bdr: https://doi.org/10.17616/R3193B brvz.rdr: https://doi.org/10.17616/R31NJN5S caltech.data: https://doi.org/10.17616/R3SW99 @@ -55,6 +56,7 @@ cern.hepdata: https://doi.org/10.17616/R30W2H cern.inspire: https://doi.org/10.17616/R3JC9Z cern.zenodo: https://doi.org/10.17616/R3QP53 clarin.clarin: https://doi.org/10.17616/R3RP5D +cngb.cga: https://doi.org/10.17616/R31NJMGL cngb.gigadb: https://doi.org/10.17616/R3TG83 cnic.sciencedb: https://doi.org/10.17616/R31NJMNT concor.kcydcu: https://doi.org/10.17616/R3FJ70 @@ -110,6 +112,7 @@ fzj.b2share: https://doi.org/10.17616/R3VK72 fzj.tereno: https://doi.org/10.17616/R39G9T gbif.ec: https://doi.org/10.17616/R31NJNFS gbif.gbif: https://doi.org/10.17616/R3J014 +gdcc.consorcio: https://doi.org/10.17616/R3S668 gdcc.csuc: https://doi.org/10.17616/R31NJMYF gdcc.harvard-dv: https://doi.org/10.17616/R3C880 gdcc.harvard-sbgr: https://doi.org/10.17616/R3N92J @@ -152,7 +155,7 @@ inist.otelo: https://doi.org/10.17616/R3F19K inist.resif: https://doi.org/10.17616/R37Q06 iris.iris: https://doi.org/10.17616/R3X607 ist.rex: https://doi.org/10.17616/R3877B -ivuw.dadosipb: https://doi.org/10.17616/R31NJN3K +itesm.ojevlu: https://doi.org/10.17616/R31NJNF0 ivuw.ipbdados: https://doi.org/10.17616/R31NJN3K jbru.bbees: https://doi.org/10.17616/R31NJNEN jcvi.eivbwb: https://doi.org/10.17616/R30P93 diff --git a/fuji_server/evaluators/fair_evaluator.py b/fuji_server/evaluators/fair_evaluator.py index 20be5a7a..375cacd3 100644 --- a/fuji_server/evaluators/fair_evaluator.py +++ b/fuji_server/evaluators/fair_evaluator.py @@ -54,7 +54,7 @@ def __init__(self, fuji_instance): self.isDebug = self.fuji.isDebug self.fuji.count = self.fuji.count + 1 self.logger = self.fuji.logger - self.metric_regex = r"FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+(-[0-9]+[a-z]?)?" + self.metric_regex = r"^FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+(-[0-9]+[a-z]?)?|^FRSM-[0-9]+-[FAIR][0-9]?(\.[0-9])?(-[0-9]+)?" # match FsF or FAIR4RS metric identifiers def set_maturity(self, maturity): if self.maturity < maturity: @@ -65,20 +65,27 @@ def set_metric(self, metric_identifier): Parameters ---------- - metric_identifier:str - The metric identifier + metric_identifier: str | list + The metric identifier. Can be a list if the evaluator is used for different metric sources. metrics: str FUJI metrics """ self.metrics = self.fuji.METRICS - self.metric_identifier = metric_identifier + if isinstance(metric_identifier, list): # find out whether one of them + for mid in metric_identifier: + if mid in self.metrics: + self.metric_identifier = mid # choose the first hit - it's unlikely there's more than one, and it doesn't change the behaviour either way + break + self.metric_identifier = None # fallback + else: # str or None + self.metric_identifier = metric_identifier if self.metric_identifier is not None and self.metric_identifier in self.metrics: - self.agnostic_identifier = self.metrics.get(metric_identifier).get("agnostic_identifier") - self.community_identifier = self.metrics.get(metric_identifier).get("metric_identifier") - self.total_score = int(self.metrics.get(metric_identifier).get("total_score")) + self.agnostic_identifier = self.metrics.get(self.metric_identifier).get("agnostic_identifier") + self.community_identifier = self.metrics.get(self.metric_identifier).get("metric_identifier") + self.total_score = int(self.metrics.get(self.metric_identifier).get("total_score")) self.score = FAIRResultCommonScore(total=self.total_score) - self.metric_name = self.metrics.get(metric_identifier).get("metric_name") - self.metric_number = self.metrics.get(metric_identifier).get("metric_number") + self.metric_name = self.metrics.get(self.metric_identifier).get("metric_name") + self.metric_number = self.metrics.get(self.metric_identifier).get("metric_number") self.initializeMetricTests() def evaluate(self): diff --git a/fuji_server/evaluators/fair_evaluator_license.py b/fuji_server/evaluators/fair_evaluator_license.py index 8d54c901..072fce6f 100644 --- a/fuji_server/evaluators/fair_evaluator_license.py +++ b/fuji_server/evaluators/fair_evaluator_license.py @@ -4,9 +4,11 @@ import fnmatch import re +from pathlib import Path import idutils import Levenshtein +import lxml.etree as ET from fuji_server.evaluators.fair_evaluator import FAIREvaluator from fuji_server.models.license import License @@ -29,14 +31,26 @@ class FAIREvaluatorLicense(FAIREvaluator): def __init__(self, fuji_instance): FAIREvaluator.__init__(self, fuji_instance) - self.set_metric("FsF-R1.1-01M") + self.set_metric(["FsF-R1.1-01M", "FRSM-15-R1.1"]) self.output = [] self.license_info = [] + # Create map from metric test names to class functions. This is necessary as functions may be reused for different metrics relating to licenses. + self.metric_test_map = { # overall map + "testLicenseIsValidAndSPDXRegistered": ["FsF-R1.1-01M-2", "FRSM-15-R1.1-3"], + "testLicenseMetadataElementAvailable": ["FsF-R1.1-01M-1", "FRSM-15-R1.1-1"], + "testLicenseFileAtRoot": ["FRSM-15-R1.1-CESSDA-1"], + "testLicenseInHeaders": ["FRSM-15-R1.1-CESSDA-2"], + "testLicenseForBundled": ["FRSM-15-R1.1-2"], + "testBuildScriptChecksLicenseHeader": ["FRSM-15-R1.1-CESSDA-3"], + } + def setLicenseDataAndOutput(self): self.license_info = [] specified_licenses = self.fuji.metadata_merged.get("license") + if specified_licenses is None and self.metric_identifier.startswith("FRSM"): # try GitHub data + specified_licenses = self.fuji.github_data.get("license") if isinstance(specified_licenses, str): # licenses maybe string or list depending on metadata schemas specified_licenses = [specified_licenses] if specified_licenses is not None and specified_licenses != []: @@ -161,28 +175,41 @@ def lookup_license_by_name(self, lvalue, metric_id): return html_url, isOsiApproved, id def testLicenseMetadataElementAvailable(self): + agnostic_test_name = "testLicenseMetadataElementAvailable" test_status = False - if self.isTestDefined(self.metric_identifier + "-1"): - test_score = self.getTestConfigScore(self.metric_identifier + "-1") + test_id = self.metric_test_map[agnostic_test_name] + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + test_score = self.getTestConfigScore(test_id) if self.license_info is not None and self.license_info != []: test_status = True self.logger.log( self.fuji.LOG_SUCCESS, f"{self.metric_identifier} : Found licence information in metadata" ) - self.maturity = self.getTestConfigMaturity(self.metric_identifier + "-1") - self.setEvaluationCriteriumScore(self.metric_identifier + "-1", test_score, "pass") + self.maturity = self.getTestConfigMaturity(test_id) + self.setEvaluationCriteriumScore(test_id, test_score, "pass") self.score.earned += test_score else: self.logger.warning(f"{self.metric_identifier} : License information unavailable in metadata") return test_status def testLicenseIsValidAndSPDXRegistered(self): + agnostic_test_name = "testLicenseIsValidAndSPDXRegistered" test_status = False test_requirements = {} - if self.isTestDefined(self.metric_identifier + "-2"): - if self.metric_tests[self.metric_identifier + "-2"].metric_test_requirements: - test_requirements = self.metric_tests[self.metric_identifier + "-2"].metric_test_requirements[0] - test_score = self.getTestConfigScore(self.metric_identifier + "-2") + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + if self.metric_tests[test_id].metric_test_requirements: + test_requirements = self.metric_tests[test_id].metric_test_requirements[0] + test_score = self.getTestConfigScore(test_id) test_required = [] if test_requirements.get("required"): if isinstance(test_requirements.get("required"), list): @@ -193,8 +220,8 @@ def testLicenseIsValidAndSPDXRegistered(self): test_required = [test_required] self.logger.info( - "{0} : Will exclusively consider community specific licenses for {0}{1} which are specified in metrics -: {2}".format( - self.metric_identifier, "-2", test_requirements.get("required") + "{0} : Will exclusively consider community specific licenses for {0} which are specified in metrics -: {1}".format( + test_id, test_requirements.get("required") ) ) else: @@ -221,10 +248,173 @@ def testLicenseIsValidAndSPDXRegistered(self): ) if test_status: - self.maturity = self.getTestConfigMaturity(self.metric_identifier + "-2") + self.maturity = self.getTestConfigMaturity(test_id) self.score.earned += test_score - self.setEvaluationCriteriumScore(self.metric_identifier + "-2", test_score, "pass") + self.setEvaluationCriteriumScore(test_id, test_score, "pass") + + return test_status + + def testLicenseTXTAtRoot(self): + """Looks for license_path in self.fuji.github_data. Test passes if the license file is called LICENSE.txt and located at project root. + Returns: + bool: True if the test was defined and passed. False otherwise. + """ + agnostic_test_name = "testLicenseFileAtRoot" + test_status = False + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + test_score = self.getTestConfigScore(test_id) + license_path = self.fuji.github_data.get("license_path") + if license_path is not None: + if license_path == "LICENSE.txt": + test_status = True + self.logger.log( + self.fuji.LOG_SUCCESS, f"{self.metric_identifier} : Found LICENSE.txt at repository root." + ) + self.maturity = self.getTestConfigMaturity(test_id) + self.setEvaluationCriteriumScore(test_id, test_score, "pass") + self.score.earned += test_score + else: # identify what's wrong + p = Path(license_path) + if str(p.parent) != ".": + self.logger.warning( + f"{self.metric_identifier} : Found a license file, but it is not located at the root of the repository." + ) + if p.suffix != ".txt": + self.logger.warning( + f"{self.metric_identifier} : Found a license file, but the file suffix is not TXT." + ) + if p.stem != "LICENSE": + self.logger.warning( + f"{self.metric_identifier} : Found a license file, but the file name is not LICENSE." + ) + else: + self.logger.warning(f"{self.metric_identifier} : Did not find a license file.") + return test_status + + def testLicenseInHeaders(self): + """Checks whether a sample of source code files include a license header. Fast-pass if the build script checks for license headers. + + Returns: + bool: True if the test was defined and passed. False otherwise. + """ + agnostic_test_name = "testLicenseInHeaders" + test_status = False + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + test_score = self.getTestConfigScore(test_id) + # check whether CESSDA-3 was run and passed + for tid in self.metric_test_map["testBuildScriptChecksLicenseHeader"]: + if tid in self.metric_tests.keys() and self.metric_tests[tid].metric_test_status == "pass": + test_status = True + self.logger.log( + self.fuji.LOG_SUCCESS, + f"{self.metric_identifier} : Build script checks for license headers, so we can assume that all source files do contain license headers.", + ) + if not test_status: # CESSDA-3 did not pass + source_code_samples = self.fuji.github_data.get("source_code_samples") + if source_code_samples is not None: + license_headers_count = 0 + for sample in source_code_samples: + header_region = "\n".join(sample["content"].decode("utf-8").splitlines()[:30]).lower() + if "license" in header_region: + license_headers_count += 1 + if license_headers_count == len(source_code_samples): + test_status = True + self.logger.log( + self.fuji.LOG_SUCCESS, + f"{self.metric_identifier} : Sample of {len(source_code_samples)} source code files all contained a license header.", + ) + else: + self.logger.warning( + f"{self.metric_identifier} : {license_headers_count} out of a sample of {len(source_code_samples)} source code files were found to contain a license header." + ) + else: + self.logger.warning(f"{self.metric_identifier} : No source code files found.") + if test_status: # test passed, update score and maturity + self.maturity = self.getTestConfigMaturity(test_id) + self.setEvaluationCriteriumScore(test_id, test_score, "pass") + self.score.earned += test_score + return test_status + + def testLicenseForBundled(self): + """Look for license information of bundled components. Not implemented. + + Returns: + bool: True if the test was defined and passed. False otherwise. + """ + agnostic_test_name = "testLicenseForBundled" + test_status = False + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + self.logger.warning( + f"{self.metric_identifier} : Test for license information of bundled components is not implemented." + ) + return test_status + + def testBuildScriptChecksLicenseHeader(self): + """Parses build script looking for command that ensures the presence of license headers. + Currently only for Maven POM files and expects build to fail if license headers are missing. + + Returns: + bool: True if the test was defined and passed. False otherwise. + """ + agnostic_test_name = "testBuildScriptChecksLicenseHeader" + test_status = False + test_defined = False + for test_id in self.metric_test_map[agnostic_test_name]: + if self.isTestDefined(test_id): + test_defined = True + break + if test_defined: + test_score = self.getTestConfigScore(test_id) + # Maven + mvn_pom = self.fuji.github_data.get("mvn_pom") + if mvn_pom is not None: + # Check whether pom.xml uses license:check-file-header to validate license headers. + # See https://www.mojohaus.org/license-maven-plugin/check-file-header-mojo.html for more info. + root = ET.fromstring(mvn_pom) + namespaces = root.nsmap + # look for plugin with artifactID license-maven-plugin + found_license_plugin = False + for plugin in root.iterfind(".//plugin", namespaces): + artifact_id = plugin.find("artifactId", namespaces) + if artifact_id is not None and artifact_id.text == "license-maven-plugin": + found_license_plugin = True + fail_on_missing_header = plugin.find("configuration/failOnMissingHeader", namespaces) + if fail_on_missing_header is not None and fail_on_missing_header.text == "true": + test_status = True + self.logger.log( + self.fuji.LOG_SUCCESS, + f"{self.metric_identifier} : Maven POM checks for license headers in source files.", + ) + self.maturity = self.getTestConfigMaturity(test_id) + self.setEvaluationCriteriumScore(test_id, test_score, "pass") + self.score.earned += test_score + else: + self.logger.warning( + f"{self.metric_identifier} : Maven POM uses license-maven-plugin (license:check-file-header) but does not fail on missing header." + ) + break + if not found_license_plugin: + self.logger.warning( + f"{self.metric_identifier} : Maven POM does not use license-maven-plugin (license:check-file-header) to check for license headers in source code files." + ) + else: + self.logger.warning(f"{self.metric_identifier} : Did not find a Maven POM file.") return test_status def evaluate(self): @@ -239,6 +429,14 @@ def evaluate(self): license_status = "pass" if self.testLicenseIsValidAndSPDXRegistered(): license_status = "pass" + if self.testLicenseTXTAtRoot(): + license_status = "pass" + if self.testLicenseForBundled(): + license_status = "pass" + if self.testBuildScriptChecksLicenseHeader(): + license_status = "pass" + if self.testLicenseInHeaders(): + license_status = "pass" self.result.test_status = license_status self.result.output = self.output diff --git a/fuji_server/harvester/github_harvester.py b/fuji_server/harvester/github_harvester.py new file mode 100644 index 00000000..63153b33 --- /dev/null +++ b/fuji_server/harvester/github_harvester.py @@ -0,0 +1,85 @@ +# SPDX-FileCopyrightText: 2020 PANGAEA (https://www.pangaea.de/) +# +# SPDX-License-Identifier: MIT + +import os +from configparser import ConfigParser + +from github import Auth, Github +from github.GithubException import UnknownObjectException + + +class GithubHarvester: + def __init__(self, id, host="https://github.com"): + # Read Github API access token from config file. + config = ConfigParser() + config.read(os.path.join(os.path.abspath(os.path.dirname(__file__)), "../config/github.ini")) + token = config["ACCESS"]["token"] + if token != "": + auth = Auth.Token(token) + else: # empty token, so no authentication possible (rate limit will be much lower) + auth = None + print("Running in unauthenticated mode. Capabilities are limited.") # TODO: this should be a log message + self.id = id + self.host = host + if host != "https://github.com": + base_url = f"{self.host}/api/v3" + self.handle = Github(auth=auth, base_url=base_url) + else: + self.handle = Github(auth=auth) + self.data = {} # dictionary with all info + + def harvest(self): + # check if it's a URL or repo ID + # NOTE: this should probably be handled by IdentifierHelper, but I don't understand that module yet. + if self.id.count("/") > 1: # URL + self.url = self.id + _, self.username, self.repo_name = self.id.rsplit("/", 2) + else: # repo ID + self.username, self.repo_name = self.id.split("/") + self.url = "/".join([self.endpoint, self.username, self.repo_name]) + self.repo_id = "/".join([self.username, self.repo_name]) + + # access repo via GitHub API + try: + repo = self.handle.get_repo(self.repo_id) + except UnknownObjectException: + print("Could not find repo.") # TODO: this should be a log message + return + + # harvesting + try: # LICENSE + license_file = repo.get_license() + self.data["license_path"] = license_file.path + self.data["license"] = license_file.license.name + except UnknownObjectException: + pass + + try: # Maven POM + mvn_pom_file = repo.get_contents("pom.xml") + self.data["mvn_pom"] = mvn_pom_file.decoded_content + except UnknownObjectException: + pass + + # identify source code + repo_languages = repo.get_languages() + if repo_languages != {}: + self.data["languages"] = repo_languages + main_source_code_language = repo.language + if main_source_code_language is not None: + self.data["main_language"] = main_source_code_language + query = f" repo:{self.repo_id} language:{main_source_code_language}" # needs the space in front as every query needs a string to match on + source_code_files = self.handle.search_code(query) + # extract code of up to n=5 files + n = min(5, source_code_files.totalCount) + source_code_samples = [] + for i in range(n): + source_code_samples.append( + { + "path": source_code_files[i].path, + "language": main_source_code_language, + "content": source_code_files[i].decoded_content, + } + ) + if len(source_code_samples) > 0: + self.data["source_code_samples"] = source_code_samples diff --git a/fuji_server/helper/metadata_mapper.py b/fuji_server/helper/metadata_mapper.py index 448eb786..09ee092c 100644 --- a/fuji_server/helper/metadata_mapper.py +++ b/fuji_server/helper/metadata_mapper.py @@ -60,6 +60,7 @@ def flip_dict(dict_to_flip): "right_holder": {"label": "License", "sameAs": "http://purl.org/dc/terms/rightsHolder"}, "object_size": {"label": "Object Size", "sameAs": "http://purl.org/dc/terms/extent"}, "language": {"label": "Language", "sameAs": "http://purl.org/dc/terms/language"}, + "license_path": {"label": "License Path", "sameAs": None}, } # core metadata elements (FsF-F2-01M) @@ -224,7 +225,9 @@ def flip_dict(dict_to_flip): MICRODATA_MAPPING = ( "{object_type: type, title: properties.name, summary: properties.description, publication_date: properties.datePublished, " "publisher: (properties.publisher.properties.name || properties.publisher)," - "creator: (properties.creator.properties.name || properties.author.properties.name)" + "creator: (properties.creator.properties.name || properties.author.properties.name || properties.author)," + "license_path: properties.license," + "description: properties.text" "}" ) diff --git a/fuji_server/helper/metric_helper.py b/fuji_server/helper/metric_helper.py index f6206349..ff95e430 100644 --- a/fuji_server/helper/metric_helper.py +++ b/fuji_server/helper/metric_helper.py @@ -18,8 +18,9 @@ def __init__(self, metric_input_file_name, logger=None): self.metric_version = None self.total_metrics = 0 self.all_metrics_list = None - self.metric_regex = r"FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+" - self.metric_test_regex = r"FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+(-[0-9]+[a-z]?)" + # match FsF or FAIR4RS metric (test) identifiers + self.metric_regex = r"^FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+|FRSM-[0-9]+-[FAIR][0-9]?(\.[0-9])?" + self.metric_test_regex = r"FsF-[FAIR][0-9]?(\.[0-9])?-[0-9]+[MD]+(-[0-9]+[a-z]?)|^FRSM-[0-9]+-[FAIR][0-9]?(\.[0-9])?(?:-[a-zA-Z]+)?(-[0-9]+)?" self.config = {} if logger: self.logger = logger diff --git a/fuji_server/models/any_of_fair_results_items.py b/fuji_server/models/any_of_fair_results_results_items.py old mode 100644 new mode 100755 similarity index 92% rename from fuji_server/models/any_of_fair_results_items.py rename to fuji_server/models/any_of_fair_results_results_items.py index dc9bf620..f10c9862 --- a/fuji_server/models/any_of_fair_results_items.py +++ b/fuji_server/models/any_of_fair_results_results_items.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/base_model_.py b/fuji_server/models/base_model_.py index e2f3a6fa..ecffcc28 100644 --- a/fuji_server/models/base_model_.py +++ b/fuji_server/models/base_model_.py @@ -5,6 +5,8 @@ import pprint import typing +import six + from fuji_server import util T = typing.TypeVar("T") @@ -31,7 +33,7 @@ def to_dict(self): """ result = {} - for attr, _ in self.swagger_types.items(): + for attr, _ in six.iteritems(self.swagger_types): value = getattr(self, attr) if isinstance(value, list): result[attr] = list(map(lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value)) diff --git a/fuji_server/models/body.py b/fuji_server/models/body.py index 8ddd15a6..96582174 100644 --- a/fuji_server/models/body.py +++ b/fuji_server/models/body.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model @@ -19,6 +23,7 @@ def __init__( metadata_service_endpoint: str | None = None, metadata_service_type: str | None = None, use_datacite: bool | None = None, + use_github: bool | None = None, metric_version: str | None = None, auth_token: str | None = None, auth_token_type: str | None = None, @@ -36,6 +41,8 @@ def __init__( :type metadata_service_type: str :param use_datacite: The use_datacite of this Body. # noqa: E501 :type use_datacite: bool + :param use_github: The use_github of this Body. # noqa: E501 + :type use_github: bool :param metric_version: The metric_version of this Body. # noqa: E501 :type metric_version: str :param auth_token: The auth_token of this Body. # noqa: E501 @@ -51,6 +58,7 @@ def __init__( "metadata_service_endpoint": str, "metadata_service_type": str, "use_datacite": bool, + "use_github": bool, "metric_version": str, "auth_token": str, "auth_token_type": str, @@ -63,6 +71,7 @@ def __init__( "metadata_service_endpoint": "metadata_service_endpoint", "metadata_service_type": "metadata_service_type", "use_datacite": "use_datacite", + "use_github": "use_github", "metric_version": "metric_version", "auth_token": "auth_token", "auth_token_type": "auth_token_type", @@ -73,6 +82,7 @@ def __init__( self._metadata_service_endpoint = metadata_service_endpoint self._metadata_service_type = metadata_service_type self._use_datacite = use_datacite + self._use_github = use_github self._metric_version = metric_version self._auth_token = auth_token self._auth_token_type = auth_token_type @@ -204,6 +214,29 @@ def use_datacite(self, use_datacite: bool): self._use_datacite = use_datacite + @property + def use_github(self) -> bool: + """Gets the use_github of this Body. + + Indicates if the GitHub REST API shall be used to collect (meta)data # noqa: E501 + + :return: The use_github of this Body. + :rtype: bool + """ + return self._use_github + + @use_github.setter + def use_github(self, use_github: bool): + """Sets the use_github of this Body. + + Indicates if the GitHub REST API shall be used to collect (meta)data # noqa: E501 + + :param use_github: The use_github of this Body. + :type use_github: bool + """ + + self._use_github = use_github + @property def metric_version(self) -> str: """Gets the metric_version of this Body. diff --git a/fuji_server/models/community_endorsed_standard.py b/fuji_server/models/community_endorsed_standard.py index 534993ff..20149ff4 100644 --- a/fuji_server/models/community_endorsed_standard.py +++ b/fuji_server/models/community_endorsed_standard.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.community_endorsed_standard_output import CommunityEndorsedStandardOutput @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: CommunityEndorsedStandardOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this CommunityEndorsedStandard. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this CommunityEndorsedStandard. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this CommunityEndorsedStandard. # noqa: E501 :type output: CommunityEndorsedStandardOutput :param test_debug: The test_debug of this CommunityEndorsedStandard. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": CommunityEndorsedStandardOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this CommunityEndorsedStandard. :return: The maturity of this CommunityEndorsedStandard. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this CommunityEndorsedStandard. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this CommunityEndorsedStandard. :type maturity: int """ diff --git a/fuji_server/models/community_endorsed_standard_output.py b/fuji_server/models/community_endorsed_standard_output.py index bdc441ba..d62f0424 100644 --- a/fuji_server/models/community_endorsed_standard_output.py +++ b/fuji_server/models/community_endorsed_standard_output.py @@ -2,8 +2,15 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model +from fuji_server.models.community_endorsed_standard_output_inner import ( + CommunityEndorsedStandardOutputInner, # noqa: F401 +) class CommunityEndorsedStandardOutput(Model): diff --git a/fuji_server/models/community_endorsed_standard_output_inner.py b/fuji_server/models/community_endorsed_standard_output_inner.py index f1f42b33..4ca8167b 100644 --- a/fuji_server/models/community_endorsed_standard_output_inner.py +++ b/fuji_server/models/community_endorsed_standard_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/core_metadata.py b/fuji_server/models/core_metadata.py index d580710a..404abbbb 100644 --- a/fuji_server/models/core_metadata.py +++ b/fuji_server/models/core_metadata.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.core_metadata_output import CoreMetadataOutput diff --git a/fuji_server/models/core_metadata_output.py b/fuji_server/models/core_metadata_output.py index f2fee40d..41ca5047 100644 --- a/fuji_server/models/core_metadata_output.py +++ b/fuji_server/models/core_metadata_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.output_core_metadata_found import OutputCoreMetadataFound diff --git a/fuji_server/models/data_access_level.py b/fuji_server/models/data_access_level.py index 50ef52fe..92ceaffe 100644 --- a/fuji_server/models/data_access_level.py +++ b/fuji_server/models/data_access_level.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_access_output import DataAccessOutput @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: DataAccessOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this DataAccessLevel. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this DataAccessLevel. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this DataAccessLevel. # noqa: E501 :type output: DataAccessOutput :param test_debug: The test_debug of this DataAccessLevel. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": DataAccessOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this DataAccessLevel. :return: The maturity of this DataAccessLevel. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this DataAccessLevel. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this DataAccessLevel. :type maturity: int """ diff --git a/fuji_server/models/data_access_output.py b/fuji_server/models/data_access_output.py index b1892896..30280453 100644 --- a/fuji_server/models/data_access_output.py +++ b/fuji_server/models/data_access_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/data_content_metadata.py b/fuji_server/models/data_content_metadata.py index a29e5cac..e7ba6de9 100644 --- a/fuji_server/models/data_content_metadata.py +++ b/fuji_server/models/data_content_metadata.py @@ -2,10 +2,15 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_content_metadata_output import DataContentMetadataOutput from fuji_server.models.debug import Debug +from fuji_server.models.fair_result_common import FAIRResultCommon # noqa: F401 from fuji_server.models.fair_result_common_score import FAIRResultCommonScore from fuji_server.models.fair_result_evaluation_criterium import FAIRResultEvaluationCriterium @@ -24,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: DataContentMetadataOutput = None, test_debug: Debug = None, ): @@ -43,7 +48,7 @@ def __init__( :param score: The score of this DataContentMetadata. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this DataContentMetadata. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this DataContentMetadata. # noqa: E501 :type output: DataContentMetadataOutput :param test_debug: The test_debug of this DataContentMetadata. # noqa: E501 @@ -56,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": DataContentMetadataOutput, "test_debug": Debug, } @@ -231,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this DataContentMetadata. :return: The maturity of this DataContentMetadata. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this DataContentMetadata. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this DataContentMetadata. :type maturity: int """ diff --git a/fuji_server/models/data_content_metadata_output.py b/fuji_server/models/data_content_metadata_output.py index eadfb43a..fbd2d0b8 100644 --- a/fuji_server/models/data_content_metadata_output.py +++ b/fuji_server/models/data_content_metadata_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_content_metadata_output_inner import DataContentMetadataOutputInner diff --git a/fuji_server/models/data_content_metadata_output_inner.py b/fuji_server/models/data_content_metadata_output_inner.py index 2d68d64a..cb4f972b 100644 --- a/fuji_server/models/data_content_metadata_output_inner.py +++ b/fuji_server/models/data_content_metadata_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/data_file_format.py b/fuji_server/models/data_file_format.py index 8e7cb8cc..ef565d56 100644 --- a/fuji_server/models/data_file_format.py +++ b/fuji_server/models/data_file_format.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_file_format_output import DataFileFormatOutput @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: DataFileFormatOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this DataFileFormat. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this DataFileFormat. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this DataFileFormat. # noqa: E501 :type output: DataFileFormatOutput :param test_debug: The test_debug of this DataFileFormat. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": DataFileFormatOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this DataFileFormat. :return: The maturity of this DataFileFormat. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this DataFileFormat. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this DataFileFormat. :type maturity: int """ diff --git a/fuji_server/models/data_file_format_output.py b/fuji_server/models/data_file_format_output.py index 1098985b..c2e42b6e 100644 --- a/fuji_server/models/data_file_format_output.py +++ b/fuji_server/models/data_file_format_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_file_format_output_inner import DataFileFormatOutputInner # noqa: F401 diff --git a/fuji_server/models/data_file_format_output_inner.py b/fuji_server/models/data_file_format_output_inner.py index 1f585cf8..59adaa3a 100644 --- a/fuji_server/models/data_file_format_output_inner.py +++ b/fuji_server/models/data_file_format_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/data_provenance.py b/fuji_server/models/data_provenance.py index fd7b990c..25040c54 100644 --- a/fuji_server/models/data_provenance.py +++ b/fuji_server/models/data_provenance.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_provenance_output import DataProvenanceOutput @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: DataProvenanceOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this DataProvenance. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this DataProvenance. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this DataProvenance. # noqa: E501 :type output: DataProvenanceOutput :param test_debug: The test_debug of this DataProvenance. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": DataProvenanceOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this DataProvenance. :return: The maturity of this DataProvenance. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this DataProvenance. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this DataProvenance. :type maturity: int """ diff --git a/fuji_server/models/data_provenance_output.py b/fuji_server/models/data_provenance_output.py index 1514d4a4..9fc62858 100644 --- a/fuji_server/models/data_provenance_output.py +++ b/fuji_server/models/data_provenance_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.data_provenance_output_inner import DataProvenanceOutputInner diff --git a/fuji_server/models/data_provenance_output_inner.py b/fuji_server/models/data_provenance_output_inner.py index 797a1e50..cc20ce95 100644 --- a/fuji_server/models/data_provenance_output_inner.py +++ b/fuji_server/models/data_provenance_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/debug.py b/fuji_server/models/debug.py index f163bd5e..8e9007c7 100644 --- a/fuji_server/models/debug.py +++ b/fuji_server/models/debug.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/fair_result_common.py b/fuji_server/models/fair_result_common.py index 93e51326..3ae12723 100644 --- a/fuji_server/models/fair_result_common.py +++ b/fuji_server/models/fair_result_common.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.fair_result_common_score import FAIRResultCommonScore diff --git a/fuji_server/models/fair_result_common_score.py b/fuji_server/models/fair_result_common_score.py index 5c81e042..3e145d29 100644 --- a/fuji_server/models/fair_result_common_score.py +++ b/fuji_server/models/fair_result_common_score.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/fair_result_evaluation_criterium.py b/fuji_server/models/fair_result_evaluation_criterium.py index 6e8273f6..a1e9228e 100644 --- a/fuji_server/models/fair_result_evaluation_criterium.py +++ b/fuji_server/models/fair_result_evaluation_criterium.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.fair_result_common_score import FAIRResultCommonScore diff --git a/fuji_server/models/fair_results.py b/fuji_server/models/fair_results.py index 210d9326..a7744473 100644 --- a/fuji_server/models/fair_results.py +++ b/fuji_server/models/fair_results.py @@ -2,11 +2,12 @@ # # SPDX-License-Identifier: MIT -from datetime import datetime +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 -# from fuji_server.models.any_of_fair_results_results_items import AnyOfFAIRResultsResultsItems from fuji_server import util -from fuji_server.models.any_of_fair_results_items import AnyOfFAIRResultsResultsItems +from fuji_server.models.any_of_fair_results_results_items import AnyOfFAIRResultsResultsItems from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/formal_metadata.py b/fuji_server/models/formal_metadata.py index 2f72b3de..f4cb128f 100644 --- a/fuji_server/models/formal_metadata.py +++ b/fuji_server/models/formal_metadata.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: FormalMetadataOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this FormalMetadata. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this FormalMetadata. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this FormalMetadata. # noqa: E501 :type output: FormalMetadataOutput :param test_debug: The test_debug of this FormalMetadata. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": FormalMetadataOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this FormalMetadata. :return: The maturity of this FormalMetadata. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this FormalMetadata. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this FormalMetadata. :type maturity: int """ diff --git a/fuji_server/models/formal_metadata_output.py b/fuji_server/models/formal_metadata_output.py index ea571eb5..e23d6837 100644 --- a/fuji_server/models/formal_metadata_output.py +++ b/fuji_server/models/formal_metadata_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.formal_metadata_output_inner import FormalMetadataOutputInner # noqa: F401 diff --git a/fuji_server/models/formal_metadata_output_inner.py b/fuji_server/models/formal_metadata_output_inner.py index 9fb02d34..b44f5a10 100644 --- a/fuji_server/models/formal_metadata_output_inner.py +++ b/fuji_server/models/formal_metadata_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/harvest.py b/fuji_server/models/harvest.py index 8bfa244b..afc03a2f 100644 --- a/fuji_server/models/harvest.py +++ b/fuji_server/models/harvest.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/harvest_results.py b/fuji_server/models/harvest_results.py index 5892b5b7..02e5742d 100644 --- a/fuji_server/models/harvest_results.py +++ b/fuji_server/models/harvest_results.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.harvest_results_metadata import HarvestResultsMetadata diff --git a/fuji_server/models/harvest_results_metadata.py b/fuji_server/models/harvest_results_metadata.py index 9eee833e..e8fa7736 100644 --- a/fuji_server/models/harvest_results_metadata.py +++ b/fuji_server/models/harvest_results_metadata.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/identifier_included.py b/fuji_server/models/identifier_included.py index 8bc5c761..04810b52 100644 --- a/fuji_server/models/identifier_included.py +++ b/fuji_server/models/identifier_included.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: IdentifierIncludedOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this IdentifierIncluded. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this IdentifierIncluded. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this IdentifierIncluded. # noqa: E501 :type output: IdentifierIncludedOutput :param test_debug: The test_debug of this IdentifierIncluded. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": IdentifierIncludedOutput, "test_debug": Debug, } @@ -232,22 +236,22 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this IdentifierIncluded. :return: The maturity of this IdentifierIncluded. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter - def maturity(self, maturity: str): + def maturity(self, maturity: int): """Sets the maturity of this IdentifierIncluded. :param maturity: The maturity of this IdentifierIncluded. - :type maturity: str + :type maturity: int """ self._maturity = maturity diff --git a/fuji_server/models/identifier_included_output.py b/fuji_server/models/identifier_included_output.py index bf305f0a..d4838356 100644 --- a/fuji_server/models/identifier_included_output.py +++ b/fuji_server/models/identifier_included_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.identifier_included_output_inner import IdentifierIncludedOutputInner @@ -13,15 +17,28 @@ class IdentifierIncludedOutput(Model): Do not edit the class manually. """ - def __init__(self, object_content_identifier_included: list[IdentifierIncludedOutputInner] | None = None): + def __init__( + self, + object_identifier_included: str | None = None, + object_content_identifier_included: list[IdentifierIncludedOutputInner] | None = None, + ): """IdentifierIncludedOutput - a model defined in Swagger + :param object_identifier_included: The object_identifier_included of this IdentifierIncludedOutput. # noqa: E501 + :type object_identifier_included: str :param object_content_identifier_included: The object_content_identifier_included of this IdentifierIncludedOutput. # noqa: E501 :type object_content_identifier_included: List[IdentifierIncludedOutputInner] """ - self.swagger_types = {"object_content_identifier_included": list[IdentifierIncludedOutputInner]} - - self.attribute_map = {"object_content_identifier_included": "object_content_identifier_included"} + self.swagger_types = { + "object_identifier_included": str, + "object_content_identifier_included": list[IdentifierIncludedOutputInner], + } + + self.attribute_map = { + "object_identifier_included": "object_identifier_included", + "object_content_identifier_included": "object_content_identifier_included", + } + self._object_identifier_included = object_identifier_included self._object_content_identifier_included = object_content_identifier_included @classmethod @@ -35,6 +52,27 @@ def from_dict(cls, dikt) -> "IdentifierIncludedOutput": """ return util.deserialize_model(dikt, cls) + @property + def object_identifier_included(self) -> str: + """Gets the object_identifier_included of this IdentifierIncludedOutput. + + + :return: The object_identifier_included of this IdentifierIncludedOutput. + :rtype: str + """ + return self._object_identifier_included + + @object_identifier_included.setter + def object_identifier_included(self, object_identifier_included: str): + """Sets the object_identifier_included of this IdentifierIncludedOutput. + + + :param object_identifier_included: The object_identifier_included of this IdentifierIncludedOutput. + :type object_identifier_included: str + """ + + self._object_identifier_included = object_identifier_included + @property def object_content_identifier_included(self) -> list[IdentifierIncludedOutputInner]: """Gets the object_content_identifier_included of this IdentifierIncludedOutput. diff --git a/fuji_server/models/identifier_included_output_inner.py b/fuji_server/models/identifier_included_output_inner.py index 061657b2..367a2768 100644 --- a/fuji_server/models/identifier_included_output_inner.py +++ b/fuji_server/models/identifier_included_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/license.py b/fuji_server/models/license.py index dc61ab81..66b839e7 100644 --- a/fuji_server/models/license.py +++ b/fuji_server/models/license.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: LicenseOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this License. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this License. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this License. # noqa: E501 :type output: LicenseOutput :param test_debug: The test_debug of this License. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": LicenseOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this License. :return: The maturity of this License. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this License. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this License. :type maturity: int """ diff --git a/fuji_server/models/license_output.py b/fuji_server/models/license_output.py index 60242a36..cfb94589 100644 --- a/fuji_server/models/license_output.py +++ b/fuji_server/models/license_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.license_output_inner import LicenseOutputInner # noqa: F401 diff --git a/fuji_server/models/license_output_inner.py b/fuji_server/models/license_output_inner.py index d96bf330..81e6bd3d 100644 --- a/fuji_server/models/license_output_inner.py +++ b/fuji_server/models/license_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/metadata_preserved.py b/fuji_server/models/metadata_preserved.py index 5cd93890..f47ef95c 100644 --- a/fuji_server/models/metadata_preserved.py +++ b/fuji_server/models/metadata_preserved.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: MetadataPreservedOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this MetadataPreserved. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this MetadataPreserved. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this MetadataPreserved. # noqa: E501 :type output: MetadataPreservedOutput :param test_debug: The test_debug of this MetadataPreserved. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": MetadataPreservedOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this MetadataPreserved. :return: The maturity of this MetadataPreserved. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this MetadataPreserved. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this MetadataPreserved. :type maturity: int """ diff --git a/fuji_server/models/metadata_preserved_output.py b/fuji_server/models/metadata_preserved_output.py index 758355d4..64e1b25e 100644 --- a/fuji_server/models/metadata_preserved_output.py +++ b/fuji_server/models/metadata_preserved_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/metric.py b/fuji_server/models/metric.py index b2ad5594..5739663f 100644 --- a/fuji_server/models/metric.py +++ b/fuji_server/models/metric.py @@ -2,7 +2,9 @@ # # SPDX-License-Identifier: MIT -from datetime import date +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/metrics.py b/fuji_server/models/metrics.py index 24d3e8da..d0628c05 100644 --- a/fuji_server/models/metrics.py +++ b/fuji_server/models/metrics.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.metric import Metric diff --git a/fuji_server/models/output_core_metadata_found.py b/fuji_server/models/output_core_metadata_found.py index c6dbd583..9c895c64 100644 --- a/fuji_server/models/output_core_metadata_found.py +++ b/fuji_server/models/output_core_metadata_found.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/output_search_mechanisms.py b/fuji_server/models/output_search_mechanisms.py index e97c9350..225ce838 100644 --- a/fuji_server/models/output_search_mechanisms.py +++ b/fuji_server/models/output_search_mechanisms.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/persistence.py b/fuji_server/models/persistence.py index 43da4999..a3061d20 100644 --- a/fuji_server/models/persistence.py +++ b/fuji_server/models/persistence.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: PersistenceOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this Persistence. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this Persistence. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this Persistence. # noqa: E501 :type output: PersistenceOutput :param test_debug: The test_debug of this Persistence. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": PersistenceOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this Persistence. :return: The maturity of this Persistence. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this Persistence. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this Persistence. :type maturity: int """ diff --git a/fuji_server/models/persistence_output.py b/fuji_server/models/persistence_output.py index 715e4796..2f9ca030 100644 --- a/fuji_server/models/persistence_output.py +++ b/fuji_server/models/persistence_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.persistence_output_inner import PersistenceOutputInner diff --git a/fuji_server/models/persistence_output_inner.py b/fuji_server/models/persistence_output_inner.py index e03150ca..ee0503cb 100644 --- a/fuji_server/models/persistence_output_inner.py +++ b/fuji_server/models/persistence_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/related_resource.py b/fuji_server/models/related_resource.py index e0333d31..ef32315d 100644 --- a/fuji_server/models/related_resource.py +++ b/fuji_server/models/related_resource.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: RelatedResourceOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this RelatedResource. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this RelatedResource. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this RelatedResource. # noqa: E501 :type output: RelatedResourceOutput :param test_debug: The test_debug of this RelatedResource. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": RelatedResourceOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this RelatedResource. :return: The maturity of this RelatedResource. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this RelatedResource. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this RelatedResource. :type maturity: int """ diff --git a/fuji_server/models/related_resource_output.py b/fuji_server/models/related_resource_output.py index d0a714d1..004c7fc9 100644 --- a/fuji_server/models/related_resource_output.py +++ b/fuji_server/models/related_resource_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.related_resource_output_inner import RelatedResourceOutputInner # noqa: F401 diff --git a/fuji_server/models/related_resource_output_inner.py b/fuji_server/models/related_resource_output_inner.py index 06c00f04..c9e4ed76 100644 --- a/fuji_server/models/related_resource_output_inner.py +++ b/fuji_server/models/related_resource_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/searchable.py b/fuji_server/models/searchable.py index 7512ab21..8beb479f 100644 --- a/fuji_server/models/searchable.py +++ b/fuji_server/models/searchable.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: SearchableOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this Searchable. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this Searchable. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this Searchable. # noqa: E501 :type output: SearchableOutput :param test_debug: The test_debug of this Searchable. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": SearchableOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this Searchable. :return: The maturity of this Searchable. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this Searchable. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this Searchable. :type maturity: int """ diff --git a/fuji_server/models/searchable_output.py b/fuji_server/models/searchable_output.py index 196fee90..c7162cc8 100644 --- a/fuji_server/models/searchable_output.py +++ b/fuji_server/models/searchable_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.output_search_mechanisms import OutputSearchMechanisms diff --git a/fuji_server/models/semantic_vocabulary.py b/fuji_server/models/semantic_vocabulary.py index f34c6622..a0c9f004 100644 --- a/fuji_server/models/semantic_vocabulary.py +++ b/fuji_server/models/semantic_vocabulary.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: SemanticVocabularyOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this SemanticVocabulary. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this SemanticVocabulary. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this SemanticVocabulary. # noqa: E501 :type output: SemanticVocabularyOutput :param test_debug: The test_debug of this SemanticVocabulary. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": SemanticVocabularyOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this SemanticVocabulary. :return: The maturity of this SemanticVocabulary. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this SemanticVocabulary. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this SemanticVocabulary. :type maturity: int """ diff --git a/fuji_server/models/semantic_vocabulary_output.py b/fuji_server/models/semantic_vocabulary_output.py index 87b1cbc1..43101a36 100644 --- a/fuji_server/models/semantic_vocabulary_output.py +++ b/fuji_server/models/semantic_vocabulary_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.semantic_vocabulary_output_inner import SemanticVocabularyOutputInner # noqa: F401 diff --git a/fuji_server/models/semantic_vocabulary_output_inner.py b/fuji_server/models/semantic_vocabulary_output_inner.py index 4b62301d..d892aeb2 100644 --- a/fuji_server/models/semantic_vocabulary_output_inner.py +++ b/fuji_server/models/semantic_vocabulary_output_inner.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/standardised_protocol_data.py b/fuji_server/models/standardised_protocol_data.py index 5eb99cba..c3ef3aab 100644 --- a/fuji_server/models/standardised_protocol_data.py +++ b/fuji_server/models/standardised_protocol_data.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: StandardisedProtocolDataOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this StandardisedProtocolData. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this StandardisedProtocolData. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this StandardisedProtocolData. # noqa: E501 :type output: StandardisedProtocolDataOutput :param test_debug: The test_debug of this StandardisedProtocolData. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": StandardisedProtocolDataOutput, "test_debug": Debug, } @@ -232,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this StandardisedProtocolData. :return: The maturity of this StandardisedProtocolData. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this StandardisedProtocolData. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this StandardisedProtocolData. :type maturity: int """ diff --git a/fuji_server/models/standardised_protocol_data_output.py b/fuji_server/models/standardised_protocol_data_output.py index 0edd378b..cc8f69e3 100644 --- a/fuji_server/models/standardised_protocol_data_output.py +++ b/fuji_server/models/standardised_protocol_data_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/standardised_protocol_metadata.py b/fuji_server/models/standardised_protocol_metadata.py index 4bbc9ab1..968449fe 100644 --- a/fuji_server/models/standardised_protocol_metadata.py +++ b/fuji_server/models/standardised_protocol_metadata.py @@ -2,15 +2,17 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug from fuji_server.models.fair_result_common import FAIRResultCommon # noqa: F401 from fuji_server.models.fair_result_common_score import FAIRResultCommonScore from fuji_server.models.fair_result_evaluation_criterium import FAIRResultEvaluationCriterium -from fuji_server.models.standardised_protocol_metadata_output import ( - StandardisedProtocolMetadataOutput, -) +from fuji_server.models.standardised_protocol_metadata_output import StandardisedProtocolMetadataOutput class StandardisedProtocolMetadata(Model): @@ -27,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: StandardisedProtocolMetadataOutput = None, test_debug: Debug = None, ): @@ -46,7 +48,7 @@ def __init__( :param score: The score of this StandardisedProtocolMetadata. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this StandardisedProtocolMetadata. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this StandardisedProtocolMetadata. # noqa: E501 :type output: StandardisedProtocolMetadataOutput :param test_debug: The test_debug of this StandardisedProtocolMetadata. # noqa: E501 @@ -59,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": StandardisedProtocolMetadataOutput, "test_debug": Debug, } @@ -234,21 +236,21 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this StandardisedProtocolMetadata. :return: The maturity of this StandardisedProtocolMetadata. - :rtype: str + :rtype: int """ return self._maturity @maturity.setter def maturity(self, maturity: int): - """Sets the maturity of this Uniqueness. + """Sets the maturity of this StandardisedProtocolMetadata. - :param maturity: The maturity of this Uniqueness. + :param maturity: The maturity of this StandardisedProtocolMetadata. :type maturity: int """ diff --git a/fuji_server/models/standardised_protocol_metadata_output.py b/fuji_server/models/standardised_protocol_metadata_output.py index 9cb0ec28..bbd98742 100644 --- a/fuji_server/models/standardised_protocol_metadata_output.py +++ b/fuji_server/models/standardised_protocol_metadata_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/models/uniqueness.py b/fuji_server/models/uniqueness.py index 388dd5c4..dcf93ac9 100644 --- a/fuji_server/models/uniqueness.py +++ b/fuji_server/models/uniqueness.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model from fuji_server.models.debug import Debug @@ -25,7 +29,7 @@ def __init__( metric_tests: dict[str, FAIRResultEvaluationCriterium] | None = None, test_status: str = "fail", score: FAIRResultCommonScore = None, - maturity: str = "incomplete", + maturity: int = 0, output: UniquenessOutput = None, test_debug: Debug = None, ): @@ -44,7 +48,7 @@ def __init__( :param score: The score of this Uniqueness. # noqa: E501 :type score: FAIRResultCommonScore :param maturity: The maturity of this Uniqueness. # noqa: E501 - :type maturity: str + :type maturity: int :param output: The output of this Uniqueness. # noqa: E501 :type output: UniquenessOutput :param test_debug: The test_debug of this Uniqueness. # noqa: E501 @@ -57,7 +61,7 @@ def __init__( "metric_tests": dict[str, FAIRResultEvaluationCriterium], "test_status": str, "score": FAIRResultCommonScore, - "maturity": str, + "maturity": int, "output": UniquenessOutput, "test_debug": Debug, } @@ -232,12 +236,12 @@ def score(self, score: FAIRResultCommonScore): self._score = score @property - def maturity(self) -> str: + def maturity(self) -> int: """Gets the maturity of this Uniqueness. :return: The maturity of this Uniqueness. - :rtype: str + :rtype: int """ return self._maturity diff --git a/fuji_server/models/uniqueness_output.py b/fuji_server/models/uniqueness_output.py index fe0bbcd5..994e00e9 100644 --- a/fuji_server/models/uniqueness_output.py +++ b/fuji_server/models/uniqueness_output.py @@ -2,6 +2,10 @@ # # SPDX-License-Identifier: MIT +# coding: utf-8 + +from datetime import date, datetime # noqa: F401 + from fuji_server import util from fuji_server.models.base_model_ import Model diff --git a/fuji_server/yaml/metrics_v0.7_software.yaml b/fuji_server/yaml/metrics_v0.7_software.yaml new file mode 100644 index 00000000..bdccceaa --- /dev/null +++ b/fuji_server/yaml/metrics_v0.7_software.yaml @@ -0,0 +1,41 @@ +# LIST OF FAIR4RS METRICS AND THEIR RESPONSE OUTPUT FORMATS +config: + metric_specification: https://doi.org/10.5281/zenodo.10047401 + metric_status: draft + allowed_harvesting_methods: + - HTML_EMBEDDING + - MICRODATA + - TYPED_LINKS + - SIGNPOSTING + allowed_metadata_standards: + - jsonld + - dublin-core + - dcat-data-catalog-vocabulary +metrics: +- metric_identifier: FRSM-15-R1.1 + metric_number: 15 + metric_short_name: Software Source Code License + metric_name: The software source code includes licensing information for the software and any bundled external software. + description: It is important that software licences are included with the source code as many tools and processes look for licensing information there to determine licence compatibility. + fair_principle: R1.1 + target: Software + evaluation_mechanism: Metric evaluation is based on the presence of a machine readable license file. + test_scoring_mechanism: cumulative + metric_tests: + - metric_test_identifier: FRSM-15-R1.1-1 + metric_test_name: License file is included. + metric_test_score: 1 + metric_test_maturity: 1 + - metric_test_identifier: FRSM-15-R1.1-2 + metric_test_name: The source code includes licensing information for all components bundled with that software. + metric_test_score: 1 + metric_test_maturity: 2 + - metric_test_identifier: FRSM-15-R1.1-3 + metric_test_name: Recognized licence is in SPDX format. + metric_test_score: 1 + metric_test_maturity: 3 + created_by: FAIR4RS + date_created: 2023-11-10 + date_updated: 2023-12-13 + version: 0.1 + total_score: 3 diff --git a/fuji_server/yaml/metrics_v0.7_software_cessda.yaml b/fuji_server/yaml/metrics_v0.7_software_cessda.yaml new file mode 100644 index 00000000..ef4efeab --- /dev/null +++ b/fuji_server/yaml/metrics_v0.7_software_cessda.yaml @@ -0,0 +1,41 @@ +# LIST OF FAIR4RS METRICS AND THEIR RESPONSE OUTPUT FORMATS +config: + metric_specification: https://doi.org/10.5281/zenodo.10047401 + metric_status: draft + allowed_harvesting_methods: + - HTML_EMBEDDING + - MICRODATA + - TYPED_LINKS + - SIGNPOSTING + allowed_metadata_standards: + - jsonld + - dublin-core + - dcat-data-catalog-vocabulary +metrics: +- metric_identifier: FRSM-15-R1.1 + metric_number: 15 + metric_short_name: Software Source Code License + metric_name: The software source code includes licensing information for the software and any bundled external software. + description: It is important that software licences are included with the source code as many tools and processes look for licensing information there to determine licence compatibility. + fair_principle: R1.1 + target: Software + evaluation_mechanism: Metric evaluation is based on the presence of a machine readable license file. + test_scoring_mechanism: cumulative + metric_tests: + - metric_test_identifier: FRSM-15-R1.1-CESSDA-1 + metric_test_name: LICENSE.txt file is included at the root of the repository. + metric_test_score: 1 + metric_test_maturity: 1 + - metric_test_identifier: FRSM-15-R1.1-CESSDA-2 + metric_test_name: Licensing information is part of the source code header. + metric_test_score: 1 + metric_test_maturity: 2 + - metric_test_identifier: FRSM-15-R1.1-CESSDA-3 + metric_test_name: The build script (Maven POM, where used) checks that the standard header is present in all source code files. + metric_test_score: 1 + metric_test_maturity: 3 + created_by: FAIR4RS + date_created: 2023-12-13 + date_updated: 2023-12-13 + version: 0.1 + total_score: 3 diff --git a/fuji_server/yaml/openapi.yaml b/fuji_server/yaml/openapi.yaml index 66c158e8..aeef5a54 100644 --- a/fuji_server/yaml/openapi.yaml +++ b/fuji_server/yaml/openapi.yaml @@ -40,6 +40,7 @@ paths: metadata_service_endpoint: http://ws.pangaea.de/oai/provider metadata_service_type: oai_pmh use_datacite: true + use_github: false metric_version: metrics_v0.5 responses: '200': @@ -678,6 +679,9 @@ components: use_datacite: type: boolean description: Indicates if DataCite content negotiation (using the DOI) shall be used to collect metadata + use_github: + type: boolean + description: Indicates if the GitHub REST API shall be used to collect (meta)data metric_version: type: string description: The FAIRsFAIR metric version be used fo rthe assessment diff --git a/pyproject.toml b/pyproject.toml index 67a76779..82a2b9a7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,7 +41,8 @@ dependencies = [ "sparqlwrapper~=2.0", "tika~=2.6", "tldextract~=5.0", - "urlextract~=1.8" + "urlextract~=1.8", + "pygithub~=2.1" ] description = "FUJI (FAIRsFAIR Data Objects Assessment Service), A service to evaluate FAIR data objects based on FAIRsFAIR Metrics" keywords = [ @@ -53,7 +54,8 @@ keywords = [ "FAIR", "Research Data", "FAIR data", - "Metadata harvesting" + "Metadata harvesting", + "FAIR4RS" ] license = "MIT" name = "fuji" diff --git a/simpleclient/index.php b/simpleclient/index.php index cf00b4f4..e3d5a1e3 100644 --- a/simpleclient/index.php +++ b/simpleclient/index.php @@ -47,6 +47,8 @@ $fuji_server = 'http://localhost:1071/fuji/api/v1/evaluate'; $fuji_username = 'yourusername'; $fuji_password = 'yourpassword'; +$metric_version = "metrics_v0.5"; #"metrics_v0.7_software_cessda"; #"metrics_v0.5"; #"metrics_v0.7_software"; +$usegithub = false; ################################################################ $fair_basic_terms=['F'=>'Findable','A'=>'Accessible','I'=>'Interoperable','R'=>'Reusable']; @@ -171,6 +173,8 @@ $message->metadata_service_type = $input_service_type; $message->test_debug = true; $message->use_datacite = $usedatacite; + $message->use_github = $usegithub; + $message->metric_version = $metric_version; $post = json_encode($message); $username = $fuji_username; @@ -256,6 +260,9 @@ DataCite support: + GitHub support: + + Metric Version: @@ -375,8 +382,8 @@ $mstyle=''; } print(''.$test_key.''.$metric_test['metric_test_name'].''); - if($metric_test['metric_test_score'] !=0){ - print($metric_test['metric_test_score']); + if($metric_test['metric_test_score']['earned'] !=0){ + print($metric_test['metric_test_score']['earned']); } print(''); if($metric_test['metric_test_status']=='pass'){ diff --git a/tests/functional/cassettes/test_evaluation/test_evaluation_software.yaml b/tests/functional/cassettes/test_evaluation/test_evaluation_software.yaml new file mode 100644 index 00000000..afe91d07 --- /dev/null +++ b/tests/functional/cassettes/test_evaluation/test_evaluation_software.yaml @@ -0,0 +1,946 @@ +interactions: +- request: + body: + headers: + Accept: + - text/html, */* + Connection: + - close + Host: + - github.com + User-Agent: + - F-UJI + method: GET + uri: https://github.com/pangaea-data-publisher/fuji + response: + body: + string: "\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n \n \n \n \n \n\n \n\n \n \n \n \n \n \n\n\n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n GitHub - pangaea-data-publisher/fuji: FAIRsFAIR Research Data Object Assessment Service\n\n\n\n \n\n \n \n\n\n \n\n\n \n\n\n \n \n\n \n \n\n \n \n \n \n \n\n\n\n \n\n \n\n\n\n\n \n\n \n\n \n\n \n \n \n \n \n \n \n \n \n \n\n\n\n \n\n\n\n \n\n\n \n \n \n \n\n \n\n \n\n \n\n \n\n\n\n \n \n\n\n \n\n \n\n \n\n \n \n \n\n\n\n\n\n \n\n \n\n \n
\n \n\n\n
\n Skip to content\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n \n \n
\n\n\n\n\n \n\n \n\n \n\n\n\n
\n \n\n
\n
\n \n \n \n\n \n\n \n\n
\n \n
\n
\n\n\n
\n
\n \n\n
\n \n\n\n\">\n \n \n
\n \n \n\n
\n Search or jump to...\n
\n \n\n
\n \n\n \n\n \n
\n \n

Search code, repositories, users, issues, pull requests...

\n
\n \n
\n
\n \n
\n \n \n \n \n \n\n \n
\n
\n
\n
\n \n
\n
\n Clear\n \n\n
\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n \n
\n
\n
\n\n \n
\n
\n\n
\n
\n
\n \n
\n \n
\n \n
\n
\n
\n

\n Provide feedback\n

\n
\n
\n \n
\n
\n
\n \n
\n

We read every piece of feedback, and take your input very seriously.

\n \n \n \n
\n
\n \n
\n\n \n \n
\n \n
\n
\n
\n

\n Saved searches\n

\n

Use saved searches to filter your results more quickly

\n
\n
\n \n
\n
\n
\n \n
\n\n \n\n
\n
\n
\n\n
\n
\n \n
\n
\n
\n\n\n\n \n\n \n Sign up\n \n
\n
\n
\n \n\n\n \n \n\n
\n\n\n\n\n\n\n\n\n
\n\n\n \n\n\n\n \n
\n\n\n \n \n\n\n\n\n\n\n \n
\n
\n \n \n\n\n\n\n\n \n \n\n \n\n\n\n\n\n\n \n
\n\n
\n\n
\n \n
\n \n \n\n \n \n \n pangaea-data-publisher\n \n /\n \n fuji\n \n\n Public\n
\n\n\n
\n\n
\n \n\n
\n
\n\n
\n
\n

\n FAIRsFAIR Research Data Object Assessment Service\n

\n\n

License

\n \n\n\n \n\n
\n
\n \n
\n \n \n \n\n \n
\n
\n\n
\n\n\n \n\n
\n\n \n\n\n\n\n
\n \n\n\n \n \n

pangaea-data-publisher/fuji

\n
\n
\n\n \n\n \n\n
\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n
\n\n\n \n
\n
\n\n
\n
\n
\n
\n

About

\n\n

\n FAIRsFAIR Research Data Object Assessment Service\n

\n\n

Topics

\n \n\n

Resources

\n \n\n

License

\n \n\n\n\n\n \n \n\n \n\n \n\n

Stars

\n \n\n

Watchers

\n \n\n

Forks

\n \n\n \n
\n\n
\n
\n\n \n \n\n \n \n
\n
\n

\n \n Packages\n 1\n

\n\n\n \n
\n
\n
 
\n
\n
\n\n\n
\n
\n\n \n \n\n \n
\n
\n

\n \n Contributors\n 18\n

\n\n\n \n \n\n\n\n\n \n
\n
\n\n \n \n
\n
\n

Languages

\n
\n \n \n \n \n
\n\n\n
\n
\n\n
\n
\n \n
\n\n
\n\n\n
\n\n
\n\n\n
\n
\n\n \n\n
\n

Footer

\n\n\n
\n
\n \n \n \n\n\n \n © 2024 GitHub, Inc.\n \n
\n\n \n
\n\n
\n\n\n\n\n \n\n\n \n\n \n\n
\n
\n
\n
\n\n \n\n\n\n\n\n \n\n
\n
\n \n\n\n" + headers: + Accept-Ranges: + - bytes + Cache-Control: + - max-age=0, private, must-revalidate + Content-Security-Policy: + - "default-src 'none'; base-uri 'self'; child-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com cdn.optimizely.com logx.optimizely.com/v1/events api.githubcopilot.com objects-origin.githubusercontent.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com support.github.com; img-src 'self' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/" + Content-Type: + - text/html; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:02 GMT + ETag: + - W/"ec8232511583f0787fcee0d84fecb54b" + Referrer-Policy: + - no-referrer-when-downgrade + Server: + - GitHub.com + Set-Cookie: + - _gh_sess=ttPzke%2BjC1HoiZOxKtmh0meOAugTyG4Otj46YXzogjCPWbt703%2BBrhHDeGk5zpAS6afxbBCXqWqazUsMXCW5w%2FHLHCo1JPaD3iZ7bF%2Bh86ttBYLACcT6jg30JofeMM74dM6Lzq%2BQkNrtH8LCMyTcMjGvIX37nD11SAciGB4cb%2BGSaqaahk%2BuyFnz0KL43WaCEKtubupheC4YnlilM4wyC6Jhqw9IIWIxeuDohezIJslywtdCvDSJ9Pho1GlnTzlJktim1c76Ypd7P4%2FXoP1%2F4w%3D%3D--LXClk8D8PH9JOc6z--haflpnPHMMYyYd%2BnD73RvQ%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax + - _octo=GH1.1.1427196577.1705076221; Path=/; Domain=github.com; Expires=Sun, 12 Jan 2025 16:17:01 GMT; Secure; SameSite=Lax + - logged_in=no; Path=/; Domain=github.com; Expires=Sun, 12 Jan 2025 16:17:01 GMT; HttpOnly; Secure; SameSite=Lax + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Request-Id: + - C714:19136:9D6CD0E:9F1DC59:65A165FD + X-XSS-Protection: + - '0' + connection: + - close + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repos/pangaea-data-publisher/fuji + response: + body: + string: '{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments","created_at":"2020-04-28T15:33:40Z","updated_at":"2024-01-07T16:29:43Z","pushed_at":"2024-01-12T15:38:52Z","git_url":"git://github.com/pangaea-data-publisher/fuji.git","ssh_url":"git@github.com:pangaea-data-publisher/fuji.git","clone_url":"https://github.com/pangaea-data-publisher/fuji.git","svn_url":"https://github.com/pangaea-data-publisher/fuji","homepage":"","size":5637,"stargazers_count":43,"watchers_count":43,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"has_discussions":false,"forks_count":31,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":25,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["fairdata","hacktoberfest"],"visibility":"public","forks":31,"open_issues":25,"watchers":43,"default_branch":"master","permissions":{"admin":false,"maintain":false,"push":false,"triage":false,"pull":true},"temp_clone_token":"","custom_properties":{},"organization":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"network_count":31,"subscribers_count":9}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:03 GMT + ETag: + - W/"a7a569b8824b8fb08d10a84bb3425daa8756ee7323992e00c2fc62a844488526" + Last-Modified: + - Sun, 07 Jan 2024 16:29:43 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - repo + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 514B:8B570:F3D99F9:F68B93A:65A165FE + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4966' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '34' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repos/pangaea-data-publisher/fuji/license + response: + body: + string: '{"name":"LICENSE","path":"LICENSE","sha":"40f22c50b59b959d5e855961998d88dfa13c6279","size":1090,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/LICENSE?ref=master","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/master/LICENSE","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/40f22c50b59b959d5e855961998d88dfa13c6279","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/master/LICENSE","type":"file","content":"TUlUIExpY2Vuc2UKCkNvcHlyaWdodCAoYykgMjAyMCBQQU5HQUVBIChodHRw\nczovL3d3dy5wYW5nYWVhLmRlLykKClBlcm1pc3Npb24gaXMgaGVyZWJ5IGdy\nYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmlu\nZyBhIGNvcHkKb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1\nbWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKaW4g\ndGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3\naXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwp0byB1c2UsIGNvcHksIG1v\nZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2Us\nIGFuZC9vciBzZWxsCmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBw\nZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwpmdXJuaXNo\nZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRp\nb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVy\nbWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCmNvcGll\ncyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgpU\nSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJS\nQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgpJTVBMSUVELCBJTkNMVURJ\nTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNI\nQU5UQUJJTElUWSwKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug\nQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkFV\nVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkg\nQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKTElBQklMSVRZLCBXSEVUSEVSIElO\nIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFS\nSVNJTkcgRlJPTSwKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUg\nU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUK\nU09GVFdBUkUuCg==\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/LICENSE?ref=master","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/40f22c50b59b959d5e855961998d88dfa13c6279","html":"https://github.com/pangaea-data-publisher/fuji/blob/master/LICENSE"},"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:03 GMT + ETag: + - W/"6f1b58112abe01ea84b4f0e30c4d9e40494c12da502d286fc6434e4ec783e526" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 5151:168E2F:A2CDB3B:A4979EE:65A165FF + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4965' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '35' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repos/pangaea-data-publisher/fuji/contents/pom.xml + response: + body: + string: '{"message":"Not Found","documentation_url":"https://docs.github.com/rest/repos/contents#get-repository-content"}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:04 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 2A04:F3888:DE223AE:E0AF5AF:65A16600 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4964' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '36' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 404 + message: Not Found +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repos/pangaea-data-publisher/fuji/languages + response: + body: + string: '{"Python":897213,"PHP":24895,"Dockerfile":996,"HTML":130}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:04 GMT + ETag: + - W/"ca668d6a62cdacea0b4a9a378e7884dd9d7cfca05390e1184afaadf92ee4b1ec" + Last-Modified: + - Sun, 07 Jan 2024 16:29:43 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - C75A:89B15:EA894E5:ED3B506:65A16600 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4963' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '37' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/search/code?q=+repo%3Apangaea-data-publisher%2Ffuji+language%3APython&per_page=1 + response: + body: + string: '{"total_count":122,"incomplete_results":false,"items":[{"name":"app.py","path":"fuji_server/app.py","sha":"26a77ee3946819fff0bccaf22df1265ea32bc7dc","url":"https://api.github.com/repositories/259678183/contents/fuji_server/app.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/26a77ee3946819fff0bccaf22df1265ea32bc7dc","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/app.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0}]}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - no-cache + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:05 GMT + Link: + - ; rel="next", ; rel="last" + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 50FD:8F432:F6CC887:F97E823:65A16601 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '10' + X-RateLimit-Remaining: + - '9' + X-RateLimit-Reset: + - '1705076285' + X-RateLimit-Resource: + - code_search + X-RateLimit-Used: + - '1' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/search/code?q=+repo%3Apangaea-data-publisher%2Ffuji+language%3APython + response: + body: + string: '{"total_count":122,"incomplete_results":false,"items":[{"name":"app.py","path":"fuji_server/app.py","sha":"26a77ee3946819fff0bccaf22df1265ea32bc7dc","url":"https://api.github.com/repositories/259678183/contents/fuji_server/app.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/26a77ee3946819fff0bccaf22df1265ea32bc7dc","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/app.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"conf.py","path":"docs/source/conf.py","sha":"95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2","url":"https://api.github.com/repositories/259678183/contents/docs/source/conf.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/docs/source/conf.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"encoder.py","path":"fuji_server/encoder.py","sha":"0536ef3fbc331bfc0a83b769dacb0df405d48e9a","url":"https://api.github.com/repositories/259678183/contents/fuji_server/encoder.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/0536ef3fbc331bfc0a83b769dacb0df405d48e9a","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/encoder.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"__init__.py","path":"fuji_server/__init__.py","sha":"bfec0e01e89e507a05c789a9b4c9758f8cb57fb1","url":"https://api.github.com/repositories/259678183/contents/fuji_server/__init__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/bfec0e01e89e507a05c789a9b4c9758f8cb57fb1","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__init__.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"__main__.py","path":"fuji_server/__main__.py","sha":"b6393d59b041fd80dd5679447a14e4de3185a0a1","url":"https://api.github.com/repositories/259678183/contents/fuji_server/__main__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/b6393d59b041fd80dd5679447a14e4de3185a0a1","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__main__.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"body.py","path":"fuji_server/models/body.py","sha":"8ddd15a63b4fed4cd814a9780a394245842e04c2","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/body.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/8ddd15a63b4fed4cd814a9780a394245842e04c2","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/body.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"metric.py","path":"fuji_server/models/metric.py","sha":"b2ad559486c252b340d723776dcfcf9814e26b60","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/metric.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/b2ad559486c252b340d723776dcfcf9814e26b60","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/metric.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"core_metadata.py","path":"fuji_server/models/core_metadata.py","sha":"d580710a733376212981063006e1daf22574eaba","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/core_metadata.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/d580710a733376212981063006e1daf22574eaba","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/core_metadata.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"formal_metadata_output.py","path":"fuji_server/models/formal_metadata_output.py","sha":"ea571eb5839f4cf917b1706d93b5e8b0856d5884","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/formal_metadata_output.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/ea571eb5839f4cf917b1706d93b5e8b0856d5884","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/formal_metadata_output.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"catalogue_helper_datacite.py","path":"fuji_server/helper/catalogue_helper_datacite.py","sha":"317253d1233d3f2eede2843c746fb7f06803b370","url":"https://api.github.com/repositories/259678183/contents/fuji_server/helper/catalogue_helper_datacite.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/317253d1233d3f2eede2843c746fb7f06803b370","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/helper/catalogue_helper_datacite.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"metadata_provider_sparql.py","path":"fuji_server/helper/metadata_provider_sparql.py","sha":"dc2dde370223a2902b2c4d5bd866efde745df4d8","url":"https://api.github.com/repositories/259678183/contents/fuji_server/helper/metadata_provider_sparql.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/dc2dde370223a2902b2c4d5bd866efde745df4d8","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/helper/metadata_provider_sparql.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"community_endorsed_standard_output.py","path":"fuji_server/models/community_endorsed_standard_output.py","sha":"bdc441ba9773b913dc2a8c2031cbf651bcd25635","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/community_endorsed_standard_output.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/bdc441ba9773b913dc2a8c2031cbf651bcd25635","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/community_endorsed_standard_output.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_metric_controller.py","path":"fuji_server/controllers/fair_metric_controller.py","sha":"ebda59b1725bc31861adff9bc3bd61b6fdbd9b44","url":"https://api.github.com/repositories/259678183/contents/fuji_server/controllers/fair_metric_controller.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/ebda59b1725bc31861adff9bc3bd61b6fdbd9b44","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/controllers/fair_metric_controller.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"metadata_provider_csw.py","path":"fuji_server/helper/metadata_provider_csw.py","sha":"2488e100ec2779accefb17fe0259a195b78d157b","url":"https://api.github.com/repositories/259678183/contents/fuji_server/helper/metadata_provider_csw.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/2488e100ec2779accefb17fe0259a195b78d157b","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/helper/metadata_provider_csw.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"related_resource_output.py","path":"fuji_server/models/related_resource_output.py","sha":"d0a714d122896f7c92a1f4ae143dadd7d2caa117","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/related_resource_output.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/d0a714d122896f7c92a1f4ae143dadd7d2caa117","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/related_resource_output.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"identifier_included.py","path":"fuji_server/models/identifier_included.py","sha":"8bc5c7618096853f937c3386d3df1df584958303","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/identifier_included.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/8bc5c7618096853f937c3386d3df1df584958303","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/identifier_included.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"data_file_format_output_inner.py","path":"fuji_server/models/data_file_format_output_inner.py","sha":"1f585cf895b11a39a829e2f547726d620c843a31","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/data_file_format_output_inner.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/1f585cf895b11a39a829e2f547726d620c843a31","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/data_file_format_output_inner.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"data_provenance_output.py","path":"fuji_server/models/data_provenance_output.py","sha":"1514d4a4485371be7f75ebf4280dbb4b5838fcd6","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/data_provenance_output.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/1514d4a4485371be7f75ebf4280dbb4b5838fcd6","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/data_provenance_output.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"harvest_results.py","path":"fuji_server/models/harvest_results.py","sha":"5892b5b7ee31715b37dcd79da21478c494261768","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/harvest_results.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/5892b5b7ee31715b37dcd79da21478c494261768","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/harvest_results.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_result_common.py","path":"fuji_server/models/fair_result_common.py","sha":"93e51326e014ce78fed728c4ae0afa1cc258e360","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/fair_result_common.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/93e51326e014ce78fed728c4ae0afa1cc258e360","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/fair_result_common.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_evaluator_data_provenance.py","path":"fuji_server/evaluators/fair_evaluator_data_provenance.py","sha":"1f2c3d7211a42874549c372209b5bd763822a1c2","url":"https://api.github.com/repositories/259678183/contents/fuji_server/evaluators/fair_evaluator_data_provenance.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/1f2c3d7211a42874549c372209b5bd763822a1c2","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/evaluators/fair_evaluator_data_provenance.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_evaluator_unique_identifier_metadata.py","path":"fuji_server/evaluators/fair_evaluator_unique_identifier_metadata.py","sha":"1a379099dee718beb3a443484488eed590726dd3","url":"https://api.github.com/repositories/259678183/contents/fuji_server/evaluators/fair_evaluator_unique_identifier_metadata.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/1a379099dee718beb3a443484488eed590726dd3","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/evaluators/fair_evaluator_unique_identifier_metadata.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_evaluator_semantic_vocabulary.py","path":"fuji_server/evaluators/fair_evaluator_semantic_vocabulary.py","sha":"324dc36ba45ad6cf28215408dfeaf03eec62a175","url":"https://api.github.com/repositories/259678183/contents/fuji_server/evaluators/fair_evaluator_semantic_vocabulary.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/324dc36ba45ad6cf28215408dfeaf03eec62a175","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/evaluators/fair_evaluator_semantic_vocabulary.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"related_resource.py","path":"fuji_server/models/related_resource.py","sha":"e0333d31d21ee0cbfe09e4e42263bb5c0cb5e24d","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/related_resource.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/e0333d31d21ee0cbfe09e4e42263bb5c0cb5e24d","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/related_resource.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"metadata_mapper.py","path":"fuji_server/helper/metadata_mapper.py","sha":"448eb7864b91d8a428d23fb85bfb0398afe37c46","url":"https://api.github.com/repositories/259678183/contents/fuji_server/helper/metadata_mapper.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/448eb7864b91d8a428d23fb85bfb0398afe37c46","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/helper/metadata_mapper.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"harvest.py","path":"fuji_server/models/harvest.py","sha":"8bfa244b78b42722d8932d38c238cfdfff3c0d2f","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/harvest.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/8bfa244b78b42722d8932d38c238cfdfff3c0d2f","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/harvest.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_evaluator_metadata_identifier_included.py","path":"fuji_server/evaluators/fair_evaluator_metadata_identifier_included.py","sha":"b062d8e07611f9fa69d244de4d561069fd220efb","url":"https://api.github.com/repositories/259678183/contents/fuji_server/evaluators/fair_evaluator_metadata_identifier_included.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/b062d8e07611f9fa69d244de4d561069fd220efb","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/evaluators/fair_evaluator_metadata_identifier_included.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"fair_evaluator_minimal_metadata.py","path":"fuji_server/evaluators/fair_evaluator_minimal_metadata.py","sha":"c81d1b76bc44c9a04f3787ca71a7cb40ff1a697a","url":"https://api.github.com/repositories/259678183/contents/fuji_server/evaluators/fair_evaluator_minimal_metadata.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/c81d1b76bc44c9a04f3787ca71a7cb40ff1a697a","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/evaluators/fair_evaluator_minimal_metadata.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"output_search_mechanisms.py","path":"fuji_server/models/output_search_mechanisms.py","sha":"e97c9350ffa17330bb35628810a7afed5d06eb6f","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/output_search_mechanisms.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/e97c9350ffa17330bb35628810a7afed5d06eb6f","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/output_search_mechanisms.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0},{"name":"searchable.py","path":"fuji_server/models/searchable.py","sha":"7512ab21f18510c8451b2716525ad393d498259b","url":"https://api.github.com/repositories/259678183/contents/fuji_server/models/searchable.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git_url":"https://api.github.com/repositories/259678183/git/blobs/7512ab21f18510c8451b2716525ad393d498259b","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/models/searchable.py","repository":{"id":259678183,"node_id":"MDEwOlJlcG9zaXRvcnkyNTk2NzgxODM=","name":"fuji","full_name":"pangaea-data-publisher/fuji","private":false,"owner":{"login":"pangaea-data-publisher","id":47568830,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3NTY4ODMw","avatar_url":"https://avatars.githubusercontent.com/u/47568830?v=4","gravatar_id":"","url":"https://api.github.com/users/pangaea-data-publisher","html_url":"https://github.com/pangaea-data-publisher","followers_url":"https://api.github.com/users/pangaea-data-publisher/followers","following_url":"https://api.github.com/users/pangaea-data-publisher/following{/other_user}","gists_url":"https://api.github.com/users/pangaea-data-publisher/gists{/gist_id}","starred_url":"https://api.github.com/users/pangaea-data-publisher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pangaea-data-publisher/subscriptions","organizations_url":"https://api.github.com/users/pangaea-data-publisher/orgs","repos_url":"https://api.github.com/users/pangaea-data-publisher/repos","events_url":"https://api.github.com/users/pangaea-data-publisher/events{/privacy}","received_events_url":"https://api.github.com/users/pangaea-data-publisher/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/pangaea-data-publisher/fuji","description":"FAIRsFAIR Research Data Object Assessment Service","fork":false,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji","forks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/forks","keys_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/teams","hooks_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/hooks","issue_events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/events{/number}","events_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/events","assignees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/assignees{/user}","branches_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/branches{/branch}","tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/tags","blobs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/refs{/sha}","trees_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/statuses/{sha}","languages_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/languages","stargazers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/stargazers","contributors_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contributors","subscribers_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscribers","subscription_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/subscription","commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/commits{/sha}","git_commits_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/commits{/sha}","comments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/comments{/number}","issue_comment_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues/comments{/number}","contents_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/{+path}","compare_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/merges","archive_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/downloads","issues_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/issues{/number}","pulls_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/pulls{/number}","milestones_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/milestones{/number}","notifications_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/labels{/name}","releases_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/releases{/id}","deployments_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/deployments"},"score":1.0}]}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - no-cache + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:06 GMT + Link: + - ; rel="next", ; rel="last" + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 7858:8B570:F3DA815:F68C780:65A16601 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '10' + X-RateLimit-Remaining: + - '8' + X-RateLimit-Reset: + - '1705076285' + X-RateLimit-Resource: + - code_search + X-RateLimit-Used: + - '2' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repositories/259678183/contents/fuji_server/app.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9 + response: + body: + string: '{"name":"app.py","path":"fuji_server/app.py","sha":"26a77ee3946819fff0bccaf22df1265ea32bc7dc","size":1201,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/app.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/app.py","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/26a77ee3946819fff0bccaf22df1265ea32bc7dc","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/app.py","type":"file","content":"IyBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDIwIFBBTkdBRUEgKGh0dHBz\nOi8vd3d3LnBhbmdhZWEuZGUvKQojCiMgU1BEWC1MaWNlbnNlLUlkZW50aWZp\nZXI6IE1JVAoKaW1wb3J0IGpzb24KaW1wb3J0IG9zCmZyb20gcGF0aGxpYiBp\nbXBvcnQgUGF0aAoKaW1wb3J0IGNvbm5leGlvbgpmcm9tIGNvbm5leGlvbi5q\nc29uaWZpZXIgaW1wb3J0IEpzb25pZmllcgpmcm9tIGZsYXNrX2NvcnMgaW1w\nb3J0IENPUlMKZnJvbSB3ZXJremV1Zy5taWRkbGV3YXJlLnByb3h5X2ZpeCBp\nbXBvcnQgUHJveHlGaXgKCmZyb20gZnVqaV9zZXJ2ZXIgaW1wb3J0IGVuY29k\nZXIKCgpkZWYgY3JlYXRlX2FwcChjb25maWcpOgogICAgIiIiCiAgICBGdW5j\ndGlvbiB3aGljaCBpbml0aWFsaXplcyB0aGUgRlVKSSBjb25uZXhpb24gZmxh\nc2sgYXBwIGFuZCByZXR1cm5zIGl0CiAgICAiIiIKICAgICMgeW91IGNhbiBh\nbHNvIHVzZSBUb3JuYWRvIG9yIGdldmVudCBhcyB0aGUgSFRUUCBzZXJ2ZXIs\nIHRvIGRvIHNvIHNldCBzZXJ2ZXIgdG8gdG9ybmFkbyBvciBnZXZlbnQKICAg\nIFJPT1RfRElSID0gUGF0aChfX2ZpbGVfXykucGFyZW50CiAgICBZQU1MX0RJ\nUiA9IGNvbmZpZ1siU0VSVklDRSJdWyJ5YW1sX2RpcmVjdG9yeSJdCiAgICBt\neWpzb25pZmllciA9IEpzb25pZmllcihqc29uLCBjbHM9ZW5jb2Rlci5DdXN0\nb21KU09ORW5jb2RlcikKICAgICMgYXBwID0gY29ubmV4aW9uLkZsYXNrQXBw\nKF9fbmFtZV9fLCBzcGVjaWZpY2F0aW9uX2Rpcj1ZQU1MX0RJUiwganNvbmlm\naWVyPWVuY29kZXIuQ3VzdG9tSnNvbmlmaWVyKQogICAgYXBwID0gY29ubmV4\naW9uLkFwcChfX25hbWVfXywgc3BlY2lmaWNhdGlvbl9kaXI9WUFNTF9ESVIs\nIGpzb25pZmllcj1teWpzb25pZmllcikKCiAgICBBUElfWUFNTCA9IFJPT1Rf\nRElSLmpvaW5wYXRoKFlBTUxfRElSLCBjb25maWdbIlNFUlZJQ0UiXVsib3Bl\nbmFwaV95YW1sIl0pCgogICAgYXBwLmFkZF9hcGkoQVBJX1lBTUwsIHZhbGlk\nYXRlX3Jlc3BvbnNlcz1UcnVlLCBqc29uaWZpZXI9bXlqc29uaWZpZXIpCgog\nICAgYXBwLmFwcC53c2dpX2FwcCA9IFByb3h5Rml4KGFwcC5hcHAud3NnaV9h\ncHAsIHhfZm9yPTEsIHhfaG9zdD0xKQogICAgaWYgb3MuZ2V0ZW52KCJFTkFC\nTEVfQ09SUyIsICJGYWxzZSIpLmxvd2VyKCkgPT0gInRydWUiOgogICAgICAg\nIENPUlMoYXBwLmFwcCkKCiAgICByZXR1cm4gYXBwCg==\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/app.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/26a77ee3946819fff0bccaf22df1265ea32bc7dc","html":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/app.py"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:06 GMT + ETag: + - W/"26a77ee3946819fff0bccaf22df1265ea32bc7dc" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - C704:30375F:FD7900D:1002B081:65A16602 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4962' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '38' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repositories/259678183/contents/docs/source/conf.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9 + response: + body: + string: '{"name":"conf.py","path":"docs/source/conf.py","sha":"95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2","size":12443,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/docs/source/conf.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/docs/source/conf.py","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/708fe43a1ee5f4557368dcd66622ec869fe854f9/docs/source/conf.py","type":"file","content":"IwojIEZsZXVyIHBsdWdpbiBkb2N1bWVudGF0aW9uIGJ1aWxkIGNvbmZpZ3Vy\nYXRpb24gZmlsZSwgY3JlYXRlZCBieQojIHNwaGlueC1xdWlja3N0YXJ0IG9u\nIFdlZCBEZWMgIDcgMTY6Mzk6MTIgMjAxNi4KIwojIFRoaXMgZmlsZSBpcyBl\neGVjZmlsZSgpZCB3aXRoIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBzZXQgdG8g\naXRzCiMgY29udGFpbmluZyBkaXIuCiMKIyBOb3RlIHRoYXQgbm90IGFsbCBw\nb3NzaWJsZSBjb25maWd1cmF0aW9uIHZhbHVlcyBhcmUgcHJlc2VudCBpbiB0\naGlzCiMgYXV0b2dlbmVyYXRlZCBmaWxlLgojCiMgQWxsIGNvbmZpZ3VyYXRp\nb24gdmFsdWVzIGhhdmUgYSBkZWZhdWx0OyB2YWx1ZXMgdGhhdCBhcmUgY29t\nbWVudGVkIG91dAojIHNlcnZlIHRvIHNob3cgdGhlIGRlZmF1bHQuCgojIGlt\ncG9ydCBmdWppX3NlcnZlcgppbXBvcnQgb3MKCmZyb20gZnVqaV9zZXJ2ZXIg\naW1wb3J0IF9fdmVyc2lvbl9fCgpQUk9KRUNUTkFNRSA9ICJGdWppIiAgIyB1\nJ0YtdWppIFNlcnZlcicKIyBJZiBleHRlbnNpb25zIChvciBtb2R1bGVzIHRv\nIGRvY3VtZW50IHdpdGggYXV0b2RvYykgYXJlIGluIGFub3RoZXIgZGlyZWN0\nb3J5LAojIGFkZCB0aGVzZSBkaXJlY3RvcmllcyB0byBzeXMucGF0aCBoZXJl\nLiBJZiB0aGUgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZQojIGRvY3Vt\nZW50YXRpb24gcm9vdCwgdXNlIG9zLnBhdGguYWJzcGF0aCB0byBtYWtlIGl0\nIGFic29sdXRlLCBsaWtlIHNob3duIGhlcmUuCiMgc3lzLnBhdGguaW5zZXJ0\nKDAsIG9zLnBhdGguYWJzcGF0aCgnLi4vYWlpZGFfZmxldXInKSkKCiMgLS0g\nR2VuZXJhbCBjb25maWd1cmF0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyBJZiB5b3VyIGRvY3VtZW50\nYXRpb24gbmVlZHMgYSBtaW5pbWFsIFNwaGlueCB2ZXJzaW9uLCBzdGF0ZSBp\ndCBoZXJlLgojIG5lZWRzX3NwaGlueCA9ICcxLjAnCgojIEFkZCBhbnkgU3Bo\naW54IGV4dGVuc2lvbiBtb2R1bGUgbmFtZXMgaGVyZSwgYXMgc3RyaW5ncy4g\nVGhleSBjYW4gYmUKIyBleHRlbnNpb25zIGNvbWluZyB3aXRoIFNwaGlueCAo\nbmFtZWQgJ3NwaGlueC5leHQuKicpIG9yIHlvdXIgY3VzdG9tCiMgb25lcy4K\nZXh0ZW5zaW9ucyA9IFsKICAgICJzcGhpbnguZXh0LmF1dG9kb2MiLAogICAg\nInNwaGlueC5leHQubmFwb2xlb24iLAogICAgIydzcGhpbnguZXh0LmRvY3Rl\nc3QnLAogICAgIydzcGhpbnguZXh0LnRvZG8nLAogICAgIydzcGhpbnguZXh0\nLmNvdmVyYWdlJywKICAgICMnc3BoaW54LmV4dC5pbWdtYXRoJywKICAgICMn\nc3BoaW54LmV4dC5pZmNvbmZpZycsCiAgICAic3BoaW54LmV4dC52aWV3Y29k\nZSIsCiAgICAibXlzdF9wYXJzZXIiLAogICAgIydzcGhpbnguZXh0LmludGVy\nc3BoaW54JwpdCgppbnRlcnNwaGlueF9tYXBwaW5nID0geyJudW1weSI6ICgi\naHR0cHM6Ly9udW1weS5vcmcvZG9jL3N0YWJsZS8iLCBOb25lKX0KCnRvZG9f\naW5jbHVkZV90b2RvcyA9IFRydWUKCiMgQWRkIGFueSBwYXRocyB0aGF0IGNv\nbnRhaW4gdGVtcGxhdGVzIGhlcmUsIHJlbGF0aXZlIHRvIHRoaXMgZGlyZWN0\nb3J5Lgp0ZW1wbGF0ZXNfcGF0aCA9IFsiX3RlbXBsYXRlcyJdCgojIFRoZSBz\ndWZmaXggb2Ygc291cmNlIGZpbGVuYW1lcy4Kc291cmNlX3N1ZmZpeCA9ICIu\ncnN0IgoKIyBUaGUgZW5jb2Rpbmcgb2Ygc291cmNlIGZpbGVzLgojIHNvdXJj\nZV9lbmNvZGluZyA9ICd1dGYtOC1zaWcnCgojIFRoZSBtYXN0ZXIgdG9jdHJl\nZSBkb2N1bWVudC4KbWFzdGVyX2RvYyA9ICJpbmRleCIKCiMgR2VuZXJhbCBp\nbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvamVjdC4KcHJvamVjdCA9IFBST0pF\nQ1ROQU1FCmNvcHlyaWdodCA9ICIyMDIwLXRvZGF5IFBBTkdBRUEiCgojIFRo\nZSB2ZXJzaW9uIGluZm8gZm9yIHRoZSBwcm9qZWN0IHlvdSdyZSBkb2N1bWVu\ndGluZywgYWN0cyBhcyByZXBsYWNlbWVudCBmb3IKIyB8dmVyc2lvbnwgYW5k\nIHxyZWxlYXNlfCwgYWxzbyB1c2VkIGluIHZhcmlvdXMgb3RoZXIgcGxhY2Vz\nIHRocm91Z2hvdXQgdGhlCiMgYnVpbHQgZG9jdW1lbnRzLgp2ZXJzaW9uID0g\nX192ZXJzaW9uX18KcmVsZWFzZSA9IF9fdmVyc2lvbl9fCmF1dGhvciA9ICJU\naGUgRi11amkgYXV0aG9ycyIKCgojIFRoZSBsYW5ndWFnZSBmb3IgY29udGVu\ndCBhdXRvZ2VuZXJhdGVkIGJ5IFNwaGlueC4gUmVmZXIgdG8gZG9jdW1lbnRh\ndGlvbgojIGZvciBhIGxpc3Qgb2Ygc3VwcG9ydGVkIGxhbmd1YWdlcy4KIyBs\nYW5ndWFnZSA9IE5vbmUKCiMgVGhlcmUgYXJlIHR3byBvcHRpb25zIGZvciBy\nZXBsYWNpbmcgfHRvZGF5fDogZWl0aGVyLCB5b3Ugc2V0IHRvZGF5IHRvIHNv\nbWUKIyBub24tZmFsc2UgdmFsdWUsIHRoZW4gaXQgaXMgdXNlZDoKIyB0b2Rh\neSA9ICcnCiMgRWxzZSwgdG9kYXlfZm10IGlzIHVzZWQgYXMgdGhlIGZvcm1h\ndCBmb3IgYSBzdHJmdGltZSBjYWxsLgojIHRvZGF5X2ZtdCA9ICclQiAlZCwg\nJVknCgojIExpc3Qgb2YgcGF0dGVybnMsIHJlbGF0aXZlIHRvIHNvdXJjZSBk\naXJlY3RvcnksIHRoYXQgbWF0Y2ggZmlsZXMgYW5kCiMgZGlyZWN0b3JpZXMg\ndG8gaWdub3JlIHdoZW4gbG9va2luZyBmb3Igc291cmNlIGZpbGVzLgpleGNs\ndWRlX3BhdHRlcm5zID0gWyJfYnVpbGQiXQoKIyBUaGUgcmVTVCBkZWZhdWx0\nIHJvbGUgKHVzZWQgZm9yIHRoaXMgbWFya3VwOiBgdGV4dGApIHRvIHVzZSBm\nb3IgYWxsCiMgZG9jdW1lbnRzLgojIGRlZmF1bHRfcm9sZSA9IE5vbmUKCiMg\nSWYgdHJ1ZSwgJygpJyB3aWxsIGJlIGFwcGVuZGVkIHRvIDpmdW5jOiBldGMu\nIGNyb3NzLXJlZmVyZW5jZSB0ZXh0LgojIGFkZF9mdW5jdGlvbl9wYXJlbnRo\nZXNlcyA9IFRydWUKCiMgSWYgdHJ1ZSwgdGhlIGN1cnJlbnQgbW9kdWxlIG5h\nbWUgd2lsbCBiZSBwcmVwZW5kZWQgdG8gYWxsIGRlc2NyaXB0aW9uCiMgdW5p\ndCB0aXRsZXMgKHN1Y2ggYXMgLi4gZnVuY3Rpb246OikuCiMgYWRkX21vZHVs\nZV9uYW1lcyA9IFRydWUKCiMgSWYgdHJ1ZSwgc2VjdGlvbmF1dGhvciBhbmQg\nbW9kdWxlYXV0aG9yIGRpcmVjdGl2ZXMgd2lsbCBiZSBzaG93biBpbiB0aGUK\nIyBvdXRwdXQuIFRoZXkgYXJlIGlnbm9yZWQgYnkgZGVmYXVsdC4KIyBzaG93\nX2F1dGhvcnMgPSBGYWxzZQoKIyBUaGUgbmFtZSBvZiB0aGUgUHlnbWVudHMg\nKHN5bnRheCBoaWdobGlnaHRpbmcpIHN0eWxlIHRvIHVzZS4KcHlnbWVudHNf\nc3R5bGUgPSAic3BoaW54IgoKIyBBIGxpc3Qgb2YgaWdub3JlZCBwcmVmaXhl\ncyBmb3IgbW9kdWxlIGluZGV4IHNvcnRpbmcuCiMgbW9kaW5kZXhfY29tbW9u\nX3ByZWZpeCA9IFtdCgojIElmIHRydWUsIGtlZXAgd2FybmluZ3MgYXMgInN5\nc3RlbSBtZXNzYWdlIiBwYXJhZ3JhcGhzIGluIHRoZSBidWlsdCBkb2N1bWVu\ndHMuCiMga2VlcF93YXJuaW5ncyA9IEZhbHNlCgoKIyAtLSBPcHRpb25zIGZv\nciBIVE1MIG91dHB1dCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tCgojIFRoZSB0aGVtZSB0byB1c2UgZm9yIEhUTUwg\nYW5kIEhUTWZMIEhlbHAgcGFnZXMuICBTZWUgdGhlIGRvY3VtZW50YXRpb24g\nZm9yCiMgYSBsaXN0IG9mIGJ1aWx0aW4gdGhlbWVzLgpodG1sX3RoZW1lID0g\nImRlZmF1bHQiCgojIFRoZW1lIG9wdGlvbnMgYXJlIHRoZW1lLXNwZWNpZmlj\nIGFuZCBjdXN0b21pemUgdGhlIGxvb2sgYW5kIGZlZWwgb2YgYSB0aGVtZQoj\nIGZ1cnRoZXIuICBGb3IgYSBsaXN0IG9mIG9wdGlvbnMgYXZhaWxhYmxlIGZv\nciBlYWNoIHRoZW1lLCBzZWUgdGhlCiMgZG9jdW1lbnRhdGlvbi4KIyBodG1s\nX3RoZW1lX29wdGlvbnMgPSB7fQoKIyBBZGQgYW55IHBhdGhzIHRoYXQgY29u\ndGFpbiBjdXN0b20gdGhlbWVzIGhlcmUsIHJlbGF0aXZlIHRvIHRoaXMgZGly\nZWN0b3J5LgojIGh0bWxfdGhlbWVfcGF0aCA9IFtdCgojIFRoZSBuYW1lIGZv\nciB0aGlzIHNldCBvZiBTcGhpbnggZG9jdW1lbnRzLiAgSWYgTm9uZSwgaXQg\nZGVmYXVsdHMgdG8KIyAiPHByb2plY3Q+IHY8cmVsZWFzZT4gZG9jdW1lbnRh\ndGlvbiIuCiMgaHRtbF90aXRsZSA9IE5vbmUKCiMgQSBzaG9ydGVyIHRpdGxl\nIGZvciB0aGUgbmF2aWdhdGlvbiBiYXIuICBEZWZhdWx0IGlzIHRoZSBzYW1l\nIGFzIGh0bWxfdGl0bGUuCiMgaHRtbF9zaG9ydF90aXRsZSA9IE5vbmUKCiMg\nVGhlIG5hbWUgb2YgYW4gaW1hZ2UgZmlsZSAocmVsYXRpdmUgdG8gdGhpcyBk\naXJlY3RvcnkpIHRvIHBsYWNlIGF0IHRoZSB0b3AKIyBvZiB0aGUgc2lkZWJh\nci4KIyBodG1sX2xvZ28gPSBOb25lCgojIFRoZSBuYW1lIG9mIGFuIGltYWdl\nIGZpbGUgKHdpdGhpbiB0aGUgc3RhdGljIHBhdGgpIHRvIHVzZSBhcyBmYXZp\nY29uIG9mIHRoZQojIGRvY3MuICBUaGlzIGZpbGUgc2hvdWxkIGJlIGEgV2lu\nZG93cyBpY29uIGZpbGUgKC5pY28pIGJlaW5nIDE2eDE2IG9yIDMyeDMyCiMg\ncGl4ZWxzIGxhcmdlLgojIGh0bWxfZmF2aWNvbiA9IE5vbmUKCiMgQWRkIGFu\neSBwYXRocyB0aGF0IGNvbnRhaW4gY3VzdG9tIHN0YXRpYyBmaWxlcyAoc3Vj\naCBhcyBzdHlsZSBzaGVldHMpIGhlcmUsCiMgcmVsYXRpdmUgdG8gdGhpcyBk\naXJlY3RvcnkuIFRoZXkgYXJlIGNvcGllZCBhZnRlciB0aGUgYnVpbHRpbiBz\ndGF0aWMgZmlsZXMsCiMgc28gYSBmaWxlIG5hbWVkICJkZWZhdWx0LmNzcyIg\nd2lsbCBvdmVyd3JpdGUgdGhlIGJ1aWx0aW4gImRlZmF1bHQuY3NzIi4KIyBo\ndG1sX3N0YXRpY19wYXRoID0gWydfc3RhdGljJ10KCiMgQWRkIGFueSBleHRy\nYSBwYXRocyB0aGF0IGNvbnRhaW4gY3VzdG9tIGZpbGVzIChzdWNoIGFzIHJv\nYm90cy50eHQgb3IKIyAuaHRhY2Nlc3MpIGhlcmUsIHJlbGF0aXZlIHRvIHRo\naXMgZGlyZWN0b3J5LiBUaGVzZSBmaWxlcyBhcmUgY29waWVkCiMgZGlyZWN0\nbHkgdG8gdGhlIHJvb3Qgb2YgdGhlIGRvY3VtZW50YXRpb24uCiMgaHRtbF9l\neHRyYV9wYXRoID0gW10KCiMgSWYgbm90ICcnLCBhICdMYXN0IHVwZGF0ZWQg\nb246JyB0aW1lc3RhbXAgaXMgaW5zZXJ0ZWQgYXQgZXZlcnkgcGFnZSBib3R0\nb20sCiMgdXNpbmcgdGhlIGdpdmVuIHN0cmZ0aW1lIGZvcm1hdC4KIyBodG1s\nX2xhc3RfdXBkYXRlZF9mbXQgPSAnJWIgJWQsICVZJwoKIyBJZiB0cnVlLCBT\nbWFydHlQYW50cyB3aWxsIGJlIHVzZWQgdG8gY29udmVydCBxdW90ZXMgYW5k\nIGRhc2hlcyB0bwojIHR5cG9ncmFwaGljYWxseSBjb3JyZWN0IGVudGl0aWVz\nLgojIGh0bWxfdXNlX3NtYXJ0eXBhbnRzID0gVHJ1ZQoKIyBDdXN0b20gc2lk\nZWJhciB0ZW1wbGF0ZXMsIG1hcHMgZG9jdW1lbnQgbmFtZXMgdG8gdGVtcGxh\ndGUgbmFtZXMuCiMgaHRtbF9zaWRlYmFycyA9IHt9CgojIEFkZGl0aW9uYWwg\ndGVtcGxhdGVzIHRoYXQgc2hvdWxkIGJlIHJlbmRlcmVkIHRvIHBhZ2VzLCBt\nYXBzIHBhZ2UgbmFtZXMgdG8KIyB0ZW1wbGF0ZSBuYW1lcy4KIyBodG1sX2Fk\nZGl0aW9uYWxfcGFnZXMgPSB7fQoKIyBJZiBmYWxzZSwgbm8gbW9kdWxlIGlu\nZGV4IGlzIGdlbmVyYXRlZC4KIyBodG1sX2RvbWFpbl9pbmRpY2VzID0gVHJ1\nZQoKIyBJZiBmYWxzZSwgbm8gaW5kZXggaXMgZ2VuZXJhdGVkLgojIGh0bWxf\ndXNlX2luZGV4ID0gVHJ1ZQoKIyBJZiB0cnVlLCB0aGUgaW5kZXggaXMgc3Bs\naXQgaW50byBpbmRpdmlkdWFsIHBhZ2VzIGZvciBlYWNoIGxldHRlci4KIyBo\ndG1sX3NwbGl0X2luZGV4ID0gRmFsc2UKCiMgSWYgdHJ1ZSwgbGlua3MgdG8g\ndGhlIHJlU1Qgc291cmNlcyBhcmUgYWRkZWQgdG8gdGhlIHBhZ2VzLgojIGh0\nbWxfc2hvd19zb3VyY2VsaW5rID0gVHJ1ZQoKIyBJZiB0cnVlLCAiQ3JlYXRl\nZCB1c2luZyBTcGhpbngiIGlzIHNob3duIGluIHRoZSBIVE1MIGZvb3Rlci4g\nRGVmYXVsdCBpcyBUcnVlLgojIGh0bWxfc2hvd19zcGhpbnggPSBUcnVlCgoj\nIElmIHRydWUsICIoQykgQ29weXJpZ2h0IC4uLiIgaXMgc2hvd24gaW4gdGhl\nIEhUTUwgZm9vdGVyLiBEZWZhdWx0IGlzIFRydWUuCiMgaHRtbF9zaG93X2Nv\ncHlyaWdodCA9IFRydWUKCiMgSWYgdHJ1ZSwgYW4gT3BlblNlYXJjaCBkZXNj\ncmlwdGlvbiBmaWxlIHdpbGwgYmUgb3V0cHV0LCBhbmQgYWxsIHBhZ2VzIHdp\nbGwKIyBjb250YWluIGEgPGxpbms+IHRhZyByZWZlcnJpbmcgdG8gaXQuICBU\naGUgdmFsdWUgb2YgdGhpcyBvcHRpb24gbXVzdCBiZSB0aGUKIyBiYXNlIFVS\nTCBmcm9tIHdoaWNoIHRoZSBmaW5pc2hlZCBIVE1MIGlzIHNlcnZlZC4KIyBo\ndG1sX3VzZV9vcGVuc2VhcmNoID0gJycKCiMgVGhpcyBpcyB0aGUgZmlsZSBu\nYW1lIHN1ZmZpeCBmb3IgSFRNTCBmaWxlcyAoZS5nLiAiLnhodG1sIikuCiMg\naHRtbF9maWxlX3N1ZmZpeCA9IE5vbmUKCiMgT3V0cHV0IGZpbGUgYmFzZSBu\nYW1lIGZvciBIVE1MIGhlbHAgYnVpbGRlci4KaHRtbGhlbHBfYmFzZW5hbWUg\nPSAiZnVqaS10b29sc2RvYyIKCgojIC0tIE9wdGlvbnMgZm9yIExhVGVYIG91\ndHB1dCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0KCmxhdGV4X2VsZW1lbnRzID0gewogICAgIyBUaGUgcGFwZXIgc2l6\nZSAoJ2xldHRlcnBhcGVyJyBvciAnYTRwYXBlcicpLgogICAgIydwYXBlcnNp\nemUnOiAnbGV0dGVycGFwZXInLAogICAgIyBUaGUgZm9udCBzaXplICgnMTBw\ndCcsICcxMXB0JyBvciAnMTJwdCcpLgogICAgIydwb2ludHNpemUnOiAnMTBw\ndCcsCiAgICAjIEFkZGl0aW9uYWwgc3R1ZmYgZm9yIHRoZSBMYVRlWCBwcmVh\nbWJsZS4KICAgICMncHJlYW1ibGUnOiAnJywKfQoKIyBHcm91cGluZyB0aGUg\nZG9jdW1lbnQgdHJlZSBpbnRvIExhVGVYIGZpbGVzLiBMaXN0IG9mIHR1cGxl\ncwojIChzb3VyY2Ugc3RhcnQgZmlsZSwgdGFyZ2V0IG5hbWUsIHRpdGxlLAoj\nICBhdXRob3IsIGRvY3VtZW50Y2xhc3MgW2hvd3RvLCBtYW51YWwsIG9yIG93\nbiBjbGFzc10pLgpsYXRleF9kb2N1bWVudHMgPSBbCiAgICAoImluZGV4Iiwg\nImZ1amkudGV4IiwgIkZ1amkgRG9jdW1lbnRhdGlvbiIsICJUaGUgRi11amkg\nYXV0aG9ycyIsICJmdWppX21hbnVhbCIpLApdCgojIFRoZSBuYW1lIG9mIGFu\nIGltYWdlIGZpbGUgKHJlbGF0aXZlIHRvIHRoaXMgZGlyZWN0b3J5KSB0byBw\nbGFjZSBhdCB0aGUgdG9wIG9mCiMgdGhlIHRpdGxlIHBhZ2UuCiMgbGF0ZXhf\nbG9nbyA9IE5vbmUKCiMgRm9yICJtYW51YWwiIGRvY3VtZW50cywgaWYgdGhp\ncyBpcyB0cnVlLCB0aGVuIHRvcGxldmVsIGhlYWRpbmdzIGFyZSBwYXJ0cywK\nIyBub3QgY2hhcHRlcnMuCiMgbGF0ZXhfdXNlX3BhcnRzID0gRmFsc2UKCiMg\nSWYgdHJ1ZSwgc2hvdyBwYWdlIHJlZmVyZW5jZXMgYWZ0ZXIgaW50ZXJuYWwg\nbGlua3MuCiMgbGF0ZXhfc2hvd19wYWdlcmVmcyA9IEZhbHNlCgojIElmIHRy\ndWUsIHNob3cgVVJMIGFkZHJlc3NlcyBhZnRlciBleHRlcm5hbCBsaW5rcy4K\nIyBsYXRleF9zaG93X3VybHMgPSBGYWxzZQoKIyBEb2N1bWVudHMgdG8gYXBw\nZW5kIGFzIGFuIGFwcGVuZGl4IHRvIGFsbCBtYW51YWxzLgojIGxhdGV4X2Fw\ncGVuZGljZXMgPSBbXQoKIyBJZiBmYWxzZSwgbm8gbW9kdWxlIGluZGV4IGlz\nIGdlbmVyYXRlZC4KIyBsYXRleF9kb21haW5faW5kaWNlcyA9IFRydWUKCgoj\nIG9uX3J0ZCBpcyB3aGV0aGVyIHdlIGFyZSBvbiByZWFkdGhlZG9jcy5vcmcs\nIHRoaXMgbGluZSBvZiBjb2RlIGdyYWJiZWQKIyBmcm9tIGRvY3MucmVhZHRo\nZWRvY3Mub3JnCm9uX3J0ZCA9IG9zLmVudmlyb24uZ2V0KCJSRUFEVEhFRE9D\nUyIsIE5vbmUpID09ICJUcnVlIiAgIyBweXRob24gMwoKCmlmIG5vdCBvbl9y\ndGQ6ICAjIG9ubHkgaW1wb3J0IGFuZCBzZXQgdGhlIHRoZW1lIGlmIHdlJ3Jl\nIGJ1aWxkaW5nIGRvY3MgbG9jYWxseQogICAgdHJ5OgogICAgICAgIGltcG9y\ndCBzcGhpbnhfcnRkX3RoZW1lCgogICAgICAgIGh0bWxfdGhlbWUgPSAic3Bo\naW54X3J0ZF90aGVtZSIKICAgICAgICBodG1sX3RoZW1lX3BhdGggPSBbc3Bo\naW54X3J0ZF90aGVtZS5nZXRfaHRtbF90aGVtZV9wYXRoKCldCiAgICBleGNl\ncHQgSW1wb3J0RXJyb3I6CiAgICAgICAgIyBObyBzcGhpbnhfcnRkX3RoZW1l\nIGluc3RhbGxlZAogICAgICAgIHBhc3MKCmF1dG9kb2NfbW9ja19pbXBvcnRz\nID0gWyJib2tlaCJdCgojIC0tIE9wdGlvbnMgZm9yIG1hbnVhbCBwYWdlIG91\ndHB1dCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K\nCiMgT25lIGVudHJ5IHBlciBtYW51YWwgcGFnZS4gTGlzdCBvZiB0dXBsZXMK\nIyAoc291cmNlIHN0YXJ0IGZpbGUsIG5hbWUsIGRlc2NyaXB0aW9uLCBhdXRo\nb3JzLCBtYW51YWwgc2VjdGlvbikuCm1hbl9wYWdlcyA9IFsKICAgICgiaW5k\nZXgiLCAiZnVqaS50ZXgiLCAiRnVqaSBEb2N1bWVudGF0aW9uIiwgWyJUaGUg\nRi11amkgYXV0aG9ycyJdLCAxKSwKXQoKIyBJZiB0cnVlLCBzaG93IFVSTCBh\nZGRyZXNzZXMgYWZ0ZXIgZXh0ZXJuYWwgbGlua3MuCiMgbWFuX3Nob3dfdXJs\ncyA9IEZhbHNlCgoKIyAtLSBPcHRpb25zIGZvciBUZXhpbmZvIG91dHB1dCAt\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoj\nIEdyb3VwaW5nIHRoZSBkb2N1bWVudCB0cmVlIGludG8gVGV4aW5mbyBmaWxl\ncy4gTGlzdCBvZiB0dXBsZXMKIyAoc291cmNlIHN0YXJ0IGZpbGUsIHRhcmdl\ndCBuYW1lLCB0aXRsZSwgYXV0aG9yLAojICBkaXIgbWVudSBlbnRyeSwgZGVz\nY3JpcHRpb24sIGNhdGVnb3J5KQp0ZXhpbmZvX2RvY3VtZW50cyA9IFsKICAg\nICgKICAgICAgICAiaW5kZXgiLAogICAgICAgICJmdWppIiwKICAgICAgICAi\nRnVqaSBEb2N1bWVudGF0aW9uIiwKICAgICAgICAiVGhlIEZ1amkgYXV0aG9y\ncyIsCiAgICAgICAgImZ1amkiLAogICAgICAgICJGVUpJLCBhIHNlcnZpY2Ug\ndG8gZXZhbHVhdGUgRkFJUiBkYXRhIG9iamVjdHMgYmFzZWQgb24gRkFJUnNG\nQUlSIE1ldHJpY3MiLAogICAgICAgICJNaXNjZWxsYW5lb3VzIiwKICAgICks\nCl0KCiMgRG9jdW1lbnRzIHRvIGFwcGVuZCBhcyBhbiBhcHBlbmRpeCB0byBh\nbGwgbWFudWFscy4KIyB0ZXhpbmZvX2FwcGVuZGljZXMgPSBbXQoKIyBJZiBm\nYWxzZSwgbm8gbW9kdWxlIGluZGV4IGlzIGdlbmVyYXRlZC4KIyB0ZXhpbmZv\nX2RvbWFpbl9pbmRpY2VzID0gVHJ1ZQoKIyBIb3cgdG8gZGlzcGxheSBVUkwg\nYWRkcmVzc2VzOiAnZm9vdG5vdGUnLCAnbm8nLCBvciAnaW5saW5lJy4KIyB0\nZXhpbmZvX3Nob3dfdXJscyA9ICdmb290bm90ZScKCiMgSWYgdHJ1ZSwgZG8g\nbm90IGdlbmVyYXRlIGEgQGRldGFpbG1lbnUgaW4gdGhlICJUb3AiIG5vZGUn\ncyBtZW51LgojIHRleGluZm9fbm9fZGV0YWlsbWVudSA9IEZhbHNlCgojIC0t\nIE9wdGlvbnMgZm9yIEVwdWIgb3V0cHV0IC0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyBCaWJsaW9ncmFw\naGljIER1YmxpbiBDb3JlIGluZm8uCmVwdWJfdGl0bGUgPSBQUk9KRUNUTkFN\nRQplcHViX2F1dGhvciA9IGF1dGhvcgplcHViX3B1Ymxpc2hlciA9IGF1dGhv\ncgplcHViX2NvcHlyaWdodCA9IGNvcHlyaWdodAoKIyBUaGUgbGFuZ3VhZ2Ug\nb2YgdGhlIHRleHQuIEl0IGRlZmF1bHRzIHRvIHRoZSBsYW5ndWFnZSBvcHRp\nb24KIyBvciBlbiBpZiB0aGUgbGFuZ3VhZ2UgaXMgbm90IHNldC4KIyBlcHVi\nX2xhbmd1YWdlID0gJycKCiMgVGhlIHNjaGVtZSBvZiB0aGUgaWRlbnRpZmll\nci4gVHlwaWNhbCBzY2hlbWVzIGFyZSBJU0JOIG9yIFVSTC4KIyBlcHViX3Nj\naGVtZSA9ICcnCgojIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgdGV4\ndC4gVGhpcyBjYW4gYmUgYSBJU0JOIG51bWJlcgojIG9yIHRoZSBwcm9qZWN0\nIGhvbWVwYWdlLgojIGVwdWJfaWRlbnRpZmllciA9ICcnCgojIEEgdW5pcXVl\nIGlkZW50aWZpY2F0aW9uIGZvciB0aGUgdGV4dC4KIyBlcHViX3VpZCA9ICcn\nCgojIEEgdHVwbGUgY29udGFpbmluZyB0aGUgY292ZXIgaW1hZ2UgYW5kIGNv\ndmVyIHBhZ2UgaHRtbCB0ZW1wbGF0ZSBmaWxlbmFtZXMuCiMgZXB1Yl9jb3Zl\nciA9ICgpCgojIEhUTUwgZmlsZXMgdGhhdCBzaG91bGQgYmUgaW5zZXJ0ZWQg\nYmVmb3JlIHRoZSBwYWdlcyBjcmVhdGVkIGJ5IHNwaGlueC4KIyBUaGUgZm9y\nbWF0IGlzIGEgbGlzdCBvZiB0dXBsZXMgY29udGFpbmluZyB0aGUgcGF0aCBh\nbmQgdGl0bGUuCiMgZXB1Yl9wcmVfZmlsZXMgPSBbXQoKIyBIVE1MIGZpbGVz\nIHNoYXQgc2hvdWxkIGJlIGluc2VydGVkIGFmdGVyIHRoZSBwYWdlcyBjcmVh\ndGVkIGJ5IHNwaGlueC4KIyBUaGUgZm9ybWF0IGlzIGEgbGlzdCBvZiB0dXBs\nZXMgY29udGFpbmluZyB0aGUgcGF0aCBhbmQgdGl0bGUuCiMgZXB1Yl9wb3N0\nX2ZpbGVzID0gW10KCiMgQSBsaXN0IG9mIGZpbGVzIHRoYXQgc2hvdWxkIG5v\ndCBiZSBwYWNrZWQgaW50byB0aGUgZXB1YiBmaWxlLgojIGVwdWJfZXhjbHVk\nZV9maWxlcyA9IFtdCgojIFRoZSBkZXB0aCBvZiB0aGUgdGFibGUgb2YgY29u\ndGVudHMgaW4gdG9jLm5jeC4KIyBlcHViX3RvY2RlcHRoID0gMwoKCiMgV2Fy\nbmluZ3MgdG8gaWdub3JlIHdoZW4gdXNpbmcgdGhlIC1uIChuaXRwaWNreSkg\nb3B0aW9uCiMgV2Ugc2hvdWxkIGlnbm9yZSBhbnkgcHl0aG9uIGJ1aWx0LWlu\nIGV4Y2VwdGlvbiwgZm9yIGluc3RhbmNlCm5pdHBpY2tfaWdub3JlID0gWwog\nICAgKCJweTpleGMiLCAiQXJpdGhtZXRpY0Vycm9yIiksCiAgICAoInB5OmV4\nYyIsICJBc3NlcnRpb25FcnJvciIpLAogICAgKCJweTpleGMiLCAiQXR0cmli\ndXRlRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIkJhc2VFeGNlcHRpb24iKSwK\nICAgICgicHk6ZXhjIiwgIkJ1ZmZlckVycm9yIiksCiAgICAoInB5OmV4YyIs\nICJEZXByZWNhdGlvbldhcm5pbmciKSwKICAgICgicHk6ZXhjIiwgIkVPRkVy\ncm9yIiksCiAgICAoInB5OmV4YyIsICJFbnZpcm9ubWVudEVycm9yIiksCiAg\nICAoInB5OmV4YyIsICJFeGNlcHRpb24iKSwKICAgICgicHk6ZXhjIiwgIkZs\nb2F0aW5nUG9pbnRFcnJvciIpLAogICAgKCJweTpleGMiLCAiRnV0dXJlV2Fy\nbmluZyIpLAogICAgKCJweTpleGMiLCAiR2VuZXJhdG9yRXhpdCIpLAogICAg\nKCJweTpleGMiLCAiSU9FcnJvciIpLAogICAgKCJweTpleGMiLCAiSW1wb3J0\nRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIkltcG9ydFdhcm5pbmciKSwKICAg\nICgicHk6ZXhjIiwgIkluZGVudGF0aW9uRXJyb3IiKSwKICAgICgicHk6ZXhj\nIiwgIkluZGV4RXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIktleUVycm9yIiks\nCiAgICAoInB5OmV4YyIsICJLZXlib2FyZEludGVycnVwdCIpLAogICAgKCJw\neTpleGMiLCAiTG9va3VwRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIk1lbW9y\neUVycm9yIiksCiAgICAoInB5OmV4YyIsICJOYW1lRXJyb3IiKSwKICAgICgi\ncHk6ZXhjIiwgIk5vdEltcGxlbWVudGVkRXJyb3IiKSwKICAgICgicHk6ZXhj\nIiwgIk9TRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIk92ZXJmbG93RXJyb3Ii\nKSwKICAgICgicHk6ZXhjIiwgIlBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmci\nKSwKICAgICgicHk6ZXhjIiwgIlJlZmVyZW5jZUVycm9yIiksCiAgICAoInB5\nOmV4YyIsICJSdW50aW1lRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIlJ1bnRp\nbWVXYXJuaW5nIiksCiAgICAoInB5OmV4YyIsICJTdGFuZGFyZEVycm9yIiks\nCiAgICAoInB5OmV4YyIsICJTdG9wSXRlcmF0aW9uIiksCiAgICAoInB5OmV4\nYyIsICJTeW50YXhFcnJvciIpLAogICAgKCJweTpleGMiLCAiU3ludGF4V2Fy\nbmluZyIpLAogICAgKCJweTpleGMiLCAiU3lzdGVtRXJyb3IiKSwKICAgICgi\ncHk6ZXhjIiwgIlN5c3RlbUV4aXQiKSwKICAgICgicHk6ZXhjIiwgIlRhYkVy\ncm9yIiksCiAgICAoInB5OmV4YyIsICJUeXBlRXJyb3IiKSwKICAgICgicHk6\nZXhjIiwgIlVuYm91bmRMb2NhbEVycm9yIiksCiAgICAoInB5OmV4YyIsICJV\nbmljb2RlRGVjb2RlRXJyb3IiKSwKICAgICgicHk6ZXhjIiwgIlVuaWNvZGVF\nbmNvZGVFcnJvciIpLAogICAgKCJweTpleGMiLCAiVW5pY29kZUVycm9yIiks\nCiAgICAoInB5OmV4YyIsICJVbmljb2RlVHJhbnNsYXRlRXJyb3IiKSwKICAg\nICgicHk6ZXhjIiwgIlVuaWNvZGVXYXJuaW5nIiksCiAgICAoInB5OmV4YyIs\nICJVc2VyV2FybmluZyIpLAogICAgKCJweTpleGMiLCAiVk1TRXJyb3IiKSwK\nICAgICgicHk6ZXhjIiwgIlZhbHVlRXJyb3IiKSwKICAgICgicHk6ZXhjIiwg\nIldhcm5pbmciKSwKICAgICgicHk6ZXhjIiwgIldpbmRvd3NFcnJvciIpLAog\nICAgKCJweTpleGMiLCAiWmVyb0RpdmlzaW9uRXJyb3IiKSwKICAgICgicHk6\nb2JqIiwgInN0ciIpLAogICAgKCJweTpvYmoiLCAibGlzdCIpLAogICAgKCJw\neTpvYmoiLCAidHVwbGUiKSwKICAgICgicHk6b2JqIiwgImludCIpLAogICAg\nKCJweTpvYmoiLCAiZmxvYXQiKSwKICAgICgicHk6b2JqIiwgImJvb2wiKSwK\nICAgICgicHk6b2JqIiwgIk1hcHBpbmciKSwKXQoKIyBodG1sX2NvbnRleHQg\nPSB7CiMgICAgJ2Nzc19maWxlcyc6IFsKIyAgICAgICAgJ19zdGF0aWMvdGhl\nbWVfb3ZlcnJpZGVzLmNzcycsICAjIG92ZXJyaWRlIHdpZGUgdGFibGVzIGlu\nIFJURCB0aGVtZQojICAgIF0sCiMgfQo=\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/docs/source/conf.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2","html":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/docs/source/conf.py"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:07 GMT + ETag: + - W/"95e0e43e9ff99c7f1ddc5dc7f4445bbe994ee2b2" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 785C:25BE01:4FC72B0:50B5467:65A16602 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4961' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '39' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repositories/259678183/contents/fuji_server/encoder.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9 + response: + body: + string: '{"name":"encoder.py","path":"fuji_server/encoder.py","sha":"0536ef3fbc331bfc0a83b769dacb0df405d48e9a","size":672,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/encoder.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/encoder.py","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/0536ef3fbc331bfc0a83b769dacb0df405d48e9a","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/encoder.py","type":"file","content":"IyBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDIwIFBBTkdBRUEgKGh0dHBz\nOi8vd3d3LnBhbmdhZWEuZGUvKQojCiMgU1BEWC1MaWNlbnNlLUlkZW50aWZp\nZXI6IE1JVAoKZnJvbSBjb25uZXhpb24uanNvbmlmaWVyIGltcG9ydCBKU09O\nRW5jb2RlcgoKZnJvbSBmdWppX3NlcnZlci5tb2RlbHMuYmFzZV9tb2RlbF8g\naW1wb3J0IE1vZGVsCgoKY2xhc3MgQ3VzdG9tSlNPTkVuY29kZXIoSlNPTkVu\nY29kZXIpOgogICAgaW5jbHVkZV9udWxscyA9IEZhbHNlCgogICAgZGVmIGRl\nZmF1bHQoc2VsZiwgbyk6CiAgICAgICAgaWYgaXNpbnN0YW5jZShvLCBNb2Rl\nbCk6CiAgICAgICAgICAgIGRpa3QgPSB7fQogICAgICAgICAgICBmb3IgYXR0\nciwgXyBpbiBvLnN3YWdnZXJfdHlwZXMuaXRlbXMoKToKICAgICAgICAgICAg\nICAgIHZhbHVlID0gZ2V0YXR0cihvLCBhdHRyKQogICAgICAgICAgICAgICAg\naWYgdmFsdWUgaXMgTm9uZSBhbmQgbm90IHNlbGYuaW5jbHVkZV9udWxsczoK\nICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAg\nYXR0ciA9IG8uYXR0cmlidXRlX21hcFthdHRyXQogICAgICAgICAgICAgICAg\nZGlrdFthdHRyXSA9IHZhbHVlCiAgICAgICAgICAgIHJldHVybiBkaWt0CiAg\nICAgICAgcmV0dXJuIEpTT05FbmNvZGVyLmRlZmF1bHQoc2VsZiwgbykK\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/encoder.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/0536ef3fbc331bfc0a83b769dacb0df405d48e9a","html":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/encoder.py"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:07 GMT + ETag: + - W/"0536ef3fbc331bfc0a83b769dacb0df405d48e9a" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 9FB5:8F432:F6CD435:F97F3C0:65A16603 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4960' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '40' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repositories/259678183/contents/fuji_server/__init__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9 + response: + body: + string: '{"name":"__init__.py","path":"fuji_server/__init__.py","sha":"bfec0e01e89e507a05c789a9b4c9758f8cb57fb1","size":2053,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/__init__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__init__.py","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/bfec0e01e89e507a05c789a9b4c9758f8cb57fb1","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__init__.py","type":"file","content":"IyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KCiMgU1BEWC1GaWxlQ29weXJpZ2h0\nVGV4dDogMjAyMCBQQU5HQUVBIChodHRwczovL3d3dy5wYW5nYWVhLmRlLykK\nIwojIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQKCiMgZmxha2U4OiBu\nb3FhCmZyb20gX19mdXR1cmVfXyBpbXBvcnQgYWJzb2x1dGVfaW1wb3J0Cgoj\nIGltcG9ydCBtb2RlbHMgaW50byBtb2RlbCBwYWNrYWdlCmZyb20gZnVqaV9z\nZXJ2ZXIubW9kZWxzLmFueV9vZl9mYWlyX3Jlc3VsdHNfaXRlbXMgaW1wb3J0\nIEFueU9mRkFJUlJlc3VsdHNSZXN1bHRzSXRlbXMKZnJvbSBmdWppX3NlcnZl\nci5tb2RlbHMuYm9keSBpbXBvcnQgQm9keQpmcm9tIGZ1amlfc2VydmVyLm1v\nZGVscy5jb3JlX21ldGFkYXRhIGltcG9ydCBDb3JlTWV0YWRhdGEKZnJvbSBm\ndWppX3NlcnZlci5tb2RlbHMuY29yZV9tZXRhZGF0YV9vdXRwdXQgaW1wb3J0\nIENvcmVNZXRhZGF0YU91dHB1dApmcm9tIGZ1amlfc2VydmVyLm1vZGVscy5k\nZWJ1ZyBpbXBvcnQgRGVidWcKZnJvbSBmdWppX3NlcnZlci5tb2RlbHMuZmFp\ncl9yZXN1bHRfY29tbW9uIGltcG9ydCBGQUlSUmVzdWx0Q29tbW9uCmZyb20g\nZnVqaV9zZXJ2ZXIubW9kZWxzLmZhaXJfcmVzdWx0X2NvbW1vbl9zY29yZSBp\nbXBvcnQgRkFJUlJlc3VsdENvbW1vblNjb3JlCmZyb20gZnVqaV9zZXJ2ZXIu\nbW9kZWxzLmZhaXJfcmVzdWx0cyBpbXBvcnQgRkFJUlJlc3VsdHMKZnJvbSBm\ndWppX3NlcnZlci5tb2RlbHMuaWRlbnRpZmllcl9pbmNsdWRlZCBpbXBvcnQg\nSWRlbnRpZmllckluY2x1ZGVkCmZyb20gZnVqaV9zZXJ2ZXIubW9kZWxzLmlk\nZW50aWZpZXJfaW5jbHVkZWRfb3V0cHV0IGltcG9ydCBJZGVudGlmaWVySW5j\nbHVkZWRPdXRwdXQKZnJvbSBmdWppX3NlcnZlci5tb2RlbHMuaWRlbnRpZmll\ncl9pbmNsdWRlZF9vdXRwdXRfaW5uZXIgaW1wb3J0IElkZW50aWZpZXJJbmNs\ndWRlZE91dHB1dElubmVyCmZyb20gZnVqaV9zZXJ2ZXIubW9kZWxzLmxpY2Vu\nc2UgaW1wb3J0IExpY2Vuc2UKZnJvbSBmdWppX3NlcnZlci5tb2RlbHMubGlj\nZW5zZV9vdXRwdXQgaW1wb3J0IExpY2Vuc2VPdXRwdXQKZnJvbSBmdWppX3Nl\ncnZlci5tb2RlbHMubGljZW5zZV9vdXRwdXRfaW5uZXIgaW1wb3J0IExpY2Vu\nc2VPdXRwdXRJbm5lcgpmcm9tIGZ1amlfc2VydmVyLm1vZGVscy5tZXRyaWMg\naW1wb3J0IE1ldHJpYwpmcm9tIGZ1amlfc2VydmVyLm1vZGVscy5tZXRyaWNz\nIGltcG9ydCBNZXRyaWNzCmZyb20gZnVqaV9zZXJ2ZXIubW9kZWxzLm91dHB1\ndF9jb3JlX21ldGFkYXRhX2ZvdW5kIGltcG9ydCBPdXRwdXRDb3JlTWV0YWRh\ndGFGb3VuZApmcm9tIGZ1amlfc2VydmVyLm1vZGVscy5vdXRwdXRfc2VhcmNo\nX21lY2hhbmlzbXMgaW1wb3J0IE91dHB1dFNlYXJjaE1lY2hhbmlzbXMKZnJv\nbSBmdWppX3NlcnZlci5tb2RlbHMucGVyc2lzdGVuY2UgaW1wb3J0IFBlcnNp\nc3RlbmNlCmZyb20gZnVqaV9zZXJ2ZXIubW9kZWxzLnBlcnNpc3RlbmNlX291\ndHB1dCBpbXBvcnQgUGVyc2lzdGVuY2VPdXRwdXQKZnJvbSBmdWppX3NlcnZl\nci5tb2RlbHMucmVsYXRlZF9yZXNvdXJjZSBpbXBvcnQgUmVsYXRlZFJlc291\ncmNlCmZyb20gZnVqaV9zZXJ2ZXIubW9kZWxzLnJlbGF0ZWRfcmVzb3VyY2Vf\nb3V0cHV0IGltcG9ydCBSZWxhdGVkUmVzb3VyY2VPdXRwdXQKZnJvbSBmdWpp\nX3NlcnZlci5tb2RlbHMucmVsYXRlZF9yZXNvdXJjZV9vdXRwdXRfaW5uZXIg\naW1wb3J0IFJlbGF0ZWRSZXNvdXJjZU91dHB1dElubmVyCmZyb20gZnVqaV9z\nZXJ2ZXIubW9kZWxzLnNlYXJjaGFibGUgaW1wb3J0IFNlYXJjaGFibGUKZnJv\nbSBmdWppX3NlcnZlci5tb2RlbHMuc2VhcmNoYWJsZV9vdXRwdXQgaW1wb3J0\nIFNlYXJjaGFibGVPdXRwdXQKZnJvbSBmdWppX3NlcnZlci5tb2RlbHMudW5p\ncXVlbmVzcyBpbXBvcnQgVW5pcXVlbmVzcwpmcm9tIGZ1amlfc2VydmVyLm1v\nZGVscy51bmlxdWVuZXNzX291dHB1dCBpbXBvcnQgVW5pcXVlbmVzc091dHB1\ndAoKZnJvbSBpbXBvcnRsaWIubWV0YWRhdGEgaW1wb3J0IHZlcnNpb24KCl9f\ndmVyc2lvbl9fID0gdmVyc2lvbigiZnVqaSIpCg==\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/__init__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/bfec0e01e89e507a05c789a9b4c9758f8cb57fb1","html":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__init__.py"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:08 GMT + ETag: + - W/"bfec0e01e89e507a05c789a9b4c9758f8cb57fb1" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 510F:2E0C86:C5A8BD8:C7DB477:65A16604 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4959' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '41' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Authorization: + - token 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 + Connection: + - keep-alive + User-Agent: + - PyGithub/Python + method: GET + uri: https://api.github.com/repositories/259678183/contents/fuji_server/__main__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9 + response: + body: + string: '{"name":"__main__.py","path":"fuji_server/__main__.py","sha":"b6393d59b041fd80dd5679447a14e4de3185a0a1","size":3879,"url":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/__main__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","html_url":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__main__.py","git_url":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/b6393d59b041fd80dd5679447a14e4de3185a0a1","download_url":"https://raw.githubusercontent.com/pangaea-data-publisher/fuji/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__main__.py","type":"file","content":"IyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwoKIyBTUERYLUZpbGVDb3B5cmlnaHRU\nZXh0OiAyMDIwIFBBTkdBRUEgKGh0dHBzOi8vd3d3LnBhbmdhZWEuZGUvKQoj\nCiMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVAoKaW1wb3J0IGFyZ3Bh\ncnNlCmltcG9ydCBjb25maWdwYXJzZXIKaW1wb3J0IGxvZ2dpbmcKaW1wb3J0\nIG9zCgpmcm9tIGZsYXNrX2xpbWl0ZXIgaW1wb3J0IExpbWl0ZXIKZnJvbSBm\nbGFza19saW1pdGVyLnV0aWwgaW1wb3J0IGdldF9yZW1vdGVfYWRkcmVzcwoK\nZnJvbSBmdWppX3NlcnZlci5hcHAgaW1wb3J0IGNyZWF0ZV9hcHAKZnJvbSBm\ndWppX3NlcnZlci5oZWxwZXIucHJlcHJvY2Vzc29yIGltcG9ydCBQcmVwcm9j\nZXNzb3IKCgpkZWYgbWFpbigpOgogICAgbG9nZ2luZy5nZXRMb2dnZXIoImNv\nbm5leGlvbi5vcGVyYXRpb24iKS5zZXRMZXZlbCgiSU5GTyIpCiAgICBST09U\nX0RJUiA9IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmFic3BhdGgoX19maWxl\nX18pKQogICAgWUFNTF9ESVIgPSBjb25maWdbIlNFUlZJQ0UiXVsieWFtbF9k\naXJlY3RvcnkiXQogICAgIyBNRVRSSUNfWUFNTCA9IGNvbmZpZ1snU0VSVklD\nRSddWydtZXRyaWNzX3lhbWwnXQogICAgIyBZQU1MX0RJUiA9IG9zLnBhdGgu\nam9pbihteV9wYXRoLCBjb25maWdbJ1NFUlZJQ0UnXVsneWFtbF9kaXJlY3Rv\ncnknXSkKICAgIE1FVFJJQ19ZTUxfUEFUSCA9IG9zLnBhdGguam9pbihST09U\nX0RJUiwgWUFNTF9ESVIpCiAgICBwcmludCgiWUFNTCBQQVRIIiwgTUVUUklD\nX1lNTF9QQVRIKQogICAgIiIiU1BEWF9VUkwgPSBjb25maWdbJ0VYVEVSTkFM\nJ11bJ3NwZHhfbGljZW5zZV9naXRodWInXQogICAgREFUQUNJVEVfQVBJX1JF\nUE8gPSBjb25maWdbJ0VYVEVSTkFMJ11bJ2RhdGFjaXRlX2FwaV9yZXBvJ10K\nICAgIFJFM0RBVEFfQVBJID0gY29uZmlnWydFWFRFUk5BTCddWydyZTNkYXRh\nX2FwaSddCiAgICBNRVRBREFUQUNBVEFMT0dfQVBJID0gY29uZmlnWydFWFRF\nUk5BTCddWydtZXRhZGF0YV9jYXRhbG9nJ10iIiIKICAgIExPVl9BUEkgPSBj\nb25maWdbIkVYVEVSTkFMIl1bImxvdl9hcGkiXQogICAgTE9EX0NMT1VETkVU\nID0gY29uZmlnWyJFWFRFUk5BTCJdWyJsb2RfY2xvdWRuZXQiXQogICAgIyBC\nSU9QT1JUQUxfUkVTVCA9IGNvbmZpZ1snRVhURVJOQUwnXVsnYmlvcG9ydGFs\nX3Jlc3QnXQogICAgIyBCSU9QT1JUQUxfQVBJS0VZID0gY29uZmlnWydFWFRF\nUk5BTCddWydiaW9wb3J0YWxfYXBpa2V5J10KICAgIGRhdGFfZmlsZXNfbGlt\naXQgPSBpbnQoY29uZmlnWyJTRVJWSUNFIl1bImRhdGFfZmlsZXNfbGltaXQi\nXSkKCiAgICBwcmVwcm9jID0gUHJlcHJvY2Vzc29yKCkKICAgICMgcHJlcHJv\nYy5yZXRyaWV2ZV9tZXRyaWNzX3lhbWwoTUVUUklDX1lNTF9QQVRILCAgbWV0\ncmljX3NwZWNpZmljYXRpb24pCiAgICBwcmVwcm9jLnNldF9kYXRhX2ZpbGVz\nX2xpbWl0KGRhdGFfZmlsZXNfbGltaXQpCiAgICBwcmVwcm9jLnNldF9tZXRy\naWNfeWFtbF9wYXRoKE1FVFJJQ19ZTUxfUEFUSCkKICAgICMgbG9nZ2VyLmlu\nZm8oJ1RvdGFsIG1ldHJpY3MgZGVmaW5lZDoge30nLmZvcm1hdChwcmVwcm9j\nLmdldF90b3RhbF9tZXRyaWNzKCkpKQoKICAgIGlzRGVidWcgPSBjb25maWcu\nZ2V0Ym9vbGVhbigiU0VSVklDRSIsICJkZWJ1Z19tb2RlIikKICAgIHByZXBy\nb2MucmV0cmlldmVfbGljZW5zZXMoaXNEZWJ1ZykKICAgIHByZXByb2MucmV0\ncmlldmVfZGF0YWNpdGVfcmUzcmVwb3MoKQoKICAgIHByZXByb2MucmV0cmll\ndmVfbWV0YWRhdGFfc3RhbmRhcmRzKCkKICAgICMgcHJlcHJvYy5yZXRyaWV2\nZV9saW5rZWR2b2NhYnMobG92X2FwaT1MT1ZfQVBJLCBsb2RjbG91ZF9hcGk9\nTE9EX0NMT1VETkVULCBiaW9wb3J0YWxfYXBpPUJJT1BPUlRBTF9SRVNULCBi\naW9wb3J0YWxfa2V5PUJJT1BPUlRBTF9BUElLRVksIGlzRGVidWdNb2RlPUZh\nbHNlKQogICAgcHJlcHJvYy5yZXRyaWV2ZV9saW5rZWR2b2NhYnMobG92X2Fw\naT1MT1ZfQVBJLCBsb2RjbG91ZF9hcGk9TE9EX0NMT1VETkVULCBpc0RlYnVn\nTW9kZT1pc0RlYnVnKQogICAgcHJlcHJvYy5zZXRfcmVtb3RlX2xvZ19pbmZv\nKGNvbmZpZ1siU0VSVklDRSJdLmdldCgicmVtb3RlX2xvZ19ob3N0IiksIGNv\nbmZpZ1siU0VSVklDRSJdLmdldCgicmVtb3RlX2xvZ19wYXRoIikpCiAgICBw\ncmVwcm9jLnNldF9tYXhfY29udGVudF9zaXplKGNvbmZpZ1siU0VSVklDRSJd\nWyJtYXhfY29udGVudF9zaXplIl0pCgogICAgbG9nZ2VyLmluZm8oZiJUb3Rh\nbCBTUERYIGxpY2Vuc2VzIDoge3ByZXByb2MuZ2V0X3RvdGFsX2xpY2Vuc2Vz\nKCl9IikKICAgIGxvZ2dlci5pbmZvKGYiVG90YWwgcmUzcmVwb3NpdG9yaWVz\nIGZvdW5kIGZyb20gZGF0YWNpdGUgYXBpIDoge2xlbihwcmVwcm9jLmdldFJF\nM3JlcG9zaXRvcmllcygpKX0iKQogICAgbG9nZ2VyLmluZm8oZiJUb3RhbCBz\ndWJqZWN0cyBhcmVhIG9mIGltcG9ydGVkIG1ldGFkYXRhIHN0YW5kYXJkcyA6\nIHtsZW4ocHJlcHJvYy5tZXRhZGF0YV9zdGFuZGFyZHMpfSIpCiAgICBsb2dn\nZXIuaW5mbyhmIlRvdGFsIExEIHZvY2FicyBpbXBvcnRlZCA6IHtsZW4ocHJl\ncHJvYy5nZXRMaW5rZWRWb2NhYnMoKSl9IikKICAgIGxvZ2dlci5pbmZvKGYi\nVG90YWwgZGVmYXVsdCBuYW1lc3BhY2VzIHNwZWNpZmllZCA6IHtsZW4ocHJl\ncHJvYy5nZXREZWZhdWx0TmFtZXNwYWNlcygpKX0iKQoKICAgIGFwcCA9IGNy\nZWF0ZV9hcHAoY29uZmlnKQogICAgTGltaXRlcihnZXRfcmVtb3RlX2FkZHJl\nc3MsIGFwcD1hcHAuYXBwLCBkZWZhdWx0X2xpbWl0cz1bc3RyKGNvbmZpZ1si\nU0VSVklDRSJdWyJyYXRlX2xpbWl0Il0pXSkKICAgICMgYnVpbHQgaW4gdXZp\nY29ybiBBU0dJCiAgICBhcHAucnVuKGhvc3Q9Y29uZmlnWyJTRVJWSUNFIl1b\nInNlcnZpY2VfaG9zdCJdLCBwb3J0PWludChjb25maWdbIlNFUlZJQ0UiXVsi\nc2VydmljZV9wb3J0Il0pKQoKCmlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6\nCiAgICBnbG9iYWwgY29uZmlnCiAgICBteV9wYXRoID0gb3MucGF0aC5hYnNw\nYXRoKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykpCiAgICBwYXJzZXIgPSBh\ncmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCiAgICAjIGFkZCBhIG5ldyBjb21t\nYW5kIGxpbmUgb3B0aW9uLCBjYWxsIGl0ICctYycgYW5kIHNldCBpdHMgZGVz\ndGluYXRpb24gdG8gJ2NvbmZpZ19maWxlJwogICAgcGFyc2VyLmFkZF9hcmd1\nbWVudCgiLWMiLCAiLS1jb25maWciLCByZXF1aXJlZD1UcnVlLCBoZWxwPSJQ\nYXRoIHRvIHNlcnZlci5pbmkgY29uZmlnIGZpbGUiKQogICAgYXJncyA9IHBh\ncnNlci5wYXJzZV9hcmdzKCkKICAgIGNvbmZpZyA9IGNvbmZpZ3BhcnNlci5D\nb25maWdQYXJzZXIoKQogICAgY29uZmlnLnJlYWQoYXJncy5jb25maWcpCiAg\nICBsb2dfY29uZmlnZmlsZSA9IG9zLnBhdGguam9pbihteV9wYXRoLCBjb25m\naWdbIlNFUlZJQ0UiXVsibG9nX2NvbmZpZyJdKQogICAgbG9nX2RpciA9IGNv\nbmZpZ1siU0VSVklDRSJdWyJsb2dkaXIiXQogICAgbG9nX2RpcmVjdG9yeSA9\nIG9zLnBhdGguam9pbihteV9wYXRoLCBsb2dfZGlyKQogICAgbG9nX2ZpbGVf\ncGF0aCA9IG9zLnBhdGguam9pbihsb2dfZGlyZWN0b3J5LCAiZnVqaS5sb2ci\nKQoKICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhsb2dfZGlyZWN0b3J5KToK\nICAgICAgICBvcy5tYWtlZGlycyhsb2dfZGlyZWN0b3J5LCBleGlzdF9vaz1U\ncnVlKQogICAgIyBmaWxlQ29uZmlnKGxvZ19jb25maWdmaWxlLCBkZWZhdWx0\ncz17J2xvZ2ZpbGVuYW1lJzogbG9nX2ZpbGVfcGF0aC5yZXBsYWNlKCJcXCIs\nICIvIil9KQogICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoKSAgIyB1\nc2UgdGhpcyBmb3JtIHRvIGluaXRpYWxpemUgdGhlIHJvb3QgbG9nZ2VyCiAg\nICBtYWluKCkK\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/pangaea-data-publisher/fuji/contents/fuji_server/__main__.py?ref=708fe43a1ee5f4557368dcd66622ec869fe854f9","git":"https://api.github.com/repos/pangaea-data-publisher/fuji/git/blobs/b6393d59b041fd80dd5679447a14e4de3185a0a1","html":"https://github.com/pangaea-data-publisher/fuji/blob/708fe43a1ee5f4557368dcd66622ec869fe854f9/fuji_server/__main__.py"}}' + headers: + Access-Control-Allow-Origin: + - '*' + Access-Control-Expose-Headers: + - ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset + Cache-Control: + - private, max-age=60, s-maxage=60 + Content-Encoding: + - gzip + Content-Security-Policy: + - default-src 'none' + Content-Type: + - application/json; charset=utf-8 + Date: + - Fri, 12 Jan 2024 16:17:08 GMT + ETag: + - W/"b6393d59b041fd80dd5679447a14e4de3185a0a1" + Last-Modified: + - Fri, 12 Jan 2024 09:49:41 GMT + Referrer-Policy: + - origin-when-cross-origin, strict-origin-when-cross-origin + Server: + - GitHub.com + Strict-Transport-Security: + - max-age=31536000; includeSubdomains; preload + Transfer-Encoding: + - chunked + Vary: + - Accept, Authorization, Cookie, X-GitHub-OTP + - Accept-Encoding, Accept, X-Requested-With + X-Accepted-OAuth-Scopes: + - '' + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - deny + X-GitHub-Media-Type: + - github.v3; format=json + X-GitHub-Request-Id: + - 7874:2E0C86:C5A8EA8:C7DB762:65A16604 + X-OAuth-Scopes: + - repo + X-RateLimit-Limit: + - '5000' + X-RateLimit-Remaining: + - '4958' + X-RateLimit-Reset: + - '1705078320' + X-RateLimit-Resource: + - core + X-RateLimit-Used: + - '42' + X-XSS-Protection: + - '0' + github-authentication-token-expiration: + - 2024-03-04 14:01:51 UTC + x-github-api-version-selected: + - '2022-11-28' + status: + code: 200 + message: OK +- request: + body: '{"object_identifier": "https://github.com/pangaea-data-publisher/fuji", "test_debug": true, "use_datacite": true, "use_github": true, "metric_version": "metrics_v0.7_software"}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - Basic bWFydmVsOndvbmRlcndvbWFu + connection: + - keep-alive + content-length: + - '176' + content-type: + - application/json + host: + - localhost:1071 + user-agent: + - testclient + method: POST + uri: http://localhost:1071/fuji/api/v1/evaluate + response: + content: "{\"test_id\": \"62b0753c8f4aa9c7c6dc7c433cdcbfb330edbd92\", \"request\": {\"object_identifier\": \"https://github.com/pangaea-data-publisher/fuji\", \"test_debug\": true, \"use_datacite\": true, \"use_github\": true, \"metric_version\": \"metrics_v0.7_software\"}, \"resolved_url\": \"https://github.com/pangaea-data-publisher/fuji\", \"start_timestamp\": \"2024-01-12T14:50:47Z\", \"end_timestamp\": \"2024-01-12T14:50:55Z\", \"metric_specification\": \"https://doi.org/10.5281/zenodo.6461229\", \"metric_version\": \"metrics_v0.7_software\", \"software_version\": \"3.1.1\", \"total_metrics\": 1, \"summary\": {\"score_earned\": {\"R\": 2, \"R1.1\": 2, \"FAIR\": 2.0}, \"score_total\": {\"R\": 3, \"R1.1\": 3, \"FAIR\": 3.0}, \"score_percent\": {\"R\": 66.67, \"R1.1\": 66.67, \"FAIR\": 66.67}, \"status_total\": {\"R1.1\": 1, \"R\": 1, \"FAIR\": 1}, \"status_passed\": {\"R1.1\": 1, \"R\": 1, \"FAIR\": 1}, \"maturity\": {\"R\": 3, \"R1.1\": 3, \"FAIR\": 1.0}}, \"results\": [{\"id\": 15, \"metric_identifier\": \"FRSM-15-R1.1\", \"metric_name\": \"The software source code includes licensing information for the software and any bundled external software.\", \"metric_tests\": {\"FRSM-15-R1.1-1\": {\"metric_test_name\": \"License file is included.\", \"metric_test_requirements\": [], \"metric_test_score\": {\"earned\": 1, \"total\": 1}, \"metric_test_maturity\": 1, \"metric_test_status\": \"pass\"}, \"FRSM-15-R1.1-2\": {\"metric_test_name\": \"The source code includes licensing information for all components bundled with that software.\", \"metric_test_requirements\": [], \"metric_test_score\": {\"earned\": 0, \"total\": 1}, \"metric_test_maturity\": 0, \"metric_test_status\": \"fail\"}, \"FRSM-15-R1.1-3\": {\"metric_test_name\": \"Recognized licence is in SPDX format.\", \"metric_test_requirements\": [], \"metric_test_score\": {\"earned\": 1, \"total\": 1}, \"metric_test_maturity\": 3, \"metric_test_status\": \"pass\"}}, \"test_status\": \"pass\", \"score\": {\"earned\": 2, \"total\": 3}, \"maturity\": 3, \"output\": [{\"license\": \"MIT License\", \"osi_approved\": true, \"details_url\": \"http://spdx.org/licenses/MIT.html\"}], \"test_debug\": [\"INFO: License verification name through SPDX registry -: MIT License\", \"INFO: Found SPDX license representation -: http://spdx.org/licenses/MIT.json\", \"SUCCESS: Found SPDX license representation (spdx url, osi_approved)\", \"INFO: This test is not defined in the metric YAML and therefore not performed -: FsF-R1.1-01M-1\", \"SUCCESS: Found licence information in metadata\", \"INFO: This test is not defined in the metric YAML and therefore not performed -: FsF-R1.1-01M-2\", \"INFO: Will consider all SPDX licenses as community specific licenses for FRSM-15-R1.1\", \"INFO: This test is not defined in the metric YAML and therefore not performed -: FRSM-15-R1.1-CESSDA-1\", \"WARNING: Test for license information of bundled components is not implemented.\", \"INFO: This test is not defined in the metric YAML and therefore not performed -: FRSM-15-R1.1-CESSDA-3\", \"INFO: This test is not defined in the metric YAML and therefore not performed -: FRSM-15-R1.1-CESSDA-2\"]}]}\n" + headers: + content-length: + - '2938' + content-type: + - application/json + http_version: HTTP/1.1 + status_code: 200 +version: 1 diff --git a/tests/functional/test_evaluation.py b/tests/functional/test_evaluation.py index 2a0cb6ad..57a36c91 100644 --- a/tests/functional/test_evaluation.py +++ b/tests/functional/test_evaluation.py @@ -6,6 +6,7 @@ from typing import TYPE_CHECKING +import pytest from requests.auth import _basic_auth_str if TYPE_CHECKING: @@ -13,6 +14,7 @@ DEBUG = True UID = "https://doi.org/10.5281/zenodo.8347772" +UID_SOFTWARE = "https://github.com/pangaea-data-publisher/fuji" HTTP_200_OK = 200 @@ -151,3 +153,37 @@ def test_evaluation(client: FlaskClient) -> None: } response_json = response.json() assert response_json["summary"].keys() == expected.keys() + + +@pytest.mark.vcr() +def test_evaluation_software(client: FlaskClient) -> None: + """Functional test of the /evaluate endpoint. + + This test uses canned http responses from Github and other web services (2024-01-12). + It compares a stored summary of a live test run on 2024-01-12. + """ + payload = { + "object_identifier": UID_SOFTWARE, + "test_debug": True, + "use_datacite": True, + "use_github": True, + "metric_version": "metrics_v0.7_software", + } + headers = { + "Authorization": _basic_auth_str("marvel", "wonderwoman"), + } + valid_url = "http://localhost:1071/fuji/api/v1/evaluate" + response = client.post(valid_url, json=payload, headers=headers) + assert response.status_code == HTTP_200_OK + + # these are the results from 2024-01-12 + expected = { + "score_earned": {"R": 2, "R1.1": 2, "FAIR": 2}, + "score_total": {"R": 3, "R1.1": 3, "FAIR": 3}, + "score_percent": {"R": 66.67, "R1.1": 66.67, "FAIR": 66.67}, + "status_total": {"R1.1": 1, "R": 1, "FAIR": 1}, + "status_passed": {"R1.1": 1, "R": 1, "FAIR": 1}, + "maturity": {"R": 3, "R1.1": 3, "FAIR": 1}, + } + response_json = response.json() + assert response_json["summary"] == expected