Zaid Humaimidi
75908e624f
build: migrate eslint to v10 flat config and upgrade typescript
...
Replace .eslintrc.json with eslint.config.js using the new flat config
format required by ESLint 10. Swap @typescript-eslint/eslint-plugin and
@typescript-eslint/parser for the unified typescript-eslint package.
Upgrade TypeScript to 5.9 and @types/node to 25. Apply automatic code
fixes: remove unused catch bindings and preserve error cause in auth
header parsing.
2026-03-12 14:58:19 -07:00
Zaid Humaimidi
450fc6fe53
Fix lock expired errors
2024-03-11 11:04:49 -07:00
Zaid Humaimidi
0dee9a5f00
Remove license headers and update imports
2023-12-18 19:13:59 -08:00
Zaid Humaimidi
0c9c027a77
Update linting
2023-12-16 19:08:13 -08:00
Zaid Humaimidi
342210faf1
Utilize locks to prevent certain edge case issues
2023-12-06 11:10:23 -08:00
Zaid Humaimidi
f4596db9f7
Remove caching of tasks, faults and operations
...
No longer seems to provide significant performance benefit to justify the
drawback of the added code complexity and the additional DB write query.
2023-11-23 10:34:47 -08:00
Divya Jagadish
02665faa9f
Move locks to their own DB collection
2023-10-08 12:14:06 -07:00
Zaid Humaimidi
c3954c277f
Refactor db and local-cache code
...
Separated cwmp and ui code into distinct files to enhance clarity and
maintainability with varied internal data representations.
2023-09-29 14:55:44 -07:00
Zaid Humaimidi
7b8a49a7ba
Refactor request listeners to use async functions
2023-08-09 19:51:40 -07:00
Zaid Humaimidi
58488ebc3d
Refactor DB code to use promises
2023-08-09 19:51:38 -07:00
Zaid Humaimidi
3169e829e7
Refactor expression to Mongo query translation
...
The previous approach was simplistic and could result in inefficient queries
in certain edge cases, notably causing MongoDB to not utilize existing indexes
when querying by last inform timestamps given upper and lower bounds. The new
implementation leverages our existing expression minimizer code and can
therefore generate more efficient queries or at least queries that can take
advantage of existing indexes.
2023-08-09 19:48:49 -07:00
Zaid Abdulla
d1c01e0848
Fix FS drops connection if download is too slow
...
Only happens in HTTPS because seemingly somewhere in the stack up to
50mb of data is being buffered potentially triggering a timeout at a
higher level if not drained fast enough.
This commit also includes other streams related improvements.
2022-11-01 09:13:36 -07:00
Zaid Abdulla
25ea0c8b64
Update dependencies
2022-08-22 09:44:25 -07:00
Zaid Abdulla
5806fe2df6
Better locking in local cache
...
Fixes occassional lock expired errors after updating presets, etc.
2022-08-12 01:11:04 -07:00
Zaid Abdulla
c9a4be0475
Deubg log for HTTP and HTTPS client errors
2021-11-08 12:21:02 -08:00
Zaid Abdulla
0188ac860b
Handle unsupported ACS methods gracefully
2021-10-15 16:21:08 -07:00
Zaid Abdulla
9203417686
Fix a couple of regressions in 1.2.6
2021-09-18 14:34:11 -07:00
Zaid Abdulla
9706026ea5
Update Prettier
2021-09-16 13:27:37 -07:00
Zaid Abdulla
c3c7ab72b2
Utilize ?. operator and set TypeScript target
2021-09-16 13:27:37 -07:00
Zaid Abdulla
ca83704958
Ignore session cookie on Inform
...
Some devices preserve cookies set in a previous session and pass them
on to the next session. The presence of a session cookie in the Inform
request causes an unnecessary DB query and, in some edge cases, an
Invalid Session error.
2021-09-16 13:27:37 -07:00
Zaid Abdulla
6c37e88ab1
Fix crash when CPE sends invalid auth header
2021-07-13 18:45:23 -07:00
Zaid Abdulla
63a75cc765
Fix bug causing lock expired exceptions
2021-06-09 16:32:12 -07:00
Zaid Abdulla
02dfe4b554
Show warning when task name not recognized
2021-02-17 17:54:21 -08:00
Zaid Abdulla
4871613c67
Add missing authentication failure logging
2021-02-09 10:37:51 -08:00
Zaid Abdulla
12197f3b2a
Fault when GPVR doesn't contain expected params
2021-02-05 17:15:21 -08:00
Zaid Abdulla
a60a212a10
Tweak cache thresholds
2021-02-02 15:32:15 -08:00
Zaid Abdulla
405f9d6a0f
Fix debug log exception on invalid session
2021-01-31 14:04:13 -08:00
Zaid Abdulla
63cd8dd2de
Save fault when session terminates unsuccessfully
2020-12-08 00:27:29 -08:00
Zaid Abdulla
30bea8ac57
Save CPE changes in case of session error/timeout
2020-11-19 14:18:05 -08:00
Zaid Abdulla
4fd919ccfa
Add more XML validations
2020-10-19 13:34:08 -07:00
Zaid Abdulla
62849e8081
Fix connection timeout being set incorrectly
2020-10-18 12:52:01 -07:00
Zaid Abdulla
9f4b421b59
Add Node types to dev dependencies
2020-10-17 20:09:32 -07:00
Zaid Abdulla
9286bd6aa0
Fix unhandled promise rejections
2020-09-17 17:00:41 -07:00
Zaid Abdulla
2411db6b36
Better handling of invalid CPE messages
2020-08-28 00:49:05 -07:00
Zaid Abdulla
c9eb5d1327
Types refactoring
2020-08-25 01:02:11 -07:00
Zaid Abdulla
bf9517c652
Implement support for Get/SetParameterAttributes
2020-08-17 19:21:13 -07:00
Zaid Abdulla
6385f54888
Allow expressions in provision arguments
2020-08-17 16:51:10 -07:00
Zaid Abdulla
ac980116bd
Update ESLint and Prettier
2020-07-27 20:30:13 -07:00
Zaid Abdulla
65bf6d7d6e
Fix bug if fault occurs in precondition stage
2020-02-09 21:39:45 -08:00
Zaid Abdulla
603f5c79ac
Support Forwarded header
2019-12-29 14:50:08 -08:00
Zaid Abdulla
e80109de93
Process inform message before authentication
...
This allows the authentication expression to read events and other
parameters.
2019-12-24 10:47:37 -08:00
Zaid Abdulla
f301d70339
Use session timestamp when evaluating preconditions
2019-12-06 12:54:35 -08:00
Zaid Abdulla
a915b581cc
Use configContextCallback for preconditions
2019-12-03 14:03:46 -08:00
Zaid Abdulla
add4c84132
Expose all device params to config expressions
2019-11-27 17:00:03 -08:00
Zaid Abdulla
140acaa491
Remove libxmljs dependency
2019-11-07 22:45:32 -08:00
Zaid Abdulla
765f0be7bc
Fix download task object validation
2019-10-31 16:10:47 -07:00
Zaid Abdulla
20857549d0
Fix download URL when SSL is enabled
2019-10-11 11:58:20 -07:00
Zaid Abdulla
209c0f7620
Fix remoteAddress workaround
...
Tree shaking removed the remoteAddress workaround because property access
should have no side effect. This change prevents that.
2019-09-23 22:12:32 -07:00
Zaid Abdulla
59cd930b6c
Support more charsets using iconv-lite
2019-08-04 12:40:02 -07:00
Zaid Abdulla
db3736e60b
Fix exception when logging XML parse errors
2019-08-04 12:33:48 -07:00