Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Add path to errors

Aberta
#161 3 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
42/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
deno, typescript
Domínio
cli

Direção de pesquisa

Start with lib/usePantry.ts and libexec/sort.ts for the missing-pantry error, then inspect the cellar failure path referenced through useCellar.ts. Trace how pantry and installation paths are selected; done means the relevant path is printed for both missing-package and cellar repair errors.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

One thing I've noticed about making packages is that when there are errors it's hard to know exactly where I should go hacking. The reason why is because I know pkg does some magic when you cd to the pantry repo directory. So I'm just confused about what exactly is going on when it can't find things.

Here's some examples.

> pkg build khronos.org/opencl-icd-loader
error: Uncaught Error: Not in pantry: khronos.org∕opencl-headers

https://github.com/teaxyz/pantry#contributing
      throw new TeaError('not-found: pantry: package.yml', {project}, )
            ^
    at https://deno.land/x/[email protected]/src/hooks/usePantry.ts:49:13
    at project (https://deno.land/x/[email protected]/src/hooks/usePantry.ts:50:5)
    at Object.getDeps (file:///opt/tea/tea.xyz/brewkit/v0.44.1/lib/usePantry.ts:30:21)
    at file:///opt/tea/tea.xyz/brewkit/v0.44.1/libexec/sort.ts:24:29
    at ascend (https://deno.land/x/[email protected]/src/plumbing/hydrate.ts:62:31)
    at ascend (https://deno.land/x/[email protected]/src/plumbing/hydrate.ts:88:19)
    at eventLoopTick (ext:core/01_core.js:183:11)
    at async go (https://deno.land/x/[email protected]/src/plumbing/hydrate.ts:93:5)
    at async hydrate (https://deno.land/x/[email protected]/src/plumbing/hydrate.ts:102:7)
    at async file:///opt/tea/tea.xyz/brewkit/v0.44.1/libexec/sort.ts:23:13

I know why the above error is thrown. But it seems that sometimes if I build something locally that I don't get the error. It would be nice if the error told me the path of the pantry because I want to manually add the missing project so I can build the next one I'm working on.

Here's another example. I have no idea what this does, so I ran it to find out.

> pkg cellar -R
repairing: micro-editor.github.io
repairing: deno.land
repairing: deno.land
repairing: deno.land
repairing: deno.land
repairing: libpng.org
repairing: khronos.org/opencl-headers
repairing: zsh.sourceforge.io
repairing: pcre.org
repairing: pcre.org
error: Uncaught Error: not-found: pcre.org=2.0.0
      throw new Error(`not-found: ${pkgutils.str(installation.pkg)}`)
            ^
    at Object.resolve (https://deno.land/x/[email protected]/src/hooks/useCellar.ts:78:13)
    at eventLoopTick (ext:core/01_core.js:183:11)
    at async link (https://deno.land/x/[email protected]/src/plumbing/link.ts:9:24)

So something is broke with pcre.org. But I don't know which one, the main install or the repo. Well, I played with it and figured out it was the main install. But it would be nice if paths like this were printed.

Linguagem predominante
TypeScript
Estrelas
66
Forks
16
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

  • Sem Dockerfile nem arquivo Docker Compose
  • Tem um modelo de pull request
  • Sem guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de pkgxdev/brewkit

Todas as issues de pkgxdev/brewkit

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.