Skip to content

Releases: thesis-php/grpc

0.1.7

Choose a tag to compare

@kafkiansky kafkiansky released this 04 May 17:17

Full Changelog: 0.1.6...0.1.7

0.1.6

Choose a tag to compare

@kafkiansky kafkiansky released this 04 May 17:06

What's Changed

  • Bump amphp/http-server (see PR)

Full Changelog: 0.1.5...0.1.6

0.1.5

Choose a tag to compare

@kafkiansky kafkiansky released this 10 Apr 12:45

Full Changelog: 0.1.4...0.1.5

0.1.4

Choose a tag to compare

@kafkiansky kafkiansky released this 10 Apr 12:29

What's Changed

  • Fix package name in UserAgent metadata generation.

Full Changelog: 0.1.3...0.1.4

0.1.3

Choose a tag to compare

@kafkiansky kafkiansky released this 10 Apr 12:23

Full Changelog: 0.1.2...0.1.3

0.1.2

Choose a tag to compare

@kafkiansky kafkiansky released this 10 Apr 12:09

What's Changed

Repository update: moved to a monorepo

This project now uses a monorepo model.

Why we made this change

Client, server, and protocol code are highly coupled and often evolve together. Developing them in separate repos made cross-package changes slower and harder to keep consistent.

The monorepo solves this by keeping all related changes in one place, with one CI flow and one release process.

What changed

The codebase is now organized into package directories:

  • packages/grpc -> published as thesis/grpc-protocol
  • packages/client -> published as thesis/grpc-client
  • packages/server -> published as thesis/grpc-server

Split repositories are now read-only subtree splits from this monorepo. Issues and pull requests should be opened in this repository.

Release and versioning model

  • Versions are lockstep across all three packages.
  • Pushing release branch/tag updates all split repos automatically.
  • Packagist packages are published from the split repos.

What this means for users

  • You can install only what you need:
    • composer require thesis/grpc-client
    • composer require thesis/grpc-server
  • Shared runtime is pulled automatically via thesis/grpc-protocol.
  • Namespaces remain Thesis\Grpc, so runtime API usage stays familiar.

Full Changelog: 0.1.1...0.1.2

0.1.1

Choose a tag to compare

@kafkiansky kafkiansky released this 04 Apr 14:34
69cd142

What's Changed

New Contributors

Full Changelog: 0.1.0...0.1.1

Initial gRPC implementation

Choose a tag to compare

@kafkiansky kafkiansky released this 23 Feb 08:42

Features

  • Unary requests
  • Client streaming
  • Server streaming
  • Bidirectional streaming
  • Interceptors
  • Compression
  • grpc-timeout
  • Error handling

Known problems

  • Handle Connection closed unexpectedly on the server
  • How to prevent message loss when working with streaming if the server returns an error immediately (e.g., an authorization error)?