Skip to content

Commit aab48c1

Browse files
Merge pull request #45 from renan-siqueira/develop
Develop -> main
2 parents a823983 + abae5f2 commit aab48c1

File tree

13 files changed

+272
-140
lines changed

13 files changed

+272
-140
lines changed

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,25 @@
33
All notable changes to this project will be documented in this file.
44
___
55

6+
## [0.6.3] - 2025-04-08
7+
8+
### Added
9+
- New `core/integration.py` module as the explicit integration layer with Azure OpenAI SDK
10+
- Unit tests for `integration.py` using Python's built-in `unittest` and mock objects
11+
- Full parameter structure validation for chat completions
12+
13+
### Changed
14+
- Renamed `core.py` to `integration.py` and removed it from the public interface
15+
- Main `__init__.py` no longer exposes internal technical functions
16+
- `core/__init__.py` is now empty to reinforce its internal-only purpose
17+
18+
### Notes
19+
- No external dependencies were added
20+
- All tests pass via `unittest` with `python tests/core/test_integration.py`
21+
22+
- Bumped version to 0.6.3
23+
___
24+
625
## [0.6.2] - 2025-04-07
726

827
### Changed

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,17 +59,18 @@ A fast, modular, secure, and auditable Python toolkit to integrate with Azure Op
5959
6060
___
6161

62-
+ ## 🚀 What's New in v0.6.x
62+
## 🚀 What's New in v0.6.x
6363

6464
- Object-oriented CLI (`rschat`, `rschat-tools`) — easier to test, extend and reuse
6565
- Persistent session context — with system prompt validation and full/trimmed history tracking
6666
- Reproducible model config — centralized via `get_model_config()` and `ModelConfig`
6767
- Transparent logging — structured logs via `InteractionLogger` (CSV/JSONL)
6868
- Modular architecture — folders like `core/`, `session/`, `logging/`, `model_config/`, etc.
6969

70-
### v0.6.2
71-
- All sample templates have been fully aligned with the core architecture and CLI
72-
- Logging, context, result formatting, and safety checks now follow production-grade standards
70+
### v0.6.3 - latest
71+
- `core.py` has been refactored and renamed to `core/integration.py` as a dedicated integration layer
72+
- Added isolated unit tests using Python’s built-in `unittest` (no external test dependencies)
73+
- Internal interface `core` is no longer exposed publicly, enforcing architectural boundaries
7374

7475
> Check the full [CHANGELOG](https://github.com/renan-siqueira/rsazure-openai-toolkit/blob/main/CHANGELOG.md) for details.
7576
___

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "rsazure-openai-toolkit"
7-
version = "0.6.2"
7+
version = "0.6.3"
88
description = "A fast, modular, secure, and auditable toolkit to integrate with Azure OpenAI — with a friendly CLI and dev-first architecture."
99
authors = [{ name = "Renan Siqueira Antonio", email = "[email protected]" }]
1010
readme = { file = "README.md", content-type = "text/markdown" }

src/rsazure_openai_toolkit/__init__.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@
55
66
Top-level exports available when importing as `import rsazure_openai_toolkit as rschat`:
77
8-
# Core interaction
9-
- rschat.main(...)
10-
- rschat.generate_response(...)
11-
128
# Configuration & utility
139
- rschat.get_model_config(...)
1410
- rschat.ModelConfig(...)
@@ -43,9 +39,6 @@
4339
__security_policy_url__ = "https://github.com/renan-siqueira/rsazure-openai-toolkit/security/policy"
4440

4541

46-
# Core interaction
47-
from .core import main, generate_response
48-
4942
# Utility
5043
from .utils import estimate_input_tokens
5144

@@ -69,10 +62,6 @@
6962

7063

7164
__all__ = [
72-
# Core OpenAI interaction
73-
"main",
74-
"generate_response",
75-
7665
# Config & utils
7766
"get_model_config",
7867
"ModelConfig",

src/rsazure_openai_toolkit/cli/cli.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import time
2929
import click
3030
import rsazure_openai_toolkit as rschat
31+
from rsazure_openai_toolkit.core import integration as rschat_core
3132

3233

3334
class ChatCLI:
@@ -76,7 +77,7 @@ def _estimate_tokens(self):
7677
def _send_request(self):
7778
try:
7879
start = time.time()
79-
self.response = rschat.main(
80+
self.response = rschat_core.main(
8081
api_key=self.config["api_key"],
8182
azure_endpoint=self.config["endpoint"],
8283
api_version=self.config["version"],
Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,4 @@
11
"""
2-
rsazure_openai_toolkit.core
3-
4-
Core functionality for interacting with Azure OpenAI.
5-
6-
Exports:
7-
- main(): High-level request handler.
8-
- generate_response(): Low-level retry-enabled OpenAI call.
2+
This module contains internal, low-level logic.
3+
Nothing should be imported directly from this level.
94
"""
10-
11-
from .core import main, generate_response
12-
13-
14-
__all__ = [
15-
"main",
16-
"generate_response",
17-
]

src/rsazure_openai_toolkit/core/core.py

Lines changed: 0 additions & 104 deletions
This file was deleted.

0 commit comments

Comments
 (0)