Skip to content

Apply CSA package-naming convention (completes F-10-05) - #6

Merged
kurtseifried merged 1 commit into
mainfrom
chore/package-naming-convention
Jun 22, 2026
Merged

Apply CSA package-naming convention (completes F-10-05)#6
kurtseifried merged 1 commit into
mainfrom
chore/package-naming-convention

Conversation

@kurtseifried

Copy link
Copy Markdown
Contributor

Summary

Establishes and applies the CSA package-naming convention, and completes audit finding F-10-05 (package rename).

The convention

  • Registry has a namespace/scope (npm scopes, Go module paths) → keep a simple name under the org namespace: @cloudsecurityalliance/secid, github.com/CloudSecurityAlliance/… (unchanged).
  • Flat registry (PyPI) → the distribution name carries the org prefix: cloudsecurityalliance-secid. Default to the full cloudsecurityalliance- prefix; fall back to csa- only when the name would be too long or the registry constrains length.
  • Import modules and CLI commands stay simple regardless: still import secid_client / the secid command.

Changes

  • typescript/package.json: name → @cloudsecurityalliance/secid, plus publishConfig.access = public (scoped packages default to private otherwise).
  • python/pyproject.toml: name → cloudsecurityalliance-secid (import module secid_client and secid CLI entry point unchanged).
  • Go: no change — github.com/CloudSecurityAlliance/SecID-Client-SDK/go already conforms.
  • Install/import docs updated across the three READMEs + the client doc comment; the convention itself is documented in the top-level README.

Verified: tsc build OK under the scoped name, pyproject.toml parses, Python client imports and main entry point intact.

⚠️ Correction

The npm rename was claimed in the earlier hardening PR (#5) but the package.json change was never actually committed — a staging miss on my part (the working-tree edit was dropped on checkout). This PR corrects that and adds the PyPI name, which was deliberately left open at the time pending this naming decision.

Note

Actual publishing under the new names (npm @cloudsecurityalliance/secid, PyPI cloudsecurityalliance-secid) remains your manual release step. Org-wide, this convention would ideally live in a CSA contributor-docs location rather than only this repo's README.

🤖 Generated with Claude Code

Establishes and applies the org-wide rule:
- Registries WITH a namespace/scope keep a simple name under the org namespace:
  npm -> @cloudsecurityalliance/secid; Go module path unchanged.
- Flat registries carry the org prefix on the distribution name:
  PyPI -> cloudsecurityalliance-secid (default to the full cloudsecurityalliance-
  prefix; csa- only when length-constrained).
- Import modules (secid_client) and the CLI command (secid) stay simple.

Adds publishConfig.access=public so the scoped npm package publishes public.
Updates install/import docs across the three READMEs and the client doc comment.
The convention is documented in the README.

Note: the npm rename was claimed in the earlier hardening PR but the
package.json change was never actually committed (staging miss) — corrected here
along with the PyPI name, which was left open at the time.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kurtseifried
kurtseifried merged commit 00893a0 into main Jun 22, 2026
12 checks passed
@kurtseifried
kurtseifried deleted the chore/package-naming-convention branch June 22, 2026 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant