Latest Threat Research:Malicious dYdX Packages Published to npm and PyPI After Maintainer Compromise.Details
Socket
Book a DemoInstallSign in
Socket

xbus.io/go-xbus

Package Overview
Dependencies
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

xbus.io/go-xbus

Go Modules
Version
v0.0.0-20200312141954-05a97e556e6a
Version published
Created
Source

.. highlight:: shell

================ Xbus - Go client

A Go client for Xbus_.

Installation

This is a regular Go library::

go get xbus.io/go-xbus

See the Xbus project_ for more info.

Versions

3.1.x (next)

  • Add a new message-oriented API to build/read envelopes
  • Support user/password authentication
  • Support session authentication
  • Fix json decoding of events
  • EnvelopeValidator: supports more cases
  • EnvelopeReceiver: allow partial access to the content
  • api: update to xbus-api 3.1
  • demo: Add a 'hello' worker
  • ActorProcessingContext: Change 'Log' into an interface that has a mock implementation in testutils.ActorServiceTester
  • cmd: Add a '--no-reconnect' flag. If set, the client will shutdown instead of attempting reconnection when disconnected.

3.0.1 (2019-06-19)

  • cmd: add a helper for adding a --version flag to the root command
  • cert-renew: detect if the server took the new CSR
  • testutils: provide a test logger

3.0.0 (2019-03-26)

  • EnvelopeSender: add a SetMaxDelay(delay) method. Once called, a fragment will be emitted at least every delay.
  • Actor.OpenOutput automatically set a MaxDelay on the returned EnvelopeSender
  • Handle SERVERTOOBUSY in all the functions that send envelope fragments ( Client.SendEnvelope, Actor.CloseOutput).
  • Sentry: capture unformatted error message and params, which facilitates issue grouping by the sentry server.

3.0.0-rc.6 (2019-02-15)

  • API:

    • ProcessState.Envelope now returns a single Process
    • ProcessState.Envelope subject: emitter is now a method param

3.0.0-rc.5 (2019-02-01)

  • Provide utilities to test a ActorProcessService implementation easily without a NATS connexion (see the testutils module)

  • Fix a bad behavior when ActorProcessingContext Error() or End()

  • Beter detection of bad behaving ActorProcessService.Process() implementations

  • API: Change the global subject prefix to "xbus.default" instead of "xbus"

    .. warning::

    This change breaks the API, all clients and server must be updated at the
    same time.
    

3.0.0-rc.4 (2019-01-22)

  • Fix a crash in EnvelopeReceiver.SetError if reception is already completed
  • Client.Startup: Don't print 'Start Services' if services are not started

3.0.0-rc.3 (2019-01-07)

  • ActorProcessingContext: fix End() misbehavior leading to xbus Process crash

3.0.0-rc.2 (2018-12-27)

  • fullenv: handle vars
  • Client: Set the connect information

3.0.0-rc.1 (2018-12-14)

  • viper: refactor and improve configuration handling.

    • The client configuration file is now read-only, and the tls options are written to a separate file. Optionnaly, they can be written to individual files.

    • The actors dict now accept actor names as keys instead of integer values

  • client: After the initial connection, load the account & actors details from the server.

3.0.0-beta.16 (2018-12-03)

  • update xbus-api

    • Add CoreEvents.Envelope
    • Add EnvelopeEvent
  • Add Fullenv, a wrapper around the xbus-fullenv binary for easy testing

  • Add COptionsFromFile for loading a client configuration from a configuration file

  • Add ClientFromFile for loading a client from a configuration file

  • Fix new certificate saving after a renewal

3.0.0-beta.15 (2018-11-19)

  • update xbus-api

    • add 'ProcessExportRequest.exportJobs'
    • rename "Graph" to "Pipeline"

3.0.0-beta.14 (2018-11-13)

  • update xbus-api

  • cmd:

    • register:

      • always update RootCA
      • add a flag to change the CSR hostname
    • renew-cert: csr and key renew

3.0.0-beta.13 (2018-10-30)

  • update xbus-api

3.0.0-beta.12 (2018-10-22)

  • Implements the new actor protocol (see xbus-api README). Consumers and workers must be adapted. See the demo actors for an example.
  • Actor subscription now auto-call ActorLeaving on Unsubscribe.
  • Client: If a 'service' is not found, the client is no longer started
  • Add a function to validate event type names
  • Add a nats-timeout option to xbus-client.
  • cmd:
    • Add a emit command that emit a single envelope and does not start the services. Useful for debugging purpose or as a basic integration tool.

3.0.0-beta.11 (2017-04-13)

.. note::

This version is NOT protocol compatible with former versions of xbusd.
xbusd and the clients must all be upgraded simultaneously.
  • Reimplement all the nats calls based on nrpc and the xbus-api files. The clients should have very little (if any) adaptations to do.
  • Add a GraphGet function
  • Cleanup

3.0.0-beta.10 (2017-10-19)

  • Add RavenLogger that can send logs to Sentry
  • Add a 'sentry.dsn' setting. If set, xbus.Client will send errors to sentry.

3.0.0-beta.9 (2017-09-19)

  • EnvelopeSender: add GetID

  • Fix: configuration file entry 'persistent-store' was ignored

  • Add a TLSTimeout setting (default 4s)

  • tools: cleanup cert-related functions

  • API

    • Clarify Item type: it is no longer a JsonRawMessage, but a []byte
    • Add 'control.process.export'
    • Add 'control.process.purge'
    • Better process filtering API
    • Add 'control.envelope.purge'
    • Add 'control.logs.purge'
    • Add 'Expire' attribute to AccountUpdateReq for specifying client certificate validity range.

3.0.0-beta.8 (2017-06-03)

  • API

    • New 'postmortem' APIs allow post mortem inspection of failed process
    • Cleaner 'graph' handling API
    • Add a 'Gateway' account type
    • Add 'AccountRenewAPIKey'
    • Add 'GetActors'
    • Add 'WhoAmI'
  • Client:

    • Try harder to send processingend:

      • Log the processingend occurences in a persistent store
      • Retry calling processingend until server replies
    • Add ActorFind, ActorDelete, AccountFind, AccountDelete

  • Add a 'UnregisterActorService' for removing actor services from the registry

  • Add a 'counter' demo emitter

  • Add a constructor for EnvelopeSender that takes envelope and event IDs

3.0.0-beta.7 (2017-03-09)

  • Add support for fragmented envelopes:

    • Drop EnvelopeReader in favor of EnvelopeReceiver for receiving envelopes as streams of Items
    • Add EnvelopeSender for writing envelopes as streams of Items
    • Add Actor.OpenOutput
  • EnvelopeValidator: Add EventTypesKnown field

  • EnvelopeValidator: Better error handling in Add()

  • ProcessingEnd, ProcessingSuccess & ProcessingError now takes a context & ID instead of an envelope

3.0.0-beta.6 (2017-02-03)

  • Client.Startup & Shutdown now handle the connection to the bus:

    • 'Connect' should not be called before calling Startup()
    • On disconnection, the connection will be attempted until success
  • Fix demo actors

3.0.0-beta.5 (2017-01-26)

  • Add a 'demo' package, which contains some demonstration actor services:

    • A 'demo.helloword' emitter
    • A 'demo.relay' worker
    • A 'demo.print-to-console' consumer
  • Adjust some logs levels

  • Add Actor.GetIntSettingD for reading integer settings with a default value.

  • Add Actor.SendItemsContext for sending items within a context.

  • Allow custom hostDefs in CreateServerRootCA

3.0.0-beta.4 (2017-01-20)

  • Rename client.XBusClient to xbus.Client
  • xbus.Client can start/stop actors given the proper configuration
  • Provides a serve command that start a Client and its actors.
  • Merge Consumer, Emiter & Worker in Actor
  • Actor.Subscribe now have handler arg and returns the subscription that is no longer help by the Actor itself
  • Actor options 'type' and 'settings' are now in a sub-option 'service'
  • Fix configuration writeback so it preserves non-xbus settings
  • Fix validation of events with 0 items

initial

  • Extracted client, lib, tools and xbus-client/cmd from xbus 3.0.0-beta.3

.. _Xbus: https://xbus.io .. _Xbus project: https://orus.io/xbus/xbus

FAQs

Package last updated on 12 Mar 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts