text:
[BiliIntl] Download Failed at midway

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting a bug unrelated to a specific site
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
Download got failed on midway...
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
root@ps:/media/Jellymed/EXT/temp# yt-dlp --version
2023.07.06
root@ps:/media/Jellymed/EXT/temp# yt-dlp --cookies Cookies_En.txt -vU -f 14+2 https://www.bilibili.tv/en/video/2043748658
[debug] Command-line config: ['--cookies', 'Cookies_En.txt', '-vU', '-f', '14+2', 'https://www.bilibili.tv/en/video/2043748658']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.07.06 [b532a3481] (pip)
[debug] Python 3.9.2 (CPython x86_64 64bit) - Linux-5.10.0-25-amd64-x86_64-with-glibc2.31 (OpenSSL 1.1.1n  15 Mar 2022, glibc 2.31)
[debug] exe versions: ffmpeg 4.3.6-0, ffprobe 4.3.6-0
[debug] Optional libraries: Cryptodome-3.16.0, brotli-1.0.9, certifi-2022.12.07, mutagen-1.46.0, sqlite3-2.6.0, websockets-10.4
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: stable@2023.07.06, Current version: stable@2023.07.06
yt-dlp is up to date (stable@2023.07.06)
[BiliIntl] Extracting URL: https://www.bilibili.tv/en/video/2043748658
[BiliIntl] 2043748658: Downloading webpage
[BiliIntl] 2043748658: Downloading video formats
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, size, br, asr, proto, vext, aext, hasaud, source, id
[info] 2043748658: Downloading 1 format(s): 14+2
[debug] Invoking http downloader on "https://upos-bstar1-mirrorakam.akamaized.net/iupxcodeboss/ui/m5/n220918adj82d58xr3fzgc5pflypm5ui-1-161210110000.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&deadline=1694046547&gen=playurlv2&os=akam&oi=2417516152&trid=88baf13c6eae4f70a5d1688316bcacaci&mid=1531530638&platform=pc&upsig=a8b7e77c84e20941c833021423c14213&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,mid,platform&hdnts=exp=1694046547~hmac=dfe301a727eacd0041a769d8a4053eec80ece169c4c8e281c221ed791ec4ab3a&bvc=vod&nettype=0&orderid=0,1&logo=00000000&f=i_0_0"
[download] Destination: Twice - 4th World Tour III in Japan [2022.04.23] [2043748658].f14.mp4
[download]  57.6% of    3.46GiB at   45.56MiB/s ETA 00:32[download] Got error: Downloaded 2143289344 bytes, expected 3719059183 bytes. Retrying (1/10)...
[download] Got error: Remote end closed connection without response. Retrying (2/10)...
[download] Got error: Remote end closed connection without response. Retrying (3/10)...
[download] Got error: Remote end closed connection without response. Retrying (4/10)...
[download] Got error: Remote end closed connection without response. Retrying (5/10)...
[download] Got error: Remote end closed connection without response. Retrying (6/10)...
[download] Got error: Remote end closed connection without response. Retrying (7/10)...
[download] Got error: Remote end closed connection without response. Retrying (8/10)...
[download] Got error: Remote end closed connection without response. Retrying (9/10)...
[download] Got error: Remote end closed connection without response. Retrying (10/10)...
[download] Got error: Remote end closed connection without response. Giving up after 10 retries
  File "/usr/local/bin/yt-dlp", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/__init__.py", line 1008, in main
    _exit(*variadic(_real_main(argv)))
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/__init__.py", line 998, in _real_main
    return ydl.download(all_urls)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 3485, in download
    self.__download_wrapper(self.extract_info)(
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 3460, in wrapper
    res = func(*args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 1549, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 1560, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 1709, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 1768, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 2897, in process_video_result
    self.process_info(new_info)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 3345, in process_info
    partial_success, real_download = self.dl(fname, new_info)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 3084, in dl
    return fd.download(name, new_info, subtitle)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/downloader/common.py", line 461, in download
    ret = self.real_download(filename, info_dict)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/downloader/http.py", line 375, in real_download
    for retry in RetryManager(self.params.get('retries'), self.report_retry):
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/utils/_utils.py", line 5634, in __iter__
    self.error_callback(self.error, self.attempt, self.retries)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/downloader/common.py", line 402, in report_retry
    RetryManager.report_retry(
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/utils/_utils.py", line 5641, in report_retry
    return error(f'{e}. Giving up after {count - 1} retries') if count > 1 else error(str(e))
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/downloader/common.py", line 405, in <lambda>
    error=IDENTITY if not fatal else lambda e: self.report_error(f'\r[download] Got error: {e}'),
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 1042, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/yt_dlp/YoutubeDL.py", line 970, in trouble
    tb_data = traceback.format_list(traceback.extract_stack())

[debug] Invoking http downloader on "https://upos-bstar1-mirrorakam.akamaized.net/iupxcodeboss/ui/m5/n220918adj82d58xr3fzgc5pflypm5ui-1-1d1301000023.m4s?e=ig8euxZM2rNcNbdlhoNvNC8BqJIzNbfqXBvEqxTEto8BTrNvN0GvT90W5JZMkX_YN0MvXg8gNEV4NC8xNEV4N03eN0B5tZlqNxTEto8BTrNvNeZVuJ10Kj_g2UB02J0mN0B5tZlqNCNEto8BTrNvNC7MTX502C8f2jmMQJ6mqF2fka1mqx6gqj0eN0B599M=&uipk=5&nbs=1&deadline=1694046547&gen=playurlv2&os=akam&oi=2417516152&trid=88baf13c6eae4f70a5d1688316bcacaci&mid=1531530638&platform=pc&upsig=bd66be4ad470af57099a11ac2906a66a&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,mid,platform&hdnts=exp=1694046547~hmac=abbbc48c6ceb7a05d276ca544df7690248e9bbe4843fdaedf8f27294603e23b4&bvc=vod&nettype=0&orderid=0,1&logo=00000000&f=i_0_0"
[download] Destination: Twice - 4th World Tour III in Japan [2022.04.23] [2043748658].f2.mp4
[download] 100% of  209.46MiB in 00:00:05 at 37.38MiB/s
root@ps:/media/Jellymed/EXT/temp#

Can you resume the download?

If you restart the download, does it error at the same point? (move/rename your partially downloaded video file before trying to download again)

Yes, The error at the same point after the restart the download.
For note: The video has Geo-restriction. But we can stream the video from South Korea.

Related: #6640


text:
VRV Still getting HTTP Error 403

Checklist

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

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '-u', 'PRIVATE', '-p', 'PRIVATE', '-F', 'https://vrv.co/watch/GYP55W8KY/CatDog:Squirrel-Dog-Brothers-Day']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2019.07.16
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362
[debug] exe versions: ffmpeg N-93461-g6e42021128
[debug] Proxy map: {}
[vrv] None: Downloading webpage
[vrv] Downloading Token Credentials JSON metadata
[vrv] GYP55W8KY: Downloading resource path JSON metadata
[vrv] GYP55W8KY: Downloading CMS Signing JSON metadata
[vrv] GYP55W8KY: Downloading object JSON metadata
ERROR: Unable to download JSON metadata: HTTP Error 403: Forbidden (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\ytdl-org\tmpaxmfe_l6\build\youtube_dl\extractor\common.py", line 627, in _request_webpage
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpaxmfe_l6\build\youtube_dl\YoutubeDL.py", line 2227, 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

Description

Hi, I've noticed this was posted about 6 days ago, was closed and redirected to a possible fix? maybe I am missing something but is still seems like not working. Any suggestions or possible solution? it was working as of July 11th, 2019 which was the last time I downloaded. I tried with every link I tried back them and doesn't seem to work, even with querying the available audio and video stream with the -F argument, I keep getting HTTP Error 403. My VRV account is active and is not open/streaming while it tried to download, I can see the same content just fine on the browser.
Here is the link: https://vrv.co/watch/GYP55W8KY/CatDog:Squirrel-Dog-Brothers-Day
Thank you so much for this amazing program and your commitment to it!

not released yet.

source: gharchive/issue

repo: ytdl-org/youtube-dl

license: Unlicense

license_type: permissive

license_source: github-api


text:
Add site https://www.ixigua.com/

Checklist

[x] I'm reporting a new site support request
[x] I've verified that I'm running youtube-dl version 2020.02.16
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that none of provided URLs violate any copyrights
[x] I've searched the bugtracker for similar site support requests including closed ones

Example URLs

Private video: https://www.ixigua.com/i6798508841601335820/
Single video: https://www.ixigua.com/i6699344434779128328/
User playlist: https://www.ixigua.com/home/83570835528/

Description

Api to get video like this
https://vas.snssdk.com/video/openapi/v1/...
Video in ['dynamic_video_list'] => b64decode(main_url) => real url
This is the video I have how to decode private video  https://drive.google.com/file/d/1OysTwJHkas9R5gQlWXuHHj5PEc27WpQ9/view
And i used https://www.bento4.com/  to decode video
But i don't know how to do it in python3.x

Support for ixigua.com would be much appreciated!

Hi, can someone please add support for this website? It's still not supported.

maybe this will be helpful for future extractor:
https://github.com/feilongfl/script.module.you_get/blob/f8f0a6df6a43b029b29afa29482b520d504172b7/lib/you_get/extractors/ixigua.py

Back-port needed, once https://github.com/yt-dlp/yt-dlp/issues/9784 is resolved.

authors: Shadesss dirkf hatienloi sdan41517 someziggyman


text:
Sat1 downloads fail

Checklist

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

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.sat1.de/tv/switch-reloaded/video/33-das-perfekte-dinner-mit-herbert-clip']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: none
[debug] Proxy map: {}
[prosiebensat1] tv/switch-reloaded/video/33-das-perfekte-dinner-mit-herbert-clip: Downloading webpage
ERROR: Unable to extract clip id; 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\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 815, in wrapper
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 836, in __extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 534, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\prosiebensat1.py", line 495, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\prosiebensat1.py", line 436, in _extract_clip
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 1021, in _html_search_regex
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 1012, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract clip id; 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.

Description

Download fails for following URLs:
https://www.sat1.de/serien/switch-reloaded/videos/das-perfekte-dinner-mit-herbert
https://www.sat1.de/tv/switch-reloaded/video/33-das-perfekte-dinner-mit-herbert-clip

Do you have a page for which yt-dl succeeds?

Do you have a page for which yt-dl succeeds?

You're right, all videos in this URL format don't work on this site.

Also possibly related: https://github.com/yt-dlp/yt-dlp/issues/4828


text:
Wanted: a way to download english subtitles without worrying about en vs enUS.

I am looking to have a "simple" macro that downloads with subtitles.
For example, my current shell script is
#!/bin/bash
set -x
# Usage: youtube-480 url
## youtube-dl -f "bestvideo[height<=480][ext=mp4]+bestaudio[ext=m4a]/[height<=?480]" --sub-lang en --write-sub --recode-video mp4 "$@"
youtube-dl -f "bestvideo[height<=480][ext=mp4]" --sub-lang en --write-sub --recode-video mp4 "$@"

It's simple enough, but has taken me some time to learn the formatting. This tries to grab a 480p file, either in mp4 format, or recoded into mp4; it's been updated as I've been able to get 480p mp4's from youtube in one step now.
All is well and good until I run into sites where english subtitles are "enUS" instead of "en". Suddenly, it fails with
WARNING: en subtitles not available for 678135
ERROR: requested format not available
Is there a way to make this "just work"?

Can you give an example URL with enUS subtitles?

@keybounce You can try --sub-lang "en,enUS" or even --sub-lang "en,enUS,English". There may be warning messages, but you'll still get the right subtitles.

An example of an enUS was on crunchyroll.
Silly me, I saw that youtube-dl had updated that morning (I have a cron job that checks every morning), and didn't realize that the chrunchyroll support wasn't in yet. So it died on the subtitle before it could die on the video.

FYI: Crunhyroll support is just fixed, in a01da8bbf83dfd4f87e3fdd105b9f7c850e76cad.
Thanks @ping for the approach, while I think it's still preferred to get warnings out.

Alright, and with the fixed crunchyroll support:
youtube-dl -f 'bestvideo[height<=480][ext=mp4]' --sub-lang en,enUS,English --write-sub --recode-video mp4 http://www.crunchyroll.com/is-it-wrong-to-try-to-pick-up-girls-in-a-dungeon
[crunchyroll:playlist] is-it-wrong-to-try-to-pick-up-girls-in-a-dungeon: Downloading webpage
[download] Downloading playlist: Is It Wrong to Try to Pick Up Girls in a Dungeon?
[crunchyroll:playlist] playlist Is It Wrong to Try to Pick Up Girls in a Dungeon?: Collected 13 video ids (downloading 13 of them)
[download] Downloading video 1 of 13
[Crunchyroll] 678135: Downloading webpage
[Crunchyroll] 678135: Downloading media info
[Crunchyroll] 678135: Downloading media info for 360p
[Crunchyroll] 678135: Checking 360p URL
[Crunchyroll] 678135: Downloading media info for 480p
[Crunchyroll] 678135: Checking 480p URL
[Crunchyroll] 678135: Downloading media info for 720p
[Crunchyroll] 678135: Checking 720p URL
[Crunchyroll] 678135: Downloading media info for 720p
[Crunchyroll] 678135: Checking 720p URL
[Crunchyroll] 678135: Downloading media info for 1080p
[Crunchyroll] 678135: Checking 1080p URL
[Crunchyroll] 678135: Downloading media info for 1080p
[Crunchyroll] 678135: Checking 1080p URL
[Crunchyroll] 678135: Downloading subtitles for English (US)
[Crunchyroll] 678135: Downloading subtitles for Español
[Crunchyroll] 678135: Downloading subtitles for Português (Brasil)
[Crunchyroll] 678135: Downloading subtitles for العربية
WARNING: en subtitles not available for 678135
WARNING: English subtitles not available for 678135
ERROR: requested format not available

Looks like it found the enUS, but didn't find the other two, and complained. So how do I say "any of these" instead of "all of these"?

"any of these" is not implemented yet.

Ha. Well, that answers my question from the first post,
Is there a way to make this "just work"?

Ok, now for a shell-scripting issue for python.
My "macro script" now looks like:
#!/bin/bash
set -x
# Usage: youtube-480 url
## youtube-dl -f "bestvideo[height<=480][ext=mp4]+bestaudio[ext=m4a]/[height<=?480]" --sub-lang en --write-sub --recode-video mp4 "$@"
youtube-dl -f "bestvideo[height<=480][ext=mp4]" --list-sub "$@" | grep -m 1 '^[eE][nN]' | awk '{print $1}' > /tmp/yt-sub.$$
##youtube-dl -f "bestvideo[height<=480][ext=mp4]" --sub-lang $(cat /tmp/yt-sub.$$) --write-sub --recode-video mp4 "$@"
cat /tmp/yt-sub.$$
rm -f /tmp/yt-sub.$$

Simple enough: Turn on debugging, get a list of subtitles, select the first english one, save it, and then use that -- but for debugging, just print what it would be.
What I need help with is python reporting an error:
Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/Users/michael/bin/youtube-dl/__main__.py", line 19, in <module>
  File "/Users/michael/bin/youtube-dl/youtube_dl/__init__.py", line 410, in main
  File "/Users/michael/bin/youtube-dl/youtube_dl/__init__.py", line 400, in _real_main
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1653, in download
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 666, in extract_info
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 807, in process_ie_result
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 413, in to_screen
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 427, in to_stdout
  File "/Users/michael/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 416, in _write_string
  File "/Users/michael/bin/youtube-dl/youtube_dl/utils.py", line 1031, in write_string
IOError: [Errno 32] Broken pipe

How do I tell python to not complain?

Ok, "Any of these" for subtitles seems to be working now, on Crunchyroll.
Python is no longer complaining on that "try to find the subtitles", and it isn't even needed anymore.

@ping commented on 2015. aug. 18. 13:57 CEST:

@keybounce You can try --sub-lang "en,enUS" or even --sub-lang "en,enUS,English". There may be warning messages, but you'll still get the right subtitles.

So I have to do this for every darned english variant that might pop up? Or guess every single english variant and its country code that might exist... (Who knows how many.) Recently I ran into Canadian english, so with my config it was of course ignored.

authors: keybounce mzso ping yan12125


text:
Add -r option to Usage section in README

I noticed the -r option was added but looked like it was missing from the Usage section of the README.
Please feel free to adjust the wording describing the option however makes most sense to you! Just thought I’d help get the change started!

Thanks for your PR. I've neglected the README a bit...
I think I would prefer if you simply copy the whole help output to the readme. E.g. - v is also missing.

I fixed the codespell errors. Please rebase on development and set the target branch also to development. When this is merged we release v2.6.3

@mattvw any news on that?

Closing due to inactivity. Superseded by https://github.com/yubiuser/pihole_adlist_tool/pull/62

source: gharchive/pull-request

authors: mattvw yubiuser

license: MIT


text:
希望能更改字体

现在的字体太花哨看得很累，希望能改为系统默认字体或者允许自选字体

poi 没有内置的字体，按照每个主题的配置自动选择的系统字体。

已找到原因，我（和我同学）都装了小圆剧场版外挂字幕的某个字体，poi默认选到了这个字体，我把雅黑提到最前就好了

嗯嗯好的

repo: yudachi/poi

license: mit

license_source: bigquery


text:
add min and max partition keys to tablet report output

This change provides clarity to the user plus it ensures a fixed number of columns which makes writing perl script parsers easier.
Test procedure:
$ sqlite3 -header -column before.db
sqlite> select * from tablet;
$ yugatool --master-addresses 127.0.0.1:7100,127.0.0.2:7100,127.0.0.3:7100 cluster_info --tablet-report  | perl ./tablet-report-parser.pl | sqlite3 after.db
$ sqlite3 -header -column after.db
sqlite> select * from tablet;

Yeah, I agree that it's sub-optimal that the keys are blank when it the tablet is set to partitionKeyStart or partitionKeyEnd, but this function is generic for changing base64 to hex.
Perhaps it would be better if we added a new function that is specifically to decode the partition key that shares code with base64_to_hex?

@tvesely If I changed the name of the function to be partition_key_to_hex, would that work?  The present function is called in only one place -- for that sole purpose.

Works for me- if I need a generic base64_to_hex function again in the future I can refactor.

LGTM

authors: kerneljake tvesely

repo: yugabyte/yb-tools


text:
虚拟机申请失败也会占用配额，导致还没达到配额上限就无法继续申请虚拟机

What happened:
虚拟机申请失败也会占用配额，导致还没达到配额上限就无法继续申请虚拟机
Environment:

OS (e.g. cat /etc/os-release):
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Kernel (e.g. uname -a):
Linux icTestothers002 3.10.0-1160.53.1.el7.yn20220518.x86_64 #1 SMP Wed May 18 02:17:25 CST 2022 x86_64 x86_64 x86_64 GNU/Linux
Service Version (e.g. kubectl exec -n onecloud $(kubectl get pods -n onecloud | grep climc | awk '{print $1}') -- climc version-list):

3.9.1

@Sphrosyne 这个问题修复过了，可以升级到最新的 v3.9.7 版本后再试试。

authors: Sphrosyne zexi

repo: yunionio/cloudpods


text:
show error with context

这个 PR 实现什么功能/修复什么问题:
返回error携带上下文信息
是否需要 backport 到之前的 release 分支:

release/2.10.0

/cc @swordqiu @yousong

Codecov Report

Merging #1211 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1211      +/-   ##
=========================================
+ Coverage     7.9%   7.91%   +<.01%
=========================================
  Files         368     368
  Lines       57866   57851      -15
=========================================
+ Hits         4576    4578       +2
+ Misses      52892   52876      -16
+ Partials      398     397       -1

Flag
Coverage Δ

#aFlag
7.91% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

pkg/compute/models/loadbalancers.go
1.96% <0%> (-0.02%)
:arrow_down:

pkg/util/ucloud/region.go
0% <0%> (ø)
:arrow_up:

pkg/util/ucloud/instance.go
0% <0%> (ø)
:arrow_up:

pkg/compute/models/loadbalancerlisteners.go
1.59% <0%> (ø)
:arrow_up:

pkg/util/ucloud/client.go
20.93% <0%> (+0.24%)
:arrow_up:

pkg/util/seclib2/seclib.go
95.74% <0%> (+4.25%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 66e70f3...711ad4d. Read the comment docs.

/lgtm
/approve

authors: codecov-io ioito swordqiu

repo: yunionio/onecloud


text:
Bugfix/yousong owrt

这个 PR 实现什么功能/修复什么问题:
hostman: openwrt: deploy public key for root
hostman: split DeployAuthorizedKeys()
hostman: openwrt: support deploy networking scripts
hostman: openwrt: deploy hostname with board config
hostman: distro name OpenWrt instead of OpenWRT

是否需要 backport 到之前的 release 分支:

release/2.10.0

/area host
/cc @wanyaoqi @swordqiu

Codecov Report

Merging #4683 into master will decrease coverage by 0.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #4683      +/-   ##
=========================================
- Coverage    6.79%   6.78%   -0.02%
=========================================
  Files         524     524
  Lines       89593   89660      +67
=========================================
- Hits         6088    6079       -9
- Misses      82998   83076      +78
+ Partials      507     505       -2

Flag
Coverage Δ

#aFlag
6.78% <0%> (-0.02%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/hostman/guestfs/fsdriver/linux.go
0% <0%> (ø)
:arrow_up:

pkg/hostman/guestfs/fsdriver/base.go
13.08% <0%> (-0.38%)
:arrow_down:

pkg/cloudcommon/cronman/cronman.go
49.51% <0%> (-5.34%)
:arrow_down:

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 96c48ca...b90a1e8. Read the comment docs.

/lgtm

/lgtm

/approve

authors: codecov-io swordqiu wanyaoqi yousong


text:
Automated cherry pick of #5252: fix: use globalEndpointType as default endpoint type

Cherry pick of #5252 on release/3.0.
#5252: fix: use globalEndpointType as default endpoint type

/approve
/lgtm

authors: swordqiu yousong


text:
Automated cherry pick of #6292: fix: 优化openstack错误处理

Cherry pick of #6292 on release/3.1.
#6292: fix: 优化openstack错误处理

Codecov Report

Merging #6294 into release/3.1 will increase coverage by 0.04%.
The diff coverage is 20.74%.

@@              Coverage Diff               @@
##           release/3.1   #6294      +/-   ##
==============================================
+ Coverage         7.45%   7.50%   +0.04%
==============================================
  Files              584     585       +1
  Lines            98663   98813     +150
==============================================
+ Hits              7354    7411      +57
- Misses           90738   90830      +92
- Partials           571     572       +1

Flag
Coverage Δ

#aFlag
7.50% <20.74%> (+0.04%)
:arrow_up:

Impacted Files
Coverage Δ

pkg/cloudcommon/db/db_dispatcher.go
0.00% <0.00%> (ø)

pkg/cloudcommon/policy/policy.go
1.58% <0.00%> (+0.04%)
:arrow_up:

pkg/cloudprovider/cloudprovider.go
1.70% <0.00%> (-0.13%)
:arrow_down:

pkg/compute/models/cloudaccounts.go
0.79% <0.00%> (+<0.01%)
:arrow_up:

pkg/compute/models/cloudproviders.go
1.00% <0.00%> (ø)

pkg/compute/models/dbinstance_accounts.go
2.31% <0.00%> (ø)

pkg/compute/models/dbinstance_databases.go
4.14% <0.00%> (ø)

pkg/compute/models/disks.go
0.55% <0.00%> (-0.01%)
:arrow_down:

pkg/compute/models/dnsrecords.go
27.52% <0.00%> (-0.39%)
:arrow_down:

pkg/compute/models/elasticcache_instances.go
1.17% <0.00%> (ø)

... and 26 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 743b4d2...08bef5e. Read the comment docs.

authors: codecov-io ioito


text:
fix: apigateway userinfo includes project metadata

这个 PR 实现什么功能/修复什么问题:
改进：在apigateway的userinfo中包含当前用户所在项目的metadata

是否需要 backport 到之前的 release 分支:

release/3.4

/area apigateway
/cc @zexi

/lgtm
/approve

authors: swordqiu zexi


text:
Automated cherry pick of #8689: fix: change owner should update quota usages

Cherry pick of #8689 on release/3.4.
#8689: fix: change owner should update quota usages

/lgtm
/approve


text:
Automated cherry pick of #9798: fix(region): optimized for qcloud prepaid instance delete

Cherry pick of #9798 on release/3.7.
#9798: fix(region): optimized for qcloud prepaid instance delete

Codecov Report

Merging #9799 (5e418ab) into release/3.7 (56d583e) will increase coverage by 9.95%.
The diff coverage is 24.00%.

@@               Coverage Diff                @@
##           release/3.7    #9799       +/-   ##
================================================
+ Coverage         6.00%   15.96%    +9.95%
================================================
  Files              845      124      -721
  Lines           131245    12786   -118459
================================================
- Hits              7879     2041     -5838
+ Misses          122665    10554   -112111
+ Partials           701      191      -510

Flag
Coverage Δ

aFlag
15.96% <24.00%> (+9.95%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/apis/input.go
0.00% <ø> (ø)

pkg/apis/list.go
0.00% <ø> (ø)

pkg/compute/guestdrivers/aliyun.go
2.56% <0.00%> (-0.17%)
:arrow_down:

pkg/compute/guestdrivers/apsara.go
13.63% <0.00%> (-0.65%)
:arrow_down:

pkg/compute/guestdrivers/managedvirtual.go
0.00% <0.00%> (ø)

pkg/compute/guestdrivers/utils.go
0.00% <0.00%> (ø)

pkg/mcclient/modules/monitor/suggestsysrule.go
100.00% <100.00%> (ø)

pkg/cloudcommon/db/resourcebase.go

pkg/compute/models/scalinggroup_network.go

pkg/hostman/system_service/sdnagent.go

... and 637 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 24e8152...5e418ab. Read the comment docs.

Codecov Report

Merging #9799 (5e418ab) into release/3.7 (56d583e) will increase coverage by 9.95%.
The diff coverage is 24.00%.

@@               Coverage Diff                @@
##           release/3.7    #9799       +/-   ##
================================================
+ Coverage         6.00%   15.96%    +9.95%
================================================
  Files              845      124      -721
  Lines           131245    12786   -118459
================================================
- Hits              7879     2041     -5838
+ Misses          122665    10554   -112111
+ Partials           701      191      -510

Flag
Coverage Δ

aFlag
15.96% <24.00%> (+9.95%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/apis/input.go
0.00% <ø> (ø)

pkg/apis/list.go
0.00% <ø> (ø)

pkg/compute/guestdrivers/aliyun.go
2.56% <0.00%> (-0.17%)
:arrow_down:

pkg/compute/guestdrivers/apsara.go
13.63% <0.00%> (-0.65%)
:arrow_down:

pkg/compute/guestdrivers/managedvirtual.go
0.00% <0.00%> (ø)

pkg/compute/guestdrivers/utils.go
0.00% <0.00%> (ø)

pkg/mcclient/modules/monitor/suggestsysrule.go
100.00% <100.00%> (ø)

pkg/cloudcommon/db/resourcebase.go

pkg/compute/models/scalinggroup_network.go

pkg/hostman/system_service/sdnagent.go

... and 637 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 24e8152...5e418ab. Read the comment docs.


text:
fix: use h2 for passwordreset headline

similar to login and signup

Codecov Report

Merging #370 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #370   +/-   ##
=======================================
  Coverage   98.67%   98.67%
=======================================
  Files         191      191
  Lines        2485     2485
=======================================
  Hits         2452     2452
  Misses         33       33

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 16c48c3...4620c12. Read the comment docs.

authors: codecov-io tiltec

repo: yunity/foodsaving-frontend


text:
[Image Captioning] out of memory immediately after training starts?

What size cards are these networks tested and trained on? I just tried running "09 - Image Captioning" and I immediately get errors. I am testing this on a Titan X with 12 GB of memory:
Namespace(batch_size=128, caption_path='./data/annotations/captions_train2014.json', crop_size=224, embed_size=256, hidden_size=512, image_dir='./data/resized2014', learning_rate=0.001, log_step=10, model_path='./models/', num_epochs=5, num_layers=1, num_workers=2, save_step=1000, vocab_path='./data/vocab.pkl')
loading annotations into memory...
Done (t=0.89s)
creating index...
index created!
THCudaCheck FAIL file=/b/wheel/pytorch-src/torch/lib/THC/generic/THCStorage.cu line=66 error=2 : out of memory
Traceback (most recent call last):
  File "train.py", line 119, in <module>
    main(args)
  File "train.py", line 66, in main
    features = encoder(images)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 206, in __call__
    result = self.forward(*input, **kwargs)
  File "/root/pytorch/pytorch-tutorial/tutorials/09 - Image Captioning/model.py", line 26, in forward
    features = self.resnet(images)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 206, in __call__
    result = self.forward(*input, **kwargs)
  File "/root/.venv/local/lib/python2.7/site-packages/torchvision/models/resnet.py", line 146, in forward
    x = self.layer3(x)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 206, in __call__
    result = self.forward(*input, **kwargs)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/container.py", line 64, in forward
    input = module(input)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 206, in __call__
    result = self.forward(*input, **kwargs)
  File "/root/.venv/local/lib/python2.7/site-packages/torchvision/models/resnet.py", line 85, in forward
    out = self.bn3(out)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 206, in __call__
    result = self.forward(*input, **kwargs)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/modules/batchnorm.py", line 43, in forward
    self.training, self.momentum, self.eps)
  File "/root/.venv/local/lib/python2.7/site-packages/torch/nn/functional.py", line 463, in batch_norm
    return f(input, weight, bias)
RuntimeError: cuda runtime error (2) : out of memory at /b/wheel/pytorch-src/torch/lib/THC/generic/THCStorage.cu:66
Command exited with non-zero status 1

I remember that the required gpu memory for batch_size=128 is less than 5GB (it may be much smaller).
What's your Python and PyTorch version? I guess you are using Python 2.7. Am i right?
This memory issue occurred when requires_grad=False does not work.
There are two options for solving this problem.

Upgrade PyTorch version
Use Python 3.5 instead of 2.7

This might be related to https://github.com/yunjey/pytorch-tutorial/issues/26
This is a known issue which will be resolved in the next release.
Till then as a workaround, just change L56 to
               images = Variable(images, volatile=True)

and L66 to
                features = encoder(images)
                features = Variable(features.data)

@yunjey  I am on python 2.7 and pytorch 0.12.  I will try your changes.
@karandwivedi42 I will also test your fix.
I will let you both know.

@jtoy I recommend you to install PyTorch using source. This will give you the latest version of PyTorch.

I tried with pytorch  python 2.7 source and  using pytorch for python 3.5, both died with the same issue.

@karandwivedi42 your changes work!  @yunjey will the code need to be updated? It seems like source doesnt seem to fix the issue.  I can do more testing if needed.

@jtoy Ok. Thanks if give me a pull request.

@karandwivedi42 That does not work.
images = Variable(images, volatile=True)

The code above makes requires_grad=False in resnet.fc.  See here for the details of volatile.

@yunjey You are right. I don't know how important it is though because this linear layer is followed by another linear layer in the decoder with no non-linearity in between.

so what is the right code to use? I was able to train a model with @karandwivedi42  change and  the model completed training for me in 155 minutes. does that time seem right? I trained the original show and tell model and I remember it taking at least a day.

Put the fc and bn as a separate module between encoder and decoder so that
they can be a part of gradient computation. Does it make sense?
On May 25, 2017 4:04 AM, "jtoy" notifications@github.com wrote:

so what is the right code to use? I was able to train a model with
@karandwivedi42 https://github.com/karandwivedi42 change and the model
completed training for me in 155 minutes. does that time seem right? I
trained the original show and tell model and I remember it taking at least
a day.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/yunjey/pytorch-tutorial/issues/35#issuecomment-303870989,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJLb6rEdGcH57EGQQA_MduX-g65DnZ_Eks5r9LBkgaJpZM4NjHj8
.

@karandwivedi42 I dont fully understand, Im just starting to play with pytorch, any way to see it as a diff ?

@jtoy This fork is a very hacky way to do exactly what the original code does.
https://github.com/karandwivedi42/pytorch-tutorial
@yunjey Can you please check this one? (Thanks for the amazing library btw :) )

@jtoy @karandwivedi42 I will fix the code by this weekend.

I have a model training on it now. I'll also test out your version of the code.

On May 25, 2017, at 10:06 PM, yunjey notifications@github.com wrote:
@jtoy @karandwivedi42 I will fix the code by this weekend.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@jtoy @karandwivedi42 I modified the code. Try it. Thanks :)

authors: jtoy karandwivedi42 yunjey

repo: yunjey/pytorch-tutorial


text:
CMake Error at CMakeLists.txt:127 (install):   install FILES given directory

In linux Cmake Error:
CMake Error at CMakeLists.txt:127 (install):
install FILES given directory
to install
Exception: Unable to generate build files

@chiragnenwa Fixed. Please try the latest version.

authors: chiragnenwa yushulx


text:
Bug: clang-formatのアクションのパスが古い

バグの説明
clang-formatのアクションのパスが古い
再現手順

...
...

期待した動作
clang-formatのアクションのパスがArduino対応後 #203 に伴って、srcとtestsの2つにする
環境

OS: [e.g. Arm Mbed OS 6]
Version [e.g. v6.15]
Device [e.g. LPC1768]

その他

デフォルトだと、下記のアクションはパスが存在しないときにはプロジェクトのルートがパスになるみたい
https://github.com/jidicula/clang-format-action/blob/ecfca62efc4fd3e8265b8cf4061cd6ff3847d3a7/check.sh#L68-L71
if [[ ! -d $CHECK_PATH ]]; then
        echo "Not a directory in the workspace, fallback to all files." >&2
        CHECK_PATH="."
fi

spirit.hもあるし、ディレクトリの指定自体いらないかも

repo: yutotnh/spirit


text:
训练效果不好

大神您好，我想问下，我从pcn完整点云数据集中，每个类别随机选200个模型，然后加上自己的30个点云模型作为一个类别valve，得到这样一个数据集； 采用adapoint模型进行训练， 其中输入是随机采样后的残缺点云，标签是下采样后的16384个点的数据；  训练过程如下图所示，自己添加的类别数据损失特别大， 模型平均fscore震荡；  这是训练策略问题还是数据问题呢？恳请大神解答，谢谢

上述问题，已找到原因，就是自己的数据没做归一化

你好，我想请问一下你用这些结果进行可视化了吗

authors: GDbbq HANYUEZHAN

repo: yuxumin/PoinTr


text:
Fail on load "ng2-validation@3.7.0

Fail to use ng2-validators. The error I get:
GET http://localhost:8081/node_modules/ng2-validation/dist/base64.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 VM3609:27 Error: (SystemJS) XHR error (404 Not Found) loading http://localhost:8081/node_modules/ng2-validation/dist/base64.js 	Error: XHR error (404 Not Found) loading http://localhost:8081/node_modules/ng2-validation/dist/base64.js 	    at XMLHttpRequest.wrapFn [as _onreadystatechange] (http://localhost:8081/node_modules/zone.js/dist/zone.js:698:29) 	    at ZoneDelegate.invokeTask (http://localhost:8081/node_modules/zone.js/dist/zone.js:265:35) 	    at Zone.runTask (http://localhost:8081/node_modules/zone.js/dist/zone.js:154:47) 	    at XMLHttpRequest.ZoneTask.invoke (http://localhost:8081/node_modules/zone.js/dist/zone.js:335:33) 	Error loading http://localhost:8081/node_modules/ng2-validation/dist/base64.js as "./base64" from http://localhost:8081/node_modules/ng2-validation/dist/index.js 	    at XMLHttpRequest.wrapFn [as _onreadystatechange] (http://localhost:8081/node_modules/zone.js/dist/zone.js:698:29) 	    at ZoneDelegate.invokeTask (http://localhost:8081/node_modules/zone.js/dist/zone.js:265:35) 	    at Zone.runTask (http://localhost:8081/node_modules/zone.js/dist/zone.js:154:47) 	    at XMLHttpRequest.ZoneTask.invoke (http://localhost:8081/node_modules/zone.js/dist/zone.js:335:33) 	Error loading http://localhost:8081/node_modules/ng2-validation/dist/base64.js as "./base64" from http://localhost:8081/node_modules/ng2-validation/dist/index.js window.console.error @ VM3609:27 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/credit-card.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/date.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/date-ios.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/digits.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/email.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/equal.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/equal-to.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/greater-than.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/json.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/less-than.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/max.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/max-date.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/min.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/min-date.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/not-equal.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/not-equal-to.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/number.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/phone.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/range.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/range-length.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/url.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339 zone.js:1382 GET http://localhost:8081/node_modules/ng2-validation/dist/uuid.js 404 (Not Found) scheduleTask @ zone.js:1382 ZoneDelegate.scheduleTask @ zone.js:245 Zone.scheduleMacroTask @ zone.js:171 (anonymous) @ zone.js:1405 send @ VM3641:3 fetchTextFromURL @ system.src.js:1051 (anonymous) @ system.src.js:1778 ZoneAwarePromise @ zone.js:518 (anonymous) @ system.src.js:1777 (anonymous) @ system.src.js:2802 (anonymous) @ system.src.js:3380 (anonymous) @ system.src.js:3694 (anonymous) @ system.src.js:4086 (anonymous) @ system.src.js:4549 (anonymous) @ system.src.js:4819 (anonymous) @ system.src.js:407 ZoneDelegate.invoke @ zone.js:232 Zone.run @ zone.js:114 (anonymous) @ zone.js:502 ZoneDelegate.invokeTask @ zone.js:265 Zone.runTask @ zone.js:154 drainMicroTaskQueue @ zone.js:401 ZoneTask.invoke @ zone.js:339
I think it happens due to this line:
var base64_1 = require('./base64');
in file:
index.js
Happend on version:
""ng2-validation@3.7.0", (ng2-validation-3.7.0.tgz_1487159437774_0.045551683055236936")

Even I am also getting the same error. did you get any solution for this?

I reverted to a working version:
"ng2-validation": "3.1.2",

please use the latest version, I had add bundles/ng2-validation.umd.js for system.js

I am facing same issue with version 4.2.0 and with ng2-validation.umd.js.
Appreciate any help on this.

authors: bosenagaraj jigarpt moshelior yuyang041060120


text:
执行 npm run dev失败

npm run dev

minio@1.0.0 dev /data/chenqi/minio-breakpoint-upload/web_src/minio
webpack-dev-server --inline --progress --config build/webpack.dev.conf.js

internal/modules/cjs/loader.js:888
throw err;
^
Error: Cannot find module 'webpack'
Require stack:

/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:885:15)
at Function.Module._load (internal/modules/cjs/loader.js:730:27)
at Module.require (internal/modules/cjs/loader.js:957:19)
at require (internal/modules/cjs/helpers.js:88:18)
at Object. (/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js:12:17)
at Module._compile (internal/modules/cjs/loader.js:1068:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
at Module.load (internal/modules/cjs/loader.js:933:32)
at Function.Module._load (internal/modules/cjs/loader.js:774:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js'
]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! minio@1.0.0 dev: webpack-dev-server --inline --progress --config build/webpack.dev.conf.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the minio@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/SENSETIME/chenqi1/.npm/_logs/2022-07-13T02_57_01_662Z-debug.log

npm run dev

minio@1.0.0 dev /data/chenqi/minio-breakpoint-upload/web_src/minio
webpack-dev-server --inline --progress --config build/webpack.dev.conf.js

internal/modules/cjs/loader.js:888 throw err; ^
Error: Cannot find module 'webpack' Require stack:

/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:885:15)
at Function.Module._load (internal/modules/cjs/loader.js:730:27)
at Module.require (internal/modules/cjs/loader.js:957:19)
at require (internal/modules/cjs/helpers.js:88:18)
at Object. (/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js:12:17)
at Module._compile (internal/modules/cjs/loader.js:1068:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
at Module.load (internal/modules/cjs/loader.js:933:32)
at Function.Module._load (internal/modules/cjs/loader.js:774:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/data/chenqi/minio-breakpoint-upload/web_src/minio/node_modules/webpack-dev-server/bin/webpack-dev-server.js'
]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! minio@1.0.0 dev: webpack-dev-server --inline --progress --config build/webpack.dev.conf.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the minio@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in: npm ERR! /home/SENSETIME/chenqi1/.npm/_logs/2022-07-13T02_57_01_662Z-debug.log

原因是应该webpack相关包不对，需要使用webpack-cli3版本：

npm i webpack-cli@3.3 -g
npm install webpack@4.30.0 -g
npm install webpack-dev-server@3.11.2 -g

但是执行以后还是不行

https://blog.csdn.net/sxs7970/article/details/88746939

https://blog.csdn.net/sxs7970/article/details/88746939

谢谢

authors: gocpplua hanzhc

repo: yuyuanshifu/minio-breakpoint-upload


text:
How do you handle the different poses for different frames on Kinects dataset?

Code version (Git Hash) and PyTorch version
Dataset used
Expected behavior
Actual behavior
Steps to reproduce the behavior
Other comments

Hi, @jingong,
Did you mean pose tracking problem?
To get skeleton sequences from single-frame poses, we simply matched the poses between two successive frames according to their rank of confidence score.
This strategy must lead to many mistakes, but the model is powerful enough to understand them.
Of course, a better matching strategy will lead to the improvement of performance.

authors: jingong yysijie

repo: yysijie/st-gcn


text:
getCrontabFileHandler()->write(), isn't erasing temp file

Every time i call write(), a new tmp file is created and never removed, if my server is running for long period, this could be an issue.
"yzalis/crontab": "^1.0"

This uses the system temp directory, and as such should automatically be deleted periodically by the operating system.
However, this does seem like a worthwhile enhancement considering portability.

It is not guaranteed that /tmp/ or /var/tmp/ are cleaned up on a regular basis. This may depend on your distribution and settings, although most systems do some cleanup from time to time.

For instance, in openSUSE, it does not, unless you configure it to (from /etc/sysconfig, or via YaST).

authors: jpuck jsbjair

repo: yzalis/Crontab


text:
Improve display of received offer in buy dialog

This is what the current offer dialog looks like:

A couple things to improve:

Make the price more prominent.
Remove the squeak hash from the display (it's not really relevant).

Duplicate of https://github.com/yzernik/squeaknode/issues/1195

how can I simulate a locked squeak on testnet?

@abhiShandy I don't have a great solution for that right now.
One idea I can think of is to modify docker-compose.yml, and set up a dummy instance of squeaknode as a container.
Another is to use https://github.com/getumbrel/umbrel-dev in testnet mode to get an extra testnet node (I have not tried this).
I personally have two raspberry pi's, so I use one for testnet and one for mainnet, but that's not ideal.

Hi @abhiShandy I made some additions to the docker-compose.yml, so now there is an extra squeaknode container running when you run docker-compose up.
You can connect to this other squeaknode with host=localhost and port=18557.

And you can access the UI for the other container in your browser at: http://localhost:12995

https://github.com/yzernik/squeaknode/pull/1792

authors: abhiShandy yzernik

repo: yzernik/squeaknode


text:
fix #2541 Filter 支持自定义 id

解决 issue #2541
关闭默认 ID 过滤器后自定义新的  ID 过滤器，示例如下：
$grid->filter(function (Grid\Filter $filter) {
    $filter->disableIdFilter();
    $filter->equal('id', '产品序列号')->setId('product_id');
});

解析：
不能在调用 disableIdFilter 方法后添加「自定义 ID 过滤器」的原因是： Filter 类的 removeIDFilterIfNeeded 会将所有 id 为 model 主键名的 filter 都移除，又因为 filter 的 id 只能为 column 名而不能自定义。所以「默认 ID 过滤器」和「自定义 ID过滤器」的 id 都为 model 主键名，统统都会被移除。因此新增了 setId 方法，允许用户自定义 id。
PS：
本人也思考过能不能实现「存在自定义就用自定义ID过滤器，不存在就用默认ID过滤器」的功能。后面实现这样似乎改动比较大，可能会有不兼容的修改。所以采用这个折中的方法。当然如果有更好的方法，就更好了！

谢谢！

authors: z-song zanemmm

repo: z-song/laravel-admin


text:
XSS

Hello,
I've noticed that string passed to the constructor MvcBreadcrumNode don't prevent xss attacks.
(Maybe because they're not escaped before rendering)
My workaround is to encapsulate my string with HttpUtility.HtmlEncode(string) but it's a tedious process.
Is there a workaround built-in your library?
Thank you very much
The escaped version:

Without workaround:

Isn't that the tile of the page?

No string is escaped in the library since I thought everything would be manually set by the developer, can you give me your scenario please?

Sure, my application (web application with netcore) permits to create objects such as application, equipment or whatever.
The user can enter a name, a description and few informations for each objects.
(The creation has this breadcrumb for example: Home > Applications >  New Application)
Then I have a listing of objects with this breadcrumb:
Home > Applications
Finally, the user can view the object created (basically a simple CRUD) with this expected breadcrumb: Home > Applications > "Name of application".
An application's name can have special characteres such as ',",<, >, etc. All labels and fields in aspnet prevent xss attacks (all displayed strings are escaped automagically) and if I remove the Breadcrumb of my view, the script injected isn't executed.
To summarize, I want to be able to display strings from end users in the breadcrumb without any risk of injection of any sort.

Now I understand. I will fix this issue asap!

Hi, this is now fixed in 3.1, download the new version for NuGet!

authors: Sparox zHaytam

repo: zHaytam/SmartBreadcrumbs


text:
能否支持模块化？

让方法支持require.js或者sea.js？求支持

https://segmentfault.com/a/1190000003732752
模仿这个封包一下就行了


text:
Adding media to newly created user fails

We've noticed an issue with Zabbix Server 5.0.8 and ldap-sync where a newly created user won't get the specified media entry added.
Error in question;
2021-04-21 15:48:00,967 - INFO    - pyzabbix:65 - JSON-RPC Server Endpoint: https://zabbix.url/api_jsonrpc.php
2021-04-21 15:48:01,084 - INFO    - ZabbixConn:69 - Connected to Zabbix API Version 5.0.8
2021-04-21 15:48:01,118 - INFO    - ZabbixConn:309 - Creating Zabbix group ZabbixGroup
2021-04-21 15:48:01,155 - INFO    - ZabbixConn:312 - Group ZabbixGroup created with groupid 41
2021-04-21 15:48:01,288 - INFO    - ZabbixConn:393 - Updating user "user@emailaddress.com", adding to group "ZabbixGroup"
2021-04-21 15:48:03,480 - INFO    - ZabbixConn:376 - Created user seconduser@emailaddress.com and membership of Zabbix group >>ZabbixGroup<<
2021-04-21 15:48:04,095 - INFO    - ZabbixConn:423 - Add media only on newly created users for group >>>ZabbixGroup<<<
2021-04-21 15:48:04,096 - INFO    - ZabbixConn:440 - >>> Updating/create user media for "user@emailaddress.com", update "Email (HTML)"
Traceback (most recent call last):
File "zabbix-ldap-sync", line 103, in
main()
File "zabbix-ldap-sync", line 99, in main
zabbix_conn.sync_users()
File "/etc/zabbix/zabbix-ldap-sync/zabbix-ldap-sync/lib/zabbixconn.py", line 441, in sync_users
self.update_media(each_user, self.media_name, sendto, media_opt_filtered)
File "/etc/zabbix/zabbix-ldap-sync/zabbix-ldap-sync/lib/zabbixconn.py", line 253, in update_media
mediatypeid = self.get_mediatype_id(description)
File "/etc/zabbix/zabbix-ldap-sync/zabbix-ldap-sync/lib/zabbixconn.py", line 99, in get_mediatype_id
raise Exception(f"Ambiguous media found, {len(result)} different medias")
Exception: Ambiguous media found, 0 different medias
configuration file for ldap contains the following;
[media]
description = Email
severity = Disaster, High, Average, Warning
active = 0
period = 1-7,00:00-24:00
onlycreate = true
It seems that the scripts tries to update the first use to be synced, and fails. Also the media type description doesn't seem to match the configured media type description.

It seems that there is no media type "Email" in your zabbix setup.
I improved the error output to help users to get a better idea whats going wrong.

Actually we do, named "Email"

That's strange. I do not have access to a zabbix 5.0 setup.
Your error output  references a mail resource "Email (HTML)" and you config references the "description = Email".
I think you just should rename "description = Email" to "name = Email".

authors: Zimeon- scoopex

repo: zabbix-tooling/zabbix-ldap-sync


text:
Uncaught (in promise) DOMException: IDBDatabase.transaction: 'meta' is not a known object store name

Hi,
thank you for your effort updating the random-access-idb library. I finally got Hyperbee running in the browser persisting data 👍
I face an issue when I try to run my app in firefox:
On first call:

On subsequent calls:

Running it in a Chromium based browser it works.

import Hyperbee from 'hyperbee';
import Corestore from 'hypercore'

import defaultMaker from "./../assets/rai.min.js"; // <= Version 3.1.2
export async function initHDB(){

    const core = new Corestore( (file) => defaultMaker(file, {directory: "/local/"}) )
    const db = new Hyperbee(core, {keyEncoding: 'utf-8', valueEncoding: 'json'})

    return db;
}

If you need more information please let me know :)
Best regards

I changed the import to the index.js instead of index.min.js and now it works also in firefox.
Error 70

Apologies, been rather busy lately. I will definitely look into why the bundle isn't working.

Bundle should be working on update I'm pushing in few moments.

authors: mueslie zacharygriffee

repo: zacharygriffee/random-access-idb


text:
Report if IAM users have or use passwords

Passwords are not allowed.
http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html
http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html
PasswordLastUsed != null

+1

This check is only for manually added users (all IAM users) -> condition: PasswordLastUsed != null
this check is not correlated with aws events, we should run this check once a day, maybe in the evening/night

similar as #37

authors: hjacobs mrandi sarnowski

repo: zalando-stups/fullstop


text:
Added support for AWS KMS transparent decryption

Added support for AWS KMS transparent decryption of the whole configuration json for sensitive data.

lgtm
@amjedonline ?

I'll wait for @amjedonline's feedback while I draft a new release

I have merged the PR.
There are a couple of thoughts though.

Can we have a way to forego the load request if an earlier call to load the content is still in waiting/backoff process ?
@lmineiro like to see Hystrix integration in your new release  :)
Refactor Github, Etcd Repositories to reuse the above resilience/retry method.. or shall I create a new Issue for that ?

Regarding 1, I've thought about it and it won't come to that. The reload happens every 60secs and the retry strategy should fail before that. I personally never thought about so large configurations that they could end up using the entire 60sec slot to download and process. A locking mechanism would prevent this.
Maybe a separate issue.
Regarding 2 and 3. Why not.

Quick note regarding 1 - KMS allows to encrypt blocks only up to 4kB, so download time shouldn't be a problem at all. The problem could be only if KMS becomes temporarily unavailable and that's when the retry strategy should kick in.

I wasn't personally worried about the KMS decryption alone. It's about fetching the JSON + processing the entire configuration (including multiple decryption requests). This is triggered by a background thread. In case of slow networks, retransmission, retries or whatever reasons, both steps can actually take "some time".
@amjedonline's concerns where about making sure that whatever the time, the background thread wouldn't start triggering multiple concurrent configuration updates.
I'm very confident that for this repository (S3) we did some efforts to prevent it. We used the ScheduledThreadPoolExecutor with a size of 1. That means that if the only thread in the pool is still busy, we won't trigger another background reload until that one is done. It may throw an exception though.

authors: amjedonline lmineiro xjrk58

repo: zalando/baigan-config


text:
Upgrade from 1.5.3 -> 2.0.2 breaks Flask-JWT-Extended

Description
I've been using Connexion 1.X with Flask-JWT-Extended for multiple years without issue. I recently started a new project, and decided to start with Connexion 2.0.2. Unfortunately, it appears that Connexion 2.0.2 breaks Flask-JWT-Extended. Every unit test I have that tests against a protected endpoint fails with 2.0.2, but works with 1.5.3 and below.
Expected behaviour
Flask-JWT-Extended decorators should work for Connexion endpoints.
Actual behaviour
Any HTTP requests sent to Flask-JWT-Extended protected endpoints fail with "No authentication token provided."
Steps to reproduce
I have a Flask app that eposes a small set of REST APIs, and the project I'm building them in has a set of unit tests. The test process is to start an instance of the API server in a Kubernetes container, then run a set of tests that make requests to the APIs. In my local environment, the tests run from an OS X shell, and make http requests to the server running in a minikube container. In my Jenkins environment, the tests run from one container, and make http requests to the server in another container.
The issue is that the tests all pass in my local environment, but any test that runs against a flask-jwt-extended endpoint in my Jenkins environment fail due to missing access token errors from the flask-jwt-extended decorators.
Here is the request handler method and decorator for the first test that fails with this symptom.
# The /login enpoint with the GET verb is intended to be used by client apps
# to reload the user's application data when needed (e.g. after an application
# refresh, or browser restart)
@jwt_refresh_token_required
def search():
    """Handles GET verb for /login endpoint"""
    return jsonify(hydrate(g.user)), 200

I have before_request and after_request logging enabled with the following code:
@FAPP.before_request
def before_request():
    """Method to do work before the request"""
    # Ensure there is a database session available for the request
    g.db_session = DBSESSION()

    # Log request headers & body if FLASK_DEBUG > 1
    if 'FLASK_DEBUG' in os.environ and int(os.environ['FLASK_DEBUG']) >= 2:
        LOGGER.debug('Starting request for path %s', request.url)
        LOGGER.debug('Request Headers: %s', request.headers)
        LOGGER.debug('Request Body: %s', request.get_data())
        LOGGER.debug('Request Cookies: ' + str(request.cookies))

and
@FAPP.after_request
def after_request(resp):
    """Method to do work after the request"""
    # Log request headers & body if FLASK_DEBUG > 1
    if 'FLASK_DEBUG' in os.environ and int(os.environ['FLASK_DEBUG']) >= 2:
        LOGGER.debug('Response Headers: %s', resp.headers)
        LOGGER.debug('Response Body: %s', resp.get_data())

Here is a snippet of the logs from the server in the Jenkins test that is failing
[2018-12-01 11:59:52,854] DEBUG in server: Starting request for path http://rftw-jenkins-test-server.wittlesouth:8280/api/v1/login
[2018-12-01 11:59:52,854] DEBUG in server: Request Headers: Accept: */*
X-Csrf-Token: 510f5491-8e2c-4c49-add9-b7bcf21de353
Cookie: refresh_token_cookie=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYmYiOjE1NDM2NjU1OTIsImV4cCI6MTU0NjI1NzU5MiwiaWRlbnRpdHkiOiI4ZjkyNGQ4OC0zNzUyLTQzYzYtODhiOC1mNjA0Yzc4MzAyZGMiLCJ0eXBlIjoicmVmcmVzaCIsImp0aSI6IjJjZjYxMTY1LTkxYzQtNDJmYS1iYTk1LWU0Njc0YjY1N2Y1MiIsImNzcmYiOiI1MTBmNTQ5MS04ZTJjLTRjNDktYWRkOS1iN2JjZjIxZGUzNTMiLCJpYXQiOjE1NDM2NjU1OTJ9.Zmaw-Zar1psqzVbGyKnttbQZW9zwbIuOytEkrKpNuYU; access_token_cookie=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYmYiOjE1NDM2NjU1OTIsImV4cCI6MTU0MzY2NzM5MiwidHlwZSI6ImFjY2VzcyIsImp0aSI6ImViMWFmNTA5LTRjOWUtNGQ1MS04Yzg1LWRlMzJmODNlOGU0NCIsImNzcmYiOiJmZjYyOTMyNC02OWI5LTQ0MGMtYTM5ZC1kMWQwNDdiMzFkNzMiLCJmcmVzaCI6ZmFsc2UsImlkZW50aXR5IjoiOGY5MjRkODgtMzc1Mi00M2M2LTg4YjgtZjYwNGM3ODMwMmRjIiwiaWF0IjoxNTQzNjY1NTkyfQ.p1_RVP0rhnzcRvhVxqjtMMa7wpCeM7Ymcvii5A3HN2w; csrf_refresh_token=510f5491-8e2c-4c49-add9-b7bcf21de353; csrf_access_token=ff629324-69b9-440c-a39d-d1d047b31d73
Host: rftw-jenkins-test-server.wittlesouth:8280
User-Agent: python-requests/2.20.1
Connection: keep-alive
Accept-Encoding: gzip, deflate

[2018-12-01 11:59:52,854] DEBUG in server: Request Body: b''
[2018-12-01 11:59:52,854] DEBUG in server: Request Cookies: {'csrf_refresh_token': '510f5491-8e2c-4c49-add9-b7bcf21de353', 'refresh_token_cookie': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYmYiOjE1NDM2NjU1OTIsImV4cCI6MTU0NjI1NzU5MiwiaWRlbnRpdHkiOiI4ZjkyNGQ4OC0zNzUyLTQzYzYtODhiOC1mNjA0Yzc4MzAyZGMiLCJ0eXBlIjoicmVmcmVzaCIsImp0aSI6IjJjZjYxMTY1LTkxYzQtNDJmYS1iYTk1LWU0Njc0YjY1N2Y1MiIsImNzcmYiOiI1MTBmNTQ5MS04ZTJjLTRjNDktYWRkOS1iN2JjZjIxZGUzNTMiLCJpYXQiOjE1NDM2NjU1OTJ9.Zmaw-Zar1psqzVbGyKnttbQZW9zwbIuOytEkrKpNuYU', 'access_token_cookie': 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYmYiOjE1NDM2NjU1OTIsImV4cCI6MTU0MzY2NzM5MiwidHlwZSI6ImFjY2VzcyIsImp0aSI6ImViMWFmNTA5LTRjOWUtNGQ1MS04Yzg1LWRlMzJmODNlOGU0NCIsImNzcmYiOiJmZjYyOTMyNC02OWI5LTQ0MGMtYTM5ZC1kMWQwNDdiMzFkNzMiLCJmcmVzaCI6ZmFsc2UsImlkZW50aXR5IjoiOGY5MjRkODgtMzc1Mi00M2M2LTg4YjgtZjYwNGM3ODMwMmRjIiwiaWF0IjoxNTQzNjY1NTkyfQ.p1_RVP0rhnzcRvhVxqjtMMa7wpCeM7Ymcvii5A3HN2w', 'csrf_access_token': 'ff629324-69b9-440c-a39d-d1d047b31d73'}
[2018-12-01 11:59:52,855] DEBUG in server: Response Headers: Content-Type: application/problem+json
Content-Length: 119

[2018-12-01 11:59:52,855] DEBUG in server: Response Body: b'{\n  "detail": "No authorization token provided",\n  "status": 401,\n  "title": "Unauthorized",\n  "type": "about:blank"\n}\n'
10.47.0.13 - - [01/Dec/2018 11:59:52] "GET /api/v1/login HTTP/1.1" 401 -

Although the refresh-token-cookie required by the @jwt_refresh_token_required decorator is present in the request, the operation still fails with the error "No authorization token provided".
Here is the section of the server code where I set the flask JWT configuration.
FAPP.config['JWT_TOKEN_LOCATION'] = ['cookies']
if 'RFTW' in os.environ and os.environ['RFTW'] == 'PROD':
    FAPP.config['JWT_COOKIE_SECURE'] = True
else:
    FAPP.config['JWT_COOKIE_SECURE'] = False
FAPP.config['JWT_ACCESS_COOKIE_PATH'] = '/'
FAPP.config['JWT_ACCESS_TOKEN_EXPIRES'] = datetime.timedelta(minutes=30)
FAPP.config['JWT_REFRESH_COOKIE_PATH'] = os.environ['API_PATH']
FAPP.config['JWT_REFRESH_TOKEN_EXPIRES'] = datetime.timedelta(days=30)
FAPP.config['JWT_SESSION_COOKIE'] = False
FAPP.config['JWT_COOKIE_CSRF_PROTECT'] = True
FAPP.config['JWT_CSRF_METHODS'] = ['POST', 'PUT', 'PATCH', 'DELETE', 'GET']

The container specs for the server container are not identical for the local environment vs. the Jenkins environment, but base image and python-related packages installed are the same. Here are the key parts of the local test server container spec for each.
Local test environment (where the server application works correctly):
FROM ubuntu:16.04
LABEL maintainer="eric@wittlesouth.com" project="ourlifestories.net"
RUN apt-get update -y
RUN apt-get install -y python3-pip python3-dev build-essential mysql-client libmysqlclient-dev curl sudo
ADD requirements.txt /
RUN pip3 install -r /requirements.txt
CMD ["bash", "-c", "${SERVER_COMMAND}"]

Jenkins test environment (where the above issue happens):
FROM ubuntu:16.04
LABEL maintainer="eric@wittlesouth.com" project="Roadmaps FTW"
RUN apt-get update -y
RUN apt-get install -y python3-pip python3-dev build-essential mysql-client libmysqlclient-dev curl sudo
# Below doesn't seem to work to get time correct on server
# RUN sudo echo "America/New_York" > /etc/timezone
# RUN sudo dpkg-reconfigure -f noninteractive tzdata
ADD requirements.txt /
RUN pip3 install -r /requirements.txt
RUN mkdir /app
ADD src /app/
CMD ["bash", "-c", "${SERVER_COMMAND}"]

If I change the Connexion version to 1.5.3, everything works fine. If I use 2.0.2, all endpoints with Flask-JWT-Extended decorators return errors. Endpoints without decorators work fine.
Additional info:
Output of the commands:

python --version = 3.5.3
pip show connexion | grep "^Version\:" = 2.0.2
Flask-JWT-Extended version is 3.13.1

Let me know if any additional information would be beneficial.

Hey @wittlesouth - I'm not super familiar with the auth parts in Connexion 2.0, but @krise3k may be able to help.
I think your issue might be from applying the decorator to the handler function, which would apply auth much too late (after the entire connexion layer).
There are docs on how to set your auth function here : https://github.com/zalando/connexion/blob/master/docs/security.rst
Hope that helps!

Facing the same issue.

@dtkav - Maybe I wasn't clear what I'm trying to do. I don't want to use any part of the Connexion 2.0 authorization right now; I have already implemented authorization using the flask-JWT-extended package. My authorization works fine with Connexion 1.5.3, and fails with 2.0.2. Therefore, I'm pretty sure that there is a conflict between the two packages. It hasn't irritated me enough yet to figure out what it is on my own, but it's getting close.

hey @wittlesouth - I understand what you're trying to do. Sorry that it's frustrating.
One thing to note is that applying a security decorator to the handler function is fundamentally insecure.
In addition, Connexion uses semantic versioning, so 2.0.x is a major revision bump, and includes some backwards-incompatible changes. You can always pin connexion to 1.5.3.
If you still want to upgrade to connexion 2.0, and are ok with applying the security decorator in an insecure way, then I'm happy to help debug.
In the readme, under 'new in connexion 2.0', there's a section that reads:

If unsupported security requirements are defined or x-tokenInfoFunc/x-tokenInfoUrl is missing, connexion now denies requests instead of allowing access without security-check.

Based on this, I think you may need to set x-tokenInfoFunc and bypass connexion auth.
It would help me to tease apart the two issues you're having (environment, version) - can you confirm that connexion 2.0 doesn't work for you in either environment?

One more update. I went and read through the 2.0 security doc quickly, and checked out the sample app even more quickly. I would guess based on that quick read-through, the "unsupported security requirements are defined" statement is likely to refer to the API specification. I frankly forgot that my API specification does include some attempt to define the security approach for the API. As far as I know, in connexion versions prior to 2.0, this specification had no effect, and at best was useful for generated documentation.
Do you know if I remove the security specification from the API spec entirely, will connexion 2.0 revert to 1.X behavior, namely avoiding any attempt at authentication / security?
I took a quick look a the JWT example, from that example it doesn't appear that the JWT implementation in Connexion is nearly as rich as what Flask-JWT-Extended provides. Specifically, I'm using both authentication and refresh tokens (with different time to live values), as well as including the tokens in form posts for (hopefully) CSRF protection. It wasn't clear from my admittedly quick read that the Connexion JWT implementation supports either of these capabilities.

I frankly forgot that my API specification does include some attempt to define the security approach for the API. As far as I know, in connexion versions prior to 2.0, this specification had no effect, and at best was useful for generated documentation.

The purpose of connexion is to automatically do authentication, validation, serialization/de-serialization based on this specification. The idea is that the spec defines the interface (which connection handles), and then you define the business logic in the handler function.
In connexion 1.5.3, the only supported method of auth was oauth2 (IIRC). It would pass through any other auth methods (without doing any auth). This behavior was changed in connexion 2.0 to require the user to provide an auth handler if they had specified an auth method. You can set this auth handler to a pass-through if you like.

Can you elaborate, or provide a reference, as to how "applying a security decorator is fundamentally insecure"? That is the fundamental methodology of Flask-JWT-Extended and numerous other Flask extensions for authentication I reviewed before I selected a package.

The way connexion is implemented is basically by applying several decorators to each handler function. The connexion security decorator is applied first, so that the minimal amount of connexion code runs before the security decorator is applied.
If you apply the decorator to the handler function, what's basically happening is (pseudocode):
@connexion_security
@connexion_array_handling
@connexion_validation
@connexion_deserialization
@connexion_etc...
@jwt_refresh_token_required
def search():
    """Handles GET verb for /login endpoint"""
    return jsonify(hydrate(g.user)), 200

And all of that code is running before your jwt_refresh_token_requried decorator, so your attack surface is really large, and your users will only get an auth error if they provide a perfectly formatted payload (otherwise they'll get a validation error).
What you're doing in connexion 1.5.3 is this:
@connexion_security  # pass through - doesn't support JWT auth!
@connexion_array_handling
@connexion_validation
@connexion_deserialization
@connexion_etc...
@jwt_refresh_token_required
def search():
    """Handles GET verb for /login endpoint"""
    return jsonify(hydrate(g.user)), 200

what's happening in 2.0.x is this:
@connexion_security  # AUTH ERROR! Connexion 2.0.x is more strict!
@connexion_array_handling
@connexion_validation
@connexion_deserialization
@connexion_etc...
@jwt_refresh_token_required
def search():
    """Handles GET verb for /login endpoint"""
    return jsonify(hydrate(g.user)), 200

What does "If unsupported security requirements are defined" mean? Are you talking about security requirements in the API specification, or somewhere else? I certainly don't think I intended to configure any security validation by Connexion, so I assumed that this statement would not apply to me.

If you have security definitions in your spec, then they are "defined" for the purpose of connexion.

I took a quick look a the JWT example, from that example it doesn't appear that the JWT implementation in Connexion is nearly as rich as what Flask-JWT-Extended provides
...
It wasn't clear from my admittedly quick read that the Connexion JWT implementation supports either of these capabilities.

Connexion doesn't implement JWT - but it does currently pull the Bearer token from the header and then passes it to the function that you've registered with x-BearerInfoFunc in the spec.
AFAICT for your use case there is a missing features required before you could register an equivalent jwt function with x-BearerInfoFunc:
a) ability to use cookies with JWT auth
There is some work going on in #791 to support cookies, but I'm not sure it will work with JWT.
After that, you should be able to write a x-BearerInfoFunc that just calls flask_jwt_extended.verify_jwt_refresh_token_in_request().

@krise3k please jump in if you have some ideas for how to implement cookies for JWT and/or passing multiple tokens, or if you have any other ideas on how to help @wittlesouth

@cziebuhr do you have any thoughts / ideas on supporting JWT refresh tokens and cookies?

Do you have security defined in your swagger.spec? If you remove that, connexion won't do any authentication/authorization and you should be able to use your own decorators.

The answers above provide an extensive set of options for further investigation on my part. I need to do some more reading and an experiment or two. Unfortunately with this busy time of year, it is likely to be several days before I come back to this.

OK, I was wrong about how long it would take me to come back. Some more reading has lead me to a somewhat different conclusion. According to the OpenAPI 3.0 specification, the only valid authentication types in the spec are defined ("apiKey", "http", "oauth2", "openIdConnect"). Most of these (except openIdConnect) seem to be directly supported by one of the methods defined in the Connexion 2.0 security section. It doesn't appear that the authentication schemes provided by Flask-JWT-Extended comply with any of the authentication protocols defined in the OpenAPI 3.0 spec. And that would lead me to the conclusion that if I want a OpenAPI 3.0 compliant specification, I need to omit the security definition component of the API spec.
Am I reading the OpenAPI docs correctly?
Flask-JWT-Extended is pretty customizable. In my implementation, there are four distinct authentication components, the first two of which are HTTP only:

access_token_cookie - This essentially represents a session; identifies a user and has a ~30 minute timeout
refresh_token_cookie - This identifies a user and has a much longer timeout, but requires a reload before making data changes
csrf_access_token - required to be passed back to the server in a custom HTTP header for session-oriented requests
csrf_refresh_token - required to be passed back to the server in a custom HTTP header for identity-oriented requests (that are accessible after an individual session has expired)

Successful back-end authentication varies by which decorator you use, but can be based on either of the two HTTP only cookies as well as a request header with one of the two csrf tokens.
Correctly documenting the security requirements of any of my API endpoints would require documenting which of the two HTTP only cookies is required, as well as which of the two CSRF tokens, if any, is required in the header. Since Flask-JWT-Extended allows customization of the cookie names, and HTTP header name, those would need to be able to be documented.
If the schemes provided by Flask-JWT-Extended are formalized in a IETF document, I'd be surprised.
If I've read the OpenAPI 3.0 docs correctly, please let me know, and I'll close this issue. I will then need to decide whether to continue with the authentication schema I have (with the security requirements documented outside the formal API docs), or convert my application to an IETF standard authentication approach supported by the OpenAPI 3.0 specification.

I removed the security specification from my APIs, and I'm now able to run Connexion 2.1 without an error. Thank you for the detailed responses, that pointed me in the right direction. I don't know if this problem is going to trip up others, but it would have helped me if there was a debug log message or something in the error message response that showed that the missing token detection error was generated from Connexion. The error text was similar enough to what Flask-JWT-Extended generates when its decorators detect a missing token that I looked there first.

@wittlesouth - Excellent summary. I have been stumped on this issue for a while and was stalling the upgrade to 2.x. I also concur that if I remove security specs, I can still apply whatever method I need to authorize the token.

authors: ctippur cziebuhr dtkav wittlesouth

repo: zalando/connexion


text:
Align accepted filetypes with docstring description

The docs state the filetype Can be one of {‘netCDF3’, ‘netCDF4’, ‘HDF’, ‘TIFF’, ‘GRIB’, ‘FITS’, ‘dmrpp’, ‘zarr_v3’, ‘kerchunk’}" but in reality few of these arguments actually worked due to case sensitivity.

Also TIFF and GRIB don't currently work

Also TIFF and GRIB don't currently work

TIFF doesn't even work for Kerchunk-backed virtualization?

Thanks! Is the string type tested explicitly anywhere?

String type is tested, but a non-string and non-FileType type isn't. I'm working on getting to 100% code coverage for this section now (apologies for not thinking to put this as a draft first)

TIFF doesn't even work for Kerchunk-backed virtualization?

Not right now, see https://github.com/zarr-developers/VirtualiZarr/issues/291

(apologies for not thinking to put this as a draft first)

No worries at all - thank you for taking initiative to improve this!

I'm confident the test failures are unrelated to this PR but won't have time to investigate more until Thursday or Friday

authors: TomNicholas maxrjones

repo: zarr-developers/VirtualiZarr


text:
Fix minimum numpy pin

Fixes a mistake in https://github.com/zarr-developers/numcodecs/pull/622
Also fixes issues introduced by https://github.com/zarr-developers/numcodecs/pull/524. The problem was zarr==3 has a numpy>=1.25 pin, which doesn't adhere to SPEC 0 and our pin (currently numpy>=1.24), so on Python 3.11 don't install and run the zarr v3 tests.

Thanks!

authors: dstansby normanrz

repo: zarr-developers/numcodecs