{"id":23711240,"url":"https://github.com/mohammed90/http-compliance-testing","last_synced_at":"2026-02-09T07:34:39.136Z","repository":{"id":269527283,"uuid":"904985627","full_name":"mohammed90/http-compliance-testing","owner":"mohammed90","description":"The first steps towards validating each part everyone's HTTP implementation","archived":false,"fork":false,"pushed_at":"2024-12-17T23:45:44.000Z","size":365,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-24T08:17:43.356Z","etag":null,"topics":["http","https","httpwg","ietf","rfc9110","rfcs","testing"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mohammed90.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-17T23:43:00.000Z","updated_at":"2024-12-18T18:21:07.000Z","dependencies_parsed_at":"2024-12-24T08:17:55.651Z","dependency_job_id":"a42b54dd-db1e-4af0-9240-dcc6c81b78d9","html_url":"https://github.com/mohammed90/http-compliance-testing","commit_stats":null,"previous_names":["mohammed90/http-compliance-testing"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammed90%2Fhttp-compliance-testing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammed90%2Fhttp-compliance-testing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammed90%2Fhttp-compliance-testing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammed90%2Fhttp-compliance-testing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mohammed90","download_url":"https://codeload.github.com/mohammed90/http-compliance-testing/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231906164,"owners_count":18443936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["http","https","httpwg","ietf","rfc9110","rfcs","testing"],"created_at":"2024-12-30T19:34:38.565Z","updated_at":"2026-02-09T07:34:39.123Z","avatar_url":"https://github.com/mohammed90.png","language":"Go","readme":"\nHTTP Compliance Testing\n===========================\n\nThis repository aims to contain the input/output data comprising the HTTP compliance test suite. It also contains a simplistic script to extract the rules from the XML.\n\n## Background\n\nThis project is based on the two conversations, one took place on the HTTP Working Group mailing list and the other on the HTTP Workshop. The blog post [Towards Validated HTTP Implementation](https://www.caffeinatedwonders.com/2024/12/18/towards-validated-http-implementation/) summarizes both discussions and gives a high-level overview of the project.\n\n## RFC Requirement -\u003e Log Level Mapping\n\nTest suite execution engines (TBD: To Be Developed) should map the requirements violations to log levels and results as follows:\n\n| Requirement     | Log Level |\n|-----------------|-----------|\n| MUST            | ERROR     |\n| MUST NOT        | ERROR     |\n| REQUIRED        | ERROR     |\n| SHALL           | ERROR     |\n| SHALL NOT       | ERROR     |\n| SHOULD          | WARNING   |\n| SHOULD NOT      | WARNING   |\n| RECOMMENDED     | WARNING   |\n| NOT RECOMMENDED | WARNING   |\n| MAY             | INFO      |\n| OPTIONAL        | INFO      |\n\nThe mapping table is built according to the [RFC 2119](https://datatracker.ietf.org/doc/html/rfc2119).\n\n## Development\n\nThe proecss is yet to be refined. Currenty the XML files are placed in the `rfcs` directory. For each RFC, a subdirectory is created under `rfcs`. The subtree has immediate descendants `text` and `data`. The `text` content is generated by the program in `rfc-requirements-extractor`. The `data` sub-directory is meant to contain the codified data corresponding to the requirements as defined in the RFC.\n\n### TODO:\n\n- [ ] Refine the process\n- [ ] Define the data format \u0026 structure as suitable for the respective RFC section\n\t- [ ] Define the test cases\n\n### Tip\nTo find rules in the XML, search using the regular expression:\n\n```regexp\n\u003cbcp14\u003e\\w+(\\s\\w+)?\u003c/bcp14\u003e\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohammed90%2Fhttp-compliance-testing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmohammed90%2Fhttp-compliance-testing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohammed90%2Fhttp-compliance-testing/lists"}