Why aggregation pipelines are omitting the '$' from mongodb's pipelines?

In the JS SDK Parse.Query.aggregate() works really well in runtime, but the fact that stage names differ from the built-in MongoDB’s stages by the $ symbol –BTW inconsistently as only the top-level stages lose the $– represents an issue for compatibility, for example, when importing/exporting or debugging in other tools like MongoCompass.

Is there any special reason to keep this syntax? is it an option to update it in future releases?

There is also a difference in objectId vs _id. I guess this one is a more complex matter because it relates to how Parse Server encrypts IDs, but still, it would be nice to bring it closer to mongo syntax.

I’m not sure if there is a real reason for that but that’s something that has also annoyed me. We can try to open a branch changing this approach and look what happens. Would you be willed to do that?

1 Like

Sure. I will take that as my next contribution then. Should I link that new PR to this discussion (how) or open a new issue/feature request on github?

A new issue might be better.

Agree with the annoyance of this.