keyrunes-python-sdk 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,105 @@
1
+ # Changelog
2
+
3
+ Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.
4
+
5
+ O formato é baseado em [Keep a Changelog](https://keepachangelog.com/pt-BR/1.0.0/),
6
+ e este projeto adere ao [Semantic Versioning](https://semver.org/lang/pt-BR/).
7
+
8
+ ## [0.1.0] - 2025-12-03
9
+
10
+ ### Adicionado
11
+
12
+ #### Funcionalidades Core
13
+ - Cliente `KeyrunesClient` completo para interação com Keyrunes API
14
+ - Autenticação com login de usuário e admin
15
+ - Registro de usuário e admin com validação
16
+ - Verificação de pertencimento a grupos
17
+ - Obtenção de informações de usuários
18
+
19
+ #### Decorators
20
+ - `@require_group()` - Decorator para verificar grupos de usuários
21
+ - `@require_admin()` - Decorator para verificar privilégios de admin
22
+ - Suporte para múltiplos grupos (ANY ou ALL)
23
+ - Sistema de client global para uso sem passar client explicitamente
24
+
25
+ #### Modelos Pydantic
26
+ - `User` - Modelo de usuário com validação
27
+ - `Token` - Modelo de token JWT
28
+ - `Group` - Modelo de grupo
29
+ - `UserRegistration` - Dados de registro de usuário
30
+ - `AdminRegistration` - Dados de registro de admin
31
+ - `LoginCredentials` - Credenciais de login
32
+ - `GroupCheck` - Resultado de verificação de grupo
33
+
34
+ #### Exceções Customizadas
35
+ - `KeyrunesError` - Exceção base
36
+ - `AuthenticationError` - Erro de autenticação
37
+ - `AuthorizationError` - Erro de autorização
38
+ - `GroupNotFoundError` - Grupo não encontrado
39
+ - `UserNotFoundError` - Usuário não encontrado
40
+ - `InvalidTokenError` - Token inválido
41
+ - `NetworkError` - Erro de rede
42
+
43
+ #### Sistema de Configuração Global
44
+ - `configure()` - Configura client global
45
+ - `get_global_client()` - Obtém client global
46
+ - `clear_global_client()` - Limpa client global
47
+ - Thread-safe com Lock
48
+
49
+ #### Desenvolvimento e Testes
50
+ - Docker Compose completo com Keyrunes, PostgreSQL e Redis
51
+ - 78 testes com 99% de cobertura
52
+ - Testes usando pytest, factory-boy e faker
53
+ - Exemplos práticos de uso
54
+ - Makefile com comandos úteis
55
+ - Configuração completa de CI/CD
56
+
57
+ #### Documentação
58
+ - README.md completo com exemplos
59
+ - TESTING.md com guia de testes
60
+ - Docstrings em todas as funções
61
+ - Type hints completos
62
+ - Exemplos práticos em `examples/`
63
+
64
+ ### Detalhes Técnicos
65
+
66
+ - Python 3.8.1+ compatível
67
+ - Gerenciamento com Poetry
68
+ - Validação com Pydantic 2.0
69
+ - Type hints completos
70
+ - Thread-safe
71
+ - Context manager support
72
+
73
+ ### Testes
74
+
75
+ - 78 testes implementados
76
+ - 99% de cobertura de código
77
+ - Testes unitários e de integração
78
+ - Factories com factory-boy
79
+ - Dados fake com Faker
80
+
81
+ ### Ferramentas de Desenvolvimento
82
+
83
+ - Black para formatação
84
+ - isort para organização de imports
85
+ - flake8 para linting
86
+ - mypy para type checking
87
+ - pytest para testes
88
+
89
+ ## [Unreleased]
90
+
91
+ ### Planejado
92
+
93
+ - Suporte para refresh token automático
94
+ - Cache de verificações de grupo
95
+ - Suporte para OIDC
96
+ - Integração com FastAPI
97
+ - Integração com Flask
98
+ - Integração com Django
99
+ - Mais exemplos práticos
100
+ - Documentação com Sphinx
101
+ - Publicação no PyPI
102
+
103
+ ---
104
+
105
+ Para mais detalhes sobre cada versão, veja os [releases no GitHub](https://github.com/jonatasoli/keyurnes-sdk-python-dark/releases).