Signature extraction fails on certain YouTube URLs

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2<IP_ADDRESS>
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['https://www.youtube.com/watch?v=0l9u9uezX_4', '--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 3.7.7 (CPython) - Linux-5.6.13-100.fc30.x86_64-x86_64-with-fedora-30-Thirty
[debug] exe versions: ffmpeg N-52056-ge5d25d1147-static, ffprobe N-52056-ge5d25d1147-static
[debug] Proxy map: {}
[youtube] 0l9u9uezX_4: Downloading webpage
[youtube] {18} signature length 108, html5 player f82a8c37
[youtube] 0l9u9uezX_4: Downloading player https://www.youtube.com/s/player/f82a8c37/player_ias.vflset/en_US/base.js
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/YoutubeDL.py", line 797, in extract_info
    ie_result = ie.extract(url)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 2107, in _real_extract
    encrypted_sig, video_id, player_url, age_gate)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1436, in _decrypt_signature
    'Signature extraction failed: ' + tb, cause=e)
youtube_dl.utils.ExtractorError: Signature extraction failed: Traceback (most recent call last):
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/ige/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description
When trying to download a certain video, the program encounters an ExtractorError. I’m simply running:
youtube-dl https://www.youtube.com/watch?v=0l9u9uezX_4

So far this is the only video URL that I’ve encountered which causes the error.

Also happens on https://www.youtube.com/watch?v=W6ax8p9pj4A

also happening to me for a specific video
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-vF', 'https://www.youtube.com/watch?v=fzQ6gRAEoy0']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Git HEAD: a115e0759
[debug] Python version 3.8.2 (CPython) - Linux-5.7.10-050710-generic-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.4, ffprobe 4.2.4, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] fzQ6gRAEoy0: Downloading webpage
[youtube] {18} signature length 108, html5 player f82a8c37
[youtube] fzQ6gRAEoy0: Downloading player https://www.youtube.com/s/player/f82a8c37/player_ias.vflset/en_US/base.js
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1425, in _decrypt_signature
    func = self._extract_signature_function(
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 91, in interpret_expression
    right_val = self.interpret_expression(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 188, in interpret_expression
    x, abort = self.interpret_statement(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1425, in _decrypt_signature
    func = self._extract_signature_function(
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 91, in interpret_expression
    right_val = self.interpret_expression(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 188, in interpret_expression
    x, abort = self.interpret_statement(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1425, in _decrypt_signature
    func = self._extract_signature_function(
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 91, in interpret_expression
    right_val = self.interpret_expression(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 188, in interpret_expression
    x, abort = self.interpret_statement(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/aleren/git/youtube-dl/youtube_dl/YoutubeDL.py", line 798, in extract_info
    ie_result = ie.extract(url)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 2106, in _real_extract
    signature = self._decrypt_signature(
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1435, in _decrypt_signature
    raise ExtractorError(
youtube_dl.utils.ExtractorError: Signature extraction failed: Traceback (most recent call last):
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1425, in _decrypt_signature
    func = self._extract_signature_function(
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/aleren/git/youtube-dl/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 91, in interpret_expression
    right_val = self.interpret_expression(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 188, in interpret_expression
    x, abort = self.interpret_statement(
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/aleren/git/youtube-dl/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Running same (latest) version, error started partway through "youtube-dl -i PLHloTpmV7roPwnpg8ySknDs_bfA8N52s5" and restarting gives the same error on all videos in list. Videos play normally in browser.

Happening to me too.  Debian Linux 10.4.0.  Plays in Firefox just fine.
$ youtube-dl -F --verbose "https://www.youtube.com/watch?v=j9H5hkwwPvw"
[debug] System config: [u'--abort-on-error', u'--socket-timeout', u'300', u'-4', u'--max-downloads', u'1', u'--max-filesize', u'1073741824', u'--no-playlist', u'--retries', u'10', u'--fragment-retries', u'10', u'--no-overwrites', u'--sleep-interval', u'0', u'--max-sleep-interval', u'5']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-F', u'--verbose', u'https://www.youtube.com/watch?v=j9H5hkwwPvw']
[debug] Encodings: locale UTF-8, fs UTF-8, out None, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 2.7.16 (CPython) - Linux-4.19.0-9-686-pae-i686-with-debian-10.4
[debug] exe versions: ffmpeg 4.1.4-1, ffprobe 4.1.4-1
[debug] Proxy map: {}
[youtube] j9H5hkwwPvw: Downloading webpage
[youtube] Downloading just video j9H5hkwwPvw because of --no-playlist
[youtube] {18} signature length 104, html5 player f82a8c37
[youtube] j9H5hkwwPvw: Downloading player https://www.youtube.com/s/player/f82a8c37/player_ias.vflset/en_US/base.js
ERROR: Signature extraction failed: Traceback (most recent call last):
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
video_id, player_url, s
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
cache_res = res(test_string)
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1402, in
return lambda s: initial_function([s])
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 258, in resf
res, abort = self.interpret_statement(stmt, local_vars)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 92, in interpret_expression
m.group('expr'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 189, in interpret_expression
m.group('x'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 211, in interpret_expression
raise ExtractorError('Unsupported JS expression %r' % expr)
ExtractorError: Unsupported JS expression u'['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Unsupported JS expression u'['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
video_id, player_url, s
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
cache_res = res(test_string)
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1402, in
return lambda s: initial_function([s])
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 258, in resf
res, abort = self.interpret_statement(stmt, local_vars)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 92, in interpret_expression
m.group('expr'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 189, in interpret_expression
m.group('x'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 211, in interpret_expression
raise ExtractorError('Unsupported JS expression %r' % expr)
ExtractorError: Unsupported JS expression u'['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/local/bin/download/youtube_dl/YoutubeDL.py", line 797, in extract_info
ie_result = ie.extract(url)
File "/usr/local/bin/download/youtube_dl/extractor/common.py", line 530, in extract
ie_result = self._real_extract(url)
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 2107, in _real_extract
encrypted_sig, video_id, player_url, age_gate)
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1436, in _decrypt_signature
'Signature extraction failed: ' + tb, cause=e)
ExtractorError: Signature extraction failed: Traceback (most recent call last):
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
video_id, player_url, s
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
cache_res = res(test_string)
File "/usr/local/bin/download/youtube_dl/extractor/youtube.py", line 1402, in
return lambda s: initial_function([s])
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 258, in resf
res, abort = self.interpret_statement(stmt, local_vars)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 92, in interpret_expression
m.group('expr'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 189, in interpret_expression
m.group('x'), local_vars, allow_recursion - 1)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 56, in interpret_statement
v = self.interpret_expression(expr, local_vars, allow_recursion)
File "/usr/local/bin/download/youtube_dl/jsinterp.py", line 211, in interpret_expression
raise ExtractorError('Unsupported JS expression %r' % expr)
ExtractorError: Unsupported JS expression u'['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Unsupported JS expression u'['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
$
I am also having the same problem with the same version of youtube-dl on my tablet when running Termux v0.75.

it seems to affect all videos that require to extract js player f82a8c37

I was downloading a video and when it stopped downloading at 40 something percent, I retried and got this error.
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://invidio.us/watch?v=U2Z7BY_igEw', '--format=bestaudio']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 3.7.3 (CPython) - Linux-4.19.0-9-amd64-x86_64-with-debian-10.4
[debug] exe versions: ffmpeg 4.1.6-1, ffprobe 4.1.6-1
[debug] Proxy map: {}
[youtube] U2Z7BY_igEw: Downloading webpage
[youtube] {18} signature length 108, html5 player f82a8c37
[youtube] U2Z7BY_igEw: Downloading player https://www.youtube.com/s/player/f82a8c37/player_ias.vflset/en_US/base.js
ERROR: Signature extraction failed: Traceback (most recent call last):
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/YoutubeDL.py", line 797, in extract_info
    ie_result = ie.extract(url)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 2107, in _real_extract
    encrypted_sig, video_id, player_url, age_gate)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1436, in _decrypt_signature
    'Signature extraction failed: ' + tb, cause=e)
youtube_dl.utils.ExtractorError: Signature extraction failed: Traceback (most recent call last):
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1426, in _decrypt_signature
    video_id, player_url, s
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1338, in _extract_signature_function
    cache_res = res(test_string)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/extractor/youtube.py", line 1402, in <lambda>
    return lambda s: initial_function([s])
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 258, in resf
    res, abort = self.interpret_statement(stmt, local_vars)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 92, in interpret_expression
    m.group('expr'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 189, in interpret_expression
    m.group('x'), local_vars, allow_recursion - 1)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 56, in interpret_statement
    v = self.interpret_expression(expr, local_vars, allow_recursion)
  File "/home/elonsatoshi/.local/lib/python3.7/site-packages/youtube_dl/jsinterp.py", line 211, in interpret_expression
    raise ExtractorError('Unsupported JS expression %r' % expr)
youtube_dl.utils.ExtractorError: Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
 (caused by ExtractorError("Unsupported JS expression '['; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.")); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

This also happened for https://youtu.be/01DEVVWG6RE. Seems that the json file has changed format.

same here
https://www.youtube.com/watch?v=1GiPMMxxgU4

Duplicate of ...
https://github.com/ytdl-org/youtube-dl/issues/26137
https://github.com/ytdl-org/youtube-dl/issues/26136
https://github.com/ytdl-org/youtube-dl/issues/26134

This also happened for https://youtu.be/01DEVVWG6RE. Seems that the json file has changed format.

That's a nice music video! At least Invidious still works.

Duplicate of ...
#26137
#26136
#26134

How does consolidating duplicates work?


Initial work on #74.

Coverage decreased (-0.1%) to 68.192% when pulling 2a3816b57b165aeadbf9a82a5423caf437c14426 on kevgliss:74-private-key-audit into d45e7d6b85e37d8d916b82b96c1037aef491e557 on Netflix:master.

Coverage decreased (-0.1%) to 68.192% when pulling 343f4e84b6e5c19e2eeadc725f99dfc7823b008e on kevgliss:74-private-key-audit into d45e7d6b85e37d8d916b82b96c1037aef491e557 on Netflix:master.


Duplicate Classes with com.github.tipsi

> Task :app:checkDebugDuplicateClasses FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> 1 exception was raised by workers:
  java.lang.RuntimeException: java.lang.RuntimeException: Duplicate class com.devmarvel.creditcardentry.BuildConfig found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.CreditCardText found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.CreditEntryFieldBase found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.CreditEntryFieldBase$BackInputConnection found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.ExpDateText found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.SecurityCodeText found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.fields.ZipCodeText found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$1 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$2 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$3 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$4 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$5 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$6 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$7 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$8 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$SavedState found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardEntry$SavedState$1 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardFieldDelegate found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardUtil found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.CreditCardUtil$1 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.internal.FlipAnimator found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CardRegex found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CardType found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CardValidCallback found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CreditCard found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CreditCardForm found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CreditCardForm$1 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CreditCardForm$SavedState found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)
  Duplicate class com.devmarvel.creditcardentry.library.CreditCardForm$SavedState$1 found in modules classes.jar (com.github.dbachelder:CreditCardEntry:1.4.9) and classes.jar (com.github.tipsi:CreditCardEntry:1.5.1)

Looks like a huge number of the classes are duplicated between the two libraries and I'm not sure how to deal with it.

Man I am confused as hell:
https://github.com/tipsi/CreditCardEntry
How many versions of this library are there around? Has it just been copied all over the place, WTF?

Seems that directly referencing tipsi's credit card implementation fixes this:
implementation 'com.github.tipsi:CreditCardEntry:1.5.1'
added to my app/build.gradle


UT_DefaultHandler_CFE_SB_ReceiveBuffer does not adequately model behavior of CFE_SB_ReceiveBuffer for unit test purposes

Describe the bug
UT_DefaultHandler_CFE_SB_ReceiveBuffer only sets the value at BufPtr when Status is => 0 (CFE_SUCCESS == 0); however CFE_SB_ReceiveBuffer changes the value at BufPtr to NULL whenever the Status value is not CFE_SUCCESS.It is possible to get a NULL with a non-zero positive result when set by the user.  It is not possible to get the NULL value from the handler with a negative Status, a behavior that the production code has.  There is no guarantee that the CFE_SB_Buffer_t **BufPtr passed into the function does not already contain a non-NULL value from the code under test (CUT).
To Reproduce
Steps to reproduce the behavior:

Write a unit test for some CUT that uses the function and do not set a new handler
Make it so a negative value is received back from the function (i.e. CFE_SB_TIME_OUT)
If the CUT does not do it automatically, temporarily change the passed in address to have a value at that address
Test results show that the reference value is never set by the stub

Expected behavior
The follow-on logic from the default handler should match the logic in the production code, OR
Redesign the stubs to have no follow-on logic so unit test developer is in complete control of outside effects.
Code snips
https://github.com/nasa/cFE/blob/a16c78e1853c9b46ce5d1efae882ea5bf3a170cf/modules/core_api/ut-stubs/src/cfe_sb_handlers.c#L197-L209
https://github.com/nasa/cFE/blob/a16c78e1853c9b46ce5d1efae882ea5bf3a170cf/modules/sb/fsw/src/cfe_sb_api.c#L2015-L2019
System observed on:

RHEL-7.8

Reporter Info
Alan Gibson
NASA  GSFC/587

Is this not already solved by supporting override of the default handlers?  The trend for the default handlers is to model less of the real implementation vs more, so unique behavior can be owned by the test that requires that behavior.  Closing based on that approach and the capabilities already supplied, happy to set up a splinter if it helps.

The part that makes the CFE_SB_ReceiveBuffer stub different than other stubs, at least from what I have seen, is that the other stubs follow on logic seeks to mimic the production code.  I understand that handlers will be required in other instances, but this one does not seem to make any sense because the stub logic does not follow the production logic.  Why is the stub logic different?

The default handlers are written to support the framework tests, you are welcome to use them if they suite the needs of your tests but if not you need to write your own.  This sort of request is out of scope, in that there are insufficient framework resources to update handlers to support every app test and that's really not the intent of the default handlers anyways.  They are absolutely inconsistent, but there are no resources identified at this point to fix them all since they have been deemed "good enough" for what the framework needs.  If/when resources are identified to address inconsistencies in the handlers or increasing the scope on handler support we will.


Create Date functions

Create Date functions

We will use this approach #86 that can minimise spaghetti code.
So, we don't need to create pure functions for everything.


Use 55681 as the default OLTP exporter port

In the interest of making this library easier to use by default, this PR
proposes a simple change: allow our OTLP exporter to default to using
port 55681, rather than 4317. Port 4317 is the collector's GRPC port,
and our exporter doesn't support GRPC. The default HTTP port is 55681,
and so we use it throughout.
However, this does seem to be against the specification in some ways.
The specification doesn't require that you support GRPC, however it
defines the default value for the environment variable as if you do.
I think this is acceptable; and we can default to port 4317 and GRPC
once we have support for it and are comfortable that it performs well.
https://github.com/open-telemetry/opentelemetry-collector/blob/main/receiver/otlpreceiver/README.md#getting-started

Unfortunately, there's a conflict between the spec and the collector because the collector has had long-standing challenges implementing a mux that works for both gRPC and HTTP endpoints.
The spec states:

The default network port for OTLP/HTTP is 4317.

The OTLP Exporter configuration options also makes it clear that the default port for OTLP/HTTP is 4317.

That'd be lovely if they could get back to a single port. I wish them luck.
It does stink that our default configuration doesn't work, however. Any other thoughts on ways to resolve that?
(Other than implementing GRPC, I suppose, which we still could/should do)

(Closing this out in light of comments from @fbogsany but I still think it's valuable to discuss a better "out of box" experience given the conflicts between the standards and the collector, and I'm fine to do that here still or wherever)

The environment variable is the simplest way to handle this - i.e. just document this case prominently. An alternative is to provide a "distribution" that defaults to the thing that works (AWS have done this - I'm not sure if they've done it for Ruby). The thing we talked about to unify common elements of Shopify's and GitHub's configuration gems as a public convenience gem could be that.

Both of those are reasonable approaches, thanks. 😄


Look into pipreqs and match features

Look into https://github.com/bndr/pipreqs, There are a lot of interesting features that
they have implemented. Worth a look to see what features we should implement.

#33


ScrollLayer performance improvement changes

Scroll Layer now supports two methods for the scroll layer childrens to draw - with & without using bitmap. Support added by enabling configuration " rns_enable_scroll_layer_bitmap"
Cleanup duplicated code
Demo app posterView update improvement & minor bug fix

Scroll Layer now supports two methods for the scroll layer childrens to draw - with & without using bitmap. Support added by adding configuration " rns_enable_scroll_layer_bitmap". Default value is false.

Cleanup duplicated code

Demo app posterView update improvement & minor bug fix


multiplexer: fix consume of too many bytes

IOBufferReader::consume contractually assumes that all callers of it will not consume more bytes than read_avail for the buffer chain. This adds a debug assertion for this and fixes multiplexer so that it doesn't violate this invariant.

Cherry-picked to v10.0.x


program is grabbing the non mocked class as opposed to the mocked class

Hi there,
First of, let me just say that your program has made my job MUCH easier over the past month since I started using it, so kudos to you.  I'm having an issue where I have created a mocked class and am attempting to use the mocked class in a unit test, however the test environment keeps using the base class.  I have attempted to create the mock class in two ways:

using MOCK_BASE_CLASS
creating the class normally, but calling MOCK_METHOD for each function I am mocking
I have done this for several other classes and those mock objects still work perfectly fine, however this class is behaving strangely.  Do you have any advice on how to proceed?

Hi!
Can you make a minimal reproducible case that I can take a look at?
Thanks!


Mix command bug

🐛 Bug Report
Write a description of the bug here, give all the information you can about what it is, how it happened.
Using the new mix command
"/mix name:Marrentill Zahur:True" leads to an un doable amount.

Fixed in #4352


Pinceau variables overridden when using with tailwind

When using in combination with https://github.com/nuxt-modules/tailwindcss pinceau variables are included before tailwind css.
This result in being unable to override tailwind values with pinceau.

When using in combination with https://github.com/nuxt-modules/tailwindcss pinceau variables are included before tailwind css.
This result in being unable to override tailwind values with pinceau.

Can you provide a minimal duplicate repository

Yes please 🙏


Where Should One Add config.goodhosts.remove_on_suspend?

I added config.goodhosts.remove_on_suspend = false to the bottom of my config/config.yml file and this causes Vagrant to say it isn't a valid config file. Where should this config option be placed?

This plugin is not just for VVV.
That is a Ruby code and you cannot insert in the a yaml file as you did.
You need to edit the vagrantfile or in the case of VVV check how works the customfile. https://varyingvagrantvagrants.org/docs/en-US/references/vagrantfile/


Set focus on long flashlist

Hi, I have along carouse/flashlist and i want to set the focus on a specific item when it shows up. It only works when the item is within 20items difference from the first one, if it is further it doesnt work.
How do i set the focus on a remote item ?

Can you tell what property/method you are using to set focus on any non first item?

I tried the focusOptions.hasPreferredFocus

Right. hasPreferredFocus only on visible items and recycler has only certain amount of items visible initially. This is valid functionality what you asking I will add it to mine backlog and will do it

hi @aurimasmi is there any workaround to it ? Is there any to fix it in the near future ?

hi @aurimasmi , i'm using initialScrollIndex and it seem to be doing the work, but only when you scroll right afterward. If you scroll left, it kind of repeats its self. It takes you back to the initial scroll index. Is there any hack to this ? This is the implementation:
<FlashList
                            data={channels}
                            renderItem={rowRenderer}
                            horizontal
                            type="row"
                            estimatedItemSize={Dimensions.get("window").width / 1}
                            initialScrollIndex={50}
                        />


Try vitest

It is worth a try vitest instead of just. Should be much faster and easier.

Closed in #90

Closed in #90


update all.json

Site
Urlscan
Screenshot

tclh.cryptorally.org
https://urlscan.io/result/e54ce785-b3da-44c0-88d8-92dd3aeb9004/
https://github.com/polkadot-js/phishing/assets/14356826/c88759c4-0606-4194-930e-12ed1a299bad

Already added in previous PR
https://github.com/polkadot-js/phishing/pull/3531
Check line 36 @frankywild


Plugin Disabled"

[x] This issue isn't duplicated - you can check if it is by using the search bar located at the top left hand corner and select "Issues" on the left.
[ ] This issue includes appropriate markdown for sections - e.g. code blocks for crash dumps.
[x] This issue is understandable - feel free to use your native language to write issues if you are not comfortable with English.

Issue description
What problem do you have? Plugin won't load properly. says "plugin disabled"

Reproducing the issue

...install the plugin
...start server

Client information
PocketMine-MP Version: 1.2.12 API 3-alpha 11
Plugin Version: 1.2.3
PHP version: 7.2.1 (default)

Optional information
Put a console error here

Does this help?:
2018-03-29 [16:36:26] [Server thread/INFO]: Loading pocketmine.yml...
2018-03-29 [16:36:26] [Server thread/INFO]: Loading server properties...
2018-03-29 [16:36:26] [Server thread/INFO]: Selected English (eng) as the base language
2018-03-29 [16:36:26] [Server thread/INFO]: Starting Minecraft: PE server version v1.2.10
2018-03-29 [16:36:26] [Server thread/NOTICE]: Online mode is enabled. The server will verify that players are authenticated to Xbox Live.
2018-03-29 [16:36:26] [Server thread/NOTICE]: To disable authentication, set "xbox-auth" to "false" in server.properties.
2018-03-29 [16:36:26] [Server thread/INFO]: Opening server on <IP_ADDRESS>:25650
2018-03-29 [16:36:26] [Server thread/INFO]: This server is running PocketMine-MP [#40b995a 2018-03-10] version 1.7dev "[REDACTED]" (API 3.0.0-ALPHA11)
2018-03-29 [16:36:26] [Server thread/INFO]: PocketMine-MP [#40b995a 2018-03-10] is distributed under the LGPL License
2018-03-29 [16:36:26] [Server thread/INFO]: Loading recipes...
2018-03-29 [16:36:26] [Server thread/INFO]: Loading resource packs...
2018-03-29 [16:36:26] [Server thread/INFO]: Loading EssentialsPE v2.0.0
2018-03-29 [16:36:26] [Server thread/INFO]: Loading timeSetter v1.1.0
2018-03-30 [07:36:26] [Server thread/INFO]: [timeSetter] 時刻を Asia/Tokyo に合わせました。
2018-03-30 [07:36:26] [Server thread/INFO]: Loading BasicHUD v1.0.6-4
2018-03-30 [07:36:26] [Server thread/INFO]: Loading AllSigns v1.0.7
2018-03-30 [07:36:26] [Server thread/INFO]: Loading BadWordBlocker v1.1.0
2018-03-30 [07:36:26] [Server thread/INFO]: Loading Festival v1.0.2-11
2018-03-30 [07:36:26] [Server thread/INFO]: Loading PurePerms v1.4.1-4
2018-03-30 [07:36:26] [Server thread/NOTICE]: PurePerms by 64FF00 & ProjectInfinity!  For help, type "help" or "?"
2018-03-30 [07:36:27] [Server thread/INFO]: [EssentialsPE] No new version found, you're using the latest version of EssentialsPE
2018-03-30 [07:36:32] [Server thread/INFO]: [CONSOLE: Saving...]
2018-03-30 [07:36:32] [Server thread/INFO]: [CONSOLE: Saved the world]
2018-03-30 [07:36:32] [Server thread/INFO]: [CONSOLE: Stopping the server]
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling EssentialsPE v2.0.0
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling timeSetter v1.1.0
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling BasicHUD v1.0.6-4
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling AllSigns v1.0.7
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling BadWordBlocker v1.1.0
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling Festival v1.0.2-11
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling PurePerms v1.4.1-4
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling MagicWE2 v5.7.1
2018-03-30 [07:36:32] [Server thread/INFO]: [[MagicWE] ] Destroying Sessions
2018-03-30 [07:36:32] [Server thread/INFO]: [[MagicWE] ] Sessions successfully destroyed
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling MineReset v3.1.0
2018-03-30 [07:36:32] [Server thread/INFO]: Disabling WorldProtect v2.3.5-7
2018-03-30 [07:36:32] [Server thread/INFO]: Unloading level "IlluminariumBE"
2018-03-30 [07:36:32] [Server thread/INFO]: Stopping other threads

I tried to edit the spoon.txt doc with 'yes' both immediately after the '?' and with a space after the '?' still the same result.

I don't support spoon users. Download an official PocketMine version to use from PocketMine-MP's github here


Malicious link in credits

Hey there! Thanks for making this extension; I've used it with brackets before and it was very helpful
In the credits you include a link to getBOOstrap.com, not getBOOTstrap.com, and it turns out that the former is a malicious website. Just thought you'd want to know that.
Have an nice day/night!

Good catch.

Thank you!
It must be a TYPO!
Atenciosamente,
Antonio Carlos Barbosa
*Fone:    *+55 15 2102-6500
2017-03-15 1:23 GMT-03:00 Jorgeus<EMAIL_ADDRESS>
Good catch.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/acbarbosa1964/acb-bootstrap-snippets/issues/4#issuecomment-286637456,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKF73WqtmOdIcku2x8qFJ0EltLcoBnTqks5rl2fTgaJpZM4Isvyq
.


apt update したら GUI 表示されなくなっちゃった！！！！ヤバイ！！！！

ライブラリを apt install しようとする
「そんなのないよ！」的なことを言われる
対処法を調べる
「apt update, apt upgrade しろ」と言われる
してみる
ターミナルで apt update apt upgrade してみるdpkg: error processing なんとかかんとか
うんたら overwritten かんたら
E: Sub-process /usr/bin/dpkg returned an error code (1)

とか言われた。このエラー文だけではイマイチ情報が無かった
だいたいこんな感じのエラー文だった気がする
GUI でやったソフトウェアアップデートでもエラーを吐かれる
エラーの内容的にはだいたいこんな感じだった気がする
インストールしようとしたパッケージはこの人と違う
nautilus を起動しょうとコマンドを打ってみる
いつまで経っても起動せず、This may indicate that pixbuf loaders or the mime database could not be found. というエラーが帰る
一旦再起動してみる（運の尽き）
GUI という GUI が表示されなくなる ←イマココ

SSH でつながるので SSH でつないで状況を把握することにした
もう一度エラー文を読みたくて sudo apt update してみるRelease file for https://repo.download.nvidia.com/jetson/common/dists/r34.1/InRelease is not valid yet (invalid for another 10d 16h 7min 51s). Updates for this repository will not be applied.

という感じのエラーが４つ吐かれた
それぞれ、nvidia jetson, ros focal, ubuntu-ports focal-backports, ubuntu-ports focal-security のリポジトリの URL っぽかった

update upgrade fix_broken_install
xavier@ubuntu:~$ sudo apt update
[sudo] password for xavier:
Get:1 https://repo.download.nvidia.com/jetson/common r34.1 InRelease [2,555 B]
Hit:2 http://ports.ubuntu.com/ubuntu-ports focal InRelease
Hit:3 http://packages.ros.org/ros/ubuntu focal InRelease
Get:4 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease [114 kB]
Get:5 https://repo.download.nvidia.com/jetson/t194 r34.1 InRelease [2,547 B]
Get:6 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease [108 kB]
Get:7 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [114 kB]
Reading package lists... Done
E: Release file for https://repo.download.nvidia.com/jetson/common/dists/r34.1/InRelease is not valid yet (invalid for another 9d 4h 1min 35s). Updates for this repository will not be applied.
E: Release file for http://packages.ros.org/ros/ubuntu/dists/focal/InRelease is not valid yet (invalid for another 16d 19h 42min 35s). Updates for this repository will not be applied.
E: Release file for http://ports.ubuntu.com/ubuntu-ports/dists/focal-updates/InRelease is not valid yet (invalid for another 34d 22h 40min 23s). Updates for this repository will not be applied.
E: Release file for http://ports.ubuntu.com/ubuntu-ports/dists/focal-backports/InRelease is not valid yet (invalid for another 34d 22h 41min 59s). Updates for this repository will not be applied.
E: Release file for http://ports.ubuntu.com/ubuntu-ports/dists/focal-security/InRelease is not valid yet (invalid for another 34d 22h 39min 4s). Updates for this repository will not be applied.
xavier@ubuntu:~$ sudo apt upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 cuda-libraries-dev-11-4 : Depends: cuda-profiler-api-11-4 (>= 11.4.239) but it is not installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
xavier@ubuntu:~$ sudo apt --fix-broken install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  apt-clone archdetect-deb bogl-bterm busybox-static cryptsetup-bin cuda-nvprof-11-4 dctrl-tools dpkg-repack gir1.2-goa-1.0
  gir1.2-timezonemap-1.0 gir1.2-xkl-1.0 grub-common libavresample-dev libavresample4 libdc1394-22-dev libdebian-installer4 libexif-dev
  libfwupdplugin1 libgdcm-dev libgphoto2-dev libilmbase-dev libopencv4.2-java libopencv4.2-jni libopenexr-dev libraw1394-dev
  libtimezonemap-data libtimezonemap1 libxmlb1 os-prober python3-icu python3-pam rdate tasksel tasksel-data
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  cuda-profiler-api-11-4
The following NEW packages will be installed:
  cuda-profiler-api-11-4
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
786 not fully installed or removed.
Need to get 0 B/18.6 kB of archives.
After this operation, 90.1 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 240492 files and directories currently installed.)
Preparing to unpack .../cuda-profiler-api-11-4_11.4.239-1_arm64.deb ...
Unpacking cuda-profiler-api-11-4 (11.4.239-1) ...
dpkg: error processing archive /var/cache/apt/archives/cuda-profiler-api-11-4_11.4.239-1_arm64.deb (--unpack):
 trying to overwrite '/usr/local/cuda-11.4/targets/aarch64-linux/include/cudaProfiler.h', which is also in package cuda-nvprof-11-4 11.4.166-1
Errors were encountered while processing:
 /var/cache/apt/archives/cuda-profiler-api-11-4_11.4.239-1_arm64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

試した解決法
update したのを戻す
xavier@ubuntu:~/catkin_ws/src/ros_test/doc/issue$ awk '$3 == "upgrade" {print $4"="$5}' /var/log/dpkg.log > rollback
xavier@ubuntu:~/catkin_ws/src/ros_test/doc/issue$ vim rollback
xavier@ubuntu:~/catkin_ws/src/ros_test/doc/issue$ xargs sudo apt --simulate install < rollback
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '9.3.0-17ubuntu1~20.04' for 'libasan5' was not found
E: Version '9.3.0-17ubuntu1~20.04' for 'gcc-9' was not found
E: Version '9.3.0-17ubuntu1~20.04' for 'libgcc-9-dev' was not found
E: Version '9.3.0-17ubuntu1~20.04' for 'cpp-9' was not found
E: Version '9.3.0-17ubuntu1~20.04' for 'gcc-9-base' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpg-wks-client' was not found
E: Version '2.2.19-3ubuntu2.1' for 'dirmngr' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpg-wks-server' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gnupg-utils' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpg-agent' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpg' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpgconf' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gnupg-l10n' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gnupg' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpgsm' was not found
E: Version '2.2.19-3ubuntu2.1' for 'gpgv' was not found
E: Version '2.7.18-1~20.04.1' for 'libpython2.7' was not found
E: Version '2.7.18-1~20.04.1' for 'python2.7' was not found
E: Version '2.7.18-1~20.04.1' for 'libpython2.7-stdlib' was not found
E: Version '2.7.18-1~20.04.1' for 'python2.7-minimal' was not found
E: Version '2.7.18-1~20.04.1' for 'libpython2.7-minimal' was not found
E: Version '2.2.9-1ubuntu0.2' for 'libexpat1' was not found
E: Version '1:2.25.1-1ubuntu3.2' for 'git' was not found
E: Version '7.68.0-1ubuntu2.7' for 'libcurl4' was not found
E: Version '3.8.10-0ubuntu1~20.04.2' for 'libpython3.8' was not found
E: Version '1.1.1f-1ubuntu2.10' for 'libssl1.1' was not found
E: Version '3.8.10-0ubuntu1~20.04.2' for 'python3.8' was not found
E: Version '3.8.10-0ubuntu1~20.04.2' for 'libpython3.8-stdlib' was not found
E: Version '3.8.10-0ubuntu1~20.04.2' for 'python3.8-minimal' was not found
E: Version '3.8.10-0ubuntu1~20.04.2' for 'libpython3.8-minimal' was not found
E: Version '3.31.1-4ubuntu0.2' for 'libsqlite3-0' was not found
E: Version '2.10.1-2ubuntu0.1' for 'libfreetype6' was not found
E: Version '8.0.28-0ubuntu<IP_ADDRESS>' for 'libmysqlclient21' was not found
E: Version '2.4.49+dfsg-2ubuntu1.8' for 'libldap-2.4-2' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavformat-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavcodec-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavfilter7' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavformat58' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavcodec58' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libswresample-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libswresample3' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavresample-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavresample4' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libswscale-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavutil-dev' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libswscale5' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libpostproc55' was not found
E: Version '7:4.2.4-1ubuntu0.1' for 'libavutil56' was not found
E: Version '7.68.0-1ubuntu2.7' for 'libcurl3-gnutls' was not found
E: Version '12.9-0ubuntu<IP_ADDRESS>' for 'libpq5' was not found

参考にしたサイト

apt update を取り消したい


Custom Filter on a complex object

Hello,
I would like to filter data on a "complex object JSON".
My data is like this :
users (Array object JSON):

id
firstName
lastName
roles (Array object JSON)
** id
** name
** code

I display roles column via  dataFormat but how to apply filter in a complex object ?
Thanks for your answer.

@cedmalherbe8 sorry for lately reply.
https://github.com/AllenFang/react-bootstrap-table/blob/master/examples/js/manipulation/search-format-table.js#L51-L52
There're two way to do it

Enable filterFormatted on TableHeaderColumn, which will allow react-bootstrap-table to filter the data by the result of dataFormat, but if your dataFormat contain some HTML tag, this ways is not good

Use filterValue to assign which field or data you wanna to be filtering

Let me know if you have any concern, thanks :)


Add more styles to the matching bracket

Like an underline:

...or at least give an option to desactive it please.

It could be merge with this -> #46804

:+1: Let's track in #46804


Roll engine a76054f4b6fd..76ec93dabf06 (3 commits)

https://github.com/flutter/engine/compare/a76054f4b6fd...76ec93dabf06
git log a76054f4b6fd..76ec93dabf06 --date=short --no-merges --format='%%ad %%ae %%s'
2018-08-02<EMAIL_ADDRESS>Add an explicit -[FlutterViewController init] implementation (#5924)
2018-08-02<EMAIL_ADDRESS>Roll src/third_party/skia e43024a5bab7..64cc576b1fa7 (1 commits) (#5926)
2018-08-01<EMAIL_ADDRESS>Roll src/third_party/skia ed8bc196bd56..e43024a5bab7 (1 commits) (#5925)
The AutoRoll server is located here: https://flutter-engine-flutter-roll.skia.org
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

@rmistry @liyuqian : New roll has been created by https://flutter-engine-flutter-roll.skia.org

Commit queue failed; closing this roll.


hyperparameters in the pretrained model

Hi,
In the provided code there is a default setting of hyperparameters (e.g. default lambda_recon_loss is 0.2), is the pretrained model trained on that setting? If not, could you please provide the settings of hyperparameters to reproduce the pretrained model?
Thanks

@davidpig Hi, the hyperparameters in our code are same as the experimental settings in our paper.

Thank you very much for the prompt reply！ 😄


Adding option to group metrics into a custom metric namespace

This option is available to configure but was missing on the docs.
See https://github.com/Azure/azure-sdk-for-python/pull/34463

@didiergbenou-ms - after you agree to the CLA, we can proceed with this PR. See https://github.com/MicrosoftDocs/azure-monitor-docs/pull/22#issuecomment-2422923018 - thanks

@microsoft-github-policy-service agree company="Microsoft"

@AaronMaxwell
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


the content of kivy camera is rotated 90 degrees anticlock-wise in Android Mobile

Software Versions

Python: 3.9
OS: windows,android
Kivy: 2.1.0
Kivy installation method:

Describe the bug
The acutual contents of kivy camera is rotated where
The actual images is

But the kivy camera image in Android Mobile:
Rotated to 90 anti-clock wise

The issue tracker is a tool to address bugs only (search known bugs: https://git.io/vM1iE).
Please use the #support Discord channel at https://chat.kivy.org/ or Stack Overflow for
support questions, more information at https://git.io/vM1yQ.
To Reproduce
A short, runnable example that reproduces the issue with latest kivy master.
Code and Logs and screenshots
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
import time
Builder.load_string('''
<CameraClick>:
    orientation: 'vertical'
    Camera:
        id: camera
        resolution: (640, 480)
        play: False
    ToggleButton:
        text: 'Play'
        on_press: camera.play = not camera.play
        size_hint_y: None
        height: '48dp'
    Button:
        text: 'Capture'
        size_hint_y: None
        height: '48dp'
        on_press: root.capture()
''')

class CameraClick(BoxLayout):
    def capture(self):
        '''
        Function to capture the images and give them the names
        according to their captured time and date.
        '''
        camera = self.ids['camera']
        timestr = time.strftime("%Y%m%d_%H%M%S")
        camera.export_to_png("IMG_{}.png".format(timestr))
        print("Captured")

class TestCamera(App):

    def build(self):
        return CameraClick()

TestCamera().run()

Additional context
Add any other context about the problem here.
The camera is working good in windows
But when i Test in Android It is rotated to anti-clock wise 90 degrees

I didn't think Kivy Camera worked on modern Android devices.
And the issue you see will be device dependent too.
Use this camera widget https://github.com/Android-for-Python/Camera4Kivy
This example https://github.com/Android-for-Python/Camera4Kivy#c4k-photo-example  will enable you to check for the expected behavior.

I actually I test the .apk file in android version: Android Nougat (version 7.0)
it worked but the camera content is rotated

Thank you @RobertFlatt for your reply.
now I am using the Camera4Kivy module.

I don't know what the issue is, the examples are tested on Android 13.

when i switch between app it is showing

Can you leas explain this a little more?


Bug: cannot use 0 as non-plural translation arguments

import { I18n } from "val-i18n";

let i18n = new I18n("en", { en: { apples: "{{n}} apples" } });
console.log(i18n.t("apples", { n: 0 }));
console.log(i18n.t("apples", { n: 1 }));

Outputs:
n apples
1 apples

The options parameter in t is of type Record<string, string>. It was expecting string as values. Looks like I can support number as well.

I see what went wrong.
The implementaion
https://github.com/crimx/val-i18n/blob/2841bbcf20a8fed951f1a46a2ad24fee46687b1a/src/i18n.ts#L65
is different from the type
https://github.com/crimx/val-i18n/blob/2841bbcf20a8fed951f1a46a2ad24fee46687b1a/src/interface.ts#L16-L24

<EMAIL_ADDRESS>published.


Consider using --validate=false for istioctl install to avoid validation webhook dependencies

This may resolve issues where lingering webhooks stick around blocking installation, etc. We are the ones writing the config, so presumably it is correct.
There might be some negative implications of this, such as if custom user's settings actually do create invalid config

we cannot do this apparently, that is clientside only


Accordion don`t react on active attribute

Hi,
I`m using sveltestrap in one of my projects and I use Accordion component there. I want to open/close accordion items on events (represented by button on click here), but I cannot make it work. Seems to me, that accordion doesnt care about active attribute.
I prepared example in repl
https://svelte.dev/repl/814938bc1b224688a0d86400e9038878?version=3.38.3
At start, item 1 is active and item 2 is not. When you click button in item 1 - I set the variable, which is bound to active attribute false to first item and true to second.
This should close first item and open second one.
but It doesnt works.
Btw great work with library and thank you
vlado

Hi @vbalko ,
Yes that's annoying, I'll look at correcting, thanks for the heads up.
FYI you can control with the current release if you add the stayOpen prop to the acoordion:  https://svelte.dev/repl/4168c3be91f44461b98f3af9d3305fcf?version=3.38.3
However this allows more than one accordion item to be open at once which may not be what you want.

Great - I appreciate your quick response and also proposal for workaround.
Good job


ENH: Use Enums for enumerated types

Scipy uses enumerated types in a number of places: for example, when selecting the method used by scipy.optimize.minimize. Historically, the pattern here has been to use strings. However, this is undesirable:

Values are not discoverable without reading the docs
Values do not autocomplete and cannot be checked for correctness by most IDEs
Remembering the canonical dashes, underscores and capitals is unnecessarily complicated

Instead, we could use an enum.Enum, which solves 1 and 2, and renders 3 moot.
By using an enum which also subclasses str, existing code would not break, and people could still pass in strings if they wanted to. e.g.
from enum import Enum

class MinimizeMethod(str, Enum):
    NELDER_MEAD = "Nelder-Mead"
    POWELL = "Powell"
    CG = "CG"
    BFGS = "BFGS"
    NEWTON_CG = "Newton-CG"
    L_BFGS_B = "L-BFGS-B"
    TNC = "TNC"
    COBYLA = "COBYLA"
    SLSQP = "SLSQP"
    TRUST_CONSTR = "trust-constr"
    DOGLEG = "dogleg"
    TRUST_NCG = "trust-ncg"
    TRUST_EXACT = "trust-exact"
    TRUST_KRYLOV = "trust-krylov"

I, personally, consider this a no-brainer as far as usability goes. No extra code would be needed in the functions which take these enumerated values, the options just need to be defined.

Another possible improvement is in similar functions where some arguments only apply to if an enumerated type argument has a particular value. This means we end up with unnecessarily long signatures, and the combination of arguments is, again, hard to discover, hard to autocomplete, hard to check.
Instead, we could pass an object (possibly an instance of a dataclass) into the method argument, which contains the arguments required for that particular method which are not required by all methods. That can have its own defaults, and be explicit about what arguments it needs from the user.
This is more speculative because the extra function arguments aren't going to go away without a breaking change, and so we'd be adding another way of doing something (albeit a better way).

I'd like to see the adaptation of enums too :+1:. FYI, enums couldn't have been added until we dropped Python2.7 support in the 1.3 release (May'19) - so I wouldn't expect to see many Python3 features yet.
I haven't worked closely enough with minimize to comment on the specifics, maybe someone more involved could weigh in? @ilayn @rgommers

For my taste this is indeed neat ...But:
In my opinion the added value is limited since nobody chooses the method on the fly that often.  Remembering which method to use in which problem is a more involved choice hence this is a negligible overhead compared to that if you are not already a specialist. If you are a specialist then yes maybe this can save a few seconds if you are using a capable IDE/editor but printing the docstring and copy/pasting really don't cost too much.
Maintenance-wise we only need to rename things (say in your example capitalize them). And we still have to check if it is a valid string. But I don't see how existing strings would be processed. This looks a bit too much of a benefit of the editor side.
Having said that maybe we might consider using them since Py3.4 mark finally has been passed (I am really happy that we can use this sentence :)  but that's more in @pv and @rgommers dept.

enums couldn't have been added until we dropped Python2.7

There was enum34 but I get not wanting to rely too heavily on backports modules.

In my opinion the added value is limited since nobody chooses the method on the fly that often.

Agreed, although minimize was just the first example I found, I'm sure there are others: numpy.linalg.norm, for example. I suppose optimization experts coming from other languages may find it useful to have a listing of which methods are implemented in scipy, but that's probably a small group of people.
You can construct enums directly from their values, in a way which transparently throws ValueErrors:
from enum import Enum

class MyEnum(Enum):
    A = "a"
    B = "b"

MyEnum.A
MyEnum("a")
MyEnum("c")  # ValueError: 'c' is not a valid MyEnum

So there could just be a line at the top of any enum-ingesting function to normalise them in that way. Or, with the StrEnum pattern above, you can compare base strings directly to enum values: MyEnum.A == "a"  # True.
The way I like to think about it is that we're already using enumerated types, we're just not giving python the information it needs to do anything useful with them.

@janosg perhaps you can weigh in on the suggestions in the top-post? Personally, I'm not convinced that this is particularly high priority, but I definitely think that it would be nice to have.

If I understand correctly, the top-post is proposing two things:

Passing the MinimizeMethod Enum instead of a string to select algorithms
Passing configured algorithm objects instead of a string. This also replaces the options dictionary to configure the algorithm.

In optimagic we recently implemented the second proposal. Our starting position was the same as scipy.optimize and the full set of changes is described here. Some of the changes go beyond what is suggested here (e.g. copy constructors).
To combine points 1 and 2 from the original post I would suggest to replace the MinimizeMethod Enum with a module called minimize_methods. This could then be used as follows:
minimize(
    fun=lambda x: x @ x
    x0=np.arange(3),
    method=scipy.optimize.minimize_methods.lbfgsb(maxcor=12),
)

This would be equivalent to the following code
minimize(
    fun=lambda x: x @ x,
    x0=np.arange(3),
    method="L-BFGS-B",
    options={"maxcor": 12},
)

In my opinion this has a lot of advantages over string + options dict. The most important ones are full discoverability of all relevant options and possible consistency checks of algorithm options before the optimization is run. It can also solve Issues like #21296. Nevertheless, I would make all of this completely optional and continue to support strings + options dicts.
I also agree with @ilayn that having discoverability for method alone is not a game changer. But when it extends to supported options for each method this changes. I have been using it for a short while in optimagic now and can't imagine going back!
As mentioned before, I am happy to help with the implementation if you decide to go into this direction.

Another option is the use type hinting as a Literal eg.
https://github.com/scipy/scipy/blob/9e93f673c4021cc6dc38487dbe8fb2db8cadf131/scipy/signal/_short_time_fft.py#L253

Since writing this issue, I basically made a similar plea to the python core devs, which is why enum.StrEnum is now part of the standard library :) There is also my backport package down to 3.8.6.
Literals are definitely the correct way to type annotate the situation we have at the moment and should absolutely be done. It's not quite as good as enums, but gets a lot of the way there.


Add future APIs

Add the option to use scripting APIs developed in version N in pymechanical version <N.
This can be done by implementing the APIs directly in C# in some Ansys.Mechanical.Future namespace. The APIs can be implemented as extension methods and "installed" like this:
import clr
import sys

sys.path.append(r"path\to\future\dll")
clr.AddReference("Ansys.Mechanical.Future")
import Ansys
clr.ImportExtensions(Ansys.Mechanical.Future)
Model.SomeFutureAPI()

ImportExtensions is still not implemented in pythonnet, see https://github.com/pythonnet/pythonnet/issues/55, but for the remote sessions this can use IronPython- assuming that the assembly is copied to the machine where the remote instance is running. Fixing that issue in pythonnet or our fork would allow us to make use of this for embedded instances.
I have a reference implementation of the C# code built against ansys version 241 in this branch. This issue tracks adding that DLL to pymechanical, figuring out how to build it as part of the CI/CD, and the client side work to include that in embedding and remote sessions.

Let's include the fix for https://github.com/ansys/pymechanical/issues/318 in the first version of the future library


css_comments file added

Description 📜
I added documentation on CSS Comments.
Fixes #2923

Type of change 📝

[ ] Au#dio (Should be in mp3 format Includes speech clarity, Concise ,Low distortion)
[ ] Vi#deo (Animations, screen-recordings, presentations and regular explanatory films are all possibilties etc)
[x] Doc#umentation (Content Creation in the form of codes or tutorials)
[ ] Other (If you choose other, Please mention changes below)

Domain of Contribution 📊

[ ] Android Dev #(Flutter)
[ ] Android Dev #(Java)
[ ] Android Dev #(Kotlin)
[ ] Backend Dev #(Java)
[ ] Backend Dev #(.NET)
[ ] Backend Dev #(PHP)
[ ] Backend Dev #(Python)
[ ] C/#CPP
[ ] Competitive #Programming
[ ] Cyber #Security
[ ] DS#A
[ ] Data#base
[ ] Datascience with #Python
[ ] Datascience with #R
[x] Frontend Dev #HTML/CSS/JS
[ ] Frontend Dev #React/Angular/Vue
[ ] Go#lang
[ ] Interview #Prep
[ ] Java_#Domain
[ ] Java#Script
[ ] ME#RN
[ ] Machine #Learning
[ ] Open #Source
[ ] Python_#Domain
[ ] Ru#st
[ ] Statis#tics
[ ] UI/#UX

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

Can you please review my PR!

@praveenscience I've made all the changes that you've asked for. Could you please review the changes and merge it?

okay sir


Review all Read/Write problem on RelatedData class

Description
Regarding https://github.com/toggl/toggldesktop/issues/2506#issuecomment-452302800, we have to take a look on this issue on all RelatedData's variables
🐞 Actual behavior

There are many Read/Write problem on Related Data
RelatedData is not safe-thread
RelatedData share publicly its variables
https://github.com/toggl/toggldesktop/blob/9ea1df83aa324adfc54e04d01cbee21622dbd17f/src/related_data.h#L37-L47
There are no any lock mechanism.

💯 Acceptance Criteria

RelatedData class should be safe-thread

Related to https://github.com/toggl/toggldesktop/pull/2816


Honest validator eth1 timestamp

Following up on conversations with @JustinDrake and @djrtwo, in the Eth1 Data section of the honest validator guide there is the following:

Let get_eth1_data(distance: uint64) -> Eth1Data be the (subjective) function that returns the Eth 1.0 data at distance distance relative to the Eth 1.0 head at the start of the current Eth 1.0 voting period.

I have two points regarding this text:
1. Clarification
I wanted to clarify that we're looking for something like this (excuse my shabby pseudo-python):
def entire_eth1_chain():
  # Returns all blocks in the eth1 chain in ascending block.number order. Timestamps never decrease.

def get_eth1_data(distance):
  time = state.genesis_time + eth1_voting_period_start_slot * SECONDS_PER_SLOT
  last_block_number = [block.number for block in entire_eth1_chain() if block.timestamp >= time][0]
  get_eth1_data_at_block_number(block_number - distance)

I think the primary thing to clarify here is that we observe eth1 block timing using timestamps, as opposed to "looking at my wall clock when I first see a block".
2. Eth1 staleness
A validators Eth1 node can go out of sync, perhaps it's on the wrong chain (eclipse attack) or it's stale and hasn't seen a block in a long time.
Detecting an eclipse attack is out-of-scope for honest validator guide IMO, but I'm interested in staleness. Particularily:

How to detect when an eth1 node is stale.
What to do when you're trying to produce a block on a stale node.

Perhaps staleness could be defined as:
import time

ETH1_STALE_TIME_SECONDS = SLOTS_PER_ETH1_VOTING_PERIOD * 15

def eth1_chain_is_stale():
  now = time.time()
  entire_eth1_chain()[-1].timestamp + ETH1_STALE_TIME_SECONDS <= now

Regarding what to do, it's not so clear to me. Perhaps the block proposer should just decide they're unfit to produce and skip the slot -- this would halt the eth2 chain if the eth1 chain did go down for ~4hrs, but that seems pretty unlikely and we'd probably be very socially aware if eth1 halted for even a minute. An alternative method would be to just vote junk like in #1431.

I think the primary thing to clarify here is that we observe eth1 block timing using timestamps, as opposed to "looking at my wall clock when I first see a block".

That said, eth1 block timestamps are prone to manipulations. Computation of eth1_data based on  timestamps plus careless optimisation (e.g. caching get_eth1_data result) can potentially lead to a vulnerability when a miner needs to hold timestamp for a little bit near to voting period border to delay validator onboarding. From that perspective tracking eth1 block numbers locally is a better approach.
IMO, staleness is, also, out of scope of a validator doc. I think the best approach to coping with eth1 data failures is suggested by @vbuterin in https://github.com/ethereum/eth2.0-specs/issues/1431#issuecomment-542974071.
A validator infrastructure will have to use several eth1 clients behind load balancer for diversity. It can use Infura instead or use a couple of pocket clients double checked with Infura, etc. There is a number of solutions to stabilize a source of eth1 data; it should be up to a user.

From that perspective tracking eth1 block numbers locally is a better approach.

In this case we still have issues with validators delaying eth2 deposit on-boarding. I don't think there's any scenario where the eth1 miners don't have the ability to suppress/delay/re-order transactions to the deposit contract.
Tracking the times that block numbers arrive locally means you need to have your validator (or some specialized eth1 service) online for 8-12hrs before you can actually start to produce blocks. That combined with using #1431 means that proposers are just going to vote junk data until they have an observation time for ~8hrs worth of blocks, starting from ~4hrs ago. If you use timestamps you can start producing valid eth1 data much faster.

There is a number of solutions to stabilize a source of eth1 data; it should be up to a user.

I agree that it should be "up to a user" to determine how they obtain/stabilize their eth1 chain. What I'm trying to do here is establish best practices for when things that are very likely to go wrong (e.g., someones HTTP connection to an eth1 node) do indeed go wrong.
I'm fine if there's no definition of staleness in the honest validator guide, but I do think there should be some advice about what to do if you don't have a sufficient connection to eth1. (e.g., should you produce junk eth1 data or just produce no blocks?).

In this case we still have issues with validators delaying eth2 deposit on-boarding. I don't think there's any scenario where the eth1 miners don't have the ability to suppress/delay/re-order transactions to the deposit contract.

I brought this up with @adlerjohn a few month ago in this issue. Moreover, I discussed more in depth other ways in which validator onboarding can be delayed in this recent ethresearch post.

#1464 is not directly related, but similar.

I don't think there's any scenario where the eth1 miners don't have the ability to suppress/delay/re-order transactions to the deposit contract.

You're right @paulhauner. There is still a room to censor/manipulate deposit transactions and seems like avoiding timestamp manipulation is not giving us much of protection.

This can be closed due to the new eth1 voting scheme :)


Support for custom queryable fields

Currently QueryableTypes class contains a hardcoded list of fields which can be queried. It would be quite helpful to have these defined in a user defined config file.

duplicate of #58

This doesn't appear to me as though it's a duplicate of #58. While #58 resolves the issue of users being able to define queryables it doesn't allow users to specify these queryables by way of a config file or to (ideally) configure the application to support different queryables per collection


Use osrm-backend#prune_distance_search

Splitting this off of https://github.com/Project-OSRM/node-osrm/pull/150. Depends on https://github.com/Project-OSRM/osrm-backend/pull/1921 getting merged.
/cc @freenerd

Obsolete.


Could the comfortably data be got from meter-plus?

Thanks.

not yet. The meter plus data is slightly different than the standard meter, and I just got lucky that my code needed minimal changes to support it. If "comfortably data" is available it is not in the broadcasted data, it would require connecting to the meter plus like the code does to retrieve bot firmware value etc
the documentation available has nothing specific for meter plus yet, only regular meter github.com/OpenWonderLabs/python-host/wiki/Meter-BLE-open-API
cheers


Migrate GitHub Actions

Pull Request Test Coverage Report for Build 1381

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 90.405%

Totals

Change from base Build 1379:
0.0%

Covered Lines:
1206

Relevant Lines:
1334

💛  - Coveralls


METRON-1470: Update jquery to version 3+

I updated jquerry dependency of the project due to security reason.

[X] Is there a JIRA ticket associated with this PR? If not one needs to be created at https://issues.apache.org/jira/browse/METRON-1470.
[X] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[ ] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[ ] Have you included steps to reproduce the behavior or problem that is being changed or addressed?
[ ] Have you included steps or a guide to how the change may be verified and tested manually?
[X] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh

[ ] Have you written or updated unit tests and or integration tests to verify your changes?
[X] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[X] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[X] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:

I ran this up in full dev and tested several different features.  I could not find any regressions.  Thanks @xyztdanid4! +1


Handle trailing line continuation in Layout/LineContinuationLeadingSpace

Previously this would crash with:
NoMethodError: undefined method `length' for nil:NilClass

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Thanks!


Fix wiki-link regexp to match non-Latin characters

Fixes https://github.com/datopian/flowershow/issues/537.
In a nutshell, it's possible to match a letter from any alphabet using Unicode character class escape. According to MDN the feature should work in Node.js 10+:

I've tested the solution on a small vault.
Here's how the package worked with Flowershow prior to this PR:

This is how it works now:

@olayway looks like we can merge this one? 😄


Fix typings for unfold

Summary
The typings for Most.unfold don't match what the code does or the API docs, so I fixed them.

Hey @eddiew, thanks.  Hmmm, yes, the type seems wrong.  I like your idea to introduce an UnfoldValue sum type.  How about this?
type UnfoldValue<S, V> = { done: false, seed: S, value: V } | { done: true, value?: V }

The first variant could use an intersection with the existing SeedValue type--that'd be fine.  It needs to have a done: boolean, so maybe like:
type UnfoldValue<S, V> = { done: false } & SeedValue<S, V> | { done: true, value?: V }

I think using an intersection is a bit harder to read, though.  What do you think?

I thought done was allowed to be undefined if not true, so then it wouldn't be necessary to have the done: false in the first variant. In that case we could do:
type UnfoldValue<S, V> = SeedValue<S, V> | { done: true, value?: V }
But if you'd rather keep the done: false then I agree that the intersection is a little bit confusing, and I like the first version you have better.

Maybe also add transduce to definitions?

Sorry for taking a while to respond!

I thought done was allowed to be undefined if not true

Hmmm, yes, the current docs do indeed read that way, and so does the example.  Ok, let's go with allowing done to be missing or undefined.  Thanks for pointing that out.

@MaxSvargal Let's do that in another PR.  See also: https://github.com/cujojs/most/issues/512 where it's being discussed.

Good catch. I updated the code to require done: true