diff --git a/Makefile b/Makefile index 0537d47..ab4b80e 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ .PHONY: push-all, build, publish -VERSION=1.0.1 +VERSION=1.0.2 IMAGE_NAME=gleif/vlei LATEST_TAG=$(IMAGE_NAME):latest VERSION_TAG=$(IMAGE_NAME):$(VERSION) diff --git a/README.md b/README.md index 98b18cd..23dd9fb 100644 --- a/README.md +++ b/README.md @@ -2,30 +2,31 @@ Verifiable Legal Entity Identifier Schema Generator and Server -| main | dev | -|--------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------| -| [![main](https://github.com/webOfTrust/vLEI/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/WebOfTrust/vLEI/actions) | [![dev](https://github.com/webOfTrust/vLEI/actions/workflows/test.yml/badge.svg?branch=dev)](https://github.com/WebOfTrust/vLEI/actions) | -| [![codecov](https://codecov.io/gh/WebOfTrust/vLEI/branch/main/graph/badge.svg?token=C30E9WBW4D)](https://codecov.io/gh/WebOfTrust/vLEI) | [![codecov](https://codecov.io/gh/WebOfTrust/vLEI/branch/dev/graph/badge.svg?token=C30E9WBW4D)](https://codecov.io/gh/WebOfTrust/vLEI) | +| main | dev | +|-------------------------------------------|------------------------------------------| +| [![main][badge-main]][github-actions] | [![dev][badge-dev]][github-actions] | +| [![codecov][badge-codecov-main]][codecov] | [![codecov][badge-codecov-dev]][codecov] | ## Public Open Specifications for GLEIF vLEI (verifiable Legal Entity Identifiers) -[GLEIF](https://www.gleif.org/en/) +[GLEIF][gleif] -[vLEI](https://www.gleif.org/en/lei-solutions/gleifs-digital-strategy-for-the-lei/introducing-the-verifiable-lei-vlei) +[vLEI][vlei] -The vLEI is a open standard type of W3C Verifiable Credential (VC) that leverages the W3C Decentralized Identifier (DID) standard. The DID method is `did:keri` which is based onthe [KERI](https://keri.one) identifier system . +The vLEI is a open standard type of W3C Verifiable Credential (VC) that leverages the W3C Decentralized Identifier (DID) standard. The DID method is `did:keri` which is based onthe [KERI][keri] identifier system . ### Credential Schema and vLEI Samples The table below lists all the vLEI credentials with links to the JSON Schema for each credential as well as links to a sample for each: -| Acronym | Full Name of Credential | Link to JSON Schema | Link to Sample Credential JSON | -|---|---|---|---| -| QVI | Qualified vLEI Issuer vLEI Credential | [QVI Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/qualified-vLEI-issuer-vLEI-credential.json) | [QVI Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/qualified-vLEI-issuer-vLEI-credential.json) | -| LE | Legal Entity vLEI Credential | [LE Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-vLEI-credential.json) | [LE Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-vLEI-credential.json) | -| OOR AUTH | Qualified vLEI Issuer OOR Authorization vLEI Credential | [OOR AUTH Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/oor-authorization-vlei-credential.json) | [OOR AUTH Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/oor-authorization-vlei-credential.json) | -| ECR AUTH| Qualified vLEI Issuer OOR vLEI Credential | [ECR AUTH Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/ecr-authorization-vlei-credential.json) | [ECR AUTH Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/ecr-authorization-vlei-credential.json) | -| OOR | Legal Entity Official Organizational Role vLEI Credential | [OOR Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-official-organizational-role-vLEI-credential.json) | [OOR Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-official-organizational-role-vLEI-credential.json) | -| ECR | Legal Entity Engagement Context Role vLEI Credential | [ECR Schema](https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-engagement-context-role-vLEI-credential.json) | [ECR Sample](https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-engagement-context-role-vLEI-credential.json) | + +| Acronym | Full Name of Credential | Link to JSON Schema | Link to Sample Credential JSON | +|----------|-----------------------------------------------------------|------------------------------------|------------------------------------| +| QVI | Qualified vLEI Issuer vLEI Credential | [QVI Schema][qvi-schema] | [QVI Sample][qvi-sample] | +| LE | Legal Entity vLEI Credential | [LE Schema][le-schema] | [LE Sample][le-sample] | +| OOR AUTH | Qualified vLEI Issuer OOR Authorization vLEI Credential | [OOR AUTH Schema][oor-auth-schema] | [OOR AUTH Sample][oor-auth-sample] | +| ECR AUTH | Qualified vLEI Issuer OOR vLEI Credential | [ECR AUTH Schema][ecr-auth-schema] | [ECR AUTH Sample][ecr-auth-sample] | +| OOR | Legal Entity Official Organizational Role vLEI Credential | [OOR Schema][oor-schema] | [OOR Sample][oor-sample] | +| ECR | Legal Entity Engagement Context Role vLEI Credential | [ECR Schema][ecr-schema] | [ECR Sample][ecr-sample] | ### Development @@ -47,3 +48,25 @@ To Saidify a schema json file and add the schema to ./schema/acdc folder, run: ```shell saidify-schema -f ``` + +[badge-main]: https://github.com/webOfTrust/vLEI/actions/workflows/test.yml/badge.svg?branch=main +[badge-dev]: https://github.com/webOfTrust/vLEI/actions/workflows/test.yml/badge.svg?branch=dev +[badge-codecov-main]: https://codecov.io/gh/WebOfTrust/vLEI/branch/main/graph/badge.svg?token=C30E9WBW4D +[badge-codecov-dev]: https://codecov.io/gh/WebOfTrust/vLEI/branch/dev/graph/badge.svg?token=C30E9WBW4D +[github-actions]: https://github.com/WebOfTrust/vLEI/actions +[codecov]: https://codecov.io/gh/WebOfTrust/vLEI +[gleif]: https://www.gleif.org/en/ +[vlei]: https://www.gleif.org/en/lei-solutions/gleifs-digital-strategy-for-the-lei/introducing-the-verifiable-lei-vlei +[keri]: https://keri.one +[qvi-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/qualified-vLEI-issuer-vLEI-credential.json +[qvi-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/qualified-vLEI-issuer-vLEI-credential.json +[le-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-vLEI-credential.json +[le-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-vLEI-credential.json +[oor-auth-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/oor-authorization-vlei-credential.json +[oor-auth-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/oor-authorization-vlei-credential.json +[ecr-auth-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/ecr-authorization-vlei-credential.json +[ecr-auth-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/ecr-authorization-vlei-credential.json +[oor-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-official-organizational-role-vLEI-credential.json +[oor-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-official-organizational-role-vLEI-credential.json +[ecr-schema]: https://github.com/WebOfTrust/vLEI/blob/dev/schema/acdc/legal-entity-engagement-context-role-vLEI-credential.json +[ecr-sample]: https://github.com/WebOfTrust/vLEI/blob/dev/samples/acdc/legal-entity-engagement-context-role-vLEI-credential.json diff --git a/samples/oobis/MIGRATION.md b/samples/oobis/MIGRATION.md index 48b5e1e..21c3d78 100644 --- a/samples/oobis/MIGRATION.md +++ b/samples/oobis/MIGRATION.md @@ -58,12 +58,6 @@ samples/oobis/.well-known/ - `WellKnownEnd`: Falcon endpoint handler - `loadWellKnownEnds()`: Helper to register endpoints -### Test Coverage -- **`tests/app/test_well_known.py`**: 15 unit tests with mocked data -- **`tests/app/test_well_known_samples.py`**: 12 integration tests with real GLEIF data - -All 27 tests pass. - ## Usage ### Serving Well-Known Resources diff --git a/setup.py b/setup.py index 9d87d1b..4cc9b4e 100644 --- a/setup.py +++ b/setup.py @@ -39,7 +39,7 @@ setup( name='vlei', - version='1.0.1', # also change in src/vlei/__init__.py + version='1.0.2', # also change in src/vlei/__init__.py license='Apache Software License 2.0', description='Verifiable Legal Entity Identifier', long_description=long_description, @@ -74,8 +74,8 @@ ], python_requires='>=3.12.6', install_requires=[ - 'hio==0.6.14', - 'keri>=1.2.7', + 'hio>=0.6.14,<0.7.0', + 'keri>=1.2.12', 'falcon>=4.0.2', 'multicommand>=1.0.0' ], @@ -84,7 +84,7 @@ tests_require=[ 'coverage>=7.8.0', 'pytest>=8.3.5', - 'requests==2.32.3' + 'requests==2.32.5' ], setup_requires=[ ], diff --git a/src/vlei/__init__.py b/src/vlei/__init__.py index 2651796..d1117c6 100644 --- a/src/vlei/__init__.py +++ b/src/vlei/__init__.py @@ -1,4 +1,4 @@ # -*- encoding: utf-8 -*- -__version__ = '1.0.1' # also change in setup.py +__version__ = '1.0.2' # also change in setup.py diff --git a/src/vlei/app/well_known.py b/src/vlei/app/well_known.py index 10cb3a4..e5bb30e 100644 --- a/src/vlei/app/well_known.py +++ b/src/vlei/app/well_known.py @@ -139,8 +139,6 @@ def __init__(self, oobi_dir: str): Parameters: oobi_dir (str): Path to the well-known/keri/oobi directory """ - if "keri/oobi" not in oobi_dir: - oobi_dir = os.path.join(oobi_dir, "keri", "oobi") self.oobi_dir = oobi_dir self.index = WellKnownIndex(os.path.join(oobi_dir, "index.json")) @@ -149,7 +147,6 @@ def __init__(self, oobi_dir: str): def on_get(self, req, rep, identifier: str): """ Handle GET requests for well-known KERI resources. - Assumes the "keri/oobi" path segment is already included in the self.oobi_dir. Parameters: req (Request): Falcon HTTP Request object