Skip to content

feat(v2.6.0): análise de espaço por pasta, filtro por tamanho, exclusão de pastas e modo CLI - #1

Merged
Yiuky merged 2 commits into
mainfrom
feat/analise-espaco-e-filtros
Oct 17, 2026
Merged

Yiuky merged 2 commits into
mainfrom
feat/analise-espaco-e-filtros

Conversation

@Yiuky

@Yiuky Yiuky commented Oct 17, 2026

Copy link
Copy Markdown
Owner

Resumo (v2.6.0)

Evolução do ReperIO para resolver nativamente diagnósticos de espaço em disco (local e em rede SMB/DFS) e entregar itens de alta sinergia do roadmap (BACKLOG.md), mantendo 100% da filosofia do projeto (arquivo único
eperio.py, zero dependências externas, zero I/O na thread da GUI, índice SQLite resiliente a pausas
).

✨ Novidades implementadas

  1. Análise de espaço por pasta (Espaço por pasta... / SpaceDialog e --espaco):
    • Agrega recursivamente bytes, quantidade de arquivos, % do total, barra visual (█░) e maior arquivo por subpasta imediata + [Arquivos na raiz].
    • Opera instantaneamente sobre o índice SQLite (Index.folder_space) ou sobre os resultados da busca atual (summarize_rows_space), além de permitir Mapear pasta agora com botão Parar (retomável).
    • Drill-down interativo: duplo clique em qualquer subpasta navega para dentro dela; botão ⬅ Subir nível retorna à pasta pai.
    • Exportação dedicada para Excel (.xlsx), .csv e .txt (export_space_results).
  2. Filtro por tamanho (Tamanho:):
    • Suporta > 100 MB, >= 1,5 GB, < 10 KB, 500 MB (±10%) e faixas 10MB..500MB (parse_size_filter / make_size_matcher).
    • O índice SQLite continua armazenando todos os arquivos durante a varredura para permitir mudar o filtro depois sem revarrer.
  3. Exclusão de pastas (Ignorar pastas: / --ignorar):
    • Suporta nomes exatos e curingas (backup, node_modules, .git, temp*) tanto na varredura ao vivo (poda imediata da árvore sem descer nas subpastas ignoradas) quanto na consulta ao índice SQLite.
  4. Duplo clique na tabela de resultados (
    eveal_in_folder)
    :
    • Abre o Explorer/gerenciador de arquivos selecionando o item clicado (explorer /select,).
  5. Soma de bytes no contador de resultados:
    • Exibe X encontrados (Y GB) | Z selecionados (W GB).
  6. Modo linha de comando sem janela (CLI headless):
    • Flags --indexar, --espaco, --indice, --exportar, --ignorar, --atualizar e --top para automação, tarefas agendadas e diagnóstico rápido no terminal.

🧪 Testes

  • 68 testes automatizados em ests/test_core.py (incluindo 7 novos testes cobrindo parser de tamanhos, exclusão de pastas, agregação recursiva + drill-down, Index.folder_space, exportação de espaço, SpaceDialog sem congelar a GUI e CLI headless) — zero warnings.

@Yiuky
Yiuky merged commit ac8f0f7 into main Oct 17, 2026
4 checks passed
@Yiuky
Yiuky deleted the feat/analise-espaco-e-filtros branch October 17, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant