Skip to content

Publicar openfindata no PyPI, ou corrigir os 5 lugares que prometem pip install #65

Open

Description

@robertoecf

Problema

pip install openfindata não funciona. O nome não está publicado no PyPI, mas o repo promete esse comando em cinco lugares. O pior é a linha 30 do README, que é o primeiro comando que um visitante copia.

Verificado em 27/10/2026:

openfindata      pypi -> 404
findata-br       pypi -> 404
openfindata-br   pypi -> 404

Lugares que prometem o comando hoje:

Arquivo Linha
README.md 30
CHANGELOG.md 64
ROADMAP.md 188
docs/DEPLOY_WORKERS_MCP.md 18
docs/SOURCES_WITH_AUTH.md 6

A landing pública tinha a mesma linha falsa. Foi removida no #61, porque prometer instalação que retorna 404 para estudante que chega pela primeira vez é pior do que não mencionar.

Estado atual

  • pyproject.toml declara name = "openfindata", versão 0.3.1, backend hatchling.
  • A tag v0.3.1 existe. Há 3 tags no total: v0.2.0, v0.3.0, v0.3.1.
  • Não existe workflow de publish. Os workflows são ci.yml, integration.yml e rebuild-registry.yml. Nenhum menciona PyPI, twine ou trusted publishing.

Ou seja: o pacote é construível e versionado, mas nunca houve caminho de publicação.

Duas saídas

A. Publicar. Reservar openfindata no PyPI e adicionar um workflow de release disparado por tag, usando trusted publishing. Trusted publishing é a opção que combina com a regra do projeto de não ter credencial em código: a autenticação é OIDC, sem token guardado no repo nem em secret.

B. Não publicar agora. Corrigir os cinco lugares para instalação a partir do fonte (pip install git+https://github.com/robertoecf/OpenFinData ou clone mais pip install -e .), e tirar a promessa até existir release.

Opinião: A, porque a biblioteca Python é metade da proposta do projeto e instalação por git afasta exatamente o público não-dev. Mas B é melhor do que o estado atual, que é prometer e falhar.

Guardrail

AGENTS.md diz: "Do not publish to PyPI without explicit human approval" e "Do not tag a release until tests and adversarial review are clean". Esta issue rastreia a decisão, não a autoriza. Nenhum publish sai daqui sem o OK do Roberto.

Detalhe secundário

pyproject.toml está em 0.3.1 e o Worker se anuncia como 0.3.3 no serverInfo. São artefatos separados e o descompasso pode ser intencional, mas vale decidir se as versões andam juntas antes do primeiro release, senão o número publicado no PyPI vai divergir do que o MCP público reporta.

🤖 Generated with Claude Code

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions