deck icon indicating copy to clipboard operation
deck copied to clipboard

Unable to remove tags from cards after moving to new board

Open ZombieRoadie-BML opened this issue 8 months ago • 6 comments

Creating a card on board 1 and adding a tag Move card to board 2 Attempts to delete tag fail. Tag will not be removed unless moved back to board 1

ZombieRoadie-BML avatar May 02 '25 20:05 ZombieRoadie-BML

I'm unable to reproduce this. What versions of Server and the Deck app?

What appears in the browser console when attempting this? What appears in the server log?

joshtrichards avatar May 05 '25 16:05 joshtrichards

Nextcloud Hub 10 (31.0.4) Snap installed Deck 1.15.1 No Errors in log

OBS output of issue: https://youtu.be/OMFFG6LBRRU

ZombieRoadie-BML avatar May 05 '25 18:05 ZombieRoadie-BML

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Describe the bug Cannot deselect tags if the tags where entered from a different board. if move that card to the orginating board you can then remove those tags.

To Reproduce Steps to reproduce the behavior:

  1. Go to 'board 1 create a card add a few tags'
  2. click on move card and move it to board 2'
  3. Go to board 2 open card and you cannot remove the tags entred from board 1
  4. you can move the card back to board 1 to remove old tags then move it back to board 2 but this is a obvious bug.

Expected behavior Should just be able to remove tags even if it was moved to board 2

Client details:

  • OS: Ubuntu 21.04
  • Browser [e.g. chrome, safari] Firefox
  • Version [e.g. 22] 138.0b9 snap
  • Device: [e.g. iPhone6, desktop] Desktop
Server details

Operating system: Ubuntu 21.04

**Nextcloud version:**Nextcloud Hub 10 (31.0.4) Snap installed

Where did you install Nextcloud from: Snap

Signing status:

No errors have been found.

List of activated apps:

Enabled:
  - activity: 4.0.0
  - admin_audit: 1.21.0
  - announcementcenter: 7.1.2
  - bruteforcesettings: 4.0.0
  - calendar: 5.2.2
  - cloud_federation_api: 1.14.0
  - comments: 1.21.0
  - contacts: 7.0.6
  - contactsinteraction: 1.12.0
  - dashboard: 7.11.0
  - dav: 1.33.0
  - deck: 1.15.1
  - encryption: 2.19.0
  - external: 6.0.2
  - federatedfilesharing: 1.21.0
  - federation: 1.21.0
  - files: 2.3.1
  - files_downloadlimit: 4.0.0
  - files_external: 1.23.0
  - files_pdfviewer: 4.0.0
  - files_reminders: 1.4.0
  - files_sharing: 1.23.1
  - files_trashbin: 1.21.0
  - files_versions: 1.24.0
  - firstrunwizard: 4.0.0
  - forms: 5.1.0
  - groupfolders: 19.0.4
  - guests: 4.2.0
  - integration_giphy: 2.0.1
  - logreader: 4.0.0
  - lookup_server_connector: 1.19.0
  - mail: 5.0.3
  - metadata: 0.22.0
  - nextcloud_announcements: 3.0.0
  - notes: 4.12.0
  - notifications: 4.0.0
  - oauth2: 1.19.1
  - password_policy: 3.0.0
  - passwords: 2025.4.20
  - photos: 4.0.0-dev.1
  - privacy: 3.0.0
  - profile: 1.0.0
  - provisioning_api: 1.21.0
  - quota_warning: 1.21.0
  - recommendations: 4.0.0
  - related_resources: 2.0.0
  - richdocuments: 8.6.4
  - richdocumentscode: 24.4.1303
  - serverinfo: 3.0.0
  - settings: 1.14.0
  - sharebymail: 1.21.0
  - spreed: 21.0.4
  - support: 3.0.0
  - survey_client: 3.0.0
  - systemtags: 1.21.1
  - tasks: 0.16.1
  - text: 5.0.0
  - theming: 2.6.1
  - theming_customcss: 1.18.0
  - twofactor_backupcodes: 1.20.0
  - user_status: 1.11.0
  - viewer: 4.0.0
  - weather_status: 1.11.0
  - webhook_listeners: 1.2.0
  - workflowengine: 2.13.0
Disabled:
  - app_api: 5.0.2 (installed 3.1.0)
  - circles: 31.0.0 (installed 29.0.0-dev)
  - suspicious_login: 9.0.1 (installed 5.0.0)
  - twofactor_nextcloud_notification: 5.0.0
  - twofactor_totp: 13.0.0-dev.0
  - user_ldap: 1.22.0

Nextcloud configuration:

{
    "system": {
        "apps_paths": [
            {
                "path": "\/snap\/nextcloud\/current\/htdocs\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/snap\/nextcloud\/current\/nextcloud\/extra-apps",
                "url": "\/extra-apps",
                "writable": true
            }
        ],
        "supportedDatabases": [
            "mysql"
        ],
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 0,
            "timeout": "1.5",
            "dbindex": "0"
        },
        "log_type": "file",
        "logfile": "\/var\/snap\/nextcloud\/current\/logs\/nextcloud.log",
        "logfilemode": 416,
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "cloud.genericoep.com",
            "localhost",
            "10.1.2.188",
            "23.24.83.25"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "31.0.4.1",
        "overwrite.cli.url": "http:\/\/cloud.genericoep.com",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "mail_smtpmode": "smtp",
        "mail_smtpsecure": "ssl",
        "mail_sendmailmode": "smtp",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "465",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "default_language": "en",
        "force_language": "en",
        "default_locale": "en_US",
        "default_phone_region": "US",
        "force_locale": "en_US",
        "skeletondirectory": "\/mnt\/Storage1\/skel",
        "loglevel": 2,
        "theme": "",
        "maintenance_window_start": "1",
        "debug": false,
        "data-fingerprint": "5b1c645516f58c6225233eb961eedc78",
        "share_folder": "\/Share",
        "overwriteprotocol": "https",
        "overwritehost": "cloud.genericoep.com",
        "defaultapp": "dashboard,files,deck,spreed,calendar,contacts,mail,notes,tasks,forms,passwords,photos"
    }
}

Logs

Nextcloud log (data/nextcloud.log)

{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":0,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"OCA\\QuotaWarning\\Notification\\Notifier::prepare() threw \\InvalidArgumentException which is deprecated. Throw \\OCP\\Notification\\UnknownNotificationException when the notification is not known to your notifier and otherwise handle all \\InvalidArgumentException yourself.","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":1,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"Notification was claimed to be parsed, but was not fully parsed by OCA\\Deck\\Notification\\Notifier [app: deck, subject: card_update_description]","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":1,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"Notification was claimed to be parsed, but was not fully parsed by OCA\\Deck\\Notification\\Notifier [app: deck, subject: card_user_assign]","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":1,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"Notification was claimed to be parsed, but was not fully parsed by OCA\\Deck\\Notification\\Notifier [app: deck, subject: card_user_assign]","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":1,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"Notification was claimed to be parsed, but was not fully parsed by OCA\\Deck\\Notification\\Notifier [app: deck, subject: card_user_assign]","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"Lu8hpOsD1wtcBjIAdJYr","level":0,"time":"2025-05-05T17:58:12+00:00","remoteAddr":"10.1.1.250","user":"mikediaz","app":"no app in context","method":"GET","url":"/ocs/v2.php/apps/notifications/api/v2/notifications","message":"OCA\\QuotaWarning\\Notification\\Notifier::prepare() threw \\InvalidArgumentException which is deprecated. Throw \\OCP\\Notification\\UnknownNotificationException when the notification is not known to your notifier and otherwise handle all \\InvalidArgumentException yourself.","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":[]}
{"reqId":"hapmEDj59PUVod9Awgak","level":0,"time":"2025-05-05T17:58:16+00:00","remoteAddr":"10.1.1.250","user":"adam","app":"logreader","method":"PUT","url":"/index.php/apps/logreader/api/settings","message":"Updating AppConfig: logLevel => 2","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":{"app":"logreader"}}
{"reqId":"K0Xq2jzR25gA9soTQuDj","level":2,"time":"2025-05-05T17:58:29+00:00","remoteAddr":"10.1.1.250","user":"adam","app":"mail","method":"GET","url":"/index.php/settings/ajax/checksetup","message":"Error occurred while performing system check on mail account: 8","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":{"app":"mail"}}
{"reqId":"K0Xq2jzR25gA9soTQuDj","level":2,"time":"2025-05-05T17:58:40+00:00","remoteAddr":"10.1.1.250","user":"adam","app":"mail","method":"GET","url":"/index.php/settings/ajax/checksetup","message":"Error occurred while performing system check on mail account: 5","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":{"app":"mail"}}
{"reqId":"K0Xq2jzR25gA9soTQuDj","level":2,"time":"2025-05-05T17:58:50+00:00","remoteAddr":"10.1.1.250","user":"adam","app":"mail","method":"GET","url":"/index.php/settings/ajax/checksetup","message":"Error occurred while performing system check on mail account: 6","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0","version":"31.0.4.1","data":{"app":"mail"}}

Gobytego avatar May 05 '25 18:05 Gobytego

I'm unable to reproduce this. What versions of Server and the Deck app?

What appears in the browser console when attempting this? What appears in the server log?

i added all the info for same issue

Gobytego avatar May 05 '25 18:05 Gobytego

Image

same exact issue and it will temporarily duplicate the card as seen in the screen shot

Gobytego avatar May 06 '25 13:05 Gobytego

I can reproduce this issue on 29, 30, 31 and master. It might be related to PR https://github.com/nextcloud/deck/pull/6933

luka-nextcloud avatar May 12 '25 12:05 luka-nextcloud

I've also the same issue on NC31 with Deck 1.15.1. When moving a card with a label to a board without labels, the label will still be visible on the new card, but the label can't be deleted due to the fact that the label is not added to the new board (when going to 'all labels' of the board, there are still no labels). I think that this is the reason why we are unable to delete the label from the card.

When copying the card with a label called 'x' while there is already another label on the new board with exact the same name (also 'x', but was made on the new board instead of being copied to it), the card will be copied without label. I think that Deck is gets confused because of the double label naming.

When deleting the whole label on the new board before copying the card, it still copies the card without label. Maybe because the old label is still somewhere present in the database?

kuggu avatar Jun 19 '25 07:06 kuggu

@luka-nextcloud is right it's caused by the PR from julius. When moving cards we first move the card and then check if there are labels that are not on the new board and copy them to the target board. That causes an issue because we remove the old label from the card which is forbidden by the PR. I think we should allow removing labels always. We could also clone the labels then move the card and then reassign the labels but I think that's a less robust solution bc you could have labels created and then the card transfer failing so there'd be unused labels not created by the user on the board. @luka-nextcloud what do you think? go with the first option to allow the removing?

grnd-alt avatar Jul 14 '25 11:07 grnd-alt

@grnd-alt In my opinion, we should:

  • Allow the removal of labels that do not belong to the same board as the card, to prevent breaking the card-moving functionality.
  • Create a migration script to correct incorrectly assigned labels on partially moved cards.

luka-nextcloud avatar Jul 14 '25 13:07 luka-nextcloud

I have the same problem!

I accidentally created a new issue, sorry about that.

Sounds good, @luka-nextcloud

Treb-trab avatar Jul 18 '25 10:07 Treb-trab

When correcting the bug, attention should also be paid to a defined behavior of tags with the same name (from different boards). The Ui can't handle that at the moment ;)

I would also like it if you could define global tags. In the UI, for example, this could be a checkbox in the tag list; if checked, the tag appears on all boards. Or something like that.

Treb-trab avatar Jul 21 '25 06:07 Treb-trab