Page MenuHomePhabricator

Rename Client Libraries
Closed, InvalidPublic

Description

WIP (pending to be repurposed to just renaming from Metrics Platform to Test Kitchen

Client Libraries
Repository: https://gerrit.wikimedia.org/g/mediawiki/libs/metrics-platform

Event Timeline

As part of this work, are we considering to change metrics_platform_client (with something like test_kitchen_client) as the property where contextual attributes are listed when configuring a stream in mediawiki-config? It's not mentioned in the ticket and seems to be a non-easy thing (I guess we would provide backward compatibility at least during the transition)

As part of this work, are we considering to change metrics_platform_client (with something like test_kitchen_client) as the property where contextual attributes are listed when configuring a stream in mediawiki-config? It's not mentioned in the ticket and seems to be a non-easy thing (I guess we would provide backward compatibility at least during the transition)

definitely non-trivial -- tho maybe the additive approach is what we're undertaking? i.e. add new TestKitchenClient, point all refs to this, then remove MetricsClient?

if we're updating the MetricsClient to become TestKitchenClient, presumably we need to update the related references to the MetricsClient in WikimediaEvents and other extensions?

As part of this work, are we considering to change metrics_platform_client (with something like test_kitchen_client) as the property where contextual attributes are listed when configuring a stream in mediawiki-config? It's not mentioned in the ticket and seems to be a non-easy thing (I guess we would provide backward compatibility at least during the transition)

definitely non-trivial -- tho maybe the additive approach is what we're undertaking? i.e. add new TestKitchenClient, point all refs to this, then remove MetricsClient?

if we're updating the MetricsClient to become TestKitchenClient, presumably we need to update the related references to the MetricsClient in WikimediaEvents and other extensions?

I meant the way we configure streams in mediawiki-config but definitely you are right. We would need a similar approach for what you mentioned.

I have just realized that, because we are considering in this ticket to move client libraries to the new TestKitchen extension, I guess we could keep the older way (metrics client libraries embedded in EventLogging) until we update all the extensions/codebases that, somehow, are using client libraries via EventLogging at this moment. That would be something similar as what we are doing with the renaming of the mpic.wikimedia.org domain:

  1. Enable the new way (client libraries in TestKitchen extension) keeping the older one (client libraries embedded in EventLogging
  2. Update one by one all the client libraries consumers (at least CheckUser, GrowthExperiments, ReportIncident and WikimediaEvents extensions after a quick search) until nobody uses the older way
  3. Deprecate/Remove client libraries from EventLogging

Regarding the first AC: bring client libraries into Test Kitchen MW extension

I've repurposed T367034: TestKitchen Extension: Merge PHP MetricsPlatform client library to cover merging PHP Metrics Platform Client Library into the TestKitchen extension.

Now that we are considering T415579: Migrate JS and PHP client libraries to TestKitchen extension and T415858: [Epic] Bring Test Kitchen Kotlin SDK to functional parity with JS + PHP as a separate work this task doesn't make sense. In the case of JS and PHP we are going to migrate client libraries to be part of TestKitchen extension and in the case of Java we are already working on refactoring and updating that client library with Kotlin.

We can consider this ticket as invalid