Commit e222a573 authored by Mo Firouz's avatar Mo Firouz
Browse files

Allow storage of arbitrary string key-value pairs in session tokens.

parent 798a97cf
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr
- Log better startup error message when database schema is not set up at all.
- New `check` command to validate runtime modules without starting the server.
- Add discrete channel identifier fields in all messages and message history listings.
- Session tokens now allow storage of arbitrary string key-value pairs.

### Changed
- Use Go 1.12.9 on Alpine 3.10 as base Docker container image and native builds.
+2 −2
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ func (p *Pipeline) ProcessRequest(logger *zap.Logger, session Session, envelope
		messageNameID = strings.ToLower(messageName)

		if fn := p.runtime.BeforeRt(messageNameID); fn != nil {
			hookResult, hookErr := fn(session.Context(), logger, session.UserID().String(), session.Username(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), envelope)
			hookResult, hookErr := fn(session.Context(), logger, session.UserID().String(), session.Username(), session.Vars(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), envelope)

			if hookErr != nil {
				// Errors from before hooks do not close the session.
@@ -154,7 +154,7 @@ func (p *Pipeline) ProcessRequest(logger *zap.Logger, session Session, envelope

	if messageName != "" {
		if fn := p.runtime.AfterRt(messageNameID); fn != nil {
			fn(session.Context(), logger, session.UserID().String(), session.Username(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), envelope)
			fn(session.Context(), logger, session.UserID().String(), session.Username(), session.Vars(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), envelope)
		}
	}

+1 −1
Original line number Diff line number Diff line
@@ -43,7 +43,7 @@ func (p *Pipeline) rpc(logger *zap.Logger, session Session, envelope *rtapi.Enve
		return
	}

	result, fnErr, _ := fn(session.Context(), nil, session.UserID().String(), session.Username(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), rpcMessage.Payload)
	result, fnErr, _ := fn(session.Context(), nil, session.UserID().String(), session.Username(), session.Vars(), session.Expiry(), session.ID().String(), session.ClientIP(), session.ClientPort(), rpcMessage.Payload)
	if fnErr != nil {
		session.Send(&rtapi.Envelope{Cid: envelope.Cid, Message: &rtapi.Envelope_Error{Error: &rtapi.Error{
			Code:    int32(rtapi.Error_RUNTIME_FUNCTION_EXCEPTION),
+121 −121

File changed.

Preview size limit exceeded, changes collapsed.

+244 −244

File changed.

Preview size limit exceeded, changes collapsed.

Loading