Skip to content

refactor: full rewrite with profile support#77

Merged
bsoyka merged 42 commits intomainfrom
rewrite
Aug 8, 2025
Merged

refactor: full rewrite with profile support#77
bsoyka merged 42 commits intomainfrom
rewrite

Conversation

@bsoyka
Copy link
Copy Markdown
Owner

@bsoyka bsoyka commented Aug 8, 2025

No description provided.

bsoyka added 30 commits August 7, 2025 18:18
@github-advanced-security
Copy link
Copy Markdown

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@bsoyka bsoyka requested a review from Copilot August 8, 2025 14:52
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR represents a complete rewrite of the Gravify library to add profile support alongside avatar functionality. The refactor modernizes the codebase with improved architecture, type safety, and expanded capabilities.

  • Complete rewrite from a single-class design to a modular package structure with dedicated avatar and profile modules
  • Addition of Gravatar profile API integration with comprehensive data models
  • Migration from MD5 to SHA256 hashing and replacement of legacy dependencies with modern alternatives

Reviewed Changes

Copilot reviewed 42 out of 45 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/gravify/init.py Main package initialization exposing AvatarGenerator and ProfileAPI classes
src/gravify/profiles/api.py Profile API client for fetching Gravatar user profiles
src/gravify/profiles/models.py Comprehensive Pydantic data models for profile information
src/gravify/avatars/generator.py Modern avatar URL generator with enum-based options
src/gravify/utils.py Utility functions including SHA256 email hashing
src/gravify/rest_adapter.py HTTP client adapter for API interactions
tests/ Complete test suite rewrite with proper structure and API testing
pyproject.toml Updated build system, dependencies, and tooling configuration

Comment thread src/gravify/avatars/generator.py Outdated
Comment thread src/gravify/avatars/generator.py Outdated
Comment thread pyproject.toml
@bsoyka bsoyka enabled auto-merge (rebase) August 8, 2025 14:55
@bsoyka bsoyka merged commit ad3a754 into main Aug 8, 2025
12 checks passed
@bsoyka bsoyka deleted the rewrite branch August 8, 2025 14:59
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.

3 participants