- 10 Sep, 2013 26 commits
-
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
Tests may login/logout with different users. This fixes testDynamicClassGeneration.TestZodbTestComponent.testRunLiveTest.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
ZODB Components: Only Manager or Developer Role should be able to access Component Tools and Components.
-
Arnaud Fontaine authored
Before, 'exec' was used but it is not safe as it executes the source code and also not so useful as it stops at the first error. So, use pylint instead: * Report errors and warnings (naming conventions could later be checked too). * Allow to jump directly in Ace Editor to the message line/column by clicking on it. * Define properly dynamic packages by setting __path__, otherwise pylint fails when a Component imports another one. Also, split up consistency checking done in validated/modified state and checking source code everytime the source code is modified: Source code error message was previously stored as a workflow variable, which didn't make any sense because user would only get error messages on Workflow transition, thus use existing Interaction Workflow to check source code and set newly defined error/warning properties everytime the source code is modified.
-
Arnaud Fontaine authored
Otherwise, without passing the new height/width to resize() and without force, text is not visible when switching to maximize/fullscreen mode.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
Since a29456bc, only import lock is used instead of aq_method_lock, dynamic modules locks and import lock. However, it was creating another deadlock: when the import lock is held in one thread (for instance when trying to perform migration to Portal Type as Classes and ZODB Property Sheets), and an object is loaded from ZODB, a request is sent to ZEO, and this blocks until another thread (asyncore) gets the ZEO reply and sends it back to the first thread. However, if the asyncore thread receives an Exception, it will tries to import its module and thus create a deadlock as the import lock is still held by the first thread.
-
Arnaud Fontaine authored
ZODB Components: No need to migrate Component Tool, only exist since Portal Type as Classes and ZODB Property Sheets.
-
Arnaud Fontaine authored
Because of recently added Component Tool, POSKeyError exception was raised when trying to load it from ZODB during migration of Portal Type classes and ZODB Property Sheets (PickleUpdater() in ERP5Site.migrateToPortalTypeClass), so make sure that there is a commit before loading anything from ZODB.
-
Arnaud Fontaine authored
This has several benefits: * No need to exit maximize/fullscreen modes to save. * The cursor position in the editor does not change. This implementation is hackish because it is too Component-specific, but until RenderJS is being used, there is no probably no better way.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
ZODB Components: Developer Role was not returned by getRoles() for users added through erp5.acl_users. It was only working if the user was only in Zope acl_users but not ERP5 acl_users because getRole() was not monkey-patch in contrary to AccessControl BasicUser.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
* Current user must have permission to add Components in portal_components. * bt5 must not be in installed state as this script updates bt5 properties. * There must be some Extension, Document, or Test not already migrated.
-
Arnaud Fontaine authored
development mode because there was a check whether Extension on FS should be reloaded even for Components.
-
Arnaud Fontaine authored
This reverts the following part of aed4f303: * Upon bt5 installation, install portal_type* items before bt5 {Document, Extensions...} as corresponding Portal Type are required once they have been migrated to ZODB Components. This obviously does not work as the Document can be used as Type Class and also because tool_item is required before portal_types for example (see test_type_provider). When bootstrapping erp5_core and installing for example an Extension Component, this will try to load Extension Component Portal Type which does not exist yet but fallback on its document class instead, which is enough until Extension Component Portal Type is installed.
-
Arnaud Fontaine authored
In aed4f303, Permissions were set in ComponentTool __init__ and it could not be modified later on because it is set directly in the ZODB. Moreover, Permissions could be modified after execution by modifying attributes.
-
- 09 Sep, 2013 14 commits
-
-
Arnaud Fontaine authored
Folder_delete calls Workflow 'delete_action' if the object has any Workflow History. Before, component_validation_workflow was acting like validation_workflow for deleting objects, e.g. 'delete_action' triggers 'delete' state which is fine for normal documents but not Components.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
Before, it was in Site _local_properties, but as this is stored in ZODB, old sites would not have this property and would thus not allow to modify it through 'Properties' Site tab.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
* Upon bt5 installation, install portal_type* items before bt5 {Document, Extensions...} as corresponding Portal Type are required once they have been migrated to ZODB Components. * Likewise portal_{property_sheets, types}, portal_components must be created automatically *before* installing any bt5. This is required when Products will be migrated but also for bt5 items before bootstrapping erp5_core bt5. * Set Permissions in ComponentTool instanciation and revoke all permissions, then allow only some of them for security sake. * When creating ERP5 site with unit tests, add ERP5TypeTestCase to Developer Role ASAP so that there is no Permission issue when installing bootstrap bt5 and test bt5s containing ZODB Components.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
This will not work when there are several nodes anyway, so just display a message to the user instead.
-
Arnaud Fontaine authored
Also, upon installation of bt5s, install WorkflowItem before Components as it is needed to restore history. Another solution would have been to validate() ZODB Components automatically upon bt5 installation but it would mean losing 'modified' state information and also imply that *all of them* will be validated even if a developer wants to publish non-validated ZODB Components.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
getattr() will never load the Component, whereas import does. Also, unit tests were passing with this bug, so improve unit test so that asserting that a module is importable does not have side-effects.
-
Arnaud Fontaine authored
For now, just ignore it but it may be required later to define dummy accessors so that the registry and Components can be loaded even when their accessors are not generated yet.
-
Arnaud Fontaine authored
-
Arnaud Fontaine authored
-