Skip to content

Commit a8da747

Browse files
authored
Merge pull request nightscout#7568 from nightscout/wip/bewest/PieterGit-dev20220815
Wip/bewest/pieter git dev20220815
2 parents 2e7f695 + 64d93e6 commit a8da747

File tree

10 files changed

+2855
-5407
lines changed

10 files changed

+2855
-5407
lines changed

.browserslistrc

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Browsers we support
2+
# See https://github.com/browserslist/browserslist for details
3+
4+
> 0.25%
5+
ios_saf 9.3
6+
ios_saf 10.3
7+
ios_saf 13.7
8+
ios_saf 14.8
9+
not dead
10+
not and_uc 12.12
11+
not ie 11
12+

.github/workflows/main.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
runs-on: ubuntu-latest
1717
strategy:
1818
matrix:
19-
node-version: [12.x, 14.x, 16.x]
19+
node-version: [14.x, 16.x]
2020
mongodb-version: [4.2, 4.4]
2121

2222
steps:

.nvmrc

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
14.15.3
1+
16.16.0

README.md

+20-15
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Nightscout Web Monitor (a.k.a. cgm-remote-monitor)
2-
======================================
2+
==================================================
33

44
![nightscout horizontal](https://cloud.githubusercontent.com/assets/751143/8425633/93c94dc0-1ebc-11e5-99e7-71a8f464caac.png)
55

@@ -149,23 +149,28 @@ you're welcome to issue a documentation pull request with instructions on how to
149149

150150
## Recommended minimum browser versions for using Nightscout:
151151

152-
Older versions of the browsers might work, but are untested.
152+
Our [browserslist](https://github.com/browserslist/browserslist) policy is documented in `.browserlistrc`.
153+
We currently support approximately [91%](https://browsersl.ist/?q=%3E+0.25%25%2C+ios_saf+9.3%2C+ios_saf+10.3%2C+ios_saf+13.7%2C+ios_saf+14.8%2C+not+dead%2C+not+and_uc+12.12%2C+not+ie+11%0A) of all browsers globally used. These include:
153154

154-
- Android 4
155-
- iOS 6
156-
- Chrome 35
157-
- Edge 17
158-
- Firefox 61
159-
- Opera 12.1
160-
- Safari 6 (macOS 10.7)
161-
- Internet Explorer: not supported
155+
- Android Chrome: 104 or later (`and_chr`)
156+
- Google Chrome: 101 or later (`chrome`)
157+
- Microsoft Edge: 103 or later (`edge`)
158+
- Mozilla Firefox: 102 or later (`firefox`)
159+
- Apple Safari on iOS: 15.5 or later (`ios_saf`)
160+
- Opera Mini on Android: 63 or later (`op_mini`)
161+
- Opera: 88 or later (`opera`)
162+
- Apple Safari for macOS 10.15 Catalina or later: : 15.5 or later (`safari`)
163+
- Samsung Internet on Android: 17.0 or later (`samsung`)
164+
- Internet Explorer 11 : not supported
162165

163-
Some features may not work with devices/browsers on the older end of these requirements.
166+
Older versions or other browsers might work, but are untested and unsupported. We'll try to to keep Nightscout compatible with older iPads (e.g. Safari on iOS 10.3.4), but note that those devices are not supported by Apple anymore and have known security issues. Debugging these old devices gets harder due to Apple not supporting debugging the old devices on Macs that have been updated. Some features may not work with devices/browsers on the older end of these requirements.
164167

165-
## Windows installation software requirements:
166168

167-
- [Node.js](http://nodejs.org/) Latest Node 12 LTS. Node versions that do not have the latest security patches will not work. Use [Install instructions for Node](https://nodejs.org/en/download/package-manager/) or use `bin/setup.sh`)
168-
- [MongoDB](https://www.mongodb.com/download-center?jmp=nav#community) 3.x or later. MongoDB 2.4 is only supported for Raspberry Pi.
169+
170+
## Installation software requirements:
171+
172+
- [Node.js](http://nodejs.org/) Latest Node v14 or v16 LTS. Node versions that do not have the latest security patches will not be supported. Use [Install instructions for Node](https://nodejs.org/en/download/package-manager/) or use `bin/setup.sh`)
173+
- [MongoDB](https://www.mongodb.com/download-center?jmp=nav#community) 4.2 or 4.4.
169174

170175
As a non-root user clone this repo then install dependencies into the root of the project:
171176

@@ -184,7 +189,7 @@ $ npm install
184189

185190
- If deploying the software to Microsoft Azure, you must set ** in the app settings for *WEBSITE_NODE_DEFAULT_VERSION* and *SCM_COMMAND_IDLE_TIMEOUT* **before** you deploy the latest Nightscout or the site deployment will likely fail. Other hosting environments do not require this setting. Additionally, if using the Azure free hosting tier, the installation might fail due to resource constraints imposed by Azure on the free hosting. Please set the following settings to the environment in Azure:
186191
```
187-
WEBSITE_NODE_DEFAULT_VERSION=10.15.2
192+
WEBSITE_NODE_DEFAULT_VERSION=16.16.0
188193
SCM_COMMAND_IDLE_TIMEOUT=300
189194
```
190195
- See [install MongoDB, Node.js, and Nightscouton a single Windows system](https://github.com/jaylagorio/Nightscout-on-Windows-Server). if you want to host your Nightscout outside of the cloud. Although the instructions are intended for Windows Server the procedure is compatible with client versions of Windows such as Windows 7 and Windows 10.

azuredeploy.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@
218218
},
219219
"WEBSITE_NODE_DEFAULT_VERSION": {
220220
"type": "string",
221-
"defaultValue": "8.11.1"
221+
"defaultValue": "16.16.0"
222222
}
223223
},
224224
"resources": [{

lib/client/hashauth.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ hashauth.init = function init (client, $) {
8585
client.browserUtils.reload();
8686
}
8787

88-
// clear eveything just in case
88+
// clear everything just in case
8989
hashauth.apisecret = null;
9090
hashauth.apisecrethash = null;
9191
hashauth.authenticated = false;

lib/server/bootevent.js

+5-4
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ function boot (env, language) {
2323

2424
//////////////////////////////////////////////////
2525
// Check Node version.
26-
// Latest Node 10 to 14 LTS are recommended and supported.
26+
// Latest Node LTS releases are recommended and supported.
27+
// Current Node releases MAY work, but are not recommended. Will be tested in CI
2728
// Older Node versions or Node versions with known security issues will not work.
2829
///////////////////////////////////////////////////
2930
function checkNodeVersion (ctx, next) {
@@ -35,9 +36,9 @@ function boot (env, language) {
3536

3637
const isLTS = process.release.lts ? true : false;
3738

38-
if (isLTS && (semver.satisfies(nodeVersion, '^16.0.0') || semver.satisfies(nodeVersion, '^14.0.0') || semver.satisfies(nodeVersion, '^12.0.0') || semver.satisfies(nodeVersion, '^10.0.0'))) {
39-
//Latest Node 10 LTS and Node 12 LTS are recommended and supported.
40-
//Require at least Node 8 LTS and Node 10 LTS without known security issues
39+
if (isLTS && (semver.satisfies(nodeVersion, '^16.0.0') || semver.satisfies(nodeVersion, '^14.0.0'))) {
40+
//Latest Node 14 LTS and Node 16 LTS are recommended and supported.
41+
//Require at least Node 14 without known security issues
4142
console.debug('Node LTS version ' + nodeVersion + ' is supported');
4243
next();
4344
return;

0 commit comments

Comments
 (0)