senaite/senaite.sync

SoupData storage remains in instance

Opened this issue · 3 comments

Steps to reproduce

Sync data from an instance

Current behavior

A souper.soup.SoupData storage is created in the instance.
This object is not deletable, stays when senaite.sync is uninstalled and is not recognized automatically when senaite.sync is reinstalled.

Expected behavior

The object can be either manually deleted, uninstalls automatically when senaite.sync is uninstalled or is picked up again after reinstallation of senaite.sync

Screenshot (optional)

(Pdb++) portal.source
<souper.soup.SoupData object at 0x10d227f50>
(Pdb++) portal.manage_delObjects("source")
*** Unauthorized: Do not have permissions to remove this object
(Pdb++) portal._delOb("source")
(Pdb++) portal.reindexObject()
(Pdb++) transaction.commit()

Ok, deleting this thing is a bad idea:

Traceback (innermost last):
  Module ZPublisher.Publish, line 138, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 48, in call_object
  Module Shared.DC.Scripts.Bindings, line 322, in __call__
  Module Shared.DC.Scripts.Bindings, line 359, in _bindAndExec
  Module App.special_dtml, line 185, in _exec
  Module OFS.ObjectManager, line 437, in objectItems
  Module OFS.ObjectManager, line 301, in _getOb
AttributeError: source

That's the remainder when uninstalling senaite.sync:

souperstore

Unfortunately this is undeletable