Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Problem/Motivation
We are targeting workflows module for a stable release in 8.4.x.
Roadmap: #2843494: WI: Workflows module roadmap
Proposed resolution
Update the info file.
Remaining tasks
None
User interface changes
n/a
API changes
n/a
Data model changes
n/a
Comment | File | Size | Author |
---|---|---|---|
#46 | 2897130-46.patch | 1.1 KB | timmillwood |
#38 | 2897130-38.patch | 8.54 KB | timmillwood |
#38 | interdiff-2897130-38.txt | 1.52 KB | timmillwood |
Comments
Comment #2
timmillwoodComment #3
Wim LeersThis is blocked on #2849827: Move workflow "settings" setters and getters to WorkflowTypeInterface, should this also be blocked on #2893778: Remove deprecated Workflows methods?
Comment #4
timmillwood@Wim Leers - I would be ok with Workflows being marked stable with deprecated methods. Although, we should be able to remove them before marking it stable. So kind of a soft blocker.
Comment #5
Wim Leers@timmillwood Perhaps a valuable intermediate can be to just mark them @internal. Less work, hence easier to land, but with the same end result: no need to support deprecated APIs.
Comment #6
timmillwoodBoth issues mentioned in #3 already have patches, so fingers crossed they can be committed within minutes of each other.
Comment #7
Sam152 CreditAttribution: Sam152 as a volunteer and at PreviousNext commentedI'd be more than happy to mark the methods in BC breaking follow-ups to #2849827 as @internal as a stop-gap if they can't be done before 8.4.0. I think that's a great compromise, but working on those patches now anyway, so fingers crossed.
Comment #8
Wim Leers#6: indeed! 🙏
#7: 👍
Comment #9
timmillwoodAll "must have" issues for workflows have now been committed.
#2843494: WI: Workflows module roadmap
There are three clean up issues, which need to get in before 8.4.0 if they're getting in at all, as they removed unnecessary methods.
#2893778: Remove deprecated Workflows methods
#2896725: Entirely remove the concept of WorkflowType(Interface|Base)::initializeWorkflow()
#2896721: Remove the concept of decorated states/transitions from worfklow type plugins.
But I assume these can go in after Workflows is marked stable, as long as it's before 8.4.0 is tagged.
Comment #10
timmillwoodMoving back to wait on #2896722: Leverage PluginWithFormsInterface to encapsulate @WorkflowType schema and clean up state/transition form methods.
Comment #11
Sam152 CreditAttribution: Sam152 as a volunteer and at PreviousNext commentedI think we can remove these now too.
Comment #13
timmillwoodComment #14
timmillwoodWith all the dependencies done, looks like we're ready to go.
Comment #15
timmillwoodLooking at other experimental modules, we need Dries' sign off?
Comment #17
tacituseu CreditAttribution: tacituseu commentedNeeds a reroll (at least for #2896721: Remove the concept of decorated states/transitions from worfklow type plugins. ).
Comment #18
timmillwoodRerolling
Comment #19
xjmGreat work on stabilizing the APIs here. This is really close. In addition to finishing the must-haves and many of the should-haves, we're also supposed to include checking the core gates when we add new modules. I didn't see this on #2843494: WI: Workflows module roadmap so setting back to NR and will discuss in more detail on the plan issue. It'll be amazing if we can mark it stable for 8.4.x!
Comment #20
xjmActually postponing on #2843494: WI: Workflows module roadmap for now since we need to do some final reviews of the module and address core gates before marking it stable. Thanks @timmillwood. Hopefully we can make this change before beta! For now, for the alpha, I've marked Workflows as beta stability.
Comment #21
timmillwood😭 I thought we were so ready (and very close with Content Moderation), but I guess not.
Will keep trying, and maybe we can get them both stable for 8.4.0-beta1
Comment #23
dixon_Comment #24
timmillwoodAll outstanding issues are for Content Moderation, so there's no reason to hold Workflows module back.
Comment #25
Wim Leers#2899553: Architectural review of the Workflows module (documentation cleanups) needs to be committed first though.
Comment #26
timmillwoodAh, damn, missed that. Thanks.
It was the Content Moderation Architectural review which had been committed, not the Workflows one.
Still going to leave as RTBC, but yes, we need #2899553: Architectural review of the Workflows module (documentation cleanups) committed first.
Comment #27
Wim LeersNo problem, easy to overlook — it's been RTBC for 2 weeks.
Comment #28
amateescu CreditAttribution: amateescu for Pfizer, Inc. commentedThe patch from #18 needed a reroll.
Comment #29
timmillwood#2899553: Architectural review of the Workflows module (documentation cleanups) is in now, so this is truly RTBC now, and we're ready to mark Workflows as stable!
Comment #30
xjm@catch and I agreed around the release of the alpha that the Workflows module was probably ready to be stable once all the must-haves were completed, based on its limited outstanding technical debt. (It's possible that some Workflows issues are actually filed against the
content_moderation.module
component, but on a 30s scan of that module's queue I only found one issue that needed to be moved.)@webchick also signed off on the two remaining UI "should-have" issues, #2830584: Use modals for creating, updating, and deleting workflows, with a new DialogFormTrait and #2758623: [meta] Redesign workflow configuration page to better visually describe the flow, being okay as feature additions for 8.5.x+ if we mark Workflows stable in this release.
Normally, we would not add a new stable module to core after the beta deadline, but in this case, we already announced in the release notes that Workflows would probably become a stable module for 8.4.0.
I tried to commit this, but it does not apply even with @amateescu's reroll. :)
Comment #31
amateescu CreditAttribution: amateescu for Pfizer, Inc. commentedThe patch needed another reroll after #2899553: Architectural review of the Workflows module (documentation cleanups).
Comment #32
xjmOkay, take two. Starting from where I left off in #30:
hook_help()
, while a bit short, is at least not an empty stub. The linked handbook page at https://www.drupal.org/docs/8/core/modules/workflows is also pretty thin, but does contain some information, including the important point that Workflows itself isn't going to be that useful and that Content Moderation is where the features are at. Ideally I'd want to see a bit more information, like:If someone wants to fix the handbook page by moving that one section over from Content Moderation (and then just having the Content Moderation handbook page link it), plus adding the definitions of the three terms, I think this is ready!
Comment #33
xjmCome to think of it, the definitions of workflows, states, and transitions should probably go in the
hook_help()
directly.Comment #34
jibranFor the views module we have links like this
/admin/structure/views/view/content
and for the workflows module we have links like/admin/config/workflow/workflows/manage/editorial
I think it should be/admin/config/workflows/workflow/manage/editorial
. Thoughts?Comment #35
timmillwood@jibran -
/admin/config/workflow
route is actually defined by core and not the Workflows module, so I'm not sure we can make this change.See system.routing.yml:
Comment #36
Sam152 CreditAttribution: Sam152 as a volunteer and at PreviousNext commented"workflow" is the category and "workflows" is the module name, so I think this is fine.
Comment #37
timmillwoodSorting out the docs pages.
Comment #38
timmillwoodI've moved over the docs items from Content Moderation to Workflows, and updated
hook_help()
to explain what a workflow, state, and transition is. Assigning to xjm for review.Comment #39
jibran@timmillwood that's fine but don't you think
/admin/config/workflows/workflow/manage/editorial
makes more sense?Comment #40
timmillwood@jibran - yes, I am not disputing your logic, just that we can't change
/admin/config/workflow
to/admin/config/workflows
because this path is handled by system module, and not by workflows module, therefore other contrib modules might be using and depending on it.Comment #43
xjmBTW I agree the IA for workflows could use improvement. Workflow, Workflows, Workflows, Workflows! :) But I think that can happen in any minor and doesn't need to block the module being marked stable. @jibran, can you maybe file an issue for that?
Thanks @timmillwood for the updated docs. I think this is ready!
Fixed a coding standards error on commit:
Comment #44
Wim LeersYAYYYYYYY!!!!!!!!!!!!!!
But … I'm very sorry, but …
These should not have been removed. they still have a
@todo
. Can we just revert these two hunks?Comment #45
xjmHm yep, in an earlier patch those hunks were not removed; accident in the reroll I guess. @Wim Leers, can you provide a followup patch? That would be easiest.
Comment #46
timmillwoodYou're right @Wim Leers, here's a patch.
Comment #47
webchickSending to testbot.
Comment #50
xjmCommitting this from NR since it's just a followup. ;)
Fixed the formatting on commit:
Thanks!
Comment #51
Wim Leers🎉