{"id":13739817,"url":"https://github.com/anko/tap-merge","last_synced_at":"2025-04-22T19:55:22.213Z","repository":{"id":32997351,"uuid":"36627540","full_name":"anko/tap-merge","owner":"anko","description":"library and CLI tool that merges multiple Test Anything Protocol streams","archived":false,"fork":false,"pushed_at":"2019-11-21T18:28:50.000Z","size":18,"stargazers_count":13,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-25T19:02:21.079Z","etag":null,"topics":["merge","stream","tap"],"latest_commit_sha":null,"homepage":"","language":"LiveScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anko.png","metadata":{"files":{"readme":"readme.markdown","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":"2015-05-31T23:52:15.000Z","updated_at":"2022-05-07T23:35:36.000Z","dependencies_parsed_at":"2022-09-04T02:51:14.807Z","dependency_job_id":null,"html_url":"https://github.com/anko/tap-merge","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anko%2Ftap-merge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anko%2Ftap-merge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anko%2Ftap-merge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anko%2Ftap-merge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anko","download_url":"https://codeload.github.com/anko/tap-merge/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250315420,"owners_count":21410472,"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":["merge","stream","tap"],"created_at":"2024-08-03T04:00:37.930Z","updated_at":"2025-04-22T19:55:22.189Z","avatar_url":"https://github.com/anko.png","language":"LiveScript","funding_links":[],"categories":["Tools"],"sub_categories":["JavaScript"],"readme":"# tap-merge [![Travis CI status](https://img.shields.io/travis/anko/tap-merge.svg?style=flat-square)][1] [![npm package version](https://img.shields.io/npm/v/tap-merge.svg?style=flat-square)][2]\n\nMerge [TAP 13][3] streams.\n\nRe-numbers tests and test plans to remove conflicts.  The test plan (e.g.\n`1..5`) line is emitted last.  Can be used from the command line or as a\nmodule.  Streams everything, so it can process concurrently with the TAP\nproducers.\n\nOnly asserts, plans and the version header lines are parsed.  Everything else\nis left alone, so extras like YAML blocks or subtests will work.\n\n## CLI usage\n\n    cat \u003c(tapProducer1) \u003c(tapProducer2) | tap-merge\n\nor otherwise concatenate two TAP streams and feed them on `stdin` to\n`tap-merge`.\n\n## Module usage\n\n```js\nvar tapMerge = require(\"tap-merge\");\nprocess.stdin              // or any readable stream\n    .pipe(tapMerge())\n    .pipe(process.stdout); // or any writable stream\n```\n\nIf you want to give it multiple streams one after the other, use a module like\n[multistream][4].\n\n## Example\n\n\u003c!-- !test program ./cli.js | head -c -1 --\u003e\n\nInput (two TAP streams, one after the other):\n\n\u003c!-- !test in example --\u003e\n\n    TAP version 13\n    1..3\n    # first test\n    ok 1 - yep\n    # second test\n    ok 2 - yep\n    # third test\n    ok 3 - yep\n\n    TAP version 13\n    1..2\n    not ok 1 - fail\n    ok 2 - just fine\n\nOutput (one TAP stream; conflicts resolved):\n\n\u003c!-- !test out example --\u003e\n\n    TAP version 13\n    # first test\n    ok 1 - yep\n    # second test\n    ok 2 - yep\n    # third test\n    ok 3 - yep\n\n    not ok 4 - fail\n    ok 5 - just fine\n    1..5\n\n## Limitations\n\nDoesn't do validation.  Provide valid input.\n\n## License\n\n[ISC][5].\n\n[1]: https://travis-ci.org/anko/tap-merge\n[2]: https://www.npmjs.com/package/tap-merge\n[3]: https://testanything.org/tap-version-13-specification.html\n[4]: https://www.npmjs.com/package/multistream\n[5]: http://en.wikipedia.org/wiki/ISC_license\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanko%2Ftap-merge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanko%2Ftap-merge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanko%2Ftap-merge/lists"}