Skip to content
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

Renamed Hudson to Jenkins in UI #6797

Merged
merged 1 commit into from Jan 9, 2024
Merged

Conversation

rothardo
Copy link
Contributor

@rothardo rothardo commented Dec 6, 2023

Description
In the UI, Hudson was seamlessly renamed as Jenkins without altering any directory, cluster, package, or method names.

Why was it required?
Hudson is no more but NetBeans is still using it in the UI:

FIxes the Issue
Rename Hudson to Jenkins #6628

Modifications made to

ide/hudson
ide/hudson.git
ide/hudson.mercurial
ide/hudson.subversion
ide/hudson.tasklist
ide/hudson.ui
php/hudson.php

After Changes in the UI it looks like this:
Screenshot 2023-12-06 133704

Screenshot 2023-12-06 133644

And as stated above Hudson renamed as Jenkins without altering any hudson directory, cluster, package, or method names:
Screenshot 2023-12-06 133734

By opening a pull request you confirm that, unless explicitly stated otherwise, the changes -

  • are all your own work, and you have the right to contribute them.
    Yes
  • are contributed solely under the terms and conditions of the Apache License 2.0 (see section 5 of the license for more information).
    Yes

@mbien mbien added CI Continuous Integration UI User Interface ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) labels Dec 6, 2023
@mbien mbien added this to the NB21 milestone Dec 6, 2023
@mbien mbien linked an issue Dec 6, 2023 that may be closed by this pull request
Copy link
Member

@mbien mbien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good so far - thanks for working on this.

regarding paperwork:

the commit should have your full name next to the email address, you can check it by looking at the patch: https://github.com/apache/netbeans/pull/6797.patch where you see only your nickname, feel free to force push into this PR after fixing it locally. This wiki page has some instructions in the bootstrap section.

@lkishalmi
Copy link
Contributor

The artwork needs to be changed as well. Hudson and Jenkins have different mascot.

See: https://get.jenkins.io/art/jenkins-logo/16x16/

@rothardo
Copy link
Contributor Author

rothardo commented Dec 7, 2023

I have pushed changes after making changes as told, was that the right thing to do? I am asking this as I am new to the community

@mbien
Copy link
Member

mbien commented Dec 7, 2023

I have pushed changes after making changes as told, was that the right thing to do? I am asking this as I am new to the community

thats fine during review, but before merge it would be good if you would squash everything locally to one commit, make sure the commit message is how you like it and then force push into the PR. This PR would have to do that anyway, due to the commit author field, see #6797 (review)

@rothardo
Copy link
Contributor Author

rothardo commented Dec 9, 2023

Hi @mbien,

I've gone through the contributing guidelines for the NetBeans project and I'm seeking some clarification on the squashing process. I attempted to squash my commits interactively in Vim, but encountered conflicts during the process.

Specifically, I'm puzzled by an unexpected commit in the pull request 6797. In commit 8916655, I reconfigured the author's name. Subsequently, when I executed git pull, I noticed an automatic commit Merge branch 'apache:master' into hudsontojenkins.

Could you please provide further guidance on the squashing process and help me understand why the mentioned merge commit was automatically generated? I want to ensure that I follow the correct procedures and address any issues promptly.

Your expertise in clarifying this matter would be greatly appreciated.

@mbien
Copy link
Member

mbien commented Dec 9, 2023

I assume you fixed the global git config already, you can check with git config --list --global

here is how I would do it:

lets put your commits on top of latest master (this changes the history in your branch, but we have to do this anyway):

check out your branch locally (you likely already have that)
run:

$ git pull --rebase --autostash git@github.com:apache/netbeans master
From github.com:apache/netbeans
 * branch                master     -> FETCH_HEAD
Current branch hudsontojenkins is up to date.

check with:

$ git log --oneline
bd3116056 (HEAD -> hudsontojenkins) Renamed Hudson to Jenkins
cb4ff7ed2 Fixed the Issue of Renaming Hudson to Jenkins without changing any directory or method names
b6a064d59 (origin/master, origin/HEAD, master) Use Ant for building NetBeans Gradle Tooling
775f0f0ea Merge pull request #6765 from mbien/maven-dep-hint-profiles
1b075fe0c Merge pull request #6748 from matthiasblaesing/jpa_provider_on_classpath
...

so you see that your 2 commits are indeed on top of all other commits.

now lets squash the 2 commits:

$ git rebase --autostash -i HEAD~2

this will open an editor with instructions. For this use case here, you have to change "pick" into "s" on all commits except the commit in the first line (so only the second line basically). This will squash the second commit into the first and then ask you to update the commit message, which you should do.

lets check again:

$ git log --oneline
be2399296 (HEAD -> hudsontojenkins) Fixed the Issue of Renaming Hudson to Jenkins without changing any directory or method names
b6a064d59 (origin/master, origin/HEAD, master) Use Ant for building NetBeans Gradle Tooling
775f0f0ea Merge pull request #6765 from mbien/maven-dep-hint-profiles
1b075fe0c Merge pull request #6748 from matthiasblaesing/jpa_provider_on_classpath

worked!

Now lets fix the commit header, since it would still have the wrong name:

$ git log --oneline -n1 --pretty=format:'%h %an [%ae] %s'
be2399296 rothardo [ashwintemkar@gmail.com] Fixed the Issue of Renaming Hudson to Jenkins without changing any directory or method names
$ git commit --amend --author="Your Name <yourmail@foo.bar>"

check with git log and everything should be fine now

now to push, you have to add the -f. This will overwrite the remote branch (this is a destructive change).

git push -f git@github.com:rothardo/netbeans hudsontojenkins:hudsontojenkins

and the changes should land here

@mbien
Copy link
Member

mbien commented Dec 9, 2023

@rothardo you don't have to push merge commits right away, its ok if the branch is a little bit out of date.

@lkishalmi
Copy link
Contributor

@rothardo you don't have to push merge commits right away, its ok if the branch is a little bit out of date.

Well, let's keep the number of commits minimal for a PR. Unless there is no conflict, or a dependency, you do not need to merge anything back from the master branch. In those rare cases when needed, it's better to do a rebase instead of adding a merge commit.

Since you are working on your own branch, it is Ok to amend a previous commit. This way most PR-s would be only 1 commit. That way you simply skip the squashing.

@rothardo
Copy link
Contributor Author

Hello, @mbien Could you please confirm if this issue still requires changes? If not, could you kindly guide me through the procedure for making this more merge ready?

Thank you.

@mbien
Copy link
Member

mbien commented Dec 13, 2023

@rothardo we have to figure out how to handle property file keys, since this PR here does currently rename a few but not all which makes it inconsistent. But I leave this to other reviewers to decide, esp those who wanted to make this change only in UI instead of a full rename.

edit: CI for this PR does also create a dev-build zip (e.g: https://github.com/apache/netbeans/actions/runs/7164936342?pr=6797) which can be used for manual testing. I haven't checked it yet, maybe there are more icons to change but I hope not ;)

@matthiasblaesing
Copy link
Contributor

I already stated, that I think we should only follow the name change on the surface. And it seems this PR is mostly in line with that. IMHO we gain little renaming packages or other things. We risk though internal breakage as we have sites that refer to modules, options, translations by name and these are hard to catch.

Going through this PR @rothardo I notice:

  • What is the license of the image instance.png? The old was part of the donation from Oracle and thus relicensed to ALv2. A quick glance did not give me info about the license situation around the logo, the press page from Jenkins has a lot of yada-yada, but nothing substantial. I looked at the PNG and SVG both don't seem to have licenses attached. At least in my home country this makes the work non-redistributable.
  • In most files only UI strings were changed. This is different in, were also the keys are changed:
    • ide/hudson.ui/src/org/netbeans/modules/hudson/ui/wizard/InstanceDialog.java: UI_JENKINS_SERVER_REGISTERED and USG_JENKINS_SERVER_REGISTERED
    • php/hudson.php/src/org/netbeans/modules/hudson/php/resources/Bundle.properties (+ use-sites): LBL_JenkinsExportName
    • php/hudson.php/src/org/netbeans/modules/hudson/php/ui/options/Bundle.properties (+ use-sites): BL_JenkinsPHPOptionsName

All in this looks sane to me.

@rothardo
Copy link
Contributor Author

Hi @matthiasblaesing ,

I wanted to provide you with an update on the PR.

I have addressed the concerns raised during the review process, and I've reverted the keys that were changed, and most modifications are limited to UI string updates, aligning with the consensus that we should primarily follow the name change on the surface to minimize internal breakage.

I've initiated discussions on the Jenkins community forum regarding the licensing of the logo. The press page on Jenkins provides some information, but it's not conclusive. I believe obtaining clarity on this is crucial.

If you have any additional insights or thoughts on these matters, please do share them with me.

Thank you for your ongoing support.

@rothardo
Copy link
Contributor Author

Hi @mbien and @matthiasblaesing ,

I wanted to update you on the licensing clarification I received regarding the Jenkins artwork used in the Apache NetBeans contribution. Mark Waite, a member of the Jenkins Governance Board, provided insights into the licensing terms, which are detailed on the Jenkins Artwork page.

I've received clarity on the licensing terms for the Jenkins artwork used in the Apache NetBeans contribution. According to the Creative Commons Attribution-ShareAlike 3.0 Unported License, the artwork, i.e instance.png is redistributable with specific conditions.

The licensing details are as follows:

License: Creative Commons Attribution-ShareAlike 3.0 Unported License
Terms: You are free to share and adapt the material for any purpose, even commercially, under the conditions of attribution and share-alike.

Now I would like to seek your guidance in incorporating the recently obtained license information for the Jenkins artwork into the ide/hudson.ui/licenseinfo.xml file. Can you specify the appropriate structure or format for including this licensing information in the XML file?

@matthiasblaesing
Copy link
Contributor

@rothardo thanks for staying with this. My proposal how to handle the logo would be:

92b2c2b

That is in https://github.com/matthiasblaesing/netbeans (branch: pr-6797) feel free to squash into your changes, if it makes sense to you.

@rothardo
Copy link
Contributor Author

rothardo commented Jan 7, 2024

@mbien and @matthiasblaesing I have force Pushed with the update in OpenIDE-Module-Name in all involved modules.

Copy link
Contributor

@matthiasblaesing matthiasblaesing left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me this looks sane.

@rothardo thank you for the update
@junichi11 @lkishalmi @mbien what do you think? Do you have objections to merging this?

Copy link
Member

@mbien mbien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, no objections.

plugin search works now too:
image

Copy link
Member

@junichi11 junichi11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left comments about the URLs.
Other than that, it looks good to me.
Thank you for your work!

@rothardo
Copy link
Contributor Author

rothardo commented Jan 8, 2024

I've left comments about the URLs. Other than that, it looks good to me. Thank you for your work!

@mbien should I change the URLs too as per @junichi11 's comment?

@mbien
Copy link
Member

mbien commented Jan 8, 2024

@rothardo yes, please do so. change http://hudson-ci.org/ into https://www.jenkins.io/ and remove the dead link http://wiki.netbeans.org/HudsonInNetBeans

@rothardo
Copy link
Contributor Author

rothardo commented Jan 9, 2024

@mbien I have completed the necessary changes as adviced

@mbien
Copy link
Member

mbien commented Jan 9, 2024

thanks, I looked through the comments and diff and it looks like all were resolved. Going to merge once CI is green.

@rothardo congrats to your first contribution

@mbien mbien merged commit 7cda5ed into apache:master Jan 9, 2024
34 checks passed
@rothardo
Copy link
Contributor Author

rothardo commented Jan 10, 2024

@rothardo congrats to your first contribution

Thank you, @mbien @matthiasblaesing @junichi11 @ebarboni @lkishalmi
and the entire NetBeans Community, for guiding me through my first contribution! I appreciate your time and support. Looking forward to more contributions and learning in this fantastic community.

@junichi11
Copy link
Member

@rothardo Congrats!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) CI Continuous Integration UI User Interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rename Hudson to Jenkins
6 participants