New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TS: Resolve all circular dependencies and run madge as part of CI checks #128
base: master
Are you sure you want to change the base?
Conversation
@@ -7,3 +7,22 @@ | |||
export { EventFnsFromEventStoreV2 } from './event-fns-impl' | |||
export { EventStore as EventStoreV2 } from './eventStore' | |||
export * from './types' | |||
|
|||
import { Observable } from '../../node_modules/rxjs' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why node_modules need to be specified? Couldn't it be imported from 'rxjs'.
Why do we reexport it anyway, because of node_modules?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The RXjs import style is due to some Grafana issue (I just took it over from other files)
See 073f280
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Importing from 'rxjs'
is resolved very differently from importing a file path — we depend on version 5 but the former actually gave us version 6 in some contexts. So I learnt that “private” dependencies actually need to be resolved by file path in order to really keep them private.
The most contentious point here is moving
inMemSnapshotStore
out of its own file, in withsnapshotStore.ts
.This is required because unfortunately the Pond internally (chaos.spec.ts) depends on being able to call
SnapshotStore.inMem()
.I think all this is quite irrelevant, since snapshot store will probably be deleted altogether, soon, when work on state machines wihin Actyx starts and it becomes clear that Fish will soon be retired.