Closed fjuniorr closed 1 year ago
Ia sugerir atualizar o path dentro do dpm.steps, mas la já está correto. Será que atribuir o valor de data apaga outras propriedades? (Sei que pode ser somente um bug do frictionless mesmo)
Será que atribuir o valor de data apaga outras propriedades?
Atribuir algum valor a resource.data
está modificando sim as propriedades do recurso retornado pela pipeline, mas não entendi o que está acontecendo.
Criei um issue https://github.com/frictionlessdata/frictionless-py/issues/1572 relatando um problema similar mas usando somente as funções próprias do frictionless pra ver se dá uma luz pra gente.
Pelo menos parte do problema é que ao final da execução do step field_rename_to_target
a propriedade resource.path
já não está mais definida por que transformer.py é chamado. A parte relevante é:
for step in pipeline.steps:
data = resource.data
step.transform_resource(resource)
# Postprocess
if resource.data is not data:
resource.path = None
Isso significa que pra fazer o reprex de 9c03f1c244238483411b1f0434581c17bdfe08e3 passar basta adicionar um
transform(resource, steps=[
steps.resource_update(name='temporal-dim',
descriptor={'path': 'data-raw/temporal-dim.txt'})
])
antes de assert resource.path == 'data-raw/temporal-dim.txt'
Percebi essa regressão entre as versões 0.0.0.9004 e 0.0.0.9005 introduzida no commit https://github.com/splor-mg/dpm/pull/17/commits/116c4c2999b7f2513f01ed87666046456c38f9b6 ao estruturar o projeto https://github.com/splor-mg/cookiecutter-datapackage