Girish Ramakrishnan
|
4ed6fbbd74
|
eslint: add no-shadow
|
2026-02-18 08:18:37 +01:00 |
|
Girish Ramakrishnan
|
36aa641cb9
|
migrate to "export default"
also, set no-use-before-define in linter
|
2026-02-14 15:43:24 +01:00 |
|
Girish Ramakrishnan
|
96dc79cfe6
|
Migrate codebase from CommonJS to ES Modules
- Convert all require()/module.exports to import/export across 260+ files
- Add "type": "module" to package.json to enable ESM by default
- Add migrations/package.json with "type": "commonjs" to keep db-migrate compatible
- Convert eslint.config.js to ESM with sourceType: "module"
- Replace __dirname/__filename with import.meta.dirname/import.meta.filename
- Replace require.main === module with process.argv[1] === import.meta.filename
- Remove 'use strict' directives (implicit in ESM)
- Convert dynamic require() in switch statements to static import lookup maps
(dns.js, domains.js, backupformats.js, backupsites.js, network.js)
- Extract self-referencing exports.CONSTANT patterns into standalone const
declarations (apps.js, services.js, locks.js, users.js, mail.js, etc.)
- Lazify SERVICES object in services.js to avoid circular dependency TDZ issues
- Add clearMailQueue() to mailer.js for ESM-safe queue clearing in tests
- Add _setMockApp() to ldapserver.js for ESM-safe test mocking
- Add _setMockResolve() wrapper to dig.js for ESM-safe DNS mocking in tests
- Convert backupupload.js to use dynamic imports so --check exits before
loading the module graph (which requires BOX_ENV)
- Update check-install to use ESM import for infra_version.js
- Convert scripts/ (hotfix, release, remote_hotfix.js, find-unused-translations)
- All 1315 tests passing
Migration stats (AI-assisted using Cursor with Claude):
- Wall clock time: ~3-4 hours
- Assistant completions: ~80-100
- Estimated token usage: ~1-2M tokens
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-02-14 15:11:45 +01:00 |
|
Johannes Zellner
|
806309fc33
|
Apply mountoint vs mountpointS lsblk output fix also to mounts
|
2026-01-06 21:11:16 +01:00 |
|
Girish Ramakrishnan
|
392d47852d
|
system: skip dataDir analysis if it is missing
|
2025-12-05 15:59:49 +01:00 |
|
Girish Ramakrishnan
|
20d4ce6632
|
add fsused to block_devices output
|
2025-11-10 11:01:19 +01:00 |
|
Girish Ramakrishnan
|
34f04828c5
|
Fix casing in translations
dashboard/README.md has information of the casing style
|
2025-10-22 18:40:20 +02:00 |
|
Johannes Zellner
|
eb7d7a2d1b
|
Show disk usage content name delivered from the backend
|
2025-10-15 12:19:15 +02:00 |
|
Girish Ramakrishnan
|
1f32d4b4dd
|
sysinfo: if product name is empty use product family
|
2025-10-15 12:06:32 +02:00 |
|
Girish Ramakrishnan
|
d3b4c2f394
|
add note on confusing naming
|
2025-10-15 11:59:35 +02:00 |
|
Johannes Zellner
|
b289146aeb
|
Only check once for the default backup location for metrics
|
2025-10-15 11:06:42 +02:00 |
|
Johannes Zellner
|
38267a26c1
|
Send some metrics
|
2025-09-29 16:16:22 +02:00 |
|
Girish Ramakrishnan
|
f92cdf36f5
|
system: return the mounted and unmounted block devices (as long as xfs or ext4)
|
2025-09-23 18:51:23 +02:00 |
|
Girish Ramakrishnan
|
43cc91aca2
|
fix tests
|
2025-09-13 15:22:01 +02:00 |
|
Girish Ramakrishnan
|
c5b7264f1a
|
rename backupTargets to backupSites
|
2025-09-12 10:32:37 +02:00 |
|
Girish Ramakrishnan
|
ba14d1e846
|
block devices: filter the root disk
|
2025-09-10 11:52:05 +02:00 |
|
Johannes Zellner
|
937dd2be5e
|
Do not list /boot partition for blockdevices routes
|
2025-08-21 10:26:46 +02:00 |
|
Girish Ramakrishnan
|
12e073e8cf
|
use node: prefix for requires
mostly because code is being autogenerated by all the AI stuff using
this prefix. it's also used in the stack trace.
|
2025-08-14 12:55:35 +05:30 |
|
Girish Ramakrishnan
|
547d8ae113
|
filesystem: rename backupFolder to backupDir
|
2025-08-02 10:37:37 +02:00 |
|
Girish Ramakrishnan
|
d559df3ee3
|
system: take multiple backup targets into account
|
2025-07-25 08:45:11 +02:00 |
|
Girish Ramakrishnan
|
931311f11f
|
rename backups to backuptargets
|
2025-07-24 18:54:10 +02:00 |
|
Girish Ramakrishnan
|
0e3cc97ee6
|
system: use last mountpoint like before
|
2025-07-20 10:18:06 +02:00 |
|
Girish Ramakrishnan
|
66107cf7a4
|
system: make filesystem return value an array
Filesystem of df output is not unique
|
2025-07-20 10:06:01 +02:00 |
|
Girish Ramakrishnan
|
1e8df5c9d0
|
system: check if mountpoint is array
|
2025-07-19 13:06:50 +02:00 |
|
Johannes Zellner
|
e181abe797
|
Polish disk usage
|
2025-07-18 13:36:48 +02:00 |
|
Girish Ramakrishnan
|
7818219763
|
system: query docker size lazily
|
2025-07-18 13:05:33 +02:00 |
|
Girish Ramakrishnan
|
25d20266b8
|
diskusage: emit other entry
|
2025-07-18 13:02:53 +02:00 |
|
Girish Ramakrishnan
|
5e1c32b606
|
shell: rename signal to abortSignal
this prevents accidental typos with child_process signal handling
|
2025-07-17 09:50:43 +02:00 |
|
Girish Ramakrishnan
|
8bf8c278f0
|
system: add tests for fs usage route
|
2025-07-17 01:42:28 +02:00 |
|
Girish Ramakrishnan
|
5539f74bea
|
system: add disk usage task
|
2025-07-17 00:09:50 +02:00 |
|
Girish Ramakrishnan
|
989d843fcb
|
shell: make shell.sudo promise based and waitable
|
2025-07-16 22:04:24 +02:00 |
|
Girish Ramakrishnan
|
4b79881472
|
system: route to get filesystem
|
2025-07-16 17:20:28 +02:00 |
|
Girish Ramakrishnan
|
85eb88a4a6
|
system: show the kernel version
|
2025-07-09 18:32:28 +02:00 |
|
Girish Ramakrishnan
|
d9c104613c
|
tasks: rework the startTask API
it is now async. change was required to reset the pending flag
|
2025-06-17 19:32:46 +02:00 |
|
Girish Ramakrishnan
|
46dbd016f4
|
typo
|
2025-05-07 13:35:09 +02:00 |
|
Girish Ramakrishnan
|
0cf0c7a27c
|
notifications: add low disk space notification
|
2025-05-07 13:19:20 +02:00 |
|
Girish Ramakrishnan
|
558620cdfa
|
deprecate ubuntu 20.04 support
|
2025-02-26 16:38:04 +01:00 |
|
Girish Ramakrishnan
|
8fd9324048
|
Fix crash
|
2024-12-11 19:17:44 +01:00 |
|
Girish Ramakrishnan
|
746e694d7e
|
notifications: rename alert to pin and unpin
|
2024-12-11 17:31:32 +01:00 |
|
Girish Ramakrishnan
|
ead419003b
|
notifications: rename ALERT_ to TYPE_
|
2024-12-11 15:29:20 +01:00 |
|
Girish Ramakrishnan
|
6141db8f34
|
Update ubuntu check to bionic
|
2024-12-11 15:03:59 +01:00 |
|
Girish Ramakrishnan
|
2a6c52800b
|
system: filesystems in exclude are excluded from content analysis
some disks can be very slow and noisy (at home). this allows users to simply skip them.
also, applicable for large storage boxes
|
2024-11-30 13:08:21 +01:00 |
|
Girish Ramakrishnan
|
320ddfda2e
|
compute docker df only once
|
2024-11-30 12:44:15 +01:00 |
|
Girish Ramakrishnan
|
40febc8ef2
|
system: rename DISK_TYPES to FS_TYPES
|
2024-11-30 12:04:07 +01:00 |
|
Girish Ramakrishnan
|
56f6519b3e
|
rename disks to filesystems
|
2024-11-30 12:04:04 +01:00 |
|
Girish Ramakrishnan
|
f219abf082
|
system: indent cache file
|
2024-11-30 11:11:54 +01:00 |
|
Girish Ramakrishnan
|
742a04d149
|
system: expose getDisks only for tests
|
2024-11-30 10:42:06 +01:00 |
|
Girish Ramakrishnan
|
6c3ca9c364
|
shell: rework code to use shell.spawn
spawn gives out streams and we have more control over the stdout/stderr
buffers. otherwise, we have to provide a max buffer capture size to exec
|
2024-10-15 12:13:46 +02:00 |
|
Girish Ramakrishnan
|
a9e1d7641d
|
shell: make require take a tag
|
2024-10-14 21:08:32 +02:00 |
|
Girish Ramakrishnan
|
ea2479beda
|
system: also get rota information
|
2024-09-30 14:09:15 +02:00 |
|