TIP: You can type at any time to perform a new search.
Todo Lists
project_gtd · OCA/project
Security findings
Security warnings
access_project_timebox_empty_wizard— ACL grants write/create/unlink on 'model_project_timebox_empty' to every user (portal/public included): no group is set. Verify record rules and test access as an unrelated public/portal user. acl-global-write · sourceaccess_project_timebox_fill_plan_wizard— ACL grants write/create/unlink on 'model_project_timebox_fill_plan' to every user (portal/public included): no group is set. Verify record rules and test access as an unrelated public/portal user. acl-global-write · source
Found by automated static analysis: these patterns are usually risky, but only a manual review of the module can confirm a real issue.
Migration considerations
view_project_gtd_empty— For a target of Odoo 17.0+: view 'view_project_gtd_empty' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourceview_gtd_context_tree— View 'view_gtd_context_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · sourceview_gtd_timebox_tree— View 'view_gtd_timebox_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/project · module folder · Try on Runboat
- Module version
- 1.0.1
- Category
- Project Management
- Folder size
- 0.55 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/project
- Last tracking update
- 2026-08-07 07:47:36
- Authors
- Odoo SA, Odoo Community Association (OCA), ABF OSIELL
- Maintainers
- Odoo SA, Odoo Community Association (OCA), ABF OSIELL
- Committers
- Jairo Llopis, Weblate, Denis Leemann, OCA-git-bot, oca-ci
Code Analysis
Views touched (9)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
project_task |
project.task.form.timebox | project.task | form | Inherits project.view_task_form2 |
project_task_tree |
project.task.tree.timebox | project.task | tree | Inherits project.view_task_tree2 |
view_gtd_context_form |
project.gtd.context.form | project.gtd.context | form | New |
view_gtd_context_tree |
project.gtd.context.tree | project.gtd.context | tree | New |
view_gtd_timebox_form |
project.gtd.timebox.form | project.gtd.timebox | form | New |
view_gtd_timebox_tree |
project.gtd.timebox.tree | project.gtd.timebox | tree | New |
view_project_gtd_empty |
Empty Timebox | project.timebox.empty | form | New |
view_project_gtd_fill |
Plannify Timebox | project.timebox.fill.plan | form | New |
view_task_gtd_search |
project.task.search.inherit | project.task | search | Inherits project.view_task_search_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (5)
New fields (2)
-
nameCharrequired=Truetranslate=True args: 'Context' -
sequenceIntegerdefault=1help='Gives the sequence order when displaying a list of contexts.' args: 'Sequence'
No public methods.
New fields (2)
-
nameCharindex=1required=Truesize=64translate=1 args: 'Timebox' -
sequenceIntegerhelp='Gives the sequence order when displaying a list of timebox.' args: 'Sequence'
No public methods.
New fields (2)
-
context_idMany2one → project.gtd.contextdefault=_get_contexthelp='The context place where user has to treat task' args: 'project.gtd.context', 'Context' -
timebox_idMany2one → project.gtd.timeboxhelp='Time-laps during which task has to be treated' args: 'project.gtd.timebox', 'Timebox'
-
copy_data(self, default=None)@api.model -
fields_view_get(self, *args, **kwargs)@api.model
New fields (1)
-
stateSelectiondefault='init'readonly=True args: [('init', 'init'), ('done', 'done')]
-
process(self)
New fields (3)
-
task_idsMany2many → project.taskargs: 'project.task', 'project_task_rel', 'task_id', 'fill_id', 'Tasks selection' -
timebox_idMany2one → project.gtd.timeboxdefault=_get_from_tbrequired=True args: 'project.gtd.timebox', 'Get from Timebox' -
timebox_to_idMany2one → project.gtd.timeboxdefault=_get_to_tbrequired=True args: 'project.gtd.timebox', 'Set to Timebox'
-
process(self)
Loading…
Loading…
Loading…