| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* add GetUsersInTeam in plugin api
* remove extra space in comment
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Expire K/V Values
Regenerate Code
pathfix
Update Expiry on Update
Check for Exit Signal
gofmt
Rewrote Go Routine
Remove tempoarily cleanup loop
fix expiretime
TEST: Expired Watchdog as GoRoutine
Check if Srv is nil
Use Scheduler/Worker for Expired Key CleanUp
add license
fix scheduler job type; DoJob Restructuring
Remove unused imports and constants
move db migration from 5.4 to 5.5
|
|
|
| |
Signed-off-by: Akash Srivastava <akash.srivastava@openebs.io>
|
|
|
| |
Signed-off-by: Akash Srivastava <akash.srivastava@openebs.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add KVList method
* Add KVList method
Add KVList method
* Add pagination support
* Change offset, limit to page, perPage
* Rename constant
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* MM-12193: remove auto configuration unmarshalling
Since plugin hook events are called concurrently, there's no way for the plugin framework to coordinate safe access to the automatically unmarshalled configuration fields. Remove this functionality, and update documentation to illustrate a safe way to do this.
* better Fprint example
* fix unit tests
* log when OnConfigurationChange fails through OnActivate
* clarify lifecycle when OnConfigurationChange returns an error
* call SetAPI even if OnConfigurationChange not implemented
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* MM-11734: encode unregistered error implementations as an ErrorString
* MM-11734: test error string handling
* more idiomatic error handling
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix code issues in channel_test.go
Fix Channel Test Issues detected by Megacheck
Fix API Emoji Test Issues detected by Megacheck
Fixed API Issues Reported by Megacheck
Fixed App issues reported by megacheck
Remaining fixes
removed test added by mistake from old HEAD
gofmt
Store Fixes
simplified returns
Fix test for multi member channel delete
revert to delete unused function
|
| |
|
|
|
|
|
|
| |
* Adding reactions functions
* Adding permissions checking in the plugins api
|
|
|
|
|
|
|
|
| |
* Add FileInfo and get file []byte in plugin api
* Regenerated plugin mocks
* Rename ReadFileAtPath to ReadFile
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* change MessageWillBePosted nil return semantics
* change FileWillBeUploaded nil return semantics
* use LogDebug to verify plugin inputs vs. the confusing Delete(User|Team)
|
|
|
|
|
|
|
|
| |
* Initial implementation of a CopyFileInfos function that creates new FileInfo objects copied from provided FileIds with the provided user as the creator and not linked to a post yet. This can subsequently be used to copy existing attachments from another post to attach to a new post without having to re-upload the actual files
* added a unit test for the CopyFileInfos function
* resolving pull request suggestions
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
deleted test config
fix test config
Dont wipe the session token for plugins
Simplified Tokens; Generate CSRF for other sessions
Remove CSRF from Access Token; Remove Getter/Setter from Context
fix removed setter
remove getcsrf helper from plugin api
enforce csrf only for cookie auth
|
|
|
|
|
|
|
|
|
|
|
|
| |
* plugins: compute bundle hash on load
Use this hash to bust client caches whenever the plugin bundle changes.
* eliminate redundant pluginHandler
* switch to 64-bit FNV-1a
* Fix test
|
| |
|
|
|
|
| |
This allows plugin hooks to return the result of calling the API as an
`error`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* MM-11065: Allow to search and get archived channels from the API
* Fixing more tests
* Add some unit tests
* Add includeDeleted parameter to session permissions check function
* More test fixing
* Adding archive channels list in channels search
* Add restriction for archived channel edition
* Reverting permissions checks modification
* Changed the query parameter to include_deleted
* Enable search archive channels as true by default
* Adding tests for verify search on deleted channels
* Allowing to override archive channels during the imports
* Fixed test
* Search in archive channels from the API must be explicitly requested
* Removing includeDeleted parameter from GetChannelByName and GetChannelByNameForTeam
* Back to ViewArchivedChannels config
* Fixing tests
* Reverting GetChannelByName parameter
* Add include deleted parameter on GetChannel functions in plugins api
* Fixing tests
|
|
|
| |
Tests; gofmt
|
|
|
|
|
|
|
|
| |
* Fix compile error caused by bad merge
* Fix
* Fix
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ensure plugin is always shutdown
Once we call `.client.Client()` the plugin has started, and must be shut
down. `newSupervisor` sometimes returned with an error (and without a
reference to the supervisor), leaving the client running indefinitely.
* Clarify the documentation to explain that plugin hooks will not trigger until `OnActivate` returns successfully, and will stop triggering just before `OnDeactivate` is called.
* test for plugin deadlock
* plugin/environment.go: switch to sync.Map
From: https://golang.org/pkg/sync/#Map
> If a goroutine holds a RWMutex for reading and another goroutine might call Lock, no goroutine should expect to be able to acquire a read lock until the initial read lock is released. In particular, this prohibits recursive read locking. This is to ensure that the lock eventually becomes available; a blocked Lock call excludes new readers from acquiring the lock.
The previous `RWMutex` was not safe given that we effectively acquired read locks recursively (hook -> api -> hook). This worked up until we activated or deactivated plugins, tried to acquire a write lock, and the plugin used the API to effectively trigger another hook.
Switching to sync.Map avoids this by divesting the need to lock at all, avoiding the potential for a recursive lock in the first place.
|
|
|
|
|
| |
We never actually initialized `log` on apiRPCClient, and it can't log
without making an RPC call anyway, so just switch to logging errors from
the plugin to STDERR instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Adding file upload hook.
* Adding hook test for FileWillBeUploaded
* Some debugging fixes.
* Fix typo.
* Fixing double close
* Fix capitalization on docs.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* make GetChannelByName take teamId first
I think it is more natural to accept `teamId`, then `channelName`,
given the pattern followed by other Plugin API methods and even the SQL
Store itself. The App layer seems unusual in accepting `channelName`
first.
This also re-generates the mocks fixing the parameter order for the
recently added `UserStatus` APIs.
* add GetChannelByNameForTeamName
|
|
|
|
|
|
|
|
| |
* Rearranging plugin mocks and moving some common test code out.
* Adding tests.
* Fixing tests after GoDoc cleanup changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Support `server`, deprecate `backend` in plugin manifest
This lets us converge on the use of the term `server` everywhere instead
of sometimes `backend` and sometimes `server`. We're still using
`webapp` and will eventually support `mobile` as well.
The plan is actually to rip out these deprecations as part of releasing
5.2, but I want to coordinate the extra additional breakage at the same
time, so for now this is a backwards compatible change.
* fix failing tests
|
|
|
| |
This avoids the need to distribute multiple plugins per architecture.
|
|
|
|
|
|
|
|
| |
* Add plugin APIs for getting/updating user statuses
* Add and update tests
* Updates per feedback
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* clean up plugins GoDoc:
- eliminate plugin.NewBlankContext() as unnecessary
- export ValidIdRegex as a string vs. the less readable var
- add/update various documentation strings
- hide everything by default, except where used by client plugins or the mattermost-server. The exception to this rule are the `*(Args|Returns)` structs which must be public for go-plugin, but are now prefixed with `Z_` with a warning not to use.
- include a top-level example to get plugin authors started
This is not a breaking change for existing plugins compiled against
plugins-v2.
* remove commented out ServeHTTPResponseWriter
* update examples to match developer docs
* add missing plugin/doc.go license header
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
update api mocks
Generated new hooks
ChannelHasJoinedChannel Implementation
User Left Team/Channel Hook; User Joined Team Hook Implementation
Update RPC Client and Mocks
gofmt
go tests fix
Add Config API Methods
codegne
Add Channel Has Been Created Hook
Fix ChannelHasBeenCreated hook
fix missing context param
fix duplicate hooks; remove redudandcy
|
|
|
|
|
|
|
|
|
|
| |
* Adding blank request context to plugin hooks for future use.
* Rename RequestContext to Context
* Adding context to ServeHTTP and ExecuteCommand
* Fixing import cycle in test.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Capturing stdout, stderr of plugins in logs.
* Cleanup go-plugin debug logs.
* Adding logging to plugin API
* Generating mocks.
* godoc convention
|
|
|
|
|
|
|
|
| |
* Add plugin API for publishing custom WebSocket events
* Add clearer payload comment
* Update comment
|
|
|
|
|
|
| |
* Moving plugins to use hashicorp go-plugin.
* Tweaks from feedback.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* disable Supervisor_PluginRepeatedlyCrash
This test is failing sporadically, largely due to the use of a timeout
to verify results. A more robust solution is required.
* disable Supervisor_PluginCrash
This test is failing sporadically, largely due to the use of a timeout
to verify results. A more robust solution is required.
|