Commit graph

292 commits

Author SHA1 Message Date
Harshil Sharma
9918a0b3f8
DND support for category and boards in LHS (#3964)
* WIP

* WIP

* Removed unused webapp util

* Added server tests

* Lint fix

* Updating existing tests

* Updating existing tests

* Updating existing tests

* Fixing existing tests

* Fixing existing tests

* Fixing existing tests

* WIP

* Added category sort order migration

* Added logic to set new category on top

* Implemented api, WS listein logic remining

* finished webapp implementation

* Added category type and tests

* updated tests

* Fixed integration test

* type fix

* WIP

* implemented boards DND to other category and in same category

* removed seconds from boards name

* wip

* debugging cy test

* Enabled hiding views list while DNDing

* Removed some debug logs

* Fixed a bug preventing users from collapsing boards category

* WIP

* Debugging cypress test

* CI

* debugging cy test

* Testing a fix

* reverting test fix

* Handled personal server

* WIP

* WIP

* Adding support for building with esbuild

* Using different index.html templates for esbuild

* WIP

* WIP

* Fixed delete category and rename category

* WIP

* WIP

* Finally, its done.

* Adde suppor tot update board-category mapping in bulk

* Fixed a bug where create category option didn't show up on default category

* Fixed bug where new board was added as last board in Boards category instead of first board

* Minor cleanup

* WIP

* Added support to drab boards onto collapsed categories

* Fixed route order from specific to generic

* Fix linter

* Updated existin server tests

* fixed integration tests

* Fixed webapp test err

* Removed accidental dependencies

* Adding  new server tests

* Finished server tests

* added api to client.go

* Added API integration test

* Fixed existing webapp tests

* WIP

* WIP

* WIP

* WIP

* WIP

* Fixed missing paranthesis

* Some cleanup

* fixed server lint

* noopped down migration

* Fixed issue with DND not working great with newly added category

* Fixed a test

* Fixed a test

* Fixed a test

* Fixed console error while DNDing

* pakg lock restore

* Fixed missing react beautiful dnd in package.lock.json

* updated snapshots

* Fixed webapp test

* Review fixes

* Added API permission check

Co-authored-by: Jesús Espino <jespinog@gmail.com>
2022-11-24 15:31:32 +05:30
Doug Lauder
20d8d7a0ab
manually de-duplicate result set for SearchBoardsForUserInTeam since adding to the query increased cost by 15X (#4232) 2022-11-22 12:53:08 -05:00
Ibrahim Serdar Acikgoz
afb5bf195b
migrations: update morph dependecy and apply changes (#4208)
* migrations: update morph dependecy and apply changes

* fix empty migration table name
2022-11-17 12:53:49 +01:00
Doug Lauder
824724387c
require build tag to include sqlite (#4213)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-11-16 08:12:05 -05:00
Benjamin Masters
0cd4257ebc
[GH-3410] Healthcheck Endpoint with Server Metadata (#4151)
* add ping endpoint and tests

* remove unnecessary newlines

* fix: invalid Swagger YAML comment blocks

* refactor and add 'suite' SKU

* generate swagger docs

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Paul Esch-Laurent <paul.esch-laurent@mattermost.com>
2022-11-14 14:37:06 -05:00
Miguel de la Cruz
a96fa493eb
Set down migrations as noops and add CI job (#4186) 2022-11-10 17:04:40 +01:00
Scott Bishel
3cba505101
return minimum role from mattermostauthlayer functions (#4182) 2022-11-08 17:32:50 -07:00
Doug Lauder
8949c6b13f
Delete children when deleting boards and cards (#3943)
* delete and undelete handle children
2022-11-08 11:42:01 -05:00
Scott Bishel
ecfebc32a4
return implicit memberships in SearchBoardForUserInTeam (#4158) 2022-11-07 18:46:28 -07:00
Scott Bishel
037e951141
Fix issues when retrieving boards (#4145)
* update function to only retrieve boards once.

* some cleanup

* fix spelling error
2022-11-07 11:49:19 -07:00
Scott Bishel
08f09f0c99
Fix to respect System Console settings (#4110)
* fix for plugin viewing names and emails

* fix some tests

* fix some tests

* fix more tests

* fix more tests

* clean-up

* cleanup, fix issue on initial load

* revert manifest changes

* implement on personal server side

* revert user.go changes

* lint fix

* fix test

* check config for null before setting boolean value

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-11-02 14:07:10 -06:00
Harshil Sharma
9cc1071945
Fixed server lint issue about not using deprecated package io.ioutils (#4112) 2022-11-01 07:56:04 -04:00
Harshil Sharma
8d17dd820e
Boards as persisted category (#3877)
* WIP

* WIP

* Removed unused webapp util

* Added server tests

* Lint fix

* Updating existing tests

* Updating existing tests

* Updating existing tests

* Fixing existing tests

* Fixing existing tests

* Fixing existing tests

* Added category type and tests

* updated tests

* Fixed integration test

* type fix

* removed seconds from boards name

* wip

* debugging cy test

* Fixed a bug preventing users from collapsing boards category

* Debugging cypress test

* CI

* debugging cy test

* Testing a fix

* reverting test fix

* Handled personal server

* Fixed a case for personal server

* fixed a test
2022-10-26 16:38:03 +05:30
Miguel de la Cruz
91f9f71bf7
Replace Block references to use pointers throughout all application layers (#3934)
* Replace Block references to use pointers throughout all application layers

* lint fixes

* gofmt file, lint fix

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-10-25 14:46:43 -06:00
Scott Bishel
e3ae682eea
Display board statistics (#4025)
* initial commit for displaying board statistics

* lint fixes

* i18n-extract, remove log entries, cleanup

* more lint fixes

* add check for standalone mode

* update tests due to change to NotImplemented

* lint fix

* revert removing empty comment lines

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-10-25 14:28:00 -06:00
Doug Lauder
e9d4aeba0e
fix collation for personal server (#4080) 2022-10-25 14:02:41 -04:00
Scott Bishel
3e9600a803
Fix GetMemberForBoard from returning a null member (#4060)
* fix GetMemberForBoard from returning a null member

* lint didn't like my variable name
2022-10-20 16:01:24 -06:00
Miguel de la Cruz
821e3e1c85
Add mariadb tests and update database migration for compatibility (#3929)
* Add mariadb tests and update database migration for compatibility

* add additional tests for migrating json fields

* remove unnecessary test

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-10-20 07:36:13 -06:00
Scott Bishel
cb4e5d9c39
Gh 3942 - fix bug with Boards bot, update link text (#4027)
* fix error when ensuring bot

* update link/unlink board text

* lint fixes
2022-10-19 09:22:55 -06:00
Tobias Oetiker
d586c9351e
make sure users.props contains a hash! (#4029)
* make sure users.props contains a hash!

Partial fix for #4018. This does NOT address the 'dirty' column mentioned in this issue!

* Update server/services/store/sqlstore/migrations/000027_migrate_user_props_to_preferences.up.sql

* Just make sure that props is an object

* add newline back in

* Update 000027_migrate_user_props_to_preferences.up.sql

* Also added the check for sytandalone version query for POstgres

* added explicit cast to JSONB

Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
2022-10-19 13:54:24 +05:30
Scott Bishel
6f0c34ddd1
Gh 3953 remove channel link duplicate (#4011) 2022-10-17 16:45:51 -05:00
Doug Lauder
2b984d45b2
Fix collation and charset after migrations (every run) (#4002)
* fix collation and charset after migrations (every run)
2022-10-14 18:39:25 -04:00
Scott Bishel
eb7601d841
GH-3992 fix for missing templates, error when 'system' not found as user. (#3998) 2022-10-11 14:34:33 -05:00
Mattermost Build
3335ccd364
fix another migration error (#3988) (#3989)
(cherry picked from commit b952291c30)

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
2022-10-10 17:24:55 -06:00
Scott Bishel
4b0f69da57
fix migration syntax (#3985) 2022-10-10 16:02:36 -06:00
Harshil Sharma
f5a068e382
Added duplicate data test for user preference (#3968)
* Added handling of duplicate key conflicts

* Added a test

* Add value checks and fix username for the test

Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
2022-10-07 16:28:47 +02:00
Harshil Sharma
3af20268bc
Added handling of duplicate key conflicts (#3963) 2022-10-07 07:08:42 -06:00
Paul Esch-Laurent
fe010b3b40
Remove synthetic/implicit memberships for guests (#3786)
* fix: no implicit (synthetic) memberships for guest

* fix: only check if guest if no explicit member

* refactor: join() to select() non-guest users

* style: golant lint

* fix: search as guest only returns explicit boards

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-10-03 18:23:21 -06:00
Miguel de la Cruz
dfa9d8f452
Update user store to return the updated entities after inserting / patching them (#3843) 2022-09-15 13:58:20 +02:00
Miguel de la Cruz
9163e4cd9b
Check on GetBoardsForUserAndTeam if the board result list is incomplete and continue if that's the case (#3842)
* Check on GetBoardsForUserAndTeam if the board result list is incomplete and continue if that's the case

* Remove template filter and correctly check for not founds
2022-09-14 08:59:39 -04:00
Doug Lauder
6f35ed8678
Fix broken main store.getBoardsInTeamByIds (#3840)
* fix broken main GetBoardsForUserAndTeam

* comment unit tests
2022-09-14 11:27:36 +02:00
Scott Bishel
b3a356067c
GH-3797 Update telemetry to send boards count (#3820)
* update telemetry to send boards count

* fix lint

* fix unit test
2022-09-13 14:37:05 -06:00
Miguel de la Cruz
f35ac66232
Update board store to return inserted / patched values without querying the DB after modifying them (#3832)
* Update board store to return inserted / patched values without querying the DB after modifying them

* Remove redundant condition check after error refactoring
2022-09-13 12:43:03 +02:00
Miguel de la Cruz
08c0b7a2fd
Refactor error usage from the store level up and add API helpers (#3792)
* Refactor error usage from the store level up and add API helpers

* Complete API tests

* Fix merge errorResponse calls

* Remove ensure helpers to allow for custom messages on permission errors

* Fix bad import and call

* Remove bad user check on auth that was added as part of the main merge

* Fix empty list test

* Replace deprecated proxy calls to ioutil.ReadAll with io.ReadAll

* Add information to the NotFound errors

* Add context to all remaining errors and address review comments

* Fix linter

* Adapt the new card API endpoints to the error refactor

* Remove almost all customErrorResponse calls

* Add request entity too large to errorResponse and remove customErrorResponse

* Fix linter
2022-09-13 12:18:40 +02:00
Paul Esch-Laurent
15e13fcdac
fix: filter out bots for sharing, @mention-ing, and Person property (#3762)
* fix: filter out bots for sharing and @mention-ing

* feat: add `?exclude_bots` to `getTeamUsers` API

* chore: `make swagger`

* chore: `make generate`

* fix: plugin store test function implementation

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-09-09 19:56:44 -06:00
Doug Lauder
4652a15bab
Card APIs (#3760)
* cards apis wip

* create card API

* validate cards when creating

* create card fixes

* patch card wip

* wip

* unit test for createCard; CardPatch2BlockPatch

* unit test for PatchCard

* more APIs

* unit tests for GetCardByID

* register GetCard API

* Set FOCALBOARD_UNIT_TESTING for integration tests

* integration tests for CreateCard

* more integration tests for CreateCard

* integtration tests for PatchCard

* fix integration tests for PatchCard

* integration tests for GetCard

* GetCards API wip

* fix merge conflict

* GetCards API and unit tests

* fix linter issues

* fix flaky unit test for mySQL

* Update server/api/api.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* Update server/api/api.go

Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>

* address review comments

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Miguel de la Cruz <mgdelacroix@gmail.com>
2022-09-08 13:01:33 +02:00
Miguel de la Cruz
7ebcdf59c2
Add remove templates channel link migration (#3794) 2022-09-07 14:22:06 -06:00
Scott Bishel
af2727085d
Fix template websocket (#3747)
* fix websockets with templates

* add more unit tests

* add synthetic, update tests

* Update mattermost-plugin/server/manifest.go

* clean up lint, reduce cyclomatic complexity

* update tests that call patchBoard with patch.Type set

* cleanup messages

* cleanup code more readable

* fixes from code review

* fix null check

* remove log lines
2022-09-04 16:51:31 -06:00
Miguel de la Cruz
956675aa07
Fix migration 27 and update boards_migrator_test to support sqlite (#3775)
* Fix migration 27 and update boards_migrator_test to support sqlite

* Adds comments for clarity
2022-09-02 13:39:00 -06:00
Scott Bishel
a6ca2c2011
Merge pull request #3774 from mattermost/mysql-extra-safe
Extra safe MySQL migration
2022-09-02 10:00:22 -06:00
Harshil Sharma
80d2984cf8 Fixed an incorrect case in table name 2022-09-02 11:28:37 +05:30
Miguel de la Cruz
3acd505618
Refactor schema table migration mechanism (#3709)
* Refactor schema table migration mechanism

The old schema table migration code was initializing the migration
engine before changing the migrations table and was mixing queries on
two different database connections (the `s.db` connection and the
migrations `db` connection).

The changes on this commit take care of changing the migrations table
before the morph migration engine is initialized and they use the same
connection for all operations, better isolating the schema table
migration process.

* Update migrate function to take the cluster mutex first thing

* Split migration code and orchestration on different functions

* Wrap custom errors on data migrations

* Rename private migration method

* Update server/services/store/sqlstore/migrate.go

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-09-01 15:05:11 +02:00
Harshil Sharma
66e8af85a8 Extra safe MySQL migration 2022-09-01 16:15:31 +05:30
Harshil Sharma
12ba9a6382 Extra safe MySQL migration 2022-09-01 16:07:11 +05:30
Scott Bishel
270a110dc1
Merge pull request #3761 from mattermost/mentions-and-guests
Fix @-mentions in boards & for guests
2022-08-31 13:40:32 -06:00
Paul Esch-Laurent
31569c655a
fix: reference Uppercase MM tables (#3756) 2022-08-30 14:32:31 -05:00
Paul Esch-Laurent
9101ef81e2 style: golang linting (shadow declaration) 2022-08-30 12:45:20 -05:00
Paul Esch-Laurent
b7ead8a7e0 fix: handle includePublicBoards 2022-08-30 11:56:24 -05:00
Paul Esch-Laurent
33987d5c5b fix: invalid db query for guests 2022-08-30 11:56:24 -05:00
Doug Lauder
2035337049
getBlocks store API with query options (#3755) 2022-08-30 15:56:41 +02:00