Closed Bug 1782080 Opened 3 years ago Closed 2 years ago

Generalize preference gates of the Credential Management API

Categories

(Core :: DOM: Credential Management, enhancement, P1)

enhancement

Tracking

()

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: bvandersloot, Assigned: bvandersloot)

References

Details

Attachments

(1 file)

Currently it just uses the webauthn prefs. With another credential type supported, we should have it be independent. Maybe the navigator.credentials object should not be pref'd off at all!

Depends on: 1782081
No longer depends on: 1782081
No longer blocks: 1782066
Blocks: 1782083
Blocks: 1782066

I'm looking to implement the FedCM browser API, which hooks into the Credentail Management API.
Just cleaning up a few preference-gates in webidl and adding new preferences to use as gates.

Assignee: nobody → bvandersloot
Status: NEW → ASSIGNED
Pushed by bvandersloot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c7e8da431aa6 Generalize preference gates of the Credential Management API, r=dveditz,emilio

Backed out 14 changesets (bug 1782080, bug 1782083, bug 1782085, bug 1782081) for causing mochitest failures in dom/credentialmanagement/identity/tests/mochitest/test_simple.html

Backout link: https://hg.mozilla.org/integration/autoland/rev/93a9b1ba6411a636b3f34e72ecef52fe87daca81

Push with failures

Failure log

Failure log bp-hybrid bustage

/builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ --sysroot /builds/worker/fetches/MacOSX11.3.sdk -mmacosx-version-min=10.12 -stdlib=libc++ -std=gnu++17 --target=x86_64-apple-darwin -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Qunused-arguments -Qunused-arguments -Wall -Wbitfield-enum-conversion -Wdeprecated-this-capture -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wc++2a-compat -Wenum-compare-conditional -Wno-ambiguous-reversed-operator -Wno-error=deprecated -Wno-error=deprecated-anon-enum-enum-conversion -Wno-error=deprecated-enum-enum-conversion -Wno-error=deprecated-enum-float-conversion -Wno-error=deprecated-pragma -Wno-error=deprecated-this-capture -Wno-error=deprecated-volatile -Wcomma -Wimplicit-fallthrough -Wduplicate-method-arg -Wduplicate-method-match -Wmissing-method-return-type -Wobjc-signed-char-bool -Wsemicolon-before-method-body -Wsuper-class-method-mismatch -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wformat -Wformat-security -Wno-psabi -Wthread-safety -Werror=unguarded-availability-new -Wno-unknown-warning-option -fno-sized-deallocation -fno-aligned-new -fcrash-diagnostics-dir=/builds/worker/artifacts -fno-exceptions -fPIC -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -gdwarf-4 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O3 -fno-omit-frame-pointer -funwind-tables -Werror   -o XUL -Wl,-filelist,/builds/worker/workspace/obj-build/toolkit/library/gtest/XUL.list   -fstack-protector-strong '-Wl,-U,_OBJC_CLASS_$_NSTouchBar' '-Wl,-U,_OBJC_CLASS_$_NSSharingServicePickerTouchBarItem' '-Wl,-U,_OBJC_METACLASS_$_NSTouchBar' '-Wl,-U,_OBJC_CLASS_$_NSCustomTouchBarItem' '-Wl,-U,_OBJC_CLASS_$_NSPopoverTouchBarItem' -lresolv -Wl,-dead_strip  ../../../security/nss/lib/crmf/crmf_crmf/libcrmf.a ../../../js/src/build/libjs_static.a /builds/worker/workspace/obj-build/x86_64-apple-darwin/release/libgkrust_gtest.a ../../../security/libnss3.dylib ../../../config/external/lgpllibs/liblgpllibs.dylib ../../../mozglue/build/libmozglue.dylib -dynamiclib -install_name @rpath/XUL -compatibility_version 1 -current_version 1  -framework AudioUnit -framework CoreAudio -lbsm -framework IOSurface -framework IOKit -framework AudioToolbox -framework CoreMedia -framework VideoToolbox -Wl,-U,_VTRegisterSupplementalVideoDecoderIfAvailable -Wl,-U,_VTIsHardwareDecodeSupported -framework Vision -framework LocalAuthentication -framework Security -lm -framework Foundation -framework CoreFoundation -framework CoreLocation -framework QuartzCore -framework Carbon -framework CoreVideo -framework AddressBook -framework OpenGL -framework ServiceManagement -framework CoreServices -framework ApplicationServices -framework AppKit -framework CoreMIDI -framework SystemConfiguration -framework AVFoundation -F/builds/worker/fetches/MacOSX11.3.sdk/System/Library/PrivateFrameworks -framework CoreUI -framework CoreSymbolication -lcups -weak_framework Metal -weak_framework MediaPlayer
[task 2022-09-13T17:09:08.145Z] 17:09:08     INFO -  Undefined symbols for architecture x86_64:
[task 2022-09-13T17:09:08.146Z] 17:09:08     INFO -    "__ZN7mozilla3dom18FetchJSONStructureINS0_13IdentityTokenENS_10MozPromiseIS2_8nsresultLb1EEEEE6RefPtrIT0_EPNS0_7RequestE", referenced from:
[task 2022-09-13T17:09:08.146Z] 17:09:08     INFO -        __ZN7mozilla3dom18IdentityCredential10FetchTokenEP12nsIPrincipalRKNS0_16IdentityProviderERKNS0_24IdentityInternalManifestERKNS0_15IdentityAccountE in IdentityCredential.o
[task 2022-09-13T17:09:08.146Z] 17:09:08     INFO -    "__ZN7mozilla3dom18FetchJSONStructureINS0_24IdentityInternalManifestENS_10MozPromiseIS2_8nsresultLb1EEEEE6RefPtrIT0_EPNS0_7RequestE", referenced from:
[task 2022-09-13T17:09:08.146Z] 17:09:08     INFO -        __ZN7mozilla3dom18IdentityCredential21FetchInternalManifestEP12nsIPrincipalRKNS0_16IdentityProviderE in IdentityCredential.o
[task 2022-09-13T17:09:08.147Z] 17:09:08     INFO -    "__ZN7mozilla3dom18FetchJSONStructureINS0_19IdentityAccountListENS_10MozPromiseIS2_8nsresultLb1EEEEE6RefPtrIT0_EPNS0_7RequestE", referenced from:
[task 2022-09-13T17:09:08.147Z] 17:09:08     INFO -        __ZN7mozilla3dom18IdentityCredential16FetchAccountListEP12nsIPrincipalRKNS0_16IdentityProviderERKNS0_24IdentityInternalManifestE in IdentityCredential.o
[task 2022-09-13T17:09:08.147Z] 17:09:08     INFO -    "__ZN7mozilla3dom18FetchJSONStructureINS0_20IdentityRootManifestENS_10MozPromiseIS2_8nsresultLb1EEEEE6RefPtrIT0_EPNS0_7RequestE", referenced from:
[task 2022-09-13T17:09:08.147Z] 17:09:08     INFO -        __ZN7mozilla3dom18IdentityCredential17CheckRootManifestEP12nsIPrincipalRKNS0_16IdentityProviderE in IdentityCredential.o
[task 2022-09-13T17:09:08.148Z] 17:09:08     INFO -  ld: symbol(s) not found for architecture x86_64
[task 2022-09-13T17:09:08.148Z] 17:09:08     INFO -  clang-14: error: linker command failed with exit code 1 (use -v to see invocation)
[task 2022-09-13T17:09:08.148Z] 17:09:08    ERROR -  gmake[4]: *** [/builds/worker/checkouts/gecko/config/rules.mk:540: XUL] Error 1
TEST-UNEXPECTED-FAIL | dom/credentialmanagement/identity/tests/mochitest/test_simple.html | must not have an error
TEST-UNEXPECTED-FAIL | dom/credentialmanagement/identity/tests/mochitest/test_two_accounts.html | must not have an error
Flags: needinfo?(bvandersloot)

The last set of changes to the patches for 1782083 broke this stack due to a histedit error. Fixing and resubmitting.

Flags: needinfo?(bvandersloot)
Pushed by bvandersloot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1cf5eecc663b Generalize preference gates of the Credential Management API, r=dveditz,emilio

It looks like I found the issue in the definition of my templated functions and how they are specified in dom/credentialmanagement/identity/moz.build. I've modified patches in D155722 and D155723 to build locally and in https://treeherder.mozilla.org/jobs?repo=try&revision=196e53fef2718edc8711b690e0c2879a2be35060 .

Flags: needinfo?(bvandersloot)
Pushed by bvandersloot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f1039dfb1cae Generalize preference gates of the Credential Management API, r=dveditz,emilio
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: