PostHog / plugin-server

Service to process and save PostHog events, supporting JS/TS plugins at that
https://posthog.com
8 stars 5 forks source link

New package name proposal: @posthog/processor #86

Closed Twixes closed 3 years ago

Twixes commented 3 years ago

This project started out as a worker to only process events received from the main PostHog server with plugins, and then pass them back to the main server, but it's now growing into a much more robust server with greater responsibility in the ingestion pipeline and beyond (possibly processing HTTP requests with Fastify).

Therefore the original name now seems to be somewhat narrow and boring. I suggest we rename the package. My proposal is: @posthog/processor – cool, short, and describing what all this does: data processing central to PostHog, from and into.

Feedback needed and welcome.

mariusandra commented 3 years ago

I brought up this same question right before we decided to implement event ingestion and the conclusion then was :thisisfine:. The argument was that ingestion will (eventually) be just another plugin, and as of such the name is fitting.

While we won't give all plugins access to server.db and other dangerous tools that ingestion will use, we can basically still treat it as just the last step in the plugin/processing pipeline.

Regarding processor, it is a clever choice that does describe what the server does and I'm not against it per se. That said, renaming this now will cause several unintended side-effects. For consistency we'll have to rename the pluginworker heroku dyno and the plugins helm chart worker into processor* as well (plus all the other AWS-related places), which will be a breaking change for users that are not expecting this. It could result in some downtime. Personally I'd also still like to see "server" in the name somehow, to reflect the "it must be deployed and stay running" nature of the project.

All in all, I'm sort of "meh" on this point. I have nothing against renaming posthog- to @posthog/ though, as this changes nothing downstream for users.

mariusandra commented 3 years ago

So, conclusion from the meeting: @posthog/plugin-server

Twixes commented 3 years ago

One thing I'm unsure about is, why is does @posthog/plugin-server change less than @posthog/anything-else? At least that's how I understood the last paragraph of https://github.com/PostHog/posthog-plugin-server/issues/86#issuecomment-754563595.

mariusandra commented 3 years ago

It's because nobody is really installing posthog-plugin-server from npm, but either running it as part of the main posthog repo or just via docker. In that case the only thing we need to change is this line.

When changing the name from "*plugin*" to something else like /processor, we should also change the name of the dynos, the helm deployments, etc in order to avoid a team <-> project situation.