From f41763b0b9b9d2e0abda7f0244e05a1d08abdfaa Mon Sep 17 00:00:00 2001 From: Matiss Janis Aboltins <matiss@mja.lv> Date: Thu, 29 Jun 2023 19:25:54 +0100 Subject: [PATCH] :fire: remove unused scripts; simplify version script (#1227) 1. Removed some more unused scripts 2. Simplified the way we build `version` in to the source --- packages/desktop-client/bin/build-browser | 5 +- packages/desktop-client/bin/watch-browser | 3 - .../src/browser-preload.browser.js | 4 +- packages/loot-core/bin/get-db-schema | 35 ------ packages/loot-core/bin/migrate.js | 2 - packages/loot-core/bin/profile-sql.js | 118 ------------------ packages/loot-core/bin/sql-regenerate-views | 26 ---- upcoming-release-notes/1227.md | 6 + 8 files changed, 10 insertions(+), 189 deletions(-) delete mode 100644 packages/loot-core/bin/get-db-schema delete mode 100755 packages/loot-core/bin/migrate.js delete mode 100755 packages/loot-core/bin/profile-sql.js delete mode 100755 packages/loot-core/bin/sql-regenerate-views create mode 100644 upcoming-release-notes/1227.md diff --git a/packages/desktop-client/bin/build-browser b/packages/desktop-client/bin/build-browser index 605fe5244..37fddd17f 100755 --- a/packages/desktop-client/bin/build-browser +++ b/packages/desktop-client/bin/build-browser @@ -3,16 +3,13 @@ ROOT=`dirname $0` cd "$ROOT/.." -VERSION=`cat "$ROOT/../../desktop-client/package.json" | grep version | head -n1 | awk -F "\"" '{print $4}' | tr -d '\r\n'` - -echo "Building version $VERSION for the browser..." +echo "Building the browser..." rm -fr build export IS_GENERIC_BROWSER=1 export INLINE_RUNTIME_CHUNK=false export REACT_APP_BACKEND_WORKER_HASH=`ls "$ROOT"/../public/kcab/kcab.worker.*.js | sed 's/.*kcab\.worker\.\(.*\)\.js/\1/'` -export REACT_APP_ACTUAL_VERSION="$VERSION" yarn build diff --git a/packages/desktop-client/bin/watch-browser b/packages/desktop-client/bin/watch-browser index c62478f08..2f2861696 100755 --- a/packages/desktop-client/bin/watch-browser +++ b/packages/desktop-client/bin/watch-browser @@ -3,11 +3,8 @@ ROOT=`dirname $0` cd "$ROOT/.." -VERSION=`cat "$ROOT/../../desktop-client/package.json" | grep version | head -n1 | awk -F "\"" '{print $4}' | tr -d '\r\n'` - export IS_GENERIC_BROWSER=1 export PORT=3001 export REACT_APP_BACKEND_WORKER_HASH="dev" -export REACT_APP_ACTUAL_VERSION="$VERSION" yarn start diff --git a/packages/desktop-client/src/browser-preload.browser.js b/packages/desktop-client/src/browser-preload.browser.js index 1601925d0..f71812e1d 100644 --- a/packages/desktop-client/src/browser-preload.browser.js +++ b/packages/desktop-client/src/browser-preload.browser.js @@ -1,5 +1,7 @@ import { initBackend as initSQLBackend } from 'absurd-sql/dist/indexeddb-main-thread'; +import packageJson from '../package.json'; + const backendWorkerUrl = new URL('./browser-server.js', import.meta.url); // This file installs global variables that the app expects. @@ -8,7 +10,7 @@ const backendWorkerUrl = new URL('./browser-server.js', import.meta.url); // everything else. let IS_DEV = process.env.NODE_ENV === 'development'; -let ACTUAL_VERSION = process.env.REACT_APP_ACTUAL_VERSION; +let ACTUAL_VERSION = packageJson.version; // *** Start the backend *** let worker; diff --git a/packages/loot-core/bin/get-db-schema b/packages/loot-core/bin/get-db-schema deleted file mode 100644 index 2e17a5cec..000000000 --- a/packages/loot-core/bin/get-db-schema +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env ./cli-runner.js -process.env.LOOT_DATA_DIR = __dirname + '/../../../../data'; -import * as sqlite from '../platform/server/sqlite'; -import * as db from '../server/db'; -import { getMessages } from '../server/sync'; - -let dbPath = process.argv[2]; -let tables = [ - 'spreadsheet_cells', - 'accounts', - 'transactions', - 'categories', - 'category_groups', - 'category_mapping', - 'payees', - 'payee_rules', - 'payee_mapping' -]; - -async function init() { - db.setDatabase(sqlite.openDatabase(dbPath)); - let schema = {}; - - for (let table of tables) { - let fields = await db.all(`PRAGMA table_info(${table})`); - schema[table] = {}; - for (let field of fields) { - schema[table][field.name] = field.type.toLowerCase(); - } - } - - console.log(schema); -} - -init(); diff --git a/packages/loot-core/bin/migrate.js b/packages/loot-core/bin/migrate.js deleted file mode 100755 index 15f1b8914..000000000 --- a/packages/loot-core/bin/migrate.js +++ /dev/null @@ -1,2 +0,0 @@ -#!/usr/bin/env actual-cli-runner.js -require('../src/server/migrate/cli'); diff --git a/packages/loot-core/bin/profile-sql.js b/packages/loot-core/bin/profile-sql.js deleted file mode 100755 index 053f354a4..000000000 --- a/packages/loot-core/bin/profile-sql.js +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env actual-cli-runner.js -import fs from 'fs'; -import os from 'os'; - -import * as asyncStorage from '../src/platform/server/asyncStorage'; -import * as sqlite from '../src/platform/server/sqlite'; -import { runQuery } from '../src/server/aql'; -import * as db from '../src/server/db'; -import { batchMessages, setSyncingMode } from '../src/server/sync'; -import q from '../src/shared/query'; -import { makeChild } from '../src/shared/transactions'; - -let dbPath = process.argv[3]; - -if (dbPath == null || dbPath === '') { - console.log('db path is required'); - process.exit(1); -} - -function pad(n) { - return n < 10 ? '0' + n : n; -} - -async function init() { - asyncStorage.init(); - setSyncingMode('disabled'); - - let tempPath = os.tmpdir() + '/db-profile.sql'; - fs.copyFileSync(dbPath, tempPath); - - db.setDatabase(sqlite.openDatabase(tempPath)); - - let accounts = await db.getAccounts(); - - await batchMessages(() => { - for (let i = 0; i < 100; i++) { - if (Math.random() < 0.02) { - let parent = { - date: '2020-01-' + pad(Math.floor(Math.random() * 30)), - amount: Math.floor(Math.random() * 10000), - account: accounts[0].id, - notes: 'foo', - }; - db.insertTransaction(parent); - db.insertTransaction( - makeChild(parent, { - amount: Math.floor(Math.random() * 1000), - }), - ); - db.insertTransaction( - makeChild(parent, { - amount: Math.floor(Math.random() * 1000), - }), - ); - db.insertTransaction( - makeChild(parent, { - amount: Math.floor(Math.random() * 1000), - }), - ); - } else { - db.insertTransaction({ - date: '2020-01-' + pad(Math.floor(Math.random() * 30)), - amount: Math.floor(Math.random() * 10000), - account: accounts[0].id, - }); - } - } - }); - - // full: 12647 - // paged: 431 - - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - await db.execQuery('SELECT * FROM transactions'); - - // await db.execQuery('PRAGMA journal_mode = WAL'); - - // console.log( - // await db.all( - // 'SELECT * FROM v_transactions_layer2 WHERE v_transactions_layer2.account = "foo"' - // ) - // ); - - console.log('starting'); - let s = Date.now(); - let { data } = await runQuery( - q('transactions').select('*').options({ splits: 'grouped' }).serialize(), - ); - console.log('# items:', data.length); - console.log('time:', Date.now() - s); - - // for (let i = 0; i < accounts.length; i++) { - // let s = Date.now(); - // // let data = await runQuery( - // // q('transactions') - // // .filter({ account: accounts[i].id }) - // // .calculate({ $sum: '$amount' }) - // // .serialize() - // // ); - // let rows = db.runQuery( - // `SELECT SUM(amount) as total FROM v_transactions_layer2 WHERE account = "${accounts[i].id}"`, - // [], - // true - // ); - // console.log('Total:', rows[0]); - // console.log('Time:', Date.now() - s); - // } - - // console.log(data); -} - -init(); diff --git a/packages/loot-core/bin/sql-regenerate-views b/packages/loot-core/bin/sql-regenerate-views deleted file mode 100755 index eaa49066d..000000000 --- a/packages/loot-core/bin/sql-regenerate-views +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env actual-cli-runner.js -const { schema } = require('../src/server/aql'); -const table = process.argv[3]; - -if (table == null || table === 'transactions') { - let fields = Object.keys(schema.transactions).map(fieldName => { - let desc = schema.transactions[fieldName]; - let field = `t.${desc.name || fieldName}`; - - if (field === 't.description') { - field = 'pm.targetId'; - } else if (field === 't.category') { - field = 'cm.transferId'; - } - - return `${field} AS ${fieldName}`; - }); - - console.log(` -DROP VIEW IF EXISTS v_transactions; -CREATE VIEW v_transactions AS -SELECT ${fields.join(', ')} FROM transactions t - LEFT JOIN category_mapping cm ON cm.id = t.category - LEFT JOIN payee_mapping pm ON pm.id = t.description -`); -} diff --git a/upcoming-release-notes/1227.md b/upcoming-release-notes/1227.md new file mode 100644 index 000000000..75d5e229a --- /dev/null +++ b/upcoming-release-notes/1227.md @@ -0,0 +1,6 @@ +--- +category: Maintenance +authors: [MatissJanis] +--- + +Remove unused build scripts and simplify how we build version number -- GitLab