-
Notifications
You must be signed in to change notification settings - Fork 264
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Porting devhelp plugin for gtk3. Working display in sidebar and main … #1242
Conversation
Fails on Linux. Please remove all build artifacts from the PR. |
What would that be? |
automate.cache for starters, also m4 files. |
MAINTAINERS
Outdated
@@ -61,6 +61,13 @@ M: Pavel Roschin <rpg89(at)post(dot)ru> | |||
W: http://plugins.geany.org/defineformat.html | |||
S: Maintained | |||
|
|||
devhelp | |||
P: Matthew Brush <matt@geany.org> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you got Matthew's agreement to be maintainer?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you got Matthew's agreement to be maintainer?
I sent him an email, but got no response.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then its rude to put him as maintainer, nominate yourself. If you are not willing to support the plugin you are proposing it will be less likely to be accepted back.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can I put my name and email in place of theirs and their authorization?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be clear, the plugin has been removed from Geany-plugins because it was not usable as it was and broke the build. You are effectively submitting a new plugin that is now usable, not Matthew.
He and any other authors retain copyright to the code that is reused, you can't change that, but it is licensed under the GPL allowing you to reuse it as you are retaining the GPL. That is the authorisation. What the maintainers file says has no impact on that.
Preferably you should use Git to show the changes from a position when the plugin was in the repository so the copyright is traceable. I am not a git expert so I have not considered exactly what that would entail, likely reverting the removal commits, then applying your changes on top of that.
The maintainers file is a list of contacts for the person who is willing to provide support (address issues, fix bugs, maybe add features) simply to make it easier for users to find such support. In many cases that is not the author. To avoid "drive by" plugin submissions they normally are not accepted unless the submitter is willing to stand behind their work (at least for a while).
What have you done to move the plugin to a supported version of webkit? It was deleted from geany-plugins because it used a version of webkit that was not supported by most distributions and nobody wanted to port it to the new version because IIUC the API changed significantly. |
I analyzed the functions of the new webkit and migrated. |
Neither Linux nor Windows CI passes, that needs to be fixed. |
Why are you building libdevhelp from a static source instead of using the libdevhelp distributed by the distro that is supported with security updates bugfixes etc? |
apologies for the delay. |
I accidentally closed the pull. |
How do I perform these tests before pulling? |
The CI runs on Ubuntu 20.04 [Edit: the dependency you ask for is the old version of webkit that is no longer available, so the CI doesn't even start] |
If you are using the library then remove the devhelp sources from the pull. |
ok |
I believe I found the place where I requested the old version of webkit. |
I can't find where this libwebkitgtk dependency is in the code |
Nup, you still tell CI to load libwebkitgtk-dev which does not exist any more. Its not in the code its in the CI setup, The Windows build doesn't fail (it uses a docker image with pre-installed deps), but devhelp does not configure, possibly because that image doesn't have the requisite dependencies. Maybe because of webkitgtk, @eht16 is there a even a webkitgtk for windows? Webhelper doesn't configure on windows either. |
PS because you are a new contributor Github requires that we manually enable each CI run, so there can be delays before it runs. |
how do i solve this? |
That by editing your changes to Windows, forget it, to answer my own question to @eht16 above, google can't find webkitgtk for windows, so it probably doesn't exist. |
I just edited the settings in the devhelp.m4 file. |
(/me slips into grumpy olde guy mode) How is For me |
sorry, |
The Windows build doesn't fail (it uses a docker image with
pre-installed deps), but devhelp does not configure, possibly because
that image doesn't have the requisite dependencies.
The Docker image is not really relevant here, it only has some
dependencies as some sort of cache. The workflow definition in the
project is the authority for installing dependecies.
Maybe because of webkit, @eht16 is there a even a webkit for windows?
Webhelper doesn't configure on windows either.
There is no more WebkitGTK for Windows:
https://lists.geany.org/hyperkitty/list/devel@lists.geany.org/thread/4DEVGI2ICZX7F7GE6FLSNNQF3Q6I2OP7/
The link in the post is broken, the correct one should be
msys2/MINGW-packages#4318.
So, the devhelp plugin won't be available on Windows at all.
EDIT: fixed the link to the mailing list archive above which got modified by Github.
|
ok, since the windows CI properly configures devhelp disabled there is nothing to do there. So @liomarhora this just needs to depend on a current package, possibly libwebkit2gtk-4.0-dev (what is installed here on old Mint). Then the CI should get to your code, as its working that should go smoothly :-). |
updated version of webkitgtk library in CI. |
Ahhh, now both Linux and Windows break, the @liomarhora Linux fail means you have a dependency on something else which you happen to have installed on your machine but which isn't on the CI machine, no idea what. |
I will check |
Is there a way to run the app on the CI of my fork before pulling it on the master? |
Possibly, but I don't know how, possibly a github expert can tell what needs to be enabled. |
I'll search |
|
hello, |
there was in the POTFILES.in file the path of the old devhelp library. But I already made the changes. |
Hello, |
what is the next step? |
You need to remove all the product files that have been committed. Anything that matches the patterns in geany-plugins |
I was kind of lost on how to do this removal. |
Manually with |
Before confirming I used the command git clean -fxd to remove the compiled files. |
there were 23 commits, so I ran git reset --soft HEAD~22 and deleted 96 files. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had a quick look and left a few comments.
Though this was no proper review, just a first look.
devhelp/Makefile.am
Outdated
@@ -0,0 +1,10 @@ | |||
include $(top_srcdir)/build/vars.auxfiles.mk | |||
|
|||
if GP_GTK3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the use of this switch? :D
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The plugin used an old devhelp library.
That's why this condition exists
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, I meant that both branches of the switch seem to do the same and so the switch is not necessary at all.
Additionally, Geany-Plugins are always using GTK3, we do not support GTK2 anymore.
devhelp/data/Makefile.am
Outdated
dist_plugindata_DATA = \ | ||
devhelp-plugin.svg \ | ||
devhelp-plugin-48.png \ | ||
geany-devhelp-plugin.png \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
geany-devhelp.png
is missing here or it is not used and can be removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The file is still not referenced here or am I missing something?
dist_plugindata_DATA
ensures that files listed here will be included in releases and get installed properly. If you do not add the image filename here, it won't be installed.
devhelp/doc/Doxyfile
Outdated
@@ -0,0 +1,1630 @@ | |||
# Doxyfile 1.7.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this file used anywhere?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still don't know the purpose of this file in the project.
Could you leave it like that?
In the future I will find out about his role in the project.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just delete it.
This is the configuration for Doxygen, a tool to generate API documentation for code. But it is unlikely to be necessary or useful in this context. If you at some point in the future want to use Doxygen, then it is eay to regenerate the config again from scratch.
This removed the commits only for you locally, they are still here in the repository. Just the delete (
I just approved the CI pipeline, so further pushes will be checked automatically. |
@liomarhora the problem was that you had committed some of those build files to your branch, perhaps you force added them. possibly |
Right. |
I made the modifications. |
Be a bit more patient until someone does a full review. |
All good. |
Hi, |
8b9bfcc
to
6227d2b
Compare
Porting devhelp plugin for gtk3. Working display in sidebar and main window. Missing showing SearchBar in sidebar or other tweaks.