[COMPASS-4776] Packages with shared dependencies have their dependency versions aligned Created: 30/Apr/21  Updated: 28/Sep/21  Resolved: 28/Sep/21

Status: Closed
Project: Compass
Component/s: None
Affects Version/s: None
Fix Version/s: No version

Type: Task Priority: Major - P3
Reporter: Rhys Howell Assignee: Sergey Petushkov
Resolution: Incomplete Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to COMPASS-4819 Align babel dependencies versions wit... Closed
Documentation Changes: Not Needed
Sprint: Iteration Barcelona, Iteration Chicago, Iteration Düsseldorf, Iteration Edinburgh, Iteration Ibadan, Iteration Johannesburg, Iteration Kampala, Iteration Lutz

 Description   

In this ticket let's makes sure our dependencies across packages share common versions.
lerna bootstrap should reduce the install times by hoisting shared dependencies and symlinking within packages.

~ milestone #3: https://docs.google.com/document/d/1em0_Gkm9QivWJo-KRbvHYrQeu0umgpVMztjsQ4NT_ds/edit#

Tech design: https://docs.google.com/document/d/1em0_Gkm9QivWJo-KRbvHYrQeu0umgpVMztjsQ4NT_ds/edit#



 Comments   
Comment by Sergey Petushkov [ 28/Sep/21 ]

We will stop this work for now and return to it sometime after TTFQ project is finished. We should hale less dependencies misaligned at this point already and being able to analyze Compass dependency tree using webpack tools will allow us to prioritize work on which dependencies to align first better

Comment by Githook User [ 23/Sep/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: build: Introduce shared webpack config; Use webpack to build compass COMPASS-4776 (#2454)

  • feat(scripts): Support configs in create-workspace; Fix total counter
  • feat(@mongodb-js/webpack-config-compass): Add new shared webpack configuration for Compass and plugins
  • build(mongodb-compass): Use webpack-config-compass to bundle application source instead of hadron-compile-cache, hadron-module-cache, hadron-style-manager
  • feat(@mongodb-js/hadron-plugin-manager): Make plugin manager compatible with webpack; Simplify plugin resolution logic

All plugins in pluginList are now always resolved using node_modules
resolution logic, no fallbacks to relative paths

  • build(@mongodb-js/compass-serverstats): Refactor serverstats plugin to use new webpack config
  • chore: Remove all unused styles/index.less files

They were needed while compass was using style-manager, but can be
safely removed now, most of them were just empty files

  • chore(hadron-build): Remove all release steps that are handled by webpack now
  • chore: Remove unused and archived hadron-style-manager, hadron-compile-cache, and hadron-module-cache packages from the monorepo
  • chore: Update package-lock
  • fix(hadron-plugin-manager): Fix depcheck error
  • fix(hadron-build): Ignore failed meta resolution if it happened for the dev or optional dep
  • chore(mongodb-compass): Simplify `electronBinary` declaration

Co-authored-by: Anna Henningsen <anna.henningsen@mongodb.com>

  • fix(mongodb-compass): Set charset to utf-8 on Compass html pages
  • fix(mongodb-compass, @mongodb-js/compass-serverstats): Use `pathToFileURL` so that filepaths are always properly encoded

Co-authored-by: Anna Henningsen <anna@addaleax.net>

  • fix(mongodb-compass, hadron-build, compass-e2e-tests): Run webpack with hadron-build for consistency; Ease propType check on the Stage component
  • fix(@mongodb-js/webpack-config-compass): Ignore eslint warning
  • fix(hadron-build): Fix eslint errors
  • fix(compass-e2e-tests): Fix prettier formatting
  • feat(@mongodb-js/mocha-config-compass): Add support for mocha-electron and a special compass plugin configuration
  • chore(@mongodb-js/webpack-config-compass): Update dependencies
  • chore(compass-serverstats): Refactor plugin to use new mocha test setup
  • chore: UPdare package-lock and ignore more webpack dependencies (for now)
  • fix(mongodb-compass): Allow self in img src content security policy

This is needed so in dev/serve mode images can be loaded, it's also safe to do for prod

  • fix(webpack-config-compass): Always provide a library output for a renderer plugin build

Co-authored-by: Anna Henningsen <anna.henningsen@mongodb.com>
Co-authored-by: Anna Henningsen <anna@addaleax.net>
Branch: COMPASS-5047-matrix
https://github.com/mongodb-js/compass/commit/f7c581696766c9ff6c7d9876c773cb7bff2ed6ac

Comment by Githook User [ 21/Sep/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: build: Introduce shared webpack config; Use webpack to build compass COMPASS-4776 (#2454)

  • feat(scripts): Support configs in create-workspace; Fix total counter
  • feat(@mongodb-js/webpack-config-compass): Add new shared webpack configuration for Compass and plugins
  • build(mongodb-compass): Use webpack-config-compass to bundle application source instead of hadron-compile-cache, hadron-module-cache, hadron-style-manager
  • feat(@mongodb-js/hadron-plugin-manager): Make plugin manager compatible with webpack; Simplify plugin resolution logic

All plugins in pluginList are now always resolved using node_modules
resolution logic, no fallbacks to relative paths

  • build(@mongodb-js/compass-serverstats): Refactor serverstats plugin to use new webpack config
  • chore: Remove all unused styles/index.less files

They were needed while compass was using style-manager, but can be
safely removed now, most of them were just empty files

  • chore(hadron-build): Remove all release steps that are handled by webpack now
  • chore: Remove unused and archived hadron-style-manager, hadron-compile-cache, and hadron-module-cache packages from the monorepo
  • chore: Update package-lock
  • fix(hadron-plugin-manager): Fix depcheck error
  • fix(hadron-build): Ignore failed meta resolution if it happened for the dev or optional dep
  • chore(mongodb-compass): Simplify `electronBinary` declaration

Co-authored-by: Anna Henningsen <anna.henningsen@mongodb.com>

  • fix(mongodb-compass): Set charset to utf-8 on Compass html pages
  • fix(mongodb-compass, @mongodb-js/compass-serverstats): Use `pathToFileURL` so that filepaths are always properly encoded

Co-authored-by: Anna Henningsen <anna@addaleax.net>

  • fix(mongodb-compass, hadron-build, compass-e2e-tests): Run webpack with hadron-build for consistency; Ease propType check on the Stage component
  • fix(@mongodb-js/webpack-config-compass): Ignore eslint warning
  • fix(hadron-build): Fix eslint errors
  • fix(compass-e2e-tests): Fix prettier formatting
  • feat(@mongodb-js/mocha-config-compass): Add support for mocha-electron and a special compass plugin configuration
  • chore(@mongodb-js/webpack-config-compass): Update dependencies
  • chore(compass-serverstats): Refactor plugin to use new mocha test setup
  • chore: UPdare package-lock and ignore more webpack dependencies (for now)
  • fix(mongodb-compass): Allow self in img src content security policy

This is needed so in dev/serve mode images can be loaded, it's also safe to do for prod

  • fix(webpack-config-compass): Always provide a library output for a renderer plugin build

Co-authored-by: Anna Henningsen <anna.henningsen@mongodb.com>
Co-authored-by: Anna Henningsen <anna@addaleax.net>
Branch: main
https://github.com/mongodb-js/compass/commit/f7c581696766c9ff6c7d9876c773cb7bff2ed6ac

Comment by Githook User [ 15/Sep/21 ]

Author:

{'name': 'Sergey Petushkov', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: Merge branch 'compass-4776-build-compass-with-webpack' of github.com:mongodb-js/compass into compass-4776-build-compass-with-webpack
Branch: compass-4776-build-compass-with-webpack
https://github.com/mongodb-js/compass/commit/5b900233117a224b2f7694af953e5d5dfabcfd06

Comment by Githook User [ 25/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: chore: Add new args to depalign and remove some misaligned `lodash.*` deps completely COMPASS-4776 (#2387)

  • feat(depalign): Allow to ignore config and only include only certain types of deps in the report

Helpful for applying autofixes only to certain dep types and for
quickly checking what the report would look like with no ignored
ranges

  • chore: Run safe autofix on everything
  • chore: Remove lodash.defaults dependency
  • feat(depalign): Add command to validate and autofix ignore configuration; Clean-up ignore config
  • chore: Remove usage of lodash.assign method and unused dependencies
  • chore: Remove usage of lodash.includes method and unused dependencies
  • chore: Remove usage of lodash.clone method and unused dependencies
  • chore: Clean-up depalign config
Comment by Githook User [ 25/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: feat(depalign): Add an autofix option to depalign script and fix deduped warnings COMPASS-4776 (#2373)

  • feat(depalign): Refactor depalign script to allow for autofix behavior
Comment by Githook User [ 11/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: chore: Add new args to depalign and remove some misaligned `lodash.*` deps completely COMPASS-4776 (#2387)

  • feat(depalign): Allow to ignore config and only include only certain types of deps in the report

Helpful for applying autofixes only to certain dep types and for
quickly checking what the report would look like with no ignored
ranges

  • chore: Run safe autofix on everything
  • chore: Remove lodash.defaults dependency
  • feat(depalign): Add command to validate and autofix ignore configuration; Clean-up ignore config
  • chore: Remove usage of lodash.assign method and unused dependencies
  • chore: Remove usage of lodash.includes method and unused dependencies
  • chore: Remove usage of lodash.clone method and unused dependencies
  • chore: Clean-up depalign config
Comment by Githook User [ 11/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: feat(depalign): Add an autofix option to depalign script and fix deduped warnings COMPASS-4776 (#2373)

  • feat(depalign): Refactor depalign script to allow for autofix behavior
Comment by Githook User [ 11/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: chore: Add new args to depalign and remove some misaligned `lodash.*` deps completely COMPASS-4776 (#2387)

  • feat(depalign): Allow to ignore config and only include only certain types of deps in the report

Helpful for applying autofixes only to certain dep types and for
quickly checking what the report would look like with no ignored
ranges

  • chore: Run safe autofix on everything
  • chore: Remove lodash.defaults dependency
  • feat(depalign): Add command to validate and autofix ignore configuration; Clean-up ignore config
  • chore: Remove usage of lodash.assign method and unused dependencies
  • chore: Remove usage of lodash.includes method and unused dependencies
  • chore: Remove usage of lodash.clone method and unused dependencies
  • chore: Clean-up depalign config
Comment by Githook User [ 05/Aug/21 ]

Author:

{'name': 'Sergey', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: feat(depalign): Add an autofix option to depalign script and fix deduped warnings COMPASS-4776 (#2373)

  • feat(depalign): Refactor depalign script to allow for autofix behavior
Comment by Githook User [ 03/Jun/21 ]

Author:

{'name': 'Rhys', 'email': 'Anemy@users.noreply.github.com', 'username': 'Anemy'}

Message: deps: Update and align the versions of dependencies of packages within the monorepo COMPASS-4776 (#2198)
Branch: 1.27-releases
https://github.com/mongodb-js/compass/commit/e2b0fa346e4b5dbdbb83d82de4acd129efc67e71

Comment by Githook User [ 19/May/21 ]

Author:

{'name': 'Rhys', 'email': 'Anemy@users.noreply.github.com', 'username': 'Anemy'}

Message: deps: Update and align the versions of dependencies of packages within the monorepo COMPASS-4776 (#2198)
Branch: master
https://github.com/mongodb-js/compass/commit/e2b0fa346e4b5dbdbb83d82de4acd129efc67e71

Comment by Githook User [ 19/May/21 ]

Author:

{'name': 'Sergey Petushkov', 'email': 'petushkov.sergey@gmail.com', 'username': 'gribnoysup'}

Message: Merge remote-tracking branch 'origin/master' into COMPASS-4776/align-deps

Conflicts:
packages/compass-connect/package-lock.json
packages/compass-connect/package.json
Branch: COMPASS-4776/align-deps
https://github.com/mongodb-js/compass/commit/5203484387b2d42f34e1edadff1644680685c364

Generated at Wed Feb 07 22:37:26 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.