mirror of
https://github.com/nasa/openmct.git
synced 2024-12-23 15:02:23 +00:00
b8949db767
* Change the mount utility to use Vue's createApp and defineComponent methods * Fix display layout memory leaks caused by `getSelectionContext` * fix some display layout leaks due to use of slots * Fix imagery memory leak (removed span tag). NOTE: CompassRose svg leaks memory - must test on firefox to see if this is a Chrome leak. * Fix ActionsAPI action collection and applicable actions leak. * Fix flexible layout memory leaks - remove listeners on unmount. NOTE: One type of overlay plot (Rover Yaw) is still leaking. * pass in the el on mount * e2e test config and spec changes * Remove mounting of limit lines. Use components directly * test: remove `.only()` * Fix display layout memory leaks * Enable passing tests * e2e README and appActions should be what master has. * lint: add word to cspell list * lint: fixes * lint:fix * fix: revert `el` change * fix: remove empty span * fix: creating shapes in displayLayout * fix: avoid `splice` as it loses reactivity * test: reduce timeout time * quick fixes * add prod mode and convert the test config to select the correct mode * Fix webpack prod config * Add launch flag for exposing window.gc * never worked * explicit naming * rename * We don't need to destroy view providers * test: increase timeout time * test: unskip all mem tests * fix(vue-loader): disable static hoisting * chore: run `test:perf:memory` * Don't destroy view providers * Move context menu once listener to beforeUnmount instead. * Disconnect all resize observers on unmount * Delete Test vue component * Use beforeUnmount and remove splice(0) in favor of [] for emptying arrays * re-structure * fix: unregister listener in pane.vue * test: tweak timeouts * chore: lint:fix * test: unskip perf tests * fix: unregister events properly * fix: unregister listener * fix: unregister listener * fix: unregister listener * fix: use `unmounted()` * fix: unregister listeners * fix: unregister listener properly * chore: lint:fix * test: fix imagery layer toggle test * test: increase timeout * Don't use anonymous functions for listeners * Destroy objects and event listeners properly * Delete config stores that are created by components * Use the right unmount hook. Destroy mounted view on unmount. * Use unmounted, not beforeUnmounted * Lint fixes * Fix time strip memory leak * Undo unneeded change for memory leaks. * chore: combine common webpack configs --------- Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov> Co-authored-by: John Hill <john.c.hill@nasa.gov>
51 lines
1.6 KiB
JavaScript
51 lines
1.6 KiB
JavaScript
/* global __dirname module */
|
|
|
|
/*
|
|
This configuration should be used for development purposes. It contains full source map, a
|
|
devServer (which be invoked using by `npm start`), and a non-minified Vue.js distribution.
|
|
If OpenMCT is to be used for a production server, use webpack.prod.js instead.
|
|
*/
|
|
const path = require('path');
|
|
const webpack = require('webpack');
|
|
const { merge } = require('webpack-merge');
|
|
|
|
const common = require('./webpack.common');
|
|
const projectRootDir = path.resolve(__dirname, '..');
|
|
|
|
module.exports = merge(common, {
|
|
mode: 'development',
|
|
watchOptions: {
|
|
// Since we use require.context, webpack is watching the entire directory.
|
|
// We need to exclude any files we don't want webpack to watch.
|
|
// See: https://webpack.js.org/configuration/watch/#watchoptions-exclude
|
|
ignored: [
|
|
'**/{node_modules,dist,docs,e2e}', // All files in node_modules, dist, docs, e2e,
|
|
'**/{*.yml,Procfile,webpack*.js,babel*.js,package*.json,tsconfig.json}', // Config files
|
|
'**/*.{sh,md,png,ttf,woff,svg}', // Non source files
|
|
'**/.*' // dotfiles and dotfolders
|
|
]
|
|
},
|
|
plugins: [
|
|
new webpack.DefinePlugin({
|
|
__OPENMCT_ROOT_RELATIVE__: '"dist/"'
|
|
})
|
|
],
|
|
devtool: 'eval-source-map',
|
|
devServer: {
|
|
devMiddleware: {
|
|
writeToDisk: (filePathString) => {
|
|
const filePath = path.parse(filePathString);
|
|
const shouldWrite = !filePath.base.includes('hot-update');
|
|
|
|
return shouldWrite;
|
|
}
|
|
},
|
|
watchFiles: ['**/*.css'],
|
|
static: {
|
|
directory: path.join(__dirname, '..', '/dist'),
|
|
publicPath: '/dist',
|
|
watch: false
|
|
}
|
|
}
|
|
});
|