Unverified Commit 46e41ba3 authored by Dannon's avatar Dannon Committed by GitHub
Browse files

Merge pull request #14328 from mvdbeek/use_client_build_epoch_for_cache_busting

[22.05] Attempt to use epoch of client build time for cache busting
parents b30cd081 057b877f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ lib/galaxy.egg-info
lib/galaxy/web/framework/static/maps
lib/galaxy/web/framework/static/scripts
lib/galaxy/web/framework/static/style
lib/galaxy/web/framework/meta.json

# Database stuff
/database/
+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@
    "date-fns-tz": "^1.3.3",
    "decode-uri-component": "^0.2.0",
    "dom-to-image": "^2.6.0",
    "dumpmeta-webpack-plugin": "^0.2.0",
    "elkjs": "^0.7.1",
    "file-saver": "^2.0.5",
    "flush-promises": "^1.0.2",
+12 −1
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@ const VueLoaderPlugin = require("vue-loader/lib/plugin");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
const DuplicatePackageCheckerPlugin = require("@cerner/duplicate-package-checker-webpack-plugin");
const { DumpMetaPlugin } = require("dumpmeta-webpack-plugin");

const scriptsBase = path.join(__dirname, "src");
const testsBase = path.join(__dirname, "tests");
@@ -24,6 +25,8 @@ const modulesExcludedFromLibs = [
    "citeproc",
].join("|");

const buildDate = new Date();

module.exports = (env = {}, argv = {}) => {
    // environment name based on -d, -p, webpack flag
    const targetEnv = process.env.NODE_ENV == "production" || argv.mode == "production" ? "production" : "development";
@@ -193,13 +196,21 @@ module.exports = (env = {}, argv = {}) => {
            }),
            new webpack.DefinePlugin({
                __targetEnv__: JSON.stringify(targetEnv),
                __buildTimestamp__: JSON.stringify(new Date().toISOString()),
                __buildTimestamp__: JSON.stringify(buildDate.toISOString()),
            }),
            new VueLoaderPlugin(),
            new MiniCssExtractPlugin({
                filename: "[name].css",
            }),
            new DuplicatePackageCheckerPlugin(),
            new DumpMetaPlugin({
                filename: path.join(__dirname, "../lib/galaxy/web/framework/meta.json"),
                prepare: (stats) => ({
                    // add any other information you need to dump
                    hash: stats.hash,
                    epoch: Date.parse(buildDate),
                }),
            }),
        ],
        devServer: {
            client: {
+7 −0
Original line number Diff line number Diff line
@@ -3855,6 +3855,13 @@ dot-case@^3.0.4:
    no-case "^3.0.4"
    tslib "^2.0.3"

dumpmeta-webpack-plugin@^0.2.0:
  version "0.2.0"
  resolved "https://registry.yarnpkg.com/dumpmeta-webpack-plugin/-/dumpmeta-webpack-plugin-0.2.0.tgz#c3a9da7d163ad3bb1d0373fb2c0bf5bb9b626b8f"
  integrity sha512-9oxLTPvYVtk7HOmOq2rGQlvajCNiXtIKLInIrdNpdgzeoMMELaAsRsRBZfm6xf0JuwyBfytdJxsmtM6luTeqzA==
  dependencies:
    webpack ">=4.0.0 <6.0.0"

duplexify@^3.6.0:
  version "3.7.1"
  resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309"
+2 −1
Original line number Diff line number Diff line
@@ -123,6 +123,7 @@ from galaxy.web import (
    legacy_url_for,
    url_for,
)
from galaxy.web.framework.base import server_starttime
from galaxy.web.proxy import ProxyManager
from galaxy.web.short_term_storage import (
    ShortTermStorageAllocator,
@@ -739,7 +740,7 @@ class UniverseApplication(StructuredApp, GalaxyManagerApplication):
        self.url_for = url_for
        self.legacy_url_for = legacy_url_for

        self.server_starttime = int(time.time())  # used for cachebusting
        self.server_starttime = server_starttime  # used for cachebusting
        # Limit lifetime of tool shed repository cache to app startup
        self.tool_shed_repository_cache = None
        self.api_spec = None
Loading