Open fjuniorr opened 1 year ago
Uma opção que interessante de abandonar um formato de data package para o arquivo data.yaml
é que a gente pode usar nomes melhores para cada objeto. Por exemplo (usando toml):
title = "Data Dependencies"
[packages]
[packages.sigplan]
path = "https://raw.githubusercontent.com/splor-mg/ppag-planejamento-dados-2024/main/datapackage.yaml"
resources = ["acoes_planejamento"]
token = "GITHUB_TOKEN"
[packages.sisor2023]
path = "https://raw.githubusercontent.com/splor-mg/sisor-dados-2023/main/datapackage.json"
[packages.sisor2024]
path = "https://raw.githubusercontent.com/splor-mg/sisor-dados-2024/main/datapackage.json"
resources = ["acoes_planejamento"]
Para leitura dos dados usamos:
import tomllib
with open("data.toml", "rb") as f:
data = tomllib.load(f)
data['packages']
for key, value in data['packages'].items():
print(f'{key}: {value["path"]}')
Ajuda na confusão de recursos que são data packages bem como no nome da propriedade de #36
Gostei muito também!
A questão de onde os resources serão salvos (quais pastas), ficaria em uma outra propriedade do toml, como, por exemplo, output_dir?
A questão de onde os resources serão salvos (quais pastas), ficaria em uma outra propriedade do toml, como, por exemplo, output_dir?
É um ponto a se pensar ainda pra conseguir atender a maior parte dos casos sem muita complexidade adicional.
Talvez faça sentido até separar em um comando diferente ao invés de uma flag, tipo dpm download
pra deixar claro que são operações diferentes.
A ideia geral é permitir mais flexibilidade de utilizar o
dpm install
para baixar somente arquivos de dados de tal forma que os mesmos possam ser usados em uma estrutura pré-existente. O caso de uso que motivou esse issue foi do projeto https://github.com/splor-mg/volumes-loa/tree/main/bancos.A ideia geral é que os arquivos de dados seriam salvos na pasta especificada na propriedade
name
sem respeitar a estrutura do data package original.name
duplicada é permitida pelo frictionless? não usar frictionless é uma opção?--flat-download
não for repassada, ainda vai ser permitido propriedadename
duplicado--output-dir