Skip to content

Releases: jirenius/go-res

Release v0.5.1

25 Oct 07:49
30f62c2
Compare
Choose a tag to compare

RES protocol version

  • v1.2.3

Changelog

This release adds the option to handle requests for a single resource in parallel on multiple goroutines.
It also replaces to use of a work channel with a work queue slice to avoid the possibility of goroutine handling the in channel from NATS to be blocked by the workers being busy.

Issues

Release v0.5.0

10 Jul 18:44
d8efe1c
Compare
Choose a tag to compare

RES protocol version

  • v1.2.3

Changelog

This release adds support to new RES Protocol v1.2.3 features, allowing the service to set HTTP status codes and HTTP headers on the client.

Release v0.4.0

15 Jun 15:30
23ea890
Compare
Choose a tag to compare

RES protocol version

  • v1.2.1

Changelog

This release is focusing on features requested by the community.

Package resprot

The resprot subpackage provides low level structs and methods for communicating with other services over NATS server.

QueueChanSubscribe support

To allow better horizontal scaling when only using system.reset to update resources, go-res now by default uses nats' QueueChanSubscribe (instead of just ChanSubscribe). This is configurable, but will by default use the service name as queue group.

RES Protocol v1.2.1 support

RES Protocol v1.2.1 introduced two new value types: soft references and data values. Support for these are also added in this release.

Added

  • #73 RES service protocol subpackage
  • #75 Service Conn method
  • #77 Allow empty request payload
  • #79 Allow QueueChanSubscribe
  • #81 Soft reference support
  • #84 Data values

Release v0.3.0

04 Mar 13:47
127539c
Compare
Choose a tag to compare

RES protocol version

  • v1.2.0

Changelog

The release comes with two major additions: the store subpackage and the restest package.

Package store

The store package provides handlers and interfaces for working with database storages. It deprecates previous packages under middleware, and provides superior structure for building services that scales well.

The book collection store and search query examples are updated to use the new store package.

Package restest

The restest package provides utilities for testing res services, and makes it easy to validate handler responses and events.

Added

  • #69 Database storage interface
  • #70 Package for testing res services
  • #71 Go version 1.14 CI build

Fixed

  • #67 Root resource not subscribed

Deprecated

Release v0.2.0

08 Jan 13:54
1034374
Compare
Choose a tag to compare

RES protocol version

  • v1.2.0

Changelog

Added support for RES Protocol v1.2.0 features, which among other things means improved support for queries.

Two examples are added; Hello World showing the simplest of services, and Search Query showing how high performance live queries can be achieved.

Added

  • #51 RES Protocol v1.1.1 support
  • #54 RES Protocol v1.2.0 support
  • #52 Hello World example
  • #55 Query Search example
  • #63 Improved CI checks

Deprecated

  • Package github.com/jirenus/go-res/middleware is deprecated. Use specific middleware sub package:
    • github.com/jirenius/go-res/middleware/resbadger
  • New method is deprecated from RES protocol version v1.2.0. Use Call method with Resource response.
  • Service.SetReset is renamed to Service.SetOwnedResources. Old method is still available.

Release v0.1.0

13 Sep 13:00
Compare
Choose a tag to compare

Changelog

The first release using Go modules. The release also contains multiple additional functionality, some bug fixes, and improved unit tests.

Added

  • #39 Added Path and FullPath methods to Mux
  • #41 Added WithResource and WithGroup methods to Service
  • #45 New simplified logger interface
  • #49 Migrated to Go module

Fixed

  • #40 Fixed issue with less specific full wildcard handler prioritized over more specific handler
  • #42 Fixed wrong PathParams and Group value when resolved if handler registered to a mounted Mux
  • #43 Updated BadgerDB example to match changes to their API

Deprecated

  • Old logger interface is replaced. Any custom logger implementing the old interface needs to be updated.
  • The methods Service.Logf, Service.Debugf, and Service.Tracef are deprecated. Use Service.Logger() to access the logger if needed.