Closed Bug 1952386 Opened 16 days ago Closed 10 days ago

Unable to access about:editprofile or about:newprofile due to RPMSendQuery error

Categories

(Toolkit :: Startup and Profile System, defect)

defect

Tracking

()

RESOLVED INVALID

People

(Reporter: tgiles, Unassigned)

Details

Attachments

(1 file)

I'm not sure exactly why this is happening, but with a recent local build based off of https://hg.mozilla.org/mozilla-central/rev/29ca7ddfb7762e3b16be4961eff0e7b5b2755dd9, I am unable to access either about:editprofile or about:newprofile due to a consistent error of ReferenceError: RPMSendQuery is not defined.

In my local build, browser.profiles.enabled is set to true. I'm not aware of any other prefs I need to set in order to access these pages but please let me know if there are other prefs or things I need to set. Also tested this with a brand new profile via about:profiles using the "Create a New Profile" button and using the Create Profile Wizard.

The specific error in about:newprofile is:

Uncaught (in promise) ReferenceError: RPMSendQuery is not defined
    init chrome://browser/content/profiles/new-profile-card.mjs:24
    connectedCallback chrome://browser/content/profiles/edit-profile-card.mjs:123
    <anonymous> chrome://browser/content/profiles/new-profile-card.mjs:100
new-profile-card.mjs:24:7

The specific error in about:editprofile is:

Uncaught (in promise) ReferenceError: RPMSendQuery is not defined
    init chrome://browser/content/profiles/edit-profile-card.mjs:132
    connectedCallback chrome://browser/content/profiles/edit-profile-card.mjs:123
    <anonymous> chrome://browser/content/profiles/edit-profile-card.mjs:480
edit-profile-card.mjs:132:7

There's also another error in both pages about not being able to access property "value", but I think that's a follow-up from the RPMSendQuery error:

Uncaught TypeError: can't access property "value", this.nameInput is null
    handleEvent chrome://browser/content/profiles/edit-profile-card.mjs:192
edit-profile-card.mjs:192:23

Please let me know any other information I can provide to help debug this issue!

How are you running the build? If you're just using mach run then this error is expected. The profiles feature only works if you're using a named profile from profiles.ini while a bare mach run will just use a temporary profile. Running with mach run -n should get it working.

Flags: needinfo?(tgiles)
Attached image image.png

(In reply to Dave Townsend [:mossop] from comment #1)

How are you running the build? If you're just using mach run then this error is expected.
Ah okay, I was running my local build with just mach run. So I suppose that explains that error.

The profiles feature only works if you're using a named profile from profiles.ini while a bare mach run will just use a temporary profile. Running with mach run -n should get it working.

I tried running my local with mach run -n and I'm still getting the original error that I reported. As far as I can tell, I'm using a named profile, "new_profile_profile" in this case. I verified that this profile exists in my profiles.ini. Now I'm pretty confused as to what I'm doing incorrectly lol.

My local build is currently at this commit from March 11, so not sure what else to try at the moment. Let me know how else I can debug this, really hoping it's just some odd configuration with my machine.

Flags: needinfo?(tgiles) → needinfo?(dtownsend)

Ok try running each of this in the browser console and tell me what each one evaluates to.

  • !!Cc["@mozilla.org/toolkit/profile-service;1"].getService(Ci.nsIToolkitProfileService).currentProfile
  • !!Cc["@mozilla.org/toolkit/profile-service;1"].getService(Ci.nsIToolkitProfileService).groupProfile
  • Services.policies.isAllowed("profileManagement")
  • ChromeUtils.importESModule("resource:///modules/profiles/SelectableProfileService.sys.mjs").SelectableProfileService.isEnabled
  • Services.prefs.getBoolPref("browser.profiles.enabled")
Flags: needinfo?(dtownsend) → needinfo?(tgiles)

(In reply to Dave Townsend [:mossop] from comment #3)

  • !!Cc["@mozilla.org/toolkit/profile-service;1"].getService(Ci.nsIToolkitProfileService).currentProfile is true
  • !!Cc["@mozilla.org/toolkit/profile-service;1"].getService(Ci.nsIToolkitProfileService).groupProfile is false
  • Services.policies.isAllowed("profileManagement") is true
  • ChromeUtils.importESModule("resource:///modules/profiles/SelectableProfileService.sys.mjs").SelectableProfileService.isEnabled is true
  • Services.prefs.getBoolPref("browser.profiles.enabled") is true

I guess my issue has something to do with the groupProfile property being false? Any other steps I should take to debug?

Flags: needinfo?(tgiles) → needinfo?(dtownsend)

(In reply to Tim Giles [:tgiles] from comment #4)
I guess my issue has something to do with the groupProfile property being false? Any other steps I should take to debug?

That is to be expected if you haven't created any additional profiles through the new UI yet. Have you? If not how are you actually trying to access these pages, are you just trying to load them from the address bar?

Is it still the RPMSendQuery error you see?

Flags: needinfo?(dtownsend) → needinfo?(tgiles)

(In reply to Dave Townsend [:mossop] from comment #5)

(In reply to Tim Giles [:tgiles] from comment #4)
I guess my issue has something to do with the groupProfile property being false? Any other steps I should take to debug?

That is to be expected if you haven't created any additional profiles through the new UI yet. Have you? If not how are you actually trying to access these pages, are you just trying to load them from the address bar?

Oh, I didn't know there was a new UI for creating profiles, how do I access that surface? I incorrectly assumed that creating new profiles through about:profiles or the wizard via mach run -P would allow me to navigate to about:editprofile or about:newprofile. I guess that was the main problem since I was trying to load these pages from the address bar.

Is it still the RPMSendQuery error you see?

No, now I'm seeing an error on about:newprofile:

Uncaught TypeError: can't access property "value", this.nameInput is null
    handleEvent chrome://browser/content/profiles/edit-profile-card.mjs:192
    connectedCallback chrome://browser/content/profiles/edit-profile-card.mjs:120
    <anonymous> chrome://browser/content/profiles/edit-profile-card.mjs:480
edit-profile-card.mjs:192:23

And on about:editprofile:

Uncaught TypeError: can't access property "value", this.nameInput is null
    handleEvent chrome://browser/content/profiles/edit-profile-card.mjs:192
edit-profile-card.mjs:192:23
Flags: needinfo?(tgiles) → needinfo?(dtownsend)

(In reply to Tim Giles [:tgiles] from comment #6)

(In reply to Dave Townsend [:mossop] from comment #5)

(In reply to Tim Giles [:tgiles] from comment #4)
I guess my issue has something to do with the groupProfile property being false? Any other steps I should take to debug?

That is to be expected if you haven't created any additional profiles through the new UI yet. Have you? If not how are you actually trying to access these pages, are you just trying to load them from the address bar?

Oh, I didn't know there was a new UI for creating profiles, how do I access that surface? I incorrectly assumed that creating new profiles through about:profiles or the wizard via mach run -P would allow me to navigate to about:editprofile or about:newprofile. I guess that was the main problem since I was trying to load these pages from the address bar.

Click on the Profiles menu in the application menu.

Is it still the RPMSendQuery error you see?

No, now I'm seeing an error on about:newprofile:

Uncaught TypeError: can't access property "value", this.nameInput is null
    handleEvent chrome://browser/content/profiles/edit-profile-card.mjs:192
    connectedCallback chrome://browser/content/profiles/edit-profile-card.mjs:120
    <anonymous> chrome://browser/content/profiles/edit-profile-card.mjs:480
edit-profile-card.mjs:192:23

And on about:editprofile:

Uncaught TypeError: can't access property "value", this.nameInput is null
    handleEvent chrome://browser/content/profiles/edit-profile-card.mjs:192
edit-profile-card.mjs:192:23

So if you're not using the new UI the underlying datastore probable isn't initialised so I would expect to see errors by loading these pages manually.

Status: NEW → RESOLVED
Closed: 10 days ago
Flags: needinfo?(dtownsend)
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: