RoosterTeeth.com support is broken following site update

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2018.04.03. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2018.04.03

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[x] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

youtube-dl : [debug] System config: []

[debug] User config: []

[debug] Custom config: []

[debug] Command-line args: ['--verbose',
'https://roosterteeth.com/episode/rooster-teeth-podcast-2018-486']

[debug] Encodings: locale cp1252, fs mbcs, out cp1252, pref cp1252

[debug] youtube-dl version 2018.04.03

[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.16299

[debug] exe versions: ffmpeg N-86482-gbc40674, ffprobe N-86482-gbc40674

[debug] Proxy map: {}

ERROR: Unable to extract m3u8 URL; 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 "C:\Users\dst\AppData\Roaming\Build
archive\youtube-dl\rg3\tmp_it5pa_f\build\youtube_dl\YoutubeDL.py", line 785,
in extract_info
  File "C:\Users\dst\AppData\Roaming\Build
archive\youtube-dl\rg3\tmp_it5pa_f\build\youtube_dl\extractor\common.py", line
440, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmp_it5pa_f\b
uild\youtube_dl\extractor\roosterteeth.py", line 115, in _real_extract
youtube_dl.utils.ExtractorError: Unable to extract m3u8 URL; 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.

Single video: https://rtv3-roosterteeth.akamaized.net/store/7281d24a2d5af5cba832b5335ced69ea-1e35796e/ts/index.m3u8
Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
Following the upgrade to RoosterTeeth.com, youtube-dl is no longer able to download videos, nor authenticate with the login page.
The m3u8 files have previously been hard to find, but now they are nearly impossible - it seems that the pages are dynamically generated on the client side as the  tag is completely empty, aside from some required

I opened a pull request to use the new API, so downloading public videos works now, but anything that requires you to be logged in fails. I'm trying to find out how to authenticate with the API, but I'm not making much headway.

@ddmgy I Might be able to help the AchieveLand MineCraft Lets Play is currently FIRST and while I haven't had time to determine precisely why, I am currently able to download it.
The steps I used were log in to my account in Safari (obviously I'm using macOS) then once the video loads I right clicked and copied the video URL which is a standard right click option for HTML5 video in safari if I remember correctly. Then I gave that URL without a username or password to youtube-dl and it started downloading using hls , applehttp.
If you need any more information then I can provide that although I will be somewhat busy

I can confirm this, the m3u8 urls don't seem to require authentication to access. However we still face the issue of getting the initial m3u8 file.
After a bit of network analysis, I've found what I believe should allow a username/password combo to access FIRST content.
A POST request to 'https://auth.roosterteeth.com/oauth/token' with the below JSON file returns some parameters.
"client_id":"4338d2b4bdc8db1239360f28e72f0d9ddb1fd01e7a38fbb07b4b1f4ba4564cc5",
"grant_type":"password",
"username":"<<username>>",
"password":"<<password>>",
"scope":"user public"

This returns another json, and "access_token" seems to be most valuable. By calling the api url with the authorization header set to "Bearer <<access_token>>" returns the m3u8 file.
I have no idea what client_id is. It might be related to their various apps (Xbox, Apple TV, iOS, Browser?) I'm sharing it as I presume it isn't unique to my username, as it was set prior to the login.

@Candunc Yeah, that client_id is not unique to your account, I see it in my request headers.
I found that authorization URL earlier and I'm able to log in through youtube-dl now. I'm trying to get the m3u8 URL now, to see if downloading FIRST videos will work. Thanks for the tip about the Authorization header; I haven't done anything with OAuth in years, so it didn't occur to me how to use the access_token.

Wait, is it still broken? I don't understand how the OP (and second post) obtained any of those URLs, but I know that now that Camp Camp is not being uploaded to YouTube anymore, this is happening to me on the newest version (2018.06.14):

$ youtube-dl -F "https://roosterteeth.com/episode/camp-camp-season-3-2"
[RoosterTeeth] camp-camp-season-3-2: Downloading webpage
ERROR: Unable to extract m3u8 URL; 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.

Wait, is it still broken for free videos? I don't understand how the OP (and second post) obtained any of those URLs, but I know that now that Camp Camp is not being uploaded to YouTube anymore, this is happening to me on the newest version (2018.06.14):

If you put the episode you want to download in to this url:

https://svod-be.roosterteeth.com/api/v1/episodes/INPUTHERE/videos

eg:

https://roosterteeth.com/episode/camp-camp-season-3-2

becomes:

https://svod-be.roosterteeth.com/api/v1/episodes/camp-camp-season-3-2/videos

and then from that webpage copy the .m3u8 link, you can feed it in to youtube-dl, and it'll download OK.

For now, a quick and dirty fix could be to run a python equivalent to run this, which gets exactly what we want:
curl  https://svod-be.roosterteeth.com/api/v1/episodes/<<videoID>>/videos | sed 's/"/\n/g' | grep .m3u8
Even if it's not implemented into youtube-dl like this, it's how I'm getting the URLs at the moment.

Has there been an update on this? Even free videos no longer work.

@DuendeInexistente this didn't work for me on a free video:
walkman@WalkmanPC:~/RWBY$ curl https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-1/videos | sed 's/"/\n/g' | grep .m3u8
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   993    0   993    0     0    516      0 --:--:--  0:00:01 --:--:--   516
https://rtv3-video.roosterteeth.com/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8
walkman@WalkmanPC:~/RWBY$ youtube-dl --verbose "https://rtv3-video.roosterteeth.com/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://rtv3-video.roosterteeth.com/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.11.03
[debug] Python version 3.5.2 (CPython) - Linux-4.4.0-17134-Microsoft-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: avconv 2.8.14-0ubuntu<IP_ADDRESS>, avprobe 2.8.14-0ubuntu<IP_ADDRESS>, ffmpeg 2.8.14-0ubuntu<IP_ADDRESS>, ffprobe 2.8.14-0ubuntu<IP_ADDRESS>
[debug] Proxy map: {}
[generic]<PHONE_NUMBER>_index: Requesting header
WARNING: Could not send HEAD request to https://rtv3-video.roosterteeth.com/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8: <urlopen error [Errno -3] Temporary failure in name resolution>
[generic]<PHONE_NUMBER>_index: Downloading webpage
ERROR: Unable to download webpage: <urlopen error [Errno -3] Temporary failure in name resolution> (caused by URLError(gaierror(-3, 'Temporary failure in name resolution'),))
  File "/usr/bin/youtube-dl/youtube_dl/extractor/common.py", line 605, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/usr/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2211, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python3.5/urllib/request.py", line 466, in open
    response = self._open(req, data)
  File "/usr/lib/python3.5/urllib/request.py", line 484, in _open
    '_open', req)
  File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
    result = func(*args)
  File "/usr/bin/youtube-dl/youtube_dl/utils.py", line 1139, in https_open
    req, **kwargs)
  File "/usr/lib/python3.5/urllib/request.py", line 1256, in do_open
    raise URLError(err)

I get the same error when doing it in one line (so no copy-and-paste):
curl https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-1/videos | sed 's/"/\n/g' | grep .m3u8 | youtube-dl -a -

@Walkman100 that URL to m3u8 file works OK for me here. Unfortunately, it can't fetch the subs, no errors in the output but:
video:795292kB audio:21132kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.072632%
I'm not on the last youtube-dl version, so I will update ASAP and report back about the subs.

weirdly enough that url works fine in a browser, I can download it with aria2c, but even on another system it doesn't work...

Thanks for trying to help, but that gives the same playlist url as the one-liner above (although yours can be given the full page url) which gives the same errors
WARNING: Could not send HEAD request to https://rtv3-video.roosterteeth.com/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8: <urlopen error [Errno -3] Temporary failure in name resolution>
ERROR: Unable to download webpage: <urlopen error [Errno -3] Temporary failure in name resolution> (caused by URLError(gaierror(-3, 'Temporary failure in name resolution'),))

I noted above this doesn't work on another system (which is my Raspberry Pi), I tried this on Termux on my Android phone, and it works (same WiFi connection)… so the one-liner above not working on my system has nothing to do with youtube-dl or the script, it's an issue with DNS on my two systems on command-line somehow...

About subtitles download:
The m3u8 file lists the different subtitles as this:
EXTM3U #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="ko",NAME="한국어",AUTOSELECT=NO,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/a452db27-6947-4e35-84d4-b7d9afb2a8fd/ko_manifest.m3u8" #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="pt",NAME="Português",AUTOSELECT=NO,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/c44e51fd-409d-489a-91f1-016aab1eeabe/pt_manifest.m3u8",FORCED=NO #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="de",NAME="Deutsche",AUTOSELECT=NO,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/2e3bc254-a69e-4889-882b-490a8d6e27da/de_manifest.m3u8",FORCED=NO #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="fr",NAME="Français",AUTOSELECT=NO,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/0e09e9b1-05ec-4fd3-b473-3fe672ea2ad1/fr_manifest.m3u8",FORCED=NO #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="es",NAME="Español",AUTOSELECT=NO,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/3ba18c5d-1f54-4f1d-b2fa-5e1c5e97eaca/es_manifest.m3u8",FORCED=NO #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="en",NAME="English",AUTOSELECT=YES,DEFAULT=NO,URI="https://rtv3-video.roosterteeth.com/caption_store/f7ec91c5-0f41-47d5-a7b8-1c786d0c1bf6/en_manifest.m3u8",FORCED=NO
An inside each of those files, there is entries like this:
#EXTM3U #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-VERSION:1 #EXT-X-MEDIA-SEQUENCE:1 #EXT-X-TARGETDURATION:1352 #EXTINF:1352, vtt_es.webvtt #EXT-X-ENDLIST
So, i.e., you can fetch the spanish subtitles if you use the URL of the spanish subs m3u8 file and change the filename for the name inside of the subs m3u8 file:
https://rtv3-video.roosterteeth.com/caption_store/3ba18c5d-1f54-4f1d-b2fa-5e1c5e97eaca/vtt_es.webvtt

Can confirm, using the api trick and slapping the m3u8 link on to youtube-dl does indeed download Rooster Teeth videos. (I don't have a subscription so I can't say anything for those exclusive ones.)
Any update on this problem? It's been almost three months since last comment for both the pull request and issue thread.

When using the API trick I now get a "Missing Key-Pair-Id query parameter or cookie value" when putting the m3u8 url i nthe browser.
I can watch the video in questions without being logged in.

@sasjafor Try clearing cache and cookies. If that doesn't work, wait a day. It happened to me once and that's what I had to do to make it work again.

I got it to work now. So for anyone having the same problem.

Plug the video name in the api, as described above.
Copy the full m3u8 URL, with all the parameters and replace all instances of \u0026 with '&'. This way I could also download the m3u8 file in the browser.
Then I used this command ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i "URL_TO_M3U8_FILE_FROM_2" -c copy video.mp4

I suspect that the crypto parameters might expire, so you probably can't wait too long between doing the API request and then downloading with ffmpeg.
I could not get it to work with youtube-dl as I kept getting a 403 error, but this is a solution until youtube-dl works.

@sasjafor Thanks for this workaround!
I noticed this is only necessary when the link starts with https://rtv3-roosterteeth.akamaized.net/store/.
When it starts with https://rtv2-roosterteeth.akamaized.net/uploads/videos/ you don't even need to copy the entire link, just up to the .m3u8 part.

Has there been any work to upstream a fix?

The steps described by @sasjafor works for me. I wrote a Python 3 script to automate downloading of RWBY Volume 6 videos:
import urllib.request, json
import os

episode = input("Episode: ")
link = "https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-%s/videos" % episode
with urllib.request.urlopen(link) as url:
    data = json.loads(url.read().decode())
    dl = data['data'][0]['attributes']['url']

cmd = 'ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i "%s" -c copy rwby-volume-6-%s.mp4' % (dl, episode)
os.system(cmd)

Forgive my lack of programming knowledge, but I could not get either @sasjafor or @jarrettyeo 's solutions to work.
For @sasjafor , I followed the steps, and typed into command prompt:
"C:\Program Files\Youtube-DL\ffmpeg-20190621-01d8c72-win64-static\bin\ffmpeg.exe" -protocol_whitelist file,http,https,tcp,tls,crypto -i "{"data":[{"_index":"videos-production-en_20190622090728596","type":"video","id":"113692","score":98.830475,"id":113692,"type":"video","uuid":"4cde6796-0a42-4b57-bb3c-dc520042b539","attributes":{"url":"https://rtv3-roosterteeth.akamaized.net/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9ydHYzLXZpZGVvLnJvb3N0ZXJ0ZWV0aC5jb20vc3RvcmUvNzc3ZGNkZmI0MWFjYzJjZWJjNDhhNjlhOTRhYjQ0NjAtZjY3ODViNjMvdHMvMTU0MDU5MDgxNV9pbmRleC5tM3U4IiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNTYxMjc3NDQwfX19XX0%Signature=WURo1N6XtDjfUMBSvS7voRKevSamalW4Z-F5OkcE8eI3w8VN9BXXHZzACxDa2ViWBVEDWQ-ZPPdTGbSTGoswckpSPDtPpX98UZUhBzdOUEEj7DmTNrXXS4f~Nx~riq4PExG~cE0J3OgjoOA7rqQDoCvcvR9rKfHZK6OlRvliruZvljI4~1vYoDYbKTaxXtEhCsufaIcz27JXnZYBrpVpYu6ELLPAHoBX3LTsSgzcVnhhMWhkPSmFo-9qkGC1E3W9KmUW9jn2ch9qPEx61REDwfzcY0aLpBNPX9LE~IlqBPGy0qclEngt~49G13QAM1tMjPXD0P1hA3ve1cRgW~r8mw&Key-Pair-Id=APKAI5CBI4B75GD2U2IQ","content_id":29129,"content_slug":"rwby-volume-6-1","content_uuid":"2742d8e4-6574-4951-bdc4-b5a561bc44de","public_golive_at":"2018-11-03T15:00:00.000Z","sponsor_golive_at":"2018-10-27T14:45:00.000Z","member_golive_at":"2018-11-03T15:00:00.000Z","frame_sizes":null,"media_type":"manifest","bandwidth":null,"embed":false,"is_sponsors_only":false,"image_pattern_url":"https://rtv3-roosterteeth.akamaized.net/","bif_url":"https://rtv3-roosterteeth.akamaized.net/","ad_config":{"nw":"392564","caid":"RT-Episode-2742d8e4-6574-4951-bdc4-b5a561bc44de","afid":"84095505","prof":"392564:otter_desktop_rt","ad_timestamps":[356,847],"preroll":["freewheel"],"midroll":["freewheel"]}},"links":{"self":"/api/v1/episodes/rwby-volume-6-1/videos","content":"/api/v1/episodes/rwby-volume-6-1"},"included":{}}],"page":1,"per_page":1,"total_pages":0,"total_results":1}" -c copy video.mp4
All I get is:
No such file or directory
'Key-Pair-Id' is not recognized as an internal or external command,
operable program or batch file.

For @jarrettyeo I opened up notepad and put in:
import urllib.request, json
import os
episode = input("Episode: ")
link = "https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-%s/videos" % episode
with urllib.request.urlopen(link) as url:
data = json.loads(url.read().decode())
dl = data['data'][0]['attributes']['url']
cmd = '"C:\Program Files\Youtube-DL\ffmpeg-20190621-01d8c72-win64-static\bin\ffmpeg.exe" -protocol_whitelist file,http,https,tcp,tls,crypto -i "%s" -c copy rwby-volume-6-%s.mp4' % (dl, episode)
os.system(cmd)
where "C:\Program Files\Youtube-DL\ffmpeg-20190621-01d8c72-win64-static\bin\ffmpeg.exe" is my ffmpeg location, and saved it as a .py file. Upon opening the file with Python 3.0, it seems to run initially, with a prompt for episode number. However, after typing in a number, the script closes and nothing happens.

@sasjafor realized I was typing it in wrong. Now copied the url starting at the https: part. But I am getting 403 access denied error now.

@Genje I got the 403 error message as well. Only got it to work via my python 3 code. Try to open a terminal and execute the following:
cd /path/to/the/folder/containing/your/script
python name_of_your_file.py

Hey @jarrettyeo thanks for trying to help.
I opened Command Prompt and ran the script like you said. It prompted for an episode number, like so:
C:\Users\Ryan\Documents>RWBY.py
Episode: 1
After pressing Enter I get:
Traceback (most recent call last):
File "C:\Users\Ryan\Documents\RWBY.py", line 6, in
with urllib.request.urlopen(link) as url:
AttributeError: 'addinfourl' object has no attribute 'exit'

@Genje That is strange, I can't replicate your error on my mind. Can you try this instead:
import urllib.request, json
import os

episode = input("Episode: ")
link = "https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-%s/videos" % episode
url = urllib.request.urlopen(link)
data = json.loads(url.read().decode())
dl = data['data'][0]['attributes']['url']

print('dl:', dl)
cmd = 'ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i "%s" -c copy rwby-volume-6-%s.mp4' % (dl, episode)
print('cmd:', cmd)
os.system(cmd)

And then run it like this:
cd /path/to/the/folder/containing/this/new/code
python name_of_your_file.py

Also, can you run this command and let me know the output just to be sure that you are running Python 3:
python -V

It should say Python 3.

@Genje If that still doesn't work, you can run it yourself manually:

Go to https://svod-be.roosterteeth.com/api/v1/episodes/rwby-volume-6-1/videos

You'll see a JSON file like this:
{
  "data": [
    {
      "_index": "videos-production-en_20190623090727471",
      "_type": "video",
      "_id": "113692",
      "_score": 98.8308,
      "id": 113692,
      "type": "video",
      "uuid": "4cde6796-0a42-4b57-bb3c-dc520042b539",
      "attributes": {
        "url": "https://rtv3-roosterteeth.akamaized.net/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9ydHYzLXZpZGVvLnJvb3N0ZXJ0ZWV0aC5jb20vc3RvcmUvNzc3ZGNkZmI0MWFjYzJjZWJjNDhhNjlhOTRhYjQ0NjAtZjY3ODViNjMvdHMvMTU0MDU5MDgxNV9pbmRleC5tM3U4IiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNTYxMzU0MjM0fX19XX0_&Signature=Y4SO2BYkgJ0i69r0ay7b~tPCIfnHSFYULWkpVT8YZo0Etq3o6mlqRtg1RobJegInl-wAsejnS2v7jbSJxG~hhYCXva4dlQYqt7jd39ajNzepoLJWjjzhLkRdYrcdetOsD9eFIZrYWUkZri2RtIuU-y9fJDwq8i63OaENqWfFLngKBZKzyQyFl8vhmbMzl~Pn0bdjCQb-rqMeD1aBjg~0o92UP7eqEslMcgAn2FJURJh2C54WiWPlPquSgbWGAVa0nebyJTiyPF5dyTGT4QlDu9h~ti1CLJ~n9auxp0-sWYohA6cJyoxEuqb76R2Yryg5Zm3CUYn0F2GClPYAaaR~DA__&Key-Pair-Id=APKAI5CBI4B75GD2U2IQ",
...

Copy the link that is immediately after "url":, for example:

"https://rtv3-roosterteeth.akamaized.net/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9ydHYzLXZpZGVvLnJvb3N0ZXJ0ZWV0aC5jb20vc3RvcmUvNzc3ZGNkZmI0MWFjYzJjZWJjNDhhNjlhOTRhYjQ0NjAtZjY3ODViNjMvdHMvMTU0MDU5MDgxNV9pbmRleC5tM3U4IiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNTYxMzU0MjM0fX19XX0_&Signature=Y4SO2BYkgJ0i69r0ay7b~tPCIfnHSFYULWkpVT8YZo0Etq3o6mlqRtg1RobJegInl-wAsejnS2v7jbSJxG~hhYCXva4dlQYqt7jd39ajNzepoLJWjjzhLkRdYrcdetOsD9eFIZrYWUkZri2RtIuU-y9fJDwq8i63OaENqWfFLngKBZKzyQyFl8vhmbMzl~Pn0bdjCQb-rqMeD1aBjg~0o92UP7eqEslMcgAn2FJURJh2C54WiWPlPquSgbWGAVa0nebyJTiyPF5dyTGT4QlDu9h~ti1CLJ~n9auxp0-sWYohA6cJyoxEuqb76R2Yryg5Zm3CUYn0F2GClPYAaaR~DA__&Key-Pair-Id=APKAI5CBI4B75GD2U2IQ"

Open your terminal and run the following code:

ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i your_link_copied_from_step_2_here_with_quotes -c copy name_of_your_video.mp4

For example:
ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i "https://rtv3-roosterteeth.akamaized.net/store/777dcdfb41acc2cebc48a69a94ab4460-f6785b63/ts/1540590815_index.m3u8?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9ydHYzLXZpZGVvLnJvb3N0ZXJ0ZWV0aC5jb20vc3RvcmUvNzc3ZGNkZmI0MWFjYzJjZWJjNDhhNjlhOTRhYjQ0NjAtZjY3ODViNjMvdHMvMTU0MDU5MDgxNV9pbmRleC5tM3U4IiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNTYxMzU0MjM0fX19XX0_&Signature=Y4SO2BYkgJ0i69r0ay7b~tPCIfnHSFYULWkpVT8YZo0Etq3o6mlqRtg1RobJegInl-wAsejnS2v7jbSJxG~hhYCXva4dlQYqt7jd39ajNzepoLJWjjzhLkRdYrcdetOsD9eFIZrYWUkZri2RtIuU-y9fJDwq8i63OaENqWfFLngKBZKzyQyFl8vhmbMzl~Pn0bdjCQb-rqMeD1aBjg~0o92UP7eqEslMcgAn2FJURJh2C54WiWPlPquSgbWGAVa0nebyJTiyPF5dyTGT4QlDu9h~ti1CLJ~n9auxp0-sWYohA6cJyoxEuqb76R2Yryg5Zm3CUYn0F2GClPYAaaR~DA__&Key-Pair-Id=APKAI5CBI4B75GD2U2IQ" -c copy rwby-volume-6-1.mp4

Yep was using Python 3. Couldn't get either way to work, but thanks for taking your time to try and help me. I ended up just deciding to spend half a day recording the episodes manually from my screen using OBS. Took a while but I have have the episodes now.

I know this may get irritating, but are there any updates/progress on this issue? We're inching towards a 2 year lifespan for this, and it's still quite a hassle to do the copy-paste method.

@thegreatesminer It looks like a change was pushed a month ago, have you tried updating your version?

@ipat8 Well I'll be damned. Updated to 2019.09.01 and it works flawlessly.
Thanks!

Getting HTTP Error 404: Not Found (caused by HTTPError()) etc when trying to download a video that's first-exclusive, non-first work perfectly.

@thegreatestminer Have you tried First-exclusive shows? Still doesn't work for me. Command I'm using is - "youtube-dl -u -p https://roosterteeth.com/watch/camp-camp-season-4-15" - with username and password.

First exclusive shows are broken as c72dc20d099bbe1dc4ede83e8f94a7bc42d81532 only extracts free episodes. It needs to be modified to support authentication tokens like #16105 does. @remitamine I can give you a valid first login to test with if you are willing to write a patch.

I've just created a pull request with a working FIRST only video downloader. #22689 I've tested it with a few FIRST videos and it seems to work, please try it with any others and tell me if you have any problems.

Seems to have same problem as before, FIRST videos aren't working. Updated youtube-dl to latest version.

I've just created a pull request with a working FIRST only video downloader. #22689 I've tested it with a few FIRST videos and it seems to work, please try it with any others and tell me if you have any problems.

Seems to have same problem as before, FIRST videos aren't working. Updated youtube-dl to latest version.

@Matt14451 Did you specifically download the Version from my pull request? The main youtube-dl doesn't have my fixes until the pull request is approved and merged.

@RichardHancock does your PR support downloading subtitles too? If so, I will consider getting a subscription and trying.

@RichardHancock I downloaded and built yours and I get a 404 page not found error.
URL Used: https://roosterteeth.com/watch/rwby-volume-7-1
Here is the output.
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-u', 'PRIVATE', '-p', 'PRIVATE', 'https://roosterteeth.com/watch/rwby-volume-7-1', '--verbo se']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2018.09.26
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362
[debug] exe versions: ffmpeg 4.0, ffprobe 4.0
[debug] Proxy map: {}
[generic] rwby-volume-7-1: Requesting header
WARNING: Falling back on generic information extractor.
[generic] rwby-volume-7-1: Downloading webpage
[generic] rwby-volume-7-1: Extracting information
[generic] rwby-volume-7-1: Requesting header
WARNING: Could not send HEAD request to https://roosterteeth.com/embed/rwby-volume-7-1: HTTP Error 404: Not Found [generic] rwby-volume-7-1: Downloading webpage ERROR: Unable to download webpage: HTTP Error 404: Not Found (caused by HTTPError()); 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.   File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpcaq35cl9\build\youtube_dl\extractor\common.py", lin
e 604, in _request_webpage   File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpcaq35cl9\build\youtube_dl\YoutubeDL.py", line 2211,
 in urlopen
  File "C:\Python\Python34\lib\urllib\request.py", line 470, in open
  File "C:\Python\Python34\lib\urllib\request.py", line 580, in http_response
  File "C:\Python\Python34\lib\urllib\request.py", line 508, in error
  File "C:\Python\Python34\lib\urllib\request.py", line 442, in _call_chain
  File "C:\Python\Python34\lib\urllib\request.py", line 588, in http_error_default

Here is the output from a Ubuntu system, which seems to at least use the new extractor, but has the same issue.
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'https://roosterteeth.com/watch/rwby-volume-7-1', u'--username', 'PRIVATE', u'--password', u'PRIVATE', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.09.28
[debug] Python version 2.7.15+ (CPython) - Linux-4.4.0-18362-Microsoft-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: none
[debug] Proxy map: {}
[RoosterTeeth] Downloading login page
[RoosterTeeth] Logging in
ERROR: Unable to download webpage: HTTP Error 404: Not Found (caused by HTTPError()); 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.
File "./youtube-dl/youtube_dl/extractor/common.py", line 627, in _request_webpage     return self._downloader.urlopen(url_or_request)
File "./youtube-dl/youtube_dl/YoutubeDL.py", line 2237, in urlopen     return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python2.7/urllib2.py", line 435, in open     response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 548, in http_response     'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 473, in error     return self._call_chain(*args)
 File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain     result = func(*args)
 File "/usr/lib/python2.7/urllib2.py", line 556, in http_error_default     raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)

@madmalkav Sorry I don't believe it does, I'll try and have a look into it.
@ipat8 I've just tested that video and it downloads fine for me, looking at your log I believe you are not actually using my version as mine is based on 2019.09.28 and yours seems to be older.
Ah I see you've just posted an update with the correct version number, not sure what the problem is then. Heres my log for comparison:
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-u', u'PRIVATE', u'-p', u'PRIVATE', u'--verbose',  u'https://roosterteeth.com/watch/rwby-volume-7-1']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2019.09.28
[debug] Python version 2.7.15 (CPython) - Windows-10-10.0.18362
[debug] exe versions: ffmpeg N-91634-gc2eec1762d, ffprobe N-91634-gc2eec1762d
[debug] Proxy map: {}
[RoosterTeeth] Logging in
[RoosterTeeth] rwby-volume-7-1: Downloading video JSON metadata
[RoosterTeeth] rwby-volume-7-1: Downloading m3u8 information
[RoosterTeeth] rwby-volume-7-1: Downloading episode JSON metadata
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on u'https://rtv3- roosterteeth.akamaized.net/store/cc9b9ed69991bb0cf591172acec89a19-341d0c7d/ts/341d0c7d-hls_1080p-store-cc9b9ed69991bb0cf591172acec89a19.m3u8'
[download] The Greatest Kingdom-35563.mp4 has already been downloaded
[download] 100% of 644.80MiB
[debug] ffmpeg command line: ffprobe -show_streams "file:The Greatest Kingdom-35563.mp4"
[ffmpeg] Fixing malformed AAC bitstream in "The Greatest Kingdom-35563.mp4"
[debug] ffmpeg command line: ffmpeg -y -loglevel "repeat+info" -i "file:The Greatest Kingdom-35563.mp4" -c copy -f mp4 "-bsf:a" aac_adtstoasc "file:The Greatest Kingdom-35563.temp.mp4"

Could you provide your binary? I confirmed that I built the one from your source. Not sure on what's wrong with my build.

@ipat8 I'm not building the binary just running this from the top level directory of the repo:
python.exe youtube_dl\__main__.py -u REDACTED -p REDACTED --verbose  https://roosterteeth.com/watch/rwby-volume-7-1
I've always had trouble building the binary myself for youtube-dl (weird build system configuration issues) and this method is a lot quicker for testing.

[RoosterTeeth] Downloading login page

@ipat8, it looks like you are not using RichardHancock's version. I'll admit I haven't tried building an exe from source, but that log line indicates you are using the wrong version. Did you git checkout patch-1? I made that mistake when verifying the pull request.

Tried again, same issue. I may just have to wait for the code merge because I can not get this to work. I've tried with and without a VPN, tried multiple different OS/ Versions. This was cloned directly from your repo.
C:\Users\sentinel\Documents\GitLab\youtube-dl\youtube_dl>python __main__.py -u PRIVATE -p PRIVATE https://roosterteeth.com/watch/rwby-volume-7-1 --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-u', 'PRIVATE', '-p', 'PRIVATE', 'https://roosterteeth.com/watch/rwby-volume-7-1', '--verbose']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2019.09.28
[debug] Git HEAD: c317b6163
[debug] Python version 3.7.5 (CPython) - Windows-10-10.0.18362-SP0
[debug] exe versions: ffmpeg 4.0, ffprobe 4.0
[debug] Proxy map: {}
[RoosterTeeth] Downloading login page
[RoosterTeeth] Logging in
ERROR: Unable to download webpage: HTTP Error 404: Not Found (caused by <HTTPError 404: 'Not Found'>); 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.
  File "C:\Users\sentinel\Documents\GitLab\youtube-dl\youtube_dl\extractor\common.py", line 627, in _request_webpage     return self._downloader.urlopen(url_or_request)
  File "C:\Users\sentinel\Documents\GitLab\youtube-dl\youtube_dl\YoutubeDL.py", line 2237, in urlopen     return self._opener.open(req, timeout=self._socket_timeout)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0\lib\urllib\request.py", line 531, in open     response = meth(req, response)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0\lib\urllib\request.py", line 641, in http_response     'http', request, response, code, msg, hdrs)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0\lib\urllib\request.py", line 569, in error     return self._call_chain(*args)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0\lib\urllib\request.py", line 503, in _call_chain     result = func(*args)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0\lib\urllib\request.py", line 649, in http_error_default     raise HTTPError(req.full_url, code, msg, hdrs, fp)

@ipat8 That login 404 error is the problem my commit should fix. Can you manually check the youtube_dl/extractor/rooster teeth.py and make sure it matches this: https://github.com/ytdl-org/youtube-dl/blob/3e738a38fd077f4fe0e8ad4be95a3889fc6cdfa0/youtube_dl/extractor/roosterteeth.py if not just download the file and replace the one you have. Otherwise I have no idea.

I have no idea why that worked, but it did. I cloned your repo directly through github desktop. Not sure what the issue was.

@madmalkav I have got subtitles working, I don't want to add them to my current pull request as it will probably delay it getting merged. I plan on doing a separate pull request after this one is merged to add show and season page support and any other improvements I can make. I can provide the subtitle code some other way in the meantime if wanted, It's just a little rough and needs some polish but works on all videos I've tried so far.

I think your planning is good, I will wait to that future pull request to make an account on RT and test.


What about the Falcor cache on the server ?

How do I cache the returns of my query (server side) so that the next client don't hit the DB ?

Just request it using the Model. The Model will cache it internally.

How to you access the Model on the server side (in the router for example... ) ?

+1

var falcor = require("falcor");
var model = new falcor.Model();

Rereading this and it looks like I misunderstood the question. Caching the results of your server side APIs is typically best handled by a service layer decorator.
Here's an example of a cache function you can run on your service that will automatically cache the results: https://github.com/Netflix/falcor-router-demo/blob/master/cache.js
If you run this Cache decorator function on your service function, subsequent calls to the same function for the same ID will not trigger a call to the underlying service.

@jhusain @michaelbpaulson why using a server side falcor model for caching db results is not a good idea? For example, client side model has httpDataSource which talks to a router which redirects request that needs caching to the server side model and server side model does all the querying.

It would be very nice, if that worked

We are ok with server side models.  They are affective for batching/caching/ and ID optimization.  If you have a user service, its best to use a server model in case of concurrent requests for data.  This way batching will prevent multiple round trips.  With sequential requests for like data, it can also respond without making a round trip request.
So we support server side models.

@michaelbpaulson How do you solve the problem of serverside model returning json? I mean clientRouter (on server) needs to return pathValues, but it receives json from serverModel. Currently I have written a custom function, which parses json to pathValues. Is it the right approach?


Mkfifo is failing with "Operation not supported" when files are on windows share

When you try starting ios simulator on Mac, but the app that will be loaded in the simulator is on Windows share (or any other place where mkfifo cannot be executed), the code is failing with error:
mkfifo: <appPath>/platforms/ios/build/emulator/.<appname>.log: Operation not supported

The problem is that mkfifo is not supported at all on Windows share and cannot create the file there.
Instead of writing the file in the <appPath>/platforms/ios/build/emulator/, we should create it in the /tmp folder.

Workaround:
tns emulate ios --justlaunch

Related: https://github.com/NativeScript/nativescript-cli/issues/1058


[BUG] New Compose Refactor causes error on first start

Checklist / 检查清单

[X] No one has submitted a similar or identical bug report before. / 之前没有人提交过类似或相同的 bug report。
[X] I'm using the latest version of Easter Eggs. / 我正在使用 Easter Eggs 的最新版本。

Easter Eggs version / Easter Eggs 版本
2.2.2
Bug description / Bug 描述

Expected behavior / 预期行为
An Button to close should be available
Actual behavior / 实际行为
No close icon is available
Steps to reproduce / 复现步骤
Uninstall and reinstall the app, than open it
UI / OS
Emui 12
Android Version / Android 版本
10
Additional info / 额外信息
No response

This is caused by the length of the words, which I did not consider perfectly.
Switching to other languages can temporarily solve it.

Now it's working fine.


Unable to get data for tutoriel "Introduction to modeling your data"

Hello,
In this tutoriel https://docs.microsoft.com/en-us/learn/modules/model-data-power-bi/1-overview-power-bi the first video says "I'm using the datas I've used before", and there's really no clue about where to find those datas.
Could you help me ?

It looks like the source is coming from an Access Database than can be found here : https://github.com/MicrosoftLearning/Analyzing-Visualizing-Data-PowerBI/tree/master/Lab1

Hi, @Jaggana -- thanks for asking! I've assigned your question to the author to follow up.

@Jaggana, I added correct link to sample Access db for this module. Thank you.

Just merged to Master.
#please-close @kfollis

Thanks, @heyrob !


Custom filter operators for queries

This would fix #64 . Currently the frontend works(although it needs set defaults, and to prevent people from choosing operators where it doesn't make sense, e.g. using <= on strings).
The backend I don't think works yet, I might be misunderstanding how q.filter works. @mmcauliffe  could you take a look at this?

@mmcauliffe Is there any way to check if a property accepts string or numerical input?

In the JS?  There's propertyTypes (https://github.com/MontrealCorpusTools/polyglot-server/blob/master/pgdb/static/pgdb/query/query.js#L143), which will have the value of '' for strings and 0 for numerical properties.

Wow!

could you update -- what's going on with this PR?

So, I think it makes sense to merge this in now, with only the autocomplete and not the 'in/not in' checklist just because I don't think there's time for me to finish that aspect of the PR before leaving. Otherwise the autocomplete+custom filters should work. I also think it makes sense to merge it in now before the query model/page get too wildly different.

OK, great.  @mmcauliffe ?


Rewrite the data access using a pointer instead of popping from array

I noticed the parser pops data from the array, effectively consuming it. This blocks #9 and in turn #8.
I suggest rewriting it to a bit-container with random-access and a walking 'current pointer'.
Here's my implementation in Java that you should be able to cannibalize.
public final class BitContainer {
	private final byte[] buffer;
	private final int    bitCapacity;

	private int pointer       = 0;
	private int remainingBits = 8; // Always in the range [1, 8]

	private BitContainer(byte[] buffer, int bitCapacity) {
		this.buffer = requireNonNull(buffer, "buffer");
		this.bitCapacity = bitCapacity;
	}

	public static BitContainer allocate(int bitCapacity) {
		requireAtLeast(1, bitCapacity, "bitCapacity");
		int    capacity = (bitCapacity + 7) / 8;
		byte[] buffer   = new byte[capacity];
		return new BitContainer(buffer, bitCapacity);
	}

	public int bitCapacity()    { return bitCapacity; }

	public int capacity()       { return (bitCapacity + 7) / 8; }

	private int remainingBits() { return bitCapacity - (pointer - 1) * 8 + remainingBits; }

	public void setPointer(int bitPosition) {
		pointer = bitPosition / 8;
		remainingBits = 8 - bitPosition & 7;
	}

	public byte[] getArray(int numBits) {
		requireThat((numBits & 7) == 0, "numBits not an integral number of bytes: " + numBits);
		if (numBits > remainingBits())
			throw new IndexOutOfBoundsException(numBits + " > " + remainingBits());

		byte[] array = new byte[numBits / 8];

		// Use more efficient method for byte-aligned bytes
		if (remainingBits == 0) {
			for (int i = 0; i < array.length; i++)
				array[i] = buffer[pointer++];
		} else {
			for (int i = 0; i < array.length; i++)
				array[i] = (byte)getBits(8);
		}

		return array;
	}

	public void putArray(byte[] array) {
		requireNonNull(array, "array");
		if (array.length * 8 > remainingBits())
			throw new IndexOutOfBoundsException(array.length * 8 + " > " + remainingBits());

		// Use more efficient method for byte-aligned bytes
		if (remainingBits == 0) {
			for (byte element : array)
				buffer[pointer++] = element;
		} else {
			for (byte element : array)
				putBits(8, element);
		}
	}

	public int getBits(int numBits) {
		requireRange(1, 32, numBits, "numBits");
		if (numBits > remainingBits())
			throw new IndexOutOfBoundsException(numBits + " > " + remainingBits());

		if (numBits < remainingBits) {
			// Get middle bits of this byte and don't advance byte pointer
			byte value  = buffer[pointer];
			int  result = extractBits(value, remainingBits - numBits, numBits);
			remainingBits -= numBits;
			return result;
		}

		int result;
		if (remainingBits != 0) {
			// Get all remaining bits of this byte and advance byte pointer
			byte value = buffer[pointer++];
			result = extractBits(value, 0, remainingBits);
			numBits -= remainingBits;
		} else {
			result = 0;
		}

		// Get middle bytes and advance byte pointer
		while (numBits >= 8) {
			result <<= 8;
			result |= buffer[pointer++] & 0xFF;
			numBits -= 8;
		}

		if (numBits > 0) {
			// Get remaining bits of this byte and don't advance byte pointer
			byte value = buffer[pointer];
			result <<= numBits;
			result |= extractBits(value, 8 - numBits, numBits);
			remainingBits = 8 - numBits;
		} else {
			remainingBits = 0;
		}

		return result;
	}

	public void putBits(int numBits, int bits) {
		requireRange(1, 32, numBits, "numBits");
		if (numBits > remainingBits())
			throw new IndexOutOfBoundsException(numBits + " > " + remainingBits());

		if (numBits < remainingBits) {
			// Put all bits in the middle of this byte and don't advance byte pointer
			byte value  = buffer[pointer];
			byte result = injectBits(bits, value, remainingBits - numBits, numBits);
			buffer[pointer] = result;
			remainingBits -= numBits;
			return;
		}

		if (remainingBits != 0) {
			// Fill remaining bits of this byte and advance byte pointer
			byte value    = buffer[pointer];
			int  highBits = extractBits(bits, numBits - remainingBits, remainingBits);
			byte result   = injectBits(highBits, value, 0, remainingBits);
			numBits -= remainingBits;
			buffer[pointer++] = result;
		}

		// Fill middle bytes and advance byte pointer
		while (numBits >= 8) {
			int value = extractBits(bits, numBits - 8, 8);
			buffer[pointer++] = (byte)value;
			numBits -= 8;
		}

		if (numBits > 0) {
			// Put remaining bits in this byte and don't advance byte pointer
			byte value   = buffer[pointer];
			int  lowBits = extractBits(bits, 0, numBits);
			byte result  = injectBits(lowBits, value, 8 - numBits, numBits);
			buffer[pointer] = result;
			remainingBits = 8 - numBits;
		} else {
			remainingBits = 0;
		}
	}

	private static int extractBits(byte value, int firstBit, int numBits) {
		int mask = (1 << numBits) - 1;
		return value >> firstBit & mask;
	}

	private static int extractBits(int value, int firstBit, int numBits) {
		int mask = (1 << numBits) - 1;
		return value >> firstBit & mask;
	}

	private static byte injectBits(int bits, byte value, int firstBit, int numBits) {
		int mask = ((1 << numBits) - 1) << firstBit;
		return (byte)((value & ~mask) | (bits << firstBit & mask));
	}
}

Yes, I'll split out all the helpers to a proper bitbuffer and then put something like this on top.

Bug fixed in setPointer(). And remember in Java / doesn't promote a type to float, it truncates.

Good thing I posted it here; I keep finding previously unnoticed bugs. (first post updated)


validate and generate single feedstock catalog

@jbusecke, this is my first attempt at allowing users to validate and generate catalog for a single feedstock. previously, we were validating the contents of catalog.yaml and meta.yaml. however, this validation didn't check the stores, etc. this addition will make it easy to catch issues at the feedstock level without needing to wait for the PR submission in leap-stc/data-management
another enhancement is a cron job that runs once a day to validate and detect any data access issues/failures that may arise due to upstream (e.g. OSN) failures.

towards https://github.com/leap-stc/data-management/issues/162

This is amazing. Thanks for pushing on this @andersy005. Please let me know if/when I should review.


Fix keyword warnings

I think things in call_proc can be improved. But I wanted to make it work first.

@flash-gordon Sorry for leaving this pending for so long! Thanks for fixing the warnings, I'm merging this in now. If you have any further thoughts, happy to discuss!


ALDS should be off by default for the demo app

With default on, the demo app would wait until the Arcs Explorer
at the host connects to the ALDS since the Arcs runtime at the
device blocks waiting for the ready signal of the Arcs Explorer
at its initialization path by design of explore-proxy parameter.
The android property "debug.arcs.runtime.use_alds" has been ready
in place to switch the ALDS proxy dynamically, so we can deem
ALDS on/off as an option as of now.

Thanks for the review.


A project provides ROS2 implementation and running enviroment (docker image).

Hi everyone, since the ros2 branch is some bug and no more development in this repo, I make a ros2 project with simplified topics version LIO-SAM. Here is the repo: https://github.com/zeal-up/Simple-LIO-SAM

Hi @zeal-up, can you describe the bug you found on the ros2 branch? If you have a fix already, then please send it as PR. Regarding development in this repo: This ros2 branch is meant to stay similar/close to the original ros1 version.


URL/data redirects to localhost

Description:
As a developer, I want the urls to redirect correctly on PDXFinder resource to ensure smooth use of the resource.
Jira ticket PDXI-354
Acceptance criteria:

[ ] url http://www.pdxfinder.org/data redirects to http://www.pdxfinder.org/data/search, not to localhost:8080/data

I pushed a fix that unfortunately didn't solve the problem.

Solution is not clear at the moment

Needs to be discussed with systems @CsabaHalmagyi

This is currently working in beta but the same solution is not working in production.
This will not be a problem when WordPress is removed.
Will pause work on this for now.
Additional good outcome of working on this ticket - documentation of Apache configurations: https://www.ebi.ac.uk/seqdb/confluence/display/MouseInformatics/Apache+Webserver+configs

This is currently working in beta but the same solution is not working in production.
This will not be a problem when WordPress is removed.
Will pause work on this for now.
Additional good outcome of working on this ticket - documentation of Apache configurations: https://www.ebi.ac.uk/seqdb/confluence/display/MouseInformatics/Apache+Webserver+configs

This is currently working in beta but the same solution is not working in production.
This will not be a problem when WordPress is removed.
Will pause work on this for now.
Additional good outcome of working on this ticket - documentation of Apache configurations: https://www.ebi.ac.uk/seqdb/confluence/display/MouseInformatics/Apache+Webserver+configs

This is currently working in beta but the same solution is not working in production.
This will not be a problem when WordPress is removed.
Will pause work on this for now.
Additional good outcome of working on this ticket - documentation of Apache configurations: https://www.ebi.ac.uk/seqdb/confluence/display/MouseInformatics/Apache+Webserver+configs

The new tech stack solves this problem. Closing.


bump kubevirtci

What this PR does / why we need it:
test kubevirt/kubevirtci#507
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/test pull-kubevirt-e2e-kind-1.17-sriov

/test all

/test pull-kubevirt-e2e-kind-1.17-sriov

/close
Moved to #5238


In the freecodecamp challenge Map Ordered list everything is fine but the bug says"ol element has a closing tag" the closing tag is also specified , how can i fix it

Challenge Create an Ordered List has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

Click here for cat photos.

Things cats love:

cat nip

laser pointers

lasagna

Top 3 things cats hate:

Garfield

Sylvester

the problem is you miss type the  tag you wrote it  this way  make sure you write it correctly (all lowercase)

Thanks @YasinYA. @varadha85 Please use the Help chat room in future for getting challenge related help. Happy Coding!


Improvement/yocto

btw i see it approved, but i can't merge it, as i don't have write access

Yes, as I said in the email: I was going to wait until you report build success before merging it :)

Yes, as I said in the email: I was going to wait until you report build success before merging it :)

it passed!


add sodi

I agree to not ping anybody on Discord/Twitter/email about this pull request. Instead I will inquire by posting a new comment in the pull request if needed.

PRs are reviewed in bulk and and can take up to two weeks to be merged.
Please provide the following information for your token.
Please include change to the src/tokens/solana.tokenlist.json file in the PR.
DON'T modify any other token on the list.
At minimum each entry should have

Token Address:
Token Name:
Token Symbol:
Logo: (logo should be uploaded under assets/mainnet//*.<png/svg>)
Link to the official homepage of token:
Coingecko ID if available (https://www.coingecko.com/api/documentations/v3#/coins/get_coins__id_):

@rmshea
hello sir .why sodi has merged in solana ecosystem but not yet merged in solana labs?
https://github.com/solana-labs/ecosystem/pull/230
https://solana.com/ecosystem/sodi


info regarding update interval

hey can you explain to me the update time interval which you have set in the module
updateInterval: 30 * 60 * 1000,

The module is reloaded at this interval. The value is in milliseconds - 30 * 60 * 1000 is 30 minutes. As far as I understand it so far, there should be no reason to change the value for this module.

ok thanks


bug: text on bg color unreadable

Did you check docs and existing issues?

[X] I have read all the tokyonight.nvim docs
[X] I have searched the existing issues of tokyonight.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
v0.10.0-dev-1811+gc95b9a32f
Operating system/version
Ubuntu 22.04
Describe the bug

I could verify that this problem occurs with or without tmux, on both Terminal and Alacritty.
I have true colors in the terminal.
I haven't modified the colorscheme config
return {
  "craftzdog/solarized-osaka.nvim",
  lazy = true,
  priority = 1000,
  opts = function()
    return {
      transparent = true,
    }
  end,
}

Steps To Reproduce
Install LazyVim with your beautiful video.
Expected Behavior
The text-on-bg should be readable
Repro
No response

What is the highlight group for the tokens?
You can run :Inspect on one of them.

I can't put my cursor directly on these strings, they are types generated by a typescript plugin. On the preceding character, I get:
Treesitter
  - @variable.tsx links to @variable tsx
  - @parameter.tsx links to @parameter tsx

Semantic Tokens
  - @lsp.type.parameter.typescriptreact links to @parameter priority: 125
  - @lsp.mod.declaration.typescriptreact links to @lsp priority: 126
  - @lsp.typemod.parameter.declaration.typescriptreact links to @lsp priority: 127

Extmarks
  - IlluminatedWordRead illuminate.highlight

I need to reproduce it.
what is the typescript plugin and configuration

Sounds difficult to reproduce...
the lazy config has
{ import = "lazyvim.plugins.extras.lang.typescript" },

And I added typescript-language-server in the mason config in lsp.lua

関係ない話ですが、来週に一ヶ月大阪に行きますので、もし良かったら松山さんと会いたいです。LazyVimのビデオ設定は凄かったのでお礼でビールを一杯払ってあげたい。時間見つけれそうなら連絡先を教えて下さったら嬉しいです！

I found the rule  by looking in :highlight

LspInlayHintxxx guifg=#576d74 guibg=#268bd3

ah ok I wasn't on nvim 0.10 yet. will try it!
お誘いありがとうございます。いきなり個人的に会うのはお断りしています。大阪の旅を楽しんでください！

ok updated: https://github.com/craftzdog/solarized-osaka.nvim/commit/75e7315e5d7f76aa7e68f23cff0f5a7f1d09f2e7 https://github.com/craftzdog/solarized-osaka.nvim/commit/83b7026ac7a4e185d4ecbe99926fd94b5735e2ea
thanks for reporting


Incorrect IMR index for vTPM eventlog replay

When running cc_event_log_cli.py, the IMR index is not correct in the replay part. It needs to be enhanced.
See below output.
main INFO     Total 104 of event logs fetched.
main INFO     Replayed result of collected event logs:
main INFO     IMR[-1]:
main INFO          592b3f42ec556a9c093f201124cc7313fdaa4ce40ae1602e14d51f18fbfc480d6a1e196d1c52ad919328410272dc7222
main INFO     IMR[6]:
main INFO          8e6b00184b2cb85d87821055218d1841404636dfa6102e5a8b5e6aaf485f4f88f1fed11d871ac13b25c84debda5f673b
main INFO     IMR[0]:
main INFO          5641d8048aa75f0d456dfd75e7e5bf519abffcac79487905c5b7a57ca206debdd91e8d8df805e983728bbb6e1a7a49f8
main INFO     IMR[3]:
main INFO          6cbd1894a1605e76463a6cf5b033614578f6813ca950a64bf16d5af9e3d6ef49c1bc5c523190fe6330d5119b21156111
main INFO     IMR[1]:
main INFO          518923b0f955d08da077c96aaba522b9decede61c599cea6c41889cfbea4ae4d50529d96fe4d1afdafb65e7f95bf23c4
main INFO     IMR[2]:
main INFO          518923b0f955d08da077c96aaba522b9decede61c599cea6c41889cfbea4ae4d50529d96fe4d1afdafb65e7f95bf23c4
main INFO     IMR[4]:
main INFO          92be0744f3973f11ad487c4427a65f92c1fbbab5a1fa2d9bf58fcaf5b2cd4300d7aad862e56aa5a03e74e4e361711714
main INFO     IMR[5]:
main INFO          518923b0f955d08da077c96aaba522b9decede61c599cea6c41889cfbea4ae4d50529d96fe4d1afdafb65e7f95bf23c4
main INFO     IMR[13]:
main INFO          937437d07298010015f4598395c9f8dc202ef36e0be3897bba89874bf612b5da092beadfe37f79714a60193819e384ad
main INFO     IMR[8]:
main INFO          85ac01b59fe1c87c75c3f6f30b55c315d796d977af89cdb04ae7768b3892254eaeb53f7dcab9144997281e51f6502afd
main INFO     IMR[7]:
main INFO          135cc970dea4bfb076efaa3e9e91611da2a44aea4f981a5eac6996f988a04234a0bf300f6e79d9614e6dab83a056844a

@ruomengh After checking the code, i found it is caused by the code that helps parsing the event logs. In the previous implementation, we assume the event logs are TDX event logs saved in CCEL. And in CCEL implementation, cc measurement register is used as the value for PCRIndex. But we could see from the specification that, cc measurement register is not equal to TDX measurement register and they two have the mapping like this:

That means the event logs for RTMR[0] actually using ‘1’ as the PCRIndex value within the event log.
For better understanding, the parsing code do a minus one operation for the PCRIndex value when treating the event logs. Thus, causing the PCRIndex value for TPM event logs becomes invalid.
To solve this, we could remove that minus one operation to make TPM event logs work perfectly. But the TDX event logs will become a little bit confusing, as the replay result will become:
IMR[1] -> holding the replay result for RTMR[0]
IMR[2] -> holding the replay result for RTMR[1]
IMR[3] -> holding the replay result for RTMR[2]
IMR[4] -> holding the replay result for RTMR[3]
Does it make sense?

@Ruoyu-y Thanks for finding the root cause. If the IMR index is not equal to RTMR index, such as IMR 1 -> RTMR[0], it's better to make sure the callers are ware of the index offset.


perf: Optimize IfExpr by delegating to CaseExpr

Which issue does this PR close?

Closes https://github.com/apache/datafusion-comet/issues/680
Rationale for this change

Rather than maintain a custom IfExpr, we can just delegate to CaseExpr and benefit from recent optimization work there.

What changes are included in this PR?

IfExpr now is just a wrapper for CaseExpr
I moved the cast benchmarks into the spark-expr crate

How are these changes tested?

Note that there is a small regression in the expr or expr case, so I think we can optimize this upstream. I will file an issue against DataFusion for this.


Build s390x image via buildx cross-platform

Leverage docker buildx cross-platform to build s390x image.

[ ] builder
[ ] base
[ ] kepler

this could be a cool tool to leverage for this work https://github.com/docker/build-push-action
Example https://github.com/migtools/gitops-primer/blob/main/.github/workflows/validate-primer.yaml#L361-L368

I noticed package nvidia-driver-NVML-515.48.07-1.el8.x86_64.rpm here in base image https://github.com/sustainable-computing-io/kepler/blob/main/build/Dockerfile.base#L6, looks only has x86 arch supported?

@mengfj @SamYuan1990 @jichenjc I don't think LinuxONE has nvidia card installed, so it's reasonable that package nvidia-driver-NVML does not support s390x. Is this package key to kepler?

@mengfj @SamYuan1990 @jichenjc I don't think LinuxONE has nvidia card installed, so it's reasonable that package nvidia-driver-NVML does not support s390x. Is this package key to kepler?

Personally,  I suppose we need to have a MVP on s390x.
Specifically for automation point of view, the MVP is to build s390x based golang binary and running it in a s390x based fedora image?
As far as I know:

there lots of golang build tag in current build, sooner or later we should have one for s390x. (as so far kepler build logic is basing on build tag for different hardware.)
then for docker image, one thing hard is for base image, others is looking for different libs, as nvidia one found today.
we can use matric for x86/arm/s390x to control the build.
ideally, the make script will look like either

make ${arch}

or
# in make file
if $uname ... -eq s390x
GO_BUILD_TAGS = $GO_BUILD_TAGS + s390_tag
fi

personally, consider we may have different docker file for different arch, I prefer below
make ${arch}

@rootfs , some questions:

for any vm without nvidia hardware? what will be happen? what build tag should we use?
any other comments?

@huoqifeng I don't know much about nvidia on s390, the nvml pkg can be turned on and off at runtime. You can make a conditional build for s390 to turn off nvml support if necessary.


⚠ Bofrost.nl has degraded performance

In 33e3bf6, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 1229 ms

Resolved: Bofrost.nl performance has improved in 7284537.


[Core] azd environment redesign - Implementation

Implement the redesigned environment logical construct in Azd.

@ellismg Anything else needed w.r.t environment redesign for 0.8. Please remove blocker, if we are good.
@savannahostrowski @ellismg

@savannahostrowski Marking this as completed with the 0.8 environment changes.


Different color when nvimtree is inactive

Does anyone know why this happens?
I tested in Konsole and Alacritty.

This is intended behaviour to highlight nvim-tree going out of focus. You can change this by overriding the highlight group NvimTreeNormalNC. Something like:
hlgroups = {
  NvimTreeNormalNC = { bg = '${bg}' }
}

This is intended behaviour to highlight nvim-tree going out of focus. You can change this by overriding the highlight group NvimTreeNormalNC. Something like:
hlgroups = {
  NvimTreeNormalNC = { bg = '${bg}' }
}

Thanks!


Sudo not found

When I implement the RUN wget onboarding agent in my Linux container:
wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -w -s
I get a sudo: not found error:
onboard_agent.sh: 99: onboard_agent.sh: sudo: not found
Please advise. Thanks!

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 012c35ae-69e3-dfe3-6d99-077915f5f555
Version Independent ID: f29da76c-d984-e218-570e-06ac68d2c550
Content: Quickstart: Collect data from a hybrid Linux Computer with Azure Monitor
Content Source: articles/azure-monitor/learn/quick-collect-linux-computer.md
Service: azure-monitor
GitHub Login: @MGoedtel
Microsoft Alias: magoedte

Thanks for your comment. We are actively investigating and will get back to you shortly. Thanks for your patience.

@zoekdestep The content article which you were referring basically talks about how to configure and collect data from Linux server / machine. I have tested the steps of the article and it works as expected.
Refer this article to monitor container's workload performance deployed to either Azure Container Instances (ACI) or managed Kubernetes clusters hosted on Azure Kubernetes Service (AKS).
Refer this article to set up and use the Container Monitoring solution in Azure Monitor, which helps to view and manage Docker and Windows container hosts in a single location.
Refer this GitHub issue for containers in Azure Monitor related information.
The issue you referred looks to be more related to sudo unavailability in a Linux container but less or not related to Azure / Azure documentation so I suggest you to open a thread and ask for suggestions and answers in communities MSDN Forum or Stack Overflow. Or as in your case it is hard to say what is causing you to hit the issue, support would be able to determine this with more information so here are the steps to raise a support tickets with Azure technical support if you already have a support plan. But if you don't, then please send mail to<EMAIL_ADDRESS>with your subscription ID and a link of this Github thread for context and we will assist you with engaging Azure technical support.

At this point it appears that there's no edits or updates needed for the referred Azure documentation so closing this issue for now. If there are further questions regarding this matter or feedback on the documentation, please do let us know and we will gladly continue the discussion.

solved, thanks


ZAP: Add details on the actions and messages that admins will see

For example: "ZAP took no action due to user triage"
Need more information on what this means and what the current state of the email is
Please add a table with all of the possible actions / statuses that we will see, what they mean, and why they would happen.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 4fb415a2-fc7c-5b9a-96de-f01be631bf07
Version Independent ID: c5d4ab93-4f59-a60f-5d42-1a6a52a37f4c
Content: Zero-hour auto purge in Microsoft Defender for Office 365 - Office 365
Content Source: microsoft-365/security/office-365-security/zero-hour-auto-purge.md
Service: microsoft-365-security
Sub-service: mdo
GitHub Login: @chrisda
Microsoft Alias: chrisda

@chrisda Please help us in resolving this issue. Thanks

Checking

To make it easier for you to submit feedback on articles on learn.microsoft.com, we're transitioning our feedback system from GitHub Issues to a new experience.
As part of the transition, this GitHub Issue will be moved to a private repository. We're moving Issues to another repository so we can continue working on Issues that were open at the time of the transition. When this Issue is moved, you'll no longer be able to access it.
If you want to provide additional information before this Issue is moved, please update this Issue before December 15th, 2023.
With the new experience, you no longer need to sign in to GitHub to enter and submit your feedback. Instead, you can choose directly on each article's page whether the article was helpful. Then you can then choose one or more reasons for your feedback and optionally provide additional context before you select Submit.
Here's what the new experience looks like.
Note: The new experience is being rolled out across learn.microsoft.com in phases. If you don't see the new experience on an article, please check back later.
First, select whether the article was helpful:

Then, choose at least one reason for your feedback and optionally provide additional details about your feedback:

Article was helpful
Article was unhelpful

Finally, select Submit and you're done!


Add licenses for distribution packaging

Symlink the license texts to the crate directories so cargo package would bundle them when packaging.
Signed-off-by: Michel Alexandre Salim<EMAIL_ADDRESS>

Sure, I will make a release with this change.

Done, released as enum-map 2.4.2 and enum-map-derive 0.11.0 respectively.


Add basic analytics

We will need visibility into how users are using this app

At minimum:

Weekly Active Users
Monthly Active Users

Don't have access to assign myself this yet but I'll take this one on


Dashboard: Hide the section of the danger zone in off-chain groups when you are not the admin

Thanks for the contribution! @gitpoap-bot @ryanpwaldon

Thanks @aguzmant103!


What you're seeing is certainly a networking issue between your cluster and GitHub's container registry, nothing we can do here, sorry.

    What you're seeing is certainly a networking issue between your cluster and GitHub's container registry, nothing we can do here, sorry.

Originally posted by @makkes in https://github.com/weaveworks/weave-gitops/issues/3255#issuecomment-1377467516
i also can't get chart in my local pc

$ helm pull oci://ghcr.io/weaveworks/charts/weave-gitops --version  4.0.11
Pulled: ghcr.io/weaveworks/charts/weave-gitops:4.0.11
Digest: sha256:658c2b880734898358c61b2c1dee9b5d51701c5224bfc2feb167813786d0ecde

Sorry, can't reproduce this.


How do I incorporate streaming into SimpleMultiModalQueryEngine

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
I'm building my query engine from low level components:
Depending on the number of documents my user uploads, I'll construct an index for each uploaded document and fuse them using a QueryFusionRetriever. If one of these indices is a MultiModalVectorStoreIndex (because the user uploads an image), I'll send the retriever to a SimpleMultiModalQueryEngine.
Despite defining a response_synthesizer with streaming set to True, I cannot get my query engine to stream its replies. The object returned is a "Response" object instead of a "StreamingResponse" object.
How do I allow SimpleMultiModalQueryEngine to stream responses?

@tituslhy SimpleMultiModalQueryEngine currently does not support streaming and so you are unable to stream the response.

I see! Thanks! So the only way to stream response for multimodal query engines is to use the high level API right? index.as_query_engine(streaming=True) where index is a MultiModalVectorStoreIndex type?


Inserting new points - replacing old points

Hello!
Is it possible to add a new parameter in the function "insert_one_pt()", called e.g. "replace", so when "replace=True", then if there is a point at the same location (based on [startinpy.DT.snap_tolerance()], then the point IS REPLACED?
Thank you for response :)
Greetings!

in v0.10 it is not, but I have added this to the upcoming version.
It's called xy-duplicate handling, and if you download and install the 'develop' branch and install yourself the bindings (should take you 10min max), then this is work. Or you wait perhaps 4-5 weeks and v0.11 will be released.
The docs for v0.11 is online already: https://startinpy.readthedocs.io/en/develop/api.html and see that function: https://startinpy.readthedocs.io/en/develop/api.html#startinpy.DT.duplicates_handling
If you test it, I'm interested in feedback and whether those functions are useful for you.

Thank you. I will try to compile it in free time.
I see that there will be a lot of other new features in v0.11. Great!!! :D
Have you thought about adding one more functionality - group deletion of points? I would see 3 options here:

A circle with center X,Y and radius r
A rectangle with center X,Y and dimensions a, b
A rectangle with center X,Y, dimensions a, b and direction of rotation alpha

Currently, in my application I have to delete points and insert new so I wrote a small script for this (option 3 above) based on your startinpy library and numpy vectorization. But if there are more than let's say 1.000.000 points in the database, my code starts to slow down due to copying points database.

What do you mean by "copying points database"? Is this something you perform or are you referring to an operation of startinpy? If you remove points, there is no copying the space allocated for that vertex is just assigned as deleted, nothing is removed from the array of vertices.

okay I'll see, thanks, this is useful.
2D area is there in the code but not exposed, I can expose it.
volume I can add in 5min.

Great, thank you for making this library, it is very helpful and really fast! :D

@hugoledoux can you guide me, how exactly I can compile the "develop" version 0.11? I have downloaded .ZIP file from "develop" github branch, installed latest RUST and maturin. And now I am not sure how to make next steps :/

I have managed to compile v0.11.0 beta version. Duplicates handling works, but I have one more suggestion - it would be great if also X and Y coordinates would be changed when duplicates_handling set to "Last" (or something like "LastXYZ"). Is it possible? Greetings!!

Great.
I don't understand what you mean here I'm afraid. xy cannot be changed/modified, or a new point is inserted somewhere else and that's not a duplicate.

I will describe a situation in which such a function could be used:
snap_tolerance is set to a high level (e.g. 0.20m) to save memory and collect data over a larger area. Fresh measurements have just appeared and I would like to update them in the database. For example, I would like to replace the old point [10, 10, 10] with [10.1, 10.1, 9]. But at the moment there will be point [10, 10, 9] in the database. This is ok for some situations (especially when snap_tolerance is set at a low level, e.g. 1 cm), but in terrain with a steep slopes it causes an increase in errors, especially in volume calculations, about which we wrote before. If there was a function that also replaced the XY coordinates, the measurement accuracy would be maintained. I understand that changing the XY coordinates would involve recalculating the triangulation, but if the user has such a need, he agrees to it. At this point, you must first find a close point to replace, then remove it and then add a new fresh point. If these steps could be simplified and a feature like this added, that would be great.
Have I described the situation sufficiently?

okay I now understand.
Indeed moving points can change the topology of the triangulation, and in some cases the triangles would have to be recomputed.
I don't see how to implement this in startinpy elegantly, sorry.
I suggest you implement it yourself: if that happens you can collect all the points wiht dt.points and insert them again.

okay I added area + volume: 6547985dcafe376be8256fff68c933a8667e281a + 32b87d0c8981df4395b32518b6c171da192c89fa
area is both:

2d (projected to the xy-plane)
3d (real area in 3D)

volume is wrt to a z-plane, and you get the signed volume, so if you have the z-plane above your triangle you'll get a negative value. I am not sure I use the same formula as you, the '@' is not an operator I know and you calculate only to the average of the 3 z-values, I perform the exact volume computation.


[TS-1225] Session managament based on NextExpectedSeqNum

Already merged into dev-version-0 and dev-version-1


"Product" number range cannot be created

PHP Version
8.3
Shopware Version
<IP_ADDRESS>
Affected area / extension
Platform(Default)
Expected behaviour
When I delete the "Product" number range, I expect that I can create a new number range for products.
Actual behaviour
"Product" is not an option in the number range create form.
How to reproduce
Go to Create Number Range page, open the Type dropdown and search for Product. It does not exist.
Possible solutions
Either disable the option to delete the Product number range, or add the option to create a new Product number range.
Possible solutions
Either disable the option to delete the Product number range, or add the option to create a new Product number range.

[public] Shopware automated response: This issue is linked to the internal issue: NEXT-38717
[created from NEXT-38717, comment 500418]


bugfix/reader-annotations-improvement

[x] In Links (operationId - operationRef):

operationId and operationRef are mutually exclusive.

in case the operationId and operationRef are both filled, the operationId has the priority.

[x] Schema annotation:

The maximum is not being treated.

The minimum is not being treated.

The value must be ignored if it's empty or it's not a number, considering the field is a String.

[x] Parameter annotation:

The schema, content and arraySchema must be mutually exclusive.

In case they are all filled, the priority must be the next: content > array > schema.

[x] ArraSchema in Parameter annotation:

The ArraySchema Annotation hasn't been implemented yet.

Adding some tests about this.

[x] Contents updates:

Method getContents deleted.

Method getContent improved, solving this issue: #2403.

applyProduces replaced by applyMediaType (now receives String arrays)

Everything solved in this PR: https://github.com/swagger-api/swagger-core/pull/2404

closing as implemented in related PRs


.implode without any PySilon.key

For those who run without compiling to exe

You can start compiling using compiler.py and interrupt when PySilon.key is generated, then you can just paste it's SHA256 checksum in line 61 of main.py.
You can get checksum quickly from CMD by:
certUtil -hashfile PySilon.key SHA256
or I will just remove file-key function bcuz it's pretty useless

I'm having errors compiling to exe.
Error:-

Did you use compiler.py inside venv?

and please send me line 7 of your code and those about opuslib (under the discord client definition)


Issue with OpenAI API: Incompatibility with Specific Word

Describe the bug
We are using OpenAI api for our application. It’s not giving response (which is a summary of particular text) when text includes “Ideation” word, if we remove Ideation word or makes it lower case (ideation) its giving us response. We are unable to find exact cause of this issue. Can you please help us for the same?
We are using TextDavinci003 and Gpt3.5-Turbo models for generating response.
To Reproduce
We are expecting summary with "Ideation" word included in that
Code snippets
def gen_summary(input_text, model, prompt):
    configure_openai(model)
    text_size = len(input_text.split())
    if text_size <=0:
       input_text = prompt

       try:
            if model != "Turbo35-0301":

                response = openai.Completion.create(
                    engine=model,
                    prompt=f" {prompt} {input_text}",
                    temperature=0,
                    max_tokens=2000,
                    top_p=1,
                    frequency_penalty=0,
                    presence_penalty=0,

                )
                summary = response["choices"][0]["text"]
                chargable_tokens= response["usage"]["prompt_tokens"]
                return summary.replace("\n","").strip(),chargable_tokens
            else:

                response = openai.ChatCompletion.create(
                    engine=model,
                    messages=[{"role": "user", "content": f"{input_text}\n\n {prompt} "}],
                    temperature=0,
                    max_tokens=2000,
                    top_p=1,
                    frequency_penalty=0,
                    presence_penalty=0,

                )
                summary = response["choices"][0]["message"]["content"]
                chargable_tokens= response["usage"]["prompt_tokens"]
                print(summary)
                return summary,chargable_tokens
       except Exception as e:
            return e
    else:
     try:
            if model != "Turbo35-0301":

                response = openai.Completion.create(
                    engine=model,
                    prompt=f"{input_text} {prompt} ",
                    temperature=0,
                    max_tokens=2000,
                    top_p=1,
                    frequency_penalty=0,
                    presence_penalty=0,

                )
                summary = response["choices"][0]["text"]
                chargable_tokens= response["usage"]["prompt_tokens"]
                return summary.replace("\n","").strip(),chargable_tokens

            else:

                response = openai.ChatCompletion.create(
                    engine=model,
                    messages=[{"role": "user", "content": f" {input_text}\n\n {prompt}"}],
                    temperature=0,
                    max_tokens=2000,
                    top_p=1,
                    frequency_penalty=0,
                    presence_penalty=0,

                )
                summary = response["choices"][0]["message"]["content"]
                print(summary)
                chargable_tokens= response["usage"]["prompt_tokens"]
                return summary,chargable_tokens

     except Exception as e:
            return e

OS
Windows
Python version
Python 3.10
Library version
Open ai 0.27.2

Not able to replicate, closing this out.


BrokerNotAvailableError: Broker not available

Reduced test case:

Launch the following code.
Wait a moment to let the client connect to kafka.
^C
Program crashes.

var kafka    = require('kafka-node');
var client   = new kafka.Client('localhost:2181');
var consumer = new kafka.Consumer(client, []);
consumer.addTopics(['admin'], function(err) {
  if (err) console.error(log);
});
process.once('SIGINT', function() {
  consumer.close();
});

$ iojs test.js
^C
events.js:125
      throw er; // Unhandled 'error' event
            ^
BrokerNotAvailableError: Broker not available
    at new BrokerNotAvailableError (/vagrant/test/node_modules/kafka-node/lib/errors/BrokerNotAvailableError.js:11:11)
    at Socket.<anonymous> (/vagrant/test/node_modules/kafka-node/lib/client.js:501:43)
    at emitOne (events.js:75:13)
    at Socket.emit (events.js:150:7)
    at TCP.close (net.js:457:12)

This only happens with<EMAIL_ADDRESS><EMAIL_ADDRESS>exits gracefully.
It also happens with client.close() instead of consumer.close().

@haio somehow callback queue is not cleared in this case

@estliberitas when the broker is in longpolling mode it should not emit error. And each socket connection should has its own callback queue, I will make the fix.

Well it already has own callback queue, I implemented it. :-) All you need
is check for longpolling in close event listener for socket. :-)
On 07:01, Fri, Feb 13, 2015 Zhong Yu<EMAIL_ADDRESS>wrote:

@estliberitas https://github.com/estliberitas when the broker is in
longpolling mode it should not emit error. And each socket connection
should has its own callback queue, I will make the fix.
—
Reply to this email directly or view it on GitHub
https://github.com/SOHU-Co/kafka-node/issues/160#issuecomment-74202024.

The current implemention is group the callbacks by host:port, if we have 2 socket connecting <IP_ADDRESS>:9093, one of them is longpolling, when one socket get end event, it will clear callbacks in <IP_ADDRESS>:9093, thus accidentally clear aonther socket's callback queue.

It seems to be working fine in<EMAIL_ADDRESS>now, thanks!

My docker-compose file
version: '3'
services:
  zookeeper:
    container_name: zookeeper
    image: confluentinc/cp-zookeeper
    ports:
      - "32181:32181"
    environment:
      ZOOKEEPER_CLIENT_PORT: 32181
      ZOOKEEPER_TICK_TIME: 2000
      ZOOKEEPER_SYNC_LIMIT: 2

  kafka:
    container_name: kafka
    image: confluentinc/cp-kafka
    ports:
      - "9094:9094"
    environment:
      KAFKA_ZOOKEEPER_CONNECT: localhost:32181
      KAFKA_LISTENERS: INTERNAL://localhost:9092,OUTSIDE://localhost:9094
      KAFKA_ADVERTISED_LISTENERS: INTERNAL://localhost:9092,OUTSIDE://localhost:9094
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL
      ES_JAVA_OPTS: "-Xms512m -Xmx3000m"

and Producer code is
var kafka = require('kafka-node'),
    Producer = kafka.Producer,
	KeyedMessage = kafka.KeyedMessage,
    client = new kafka.KafkaClient({kafkaHost:"localhost:9094"}),

    producer = new Producer(client),
    km = new KeyedMessage('key', 'message'),
    payloads = [
        { topic: 'topic1', messages: 'hi', partition: 0 },
        { topic: 'topic1', messages: ['hello', 'world', km] }
    ];

client.createTopics(topicsToCreate, (error, result) => {

				echo ("------------------------KAFAK--------------------")
				console.log(error);
				console.log(result);
			});

Getting below error, while creating the topic before sending pay-load to topics
{ BrokerNotAvailableError: Broker not available (loadMetadataForTopics)
    at new BrokerNotAvailableError (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\errors\BrokerNotAvailableError.js:11:9)
    at KafkaClient.loadMetadataForTopics (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:891:21)
    at KafkaClient.loadMetadata (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:876:8)
    at KafkaClient.getController (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:267:8)
    at KafkaClient.sendControllerRequest (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:1219:8)
    at KafkaClient.createTopics (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:935:8)
    at C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\index_behind_kong.js:60:11
    at C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\baseClient.js:370:18
    at KafkaClient.loadMetadataForTopics (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\kafkaClient.js:891:12)
    at RetryOperation._fn (C:\wamp64\www\ws-proxy\HOZ-KOG-WebSocket_NodeJS\node_modules\kafka-node\lib\baseClient.js:360:12) message: 'Broker not available (loadMetadataForTopics)' }
undefined

I have gave the delay of 5 seconds before calling to createtopic method, however no luck found.
Kindly assist.

Finally got the solution. I was doing on mistake. By default Apache Kafka create the 3 replication, this mean its by default create 3 broker as well. However aboe YAML create only one broker, and looknig for other 2 which is not created. hence we are getting the same error.
Fix
version: '3'
services:
  zookeeper:
    container_name: zookeeper
    image: confluentinc/cp-zookeeper
    ports:
      - "32181:32181"
    environment:
      ZOOKEEPER_CLIENT_PORT: 32181
      ZOOKEEPER_TICK_TIME: 2000
      ZOOKEEPER_SYNC_LIMIT: 2

  kafka:
    container_name: kafka
    image: confluentinc/cp-kafka
    ports:
      - "9094:9094"
    environment:
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:32181
      KAFKA_LISTENERS: INTERNAL://:9092,OUTSIDE://:9094
      KAFKA_ADVERTISED_LISTENERS: INTERNAL://:9092,OUTSIDE://localhost:9094
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      ES_JAVA_OPTS: "-Xms512m -Xmx3000m"

then KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 tell the Apache kafka that we Wanted to create only one replication and its work
Happy coding :)
Thanks & Regards
Jaiswar Vipin Kumar R.


runtime: cgo calls are way faster when enabling CPU profile

What version of Go are you using (go version)?

$ go version
go version go1.14.2 linux/amd64

Does this issue reproduce with the latest release?
It was present with 1.13.4 and uprading to latest release confirms it
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/j-lallement/.cache/go-build"
GOENV="/home/j-lallement/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/j-lallement/.go/"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/j-lallement/Ubuntu/Dev/zfs/zsys/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build141739689=/tmp/go-build -gno-record-gcc-switches"

What did you do?

We started having a contention on some of our code (https://github.com/ubuntu/zsys) which is using go-libzfs when opening the ZFS pools.

This issues a lot of cgo calls to a library which then proceed to syscall. We expected some performance issues.

The following code:

dsZFS, err := newZ.libzfs.DatasetOpenAll()
if err != nil {
    return fmt.Errorf(i18n.G("can't list datasets: %v"), err)
}

Was running for 13.5s in average in our system (with a lot of datasets)

We thus wanted to start doing CPU profile and did:

f, _ := os.Create("/tmp/cpuprofile")
defer f.Close()
pprof.StartCPUProfile(f)
dsZFS, err := newZ.libzfs.DatasetOpenAll()
if err != nil {
    return fmt.Errorf(i18n.G("can't list datasets: %v"), err)
}
pprof.StopCPUProfile()

The surprise was that the whole call was then taking less than a second! This is fully reproducible on our machine: No change apart from enabling or disabling CPU profile goes from 13.5s without CPU profile to one second with it enabled.
cpu.pprof.txt
The result of DatasetOpenAll isn’t identical with and without CPU profile enabled, there are less objects returns (see the difference in call stack of number of openchildren)

We started to trace without and with CPU profile enabled. This confirms the time difference:

a. Without CPU Profile enabled:
t, _ := os.Create("/tmp/trace")
defer t.Close()
//f, _ := os.Create("/tmp/cpuprofile")
//defer f.Close()
//pprof.StartCPUProfile(f)
trace.Start(t)
dsZFS, err := newZ.libzfs.DatasetOpenAll()
if err != nil {
    return fmt.Errorf(i18n.G("can't list datasets: %v"), err)
}
trace.Stop()
//pprof.StopCPUProfile()

Here is the trace (taking 15s): trace_without_cpuprofile.txt
b. With CPU Profile enabled:
t, _ := os.Create("/tmp/trace")
defer t.Close()
f, _ := os.Create("/tmp/cpuprofile")
defer f.Close()
pprof.StartCPUProfile(f)
trace.Start(t)
dsZFS, err := newZ.libzfs.DatasetOpenAll()
if err != nil {
    return fmt.Errorf(i18n.G("can't list datasets: %v"), err)
}
trace.Stop()
pprof.StopCPUProfile()

Here is the trace (taking 3s): trace_with_cpuprofile.txt
There is a little bit more on the 15s trace of GC calls, but nothing drastic that can explain the difference (38ms vs 4.4ms). We can see there is a lot more gaps though in Execution time.
The other surprise is that we are blocking way more in syscalls (2.3s vs 0.4s).
https://github.com/bicomsystems/go-libzfs doesn’t seem to do anything particular in case it detects it’s being under profile, is there anything CPU profiler is doing to influence the Cgo calls or am I missing anything obvious?

Another example where CGo things were also running much faster with tracing enabled: https://github.com/golang/go/issues/21827#issuecomment-403467932 .


nse-supplier-k8s

nse's and nsc's should be provided by the user and they are not part of nsm core.


Synthetic tests in the datadog passes but the workflow using the datadog github action fails

Hi ,
I have been using<EMAIL_ADDRESS>for triggering the datadog tests from github action workflow. The datadog test passes but the workflow fails.
I saw there has been a similar issue reported already - https://github.com/DataDog/synthetics-ci-github-action/issues/103.
The workflow fails with "failed: 1" and not because of timeout. However in the datadog it shows status as timed out. Is there any fix for this ?

Hey @shalini171993! Thanks for reporting an issue!
Can you provide the logs of<EMAIL_ADDRESS>Don't forget to redact any information you don't want to share.

Thank you! Do you have retries configured in Datadog for this test? (cf. docs)
If you do, then you will probably see that the test has fast retried, so it eventually succeeded.
When you follow the link for View full summary in Datadog, do you see any text saying something like this?

PASSED 2 test runs (1 test run + 1 fast retry)"

I hadnt setup retry before. But now I tried setting the retry count as 2 for the datadog test.
=== REPORT ===
✓ [xxx-xxx-xxx] [test] - location: --------- - device: -----------
⎋ Total duration: 37594 ms - View test run details: https://xxxxxxxxxx/synthetics/details/xxxxxxxxx/result/xxxxxxxxxxxxxxxx?from_ci=true (not yet received)
⇢ | 10 skipped steps
View full summary in Datadog: https://xxxxxxxxxxx/synthetics/explorer/ci?batchResultId=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Continuous Testing Summary:
Test Results: 1 passed, 0 failed (1 timed out)
Max parallelization configured: XXXX tests running at the same time
Total Duration: 10m 7s
Increase your parallelization to reduce your total duration: https://Xxxxxxxxx/synthetics/settings/continuous-testing
Because failOnTimeout is disabled, the command will succeed. Use failOnTimeout: true to make it fail instead.
Datadog Synthetics tests succeeded: criticalErrors: 0, passed: 1, failedNonBlocking: 0, failed: 0, skipped: 0, notFound: 0, timedOut: 1
Results URL: https://xxxxxxxxxxx/synthetics/explorer/ci?batchResultId=xxxxxxxxxxxxxxx
The datadog test has passed as usual.
Clicking on the Results URL shows the test has failed with timeout
FAILED1 test run (1 test run + 0 fast retries)
Looks like there has been no retry.But strange that it shows  passed: 1,timedOut: 1 in the log.

Yes I have set the polling timeout . But its strange that the test gets timed out every time. Are you able to reproduce this issue ? Do you have any work around for this please?

Hey @shalini171993!
For your last issue, namely:

But its strange that the test gets timed out every time. Are you able to reproduce this issue?

Thanks for reporting it, it should be fixed now. This was not related to the polling timeout.
If you still have issues, please create a support ticket here.


Unexpected behaviour with linux - electron.js

var sudo = require('sudo-prompt');
	var options = {
		name: 'Electron',
		icns: '/Applications/Electron.app/Contents/Resources/Electron.icns', // (optional)
	};
	sudo.exec('apt-get install build-essential libudev-dev', options,
		(error, stdout, stderr) =>{

			if (error) throw error;
			log.info('stderr: '  + stderr);
			log.info('stdout: '  + stdout);
			//mainfunction();

		}

		);

after running this function -> promt opening -> giving password  --> and while using printer its showing error  libudev-dev', not installed  error  which is intalled by use same command -->"sudo.exec('apt-get install build-essential libudev-dev', options,"
in stdout -- getting this -- stdout: Reading package lists...
Building dependency tree...
Reading state information...
build-essential is already the newest version (12.4ubuntu1).
libudev-dev is already the newest version (237-3ubuntu10.44).
The following packages were automatically installed and are no longer required:
efibootmgr gir1.2-geocodeglib-1.0 gyp javascript-common libc-ares2
libegl1-mesa libfwup1 libhttp-parser2.7.1 libjs-async libjs-inherits
libjs-jquery libjs-node-uuid libjs-underscore libllvm8 libssl1.0-dev libuv1
libuv1-dev libwayland-egl1-mesa node-abbrev node-ansi node-ansi-color-table
node-archy node-async node-balanced-match node-block-stream
node-brace-expansion node-builtin-modules node-combined-stream
node-concat-map node-cookie-jar node-delayed-stream node-forever-agent
node-form-data node-fs.realpath node-fstream node-fstream-ignore
node-github-url-from-git node-glob node-graceful-fs node-gyp
node-hosted-git-info node-inflight node-inherits node-ini
node-is-builtin-module node-isexe node-json-stringify-safe node-lockfile
node-lru-cache node-mime node-minimatch node-mkdirp node-mute-stream
node-node-uuid node-nopt node-normalize-package-data node-npmlog node-once
node-osenv node-path-is-absolute node-pseudomap node-qs node-read
node-read-package-json node-request node-retry node-rimraf node-semver
node-sha node-slide node-spdx-correct node-spdx-expression-parse
node-spdx-license-ids node-tar node-tunnel-agent node-underscore
node-validate-npm-package-license node-which node-wrappy node-yallist
nodejs-doc python-pkg-resources ubuntu-web-launchers
Use 'apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 19 not upgraded.

using escpos library for printing


How do I start and use the docker image?  Is a k80 enough?

In my excitement, I forgot my manners.  Thank you for posting this model.  I've tried to start this with docker run -it docker.io/gyxthu17/cpm-2:1.0 bash and with docker run -p 8080:8080 gyxthu17/cpm-2:1.0  Neither works for me.

Could you please post the error message? This would be helpful for us to solve the problem.

Thank you for responding.  I don't get an error.  I just don't know what to do with the container.  You probably explain it very well, but I only know a few words of Chinese and no characters.  I don;t see a script directory.  I get this container for the root user:
`root@f524975642fd:/# ls
:     data     etc   lib64  mnt            opt   run   sys  var
bin   dataset  home  logs   model          proc  sbin  tmp  workspace
boot  dev      lib   media  oh-my-tuna.py  root  srv   usr

Can this be run like a chatbot?

I've made some progress.  Here is my error:
`bash scripts/pretrain_enc_dec.sh
scripts/pretrain_enc_dec.sh: line 16: 中英混合词表: command not found
deepspeed --num_nodes 40 --num_gpus 8 --hostfile /home/thu-plm/CPM-2//src/configs/host_files/hostfile-cpm2 /home/thu-plm/CPM-2//src/pretrain_enc_dec.py --model-config /home/thu-plm/CPM-2//src/configs/model/enc_dec_xlarge_config.json --model-parallel-size 1 --batch-size 26 --enc-seq-length 512 --dec-seq-length 256 --train-iters 200000 --save /home/thu-plm/CPM-2//results/ --log-file /home/thu-plm/CPM-2//results//log.txt --data-path /home/thu-plm/CPM-2//pretrain_data/wudao_corpus --data-impl mmap --split 949,50,1 --distributed-backend nccl --lr 0.001 --no-load-optim --lr-decay-style noam --weight-decay 1e-2 --clip-grad 1.0 --warmup 0.05 --tokenizer-path --save-interval 4000 --eval-interval 2000 --eval-iters 10 --log-interval 100 --checkpoint-activations --deepspeed-activation-checkpointing --fp16 --deepspeed --deepspeed_config /home/thu-plm/CPM-2//src/configs/deepspeed/ds_cpm2.json
[2021-07-20 22:58:52,162] [WARNING] [runner.py:122:fetch_hostfile] Unable to find hostfile, will proceed with training with local resources only.
Traceback (most recent call last):
File "/home/bard/miniconda3/envs/wudao/bin/deepspeed", line 6, in
main()
File "/home/bard/miniconda3/envs/wudao/lib/python3.6/site-packages/deepspeed/launcher/runner.py", line 278, in main
raise ValueError("Num nodes is >1 but no extra nodes available via hostfile")
ValueError: Num nodes is >1 but no extra nodes available via hostfile
`

It seems that the comment "中英混合词表" in line 16 is treated as a line of code. Could you please share your training script? Or just check whether the syntax is correct.
Besides, it seems that the path to the hostfile is also incorrect. Please check whether the hostfile is put in /home/thu-plm/CPM-2//src/configs/host_files/hostfile-cpm2.


Pin to breathe<=4.26.0

As discovered in https://github.com/svenevs/exhale/issues/98,
older versions of breathe do not throw unresolved function
name warnings and/or choke on template parameter lists.
Hence, temporarily pinning to 4.26.0.
Signed-off-by: Abrar Rahman Protyasha<EMAIL_ADDRESS>

Additionally, this PR also requires pinning to a specific version of sphinx (i.e. sphinx<3.5,>=3.0). In offline discussions with @clalancette, we concluded that pinning both breathe and sphinx to specific older versions can be troublesome/impossible for users.
As such, I am closing this PR here.