* Move vulnerable dependencies to patched versions
Backend (Cargo.lock): openssl 0.10.55 -> 0.10.81, bytes 1.12.1, h2 0.3.27,
tokio 1.26 -> 1.47.1 (mio 1.x), url 2.3.1 -> 2.5.7 (idna 1.1), rand 0.8.8,
spin 0.9.9, time 0.3.55, ring 0.17.14.
Three alerts needed manifest changes:
- tokio-rustls 0.23 -> 0.26 (rustls 0.20 -> 0.23), which is what moves
ring off 0.16. The ring provider is selected explicitly instead of the
default aws-lc-rs, so the image build needs no cmake/C toolchain; roots
still come from webpki-roots (now 1.0). Checked against live hosts: a
valid certificate connects, an expired one and a name mismatch are
refused.
- maxminddb 0.23 -> 0.27: lookup() now returns a result that is decoded,
and the City model's fields are no longer Options. The existing
locate_random_ip test (12.5.56.25 -> "Gardena") passes.
- structopt (clap 2, which pulled atty) -> clap 4 derive in telemetry_core,
telemetry_shard and the soak tests; criterion 0.4 -> 0.5 for the same
reason. Both binaries' arguments were parsed before and after for the
docker-compose invocations and a set of other cases: identical results,
except that `--feed-timeout` given without a value is now an error where
structopt silently used the default. --denylist keeps taking every value
up to the next flag (num_args = 1..), as its help text describes.
Frontend: npm audit fix within ranges, and webpack-dev-server 4 -> 5.2.6
(no devServer options are configured, so nothing to migrate). Left:
sockjs -> uuid 8 inside webpack-dev-server 5; the fix is 6.0, which needs
Node 22 while CI runs 20, and it is the local dev server only.
Checked: backend cargo test (58 passed), clippy, fmt; frontend lint,
prettier, test and build.
* Reject an invalid byte size instead of panicking
ByteSize::from_str called expect("all ascii digits") on the numeric part,
so a value with no digits ("abc", "k") or one too large for usize
aborted the shard at startup with a panic instead of a usage error, and
the suffix multiplication could overflow silently in release builds.
Parse errors now return Err and the multiplication is checked.
The new test fails on the old code (panic) and passes on this one.
* get tests working and update copyright headers
* lint fix
* eslint ts update
* update CI to use NPM
* fix CI
* prettier
* npm, not yarn for docker
* remove unused package
* bump dockerfile to latest node LTS and no need for cache clean
* make frontend Dockerfile work and remove unused SUBSTRATE_TELEMETRY_SAMPLE
* remove final yarn references
* add another comment
* remove unused import
* remove more unused deps
* comment typo
* update npm packages
* update tsconfig
* remove babelrc, babel presets as well as stable package
* fix svg namespace tag syntax errors
* fix reference error due to namespace and class component having same name
* replace tslint with eslint
* make eslint happier
* update .nvmrc to 14
* update node version to 14 in gh workflow
* fix eslint warnings due to warnings treated as errors on CI (process.env.CI = true)
* pretty fix
* bump node version in Dockerfile
* use createRoot instead of react-dom render
* update browsers list in package.json
* Upgrade TS from 2.9.2 to 4.4.2
* Avoid mutating a readonly array
`list` is a readonly array but `sort` will mutate the array in-place.
In newer version of TS, it can catch this unexpected behavior.
To avoid mutating a readonly array, we can sort with a new array with
either `[...list]` or `list.slice()`.
* Fix arguments of `window.location.reload`
The `reload` function type definition in `lib.dom.d.ts` takes 0
arguments now. So, we cannot pass a boolean to it.
Also, based on the documentation on MDN, Firefox is the only browser who
supports passing a `forceForget` boolean to `reload` function.
So, I wonder it should be fine to remove the boolean argument and align
the behavior to other browsers.
Ref: https://developer.mozilla.org/en-US/docs/Web/API/Location/reload
* More responsive React updates on scroll
* `Icon`s now use shadow dom
* Faster Sparkline
* Recycle table rows
* Separate Header from Chain to avoid vdom diffing
* Separate THead from Row.HEADER to avoid vdom diffing
* Throttle rendering updates on chain tabs, also styles
* Minor tweaks and fixes
* Created components for all columns
* Wrapping up Column refactor
* Rename Row--td to Column
* Lazy `Ago`
* Update styles for faster layouting
* Minor cleanup
* Fix Connection
* Use shadow DOM in `PolkadotIcon`
* Comments and tweaks for the List component
* Faster Tooltip and Truncate
* Minor tweaks
* Tooltiped columns can now be copied
* Future-proof Connection
* Remove the <div> wrapper from Icon
* Fix dash on missing graph data
* Clean up some SVGs
* Cleanup and comments
* Localize the use of `previousKeys` to `recalculateKeys`
* Custom appState disjoint from React component state
* Make appState and appUpdate refs readonly
* Cleanup
* Documentation
- bump up frontend version (to trigger the CI)
- bump up the backend version (to trigger the CI)
- add some docker related doc
- add CI badges
* Fix CI step name
* Add screenshot
* Lock deps to fix build issues
* Upgrade some of the deps
* Upgrade to the latest polkadot util-crypto and stop reporting issues on the libs
* Remove buggy 'yarn check' and add prettifier check
* Fix tests
- Remove jest tests and add coverage
- Rebase master and fix tests
* Ignore local .vscode
Add clean script
* Fix deps
- Upgrade deps
- Switch to esnext
* Move tests to the right folder
* Deps cleanup and bump up
* Remove root level package.json
* Fix grumbles
* Remove the labeler action due to https://github.com/actions/labeler/issues/12
* Fix grumbles
* Add new workflows to set labels and build/test the backend
* Add frontend workflow
* Limit triggers to PUSH only
* Fix so that BE and FE are mutually exclusive
* Bump up frontend
* Fix case to match current tags
* prettier
* linter
* add prettier, and format the code
* remove common, merge it with frontend
* refactor the app
* better lint and code fix
* travis for the frontend app
* travis build script
Signed-off-by: Daniel Maricic <daniel@woss.io>
* lint and build
* update the README.md
Signed-off-by: Daniel Maricic <daniel@woss.io>
* change the commands to reflect refactor
Signed-off-by: Daniel Maricic <daniel@woss.io>
* prettier and tslint are friends
Signed-off-by: Daniel Maricic <daniel@woss.io>
* code that wasn't linted properly before
Signed-off-by: Daniel Maricic <daniel@woss.io>
* prettier rc got deleted
* workgin on making the travis pass
Signed-off-by: Daniel Maricic <daniel@woss.io>
* travis build please?
Signed-off-by: Daniel Maricic <daniel@woss.io>
* update readme.md
Signed-off-by: Daniel Maricic <daniel@woss.io>
* dockerfile deleted from fronted - out of scope
Signed-off-by: Daniel Maricic <daniel@woss.io>
* remove
Signed-off-by: Daniel Maricic <daniel@woss.io>
* tsconfig
Signed-off-by: Daniel Maricic <daniel@woss.io>
* found the reason why EOL wasn't happening
Signed-off-by: Daniel Maricic <daniel@woss.io>
* type for the event in the ConnectionInput
as suggested
* strictnullCheck to true
* noImplicitAny
* noUnusedParams
* AfgHandling
* update
* fix Location.tsx
* Few minor fixes
* remove connection input and revert to original
* esnext fixes the imports for icons and non default `* as `
* update to the tsconfig.test.json don't use commonjs please
* fixed wrong comment for TIMEOUT_BASE
* return totem.svg and type decraration of maybe
Signed-off-by: Daniel Maricic <daniel@woss.io>
Co-authored-by: Will <w.kopp@kigroup.de>