Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/ArchiveTeam/ArchiveBot

ArchiveBot, an IRC bot for archiving websites
https://github.com/ArchiveTeam/ArchiveBot

Merge pull request #566 from JustAnotherArchivist/dashboard-websocket-reduce-load

Reduce server load from the WebSocket server

ad9703c489168bb88cd53b3f4ea3b6dadfe8820f authored about 1 year ago by JustAnotherArchivist <[email protected]>
Reduce server load from the WebSocket server

Previously, the server was encoding and compressing each message for every client. This resulted...

03b33766c5833769fb08fd5e7a5545607e5811b2 authored about 1 year ago by JustAnotherArchivist <[email protected]>
Merge pull request #565 from JustAnotherArchivist/ssl-openssl3-unsafe-renegotiation

Reenable unsafe renegotiation (cf. RFC 5746) and update openssl.conf for OpenSSL 3.x

dd5ce62dc52eaf3307f8109723fbda192f72613a authored about 1 year ago by JustAnotherArchivist <[email protected]>
Reenable unsafe renegotiation (cf. RFC 5746) and update openssl.conf for OpenSSL 3.x

26eea1af479201e8815336766596014aa4bf22e5 authored about 1 year ago by JustAnotherArchivist <[email protected]>
Merge pull request #563 from ivan/stopped-logged-window

df5ccbe16a89d7dcc96ca5a20ced9141e9cee364 authored about 1 year ago by Ivan Kozik <[email protected]>
When a new job is added, don't scroll the stopped logged window being hovered over

This fixes:

"when you hover over a log window, it stops scrolling as intended, but
each time a ...

8345744b2cc0bebfbef9347e4723d894e2fa4d15 authored about 1 year ago by Ivan Kozik <[email protected]>
Merge pull request #560 from ivan/log-window-scroll-down

b22627e4cd94784d970a2555e071840536af71e1 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: fix out-of-viewport log windows not being scrolled down in Chrome

bb39bf8e4a78f1f8ac4c6ca49ee69aac9dc1307a authored over 1 year ago by Ivan Kozik <[email protected]>
Revert "dashboard: remove `content-visibility` CSS to fix log windows not being scrolled to the bottom after expanding them in Chrome"

This reverts commit c99d488875468bb00fec190f26df1658359eed07.

This regressed performance in Chr...

7ad41d8e4bd22cd833d62e1f49e28fe4f4c3237d authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove `content-visibility` CSS to fix log windows not being scrolled to the bottom after expanding them in Chrome

c99d488875468bb00fec190f26df1658359eed07 authored over 1 year ago by Ivan Kozik <[email protected]>
Merge pull request #559 from ivan/dashboard-query-args

efacb6d78aebed90803e967d8e8e6d64da676c86 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use `URLSearchParams` instead of our own query arg parser

that did not decode URL escapes like %5E, making it impossible to put
a ^ in the filter.

ecd91c05b10c1e32b266ba20bb20b438124a0a86 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove our `intoObject` and use `Object.fromEntries`

a30ed2be144e89325f6f0759604b02ecf55a6875 authored over 1 year ago by Ivan Kozik <[email protected]>
Merge pull request #558 from ivan/dashboard-modernization

Modernize the dashboard JavaScript and improve things

86e4009e849d9be81b94f15494ed1e241f16832f authored over 1 year ago by JustAnotherArchivist <[email protected]>
dashboard: show "NaN MB" instead of "NaN.0 MB" when `n` is undefined

61af4075a506ebd107f375cbba6e71c5a841208a authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: fix the units: a megabyte is a million bytes

81d06de0723e28f025ca88b6eee308ab66a2e0ec authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: parse JSON messages as we receive them instead of retaining strings in the queue

This doesn't make much of a difference, but it seems pointless to batch
the parsing of JSON stri...

079e356f6ccaf4401f30abef6c938e4a84172213 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: don't scroll hidden log windows to avoid reflows

This reduces CPU use by ~43% in Firefox and ~30% in Chrome.

Scroll log windows to the bottom on...

f7d5b1a60c689af35519b56f483f4e0c459f7e41 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: parse all the JSON before doing DOM updates

Inspired by SEDA's batching, of course.

9cf8f4144576891e4c26a58f97963ff867657134 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use `content-visibility` to try to avoid rendering updates outside the viewport

1c9ed0e18ce6ab861169755f89b847d625ef606a authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add a log-container class for testing and future use

bf9427820c66e3781865ab22c90d8a5a0cf6b36e authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: don't search the DOM for elements to align/unalign after every filter change

`updateAlign` was seen using a lot of CPU time in the Chrome DevTools profiler.

bf1e367e4e65057c760a9f11ea3b24bf8c69f2ce authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add `contain: strict` on the frequently-updated stats elements

This might increase performance.

c2fab74cc60be88571f4772f3906f8183b9827ab authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: update the rate information every 1000ms instead of every batchTimeWhenVisible

This reduces CPU usage.

4bea17806e6a8feae6d670612e65af6b2a227d12 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: add note about other browser extensions impacting performance

2c66a86a1340f0c0431a825028aadd6e4034c114 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: format with rome

fc969b3ce07328b7b53cc47e88e61a6e7e672dd3 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make the log window heights a multiple of (13 + 4)px so that lines fit nicely (at least when there is no horizontal scrollbar)

a80ca109e2a93f85945fada8a7315e1ea5bf1388 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: create suggested ignores based on the original URL characters, not the escaped URL in the DOM

Fixes https://github.com/ArchiveTeam/ArchiveBot/issues/340

707760694f892b8d580e74495b4a5d273aab8390 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: keep updating the rates even when we stop receiving data entirely

7f942380a686539d87ce59b9b686039e1325c821 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: optimize RateTracker

40bd8f5ce9bb8c375cff090f1b0eddfc54c129fd authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: optimize RateTracker

c0f5389f964baa4fc39f1ef52df5b355bba63ca8 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: optimize RateTracker by not changing the array length; average the rate over 3 sec and remove the cap on the number of readings

e5bf5a42e2db0e2b9066d5319ee17d0abaa36d15 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: average the msg/s and KB/s rates shown over the last 2 seconds

Limited to 31 max readings, to be fixed in an upcoming commit.

87a3c95bcfab4e0c508a6e4bab65bab6c8b60ea6 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use relative path assets/dashboard.js to make this a little easier to test locally

3c9dd027b7ab795f7feea47c3f22cf82da4ca309 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: not all the browser tips are important

719af9fb931e9c14af7e0a399ce4ca2be245b55b authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: put the job ident in a span instead of an <input>

More predictable, less annoying (doesn't break ctrl+a and other keys after focusing the input)

58e8c3f24a770776a66cca6f011f6f848a11d360 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: mention the consequence of &loadRecent=0

faa935fe5eaa6449cad649d42f5927f45dc6ebce authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: don't double space between sentences

43bc32d9e4172ab81257ddb4785983a23fde0f42 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: tweak some text to match "The default is [...]"

1d31f7851e1050dfd221f2c63be7f3fbc7a716a5 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: specify color for text to avoid issues with Firefox on Windows

The issue is similar to the Chromium <input> color issue, causing Firefox
to choose a light text...

d2519d95e51ae22599609d9c86f0c19e86988812 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: increase line-height so that things don't almost run into each other

973f5260cdd7f0a9f62cb2ad5cd1767a6a1cc57e authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove unused function `href`

586ebf7b36a02e0b5a7f3366e970dbe549c18e74 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: generate fewer useless tab characters for the browser to skip over

59cfae54045b7e5d24de0561c74769e28845ce3a authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: generate response count tooltip text without allocating an array

ffde3eaf8984d82b77b0a71f6d82a1a65a81691e authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: set #meta-info textContent instead of innerHTML

bdb2ead5dad62e82491a8b68ef1c627971c01f8c authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: format with rome

4d195ac2558c042e84af032a309df800b88d467e authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: reduce padding on `p` and `li` to try to fit the text into one viewport

0b5ceb9095740465aef8d3f36f923e18bd88b5d5 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use a consistent font-size of 13px

9d2941ada0bd8f46c5837980dcbc7199b51cafb0 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: darken the 'less important' text slightly to improve legibility on lodpi displays

083cf5ef0b9ee85f76b87fa1c8edfff8b63900b7 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: adblocker -> ad blocker; less bold

3f8e22b72d22f7119a6edac90f12793dfac32a46 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: if uBlock Origin cosmetic filtering is detected, advise user to disable ad blocker

1aced9e820f1a524b4aaa732c4a227a1a54855c0 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use the child selector, which might be slightly faster

1a647b13b3359b52108762ea1a81c1f7f4f4a186 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: show how many messages/sec and KB/s are being received over the WebSocket

906315946ee59d6785cc039a80ddd07b1d0a3fb0 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: display progress loading the recent data

9cf22379f951224fbe53896c762a4dab483d75c5 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: context menu: show a maximum of 8 !ig commands until [N more ignore suggestions] is clicked

b416499f7b86003de71db842de4a2b0d6ad412fb authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make moreDom=1 the default and only supported behavior

Motivated by 1) wanting underlines on links to not extend to the left of
the link, and 2) being ...

e5abd4ac014370588381bbac2aa44f4629a581ec authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: document the &historyLines= URL parameter

650d7ddcff328466681326d465a34ff1d563e351 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: document the purpose of the x-dns-prefetch-control

8aaba540434f0e9c182ba320dba3f34dba56d092 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: document the correct minimum JavaScript version

43ed65e8bb11eeeaaebe92f99a9d832bda1ed203 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: help: remove Chromium workaround that shouldn't be needed any more

6331489a571a9e3495e37f86c2c8d0d86303204e authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: document the &batchTimeWhenVisible= URL parameter

4e40d1cbac03fb5f2e2dfac2e9d45b81b0280138 authored over 1 year ago by Ivan Kozik <[email protected]>
Move dashboard/dashboard.js -> dashboard/assets/scripts/dashboard.js

This allows it to actually be served.

bcf51e49a96227f6f63713b37c39cf1b50f4ea58 authored over 1 year ago by Ivan Kozik <[email protected]>
Move dashboard/assets/scripts/ -> dashboard/assets/dashboard3/

7420bed69dccb81db7a5d3b9eb5503e6a76e972a authored over 1 year ago by Ivan Kozik <[email protected]>
Move /assets/dashboard.js -> /assets/dashboard3.js

In preparation for serving the other dashboard at /assets/dashboard.js

1902a46a7298ba2611739511ef47ec570b01076f authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: update http:// links

f1c4a16c43c2d05ccf378eff25aac05c6c6918b4 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: fix long-standing issue with aggressive timer throttling in Chromium-based browsers

This fixes the issue where we can end up with > 100K messages in the queue
due to Chromium stran...

d2bcb979d00cfa382862b9f2c785b1d1c7462cb6 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add &batchTimeWhenHidden= URL parameter

525b7e5fdf973ff80d06cd868c1d3524d1fe5182 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add a &debug= URL parameter to allow logging more information to the console

b54b2b44be384af4ea02e0fcd016078399fec1e6 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: organize the help text and make it fit in less vertical space

5134c96aa1287df581c38eff52789bc8e858a8de authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add &loadRecent={0,1} URL parameter

4c31775b6f46a34bb01094733f0a9316c6759ef7 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: load /logs/recent from the correct domain

This is useful when specifying ?host= in the URL during development.

92bc7d29eb3e1264c37c081bfd2ae77a37217055 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use monospace font for job-ident for better alignment

aa2d4b18263e523834dec90c8aca2464a10320c1 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: fix the automatic selection of the job ident when clicking

49396797eeece84cdd6e27e6e91fa97aa5252238 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: don't use the deprecated rgba(...)

3d09c9a5429505ec4218df28db40cd8e694b36d3 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make the stats elements hover color less subtle

c79c0ec70d3eae6b288f33bdb00123138781038c authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make it more obvious that the stats info should be clicked

40d953e8bc45de77c819cba904d59ec40fb9bb9b authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: context menu: convert box-shadow color to an rgba color,

so that the shadow looks much nicer when Dark Reader is messing with the colors

4550a5008b24c1b9b518405e134822e69858b928 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: context menu: don't underline 'Open link in new tab'

fc79670a7bc47de8bf9d496d2af146e0d0b7b96a authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make the job-ident text color slightly lighter

18d6aaac61cb798d23d9d482d5805cfbde257fef authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: underline links on hover

83742c473f029bf43ec9701cc8c3d49cc4a076c3 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove pointless use of bold

3ee2a865b8a8b16f76cbd977a13cb519571f18e3 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use just `font-family: sans-serif` except in the context menu

608add9ed6880c47cb7599eca8c565a53d6a1ffc authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: add workaround for Chromium bug where it uses the wrong default text color on form elements

a9915114e1577fadc7b9c3260c8265c61d46e433 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make the <kbd> elements more visible so that they can be visually scanned

aaf917ea8619c59c489eab7dfb32d5be6da96adf authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: start with all log windows hidden (filter "^$"); add &initialFilter= URL parameter

b799b2665f5de704803282574f549e206850da8a authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: load dashboard.js async; don't document.write

f0202ccdbd574ea9b6df321321ec7e9e52ccee31 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: apply fixes and format with rome

This is the result of:

rome check dashboard/dashboard.js --apply-unsafe --line-width 120

with ...

0cf091369f6c46fc0039dde1e87332a6b670bb82 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove unnecessary semicolons

c2ceef4c7ad3b404310654377ca01ddfa50c7d4f authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use ES6 classes

438a75b8c22234ffd9e649aa043799fe6395b956 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: mention that the file should be formatted with rome

d45eb790b427e5d2693b1fbdb1d88907386041db authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: make rome stop complaining about reassigning a function parameter

d9a8576f4f1c8653497a288d8dcf1f3762591147 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use Array.from instead of our own pre-ES6 implementation

ec6aea298c2f724962d4e049b56e1f21ecf2fe57 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use arrow functions instead of anonymous functions

52ba003b0b0db0d91a5630adb928171c4fd057df authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: use CSS `contain: strict` on the log windows to try to increase performance

https://developer.mozilla.org/en-US/docs/Web/CSS/contain

66795b240535a37b6bf4bd7bf26e430106b751f8 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove long-obsolete X-UA-Compatible header

ccec5117081f48c41b004dbf64516535c6087318 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove unused argument that should not have been here

7e0e930e71f2ee0d69b5316c8de946ff5c0c32f9 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: fix bug introduced by rome check's --apply-unsafe

eb3b27d39c78847b41b83cca8b61149f3f0f03ee authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: remove some commented-out console.log lines

69f133a536d247131d6db760a83299bc3f2fd004 authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: tweak some comments

4fa4f3025e436c9376a102f2378f92d9693d541b authored over 1 year ago by Ivan Kozik <[email protected]>
dashboard: context menu: hide on mousewheel in every browser, not just Chrome

Natively, browsers either make mousewheel close the context menu (Chrome on
Windows), or swallow...

70ecacec39699f121a58f9748da6adb09b428ada authored over 1 year ago by Ivan Kozik <[email protected]>