-
Notifications
You must be signed in to change notification settings - Fork 32
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
Clean up dependencies for @deephaven/redux #730
Comments
- Partial deephaven#730 - Remove references to @deephaven/redux from @deephaven/chart and @deephaven/iris-grid - Create a `Settings` in jsapi-utils that captures all the formatting settings, use that instead of WorkspaceSettings - Still need to clean up WorkspaceSettings, and the actions registered (e.g. setCommandHistoryStorage should be exported from dashboard-core-plugins, not from redux), but will do that later as this is lower risk
I think it's fine for redux to reference types from other deephaven packages, but we don't want it the other way around where anything that isn't the main app (or dashboard plugins maybe) referencing redux. Really it depends on how we want to separate it
I think this would be fine because the redux store is an app specific implementation. You can pull in chart without redux and it should work just fine. Any redux connect/middleware/updates should be handled at the app level (or dashboard core plugins) which then just delegates the updated state to the component which does not know about redux
This would couple our packages to redux which I think is the wrong move.
This could also be fine and might be the safest overall. Involves a bit of duplication of types, but also prevents accidentally changing types in a package and not realizing it modified the redux store or workspace storage. Since we have migrations for workspace data, option 3 is probably what we want? Then if something in chart gets modified, TS should warn us if redux expects a different type instead of relying on the type from chart |
- Partial #730 - Remove references to @deephaven/redux from @deephaven/chart and @deephaven/iris-grid - Create a `Settings` in jsapi-utils that captures all the formatting settings, use that instead of WorkspaceSettings - Still need to clean up WorkspaceSettings, and the actions registered (e.g. setCommandHistoryStorage should be exported from dashboard-core-plugins, not from redux), but will do that later as this is lower risk - In a future change, we should move actions from `@deephaven/redux` to dashboard-core-plugins (such as `setCommandHistoryStorage`).
It's come to light that |
One thought I've had towards cleaning up redux in general is making the Then each package can have its own selectors/actions/reducers which use the Then inside |
@deephaven/redux should not have any dependencies on other @deephaven packages. Essentially it just needs the middleware stuff and registry, and the rest should be actions/selector exported by other packages.
E.g. The
setCommandHistoryStorage
action should be registered by the@deephaven/dashboard-core-plugins
(specifically would be@deephaven/console-plugin
if we had that).The text was updated successfully, but these errors were encountered: