Active
Project:
PNG Fix
Version:
6.x-1.x-dev
Component:
Miscellaneous
Priority:
Normal
Category:
Support request
Assigned:
Unassigned
Reporter:
Created:
8 Dec 2008 at 22:22 UTC
Updated:
4 Jun 2011 at 00:09 UTC
PNGFix is broken and it would be awesome to have only one module that does what both PNGFix and PNGBehave are trying to do. So, could we somehow merge the projects? It seems like some of PNGBehave was developed using PNGFix, so should we just move PNGBehave over to PNGFix and then make the project refer people over to it? Or the other way around?
See Duplicated Modules Hall of Shame for more information about why duplicating modules is a bad idea.
Comments
Comment #1
drewish commentedI've opened an issue in the drupal.org webmaster issue queue: #344537: pngbehave duplicate of pngfix
Comment #2
mrjeeves commentedI certainly understand the concern but would like to point out that PNG Behave only uses a few little snippets from PNG Fix's Drupal integration and does not implement jQuery at all. I have personally created a variation of the TwinHelix.com script for using css behaviors to fix PNG's while respecting and adjusting for padding. Usage of a css based system also allows for inheritance and exclusion. Please read the release notes/cvs messages for more information on the changes and upgrades I've made to both systems. I am certainly open to merging the projects but feel that considering the features offered, the PNG Behave module should be the new forum for this development. I would only be willing to work on the PNG Fix module if the back-end was replaced with the behavior scripts, which is more or less what PNG Behave is. That being said, I would be very excited to work with more people on the development of this solution and will gladly respect the decision of the community.
Comment #3
robloachThere were three different methods we tried, each for the different branches, and all pretty unsuccessful. The DRUPAL-5--2 branch of PNG Fix attempted to use the TwinHelix solution you mentioned. mfer and I didn't get very far with it and gave up when we heard that people had success with the current "solution" in DRUPAL-5--3. Would've loved to have had your help with getting the DRUPAL-5--2 branch working though.....
Comment #4
mrjeeves commentedI see. It would appear that I missed that information while attempting to work with your pngfix module originally. I suppose the main reason I decided to make this module rather than propose a complete rewrite of your module was due to the size of the issue queue (not at all a fair basis in retrospect), and because I had a client pushing my door down for a solution to this issue.
Being very new to the drupal community, I found your module and attempted to implement. After several hours of pulling my hair out over the parent element necessity for certain instances, padding issues, tiled and repeated backgrounds, and auto sizing, I scoured the web for a solution that handled these issues. Many more hours later I began to see that other issues existed that I was not even aware of, for instance, dynamically altered/created elements and an instance I ran into with another module implementing a customized version of the jQuery solution which ultimately broke either PNG Fix or the module, depending on what order I called them in.
After reviewing the issue queue for PNG Fix only to find that most of my issues had already been reported with little or no solution (more of a jQuery issue than an issue with the maintainers), I spent even more time researching the various solutions found around the net and started testing them. In my tests, the twinhelix script came closest to fixing the majority of issues presented by users of the other scripts and seemed to be the best place to start since it correctly handled dynamic elements and background tiling/position.
6 versions and 3 days later I had the 1.5 version of PNG Behave with the rest of the missing functionality implemented. The 5.x module was released only days later. This has all been more of a history lesson than a real argument one way or the other, but I felt it necessary emphasize the pressure I have been under from my client coupled with the large list of issues logged under PNG Fix.
Now, that being said, I am the newcomer here and will support a merge either direction whole heatedly. My only argument is that PNG Behave is so far stable in all the testing environments and I am not entirely sure what merging would entail. As far as I can tell, the new PNG Fix would just be a copy of the systems I've already implemented in PNG Behave (though I am very open to hearing otherwise).
In closing, I wish this conversation did not seem to imply that I did not research the available solutions or consider developing patches for PNG Fix. The main reason I say it was developed using pieces of PNG Fix is due to the fact that I started out trying to isolate the bugs for repair and wound up with what I considered a new module (though it would appear that my information about PNG Fix and interpretation of a new module were both slightly off).
Comment #5
robloachOh no, it really is okay, it's just nice to have one module that does what it does really well instead of two modules that do the same thing well. The open letter is a great discussion of why it's good to consolidate modules.
I'm not saying that PNGFix is good, it's horribly broken. PNG Behave is much better ;-) . So, do you think we should just link people from PNG Fix to PNG Behave? Looking at the project usage report, we see that more people are already using PNGFix, so should we move it the other way?....... Any thoughts?
Comment #6
mrjeeves commentedThank you for your thoughts on the matter, I’m glad to see that a community of this size is able to internally consolidate codebases. That said, I’d like to provide a short list of reasons I see PNG Behave as the new home for this solution.
Thanks again,
Mr. Jeeves
Comment #7
stephthegeek commentedI tried PNGFix once and also found it horribly broken. I haven't yet tried out PNG Behave, but as someone who has EXTENSIVELY (ohh the hours of my life I'd like back) researched and experimented with the whole PNGs-in-IE6 issue, I strongly support the approach being taken by PNG Behave and the use of the TwinHelix script.
Have you outlined anywhere what you changed between the stock TwinHelix script and PNG Behave?
Comment #8
mrjeeves commentedChanges I've made are listed changelog style in the CVS messages, though each line changed is marked by comments starting with 'Chris Paul (mrjeeves):' in the files themselves (iepngfix.htc and iepngfix_tilebg.js). If it would help, I could compile a line-by-line alteration log or something similar. Let me know.
Comment #9
SeanBannister commentedI've used PNG Fix and noticed a few bugs, I'm keen to try out PNG Behave. I'd really like to see both modules merge.
Comment #10
todd nienkerk commentedI'm very interested to see where this is going. Subscribing.
Comment #11
mrjeeves commentedrob, after a few years getting my family going, my thoughts on this have changed. lets merge. i'm moving this to the pngfix issue queue to start things off.
Comment #12
klonos...less vague issue title. Subscribing.