Open Bug 2053453 Opened 9 days ago Updated 7 days ago

Support events for glean-sym

Categories

(Data Platform and Tools :: Glean: SDK, defect, P1)

defect

Tracking

(Not tracked)

ASSIGNED

People

(Reporter: bdk, Assigned: janerik)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

I'm seeing some errors when trying to hook up the logins component with glean-sym. Most of them seem related to events. Here's the start of the error list:

17 |     pub static key_regenerated_corrupt: ::glean_sym::__export::Lazy<EventMetric<NoExtraKeys>> = ::glean_sym::__export::Lazy::new(|| {
   |                                                                                 ^^^^^^^^^^^ not found in this scope

error[E0412]: cannot find type `NoExtraKeys` in this scope
  --> /home/ben/application-services/target/debug/build/logins-400c2999cd657168/out/glean_metrics.rs:35:78
   |
35 |     pub static key_regenerated_lost: ::glean_sym::__export::Lazy<EventMetric<NoExtraKeys>> = ::glean_sym::__export::Lazy::new(|| {
   |                                                                              ^^^^^^^^^^^ not found in this scope

error[E0412]: cannot find type `NoExtraKeys` in this scope
  --> /home/ben/application-services/target/debug/build/logins-400c2999cd657168/out/glean_metrics.rs:53:79
   |
53 |     pub static key_regenerated_other: ::glean_sym::__export::Lazy<EventMetric<NoExtraKeys>> = ::glean_sym::__export::Lazy::new(|| {
   |                                                                               ^^^^^^^^^^^ not found in this scope

error[E0107]: struct takes 0 generic arguments but 1 generic argument was supplied
    --> /home/ben/application-services/target/debug/build/logins-400c2999cd657168/out/glean_metrics.rs:17:69
     |
  17 |     pub static key_regenerated_corrupt: ::glean_sym::__export::Lazy<EventMetric<NoExtraKeys>> = ::glean_sym::__export::Lazy::new(|| {
     |                                                                     ^^^^^^^^^^^------------- help: remove the unnecessary generics
     |                                                                     |
     |                                                                     expected 0 generic arguments
Assignee: nobody → jrediger
Status: NEW → ASSIGNED
Type: enhancement → defect
Priority: -- → P1

Looking at this I now realize that this is gonna be a bit harder to actually get working.
The generic EventMetric that takes NoExtraKeys or an actual generated type for the extra keys is what the Rust Language bindings (RLB) build on top of glean-core.
We would have to duplicate that code in glean-sym to make it work. Not impossible, but certainly a bit annoying. I'll see what I can do.

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

Attachment

General

Created:
Updated:
Size: