mathiasverraes / jdump

J!Dump is a very easy to use debugging extension for Joomla developers and template designers. Download links below.
http://twitter.com/mathiasverraes
43 stars 25 forks source link

Any interest in jdump for Joomla 4.0? #39

Open schnuti opened 6 years ago

schnuti commented 6 years ago

I've used jdump over the years and really missed it as I reworked some of my own code for J4. I have now reworked jdump and you can have the code to use in this project if you like. It is now completely namespaced and is using the J4 structure. I can not promise to maintain it and will not make some kind of fork. It has the same functionality. Two changes:

  1. The popup opens in a browser tab. I had always problems with the browser window getting hidden.
  2. The plugin is activated/deactivated in the components backend view. i.e. deactivate it as soon as you are not "debugging" your code.

PS. I hade to change the command dump() ( to dumpVar() ) as dump is in use. DS.

Sophist-UK commented 6 years ago

@mathiasverraes - Please say yes.

gruz commented 6 years ago

Hi. @mathiasverraes has no opportunity to support it. But I have permissions to approve pull requests.

So I think it would be great, if @schnuti creates a pull request (in fact to replace the old code).

The only doubt I have is dump()->dumpVar() replacement. Does J4 use dump() function name? I personally have much code with dump() in it. It would be a pain for me to replace it with dumpVar(). But if there is no way out - it's ok.

@schnuti ?

mathiasverraes commented 6 years ago

Just here to confirm that you can work with @gruz to make new releases for J4, add features etc. Email me if there's some problem I'm the bottleneck for, but feel free to make all decisions amongst yourselves :-)

Sophist-UK commented 6 years ago

The only other thing to decide is whether there can be a single version for both J3 and J4 or whether the code can be common.

  1. If we are going to change dump() to dumpVar() then we should backport that to the J3 version.

  2. If we have common code then if dump() is already used by J4 we would then need to (somehow) hide that.

schnuti commented 6 years ago

I'm first talking about a Joomla 4.x version not any mixing. The Joomla 4.0 version can probably be backported to Joomla 3.Last (10?). Not anything else. You can choose any characters you want to replace dump(). This was a bad choise in the first place. dump is a very common word in this world. It should have bin "namespaced" like e.g. Fontawesome fonts. I followed the longer dumpMessage and Co and added Var to dump. Shouldn't also the component get the name com_jdump? EDIT: and the plugin jdump as well. It shouldn't come to any clashes. The code is in classes. (except the "shortcodes").

@gruz I hope it's possible for you to create a new branch and prepare for the auto packaging structure. I have no clue there. I so far zip my files manually, It is the same as the existing one down to components/com_jdump and administrator/components/com_jdump. The rest is completely changed.
A new path goes to media/com_jdump with directories css, images and js. The plugin path is the same plugins/system/jdump/ with a jdump.php and a jdump.xml.

It then should be possible for me to create a PR against that new branch.

gruz commented 6 years ago

@schnuti I'll write back after my main job in the evening. I've created a J4 branch, but I have not permissions to give you push permissions. So let's think how to behave better. Or I miss something.

@Sophist-UK If you have any thoughts, please share.

I have doubts. If the J4 code doesn't respect J3 backward compatibility, I don't see a reason to support 2 Joomla versions at the same time. I'd better maintain 2 independent projects. J3 for older projects with low acrvity (as it's now) and J4 with modern code.

@schnuti When you criticize the older approach of JDump, you criticize almosy 10 years old approaches. At that time Namespaces were not so obvious and widely used. Many thing were done in other ways, together with the project developers` experience. (-:

schnuti commented 6 years ago

@gruz That was not meant as criticism. Only as a hint that it from time to time is better to skip some old solutions. I do not see the necessity to be backward compatible more than Joomla itself for this kind of code. No data get lost on the way and the functionality remains. I've used JDump from time to time in those 10 years and made some coding for J1.5 without using any PHP classes.

Sophist-UK commented 6 years ago

I don't see a reason to support 2 Joomla versions at the same time. I'd better maintain 2 independent projects. J3 for older projects with low acrvity (as it's now) and J4 with modern code.

I agree.

schnuti commented 6 years ago

i see the two branches as different projects. Like Joomla 3.x and 4 beta lives in different branches. They will never be merged as one version. The 3.x branch will be kept at least until EOL. But this is up to you.

Sophist-UK commented 6 years ago

IMO it is not so much as how this is handled in Github as much as how it is handled in the JED.

schnuti commented 6 years ago
schnuti commented 6 years ago

I've made some changes to the UI. The about view is using Bootstrap, the tree view is using homemade CSS for buttons and SVG's as icons for buttons and tooltip. You can see the tooltip in the image. Mootools 1.2 is only used for the tooltip, not in the javascript.

About jdump-about

Tree jdump-tree png

gruz commented 6 years ago

@schnuti Cool! Please proceed (-: I'm overloaded at main job nowadays. I will definitely get involved in several days.

You doing a great job. Thanks!

schnuti commented 6 years ago

@gruz Well, I see it as completed from my side, except creating a PR against a repository for it.

schnuti commented 6 years ago

As I wanted some other icons I had to edit the tree-javascript. This made me remove half of the code (not used) and namespaced it. (namespace has different meanings ;) ) The old Mootools is removed, replaced with a simple message popup. All inline javascript (onclick) are removed. And all gif's replaced with svg's. Now I'm really through.

jdump-message

gruz commented 6 years ago

Awesome, @schnuti !

spurgeonbj commented 5 years ago

@schnuti Thanks a ton for your great efforts! This sounds cool. Is it possible for me to check this out? Where can I find the package/code?

schnuti commented 5 years ago

@spurgeonbj My intention was to get the code into this repository but never got sugesstions to how and where. Great if you want to test it/use it. I suppose I could upload the zipped installation package to my GitHub account somehow. Do you know?

I haven¨t tested with the latest Joomla 4.0 alpha versions. i.e. Joomla changes could force some minor bugs. I'm now awaiting the more stable Joomla 4.0 beta.

schnuti commented 5 years ago

@spurgeonbj I uploaded the zipped file to a repository. You can find it here: https://github.com/schnuti/files

The Readme has some short hints. Please let me know if it works.

spurgeonbj commented 5 years ago

@schnuti Thanks a ton for your quick and kind help! Will check this out today and revert shortly! God bless you!

schnuti commented 5 years ago

@spurgeonbj If you tested the package, it may not have worked. I installed J! 4.0 alpha 7 and my extensions were broken because of some changed php class-names. I've fixed it and could upload a new package if there is someone interested.

gruz commented 5 years ago

Upload please. Sooner or later we will use the code.

denvarel commented 4 years ago

Thank you, @schnuti !