Commit Graph

289 Commits

Author SHA1 Message Date
Ronan Jouchet 24e8849564 Update changelog for `v45.0.8` 2021-12-06 23:48:19 -05:00
Ronan Jouchet e9e523d957 Update changelog for `v45.0.7` 2021-12-06 16:27:13 -05:00
Ronan Jouchet ec77741494 re-relock and fix script failing to do app if cli failed 2021-12-06 16:00:17 -05:00
Adam Weeden b9c5e2b464
Fix upgrade not working (#1286)
* Attempt to get upgrade working right; in progress

* Got it fixed in Mac

* Fix some linting errors

* Finish fixing upgrade + tests

* Integration testing for global shortcuts

* Regenerate shrinkwrap

* Get rid of deprecated rmdirSync

* Remove instead of rm for 12.x support

* Make dereferencing platform dependent

* Fix folder copy funkiness

* Whoops

* Whoops 2: Extra Whoops

* Update Electron to 13.5.1; Fix auth manual tests

* Rework relock

* Add a request for help.

* Update @types/node to 14
2021-11-29 12:01:20 -05:00
Ronan Jouchet adcf7c4c0c Update changelog for `v45.0.6` 2021-11-22 16:24:24 -05:00
Ronan Jouchet e63a275ec9 Update changelog for `v45.0.5` 2021-11-01 15:59:22 -04:00
Ronan Jouchet d68078f686 Bump axios to 0.24.0
https://github.com/axios/axios/blob/master/CHANGELOG.md
2021-11-01 15:54:03 -04:00
Ronan Jouchet 7cab31f974 Bump to eslint 8
https://eslint.org/docs/8.0.0/user-guide/migrating-to-8.0.0
2021-11-01 15:47:46 -04:00
Ronan Jouchet fadcb73de7 Update changelog for `v45.0.4` 2021-09-24 23:03:48 -04:00
Ronan Jouchet 0570a20c99 Work around "npm shrinkwrap" failing to include some packages in lockfile 2021-09-24 23:01:15 -04:00
Ronan Jouchet 561beda96e Actually actually (TM) include lockfile in npm artifacts
Previous attempt failed by design of `npm pack` / `npm publish`,
as documented at https://docs.npmjs.com/cli/v6/configuring-npm/package-lock-json :

> One key detail about package-lock.json is that it cannot be published,
> and it will be ignored if found in any place other than the toplevel
> package. It shares a format with npm-shrinkwrap.json, which is
> essentially the same file, but allows publication.
>
> This is not recommended unless deploying a CLI tool or otherwise using
> the publication process for producing production packages.

, and we are a CLI tool. Switching to shrinkwrap.
2021-09-24 22:44:07 -04:00
Ronan Jouchet 8fdceee4dc Update changelog for `v45.0.3` 2021-09-24 22:21:33 -04:00
Ronan Jouchet 94142955f1 Update changelog for `v45.0.2` 2021-09-24 22:16:59 -04:00
Adam Weeden d759695e5a
Workaround yargs coerce issue (#1283) 2021-09-22 09:26:49 -04:00
Ronan Jouchet 0d78978d9e Update changelog for `v45.0.1` 2021-09-20 11:45:36 -04:00
Ronan Jouchet 7ab2c14f4f Deps bumps: @types/jest, eslint-plugin-prettier 2021-09-20 11:32:47 -04:00
Ronan Jouchet 0fbe7d39cb Build: re-introduce a package-lock.json file
They were used a long time ago, then I scrapped them for simplicity to
new contributors. I'm re-considering this and re-introducing one, for
two (maybe three) reasons:

1. Reading on supply chain attacks
2. Build broken because of a dep change (see previous commit broken
   because of a change in yargs @ 17.1.0)
(3.) Performance
2021-09-20 11:25:43 -04:00
Ronan Jouchet fcc3906f52 build:watch script: make it watch project folders 2021-09-20 10:32:32 -04:00
Ronan Jouchet 167f1e3be8 Update changelog for `v45.0.0` 2021-07-19 13:36:19 -04:00
Ronan Jouchet 5d9cb91739 Fix 'npm install'-time warning about outdated companion DT types
```
npm WARN deprecated @types/loglevel@1.6.3: This is a stub types definition. loglevel provides its own type definitions, so you do not need this installed.
npm WARN deprecated @types/electron-packager@15.0.1: This is a stub types definition. electron-packager provides its own type definitions, so you do not need this installed.
```

Also, add `@types/debug` necessary to fix build, as already done by
@TheCleric in https://github.com/nativefier/nativefier/pull/1230/files

Also, for all deps, bump minimum version to current version
2021-07-16 18:55:10 -04:00
Ronan Jouchet c4327e97a7 Update changelog for `v44.0.7` 2021-07-10 16:06:47 -04:00
Ronan Jouchet af80acf7e9 Update changelog for `v44.0.6` 2021-06-26 10:55:11 -04:00
Adam Weeden b74c0bf959
Make app strict TypeScript + linting (and add a shared project) (#1231)
* Convert app to strict typing + shared library

* Fix new code post-merge

* Remove extraneous lint ignores

* Apply suggestions from code review

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>

* Fix prettier complaint

* Dedupe eslint files

* Fix some refs after merge

* Fix clean:full command

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-06-26 09:59:28 -04:00
Ronan Jouchet f8f48d2f09 Update changelog for `v44.0.5` 2021-06-25 16:17:59 -04:00
Ronan Jouchet 996183b949 Update changelog for `v44.0.4` 2021-06-15 22:36:01 -04:00
Adam Weeden 7a08a2d676
Enable TypeScript strict:true, and more typescript-eslint rules (#1223)
* Catch promise errors better

* Move subFunctions to bottom of createNewWindow

* Use parents when creating child BrowserWindow instances

* Some about:blank pages have an anchor (for some reason)

* Inject browserWindowOptions better

* Interim refactor to MainWindow object

* Split up the window functions/helpers/events some

* Further separate out window functions + tests

* Add a mock for unit testing functions that access electron

* Add unit tests for onWillPreventUnload

* Improve windowEvents tests

* Add the first test for windowHelpers

* Move WebRequest event handling to node

* insertCSS completely under test

* clearAppData completely under test

* Fix contextMenu require bug

* More tests + fixes

* Fix + add to createNewTab tests

* Convert createMainWindow back to func + work out gremlins

* Move setupWindow away from main since its shared

* Make sure contextMenu is handling promises

* Fix issues with fullscreen not working + menu refactor

* Run jest against app/dist so that we can hit app unit tests as well

* Requested PR changes

* Add strict typing; tests currently failing

* Fix failing unit tests

* Add some more eslint warnings and fixes

* More eslint fixes

* Strict typing on (still issues with the lib dir)

* Fix the package.json import/require

* Fix some funky test errors

* Warn -> Error for eslint rules

* @ts-ignore -> @ts-expect-error

* Add back the ext code I removed
2021-06-15 22:20:49 -04:00
Ronan Jouchet 7807bbb327 Update changelog for `v44.0.3` 2021-06-15 09:06:44 -04:00
Ronan Jouchet ea24a0fdeb Fix gitcloud 0.2.3 import 2021-06-14 14:39:43 -04:00
Ronan Jouchet 437ae55d2e Update changelog for `v44.0.2` 2021-06-07 17:28:34 -04:00
Ronan Jouchet 460d70f915 Update changelog for `v44.0.1` 2021-06-07 09:38:53 -04:00
Adam Weeden cdc6fa79c2
Fix fullscreen not working + menu refactor (fix #1206) (#1210)
* Catch promise errors better

* Move subFunctions to bottom of createNewWindow

* Use parents when creating child BrowserWindow instances

* Some about:blank pages have an anchor (for some reason)

* Inject browserWindowOptions better

* Interim refactor to MainWindow object

* Split up the window functions/helpers/events some

* Further separate out window functions + tests

* Add a mock for unit testing functions that access electron

* Add unit tests for onWillPreventUnload

* Improve windowEvents tests

* Add the first test for windowHelpers

* Move WebRequest event handling to node

* insertCSS completely under test

* clearAppData completely under test

* Fix contextMenu require bug

* More tests + fixes

* Fix + add to createNewTab tests

* Convert createMainWindow back to func + work out gremlins

* Move setupWindow away from main since its shared

* Make sure contextMenu is handling promises

* Fix issues with fullscreen not working + menu refactor

* Run jest against app/dist so that we can hit app unit tests as well

* Requested PR changes
2021-06-07 08:55:17 -04:00
Ronan Jouchet 69bc3306f9 Update changelog for `v44.0.0` 2021-06-04 17:03:35 -04:00
Adam Weeden 72de7b3fca
Refactor app window creation/events + add some unit tests; fix #1197 (#1203)
* Catch promise errors better

* Move subFunctions to bottom of createNewWindow

* Use parents when creating child BrowserWindow instances

* Some about:blank pages have an anchor (for some reason)

* Inject browserWindowOptions better

* Interim refactor to MainWindow object

* Split up the window functions/helpers/events some

* Further separate out window functions + tests

* Add a mock for unit testing functions that access electron

* Add unit tests for onWillPreventUnload

* Improve windowEvents tests

* Add the first test for windowHelpers

* Move WebRequest event handling to node

* insertCSS completely under test

* clearAppData completely under test

* Fix contextMenu require bug

* More tests + fixes

* Fix + add to createNewTab tests

* Convert createMainWindow back to func + work out gremlins

* Move setupWindow away from main since its shared

* Make sure contextMenu is handling promises
2021-06-02 15:18:32 -04:00
Ronan Jouchet 62ee24662c More test:watch fix: bring upgrade to Jest 27 from TheCleric' closed jest-ts PR
See https://github.com/nativefier/nativefier/pull/1204
2021-06-02 00:35:19 -04:00
Ronan Jouchet 6b09d1467f More test:watch fixes & usability
See https://github.com/nativefier/nativefier/pull/1204#issuecomment-852679403
2021-06-01 23:37:04 -04:00
Ronan Jouchet 9c5dba7f07 Fix test:watch requiring two saves to actually run the code/test you just changed
Will fix https://github.com/nativefier/nativefier/pull/1204#issuecomment-852155755
See package.json in comments for description
2021-06-01 20:43:46 -04:00
Ronan Jouchet 2b780e6c67 Test watcher: warn that it's necessary to run build:watch for the test watcher to work
See https://github.com/nativefier/nativefier/pull/1204#issuecomment-850915981
2021-05-29 19:58:46 -04:00
Ronan Jouchet 4f3b449218 Deps: bump ts-loader from 8 to 9, now that we require Node 12
See https://github.com/TypeStrong/ts-loader/releases
2021-05-21 19:44:53 -04:00
Ronan Jouchet cc02b87de7
Get rid of "docs" folder (#1194)
It contains a weird mix of stuff and hides valuable files from view at the root of the repo. Better to have:
- Docs at the root
- Rest of the github/release-related hodgepodge (screenshots, scripts) in hidden folder .github
2021-05-21 18:16:59 -04:00
Adam Weeden 1a810e5ce5
Organize CLI flags into groups (for better --help usability) (#1191)
* Organize CLI options for better UX

* Fix some documentation

* Whoops. Stupid VS Code linter.

* Fix prettier issues

* Make paths less unixy in tests

* Update src/cli.test.ts

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>

* Apply suggestions from code review

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>

* Add example to reference CATALOG.md

* Make honest appear near user-agent

* Standardize descriptions

* Hide flash options

* Add explanation of parsed._

* Redo groups in yargs

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-05-18 22:02:55 -04:00
Adam Weeden b3c202fd33
Bump minimum required version: node>=12.9, npm>=6.9 (#1192)
* Move minimum supported version: node=12, npm=6.9

* Add missing bits and documentation for future bumping

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-05-15 13:32:54 -04:00
Ronan Jouchet 9225114e77 Update changelog for `v43.1.3` 2021-05-15 13:28:16 -04:00
Ronan Jouchet 6cf533c5ac Update changelog for `v43.1.2` 2021-05-03 11:19:30 -04:00
Ronan Jouchet d9670d6bb0 Update changelog for `v43.1.1` 2021-05-02 18:15:08 -04:00
Ronan Jouchet e58823985a Update changelog for `v43.1.0` 2021-05-01 11:09:05 -04:00
Adam Weeden bcdbd58f06
App: replace console.xyz calls with loglevel.xyz, with a level controlled by app argv --verbose (#1172)
In reference to request in https://github.com/nativefier/nativefier/pull/1168/files#r623753290 ,
this PR fixes a lot of the disparity in logging in the app, and fleshes the logging out a bit.
2021-04-30 23:21:37 -04:00
Ronan Jouchet fa9bd2aba5 Update changelog for `v43.0.2` 2021-04-13 21:53:05 -04:00
Ronan Jouchet f64c05f735 Update changelog for `v43.0.1` 2021-04-11 20:58:20 -04:00
Ronan Jouchet 96f3ab4ec7 Update changelog for `v43.0.0` 2021-03-10 20:37:37 -05:00
Ronan Jouchet 21665cac5f Bump deps 2021-03-10 19:41:02 -05:00