Closed Bug 1532935 Opened 1 year ago Closed 1 year ago

Enable ESLint for dom/promise

Categories

(Core :: DOM: Core & HTML, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla69
Tracking Status
firefox68 --- wontfix
firefox69 --- fixed

People

(Reporter: standard8, Assigned: violinmonkey42, Mentored)

References

Details

(Keywords: good-first-bug, Whiteboard: [lang=js])

Attachments

(2 files)

As part of rolling out ESLint across the tree, we should enable it for dom/promise.

To help Mozilla out with this bug, here's the steps:

  1. Comment here on the bug that you want to volunteer to help. I (or someone else) will assign it to you.
  2. Download and build the Firefox source code, see the docs for details. An artifact build is all you need.
    • If you have any problems, please ask on IRC in the #introduction channel. They're there to help you get started.
    • You can also read the Developer Guide, which has answers to most development questions.
  3. Start working on this bug
    • Please note:
      • We want to end up with two separate commits. One with the automatic changes, the second with the manual changes.
      • Although you'll change .eslintignore at the start, only the second commit should have the .eslintignore changes. Please follow the suggested commands closely.
    • Here's what to do:
      1. In .eslintignore, remove the dom/promise/** line.
      2. Run eslint ./mach eslint --fix dom/promise
        • This should fix some of the issues.
      3. Inspect the diff to make sure that the indentation of the lines surrounding the changes look ok.
      4. Create a commit of the work so far. Note the extra dom/promise at the end (this avoids committing .eslintignore at this stage)
        • $ hg commit -m "Bug nnn - Enable ESLint for dom/promise (automatic changes). r?Standard8" dom/promise
      5. For the remaining issues, you'll need to fix them by hand. To find them, run ./mach eslint dom/promise.
        • Most of those should be reasonably easy to understand, but there's more information on some specific bits (especially no-undef) here and here.
      6. Create a second commit of the manual changes, note, there's no directory specifier this time, so .eslintignore will be included.
        • $ hg commit -m "Bug nnn - Enable ESLint for dom/promise (manual changes). r?Standard8
      7. Post the two commits via phabricator. Please use moz-phab to submit them.
  4. Once the patches are submitted, I'll take a look. If there's any changes necessary I'll comment in Phabricator, so be prepared to update the patches. If there's no changes, I'll request review from a dom peer, so there may still be more to go.
  5. Once we're happy with the changes, I'll push it to autoland - our integration branch. Your code will then soon be shipping to Firefox users worldwide!
  6. Now you get to think about what kind of bug you'd like to work on next. Let me know what you're interested in and I can help you find your next contribution.
Priority: -- → P3

Hey, I'm new to contributing. Mind if I pick up this bug?

(In reply to violinmonkey42 from comment #1)

Hey, I'm new to contributing. Mind if I pick up this bug?

Hi, please do.

Assignee: nobody → violinmonkey42
Status: NEW → ASSIGNED
Component: DOM → DOM: Core & HTML

Hi Mark, sorry for the delay. I set this bug aside for a bit while I completed some school assignments. I should be able to send you a commit by the end of tomorrow.

No problem, thanks for the update.

I'm having a bit of trouble figuring out how to submit my work.

I'm using git, so I have followed mozilla's documentation for setting up git-cinnabar, as well as arcanist and moz-phab. When I try to run arc diff, or moz-phab submit, they both give me the following error: "ERR_CONDUIT_CORE: Local VCS (git) is different from the one defined in the repository (hg)".

Do you know what the process is I should be following to submit my changes?

I saw git-cinnabar has a "git2hg" command, which says it converts git commits to mercurial commits, but I haven't figured out how to use it. Is this command part of the git workflow?

(In reply to violinmonkey42 from comment #5)

I'm using git, so I have followed mozilla's documentation for setting up git-cinnabar, as well as arcanist and moz-phab. When I try to run arc diff, or moz-phab submit, they both give me the following error: "ERR_CONDUIT_CORE: Local VCS (git) is different from the one defined in the repository (hg)".

Did you install arcanist as referenced from here?

If not, maybe jump onto irc and ask in the #introduction channel for help (note it can sometimes take a little while for people to respond, but there's generally people around at most times in the day).

Yes, that's the guide I followed.

Thanks for the recommendation. I'll get on irc.

Sorry about the delays, I still haven't figured out how to submit my work. This upcoming week is my last week of class, so I will be very busy. Probably won't have time to look into this again until Friday. I'll reach out to someone for help then.

Sorry, I'm not finding the time to figure this out. Please assign this bug to someone else.

Attachment #9062166 - Attachment description: Bug 1532935 - Enable ESLint for dom/promise (automatic changes). → Bug 1532935 - Enable ESLint for dom/promise (automatic changes). r=mccr8
Attachment #9062167 - Attachment description: Bug 1532935 - Enable ESLint for dom/promise (manual changes). → Bug 1532935 - Enable ESLint for dom/promise (manual changes). r=mccr8
Pushed by mbanner@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f0b36a9e6be0
Enable ESLint for dom/promise (automatic changes). r=mccr8
https://hg.mozilla.org/integration/autoland/rev/d077bc76802d
Enable ESLint for dom/promise (manual changes). r=mccr8
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla69

Since the status are different for nightly and release, what's the status for beta?
For more information, please visit auto_nag documentation.

You need to log in before you can comment on or make changes to this bug.