apache / apache/iceberg-python
feat: refactor rest signer in fileio
- Linguagem predominante
- Python
- Estrelas
- 1.1k
- Forks
- 581
- Merge médio
- 1d 13h
- PRs com merge (30d)
- 76
Descrição
### Feature Request / Improvement
Context: https://github.com/apache/iceberg-python/pull/2846#discussion_r2645920570
Currently S3 signer is tightly coupled with FileIO. This is awkward since the S3 Signer requires interaction with remote service (i.e. REST Catalog) and reuse its auth manager.
We can refactor here and create the signer in REST Catalog and pass to FileIO by overriding its `_load_file_io` function.
Also see [_init_sigv4](https://github.com/apache/iceberg-python/blob/a99dcada431a06329959cb7f71bf961343256bb0/pyiceberg/catalog/rest/__init__.py#L409-L459) for inspiration
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Leia a discussão em PR 2846 e a implementação de `_init_sigv4` em `pyiceberg/catalog/rest/__init__.py`. Rastreie o caminho de `_load_file_io` do REST Catalog e como o signer do S3 está atualmente acoplado ao FileIO. O trabalho estará concluído quando o REST Catalog criar o signer usando seu gerenciador de autenticação e passá-lo ao FileIO por meio do override.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- api, authentication, backend
- Tipo de issue
- Refatoração
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 48/100