{"id":19614636,"url":"https://github.com/activestate/langtools","last_synced_at":"2025-04-28T01:32:14.135Z","repository":{"id":41126786,"uuid":"245261794","full_name":"ActiveState/langtools","owner":"ActiveState","description":"Go packages and tools for working with language ecosystems","archived":false,"fork":false,"pushed_at":"2024-07-08T21:59:27.000Z","size":37,"stargazers_count":1,"open_issues_count":6,"forks_count":3,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-04-05T04:51:14.439Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ActiveState.png","metadata":{"files":{"readme":"README.md","changelog":"Changes.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2020-03-05T20:32:06.000Z","updated_at":"2021-06-01T21:24:28.000Z","dependencies_parsed_at":"2024-06-19T16:57:59.797Z","dependency_job_id":"c15ddfb4-64c8-4831-a887-2366cf6c4411","html_url":"https://github.com/ActiveState/langtools","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ActiveState%2Flangtools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ActiveState%2Flangtools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ActiveState%2Flangtools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ActiveState%2Flangtools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ActiveState","download_url":"https://codeload.github.com/ActiveState/langtools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251234088,"owners_count":21556781,"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-11T10:53:12.109Z","updated_at":"2025-04-28T01:32:12.839Z","avatar_url":"https://github.com/ActiveState.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# What Is This\n\nThe langtools repo contains packages and tools that we at ActiveState have\ndeveloped as part of the [ActiveState\nPlatform](https://platform.activestate.com/). The platform provides automated\nlanguage builds, where you can pick a language core and a set of packages to\nbe built on a variety of platforms. Since building the platform requires us to\nunderstand a number of language package ecosystems, we are building tools for\nworking with these ecosystems.\n\n## Version Parsing\n\nThis repo contains a Go package for version parsing,\n`github.com/ActiveState/langtools/pkg/version`:\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\n\t\"github.com/ActiveState/langtools/pkg/version\"\n)\n\nfunc main() {\n\tv, err := version.ParseGeneric(\"1.2\")\n\tif err != nil {\n\t\tlog.Fatalf(\"Could not parse 1.2 as a generic version: %s\", err)\n\t}\n\tfmt.Printf(\"Parsed as %v\\n\", v.Decimal)\n\t// Prints:\n\t// Parsed as [1 2]\n}\n```\n\n## Name Normalization\n\nSome language ecosystems have a concept of name normalization for package\nnames. This repo contains a Go package for name normalization,\n`github.com/ActiveState/langtools/pkg/name`:\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/ActiveState/langtools/pkg/name\"\n)\n\nfunc main() {\n\tnorm := name.NormalizePython(\"backports.functools_lru_cache\")\n\tfmt.Printf(\"Normalized as %s\\n\", norm)\n\t// Prints:\n\t// Normalized as backports-functools-lru-cache\n}\n```\n\n### `parseversion` Command Line Tool\n\nThis repository also contains the code for a `parseversion` CLI tool. You can\ninstall this by running `go get\ngithub.com/ActiveState/langtools/cmd/parseversion`. Run `parseversion --help`\nfor details on this tool.\n\n## Build Status\n\n[![CircleCI](https://circleci.com/gh/ActiveState/langtools.svg?style=svg)](https://circleci.com/gh/ActiveState/langtools)\n\n## To Create a New Release\n* Tag master: `git tag v0.0.6`\n* Push the tag: `git push origin v0.0.6`\n* Go to the [releases page](https://github.com/ActiveState/langtools/releases)\n* Click on the name of the new release, `v0.0.6` in this example\n* Click the `Edit Release` button on the top right\n* Enter in the release notes, which are the same as you added to `Changes.md`\n  * Remove any manual line breaks as they don't look good\n* Click the `Publish Release` button on the bottom\n\n## Authors\n\nThis library was created by:\n\n* Sean Fitzgerald\n* Jason Palmer\n* Dave Rolsky \\\u003cautarch@urth.org\\\u003e\n* Tyler Santerre\n* Stephen Reichling\n\n## Copyright\n\nCopyright (c) 2020, ActiveState Software.\nAll rights reserved.\n\n## License\n\nThis software is licensed under the BSD 3-Clause License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivestate%2Flangtools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factivestate%2Flangtools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factivestate%2Flangtools/lists"}