README for Thunderbird (comm repository)
Categories
(Thunderbird :: General, task)
Tracking
(Not tracked)
People
(Reporter: ryan, Assigned: ryan, Mentored)
Details
Attachments
(1 file, 7 obsolete files)
|
11.77 KB,
patch
|
jorgk-bmo
:
review+
|
Details | Diff | Splinter Review |
We should have a README for the comm repository (aka Thunderbird) to help provide some guidance to those who pull down the source code.
The README should accomplish the following:
- Explain the Mozilla Codebase
- Teach how to build Thunderbird
- Teach how to run your build
- Point to how to contribute
- Explain how to submit a patch
| Assignee | ||
Updated•7 years ago
|
| Assignee | ||
Comment 1•7 years ago
|
||
Patch for the README, please review.
Comment 2•7 years ago
|
||
Updated•7 years ago
|
| Assignee | ||
Comment 3•7 years ago
|
||
Here is the patch with your previous review feedback included and the readme.html in the mail directory removed.
Comment 4•7 years ago
|
||
| Assignee | ||
Comment 5•7 years ago
|
||
Didn't actually mean to remove that sentence, just adjust it. New patch takes care of that Jorg.
Comment 6•7 years ago
|
||
| Assignee | ||
Comment 7•7 years ago
|
||
Magnus, this addresses the changes you requested and both patches have been merged into one.
I think I did all that correctly, so please review at your earliest convenience.
Comment 8•7 years ago
|
||
Comment 9•7 years ago
|
||
Any intentions to land this?
Comment 10•7 years ago
|
||
Yeah, Ryan said he's working on fixing up the patch.
| Assignee | ||
Comment 11•7 years ago
|
||
Here is the newest patch with the changes requested. One commit, as requested.
Comment 12•7 years ago
|
||
Updated•7 years ago
|
Updated•7 years ago
|
Comment 13•7 years ago
|
||
Let's clarify a few things here first.
This references
https://developer.thunderbird.net/the-basics/building-thunderbird/windows-build-prerequisites
which is an outdated copy of
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions/Simple_Thunderbird_build
:-(
Comment 14•7 years ago
|
||
Some more comments:
- Who's going to keep this up-to-date?
- Why is the "new bug" query https://bugzilla.mozilla.org/buglist.cgi?list_id=14706102&resolution=---&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&query_format=advanced&bug_status=NEW&product=Calendar&product=Chat%20Core&product=MailNews%20Core&product=Thunderbird
useful? It returns 8460 bugs at time of writing. Quite frustrating. - Why are you only mentioning hg bookmarks. Some people use hg queues, so IMHO it should at least be mentioned.
| Assignee | ||
Comment 15•7 years ago
•
|
||
As noted in the mailing list thread - MDN is going to remove our stuff. We need to update DTN regularly with the relevant information.
(In reply to Jorg K (GMT+2) from comment #14)
Some more comments:
- Who's going to keep this up-to-date?
You mean DTN? I've tried to get developer's involved to review the content and ensure it is up-to-date.
I will discuss this with Magnus today and see if we can get this task on a staff member's plate to check on these things regularly.
- Why is the "new bug" query https://bugzilla.mozilla.org/buglist.cgi?list_id=14706102&resolution=---&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&query_format=advanced&bug_status=NEW&product=Calendar&product=Chat%20Core&product=MailNews%20Core&product=Thunderbird
useful? It returns 8460 bugs at time of writing. Quite frustrating.
I used what Magnus recommended putting there. But this could be something different. What do you think is most useful?
- Why are you only mentioning hg bookmarks. Some people use hg queues, so IMHO it should at least be mentioned.
I've had some folks point out that hg queues is deprecated and probably not a good thing to encourage.
We do have a full section dedicated to Queues on DTN -> https://developer.thunderbird.net/contributing/fixing-a-bug/using-mercurial-queues
I'm open to feedback. So far I've had a hard time getting any attention to this README. Happy to get feedback.
Comment 17•7 years ago
|
||
"Who's going to keep this up-to-date?" was referring to the readme itself. I guess it doesn't have too many details which will go out-of-date soon, but it's another location with build information which potentially will need updating.
I'd remove/replace the link.
I know that hg queues are supposedly deprecated, but everyone is using them. So would at least mention them.
Comment 18•7 years ago
|
||
Giving users too many options up front is often more cause of confusion rather than being helpful.
| Assignee | ||
Comment 19•7 years ago
•
|
||
(In reply to Jorg K (GMT+2) from comment #17)
"Who's going to keep this up-to-date?" was referring to the readme itself. I guess it doesn't have too many details which will go out-of-date soon, but it's another location with build information which potentially will need updating.
I will keep it up-to-date with a recurring calendar reminder to check on it and update it.
I'd remove/replace the link.
What would you replace it with? Happy to do it, just want to know what a good alternative would be.
I know that hg queues are supposedly deprecated, but everyone is using them. So would at least mention them.
The best I can do here is mention "You can also use hg queues to manage your patches to Thunderbird, you can learn more about them here."
Comment 21•7 years ago
|
||
I'd change the paragraph to:
Mercurial is pretty flexible in terms of allowing writing your own code and keeping it separate from the main code base. You can use using Mercurial Bookmarks or Mercurial Queues or for managing your work. We have guides called for bookmarks and queues on our developer website.
I've discussed the issue with John, and personally I don't think bookmarks are up to doing the job. So I'd not recommend anything. Mention bookmarks first if you want, since B comes before Q ;-)
As for the query. I'd but this:
Use the Advanced Search section to find bugs you want to take care of, and be sure that the bug doesn't currently have any user listed as Assignee and the Status is set to NEW. You can see a list of "easy" bugs for beginners via this query. However, we assume you came here to fix your "pet hate" bug, so you already have a bug to work with.
BTW, the query is: https://mzl.la/2HbDSyX
r+ from me with those changes, haha.
| Assignee | ||
Comment 22•7 years ago
|
||
Here is the new patch with the changes requested. Looking forward to a r+! :)
Comment 23•7 years ago
|
||
Comment 24•7 years ago
|
||
I've come to fix the link and land this, but it's still not right :/
Here's the bookmark example:
- Run
hg pullto download the latest changes from the remote repository. - Run
hg update tipto update your current working directory to the most recent changeset that you just downloaded. - Run the command
hg bookmark some-bookmark-nameto create a bookmark that points to the current changeset. Usually the name of the bookmark is related to the bug or feature you are working on. - Run
hg bookmarksto list all of your bookmarks and see which one is currently active. The one you just created should now be active. - You can run
hg logto see which bookmarks point to which changesets. - Make changes to the code until you are ready to commit them.
- Run
hg statusandhg diffto check what files and changes you are about to commit. If you need to add a new file usehg add some-filenamebefore committing. - Commit your changes with
hg commit -m "Bug ##### - fixing something amazing". The-mis short for--messageand lets you provide a commit message for your changeset. "Bug ##### - fixing something amazing" is the format we recommend for the commit message, specifying the number of the Bug you're working on and a small description stating what you fixed. Usehg logto see examples of commit messages. - Run
hg logand note how the bookmark has moved to the changeset that you just committed. The active bookmark will automatically move to the most recent changeset as you commit your changes. That way you can make a series of commits and the bookmark will always point to the most recent one. - You can use
hg commit --amendto change your previous commit rather than making a new commit.
You're cheating since you're re-using numbers. Let me give you the much shorter hg queues steps:
0. Run hg pull to download the latest changes from the remote repository.
- Run
hg update tipto update your current working directory to the most recent changeset that you just downloaded. - Make changes to the code until you think you covered everything.
- Create a patch for upload with
hg qnew -m "Bug ##### - fixing something amazing". The-mis short for--messageand lets you provide a commit message for your changeset. "Bug ##### - fixing something amazing" is the format we recommend for the commit message, specifying the number of the Bug you're working on and a small description stating what you fixed.
The last command will place a patch into .hg/patches in your repository.
You can now scrap the #### Create a New Patch paragraph completely.
So four steps instead of ten seems much simpler, no? Both instructions are missing the information how to get rid of the local changes. You won't need them since the sheriff commits them to the repository and you will pull them from there.
Updated•7 years ago
|
Comment 25•7 years ago
•
|
||
I have not gotten rid of my habit of using merqurial queue (this was the method of choice back when I started to create patches).
However, it is quite true that the use of HG MQ is highly discouraged now and there are bugs with |mach bootstrap| that interfere with the proper setting of .hgrc so that MQ works correctly.
So at least, we should mention for the benefit of newbies that "support for HG MQ in various mozilla tools is being deprecated, and you are better off to learn how to use bookmarks".
| Assignee | ||
Comment 26•7 years ago
|
||
I've thought a lot about this and I am not going to change it to detail mercurial queues as there are a lot of warnings out there in documentation that we shouldn't be using it as it is deprecated. So I have noted that "While some find mercurial queues easier to work with, support for them is being deprecated in various Mozilla tools, so the example below uses bookmarks."
I have also fixed the numbering of the bookmarks instructions.
Let me know what you think, if there is nothing else I would like to see this merged.
Comment 27•7 years ago
|
||
| Assignee | ||
Comment 28•7 years ago
|
||
Hoping this is the final pass. I couldn't find any double spaces that you pointed out at the end of sentences. I did a search in three editors finders and then went line-by-line and checked. Can you point me at where you see one?
I completely removed the hg bookmarks example and just pointed them at documentation. Kept the rest in the READE about what to do after exporting the patch. Let me know what you think.
Comment 29•7 years ago
|
||
Comment 30•7 years ago
|
||
Pushed by mozilla@jorgk.com:
https://hg.mozilla.org/comm-central/rev/97972953d726
Created README for Thunderbird with build instructions, how to get involved in the community, and a basic guide for contributing. r=mkmelin,jorgk
Updated•7 years ago
|
Description
•