43081j / 43081j/standardglob

Initial discussion / direction

Aberta
#2 3 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Sem dados de linguagem
Estrelas
4
Forks
0
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

The purpose of this repo is to provide a standard which glob libraries can choose to implement if they wish.

## Prior Art

- [js: tinyglobby](https://github.com/SuperchupuDev/tinyglobby)
- [js: picomatch](https://github.com/micromatch/picomatch)
- [js: zeptomatch](https://github.com/fabiospampinato/zeptomatch)
- [js: minimatch](https://github.com/isaacs/minimatch)
- [js: micromatch](https://github.com/micromatch/micromatch)
- [rust: rustlang/glob](https://github.com/rustlang/glob)
- [go: doublestar](https://github.com/bmatcuk/doublestar#patterns)
- [linux: glob shell built-in](https://man7.org/linux/man-pages/man7/glob.7.html)
- [linux: glob, globfree](https://man7.org/linux/man-pages/man3/glob.3.html)

## Basic goals

- Define a standard for glob patterns - a specification libraries and languages can refer to for what glob features they support
- Cross-language - this is not a JavaScript-specific standard. globs in all languages should be able to implement the standard
- Define common extensions - extensions to the standard to implement common behaviours seen in glob libraries today
- Produce a standard test suite - if you pass these tests, you comply with the standard (similar to web platform tests)
- Produce a comparison doc of existing libraries - existing docs are misleading or outdated, we should use this opportunity to define an up-to-date one

## Non-goals

- Comply with existing behaviour - most existing libraries disagree. This shouldn't just be a standard inferred from what they have in common
- ??

## Open questions

- [x] How do we want to define the standard? A markdown doc? or using a tool to formally define it somehow
- We will start with [tracey](https://tracey.bearcove.eu/guide/getting-started/#create-your-spec) v2 prerelease and see if we run into any issues.
- [x] Do we care about the API? We could aim to standardise the _behaviour_ and not the API shape
- We should define what options may be available, and suggest naming but not require it.
- This is required if we want to be able to apply the spec to existing implementations, as they will have not only have different naming but also potentially negated.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Esta é uma meta-issue para estabelecer uma especificação de glob entre linguagens. Comece revisando as bibliotecas de trabalhos anteriores listadas e a ferramenta tracey. O objetivo é definir um padrão, não escrever código. O trabalho envolve pesquisa, elaboração da especificação e possivelmente a criação de uma suíte de testes. 'Done' significa um documento de especificação claro e um plano para uma suíte de testes.

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

Avaliação

Domínio
documentation
Tipo de issue
Documentação
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Pouca atividade
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

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