* PLT-3711: Add websocket event for emoji addition
* (SA) updated as per review
This PR is edited directly to merge into master.
* (SA) updated as per review
This PR is edited directly to merge into master.
* PLT-6787 Fixed being able to send a post before files finished uploading (#6617)
* Fix quick switcher for channels/users not stored locally (#6610)
* Fix button text on confirm mention modal (#6609)
* fix post delete permission of channel admin (#6608)
* open comment thread for the most recent reply-able message (#6605)
* Use mutex flag with yarn to prevent concurrent builds interfering (#6619)
* Use mutex flag with yarn to prevent concurrent builds interfering
* Remove yarn mutex file with clean
* Minor bug fixes (#6615)
* PLT-6774 - Fixing color for offline icon
* PLT-6784 - Fixing status icon
* Fixing icon margin
* Updating caret position
* PLT-6070 Have ChannelMentionProvider stop searching after a term returns no results (#6620)
* Fixing JS error (#6623)
* Minor bug fixes (#6622)
* PLT-6808 - Updating channel switcher on mobile
* PLT-6743 - Updating scrollbar styling
* Login instead of failing if user exists in OAuth sign-up flow (#6627)
* PLT-6802 Disable team switcher (#6626)
* Disable team switcher
* Fix ESLint errors
* PLT-6807 Ensured select teams page can scroll on iOS (#6630)
* Do not redirect from account switch pages on 401 (#6631)
* Fixing loadtest command and renaming to /test (#6624)
* PLT-6820 Update mattermost-redux dependency (#6632)
* translations PR 20170612 (#6629)
* Bump HTTP client timeout to 30 seconds (#6633)
* For team unreads return empty array instead of null (#6636)
* PLT-6831 Fix status modal localization IDs (#6637)
* Fix status modal localization IDs
* Update test snapshot
Certain S3 compatible servers only use Legacy Signature (AWS
Signature V2), current code only supports signature v4.
This PR adds facility to click a button on the UI to enable
legacy signature with S3 compatible servers.
* PLT-6471 Properly panic when translations can't be loaded
* Print usage messages when errors occur during CLI initialization
* Reverted behaviour of FindDir and added second return value to it
* Fixed merge conflict
* Implement POST /oauth/apps endpoint for APIv4
* Implement GET /oauth/apps endpoint for APIv4
* Implement GET /oauth/apps/{app_id} and /oauth/apps/{app_id}/info endpoints for APIv4
* Refactor API version independent oauth endpoints
* Implement DELETE /oauth/apps/{app_id} endpoint for APIv4
* Implement /oauth/apps/{app_id}/regen_secret endpoint for APIv4
* Implement GET /user/{user_id}/oauth/apps/authorized endpoint for APIv4
* Implement POST /oauth/deauthorize endpoint
* Adding initial race detector
* Remove setting of config twice
* Fixing config file watch and config reload on license save
* Fixing config file watch and config reload on license save
* Fixing build error
* Fixing locking issue
* Fixing makefile
* Fixing race in config
* Fixing race in status unit test
* Adding EE race tests
* Fixing race in cluster info
* Removing code that's isn't needed
* Fixing some more races
* Fixing govet issue
* Revert "PLT-5765 Passed SiteURL to SendNotifications (#5705)"
This reverts commit a8e68bd890.
* Removed automatic configuration of SiteURL
* Reverted unintentional config changes
* Updated help text
* Added link to docs in Site URL warning
* Fixed merge conflict
* Fixing config file watch and config reload on license save
* Fixing config file watch and config reload on license save
* Fixing build error
* Fixing locking issue
* Second attept at patching api/websocket.go for CORS support.
* Missing include
* Fixed whitespace formatting so that gofmt passes.
* Added tests for CORS filtering
* Implement POST /users/search endpoint for APIv4
* PLT-2713 Added store functions for searching users that don't have a team
* PLT-2713 Added 'without_team' option when searching users
* PLT-2713 Added 'without_team' option when searching users (v4)
- if 'http_proxy' environment variable is set, respect it when creating http client
- otherwise initialize a http client with timeout settings
Add ogjson to cache even when it fails
in this way we can prevent from requesting unparsable urls repeatedly
Extend expire time of cached link preview data to a week
There's no need to invalidate cache and send request again frequently
Revert timeout
Revert cache_expire_time
* Implement server changes for group messaging
* Majority of client-side implementation
* Some server updates
* Added new React multiselect component
* Fix style issues
* Add custom renderer for options
* Fix model test
* Update ENTER functionality for multiselect control
* Remove buttons from multiselect UI control
* Updating group messaging UI (#5524)
* Move filter controls up a component level
* Scroll with arrow keys
* Updating mobile layout for multiselect (#5534)
* Fix race condition when backspacing quickly
* Hidden or new GMs show up for regular messages
* Add overriding of number remaining text
* Add UI filtering for team if config setting set
* Add icon to channel switcher and class prop to status icon
* Minor updates per feedback
* Improving group messaging UI (#5563)
* UX changes per feedback
* Update email for group messages
* UI fixes for group messaging (#5587)
* Fix missing localization string
* Add maximum users message when adding members to GM
* Fix input clearing on Android
* Updating group messaging UI (#5603)
* Updating UI for group messaging (#5604)
* PLT-3193 Add channel notification preferences for push and email notifications
* unit tests, model validation and localization
* Feedback review
* Adding back allowFromCache check
* Setting push and email to use default settings
* Move props as constants
* address feedback
* Implement POST /channels/members/{user_id}/view endpoint for APIv4
* Implement PUT /channels/{channel_id}/members/{user_id}/roles endpoint for APIv4
* Implement DELETE /channels/{channel_id}/members/{user_id} endpoint for APIv4
* Implement POST /posts endpoint for APIv4
* Implement GET /channels/{channel_id}/posts endpoint for APIv4
* Implement GET /posts/{post_id} endpoint for APIv4
* Implement GET /posts/{post_id}/thread endpoint for APIv4
* Skip team get if it's a DM channel in handlePostEvents
* Adding go vet to the api package
* Adding go vet to app package
* Adding go vet to manualtesting package
* Adding go vet to the model package
* Adding go vet to the store dir
* Adding go vet to utils package
* Adding missing dirs with go files
* Fixing up makefile
* Fixing up makefile
* Removing root dir
* Implement GET /teams/{team_id} endpoint for APIv4
* Implement GET /users/{user_id}/teams endpoint for APIv4
* Implement GET /teams/{team_id}/members/{user_id} endpoint for APIv4
* Added separate post types for system_join_leave and system_add_remove posts
* Added username prop to channel deleted posts
* Changed slack import to properly generate the new join/leave messages
* Added username prop to channel update posts
* Moved Post(AddTo/RemoveFrom)ChanneMessage into app package
* Refactor and move session logic into app package
* Refactor email functions into the app package
* Refactor password update into app package
* Migrate user functions to app package
* Move team functions into app package
* Migrate channel functions into app package
* Pass SiteURL through to app functions
* Update based on feedback
* add docker container for inbucket
* Add way to get the emails using inbucket and add a test for reset password
* add config setting to send emails
* update TestEmailTest
update
* add another test and fix wrong assert
* update per review
fix lint
change senders email
* Revert config.json to default values for EmailSettings section
* update test
* add setup to make the test run
* Add app package and move logic over from api package
* Change app package functions to return errors
* Move non-api tests into app package
* Fix merge
* Slash commands accept Slack format
Until this commit the slash commands only accepted 'text' properties.
For better styling however, Slack formatting support was added.
However, ephemeral messages are not supported, and only text will be
displayed.
* Allow emphemeral Slack messages
* fix API Get channels for a user returns users' dm channels with blank team ID
add check in the context.go
add suggestion
made adjustment per review and support from @joram
* update tests
* add check if needd user or admin permissions
* update per review
* PLT-4167 Team Sidebar
* Address feedback from PM
* change route from my_members to members
* bug fixes
* Updating styles for teams sidebar (#4681)
* Added PM changes
* Fix corner cases
* Addressing feedback
* use two different endpoints
* Bug fixes
* Rename model and client functions, using preferences to store last team and channel viewed
* Fix mobile notification count and closing the team sidebar
* unit test, fixed bad merge and retrieve from cached when available
* bug fixes
* use id for last channel in preferences, query optimization
* Updating multi team css (#4830)
* Create MFA setup page and remove MFA setup from account settings modal
* Add enforce MFA to system console and force redirect
* Lockdown mfa required API routes, add localization, other changes
* Minor fixes
* Fix typo
* Fix some unit tests
* Fix more unit tests
* Minor fix
* Updating UI for MFA screen (#4670)
* Updating UI for MFA screen
* Updating styles for MFA page
* Add the ability to switch between email/sso with MFA enabled
* Added mfa change email
* Minor UI updates for MFA enforcement
* Fix unit test
* Fix client unit test
* Allow switching email to ldap and back when MFA is enabled
* Fix unit test
* Revert config.json
* PLT-1598 Slash command works in RHS
* fix UserProfile in the reply for Slash Command
* fix some problem about the system messages in RHS
* system message in RHS isn't displayed as comment for root message
* remove status indicator for system message in RHS
* system message in RHS is colored to grey
* system messages don't count as commented post
* fix bug about cleaning draft in RHS
* remove unnecessary function
* implement new model for executing command
* Add API call to get a team by its name
* add tests for client side and update route regex
* remove action
* add check for permissions and create tests
* PLT-4839 Split too-long Slack messages on import.
This PR also takes the opportunity to make the max values for Post
properties into constants for easier use elsewhere, as has previously
been done for Channel properties.
* Only count runes once.
* draft
* Add Team Description to the Team Settings
* add tooltips for team description
* made changes per PM review
* add message when there is no description set in the team
* squash
* Refactored emoji.json to support multiple aliases and emoji categories
* Added custom category to emoji.jsx and stabilized all fields
* Removed conflicting aliases for :mattermost: and :ca:
* fixup after store changes
* Added emoji reactions
* Removed reactions for an emoji when that emoji is deleted
* Fixed incorrect test case
* Renamed ReactionList to ReactionListView
* Fixed 👍 and 👎 not showing up as possible reactions
* Removed text emoticons from emoji reaction autocomplete
* Changed emoji reactions to be sorted by the order that they were first created
* Set a maximum number of listeners for the ReactionStore
* Removed unused code from Textbox component
* Fixed reaction permissions
* Changed error code when trying to modify reactions for another user
* Fixed merge conflicts
* Properly applied theme colours to reactions
* Fixed ESLint and gofmt errors
* Fixed ReactionListContainer to properly update when its post prop changes
* Removed unnecessary escape characters from reaction regexes
* Shared reaction message pattern between CreatePost and CreateComment
* Removed an unnecessary select query when saving a reaction
* Changed reactions route to be under /reactions
* Fixed copyright dates on newly added files
* Removed debug code that prevented all unit tests from being ran
* Cleaned up unnecessary code for reactions
* Renamed ReactionStore.List to ReactionStore.GetForPost
This fixes mailto: links built from email addresses posted to Slack as
described in the ticket, but also fixes any other type of URL that has
been auto-linked in the Slack messages.
This fixes the issue where you can't import 2 Slack exports with any
users who's emails appear in both exports onto different teams of the
same server.
Fixes#4126
* Add more channel paging API
* Add channel paging support to client
* Add DB channel search functions
* Add API for searching more channels
* Add more channel search functionality to client
* Add API for autocompleting channels
* Add channel autocomplete functionality to the client
* Move to be deprecated APIs to their own file
* Final clean-up
* Fixes related to feedback
* Localization changes
* Add unit as suffix to timeout constants
* PLT-4429 disabling explicit mentions when channel has more than 1k users
* Fixing test case
* Adding setting to the admin console
* Fixing bad translation
* Break out image preparation to its own function.
This is preparatory work to make it easier to handle the thumbnail image
generation in a non-racy way in the Slack command line importer.
* Build preview images sequentially in Slack import.
This removes the use of goroutines from the image preview generation
code run when importing Slack attachments. This slows things down, but
it has important benefits:
1) Avoids a race condition with the goroutines and the command line
exiting.
2) Avoids the problem of massive memory consumption when importing a
Slack channel with a lot of large images attached in quick succession.
Fixes PLT-4442.
* Use mutliple return values instead of struct.
Add function to resize image using resize.Thumbnail. Add function to
resize gif using previous function. Add function to convert image.Image
to image.Palleted. Add logic to identify image type and resize them if
they are larger than MaxEmojiHeight or MaxEmojiWidth. Also increase
MaxEmojiFileSize.
* fix: Add github.com/nfnt to vendor
* fix: Fix max file size and if logic in resizeEmoji
* test: Fix and add new tests for new resize feature
* fix: Fix and update translations to fit new feature
* fix: Add requested changes
* PLT-3762 - Add API call to get a user by their username
* fix lint
* update rote
* update per code review
* update per code review
* remove first/last name is not used in this test
* Increase Channel Purpose length to 250.
This commit increases the maxmimum length of the channel purpose field
to 250, including the database migration necessary.
It also adds a method to the Slack importer to check the lengths of
channel properties before importing, and truncate them if necessary.
Fixes#4168
* Fix database migration.
This includes all messages from integrations, as far as I can tell.
Messages are "owned" by a special user that is deactivated once the
import completes.
Override User Names are only shown where the individual Slack posts have
a username override in them. Ones set centrally through the Slack Web
Hooks administration, or by Slack-official integrations, aren't known so
we can't set them on the imported posts. Same for icons.
The attachment "colors" aren't imported as Mattermost does not appear to
have any equivalent feature.
Fixes PLT-48
* Add options to user database search
* Fix inactive users showing up incorrectly in some user searches
* Read JSON for searchUsers API into anonymous struct
* Move anonymous struct to be a normal struct in model directory and upadte client to use it
* Added clarification comment about slightly odd query condition in search
Previously it just wrote to the summary, and as a debug level message in
the log, so if you had the log level set to warn, you might never find
out that importing a channel failed.
* Switch websocket over to post-connect authentication
* Add ability to specify token in websocket js driver, add unit tests
* Temporarily disable client websocket tests until issues are resolved
* Minor refactoring and fix status test
* Add isAuthenticated method to WebConn and minor status updates
* PLT-4430 improve slow channel switching
* Update client side unit tests
* Convert getChannelsUnread to getMyChannelMembers and address other feedback
* Pull channel members on websocket reconnect
minio-go does fully managed way of handling S3 API requests
- Automatic bucket location management across all s3 regions.
- Transparently upload large files in multipart if file 64MB
or larger.
- Right GetObject() API provides compatibility with
io.ReadWriteSeeker interface.
- Various other APIs including bulk deletes, server side object
copy, bucket policies and bucket notifications.
Fixes#4182
* Auto Changes
* 4139 Made channel limits configurable in the System Console as described in the issue
* Removed error message entries from other locales, made maxChannelsPerteam type to pointer
* Added * symbol to maxChannelsPerTeam inside isValid function
* Update team_test.go
* Restored to old test
* Checked maximum number channels per team when creating channel
* Fixed code to pass api/channel_test.go
* Reverted changes on config except MaxChannelsPerTeam
* Update channel.go
* Ran gofmt -w .
* Reverted vendor directoy
* improve performance on sendNotifications
* Fix SQL queries
* Remove get direct profiles, not needed anymore
* Add raw data to error details if AppError fails to decode
* men
* Fix decode (#4052)
* Fixing json decode
* Adding unit test
* Initial work for client scaling (#4051)
* Begin adding paging to profiles API
* Added more paging functionality
* Finish hooking up admin console user lists
* Add API for searching users and add searching to all user lists
* Add lazy loading of profiles
* Revert config.json
* Fix unit tests and some style issues
* Add GetProfilesFromList to Go driver and fix web unit test
* Update etag for GetProfiles
* Updating ui for filters and pagination (#4044)
* Updating UI for pagination
* Adjusting margins for filter row
* Adjusting margin for specific modals
* Adding relative padding to system console
* Adjusting responsive view
* Update client user tests
* Minor fixes for direct messages modal (#4056)
* Remove some unneeded initial load calls (#4057)
* UX updates to user lists, added smart counts and bug fixes (#4059)
* Improved getExplicitMentions and unit tests (#4064)
* Refactor getting posts to lazy load profiles correctly (#4062)
* Comment out SetActiveChannel test (#4066)
* Profiler cpu, block, and memory profiler. (#4081)
* Fix TestSetActiveChannel unit test (#4071)
* Fixing build failure caused by dependancies updating (#4076)
* Adding profiler
* Fix admin_team_member_dropdown eslint errors
* Bumping session cache size (#4077)
* Bumping session cache size
* Bumping status cache
* Refactor how the client handles channel members to be large team friendly (#4106)
* Refactor how the client handles channel members to be large team friendly
* Change Id to ChannelId in ChannelStats model
* Updated getChannelMember and getProfilesByIds routes to match proposal
* Performance improvements (#4100)
* Performance improvements
* Fixing re-connect issue
* Fixing error message
* Some other minor perf tweaks
* Some other minor perf tweaks
* Fixing config file
* Fixing buffer size
* Fixing web socket send message
* adding some error logging
* fix getMe to be user required
* Fix websocket event for new user
* Fixing shutting down
* Reverting web socket changes
* Fixing logging lvl
* Adding caching to GetMember
* Adding some logging
* Fixing caching
* Fixing caching invalidate
* Fixing direct message caching
* Fixing caching
* Fixing caching
* Remove GetDirectProfiles from initial load
* Adding logging and fixing websocket client
* Adding back caching from bad merge.
* Explicitly close go driver requests (#4162)
* Refactored how the client handles team members to be more large team friendly (#4159)
* Refactor getProfilesForDirectMessageList API into getAllProfiles API
* Refactored how the client handles team members to be more large team friendly
* Fix js error when receiving a notification
* Fix JS error caused by current user being overwritten with sanitized version (#4165)
* Adding error message to status failure (#4167)
* Fix a few bugs caused by client scaling refactoring (#4170)
* When there is no read replica, don't open a second set of connections to the master database (#4173)
* Adding connection tacking to stats (#4174)
* Reduce DB writes for statuses and other status related changes (#4175)
* Fix bug preventing opening of DM channels from more modal (#4181)
* Fixing socket timing error (#4183)
* Fixing ping/pong handler
* Fixing socket timing error
* Commenting out status broadcasting
* Removing user status changes
* Removing user status changes
* Removing user status changes
* Removing user status changes
* Adding DoPreComputeJson()
* Performance improvements (#4194)
* * Fix System Console Analytics queries
* Add db.SetConnMaxLifetime to 15 minutes
* Add "net/http/pprof" for profiling
* Add FreeOSMemory() to manually release memory on reload config
* Add flag to enable http profiler
* Fix memory leak (#4197)
* Fix memory leak
* removed unneeded nil assignment
* Fixing go routine leak (#4208)
* Merge fixes
* Merge fix
* Refactored statuses to be queried by the client rather than broadcast by the server (#4212)
* Refactored server code to reduce status broadcasts and to allow getting statuses by IDs
* Refactor client code to periodically fetch statuses
* Add store unit test for getting statuses by ids
* Fix status unit test
* Add getStatusesByIds REST API and move the client over to use that instead of the WebSocket
* Adding multiple threads to websocket hub (#4230)
* Adding multiple threads to websocket hub
* Fixing unit tests
* Fixing so websocket connections from the same user end up in the same… (#4240)
* Fixing so websocket connections from the same user end up in the same list
* Removing old comment
* Refactor user autocomplete to query the server (#4239)
* Add API for autocompleting users
* Converted at mention autocomplete to query server
* Converted user search autocomplete to query server
* Switch autocomplete API naming to use term instead of username
* Split autocomplete API into two, one for channels and for teams
* Fix copy/paste error
* Some final client scaling fixes (#4246)
* Add lazy loading of profiles to integration pages
* Add lazy loading of profiles to emoji page
* Fix JS error when receiving post in select team menu and also clean up channel store
* Slack Import unit tests (for some functions).
Covers the completely self contained functions in the Slack Importer
that are straightforward to unit test.
JSON processing functions are not yet unit tested.
* Unit tests for Slack Import JSON parsing.
This tests the 3 functions for parsing JSON, using a sample set of
Slack data for posts, channels, and users.
* Import Slack uploads if present in zip archive.
This is part 3 of PLT-4280, to support importing file uploads when
importing from Slack. It is assumed the uploads in the zip archive will
be present as per the output of slack-advanced-exporter:
https://github.com/grundleborg/slack-advanced-exporter
If the uploads are not present (ie. this is a vanilla Slack export
archive) uploads are treated in the same way as before this patch,
providing only a link to the upload on Slack's servers.
* Update to new Files API.
* Added a limit to GetByPath for the rare cases when two old files had the same path
* Fixed files still being displayed for deleted posts
* Added a lock to prevent migrateFilenamesToFileInfos from migrating multiple posts at once
In order to maintain consistency with how topic and purpose are used in
Slack, the mapping is as follows:
Slack -> Mattermost
===== ==========
Purpose -> Purpose
Topic -> Header
At the moment, the importer fails to parse the JSON of these types of
message, and so ignores them.
This fix means they are now parsed and imported just as if they were
standalone messages (not file comments), which is better, and what the
existing code clearly intended to happen.
For the future, they should probably be changed to be imported as
replies to the message with the file attached that they are commenting
on.
Fixes#4131.
* Implemented initial changes for files table
* Removed *_benchmark_test.go files
* Re-implemented GetPublicFile and added support for old path
* Localization for files table
* Moved file system code into utils package
* Finished server-side changes and added initial upgrade script
* Added getPostFiles api
* Re-add Extension and HasPreviewImage fields to FileInfo
* Removed unused translation
* Fixed merge conflicts left over after permissions changes
* Forced FileInfo.extension to be lower case
* Changed FileUploadResponse to contain the FileInfos instead of FileIds
* Fixed permissions on getFile* calls
* Fixed notifications for file uploads
* Added initial version of client code for files changes
* Permanently added FileIds field to Post object and removed Post.HasFiles
* Updated PostStore.Update to be usable in more circumstances
* Re-added Filenames field and switched file migration to be entirely lazy-loaded
* Increased max listener count for FileStore
* Removed unused fileInfoCache
* Moved file system code back into api
* Removed duplicate test case
* Fixed unit test running on ports other than 8065
* Renamed HasPermissionToPostContext to HasPermissionToChannelByPostContext
* Refactored handleImages to make it more easily understandable
* Renamed getPostFiles to getFileInfosForPost
* Re-added pre-FileIds posts to analytics
* Changed files to be saved as their ids as opposed to id/filename.ext
* Renamed FileInfo.UserId to FileInfo.CreatorId
* Fixed detection of language in CodePreview
* Fixed switching between threads in the RHS not loading new files
* Add serverside protection against a rare bug where the client sends the same file twice for a single post
* Refactored the important parts of uploadFile api call into a function that can be called without a web context
Original version of the patch didn't take into account that, like with
@mentions, there's an "old" and a "new" format in the Slack export files
for channel mentions. This version imports both correctly.
* Update error page to use Markdown and add error for missing OAuth code
* Add line breaks to error messages
This is to make the error message easier to read.
* Update en.json
* Add the ability to clear push notifications after channel is viewed
* Fix race condition between updating the mention count and reading it when sending push notifications
* added handlers for slash commands
* added manual status persistance
* added tests
* removed extra debug output and comments
* rebase - fixing the PR
* making echo messages after slash commands ephemeral
Converts @mentions in Slack imports for regular messages, comments and
Slack upload messages.
Updates the description on the Team Settings Import tab to remove
mention of @mentions not importing.
* PLT-3942 Add real-time updates for center channel profile picture pop-over
* Send user data with the websocket event to prevent further requests
* Add helper for profile sanitation
* Deauthorize OAuth APIs
* Deautorize OAuth Apps Account Settings
* Fix typo in client method
* Fix issues found by PM
* Show help text only when there is at least one authorized app
* PLT-3754 EE: Add a Display Option to disable Join/Leave messages
* Differentiate between join/leave add/remove messages
* Update user removed from channel text message
* PLT-3647 Added config settings for email batching
* PLT-3647 Refactored generation of email notification
* PLT-3647 Added serverside code for email batching
* PLT-3647 Updated settings UI to enable email batching
* PLT-3647 Removed debug code
* PLT-3647 Fixed 0-padding of minutes in batched notification
* PLT-3647 Updated clientside UI for when email batching is disabled
* Go fmt
* PLT-3647 Changed email batching to be disabled by default
* Updated batched email message
* Added email batching toggle to system console
* Changed Email Notifications > Immediate setting to a 30 second batch interval
* Go fmt
* Fixed link to Mattermost icon in batched email notification
* Updated users to use 30 second email batching by default
* Fully disabled email batching when clustering is enabled
* Fixed email batching setting in the system console
* Fixed casing of 'Send Email notifications' -> 'Send email notifications'
* Updating UI Improvements for email batching (#3736)
* Updated text for notification settings and SiteURL.
* Prevented enabling email batching when SiteURL isn't set in the system console
* Re-added a couple debug messages
* Added warning text when clustering is enabled