aboutsummaryrefslogtreecommitdiffstats
path: root/package.json
Commit message (Collapse)AuthorAge
* build: run integration tests in CIHEADmainLibravatar Kristóf Marussy2022-05-31
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2022-05-31
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2022-05-26
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* fix: react suspense race conditionLibravatar Kristóf Marussy2022-05-16
| | | | | | | | | | The top-level Suspense might trigger before the StoreProvider sets the store, which causes an error to be thrown in the useStore hook. We pass the store explicitly as a prop into the components that should load before the Suspense, which gets rid of the error. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump to react 18Libravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* feat: use wayland when availableLibravatar Kristóf Marussy2022-05-16
| | | | | | | | | | Auto-detect wayland in the yarn watch script. We use a shell script wrapper to launch sophie with wayland-specific arguments whenever appropriate. Because of this, the electron binary that ships with sophie has been renamed to sophie-bin. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: integration testing supportLibravatar Kristóf Marussy2022-05-16
| | | | | | Run integration tests in an electron environment for the main process. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): upgrade dependenciesLibravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): bump nodejs to 16.14.2Libravatar Kristóf Marussy2022-05-16
| | | | | | Make sure we use the latest LTS Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump yarn versionLibravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump electron to 19 for setBackgroundColor fixLibravatar Kristóf Marussy2022-05-16
| | | | | | | | Since https://github.com/electron/electron/pull/33435 has landed in electron 19 alpha, but not in 18, moving to 19 lets us remove the workarounds for setBackgroundColor. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump dependenciesLibravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump electron to 18Libravatar Kristóf Marussy2022-05-16
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump but keep from react 18 for nowLibravatar Kristóf Marussy2022-05-16
| | | | | | | | | We need mui and mobx-react-like support before we can upgrade. See https://github.com/mobxjs/mobx/issues/2526 for discussion about the ramifications of concurrent rendering for mobx. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* feat(main): Add localization supportLibravatar Kristóf Marussy2022-05-16
| | | | | | | | | | | | | | | | Add i18next with a custom backend to the main process to load localization from file. Missing localizations are written to a missing localizations file in debug mode, but silently fall back in production mode. We will also need to add a custom backend for the renderer process that communicates with the main process. (i18next-fs-electron-backend is not applicable here, because we need localizations both in the main and renderer processes.) Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): Bump dependenciesLibravatar Kristóf Marussy2022-02-24
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add test-utils packageLibravatar Kristóf Marussy2022-02-08
| | | | | | | | | | Added as a common devDependency, this lets us handle test utility code from one place. For now, the main reason for its existence is the workaround code for importing jest-each from ESM. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* refactor: Coding conventionsLibravatar Kristóf Marussy2022-02-08
| | | | | | | | | Make sure that files have a default import with the same name as the file whenever possible to reduce surprise. Also shuffles around some file names for better legibility. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* chore(deps): update electron to version 17.0.0Libravatar Depfu Bot2022-02-08
|
* chore(deps): update all of typescript-eslint to version 5.11.0Libravatar Depfu Bot2022-02-08
|
* chore(deps): update eslint to version 8.8.0Libravatar Depfu Bot2022-02-04
|
* chore: Bump dependenciesLibravatar Kristóf Marussy2022-01-27
|
* chore(deps): update chokidar to version 3.5.3Libravatar Depfu Bot2022-01-25
|
* Upgrade npm modulesLibravatar Vijay A2022-01-12
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* Upgrade 'electron' to '16.0.7'Libravatar Vijay A2022-01-12
|
* ci: Export test and coverage reportLibravatar Kristóf Marussy2022-01-10
|
* build: Add pre-commit hookLibravatar Kristóf Marussy2022-01-10
| | | | | | Run lint and tests on source files changes. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add eslint-plugin-securityLibravatar Kristóf Marussy2022-01-10
| | | | | | This would run as part of gitlab SAST (if it didn't time out). Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add eslint-plugin-promiseLibravatar Kristóf Marussy2022-01-09
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add eslint-plugin-unicornLibravatar Kristóf Marussy2022-01-09
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add eslint-plugin-jestLibravatar Kristóf Marussy2022-01-09
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add prettierLibravatar Kristóf Marussy2022-01-09
| | | | | | | eslint will also enforce prettier rules, so there is no need to call prettier separately in CI. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Disable single-run eslint-typescriptLibravatar Kristóf Marussy2022-01-09
| | | | | | | | | See https://github.com/typescript-eslint/typescript-eslint/issues/3851 Also upgrades dependencies and simplifies eslint config (used during debugging this issue to eliminate other possible sources of errors.) Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Eslint fixes for multi-module projectLibravatar Kristóf Marussy2022-01-09
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* New configurations based on review comments (WIP)Libravatar Vijay A2022-01-09
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* Incorporate 'eslint' (fixes #3)Libravatar Vijay A2022-01-09
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* Upgrade npm modulesLibravatar Vijay A2022-01-09
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* Upgrade 'electron' to '16.0.6'Libravatar Vijay A2022-01-04
|
* Enhance 'About' dialog with more infoLibravatar Vijay A2022-01-03
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* chore: Add @avijayr as a copyright holderLibravatar Kristóf Marussy2022-01-02
| | | | Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* Fix 'repository' in 'package.json'Libravatar Vijay A2022-01-02
| | | | Signed-off-by: Vijay A <vraravam@users.noreply.github.com>
* chore: Fix and bump dependenciesLibravatar Kristóf Marussy2022-01-02
| | | | | | Test devDependencies in the main package were incorrect. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* build: Add watch:test commandLibravatar Kristóf Marussy2021-12-31
|
* test: Switch to esbuild for faster testsLibravatar Kristóf Marussy2021-12-31
|
* test: Add tests for main packageLibravatar Kristóf Marussy2021-12-31
| | | | | | | | | | | | | - Changed jest to run from the root package and reference the packages as projects. This required moving the base jest config file away from the project root. - Module isolation seems to prevent ts-jest from loading the shared package, so we disabled it for now. - To better facilitate mocking, services should be split into interfaces and implementation - Had to downgrade to chald 4.1.2 as per https://github.com/chalk/chalk/releases/tag/v5.0.0 at least until https://github.com/microsoft/TypeScript/issues/46452 is resolved.
* test: Silence logging in preload testsLibravatar Kristóf Marussy2021-12-30
|
* build: Fully switch over to ESMLibravatar Kristóf Marussy2021-12-30
| | | | | | | | | | | | | | | | | | | | | | | | | | Now we can run with ESM at build and test time and transpile into commonjs for electron. This greatly simplifies testing, since we treat everything as ESM during build with esbuild anyways. Now the test environment and the build scripts match the apparent (but not the actual for the main, preload, and inject modules) runtime environment. Caveats: - We may use top-level async expressions in tests and script, but not in code that gets transpiled into commonjs or scripts that get imported by vite. The limitation w.r.t. commonjs seems fundamental. - Jest only experimentally supports ESM and there are some limitations with mocking. Most limitations (except the lack of automatic mocks) can be worked around by async importing code that uses mocks. - There are packages marked as modules (so that node reads any scripts in them as ESM) that nevertheless get transpiled into commonjs modules. However, these should be clearly marked by using a .cjs extension as their bundle. The worst offender is the root package, which has a .cjs as its main entry point that gets read by electron, but is in fact marked as a module. This doesn't seem to bother electron at all. The service-inject package is an IIFE with a .js extension, but it outputs a fully self-contained bundle, so the choice of module format should be irrelevant.
* build: Simplify clean scriptLibravatar Kristóf Marussy2021-12-30
|