Closed (fixed)
Project:
Revisioning
Version:
7.x-1.0-beta1
Component:
Code
Priority:
Normal
Category:
Task
Assigned:
Issue tags:
Reporter:
Created:
22 Jan 2010 at 23:04 UTC
Updated:
3 Jan 2014 at 01:08 UTC
Jump to comment: Most recent
Hey Rik and everyone,
Just wanted to check in and see about plans for a port of Revisioning and Module Grants to Drupal 7....
Hope all is well,
Ben
Comments
Comment #1
rdeboerHi Ben,
All's well thank you.
I'm doing quite a bit of refactoring at the moment, reorganising the code to get to a point where it will be easier to do the integration with Views.
I won't start a Drupal 7 port until I've created a better code base to do so and the Views integration is in.
Also, especially with respect to Module Grants we have to see whether any much-needed mods to core's permissions have come through in D7. These might require a different approach for what Module Grants aims to do.
So, in short I do have plans to port to D7, but won't start on it just yet.
Rik
Comment #2
BenK commentedHi Rik,
Thanks for the update. I really appreciate it. As for related Drupal 7 core changes, you might take a look at the following thread (with patches):
Enable Node Grants for Unpublished Nodes
http://drupal.org/node/452538
Actually, the Module Grants module is referenced several times on that thread.
Cheers,
Ben
Comment #3
BenK commentedHey Rik,
Just thought I'd check back in on the D7 port now that the first Drupal 7 beta release is right around the corner (scheduled for May 21). Does much work still need to be done to improve the Revisioning code base before starting the D7 port?
Cheers,
Ben
Comment #4
rdeboerHi Ben,
I reckon, the code base is now in good nick and ready to be ported. I'm not sure whether I am ready though....
Rik
Comment #5
johnpitcairn commentedSubscribe. I'm considering implementing a site with a 6-month lead time in Drupal 7, but Revisioning will be crucial.
Comment #6
Ellen Dee commentedsubscribed
Comment #7
finex commentedsubscribe
Comment #8
BenK commentedHey Rik,
Thought I'd stop by and check back in. Now that Drupal 7 RC1 has been released, are you ready to start the porting process? I can, of course, volunteer extensive and comprehensive testing if there's an initial patch to start with.
Also, what are your thoughts on the D7 port. Maybe drop dependency on Module Grants in D7 version?
--Ben
Comment #9
smls commentedsubscribe
Comment #10
binford2k commentedSubscribe. I'd really like a D7 version for Christmas :)
Comment #11
rdeboerI would have liked it for St Nicholas (5 Dec)..... <nostalgic youth sentiment>
Comment #12
binford2k commentedCan I do anything to help?
Comment #13
azol commentedsubscribing
Comment #14
rdeboerWhat has stopped me from having done a D7 port is spare time and funding. Right now I cannot afford to drop my daytime job and do this totally unsubsidised.
Comment #15
binford2k commentedI'll chip in a bottle of spiced wine and a can of Cougar Gold cheese from WSU. (http://www.wsu.edu/creamery/)
Comment #16
michaellander commentedRde, would you consider putting a d7 dev version up so we can start submitting patches? I would be happy to devote my free time toward helping wherever I can. If we get enough people involved, we may be able to port it without you having to quit your day job!
Comment #17
azol commented(Changed issue title to be dashboard-friendly.)
In fact, I needed similar functionality in D7, so I created a Revision Moderation module D7 port, but it seems like that module wasn't getting any attention from maintaineer for quite a while.
So I am looking currently at this module which offers similar functionality. Any update on the status from maintaineer would be great.
Also, if you consider to start porting it to D7, which branch would you begin with (shouldn't it be current HEAD 6.x-2.x-dev?)
I can offer some of my time to create an initial patch, but only if you feel like regularly updating this module and moving HEAD to D7 codebase, so patches would be rolled against HEAD and backported to D6.
P.S. Views integration - do not wait until it's complete and working. The initial patch should deal with core module functionality only.
Comment #18
rdeboerHere's the plan. To get a better idea of how laborious or non-laborious the task is going to be I'll port one or two of my smaller (unrelated) modules to D7 in January.
Then I'll assess, estimate the effort and set time aside to port Revisioning and Module Grants to D7.
@binford2k, #15: thanks for the offer, but fear the goods may perish during transport! -- just keep up the good work with testing and feedback instead
Comment #19
michaellander commentedThanks for the update Rde. Your work is very much appreciated.
Would you consider creating a dev build so that others can perhaps take some of the load off? If we go through and comment each function about it's drupal 7 status, and comment if it needs no changes, minor changes or completely reworked, then maybe we can all help you get it ported over? I've already started going through it to fix anything the coder module is spitting out. Hell, you could even start by just setting statuses to 'Unknown' and others can update them as they submit patches.
Comment #20
didox commentedSubscribing
Comment #21
izkreny commentedSubscribing and ready to help w/ testing. :)
Comment #22
rafal_p_s commentedTommorow D7 is comming to us.
Is there any chance to port module Revisioning to that time ?
Comment #23
izkreny commented@rafal_p_s: please read #18 for your answer.
Comment #24
binford2k commentedThis is in no way a replacement for this module, but in the short term I needed (really needed) some sort of revision moderation. Azol and I updated the Revision Moderation module to work with D7. #995876: Revision Moderation Drupal 7 port Please report any bugs you find there, so I can address them.
I can't wait to switch back to Revisioning.
Comment #25
bigdave commentedsubscribing
Comment #26
benanderson commentedsubscribing
Comment #27
brianV commentedSince it appears the RdeBoer does not have time to do the port himself, let's help him out.
I've created a github project holding a copy of the current D6 code from CVS. Feel free to use this as a starting point for some D7 conversion work:
https://github.com/brianV/Revisioning-D7-Port
Feel free to fork it and make changes and send pull requests - I'll pull in whatever D7-related changes that are necessary; alternatively, if anyone wants commit access, let me know and I'll add you.
Any work we do here can be easily pulled by RdeBoer into the official d.o repository when he wants to, especially once d.org moves to git in the next few months.
@RdeBoer: I hope this move doesn't step on your toes; however, this seems like a good way to harness open source to get this module ported, and ease your workload a bit.
Comment #28
crispinbailey commentedsubscribing - love this module :)
Comment #29
michaellander commentedI've got it about 75% converted. You can currently create new revisions, and create new draft revisions. The revisions tab displays a list of revisions and correctly identifies the active revision. However, I still need to resolve how to render the additional links and the form on the revisions tab. My version thus far is basically an exact port, and there are quite a few spots that I think can be cleaned up quite a bit.
I'll clean up my code a bit tomorrow and put it on github and perhaps someone with more knowledge of the render and theme functions can step in and help me with it. I think the theme system is probably my biggest weakness so it may be rather easy for someone else.
Comment #30
BenK commented@mikegfx: That's great to hear you've made a lot of progress. Very cool. How did you deal with the Module Grants dependency in the D7 version?
--Ben
Comment #31
michaellander commentedBenK, for now I just updated node_tools. I may however just take the needed code out completely and put it into revisioning. I've not checked on the status on module grants at this point. My approach was to first go through and update the things that the coder module alerted me to. I then just went through and started fixing things that were broke(basically error message by error message). I think once we get it functioning at a basic level, it will be a lot easier to go in and clean up everything because we can then just use devel to view vars/backtrace, etc without having to worry about errors.
Comment #32
rdeboerThanks everyone for your continued interest in Revisioning and for getting the D7-port ball rolling with an initial cut.
I'm tied up for another 2 weeks (including the http://drupaldownunder.org conference), but have set most of February aside to work full time on all things 7, including the Revisioning port..... which at the rate at which you guys are going may have been done by then!
Comment #33
michaellander commentedIf anyone wants to start tinkering with what I have, check here:
https://github.com/mikegfx/Revisioning-D7-Port
I wanted to clean it up a bit more before making it available, however I'll likely not have time to do so until early next week so I decided to share what I have.
I added @TODO's in to many of the areas that need major work still. I also put the node_tools module inside of the folder temporarily just so that it will work, however I'll leave it up to Rde on what he ultimately wants to do with node_tools/module_grants.
This is in no way ready for any production environment so don't even think about trying.
Comment #34
j0k3z commentedsubscribing
Comment #35
jduguid commentedsubscribing
Comment #36
rdeboerAll,
As a warm-up to the Revisioning D7 port I've ported one of my smaller modules to D7, see #1052590: Extended Path Aliases: D7 version may now be downloaded..
I hope to start porting Revisioning this week coming.
Rik
Comment #37
highfellow commentedSubscribing.
I'm just making a start on a new site which will need this feature, and am also hoping to use drupal 7 if possible. I will be working on this project in my spare time, so I'm not in a desperate rush. May be able to help with debugging or coding, though my php skills are pretty basic.
Comment #38
finex commented@RdeBoer: wow! This is a great news! I'm available to help with testing.
Comment #39
michaellander commentedGreat news RdeBoer! I've been unable to get back to the port I was working on. Are you planning on doing a straight port to start? or are you going to start fresh? I'd like to help in any way possible. My schedule should be clearing up again soon.
Comment #40
rp7 commentedsubscribe
Comment #41
rdeboerWorking on it!
Comment #42
bforchhammer commentedsubscribing
Comment #43
rp7 commented@RdeBoer: Are you done yet?
j/k of course :) any timeframe? I'm in for testing.
Comment #44
carwin commentedsubscribe
Comment #45
mckramer commentedsubscribing
Comment #46
adaddinsanesubscribing
Comment #47
BarisW commentedSubscribing as well ;)
Comment #48
rdeboerUpdate:
I have started on the port.
However I won't have much time in the coming weeks because I'm attending DrupalCon and will then take a holiday.
Rik
Comment #49
highfellow commentedIs there anything anyone else can do to help?
I was thinking that if you created some tasks in the issue queue and pasted the links into this thread, then people could take on individual tasks and some of the work might be done by the time you return from holiday. This module will be essential for the site I'm working on, so I'm keen to help if I can.
andy (ganglion)
Comment #50
rdeboer@ #49
Thanks for your help Andy. I suspect that the overhead of coordinating these contributions before there is a first cut might take longer than sitting down and hammering out the initial draft. Once that's there, bug fix patches will of course be more than welcome.
Rik
Comment #51
michaellander commentedHey RdeBoer, just to bring to your attention. I came across this module collection earlier that seems to being trying to do something similar:
http://drupal.org/project/workbench
http://drupal.org/project/workbench_access
http://drupal.org/project/workbench_moderation
Perhaps you guys could join forces? Whichever is easiest for ya.
Comment #52
azol commentedAnother likely choice would be already mentioned Revision Moderation #995876: Revision Moderation Drupal 7 port, which already has full working Drupal 7 port. It lacks some of the integrations this module has, but really, I fail to see the need to have both modules at the same time - their functionallity is 80% the same.
Comment #53
rdeboer@ #51,52
Thanks mikegfx, Azol,
Agree... and then there's http://drupal.org/project/maestro (also for D7), which has a very nice graphical interface to create and display workflows...
Comment #54
binford2k commentedRe maestro, it's definitely graphical, but I'm not sure I'd call it nice.
Workflow Moderation is *almost* there, but it doesn't handle fields properly yet and it doesn't fire triggers. (I'm working on a patch for that)
Comment #55
colanRdeBoer: Have you taken a look at Workbench yet? I was too busy with BoFs to go to the session at DrupalCon, but I just watched the video. If I had, I would have asked them to comment on Revisioning. (There's also a short screencast on Palantir's blog.) It looks like Revisioning with some additional sectional stuff.
Perhaps it would be simplest to write some patches for Workbench if it's missing anything that Revisioning has. It would be a good opportunity to merge multiple projects into one, mostly because they're already throwing considerable resources at this problem, and seem to have more time for this than the rest of us.
If this approach works for folks, and they accept our patches, we can deprecate this module for D7, and direct everyone over there.
Comment #56
johnpitcairn commentedWhile I agree that Workbench looks promising, there are going to be a lot of sites running Revisioning in D6 that will sooner or later need an upgrade path. Might be a bit tricky if the advice is "use Workbench"?
Comment #57
binford2k commentedI am now using workbench moderation. Out of the box, it cannot do several of the things that revisioning does. I've contributed some patches (that have not been incorporated into HEAD yet) that help. I added trigger support and a couple tokens, for example. This allows you to send emails on state transitions. I haven't done rules yet though, which would allow you to define more complex workflows (such as sending mails only to certain groups based on the to/from states and the taxonomy terms). When I have time, I will add this, because that workflow would be great for our organization.
Overall, it's a very nice module though, and it's doing just about everything I need.
Comment #58
johnpitcairn commentedHaving now viewed the Workbench presentation more fully, my main reservation is that compared to Revisioning, it's just way too complex and modal for my "average" editor. Their heads will explode, and their bosses won't pay for the amount of training and re-training they'll need to use it.
At present I have a fairly nice little workflow with Revisioning plus a custom module for a few additions/modifications, that doesn't show my average editor more than they need to see, gives them some more intelligent revisioning tabs on the node revision view, and allows them to see the draft in context (ie as it will appear) and publish from there.
It seems to me that Workbench is aimed squarely at large, complex institutions with established heirarchies/groups of users. It's total overkill for a smaller firm that may have just one or a few editors, but still needs reasonably sophisticated draft/publish ability with as simple a workflow as possible.
So still +1 for Revisioning D7 from me.
I don't yet have any D7 sites in dev, but there might be one soon, and at that point I'll definitely be available to look at specific issues if the port has gotten that far.
Comment #59
binford2k commented@johnpitcairn, did you try using workbench moderation by itself? It doesn't need the whole framework.
Comment #60
johnpitcairn commentedNo I didn't. I'll look into that, thanks.
Comment #61
rdeboer@johnpitcairn, @binford2k
I agree that for continuity and ease of transition to D7 most current D6 installs of Revisioning would probably benefit more from a Revisioning D7 port than a switch to an "unknown" entity like Workbench -- why change a winning team?
I will do my best to complete a first cut of the Revisioning D7 port ASAP, but am currently on holiday after an intense DrupalCon Chicago, so bear with me.
Workbench seems to have its merits though and for those starting with publication workflows for the first time, Workbench is a platform with potential, as is Maestro. Both may require some changes or additions to work well in most publication workflows.
It will be a challenge to come up with a generic solution that is neither too simplistic nor too complex for everyone, but that doesn't mean we should stop trying!
@johnpitcairn #60:
Look forward to your findings re workbench_moderation by itself
Comment #62
rdeboerI have just locked myself up for three days in a cow-milking shed (not joking!) in country Victoria for the sole purpose of getting the Revisioning port to D7 done.
It's been a hard slog as so many fine details have changed under the hood going from D6 to D7, many more than listed here: http://drupal.org/update/modules/6/7, I can tell you!
The good news is that I should have a basic version ready this weekend, which I'll load into Git straight-away. Maybe it will be good enough as an alpha. Then we have at least a solid common base to work from. Once the basics have tested ok I will then revisit the issue queue and start incorporating (both D6 and D7) the various fixes and useful snippets people have contributed over the past months.
Onwards and upwards!
Rik
Comment #63
binford2k commentedCongrats! This is a good day!
Comment #64
BenK commentedAwesome news, Rik! I'm looking forward to testing....
Comment #65
rdeboerOk, I've checked into the Git repository what I have so far and created a 7.x-1.0-alpha1 release.
The state of affairs with this alpha release is, as far as I can tell, as shown below. Please correct me when you find otherwise and I will address.
The D7 version of Revisioning has no programmatic dependencies on other modules, but enabling the Views module is highly recommended -- it gives you a configurable content summary with revision-specific info.
The code passes the Coder rules.
Documentation has been updated, with a dedicated step-by-step section for D7: http://drupal.org/node/408968
Working (more or less -- haha!) are:
o basic functions, forms, tabs & links, buttons, permissons
o /content-summary Navigation menu item (a canned ready-to-use View)
o pending revisions block
o comparing revisions via the Diff module
o CSS markup
Not working yet:
o Triggers and actions
o French and German translations
Not tested:
o Tokens
o Rules integration
o TAC-Lite integration
Not applicable (yet)
o Interface with Workflow, TAC (no D7 versions)
o Module Grants interface
Comment #66
rdeboer7.x-1.0-alpha2 now available.
All major functionality is there.
Known bug: the "Publish pending revision" action. Will fix soon.
Comment #67
ericras commented@RdeBoer - looks like what I'm looking for for D7.
However, in following the example for D7 on http://drupal.org/node/408968 when the Author edits an existing node (a 'policy' content type I created in my case) the new revision is instantly published without having been approved by the Moderator.
The revision list (/node/23/revisions) will look correct with the latest edit having status 'in draft/pending publication' and the previous revision status of 'current revision (published)' but the public anonymous view displays the draft revision.
I'll create a tracker item for this under version 7.
Comment #68
rdeboer@ericras
Thanks for logging this. Will investigate asap and fix.
Please don't use this issue to report bugs. Please create another issue for this so that it can be tracked separately.
Comment #69
rdeboerRe #67, #68
Issue fixed. 7.x-1.0-alpha5 is starting to get pretty stable
Permissions page is now a lot clearer to use due to possibility in D7 to add explanatory comments to each of the permissions.
Comment #70
rdeboerConsider this item done, now that beta is out.