8000 feat: ANLU package registry · Issue #27 · Mnehmos/mnehmos.nls.lang · GitHub
[go: up one dir, main page]

Skip to content

feat: ANLU package registry #27

Open

Description

@Mnehmos

Overview

Share and reuse ANLUs across projects.

Commands

nlsc registry search "rate limiting"
nlsc registry install mnehmos/rate-limiter
nlsc registry publish

Registry Structure

registry.nls.dev/
  mnehmos/
    rate-limiter/
      v1.0.0/
        rate-limiter.nl
        README.md
        package.json

Package Manifest

# package.nl.yaml
name: rate-limiter
version: 1.0.0
author: mnehmos
description: Rate limiting middleware
keywords: [api, middleware, security]
dependencies:
  mnehmos/time-utils: ^1.0.0

Implementation Options

  1. GitHub-based (packages as repos)
  2. npm-style registry
  3. Simple static hosting (S3 + index.json)

Exit Criteria

  • Can publish and install ANLUs
  • Dependency resolution works

Activity

  1. added this to the Phase 4: Ecosystem milestone on Jan 17, 2026
  2. Mnehmos commented on Jan 18, 2026

    @Mnehmos
    OwnerAuthor

    Updated Roadmap Context

  3. Mnehmos commented on Sep 12, 2026

    @Mnehmos
    OwnerAuthor

    Staging note (planning pass, 2026-09-13)

    Depends on the package model, which landed its first slice in #146: nls.pkg.json manifest, @use <package>.<domain> resolution inside dependency roots, nlsc install / nlsc install --check, and a content-hashed nls.pkg.lock (EPKG001–EPKG005).

    Two things must be settled before registry work starts, so this issue's body should be treated as superseded on those points:

    1. Manifest format: feat: ANLU package registry #27 proposes package.nl.yaml; Package model: versioned dependency resolution beyond stdlib @use #146 shipped nls.pkg.json (nls.pkg/1). The registry should reuse the shipped format rather than introduce a second one.
    2. Symbol linking first: imported package ANLUs are resolved and locked but not yet merged into the caller's symbol table (documented limit in docs/packages.md), so a registry download would be usable only as metadata until that slice lands.

    Suggested slice 1 once those are settled: static-index registry (a repository of owner/name/version/ directories plus index.json, no server), nlsc registry search reading the index, nlsc registry install reusing #146's resolver and lock hashing, then nlsc registry publish last. GitHub-based hosting (option 1 in the issue body) is the cheapest starting point. No registry infrastructure exists in the repo today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    ecosystemPackage and distribution systemenhancementNew feature or request

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0