Commit graph

245 commits

Author SHA1 Message Date
Miguel de la Cruz
f2d98f940f
Updates migrations to check collation/charset before trying to fix it (#4325)
* Updates migrations to check collation/charset before trying to fix it

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

Co-authored-by: Doug Lauder <wiggin77@warpmail.net>

Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
Co-authored-by: Doug Lauder <wiggin77@warpmail.net>
2022-12-13 12:28:57 -07:00
Miguel de la Cruz
9fac8f476e
Revert dnd (#4294)
* Revert "Fixed bug where boards would move to category of a different team (#4284)"

This reverts commit e075f408d3.

* Revert "Merge branch 'main' into only-explicit-boards-on-default-category"

This reverts commit 7db7e56296, reversing
changes made to 3feda10b6d.

* Revert "DND support for category and boards in LHS (#3964)"

This reverts commit 9918a0b3f8.
2022-12-05 15:03:34 -05:00
Shivashis Padhi
35f681dd75
Change activeUsers field type to []string (#3909)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-12-05 17:20:15 +05:30
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
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
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
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
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
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
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
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
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
Paul Esch-Laurent
31569c655a
fix: reference Uppercase MM tables (#3756) 2022-08-30 14:32:31 -05:00
Doug Lauder
2035337049
getBlocks store API with query options (#3755) 2022-08-30 15:56:41 +02:00
Harshil Sharma
63edf2c987
Props to preferences (#3722)
* Added tab;le creation migration

* WIP

* Finished base impl

* Added MySQL migration

* WIP

* Added personal server store methods

* WIP

* Fixed webapp tests

* Updated server tests

* generated code

* generated code

* generated code

* used raw queries instead of plugin methods to avoid updating productapi package

* Added API doc

* Added sqlite migratins

* used plugin APIs again s=instead of raw queries

* WIP

* Added missed case of SQL migration where personal server can run on Postgres and MySQL

* CI

* Removed unsupported POSL operator

* Low on caffine. Making silly mistakes

* json handling

* int test

* hope tests pass

* Fix incorrect column size

* Webapp lint fixes

* remived debug code

* Updated moigration version

* Review fixes
2022-08-29 12:55:12 +05:30
Jesús Espino
61a8af8f34
Restoring guest account access and adding backend part of the guest accounts support (#2929)
Co-authored-by: Paul Esch-Laurent <paul.esch-laurent@mattermost.com>
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-24 17:08:58 -05:00
Miguel de la Cruz
e1a39e57ff
Adds a check that errors on store start if MariaDB is detected (#3725)
* Adds a check that errors on store start if MariaDB is detected

* Fix linter

* Update error message

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-24 14:36:43 -06:00
Miguel de la Cruz
03a6a963eb
Updates db indexes to improve performance (#3732)
* Updates db indexes to improve performance

* Fix order-dependant test

* Fix another order-dependant test
2022-08-24 18:42:41 +02:00
Scott Bishel
0403c22f3c
Post message channel change (#3717)
* initial implementation

* checking changes

* use boards bot

* update mocks

* linter fixes

* linter fixes

* clean up

* revert manifest change

* another lint fix

* use common error

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-08-23 08:48:41 -06:00
Miguel de la Cruz
67cec5de4f
Remove duplicated store and app method to get blocks that belong to a board (#3698) 2022-08-22 21:53:59 +02:00
Miguel de la Cruz
feb49eaf19
Add foundation tests (#3670)
* Add foundation and its instrumentation code

* Add migration 18 and deletedMembershipBoardsMigration tests

* Update go sum
2022-08-18 17:03:33 +02:00
Miguel de la Cruz
19ef6533f6
Adds data migration to clean badly assigned boards (#3635)
* Adds data migration to clean badly assigned boards

This data migration fetches all boards whose owner has a deleted
membership on the board's team and fixes them by processing them
again, this time with the fix applied to the `getBestTeamForBoard`
function that skips deleted teams and team memberships

* Do not create a transaction if there are no offending boards found

* Fix linter
2022-08-11 09:22:32 -06:00
Scott Bishel
3b099bada4
GH-3564: Change boards search to "all" words (#3622)
* make search on words 'and'

* update search in auth layer
2022-08-10 14:49:30 +05:30
Miguel de la Cruz
ad3eb4ba8b
Update teamless boards migration to check for deleted entities (#3613)
* Update teamless boards migration to check for deleted entities

After this changes, the `TeamLessBoardsMigration` will check the team
and the team membership of the users to discard deleted entities when
cosidering what team to assign a board to

* Fix linter
2022-08-09 13:04:03 +02:00