2
2
mirror of https://github.com/Llewellynvdm/nativefier.git synced 2024-12-23 02:28:55 +00:00
Commit Graph

328 Commits

Author SHA1 Message Date
Ronan Jouchet
c82f1a892e Bump default Electron to 18.3.1
https://github.com/electron/electron/releases/tag/v18.2.1
https://github.com/electron/electron/releases/tag/v18.2.2
https://github.com/electron/electron/releases/tag/v18.2.3
https://github.com/electron/electron/releases/tag/v18.2.4
https://github.com/electron/electron/releases/tag/v18.3.0
https://github.com/electron/electron/releases/tag/v18.3.1
2022-05-30 09:58:42 -04:00
Ronan Jouchet
78e330aa87 Bump default Electron to 18.2.0, from 18.0.3
https://github.com/electron/electron/releases/tag/v18.0.4
https://github.com/electron/electron/releases/tag/v18.1.0
https://github.com/electron/electron/releases/tag/v18.2.0
2022-05-01 23:55:21 -04:00
Adam Weeden
d85aab718d
Extend timeout for playwright electron launch + playwright 1.21.1 (#1402) 2022-04-25 10:11:11 -04:00
Adam Weeden
e664bc6af8
Add playwright integration testing to the app (PR #1397)
This PR allows us to code playwright integration tests that can potentially replace some of our manual tests and allow us automated testing of the app itself.

Current technical limitations:
* No app level keyboard simulation support (e.g, zoom in, zoom out, etc.)
* No code coverage support, so even though we are testing the app, the code coverage does not reflect this fact
2022-04-20 22:03:49 -04:00
Adam Weeden
c42c63a8b0
Fix universal app path logic to resolve to absolute (fix #1398) 2022-04-19 09:56:16 -04:00
Adam Weeden
3a8f66a7b6
macOS: universal architecture app support (fix #1384, PR #1386)
As noted in `API.md`:

- When specifying `universal` you must be building for the `darwin`, `mas`, `mac`, or `osx` platforms. This will generate a universal (M1 and x86) app.
2022-04-18 19:11:31 -04:00
Adam Weeden
f6852d5208
Update browser versions + add fix for Firefox user agent (#1388) 2022-04-18 18:42:25 -04:00
Ronan Jouchet
77df5618f4 Bump default Electron to 18.0.3 (from 16.2.2)
As usual, we did our best to adapt to Electron breaking changes in 17/18,
but patches welcome to fix regressions. Release notes with breaking changes:

- https://www.electronjs.org/blog/electron-17-0
- https://www.electronjs.org/blog/electron-18-0

Detailed release notes:

- https://github.com/electron/electron/releases/tag/v17.0.0
- https://github.com/electron/electron/releases/tag/v18.0.0
- https://github.com/electron/electron/releases/tag/v18.0.1
- https://github.com/electron/electron/releases/tag/v18.0.2
- https://github.com/electron/electron/releases/tag/v18.0.3
2022-04-10 13:18:58 -04:00
Ronan Jouchet
94c4131e39 Bump default Electron to 16.2.2 2022-04-10 11:22:30 -04:00
Ronan Jouchet
26e9569b25 Bump default Electron to 16.2.1 (from 16.1.0), with security fixes:
- https://github.com/electron/electron/releases/tag/v16.1.1
- https://github.com/electron/electron/releases/tag/v16.2.0
- https://github.com/electron/electron/releases/tag/v16.2.1
2022-04-10 11:20:40 -04:00
Ronan Jouchet
e06f6d929d Bump default Electron to 16.1.0 (from 16.0.9), with security fixes:
- https://github.com/electron/electron/releases/tag/v16.0.10
- https://github.com/electron/electron/releases/tag/v16.1.0
2022-03-20 23:36:07 -04:00
Tedward747
83dce91c47
Strip LRM and RLM in Linux names (fix #1361, PR #1365)
On Linux (SUSE at least), if `--name` isn't provided and is inferred,
the filename is prepended with the control character
LRM (https://en.wikipedia.org/wiki/Left-to-right_mark) and I'd assume
RLM for anyone who's using that setting.

This PR strips those control characters out of the file name.
2022-03-20 23:27:57 -04:00
Ronan Jouchet
ad74271b98 Bump default Electron to 16.0.9, from 16.0.8 2022-02-14 23:03:47 -05:00
Ronan Jouchet
5de8a307ab Bump default Electron to 16.0.8, from 16.0.6
- https://github.com/electron/electron/releases/tag/v16.0.7
- https://github.com/electron/electron/releases/tag/v16.0.8
2022-02-06 17:53:45 -05:00
Ronan Jouchet
347df98c77 Make eslint happy 2022-02-06 17:49:30 -05:00
Henry Bridge
9945a5dffe
Add flag --strict-internal-urls to disable domain and subpath matching (PR #1340)
I created this so that Google Meet links don't open in my Google Calendar app for me, but it looks like others have a similar issue (e.g. issue #1304).
2022-02-06 17:40:51 -05:00
Abhishek Mehandiratta
372c1d0b13
Fixes ignored --file-download-options (PR #1350, fix #1275) 2022-02-06 00:02:49 -05:00
Ronan Jouchet
e7483549af NATIVEFIER_APPS_DIR: document "new in release", rephrase doc to be the most useful to a first-time user 2022-01-31 17:07:57 -05:00
Matthew Ruzzi
c6debd72e0
Allow setting default app destination with env. var. NATIVEFIER_APPS_DIR (PR #1339, #1336) 2022-01-31 16:59:23 -05:00
Tyler Nickerson
aeb6ba1a8c
Add "quiet" flag to suppress all log output (PR #1342)
In working on my own repo [hop](https://github.com/Nickersoft/hop), which uses nativefier under-the-hood, I found it very troublesome to suppress log output when using the programmatic API. This PR just adds a quick "quiet" option which will set the log level to "silent" and suppress all electron and nativefier output (except for errors, of course).

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2022-01-23 16:01:29 -05:00
Ronan Jouchet
e3a823c66b Bump default Electron from 16.0.5 to 16.0.6
https://github.com/electron/electron/releases/tag/v16.0.6
2022-01-06 09:43:10 -05:00
Ronan Jouchet
5e3c23267a Fix --widevine broken since 46.0.0
See https://github.com/nativefier/nativefier/pull/1288#issuecomment-1006307669 ,
"the version prefix changed from -wvvmp to +wvcus",

and message from CastLabs:
The v16 series of Electron for Content Security, labeled wvcus, moves to using the Component Updater Service to handle installation of the Widevine CDM, and has incompatible API updates compared to the previous wvvmp releases.
2022-01-06 09:34:20 -05:00
Adam Weeden
d483597320
Upgrade Electron from 13 to 16 (PR #1288)
https://www.electronjs.org/docs/latest/breaking-changes

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2022-01-02 06:17:06 -05:00
Ronan Jouchet
e33aa4ebab Fix 45.0.7 broken because of missing "chalk" dep (fix #1324) 2021-12-06 23:45:09 -05:00
Ronan Jouchet
f720f66eb8 Bump default Electron to 13.6.3 with fixes & security fixes
https://github.com/electron/electron/releases/tag/v13.6.3
2021-12-06 16:12:03 -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
702ff1e4b6 Bump default Electron to 13.6.2
https://github.com/electron/electron/releases/tag/v13.6.2
2021-11-22 16:05:20 -05:00
Ronan Jouchet
94e6c6cf54 Bump default Electron to 13.6.1, with security fixes
- 13.5.2: https://github.com/electron/electron/releases/tag/v13.5.2
- 13.6.0: https://github.com/electron/electron/releases/tag/v13.6.0
- 13.6.1: https://github.com/electron/electron/releases/tag/v13.6.1
2021-11-01 15:37:33 -04:00
Adam Weeden
0d99ce4916
Update Electron to 13.5.1; Fix auth manual tests (#1287) 2021-10-02 22:17:06 -04:00
Adam Weeden
24115bb3bd
Fix regressions in opening windows/tabs, update browser versions (#1284)
* Update electron to 13.4.0 + update browser versions

* Fix injectCSS preventing new windows from opening

* Fix some window/tab opening weirdness/bugs

* Fix unit tests

* Switch to using onResponseStarted to avoid the issues with callbacks in the future

* Clear up comments on onResponseStarted
2021-09-24 22:03:03 -04:00
Adam Weeden
d759695e5a
Workaround yargs coerce issue (#1283) 2021-09-22 09:26:49 -04:00
Adam Weeden
46424f9795
Make macOS "bundle identifier" mention Nativefier (fix #866) (#1259)
* Make macos bundle identifier mention nativefier

* Fix @types/debug here too

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-09-21 17:32:55 -04:00
Ronan Jouchet
e222e99b56 Bump default Electron to 13.4.0 2021-09-20 11:38:15 -04:00
Adam Weeden
bf4be860cf
Upgrade to Electron 13 (#1230)
* 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

* v13.1.2

* v13.1.4

* Update Webkit version for Safari

* 13.1.6 -> NO CRASH!

* Fix types/debug build error on Ubuntu

* 13 -> 13.1.7

* Bump default Firefox version

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-07-19 13:03:46 -04:00
Ronan Jouchet
97b33b369f Bump default Electron from 12.0.12 to 12.0.14
- https://github.com/electron/electron/releases/tag/v12.0.13
- https://github.com/electron/electron/releases/tag/v12.0.14
2021-07-10 15:59:38 -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
9893d19085 Bump default Electron to 12.0.12 2021-06-25 16:10:12 -04:00
Adam Weeden
dc0e6cb68f
Fix app keeping running in the background after closed (--tray false regression) (PR #1242)
By tightening up typing and logic around tray options.
2021-06-25 16:03:23 -04:00
Adam Weeden
d69d4b253a
Fix tray icon always on (regression from #1235) 2021-06-22 19:09:11 -04:00
Adam Weeden
a491e34966
Fix --tray start-in-tray (fix #1225) (#1235) 2021-06-22 01:22:46 -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
9d0a2f5b44 Bump default Electron to 12.0.11 2021-06-14 14:39:51 -04:00
Ronan Jouchet
ea24a0fdeb Fix gitcloud 0.2.3 import 2021-06-14 14:39:43 -04:00
Ronan Jouchet
5673989117 Bump default Electron to 12.0.10 2021-06-04 16:18:34 -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
Adam Weeden
86a27d4f39
Allow non-ascii app names like 微信读书 (fix #1056) (#1207)
* Resolves #1056 Allow non-ascii app names like 微信读书

* Update src/utils/sanitizeFilename.ts

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

* Fix prettier

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-05-31 23:27:32 -04:00
Adam Weeden
d6730f7022
Improve user agent handling/provide user agent "short" codes (#1198) 2021-05-21 23:41:13 -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