Skip to content

Conversation

@KlaudiuszRydzy
Copy link
Contributor

@KlaudiuszRydzy KlaudiuszRydzy commented Jul 9, 2024

Description

Refactored serialization logic to support better integration of alternate serializers for specific types. Introduced a new _Serializer protocol and private serializers for bytes, strings, pickle, and cloudpickle.

  • Added _BytesSerializer
  • Added _StrSerializer
  • Added _PickleSerializer
  • Added _CloudPickleSerializer
  • Updated tests to match new structure

Fixes

Type of Change

  • Breaking Change (fix or enhancement which changes existing semantics of the public interface)
  • Enhancement (new features or improvements to existing functionality)
  • Bug (fixes for a bug or issue)
  • Internal (refactoring, style changes, testing, optimizations)
  • Documentation update (changes to documentation or examples)
  • Package (dependencies, versions, package metadata)
  • Development (CI workflows, pre-commit, linters, templates)
  • Security (security related changes)

Testing

Update unit tests.

Pull Request Checklist

Please confirm the PR meets the following requirements.

  • Tags added to PR (e.g., breaking, bug, enhancement, internal, documentation, package, development, security).
  • Code changes pass pre-commit (e.g., mypy, ruff, etc.).
  • Tests have been added to show the fix is effective or that the new feature works.
  • New and existing unit tests pass locally with the changes.
  • Docs have been updated and reviewed if relevant.

@KlaudiuszRydzy KlaudiuszRydzy marked this pull request as draft July 9, 2024 16:35
@KlaudiuszRydzy KlaudiuszRydzy marked this pull request as ready for review July 9, 2024 16:40
Copy link
Collaborator

@gpauloski gpauloski left a comment

Choose a reason for hiding this comment

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

Nice work. I've left some small comments---mostly about docstrings and error handling.

Can you make the changes as a new commit in the branch? Then we can squash and rebase your branch together to get it ready for merge.

@gpauloski gpauloski self-assigned this Jul 9, 2024
@gpauloski gpauloski added the internal Refactoring, style changes, testing, or code optimizations label Jul 9, 2024
Refactored serialization logic to support better integration of
alternate serializers for specific types. Introduced a new
_Serializer protocol and private serializers for bytes, strings,
pickle, and cloudpickle.

- Added _BytesSerializer
- Added _StrSerializer
- Added _PickleSerializer
- Added _CloudPickleSerializer
- Updated tests to match new structure

Resolves: proxystore#591
@KlaudiuszRydzy KlaudiuszRydzy force-pushed the serialization-refactor branch from 71e1724 to a75b928 Compare July 9, 2024 21:53
@gpauloski gpauloski merged commit 2bc989c into proxystore:main Jul 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal Refactoring, style changes, testing, or code optimizations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants