{"id":20260285,"url":"https://github.com/influxdata/line-protocol-corpus","last_synced_at":"2025-06-27T07:34:40.069Z","repository":{"id":46864615,"uuid":"347143513","full_name":"influxdata/line-protocol-corpus","owner":"influxdata","description":"A repository that stores a corpus of expected line-protocol codec results","archived":false,"fork":false,"pushed_at":"2021-09-22T08:01:47.000Z","size":2697,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-03T18:47:59.118Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"CUE","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/influxdata.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}},"created_at":"2021-03-12T17:22:29.000Z","updated_at":"2024-07-08T16:44:17.000Z","dependencies_parsed_at":"2022-09-23T08:00:40.352Z","dependency_job_id":null,"html_url":"https://github.com/influxdata/line-protocol-corpus","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/influxdata/line-protocol-corpus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/influxdata%2Fline-protocol-corpus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/influxdata%2Fline-protocol-corpus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/influxdata%2Fline-protocol-corpus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/influxdata%2Fline-protocol-corpus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/influxdata","download_url":"https://codeload.github.com/influxdata/line-protocol-corpus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/influxdata%2Fline-protocol-corpus/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262213009,"owners_count":23276033,"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":[],"created_at":"2024-11-14T11:18:53.024Z","updated_at":"2025-06-27T07:34:40.051Z","avatar_url":"https://github.com/influxdata.png","language":"CUE","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Line-protocol corpus\n\nThis repository holds a corpus of data for testing InfluxDB [line-protocol](https://docs.influxdata.com/influxdb/cloud/reference/syntax/line-protocol/) codec implementations.\n\nThe primary data is stored in [CUE format](https://cuelang.org), but the `corpus.json` file holds\nthe exported data in JSON format.\n\nThe `schema.cue` file defines the format of the data. In brief, the corpus data\nhas two top level fields, `decode` and `encode`, which hold inputs and expected\nresults for decoding and encoding respectively.\n\nThe various `inputs-*.cue` files hold test inputs that have derived from\ndifferent sources.\n\nWhen there's an error, an explicit error string is given so that it's clear what\nkind of error is expected, but implementations would not be expected to\nreproduce that exact error.\n\nThe corpus results are intended correspond with the proposed standardised syntax\n[proposal](https://docs.google.com/document/d/1GCGgg6EcW8bPyVhLsS9L6kvEyC8S5_T0tbcomfF3FxI).\n\n## Using the corpus\n\nTo use this corpus to run against your own codec, you don't need to install CUE,\nas all the relevant data is exported into the [corpus.json](corpus.json) file.\nYou'll need to write some code to translate from the unmarshaled JSON to the data\nstructures that your own code provides, then check that the results are as expected.\n\n## Adding test cases\n\nThe `corpus*.cue` files are generated by running the corpus input data through the\n\"reference\" Go  implementation at [github.com/influxdata/line-protocol/v2/influxdata](https://pkg.go.dev/github.com/influxdata/line-protocol/v2/influxdata)\nby running the generate program (use `make` to run it).\n\nIf there's a test case that's considered to be wrong, rather than just editing the CUE\nfile, the reference implementation should be fixed before regenerating the files.\n\nTo add a new test case, add it to either [inputs-decode-custom.cue](inputs-decode-custom.cue) or\n[inputs-encode-custom.cue](inputs-encode-custom.cue) as appropriate, then regenerate the corpus\nby running `make`.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfluxdata%2Fline-protocol-corpus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finfluxdata%2Fline-protocol-corpus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfluxdata%2Fline-protocol-corpus/lists"}