{"id":13511473,"url":"https://github.com/onetrueawk/awk","last_synced_at":"2026-02-22T10:39:17.694Z","repository":{"id":6061605,"uuid":"7287136","full_name":"onetrueawk/awk","owner":"onetrueawk","description":"One true awk","archived":false,"fork":false,"pushed_at":"2025-12-25T18:57:10.000Z","size":4105,"stargazers_count":2151,"open_issues_count":6,"forks_count":179,"subscribers_count":66,"default_branch":"master","last_synced_at":"2025-12-27T05:51:55.307Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/onetrueawk.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2012-12-22T15:24:19.000Z","updated_at":"2025-12-26T12:26:04.000Z","dependencies_parsed_at":"2023-02-16T22:15:47.117Z","dependency_job_id":"479c527f-d658-454c-ab59-dab83350963a","html_url":"https://github.com/onetrueawk/awk","commit_stats":{"total_commits":243,"total_committers":26,"mean_commits":9.346153846153847,"dds":0.5802469135802469,"last_synced_commit":"f38a02c8be0c605467cbff2c953a8d1c2cebdebc"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/onetrueawk/awk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onetrueawk%2Fawk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onetrueawk%2Fawk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onetrueawk%2Fawk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onetrueawk%2Fawk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/onetrueawk","download_url":"https://codeload.github.com/onetrueawk/awk/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onetrueawk%2Fawk/sbom","scorecard":{"id":707193,"data":{"date":"2025-08-11","repo":{"name":"github.com/onetrueawk/awk","commit":"d7f37646965ee26214da0e1d97f3c1d54349ae2d"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.9,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":6,"reason":"4 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":1,"reason":"Found 4/25 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":["Info: Possibly incomplete results: error parsing shell code: reached EOF without closing quote ': testdir/T.misc:0"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 9 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T07:00:37.230Z","repository_id":6061605,"created_at":"2025-08-22T07:00:37.230Z","updated_at":"2025-08-22T07:00:37.230Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29709634,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-22T10:34:24.778Z","status":"ssl_error","status_checked_at":"2026-02-22T10:32:23.200Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-08-01T03:00:51.011Z","updated_at":"2026-02-22T10:39:17.668Z","avatar_url":"https://github.com/onetrueawk.png","language":"C","funding_links":[],"categories":["C","Books","\u003ca name=\"text-processing\"\u003e\u003c/a\u003eText processing"],"sub_categories":[],"readme":"# The One True Awk\n\nThis is the version of `awk` described in _The AWK Programming Language_,\nSecond Edition, by Al Aho, Brian Kernighan, and Peter Weinberger\n(Addison-Wesley, 2024, ISBN-13 978-0138269722, ISBN-10 0138269726).\n\n## What's New? ##\n\nThis version of Awk handles UTF-8 and comma-separated values (CSV) input.\n\n### Strings ###\n\nFunctions that process strings now count Unicode code points, not bytes;\nthis affects `length`, `substr`, `index`, `match`, `split`,\n`sub`, `gsub`, and others.  Note that code\npoints are not necessarily characters.\n\nUTF-8 sequences may appear in literal strings and regular expressions.\nArbitrary characters may be included with `\\u` followed by 1 to 8 hexadecimal digits.\n\n### Regular expressions ###\n\nRegular expressions may include UTF-8 code points, including `\\u`.\n\n### CSV ###\n\nThe option `--csv` turns on CSV processing of input:\nfields are separated by commas, fields may be quoted with\ndouble-quote (`\"`) characters, quoted fields may contain embedded newlines.\nDouble-quotes in fields have to be doubled and enclosed in quoted fields.\nIn CSV mode, `FS` is ignored.\n\nIf no explicit separator argument is provided,\nfield-splitting in `split` is determined by CSV mode.\n\n## Copyright\n\nCopyright (C) Lucent Technologies 1997\u003cbr/\u003e\nAll Rights Reserved\n\nPermission to use, copy, modify, and distribute this software and\nits documentation for any purpose and without fee is hereby\ngranted, provided that the above copyright notice appear in all\ncopies and that both that the copyright notice and this\npermission notice and warranty disclaimer appear in supporting\ndocumentation, and that the name Lucent Technologies or any of\nits entities not be used in advertising or publicity pertaining\nto distribution of the software without specific, written prior\npermission.\n\nLUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,\nINCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.\nIN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY\nSPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\nWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER\nIN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,\nARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF\nTHIS SOFTWARE.\n\n## Distribution and Reporting Problems\n\nChanges, mostly bug fixes and occasional enhancements, are listed\nin `FIXES`.  If you distribute this code further, please please please\ndistribute `FIXES` with it.\n\nIf you find errors, please report them\nto the current maintainer, ozan.yigit@gmail.com.\nPlease _also_ open an issue in the GitHub issue tracker, to make\nit easy to track issues.\nThanks.\n\n## Submitting Pull Requests\n\nPull requests are welcome. Some guidelines:\n\n* Please do not use functions or facilities that are not standard (e.g.,\n`strlcpy()`, `fpurge()`).\n\n* Please run the test suite and make sure that your changes pass before\nposting the pull request. To do so:\n\n  1. Save the previous version of `awk` somewhere in your path. Call it `nawk` (for example).\n  1. Run `oldawk=nawk make check \u003e check.out 2\u003e\u00261`.\n  1. Search for `BAD` or `error` in the result. In general, look over it manually to make sure there are no errors.\n\n* Please create the pull request with a request\nto merge into the `staging` branch instead of into the `master` branch.\nThis allows us to do testing, and to make any additional edits or changes\nafter the merge but before merging to `master`.\n\n## Building\n\nThe program itself is created by\n\n\tmake\n\nwhich should produce a sequence of messages roughly like this:\n\n\tbison -d  awkgram.y\n\tawkgram.y: warning: 44 shift/reduce conflicts [-Wconflicts-sr]\n\tawkgram.y: warning: 85 reduce/reduce conflicts [-Wconflicts-rr]\n\tawkgram.y: note: rerun with option '-Wcounterexamples' to generate conflict counterexamples\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o awkgram.tab.o awkgram.tab.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o b.o b.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o main.o main.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o parse.o parse.c\n\tgcc -g -Wall -pedantic -Wcast-qual -O2 maketab.c -o maketab\n\t./maketab awkgram.tab.h \u003eproctab.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o proctab.o proctab.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o tran.o tran.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o lib.o lib.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o run.o run.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2   -c -o lex.o lex.c\n\tgcc -g -Wall -pedantic -Wcast-qual   -O2 awkgram.tab.o b.o main.o parse.o proctab.o tran.o lib.o run.o lex.o   -lm\n\nThis produces an executable `a.out`; you will eventually want to\nmove this to some place like `/usr/bin/awk`.\n\nIf your system does not have `yacc` or `bison` (the GNU\nequivalent), you need to install one of them first.\nThe default in the `makefile` is `bison`; you will have\nto edit the `makefile` to use `yacc`.\n\nNOTE: This version uses ISO/IEC C99, as you should also.  We have\ncompiled this without any changes using `gcc -Wall` and/or local C\ncompilers on a variety of systems, but new systems or compilers\nmay raise some new complaint; reports of difficulties are\nwelcome.\n\nThis compiles without change on Macintosh OS X using `gcc` and\nthe standard developer tools.\n\nYou can also use `make CC=g++` to build with the GNU C++ compiler,\nshould you choose to do so.\n\n## A Note About Releases\n\nWe don't usually do releases.\n\n## A Note About Maintenance\n\nNOTICE! Maintenance of this program is on a ''best effort''\nbasis.  We try to get to issues and pull requests as quickly\nas we can.  Unfortunately, however, keeping this program going\nis not at the top of our priority list.\n\n#### Last Updated\n\nMon 05 Feb 2024 08:46:55 IST\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonetrueawk%2Fawk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fonetrueawk%2Fawk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonetrueawk%2Fawk/lists"}