Skip to content
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

[FEAT] Remove the need for rebuild after config changes #1528

Merged
merged 76 commits into from
Apr 20, 2024
Merged

Conversation

Lissy93
Copy link
Owner

@Lissy93 Lissy93 commented Apr 8, 2024

🏗️ Architecture Extra Large Lissy93 /FEAT/Dashy-V3 → Lissy93/dashy Commits: 76 | Files Changed: 97 | Additions: 1474 Powered by Pull Request Badge

This is a big one...

Note

See #1529 for upgrade details

  • Read config at runtime, not build-time (no more rebuilds!)
  • Use a directory instead of file for user-provided assets
  • Handle and serve up user-data in the web server
  • Accept env vars for widget secrets (Re: ✨ Feature: add user defined environment variables #1438)
  • Switch Docker port, from 80 to 8080 (non-root container)
  • Fix local config saving, multi-page support and some other things
  • Updated docs to reflect all the above changes
  • Added a new theme (glass)

Category: Feature

Overview

  • Fetch the config file client-side, instead of compiling the app with the config file. This means you can change the config, without needing to recompile the app!
  • Changed the location of user data, from a single file to a directory (/public/conf.yml to /user-data/...)
  • Some other stuff (I'll add here soon...)

Issue Number
// TODO: Find and tag related issues

New Vars
N/A

Screenshot

Code Quality Checklist (Please complete)

  • All changes are backwards compatible
  • All lint checks and tests are passing
  • There are no (new) build warnings or errors
  • (If a new config option is added) Attribute is outlined in the schema and documented
  • (If a new dependency is added) Package is essential, and has been checked out for security or performance
  • Bumps version, if new feature added

Lissy93 and others added 30 commits July 15, 2022 20:03
…onfig

Attempt at adding header auth. Ignore Settings #981
@liss-bot
Copy link
Collaborator

yarn.lock changes

Summary

Status Count
ADDED 41
UPDATED 199
DOWNGRADED 2
REMOVED 1
Click to toggle table visibility
Name Status Previous Current
@achrinza/node-ipc UPDATED 9.2.2 9.2.8
@ampproject/remapping UPDATED 2.2.1 2.3.0
@babel/code-frame UPDATED 7.23.5 7.24.2
@babel/compat-data UPDATED 7.23.5 7.24.4
@babel/core UPDATED 7.23.9 7.24.4
@babel/generator UPDATED 7.23.6 7.24.4
@babel/helper-create-class-features-plugin UPDATED 7.23.10 7.24.4
@babel/helper-define-polyfill-provider UPDATED 0.5.0 0.6.1
@babel/helper-module-imports UPDATED 7.22.15 7.24.3
@babel/helper-plugin-utils UPDATED 7.22.5 7.24.0
@babel/helper-replace-supers UPDATED 7.22.20 7.24.1
@babel/helper-string-parser UPDATED 7.23.4 7.24.1
@babel/helpers UPDATED 7.23.9 7.24.4
@babel/highlight UPDATED 7.23.4 7.24.2
@babel/parser UPDATED 7.23.9 7.24.4
@babel/plugin-bugfix-firefox-class-in-computed-class-key ADDED - 7.24.4
@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression UPDATED 7.23.3 7.24.1
@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining UPDATED 7.23.3 7.24.1
@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly UPDATED 7.23.7 7.24.1
@babel/plugin-proposal-decorators UPDATED 7.23.9 7.24.1
@babel/plugin-syntax-decorators UPDATED 7.23.3 7.24.1
@babel/plugin-syntax-import-assertions UPDATED 7.23.3 7.24.1
@babel/plugin-syntax-import-attributes UPDATED 7.23.3 7.24.1
@babel/plugin-syntax-jsx UPDATED 7.23.3 7.24.1
@babel/plugin-transform-arrow-functions UPDATED 7.23.3 7.24.1
@babel/plugin-transform-async-generator-functions UPDATED 7.23.9 7.24.3
@babel/plugin-transform-async-to-generator UPDATED 7.23.3 7.24.1
@babel/plugin-transform-block-scoped-functions UPDATED 7.23.3 7.24.1
@babel/plugin-transform-block-scoping UPDATED 7.23.4 7.24.4
@babel/plugin-transform-class-properties UPDATED 7.23.3 7.24.1
@babel/plugin-transform-class-static-block UPDATED 7.23.4 7.24.4
@babel/plugin-transform-classes UPDATED 7.23.8 7.24.1
@babel/plugin-transform-computed-properties UPDATED 7.23.3 7.24.1
@babel/plugin-transform-destructuring UPDATED 7.23.3 7.24.1
@babel/plugin-transform-dotall-regex UPDATED 7.23.3 7.24.1
@babel/plugin-transform-duplicate-keys UPDATED 7.23.3 7.24.1
@babel/plugin-transform-dynamic-import UPDATED 7.23.4 7.24.1
@babel/plugin-transform-exponentiation-operator UPDATED 7.23.3 7.24.1
@babel/plugin-transform-export-namespace-from UPDATED 7.23.4 7.24.1
@babel/plugin-transform-for-of UPDATED 7.23.6 7.24.1
@babel/plugin-transform-function-name UPDATED 7.23.3 7.24.1
@babel/plugin-transform-json-strings UPDATED 7.23.4 7.24.1
@babel/plugin-transform-literals UPDATED 7.23.3 7.24.1
@babel/plugin-transform-logical-assignment-operators UPDATED 7.23.4 7.24.1
@babel/plugin-transform-member-expression-literals UPDATED 7.23.3 7.24.1
@babel/plugin-transform-modules-amd UPDATED 7.23.3 7.24.1
@babel/plugin-transform-modules-commonjs UPDATED 7.23.3 7.24.1
@babel/plugin-transform-modules-systemjs UPDATED 7.23.9 7.24.1
@babel/plugin-transform-modules-umd UPDATED 7.23.3 7.24.1
@babel/plugin-transform-new-target UPDATED 7.23.3 7.24.1
@babel/plugin-transform-nullish-coalescing-operator UPDATED 7.23.4 7.24.1
@babel/plugin-transform-numeric-separator UPDATED 7.23.4 7.24.1
@babel/plugin-transform-object-rest-spread UPDATED 7.23.4 7.24.1
@babel/plugin-transform-object-super UPDATED 7.23.3 7.24.1
@babel/plugin-transform-optional-catch-binding UPDATED 7.23.4 7.24.1
@babel/plugin-transform-optional-chaining UPDATED 7.23.4 7.24.1
@babel/plugin-transform-parameters UPDATED 7.23.3 7.24.1
@babel/plugin-transform-private-methods UPDATED 7.23.3 7.24.1
@babel/plugin-transform-private-property-in-object UPDATED 7.23.4 7.24.1
@babel/plugin-transform-property-literals UPDATED 7.23.3 7.24.1
@babel/plugin-transform-regenerator UPDATED 7.23.3 7.24.1
@babel/plugin-transform-reserved-words UPDATED 7.23.3 7.24.1
@babel/plugin-transform-runtime UPDATED 7.23.9 7.24.3
@babel/plugin-transform-shorthand-properties UPDATED 7.23.3 7.24.1
@babel/plugin-transform-spread UPDATED 7.23.3 7.24.1
@babel/plugin-transform-sticky-regex UPDATED 7.23.3 7.24.1
@babel/plugin-transform-template-literals UPDATED 7.23.3 7.24.1
@babel/plugin-transform-typeof-symbol UPDATED 7.23.3 7.24.1
@babel/plugin-transform-unicode-escapes UPDATED 7.23.3 7.24.1
@babel/plugin-transform-unicode-property-regex UPDATED 7.23.3 7.24.1
@babel/plugin-transform-unicode-regex UPDATED 7.23.3 7.24.1
@babel/plugin-transform-unicode-sets-regex UPDATED 7.23.3 7.24.1
@babel/preset-env UPDATED 7.23.9 7.24.4
@babel/runtime UPDATED 7.23.9 7.24.4
@babel/template UPDATED 7.23.9 7.24.0
@babel/traverse UPDATED 7.23.9 7.24.1
@babel/types UPDATED 7.23.9 7.24.0
@hapi/hoek UPDATED 8.5.1 9.3.0
@hapi/topo UPDATED 3.1.6 5.1.0
@jridgewell/gen-mapping UPDATED 0.3.4 0.3.5
@jridgewell/set-array UPDATED 1.1.2 1.2.1
@jridgewell/source-map ADDED - 0.3.6
@jridgewell/trace-mapping UPDATED 0.3.23 0.3.25
@nodelib/fs.scandir ADDED - 2.1.5
@nodelib/fs.stat UPDATED 1.1.3 2.0.5
@nodelib/fs.walk ADDED - 1.2.8
@sentry-internal/feedback UPDATED 7.102.1 7.110.0
@sentry-internal/replay-canvas UPDATED 7.102.1 7.110.0
@sentry-internal/tracing UPDATED 7.102.1 7.110.0
@sentry/browser UPDATED 7.102.1 7.110.0
@sentry/core UPDATED 7.102.1 7.110.0
@sentry/replay UPDATED 7.102.1 7.110.0
@sentry/tracing UPDATED 7.102.1 7.110.0
@sentry/types UPDATED 7.102.1 7.110.0
@sentry/utils UPDATED 7.102.1 7.110.0
@sentry/vue UPDATED 7.102.1 7.110.0
@sideway/address ADDED - 4.1.5
@sideway/formula ADDED - 3.0.1
@sideway/pinpoint ADDED - 2.0.0
@types/eslint ADDED - 8.56.9
@types/eslint-scope ADDED - 3.7.7
@types/estree ADDED - 1.0.5
@types/express-serve-static-core UPDATED 4.17.43 4.19.0
@types/node UPDATED 20.11.20 20.12.7
@types/parse-json ADDED - 4.0.2
@types/qs UPDATED 6.9.11 6.9.14
@types/serve-static UPDATED 1.15.5 1.15.7
@types/uglify-js UPDATED 3.17.4 3.17.5
@types/webpack-env ADDED - 1.18.4
@vue/babel-helper-vue-transform-on UPDATED 1.2.1 1.2.2
@vue/babel-plugin-jsx UPDATED 1.2.1 1.2.2
@vue/babel-plugin-resolve-type UPDATED 1.2.1 1.2.2
@vue/cli-plugin-typescript ADDED - 5.0.8
@vue/cli-shared-utils UPDATED 4.5.19 5.0.8
@vue/compiler-core UPDATED 3.4.19 3.4.21
@vue/compiler-dom UPDATED 3.4.19 3.4.21
@vue/compiler-sfc UPDATED 3.4.19 3.4.21
@vue/compiler-ssr UPDATED 3.4.19 3.4.21
@vue/shared UPDATED 3.4.19 3.4.21
@webassemblyjs/ast UPDATED 1.9.0 1.12.1
@webassemblyjs/floating-point-hex-parser UPDATED 1.9.0 1.11.6
@webassemblyjs/helper-api-error UPDATED 1.9.0 1.11.6
@webassemblyjs/helper-buffer UPDATED 1.9.0 1.12.1
@webassemblyjs/helper-numbers ADDED - 1.11.6
@webassemblyjs/helper-wasm-bytecode UPDATED 1.9.0 1.11.6
@webassemblyjs/helper-wasm-section UPDATED 1.9.0 1.12.1
@webassemblyjs/ieee754 UPDATED 1.9.0 1.11.6
@webassemblyjs/leb128 UPDATED 1.9.0 1.11.6
@webassemblyjs/utf8 UPDATED 1.9.0 1.11.6
@webassemblyjs/wasm-edit UPDATED 1.9.0 1.12.1
@webassemblyjs/wasm-gen UPDATED 1.9.0 1.12.1
@webassemblyjs/wasm-opt UPDATED 1.9.0 1.12.1
@webassemblyjs/wasm-parser UPDATED 1.9.0 1.12.1
@webassemblyjs/wast-printer UPDATED 1.9.0 1.12.1
ace-builds UPDATED 1.32.6 1.33.0
acorn UPDATED 7.4.1 8.11.3
acorn-import-assertions ADDED - 1.9.0
array-includes UPDATED 3.1.7 3.1.8
array-union UPDATED 1.0.2 2.1.0
array.prototype.filter REMOVED 1.0.3 -
array.prototype.findlastindex UPDATED 1.2.4 1.2.5
array.prototype.reduce UPDATED 1.0.6 1.0.7
asn1.js DOWNGRADED 5.4.1 4.10.1
at-least-node ADDED - 1.0.0
axios UPDATED 1.6.7 1.6.8
babel-plugin-polyfill-corejs2 UPDATED 0.4.8 0.4.10
babel-plugin-polyfill-corejs3 UPDATED 0.9.0 0.10.4
babel-plugin-polyfill-regenerator UPDATED 0.5.5 0.6.1
binary-extensions UPDATED 2.2.0 2.3.0
bl ADDED - 4.1.0
body-parser UPDATED 1.20.1 1.20.2
browserify-sign UPDATED 4.2.2 4.2.3
buffer UPDATED 4.9.2 5.7.1
caniuse-lite UPDATED 1.0.30001589 1.0.30001609
cookie UPDATED 0.5.0 0.6.0
core-js UPDATED 3.36.0 3.36.1
core-js-compat UPDATED 3.36.0 3.36.1
cosmiconfig UPDATED 5.2.1 6.0.0
data-view-buffer ADDED - 1.0.1
data-view-byte-length ADDED - 1.0.1
data-view-byte-offset ADDED - 1.0.0
deepmerge UPDATED 1.5.2 4.3.1
define-lazy-prop ADDED - 2.0.0
dir-glob UPDATED 2.2.2 3.0.1
electron-to-chromium UPDATED 1.4.681 1.4.736
elliptic UPDATED 6.5.4 6.5.5
enhanced-resolve UPDATED 4.5.0 5.16.0
es-abstract UPDATED 1.22.4 1.23.3
es-module-lexer ADDED - 1.5.0
es-object-atoms ADDED - 1.0.0
eslint-module-utils UPDATED 2.8.0 2.8.1
express UPDATED 4.18.2 4.19.2
fast-glob UPDATED 2.2.7 3.3.2
fastq ADDED - 1.17.1
follow-redirects UPDATED 1.15.5 1.15.6
fork-ts-checker-webpack-plugin ADDED - 6.5.3
fs-extra UPDATED 7.0.1 9.1.0
fs-monkey ADDED - 1.0.5
glob-to-regexp UPDATED 0.3.0 0.4.1
globby UPDATED 9.2.0 11.1.0
hash-base DOWNGRADED 3.1.0 3.0.4
hasown UPDATED 2.0.1 2.0.2
is-data-view ADDED - 1.0.1
is-interactive ADDED - 1.0.0
is-unicode-supported ADDED - 0.1.0
jest-worker ADDED - 27.5.1
joi ADDED - 17.12.3
jsonfile UPDATED 4.0.0 6.1.0
loader-runner UPDATED 2.4.0 4.3.0
log-symbols UPDATED 2.2.0 4.1.0
lru-cache UPDATED 5.1.1 6.0.0
magic-string UPDATED 0.30.7 0.30.9
memfs ADDED - 3.6.0
nan UPDATED 2.18.0 2.19.0
node-fetch ADDED - 2.7.0
object-is UPDATED 1.1.5 1.1.6
object.entries UPDATED 1.1.7 1.1.8
object.fromentries UPDATED 2.0.7 2.0.8
object.getownpropertydescriptors UPDATED 2.1.7 2.1.8
object.groupby UPDATED 1.0.2 1.0.3
object.values UPDATED 1.1.7 1.2.0
open UPDATED 6.4.0 8.4.2
ora UPDATED 3.4.0 5.4.1
parse-asn1 UPDATED 5.1.6 5.1.7
path-type UPDATED 3.0.0 4.0.0
postcss UPDATED 8.4.35 8.4.38
postcss-selector-parser UPDATED 6.0.15 6.0.16
qs UPDATED 6.11.2 6.12.1
queue-microtask ADDED - 1.2.3
raw-body UPDATED 2.5.1 2.5.2
reusify ADDED - 1.0.4
run-parallel ADDED - 1.2.0
safe-array-concat UPDATED 1.1.0 1.1.2
sass UPDATED 1.71.1 1.75.0
schema-utils UPDATED 2.7.1 3.3.0
semver UPDATED 6.3.1 7.6.0
serialize-javascript UPDATED 4.0.0 6.0.2
set-function-length UPDATED 1.2.1 1.2.2
side-channel UPDATED 1.0.5 1.0.6
slash UPDATED 2.0.0 3.0.0
source-map-js UPDATED 1.0.2 1.2.0
string.prototype.padend UPDATED 3.1.5 3.1.6
string.prototype.trim UPDATED 1.2.8 1.2.9
string.prototype.trimend UPDATED 1.0.7 1.0.8
string.prototype.trimstart UPDATED 1.0.7 1.0.8
supports-color UPDATED 7.2.0 8.1.1
tapable UPDATED 1.1.3 2.2.1
terser UPDATED 4.8.1 5.30.3
terser-webpack-plugin UPDATED 1.4.5 5.3.10
thread-loader UPDATED 2.1.3 3.0.4
tr46 ADDED - 0.0.3
ts-loader ADDED - 9.5.1
typed-array-length UPDATED 1.0.5 1.0.6
typescript ADDED - 5.4.5
universalify UPDATED 0.1.2 2.0.1
vanilla-picker UPDATED 2.12.2 2.12.3
vue-select UPDATED 3.20.2 3.20.3
watchpack UPDATED 1.7.5 2.4.1
webidl-conversions ADDED - 3.0.1
webpack UPDATED 4.47.0 5.91.0
webpack-sources UPDATED 1.4.3 3.2.3
whatwg-url ADDED - 5.0.0
which-typed-array UPDATED 1.1.14 1.1.15

Repository owner deleted a comment from liss-bot Apr 16, 2024
@Lissy93
Copy link
Owner Author

Lissy93 commented Apr 16, 2024

All ready now!
I'll come back to this tomorrow evening, double check everything, and merge.

@CrazyWolf13
Copy link
Collaborator

CrazyWolf13 commented Apr 16, 2024

All ready now! I'll come back to this tomorrow evening, double check everything, and merge.

@Lissy93
👍

In quick-start.md the port should also be changed to 8080:8080 instead of 8080:80 ?

@liss-bot

This comment was marked as duplicate.

@Lissy93
Copy link
Owner Author

Lissy93 commented Apr 16, 2024

Oh yeah, you're right, I forgot to update port number in the docs. That should be done now :)

@liss-bot

This comment was marked as off-topic.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Lissy93 I think here on quick-start.md the port should also be changed to 8080:8080 ?

@liss-bot

This comment was marked as duplicate.

@liss-bot

This comment was marked as duplicate.

@Lissy93 Lissy93 merged commit 931915f into master Apr 20, 2024
1 of 3 checks passed
@Lissy93 Lissy93 deleted the FEAT/Dashy-V3 branch April 20, 2024 11:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏗️ Architectural Changes [PR] Updates to application architecture, data flow or structure
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants