Support anonymous through boto to work with public S3 assets

Here's a first pass that could go in __init__.
The big downside is that it does a try-except with an actual network call. Ideally, there would be a way in boto3 just to check if no creds were configured, and if not fall back to trying UNSIGNED.
        # fallback to trying anonymous "UNSIGNED" requests, which can be used
        # if assets are public
        try:
            self.client.list_buckets()
        except NoCredentialsError:
            self.client = self.sess.client('s3', config=Config(signature_version=UNSIGNED))

        try:
            list(self.s3.buckets.limit(1))
        except NoCredentialsError:
            self.s3 = self.sess.resource("s3", config=Config(signature_version=UNSIGNED))

I think the AWS CLI requires you to explicitly pass --no-sign-request to do UNSIGNED. It seems reasonable to me that we do the same, and have a parameter with the same name.
If it's annoying, then we could try to do it automatically in the future and have some kind of "auto" setting?

Great, I think a no_sign_request kwarg to the client is a good solution for now.


Unsupported Feature Section - Website Reformatting

Description
This PR contains re-organization files that should deliver the Unsupported Features and Workarounds in a more user-friendly order.  This is the first step in a long-term implementation that will include adding work-arounds for missing functionality groups.
Issues Resolved
This PR contains re-organization files that should deliver the Unsupported Features and Workarounds in a more user-friendly order.  This is the first step in a long-term implementation that will include adding work-arounds for missing functionality groups.
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the BSD-3-Clause License.

I could not agree more... and that's where I'm headed.  The limitations table originally was an unsupported features table, and for some reason, when we started releasing updates, we started noting supported functionality.  We need to break out the versions/statement types and go back to tracking only those items that are unsupported (so we can provide workarounds).
The intent of this PR was primarily to reformat the website.  The 'supported' and 'unsupported' behaviors are what we had previously documented in the table - I'll be updating and adding pages soon, but I'd like to get the section broken out (I'm trying to avoid a bunch of merge conflicts with the Manatee release).


Suggests "where" autocompletion at the end of a sentence

I am writing comments, and after typing a text like
/// Returns whether the two types are equal up to lifetimes.

when I typed the final ., a menu suggesting "where" as autocompletion appears, so when I hit enter to start a new line, it instead inserts the text "where" at the end of the previous line. That is quite annoying, I have to hit escape-enter each time I want to start a new line.
Is there a way to make RA not auto-complete when writing comments?

That was in the rustc codebase. In https://github.com/Gilnaa/memoffset/, it suggests a whole bunch of things, the first being "const", so that is what is inserts on .<enter>.

Duplicate of #4907?

Indeed, thanks.


[BUG] - Incompatible k3s version for kubeflow

Describe the bug
There's bug on kubeflow part, they currently don't support k8s 1.22, so at the moment kubeflow pipelines seems to work, with k3s, but e.g. kf-dashboard is failing, which might be related to unsupported k8s API version.
...
 ⏳     Working...
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-crds/base": no matches for kind "CustomResourceDefinition" in version "apiextensions.k8s.io/v1beta1"
...
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-install/base": no matches for kind "EnvoyFilter" in version "networking.istio.io/v1alpha3"
...
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-install/base": no matches for kind "Gateway" in version "networking.istio.io/v1alpha3"
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-install/base": no matches for kind "AuthorizationPolicy" in version "security.istio.io/v1beta1"
...
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-install/base": no matches for kind "MutatingWebhookConfiguration" in version "admissionregistration.k8s.io/v1beta1"
 🚀 unable to recognize "/home/user/.k3ai/git/common/istio-1-9/istio-install/base": no matches for kind "ValidatingWebhookConfiguration" in version "admissionregistration.k8s.io/v1beta1"
...

To Reproduce
k3ai plugin deploy -n kf-dashboard -t myk3scluster
Expected behavior
Successful deployment of all kubeflow components on k3s.

Hi @Adiqq thanks for the issue, you may quickly solve this using an extra config in K3s like
export INSTALL_K3S_VERSION="v1.19.1+k3s1" && \
  k3ai cluster deploy --type k3s -n kubeflow-test && \
  k3ai plugin deploy -n kf-dashboard -t kubeflow-test

I have to put this into the docs thought...
I also think some components like the KF-dashboard are failing due to other errors. I have to come back and revisit some plugins.


Long Processing Times when extracting subtitles

Hello,
I am having Two Issues around Subtitles, the first long is that it takes a long time to process Certain subtitles (Seems mainly Anime), upwards of 9hrs during the extraction (Log Extract Below, see Timestamps). I suspect it may have something to do with the Subtitle CleanIT module, but i am unable to find corresponding logs for what cleanit may or may not be doing. Is cleanit logs outputed somewhere that i could review when leveraging your docker containers?
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 3 into external file.
2022-09-05 07:07:03 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.srt created.
2022-09-05 07:07:03 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 4 into external file.
2022-09-05 07:07:17 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.2.srt created.
2022-09-05 07:07:17 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 5 into external file.
2022-09-05 07:07:30 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.forced.srt created.
2022-09-05 16:09:53 - resources.mediaprocessor - INFO - Starting conversion.
2022-09-05 16:10:41 - resources.mediaprocessor - INFO - FFmpeg command:

The Second Issue that i am facing is i am using your Docker Containers that bundle up Sonarr/Radarr with your scripts (Thanks for that), i am seeing an error that an encoder for PGS is not supported in the build of FFMPEG that comes with the container. This error is slightly confusing for me as PGS copy seems to work for some files but not others so slightly unsure how to TS this one
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - ===========WARNING===========
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - The encoder you have chosen pgs (copy) is not listed as supported in your FFMPEG build, conversion will likely fail, please use a build of FFMPEG that supports copy or choose a different encoder.
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - ===========WARNING===========

autoProcess.ini settings
`[Converter]
ffmpeg = ffmpeg
ffprobe = ffprobe
threads = 0
hwaccels =
hwaccel-decoders = h264_cuvid, mjpeg_cuvid, mpeg1_cuvid, mpeg2_cuvid, mpeg4_cuvid, vc1_cuvid, hevc_qsv, h264_qsv, hevc_vaapi, h264_vaapi
hwdevices = vaapi:/dev/dri/renderD128
hwaccel-output-format = vaapi:vaapi
output-directory =
output-format = mkv
output-extension = mkv
temp-extension = mkvtemp
minimum-size = 0
ignored-extensions = nfo, ds_store
copy-to =
move-to =
delete-original = True
process-same-extensions = True
bypass-if-copying-all = False
force-convert = False
post-process = False
wait-post-process = False
detailed-progress = False
opts-separator = ,
preopts =
postopts =
regex-directory-replace = [^\w\-_\. ]
temp-output = False

[Permissions]
chmod = 0644
uid = -1
gid = -1

[Metadata]
relocate-moov = True
full-path-guess = True
tag = True
tag-language = eng
download-artwork = poster
sanitize-disposition =
strip-metadata = True
keep-titles = False

[Video]
codec = h264, x264
max-bitrate = 0
bitrate-ratio =
crf = -1
crf-profiles =
preset =
codec-parameters =
dynamic-parameters = False
max-width = 0
profile =
max-level = 0.0
pix-fmt =
filter =
force-filter = False
prioritize-source-pix-fmt = True

[HDR]
codec =
pix-fmt =
space = bt2020nc
transfer = smpte2084
primaries = bt2020
preset =
codec-parameters =
filter =
force-filter = False
profile =

[Audio]
codec = ac3
languages =
default-language =
first-stream-of-language = False
allow-language-relax = True
channel-bitrate = 0
max-bitrate = 0
max-channels = 0
filter =
force-filter = False
sample-rates =
sample-format =
copy-original = True
aac-adtstoasc = False
ignore-truehd = mp4, m4v
ignored-dispositions =
unique-dispositions = False
stream-codec-combinations =
variable-bitrate = 0
profile =
relax-to-default = False
force-default = False

[Universal Audio]
codec = aac
channel-bitrate = 128
first-stream-only = True
filter =
force-filter = False
variable-bitrate = 0
profile =

[Audio.ChannelFilters]
6-2 = pan=stereo|FL=0.5*FC+0.707*FL+0.707*BL+0.5*LFE|FR=0.5*FC+0.707*FR+0.707*BR+0.5*LFE

[Subtitle]
codec = srt
codec-image-based = pgs
languages = eng
default-language = eng
first-stream-of-language = False
encoding =
burn-subtitles = False
burn-dispositions =
embed-subs = False
embed-image-subs = True
embed-only-internal-subs = True
filename-dispositions = forced
ignore-embedded-subs = False
ignored-dispositions =
unique-dispositions = False
attachment-codec =
remove-bitstream-subs = False
force-default = False

[Subtitle.Subliminal]
download-subs = False
download-hearing-impaired-subs = False
providers =

[Subtitle.Subliminal.Auth]
opensubtitles =
tvsubtitles =

[Sonarr]
host = ****
port = 8989
apikey = ****
ssl = False
webroot =
force-rename = False
rescan = True
block-reprocess = False

[Radarr]
host = ****
port = 7878
apikey = ****
ssl = False
webroot =
force-rename = False
rescan = True
block-reprocess = False

[Sickbeard]
host = localhost
port = 8081
ssl = False
apikey =
webroot =
username =
password =

[Sickrage]
host = localhost
port = 8081
ssl = False
apikey =
webroot =
username =
password =

[SABNZBD]
convert = True
sickbeard-category = sickbeard
sickrage-category = sickrage
sonarr-category = sonarr
radarr-category = radarr
bypass-category = bypass
output-directory =
path-mapping =

[Deluge]
sickbeard-label = sickbeard
sickrage-label = sickrage
sonarr-label = sonarr
radarr-label = radarr
bypass-label = bypass
convert = True
host = localhost
port = 58846
username =
password =
output-directory =
remove = False
path-mapping =

[qBittorrent]
sickbeard-label = sickbeard
sickrage-label = sickrage
sonarr-label = sonarr
radarr-label = radarr
bypass-label = bypass
convert = True
action-before =
action-after =
host = localhost
port = 8080
ssl = False
username =
password =
output-directory =
path-mapping =

[uTorrent]
sickbeard-label = sickbeard
sickrage-label = sickrage
sonarr-label = sonarr
radarr-label = radarr
bypass-label = bypass
convert = True
webui = False
action-before =
action-after =
host = localhost
ssl = False
port = 8080
username =
password =
output-directory =
path-mapping =

[Plex]
host = plex
port = 32400
refresh = False
token =

[Subtitle.CleanIt]
enabled = True
config-path =
tags = default, no-style

[Audio.Sorting]
sorting =
default-sorting = channels.d, map, d.comment
codecs =

[Subtitle.Sorting]
sorting =
codecs =
burn-sorting = language, d.comment, d.default.d, d.forced.d`

Log Set One Round Long Subtitle Process Time
2022-09-05 07:06:49 - SonarrPostProcess - INFO - Sonarr extra script post processing started.
2022-09-05 07:06:49 - resources.readsettings - INFO - /usr/local/sma/venv/bin/python3
2022-09-05 07:06:49 - resources.readsettings - INFO - Loading config file /usr/local/sma/config/autoProcess.ini.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Processing /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Input Data
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - {
    "format": "matroska,webm",
    "format-fullname": "Matroska / WebM",
    "video": {
        "index": 0,
        "codec": "h264",
        "bitrate": 17102816,
        "pix_fmt": "yuv420p10le",
        "profile": "high10",
        "fps": 23.976023976023978,
        "framedata": {
            "pix_fmt": "yuv420p10le",
            "side_data_list": [
                {
                    "side_data_type": "H.26[45] User Data Unregistered SEI message"
                }
            ]
        },
        "dimensions": "1920x1080",
        "level": 5.1,
        "field_order": "progressive"
    },
    "audio": [
        {
            "index": 1,
            "codec": "flac",
            "bitrate": 730548,
            "channels": 2,
            "samplerate": 48000,
            "language": "jpn",
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions"
        },
        {
            "index": 2,
            "codec": "aac",
            "bitrate": 256000,
            "channels": 2,
            "samplerate": 48000,
            "language": "eng",
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions"
        }
    ],
    "subtitle": [
        {
            "index": 3,
            "codec": "ass",
            "bitrate": 47800,
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "language": "eng"
        },
        {
            "index": 4,
            "codec": "ass",
            "bitrate": 47778,
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "language": "eng"
        },
        {
            "index": 5,
            "codec": "ass",
            "bitrate": 50502,
            "disposition": "-default-dub-original-comment-lyrics-karaoke+forced-hearing_impaired-visual_impaired-captions",
            "language": "eng"
        }
    ],
    "attachment": [
        {
            "index": 6,
            "codec": "unknown",
            "filename": "dayrom.ttf",
            "mimetype": "font/ttf"
        },
        {
            "index": 7,
            "codec": "unknown",
            "filename": "kinesisstd-blackitalic.otf",
            "mimetype": "font/otf"
        },
        {
            "index": 8,
            "codec": "unknown",
            "filename": "agaramo6.otf",
            "mimetype": "font/otf"
        },
        {
            "index": 9,
            "codec": "unknown",
            "filename": "clearface_ssi_bold.ttf",
            "mimetype": "font/ttf"
        },
        {
            "index": 10,
            "codec": "unknown",
            "filename": "angie-bolditalic.ttf",
            "mimetype": "font/ttf"
        },
        {
            "index": 11,
            "codec": "unknown",
            "filename": "angie-bold.ttf",
            "mimetype": "font/ttf"
        },
        {
            "index": 12,
            "codec": "unknown",
            "filename": "bsod.ttf",
            "mimetype": "font/ttf"
        }
    ]
}
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Reading video stream.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Video codec detected: h264.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Pix Fmt: yuv420p10le.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Profile: high10.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Video codec parameters None.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Creating copy video stream from source stream 0.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Reading audio streams.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - The following stream indexes have been identified as being copies: [] [stream-codec-combinations].
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Audio detected for stream 1 - flac jpn 2 channel.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Creating aac audio stream from source stream 1.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Copying audio stream from source stream 1 format flac [audio-copy-original].
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Audio detected for stream 2 - aac eng 2 channel.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Creating copy audio stream from source stream 2.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Found 0 streams that can be removed from the output file since they will be duplicates [stream-codec-combinations].
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - ['0->0', '1->1', '2->2']
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - ['0->0', '1->1', '2->2']
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Default audio stream set to jpn aac 2 channel stream [audio-default-sorting: ['channels.d', 'map', 'd.comment']].
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Reading subtitle streams.
2022-09-05 07:06:49 - resources.mediaprocessor - INFO - Subtitle detected for stream 3 - ass eng.
2022-09-05 07:06:50 - resources.mediaprocessor - INFO - Stream 3 is text-based subtitle for codec ass.
2022-09-05 07:06:50 - resources.mediaprocessor - INFO - Subtitle detected for stream 4 - ass eng.
2022-09-05 07:06:50 - resources.mediaprocessor - INFO - Stream 4 is text-based subtitle for codec ass.
2022-09-05 07:06:50 - resources.mediaprocessor - INFO - Subtitle detected for stream 5 - ass eng.
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Stream 5 is text-based subtitle for codec ass.
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - []
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Output Data
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - {
    "source": [
        "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv"
    ],
    "format": "mkv",
    "video": {
        "codec": "copy",
        "map": 0,
        "bitrate": 16420.5676,
        "crf": -1,
        "maxrate": null,
        "bufsize": null,
        "level": 0.0,
        "profile": null,
        "preset": null,
        "pix_fmt": null,
        "field_order": "progressive",
        "width": null,
        "filter": null,
        "params": null,
        "framedata": null,
        "bsf": null,
        "debug": "video",
        "title": "FHD"
    },
    "audio": [
        {
            "map": 1,
            "codec": "aac",
            "channels": 2,
            "bitrate": 730.548,
            "profile": null,
            "quality": 0,
            "filter": null,
            "samplerate": null,
            "sampleformat": "",
            "language": "jpn",
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "bsf": null,
            "debug": "universal-audio",
            "title": "Stereo"
        },
        {
            "map": 1,
            "codec": "copy",
            "channels": 2,
            "language": "jpn",
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "debug": "audio-copy-original",
            "title": "Stereo"
        },
        {
            "map": 2,
            "codec": "copy",
            "channels": 2,
            "bitrate": 256.0,
            "profile": null,
            "quality": 0,
            "filter": null,
            "samplerate": null,
            "sampleformat": "",
            "language": "eng",
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "bsf": null,
            "debug": "universal-audio",
            "title": "Stereo"
        }
    ],
    "subtitle": [],
    "attachment": []
}
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Preopts
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - []
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Postopts
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - [
    "-threads",
    "0",
    "-metadata:g",
    "encoding_tool=SMA"
]
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Subtitle Extracts
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - [
    {
        "source": [
            "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv"
        ],
        "subtitle": [
            {
                "map": 3,
                "codec": "srt",
                "language": "eng",
                "debug": "subtitle"
            }
        ],
        "format": "srt",
        "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
        "language": "eng",
        "index": 3
    },
    {
        "source": [
            "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv"
        ],
        "subtitle": [
            {
                "map": 4,
                "codec": "srt",
                "language": "eng",
                "debug": "subtitle"
            }
        ],
        "format": "srt",
        "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
        "language": "eng",
        "index": 4
    },
    {
        "source": [
            "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv"
        ],
        "subtitle": [
            {
                "map": 5,
                "codec": "srt",
                "language": "eng",
                "debug": "subtitle"
            }
        ],
        "format": "srt",
        "disposition": "-default-dub-original-comment-lyrics-karaoke+forced-hearing_impaired-visual_impaired-captions",
        "language": "eng",
        "index": 5
    }
]
2022-09-05 07:06:51 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 3 into external file.
2022-09-05 07:07:03 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.srt created.
2022-09-05 07:07:03 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 4 into external file.
2022-09-05 07:07:17 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.2.srt created.
2022-09-05 07:07:17 - resources.mediaprocessor - INFO - Ripping eng subtitle from source stream 5 into external file.
2022-09-05 07:07:30 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.eng.forced.srt created.
2022-09-05 16:09:53 - resources.mediaprocessor - INFO - Starting conversion.
2022-09-05 16:10:41 - resources.mediaprocessor - INFO - FFmpeg command:
2022-09-05 16:10:41 - resources.mediaprocessor - INFO - ======================
2022-09-05 16:10:41 - resources.mediaprocessor - INFO - /usr/local/bin/ffmpeg -i "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv.original" -map_metadata -1 -vcodec copy -map 0:0 -metadata:s:v title=FHD -metadata:s:v handler_name=FHD -c:a:0 aac -map 0:1 -ac:a:0 2 -b:a:0 730k -metadata:s:a:0 BPS=730000 -metadata:s:a:0 BPS-eng=730000 -metadata:s:a:0 title=Stereo -metadata:s:a:0 handler_name=Stereo -metadata:s:a:0 language=jpn -disposition:a:0 +default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -strict experimental -c:a:1 copy -map 0:1 -metadata:s:a:1 title=Stereo -metadata:s:a:1 handler_name=Stereo -metadata:s:a:1 language=jpn -disposition:a:1 -default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -c:a:2 copy -map 0:2 -metadata:s:a:2 title=Stereo -metadata:s:a:2 handler_name=Stereo -metadata:s:a:2 language=eng -disposition:a:2 -default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -f matroska -threads 0 -metadata:g encoding_tool=SMA -y "/main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkvtemp"
2022-09-05 16:10:41 - resources.mediaprocessor - INFO - ======================
2022-09-05 16:15:41 - resources.mediaprocessor - INFO - /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkvtemp created.
2022-09-05 16:15:43 - resources.mediaprocessor - INFO - Tagging /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv with TMDB ID 1429.
2022-09-05 16:15:43 - resources.metadata - INFO - Tagging file: /main/Remote/Media/Anime/Attack on Titan/Season 4/Attack on Titan - S04E26 - Traitor Bluray-1080p.mkv.
2022-09-05 16:16:09 - resources.metadata - INFO - Tags written successfully using FFMPEG fallback method.
2022-09-05 16:18:21 - SonarrPostProcess - ERROR - Sonarr monitor status update failed.
Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 239, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/lib/python3.8/http/client.py", line 1256, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1302, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1251, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1011, in _send_output
    self.send(msg)
  File "/usr/lib/python3.8/http/client.py", line 951, in send
    self.connect()
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 205, in connect
    conn = self._new_conn()
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7f96b9738c10>: Failed to establish a new connection: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/adapters.py", line 489, in send
    resp = conn.urlopen(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    retries = retries.increment(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/retry.py", line 592, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='****', port=8989): Max retries exceeded with url: /api/v3/command (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f96b9738c10>: Failed to establish a new connection: [Errno 110] Connection timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/postSonarr.py", line 259, in <module>
    if downloadedEpisodesScanInProgress(baseURL, headers, episodefile_sourcefolder, log):
  File "/usr/local/sma/postSonarr.py", line 82, in downloadedEpisodesScanInProgress
    r = requests.get(url, headers=headers)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/sessions.py", line 701, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/adapters.py", line 565, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='****', port=8989): Max retries exceeded with url: /api/v3/command (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f96b9738c10>: Failed to establish a new connection: [Errno 110] Connection timed out'))

***Log Set Two Round Missing Encoder for PGS Subtitles***
`2022-09-05 06:39:23 - SonarrPostProcess - INFO - Sonarr extra script post processing started.
2022-09-05 06:39:23 - resources.readsettings - INFO - /usr/local/sma/venv/bin/python3
2022-09-05 06:39:23 - resources.readsettings - INFO - Loading config file /usr/local/sma/config/autoProcess.ini.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Processing /main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkv.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Input Data
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - {
    "format": "matroska,webm",
    "format-fullname": "Matroska / WebM",
    "video": {
        "index": 0,
        "codec": "hevc",
        "bitrate": 5688182,
        "pix_fmt": "yuv420p10le",
        "profile": "main10",
        "fps": 23.976023976023978,
        "framedata": {
            "pix_fmt": "yuv420p10le",
            "color_space": "bt709",
            "color_primaries": "bt709",
            "color_transfer": "bt709"
        },
        "dimensions": "1920x1080",
        "level": 4.0,
        "field_order": "unknown"
    },
    "audio": [
        {
            "index": 1,
            "codec": "dts",
            "bitrate": 3768459,
            "channels": 6,
            "samplerate": 48000,
            "language": "eng",
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions"
        }
    ],
    "subtitle": [
        {
            "index": 2,
            "codec": "hdmv_pgs_subtitle",
            "bitrate": 63597,
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "language": "eng"
        }
    ],
    "attachment": []
}
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Reading video stream.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Video codec detected: hevc.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Pix Fmt: yuv420p10le.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Profile: main10.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Video codec parameters None.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Creating h264 video stream from source stream 0.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Reading audio streams.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - The following stream indexes have been identified as being copies: [] [stream-codec-combinations].
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Audio detected for stream 1 - dts eng 6 channel.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Creating ac3 audio stream from source stream 1.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Creating aac audio stream from source audio stream 1 [universal-audio].
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Copying audio stream from source stream 1 format dts [audio-copy-original].
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Found 0 streams that can be removed from the output file since they will be duplicates [stream-codec-combinations].
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - ['0->0', '1->1', '2->2']
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - ['0->0', '1->2', '2->1']
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Default audio stream set to eng ac3 6 channel stream [audio-default-sorting: ['channels.d', 'map', 'd.comment']].
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Reading subtitle streams.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Subtitle detected for stream 2 - hdmv_pgs_subtitle eng.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Stream 2 is image-based subtitle for codec hdmv_pgs_subtitle.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Creating pgs subtitle stream from source stream 2.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Final sorting:
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - ['0->0']
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - ===========WARNING===========
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - The encoder you have chosen pgs (copy) is not listed as supported in your FFMPEG build, conversion will likely fail, please use a build of FFMPEG that supports copy or choose a different encoder.
2022-09-05 06:39:24 - resources.mediaprocessor - WARNING - ===========WARNING===========
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Output Data
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - {
    "source": [
        "/main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkv"
    ],
    "format": "mkv",
    "video": {
        "codec": "h264",
        "map": 0,
        "bitrate": 5465.32245,
        "crf": -1,
        "maxrate": null,
        "bufsize": null,
        "level": 0.0,
        "profile": null,
        "preset": null,
        "pix_fmt": null,
        "field_order": "unknown",
        "width": null,
        "filter": null,
        "params": null,
        "framedata": null,
        "bsf": null,
        "debug": "video",
        "title": "FHD"
    },
    "audio": [
        {
            "map": 1,
            "codec": "ac3",
            "channels": 6,
            "bitrate": 3768.459,
            "profile": null,
            "quality": 0,
            "filter": null,
            "samplerate": null,
            "sampleformat": "",
            "language": "eng",
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "bsf": null,
            "debug": "audio",
            "title": "5.1 Channel"
        },
        {
            "map": 1,
            "codec": "aac",
            "channels": 2,
            "bitrate": 256,
            "quality": 0,
            "profile": null,
            "samplerate": null,
            "sampleformat": "",
            "filter": "pan=stereo|FL=0.5*FC+0.707*FL+0.707*BL+0.5*LFE|FR=0.5*FC+0.707*FR+0.707*BR+0.5*LFE",
            "language": "eng",
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "debug": "universal-audio",
            "title": "Stereo"
        },
        {
            "map": 1,
            "codec": "copy",
            "channels": 6,
            "language": "eng",
            "disposition": "-default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "debug": "audio-copy-original",
            "title": "5.1 Channel"
        }
    ],
    "subtitle": [
        {
            "map": 2,
            "codec": "pgs",
            "language": "eng",
            "disposition": "+default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions",
            "debug": "subtitle.embed-subs",
            "title": null
        }
    ],
    "attachment": []
}
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Preopts
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - [
    "-fix_sub_duration"
]
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Postopts
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - [
    "-threads",
    "0",
    "-metadata:g",
    "encoding_tool=SMA"
]
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Subtitle Extracts
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - []
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - Starting conversion.
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - FFmpeg command:
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - ======================
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - /usr/local/bin/ffmpeg -fix_sub_duration -i "/main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkv.original" -map_metadata -1 -vcodec libx264 -map 0:0 -vb 5465k -metadata:s:v BPS=5465000 -metadata:s:v BPS-eng=5465000 -metadata:s:v title=FHD -metadata:s:v handler_name=FHD -tag:v avc1 -c:a:0 ac3 -map 0:1 -ac:a:0 6 -b:a:0 1536k -metadata:s:a:0 BPS=1536000 -metadata:s:a:0 BPS-eng=1536000 -metadata:s:a:0 "title=5.1 Channel" -metadata:s:a:0 "handler_name=5.1 Channel" -metadata:s:a:0 language=eng -disposition:a:0 +default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -c:a:1 aac -map 0:1 -ac:a:1 2 -b:a:1 256k -metadata:s:a:1 BPS=256000 -metadata:s:a:1 BPS-eng=256000 -filter:a:1 "pan=stereo|FL=0.5*FC+0.707*FL+0.707*BL+0.5*LFE|FR=0.5*FC+0.707*FR+0.707*BR+0.5*LFE" -metadata:s:a:1 title=Stereo -metadata:s:a:1 handler_name=Stereo -metadata:s:a:1 language=eng -disposition:a:1 -default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -strict experimental -c:a:2 copy -map 0:1 -metadata:s:a:2 "title=5.1 Channel" -metadata:s:a:2 "handler_name=5.1 Channel" -metadata:s:a:2 language=eng -disposition:a:2 -default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -c:s:0 copy -map 0:2 -metadata:s:s:0 title= -metadata:s:s:0 handler_name= -metadata:s:s:0 language=eng -disposition:s:0 +default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -f matroska -threads 0 -metadata:g encoding_tool=SMA -y "/main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkvtemp"
2022-09-05 06:39:24 - resources.mediaprocessor - INFO - ======================
2022-09-05 06:57:11 - resources.mediaprocessor - INFO - /main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkvtemp created.
2022-09-05 06:57:12 - resources.mediaprocessor - INFO - Tagging /main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkv with TMDB ID 32798.
2022-09-05 06:57:12 - resources.metadata - INFO - Tagging file: /main/Remote/Media/TV/Hawaii Five-0/Season 9/Hawaii Five-0 - S09E24 - Hewa ka lima Bluray-1080p.mkv.
2022-09-05 06:57:38 - resources.metadata - INFO - Tags written successfully using FFMPEG fallback method.
2022-09-05 06:59:47 - SonarrPostProcess - ERROR - Sonarr monitor status update failed.
Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 239, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/lib/python3.8/http/client.py", line 1256, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1302, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1251, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1011, in _send_output
    self.send(msg)
  File "/usr/lib/python3.8/http/client.py", line 951, in send
    self.connect()
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 205, in connect
    conn = self._new_conn()
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7f5af2482130>: Failed to establish a new connection: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/adapters.py", line 489, in send
    resp = conn.urlopen(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    retries = retries.increment(
  File "/usr/local/sma/venv/lib/python3.8/site-packages/urllib3/util/retry.py", line 592, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='****', port=8989): Max retries exceeded with url: /api/v3/command (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f5af2482130>: Failed to establish a new connection: [Errno 110] Connection timed out'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/sma/postSonarr.py", line 259, in <module>
    if downloadedEpisodesScanInProgress(baseURL, headers, episodefile_sourcefolder, log):
  File "/usr/local/sma/postSonarr.py", line 82, in downloadedEpisodesScanInProgress
    r = requests.get(url, headers=headers)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/sessions.py", line 701, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/sma/venv/lib/python3.8/site-packages/requests/adapters.py", line 565, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='****', port=8989): Max retries exceeded with url: /api/v3/command (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f5af2482130>: Failed to establish a new connection: [Errno 110] Connection timed out'))`

System Information

OS: Ubuntu
SMA Docker Container Version*

Expected behavior
Subtitles to be Processed in a timely manner or logs to be captured detailing what is happening
PGS Subtitle Handling to be consistent

PGS subtitles work fine, that error is because technically FFMPEG does not have an encoder for PGS subtitles. FFMPEG can only copy them but not encode them. The "pgs" codec defined in AVCodecs is just a convenience wrapper for "copy" but its triggering that warning because FFMPEG doesn't report an encoder for "copy" technically. I went ahead and pushed a small update to exclude these special copy codecs to silence that warning which was just meant to alert people they may be choosing an encoder their build of FFMPEG may not have but functionally that makes no difference, it was just a warning
0d93db2f5884c73c4c9e9573142315015ffcf1a8
With regards to subtitles taking a while, I have no idea why CleanIt would take so long. I would try disabling and doing an A B test with the same file to see if that makes a difference. CleanIt is an external module, I did not write it so I can't speak to it very much but just looking at the module it looks like it uses standard Python logging modules so you should see some output, you can try turning on debug level logging (probably a good idea if you're having issues to see exactly where the script is hanging even if CleanIt isn't to blame).
If you still can't get logs out of CleanIt, I would just try running CleanIt on the subtitle file manually
https://github.com/ratoaq2/cleanit
That should give you more info and a clear idea of the duration its taking that module to process the subtitle
You can also send me one of the files causing you trouble I can take a look if you're having trouble reproducing but it would be good to test on your own system

Ah okay that's good to know about the PGS encoder, as for the Long Encode yeah it did end up being CleanIT module, specifically with certain Anime Files as PGS subtitles, running the module manually also took 18HR's so i just went ahead and disabled it. Comparing a Run with it, vs Without not many changes worth that extended processing time
I do have one other small question that i have been unable to figure out. I am using your SMA docker containers with the autoprocess.ini in a Volume mount to both the sonarr and radarr container. Inside the config i have the hostname configured for sonarr/radarr integration configured too the docker hostnames (Which Work), but something is rewritting the config on those 2 config options to be my servers external IP address which breaks the integration (See in the logs above), i will change it, it will work for a few runs than it will get changed to the external IP address and break and i can not for the lfe of me figure out why this is happening. I just want to check to make sure there is not some process inside the script that could be attempting to resolve those hostnames and writing in the IP address or something, because outside of this i am out of ideas of what it could be

update.py in the docker containers does set that data
You can set the env variable HOST to tell it to set something else but it should be defaulting to <IP_ADDRESS> not an external IP

Ah that was it, i did have that set in my env files to map to my outside ip, didn't realize that environmental variable was being used to write out to the sma config. Thank you very much for the help, i appreciate it


Disable client-side validation not working for Razor Pages

See Disable client-side validation
services.Configure<HtmlHelperOptions>(o => o.ClientValidationEnabled = false);

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

ID: 0156ffc3-47ac-d5da-fbc2-9ff5018b071b
Version Independent ID: 615db388-a244-41f7-21b5-a4085d9ed479
Content: Model validation in ASP.NET Core MVC
Content Source: aspnetcore/mvc/models/validation.md
Product: aspnet-core
Technology: aspnetcore-mvc
GitHub Login: @tdykstra
Microsoft Alias: riande

@dougbu  services.Configure<HtmlHelperOptions>(o => o.ClientValidationEnabled = false); doesn't disable  client side validations.

@Rick-Anderson which versions are affected and exactly how are they affected? From everything I can see in the source, the option should control MVC HTML and tag helpers wherever they're used.
@rynowak is this a known issue w/ Razor pages?

@dougbu  see https://github.com/aspnet/AspNetCore/issues/7576
I'm using dotnet --version
3.0.100-preview7-012821
cc @javiercn

@Ponant I have the following code:
public void ConfigureServices(IServiceCollection services)
{
    services.AddRazorPages();

    services.Configure<HtmlHelperOptions>(o => o.ClientValidationEnabled = false);

    services.AddDbContext<RazorPagesMovieContext>(options =>
      options.UseSqlServer(Configuration.GetConnectionString("RazorPagesMovieContext")));
}

But that's not disabling client side validation.

Ah, I see. A problem @javiercn fixed in 3.0 Preview 5.
@javiercn did you confirm whether both 2.1 and 2.2 applications experience the bug?

@dougbu I'm using dotnet --version
3.0.100-preview7-012821
and it's not working. See my code above.

The following code works
public void ConfigureServices(IServiceCollection services)
{
    services.AddRazorPages().AddViewOptions(o =>
        o.HtmlHelperOptions.ClientValidationEnabled = false);

    services.AddDbContext<RazorPagesMovieContext>(options =>
       options.UseSqlServer(Configuration.GetConnectionString("RazorPagesMovieContext")));
}

@Ponant  what are the two steps mentioned in aspnet/AspNetCore#7576 to get it working with RP in 2.x?

services.Configure<HtmlHelperOptions>(o => o.ClientValidationEnabled = false); works in 2.2


Unable to use local blink.cmp using lazy.nvim - Error while downloading blink.cmp pre-built binary: Can't download from...

I am trying to configure lazy.nvim to use a local version of blink.cmp so I can test something locally, but I'm getting this error with my configuration:

Here is my configuration:
return require("lazy").setup({
  {
    "saghen/blink.cmp",
    lazy = false,
    dependencies = "rafamadriz/friendly-snippets",
    dir = "~/projects/blink.cmp",
    url = "https://github.com/Saghen/blink.cmp",
    dev = true,
    -- version = "v0.*",
    build = "cargo build --release",
  },
})

I have followed the docs here to ensure that I have rustc nightly installed, and set this as the default:
❯ rustup default nightly
info: using existing install for 'nightly-aarch64-apple-darwin'
info: default toolchain set to 'nightly-aarch64-apple-darwin'

  nightly-aarch64-apple-darwin unchanged - rustc 1.84.0-nightly (3ed6e3cc6 2024-10-17)

I have also tried uncommenting version, but I run into the same issue:
return require("lazy").setup({
  {
    "saghen/blink.cmp",
    lazy = false,
    dependencies = "rafamadriz/friendly-snippets",
    dir = "~/projects/blink.cmp",
    url = "https://github.com/Saghen/blink.cmp",
    dev = true,
    version = "v0.*",
    build = "cargo build --release",
  },
})

Looking into why this could be happening, but thought I'd post an issue in case others ran into the same problem

On lazy.nvim with dev = true, you must manually run cargo build --release

On lazy.nvim with dev = true, you must manually run cargo build --release

I see - that fixed it, thanks!


Refactor river biochemical processes

Currently difficult to understand and hard to test. Needs to be split into sensible functions.

calculate_discharge, which calls biochemical_processes, is currently commented out in the distribute function

In the River node, these parameters were in CatchWat for solids simulation but not used in the current version. There will be very little chance to reuse them again so removed by commit c0a192120002ad6e5ae65cf90718f641b0167e0a in #81
        self.qbank_365_days = [1e6, 1e6]  # [m3/day] store outflow in the previous year
        self.qbank = (
            1e6  # [m3/day] bankfull flow = second largest outflow in the previous year
        )
        self.qbankcorrpar = 0.001  # [-] correction coefficient for qbank flow
        self.sedexppar = 1  # [-]
        self.EPC0 = 0.05 * constants.MG_L_TO_KG_M3  # [mg/l]
        self.kd_s = 0 * constants.MG_L_TO_KG_M3  # 6 * 1e-6, # [kg/m3]
        self.kadsdes_s = 2  # 0.9, # [-]
        self.Dsed = 0.2  # [m]


Extend review date in Terraform file/s for bingliumt

Hi there
This is the GitHub-Collaborator repository bot.
The collaborator bingliumt has review date/s that are close to expiring.
The review date/s have automatically been extended.
Either approve this pull request, modify it or delete it if it is no longer necessary.

Keep PR open till 1st April so automation doesn't raise more PR's user is not be extended

user has been removed


Support for selecting branch to shelve/checkin

I have multiple working directories (using worktree add) with different branches and right now I can't checkin from them except the main one, as the others don't have .git directory, only a file with a link to it.
Checkin/shelve commands should at least support providing commit or branch to checkin, instead of defaulting to HEAD.

the documentation is not explaining ref-to-shelve parameter, that's what I was looking for.

Perhaps you could do a pull request to improve the documentation. It will be helpful for others.


Config retries for KafkaSource scheduler based

As per title.
These values are the same we use in the existing
KafkaSource in this repository

/assign @aavarghese

@aavarghese sorry, I had to fix unit tests :upside_down_face: would you mind reviewing the last commit?


Wrong commit order when using autoCommit=false in HighlevelConsumer

I'm using a HighlevelProducer and HighlevelConsumer to send and receive Messages. The HighlevelConsumer is configured with autoCommit=false as I want to commit Messages only when it was produced successfully. The problem is, that the first message never really gets commited.
Example:

Send Messages 1-10.
Receive Message 1
Receive Message 2
Commit Message 2
...
Receive Message 10
Commit Message 10
Commit Message 1

If I restart my Consumer, all messages from 1 to 10 are processed again. Only if I send new messages to the consumer, the old messages get committed. This happens for any number of messages.
My Code reads as follows:
var kafka = require('kafka-node'),
    HighLevelConsumer = kafka.HighLevelConsumer,
    client = new kafka.Client("localhost:2181/");
consumer = new HighLevelConsumer(
    client,
    [
        { topic: 'mytopic' }
    ],
    {
        groupId: 'my-group',
        id: "my-consumer-1",
        autoCommit: false
    }
);

consumer.on('message', function (message) {
    console.log("consume: " + message.offset);
    consumer.commit(function (err, data) {
        console.log("commited:" + message.offset);
    });
    console.log("consumed:" + message.offset);
});

process.on('SIGINT', function () {
    consumer.close(true, function () {
        process.exit();
    });
});

process.on('exit', function () {
    consumer.close(true, function () {
        process.exit();
    });
});

var messages = 10;

var kafka = require('kafka-node'),
    HighLevelProducer = kafka.HighLevelProducer,
    client = new kafka.Client("localhost:2181/");
var producer = new HighLevelProducer(client, { partitionerType: 2, requireAcks: 1 });

producer.on('error', function (err) { console.log(err) });

producer.on('ready', function () {
    for (i = 0; i < messages; i++) {
        payloads = [
            { topic: 'mytopic', messages: "" }
        ];
        producer.send(payloads, function (err, data) {
            err ? console.log(i + "err", err) : console.log(i + "data", data);
        });
    }
});

Am I doing something wrong or is this a bug in kafka-node?
Kind regards,
Peter

Hi Peter.
Each fetch retrieves a batch of messages which are synchronously emitted as a 'message' event. After that is 'done' the internal offsets are updated.
When you call commit it commits the offsets stored in the internal offset.
Hope that clears it up.

Hm, ok, thanks. Seems like solving my problems using nodesjs and kafka is not the ideal solution :)


Compatibility: add a way to import an entire Raccoon v3 archive

There should be a File|Convert menuitem (someone please suggest a better name and a tooltip text). That only shows if an old Raccoon v3 installation is detected in Raccoon's homedir.
Function: All apps (of all archives) found in the old installation should be piped through the GPlay Transfermanager (or a derivate of it) and automatically be linked to the current GPlay profile.
Discussion:

Only Raccoon v3 users should see that option as it only applies to them. No need to confuse no users.
Ignore the old config files, in particular the profile settings (account, GSF ID). Just dump everything we can find into the currrent Raccoon v4 profile. Trying to add a UI for fine control is not worth the effort. A user who wants to to sort things into different profiles can use a filemanager.
Do NOT delete OR modify the contents of old archives! The user can do that with a filemanager AFTER ensuring that the old files are no longer needed.

File|Convert menuitem (someone please suggest a better name

„File|Migrate“ might be more appropriate. Cannot suggest a „better“ tooltip text as I don't know the current one :innocent: But maybe something like „Import your existing v3 archive“?

On second thought... doing it this way is utterly idiotic! Checking if there is something that could be imported just increases startup time (I'm obsessed with speed there) and requires a lot of code/work for something that is destined to fade into obscurity fast. I think, we are better off with an import script or something. In the long run, there needs to be a control in the App browser anyway through which the user can select how to update an an app (or to lock it from being updated at all).

Technically, that has only to be checked on the first start. Then set an internal variable (which was initialized with NULL) to either TRUE (found something to import/migrate) or FALSE (nothing there). Once everything has been imported, it could be set to FALSE as well.
On the other hand the question is: is that worth the trouble? Why not simply have a menu item to check for an old installation, and decide then? Not enough space for that? :smile_cat:

Well, I just don't like that 10ms speed penalty on startup, everyone would have to pay in order to check if the item needs to be shown or not. Beyond that, doing this import thing is a giant PITA. Especially when OBB files get involved and everything needs to be hooked into the transfermanager (total overkill).
 The only thing thats missing is associating glueing together app id and profile id in a junction table. One could easily do that with a text editor in raccoondb_4.script:
INSERT INTO PLAYAPPOWNERSHIP VALUES(42,'my-profile')

Done


Fix: 'pushed' value of button press was always 0 + added state_changed event

Description:
When using home assistant with an IQfy pressure sensor (link) I noticed that regardless of whether I "push" or "release" the switch, the events were always the same, 'pushed' value is always 0
This example is commented in the existing codebase:
        Example packet data:         - 2nd button pressed             ['0xf6', '0x10', '0x00', '0x2d', '0xcf', '0x45', '0x30']         - button released             ['0xf6', '0x00', '0x00', '0x2d', '0xcf', '0x45', '0x20']
The code checked on the last byte to detect the "pushed"  (resp. 0x30 and 0x20).
However I notice the IQfy sensor always gives 0x20 as last byte. The 2nd byte seems like a more consistent approach, the value is either 0x10 or 0x00 in the example, and also on the IQfy sensor.
EDIT
Added another commit. Currently the enocean binary sensor setup only generated its own "button_pushed" events. As I need a more generic way to access state changes, I added support for state_changed events. The old button_pushed event is still created so this change is fully backwards compatible.
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the [development checklist][dev-checklist]

Hi @rv0,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!

@bdurrer could you have a look at this PR.

I'll test the code this evening with an Omnio 4-Channel Switch. I guess checking against the byte value is generally stupid, as the 8 bits have specific meaning.
@rv0 did you figure out what equipment profile the telegram has? The IQfy datasheet is not very specific,
maybe rocker switch telegram is the wrong type and we might need to deal with an extra one

I checked with a rocker switch, this change would break them.
 I intended to fix this but oh well, got drawn into other problems on the way 😉
I suspect that the IQfy sensor sends a different telegram type, which is not in the F6-02-?? group. Contacting their support for an exact type statement would be helpful. They are required to comply to the official enocean group standards, so it should be possible to deal with it in a non proprietary way.
There are two ways to solve this:

Implement a bitwise comparison on the exact filed mentioned in the Enocean Equipment Profiles (EEP) of F6-02-?? telegrams. Either we can detect the message type based on it's content and use a different check.
Or maybe they use the same bit. That's not unlikely, they all seem to have it at position DB0.4. Try to use the packet parser, it'll select the correct bit for you:

packet.parse_eep(0xf6, 0x02)
packet.parsed['EB']['raw_value'] == 0 // released
packet.parsed['EB']['raw_value'] == 1 // pressed

Hi all
Thanks for the constructive feedback! I'm just new to Home Assistant and to Enocean, so I still have a lot to learn. I also didn't find any documentation on the IQfy push button, I only found a python example which was checking those bytes to distinguish push/release
I managed to get my hands on a rocker switch now, the PTM 210 DB, here's the states:
`
top left push
['0xf6', '0x30', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x3c', '0x0']
R1=1, R2=0, EB=1, SA=0, T21=1, NU=1
top left release
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x3c', '0x0']
R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
bottom left push
['0xf6', '0x10', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x40', '0x0']
R1=0, R2=0, EB=1, SA=0, T21=1, NU=1
bottom left release
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x40', '0x0']
R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
top right push
['0xf6', '0x70', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x40', '0x0']
R1=3, R2=0, EB=1, SA=0, T21=1, NU=1
top right release
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x3d', '0x0']
R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
bottom right push
['0xf6', '0x50', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x39', '0x0']
R1=2, R2=0, EB=1, SA=0, T21=1, NU=1
bottom right release
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x39', '0x0']
R1=3, R2=0, EB=0, SA=0, T21=1, NU=0
`
With IQfy push button we get:
push ['0xf6', '0x10', '0x5', '0x5', '0x2a', '0x20', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x39', '0x0'] R1=0, R2=1, EB=1, SA=0, T21=1, NU=0 release ['0xf6', '0x0', '0x5', '0x5', '0x2a', '0x20', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x39', '0x0'] R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
I'm not sure how to proceed at the moment. How would we handle all the different possible states with a rocker switch like the PTM 210?

Nice!
I just realized that the second message is a different message type and should not contain any information about the butto, only the EB. They all seem to send still data, I believe that's because the spec changed a few times.
The field NU defines wheter this is a n-type message or an u-type message. The second message of the rocker is always an NU=0 message... the IQfy always sends NU=0 messages.
NU=1 messages gives you two actions (R1, R2). and whter the action was a button_press or button_release (EB). The action is 0-3 for all 4 buttons. R2 can be a button you press/hold at the same time, also 0-3. So far the secondary action is ignored, I guess nobody presses two buttons at once anyway.
The NU=0 message on the other hand tells you "Number of buttons pressed simultaneously" and the EB. We should ignore the extra data here
Long story short: I think we could (and probably should) use the parsed F6-02 message and deal with the two different message types based on the NU flag.
which and onoff should not be set on NU=0 messages but reused from the last call.
pressed = packet.parsed['EB']['raw_value']

if packet.parsed['NU']['raw_value'] == 1 and packet.parsed['T21']['raw_value'] == 1:
  which = packet.parsed['R1']['raw_value'] == 0 orpacket.parsed['R1']['raw_value'] == 3   onoff = packet.parsed['R1']['raw_value'] == 1 orpacket.parsed['R1']['raw_value'] == 4

I guess nobody presses two buttons at once anyway.

Why not? Seems like something people would to e.g. to open 2 automatic window blinds at the same time
'''
top 2 switches:
['0xf6', '0x37', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x3c', '0x0']
R1=1, R2=3, EB=1, SA=1, T21=1, NU=1
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x3a', '0x0']
R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
bottom 2 switches:
['0xf6', '0x15', '0x0', '0x32', '0x84', '0xd6', '0x30'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x37', '0x0']
R1=0, R2=2, EB=1, SA=1, T21=1, NU=1
['0xf6', '0x0', '0x0', '0x32', '0x84', '0xd6', '0x20'] ['0x1', '0xff', '0xff', '0xff', '0xff', '0x39', '0x0']
R1=0, R2=0, EB=0, SA=0, T21=1, NU=0
'''

Fair point... but it would have to wait for the refactoring that Martin requested.
Unless the stateless binary_switch would be turned into a real, stateful thing. It would require splitting it up into four binary_switches. That and then removing the custom event would satisfy Martin's request too.
I suspect that such multi-button-actions would use NU=1 messages, as the NU=0 message has not enough information to figure out the button.

Try pushing two buttons and then release only one and the 2nd a bit later. You should get at least 3 messages

hm not with this PTM 210 model at least.
when I release one I get nothing.
note: I will update the info in my previous post with pushing up and down at same time on each switch

There hasn't been any movement for some time here. I'll close now. We're trying to decrease our open PR buffer. Please open a new PR when ready to finish. Thanks!


False positive for UnusedImports on functions that are used from generated code (Android ViewBinding)

Using detekt 1.20.0-RC2
I use Android ViewBinding extensively. If I call an extension function or use an extension property on one of the Views exposed by the ViewBinding class, the import for that function/property violates the UnusedImports rule.

Thanks for the issue report @eygraber 🙏 Is this a regression? Could you check with 1.19.x if the issue is happening?
Also are you using type resolution?

Same as https://github.com/detekt/detekt/issues/4676#issuecomment-1088267221

Same as: https://github.com/detekt/detekt/issues/4676#issuecomment-1133931502

could you check the detekt's SNAPSHOT to see if you can reproduce the same issue after we merge #4723?

The issue is resolved in SNAPSHOT

Thanks to check it :)


Wrong cache restored using<EMAIL_ADDRESS>

After upgrading to v3.0.8, we've experienced failing builds.
We were building our app using a matrix with different language versions.
      - name: Cache compiled .beam files
        id: beam_cache
        uses<EMAIL_ADDRESS>        with:
          path: _build
          key: ${{ matrix.os }}-${{ matrix.elixir-version }}-${{ matrix.otp-version }}-build-${{ hashFiles('mix.lock', 'config/config.exs', 'config/prod.exs', 'config/test.exs', 'config/dev.exs') }}

The build was failing with an error saying that the project was compiled with a higher version of OTP even though:

matrix.otp-version was in the key
there was no restore-keys option present, so only exact matches were used

We've deleted all caches using gh command line utility, and we've noticed that it consistently fails on a rerun.
We've deleted most tasks to debug the problem and stopped using the matrix.
We've tried printing sha1sum in the job right after bringing back the cache and at the end of the job:
      ... (cache action from above)
      - name: Print _build/prod/lib/telemetry/ebin/telemetry_handler_table.beam hash
        run: sha1sum _build/prod/lib/telemetry/ebin/telemetry_handler_table.beam || echo "File not present"

      ... (other things and at the end, the same thing again without echo) ...
      - name: Print _build/prod/lib/telemetry/ebin/telemetry_handler_table.beam hash
        run: sha1sum _build/prod/lib/telemetry/ebin/telemetry_handler_table.beam

and we've noticed that:
a) when the cache is empty, we get:

"File not present" in the first hashing task
and some hash (First Hash) in the one running at the end
b) when re-running the job, we get:
a different hash (Second Hash) in the first task
and then Second Hash at the end

That means subsequent tasks did not modify the file on a cache hit. The problem rendered our builds permanently broken.
We've downgraded the task to use actions/cache@v2, and the problem disappeared. With v2, the hash of the file at the end of the cold run is the same as after bringing back the cache.
I believe the problem lies in caching action bringing back a different cache that was supposed to be deleted using the command line, so I decided to report the issue here.

Thanks @tomekowal for reporting the issue.
Can you please specify which version of actions/cache you were using before upgrading to v3.0.8?

v3.0.7. I've merged the change to v3.0.8 on 22-08-2022. At first, I thought that it is a problem with our actions and I only had the chance to investigate thoroughly yesterday.

This seems to be a very specific use-case. We haven't heard about this issue from any other user yet and we had released this version long time back.
To make it easy for us to investigate, can you please share a public repo with minimal code enough to reproduce this issue?

I'll try. We saw the problem occur on more than one repo, so hopefully, it will be reproducible with an empty Elixir/Phoenix project. If time permits, I'll cook something up during the weekend.

Sure, thank you! :)

Hey @tomekowal, are you still facing this issue?
If yes, let me know if you can share the reproducible empty project so that I can take a look. We haven't received any such issues/bugs related to this since we released the actions/cache v3.0.8.


Unhappy editor-state while loading a slow file

open a file from disk
open a file that is slow to load (because it is huge or because it loads from a remote source)
🐛  the (tab-)title updates, the editor still shows the old content

Yeah this is a bit tricky, I do not want to always null out the editor model on each tab open because that results in flicker. Though maybe we should timeout after certain ms and set the model to null if it is slow to load (e.g. when the progress kicks in).

Yeah this is a bit tricky, I do not want to always null out the editor model on each tab open because that results in flicker. Though maybe we should timeout after certain ms and set the model to null if it is slow to load (e.g. when the progress kicks in).

@bpasero if you aren't able to address this in the current iteration but are willing to consider a PR from me, a pointer would be welcome and I'll have a go.

I am actually not so concerned about the change to do this but rather the consequences. Yes, the current way it works is not ideal for this case of a slow loading file but it is actually very well suited for files that load fast which is happening in most cases. The switch from one file model to the next is without a null model (= flicker) in between.
A fix would probably involve some kind of timeout that nulls out the text editor model after some time if the new file cannot be resolved quickly enough and then visually you would see an empty text editor.
What was your idea how to fix it?

That was my idea exactly.

Yeah if you want to start a PR, feel free. I cannot make promises as when I get to it though, typically that is only during issue grooming iterations.

More thinking about it, I feel that anything but calling clearInput before setInput when the input changes would be wrong because we would force every editor to adopt this.
I have pushed https://github.com/microsoft/vscode/commit/2e636ded90fd03c8fbcd0553f550325c01cbcc60 with a setting to turn this off in case there are regressions.
For text editors this means, every time setInput is called, the model in the text editor is first set to null.

@bpasero many thanks for doing this. Today's Insiders is behaving so much better with my slow FileSystemProvider.
Only glitch I have seen so far is a minor one affecting the Outline pane. Using the modded fsprovider-sample I gave in #137057 here's how it behaves:

Notice how when the second tab appear (now without continuing to display the editor from the first tab :+1: ) the Outline pane clears (good) but its message still mentions the file whose outline it previously showed (the one belonging to the first tab).
When the slow read of file contents for the second tab completes, the Outline updates correctly to show its outline. If I open one that can't produce an outline (e.g. file.txt) the message updates to show the correct filename.

Thanks for testing this. I am not sure how the outline decides to update but the editor change event for the active editor changing is very likely only firing after the editor has finished loading so that interested parties have a consistent picture to work with and not a partially loaded editor.


feat(Cypress): reduce test time by disabling video upload on pass

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

As I discussed with Oliver, disabling video upload on pass should reduce testing time.
Should still upload when test fails.

Did you mean to close this?

@Sembauke is it just that it didn't save time in practice?

@Sembauke is it just that it didn't save time in practice?
It just seemed really unclear if it had any effect.
I looked at different PR workflows and they seem to end around the same time as this one.
So I wasn't sure if this was worth doing.

Understood.  It was definitely worth conducting the experiment, but I agree that this doesn't seem to have obviously helped.


Fix Help / About Menu

Description:

Pressing the Help / About Button raises a MessageNotUnderstood Exception.

Reproducibility:

Open EPIC
Click on the Help Menu, then About

A simple about window (that currently only shows licensing information) has been added.


Ability to specify precision for floats

It would be nice to be able to set precision for floats (without slow {%s fmt.Sprintf("%.2f", 3.1415926535) %}).
E.g. {%f.2 3.1415926535 %} outputs 3.14.
I can make PR for this.

@absourdnoise , thanks for the PR. I submitted a commit based on the PR.


No tailscale interface on UDM SE

I just got the UDM SE last week. Everything seems to install and run fine, I do get an IP-address and in the web interface an IP shows up.
However, if I run ip addr show I don't see any tailscale interface, I can't ping to other machines and other machines can't ping to the UDM SE. The logs do not seem to tell anything useful in finding the cause. I shared them below:
Kernel
root@udm:~# uname -ar
Linux udm 4.19.152-ui-alpine #4.19.152 SMP Fri Apr 22 00:04:43 CST 2022 aarch64 GNU/Linux

Install
root@udm:~# curl -sSLq https://raw.github.com/SierraSoftworks/tailscale-udm/main/install.sh | sh
Installing Tailscale v1.24.2 in /mnt/data/tailscale...
Installation complete, run '/mnt/data/tailscale/manage.sh start' to start Tailscale
Starting Tailscaled...
Tailscaled started successfully

To authenticate, visit:

	https://login.tailscale.com/a/xxxxxx

Success.

tailscale.log
2022/05/08 18:46:09 logtail started
2022/05/08 18:46:09 Program starting: v1.24.2-t9d6867fb0-g2d0f7ddc3, Go 1.18.1-ts710a0d8610: []string{"/mnt/data/tailscale/tailscaled", "--cleanup"}
2022/05/08 18:46:09 LogID: **MASKED**
2022/05/08 18:46:09 logpolicy: using system state directory "/var/lib/tailscale"
2022/05/08 18:46:09 dns: [rc=unknown ret=direct]
2022/05/08 18:46:09 dns: using *dns.directManager
2022/05/08 18:46:09 flushing log.
2022/05/08 18:46:09 logger closing down
2022/05/08 18:46:10 logtail started
2022/05/08 18:46:10 Program starting: v1.24.2-t9d6867fb0-g2d0f7ddc3, Go 1.18.1-ts710a0d8610: []string{"/mnt/data/tailscale/tailscaled", "--state", "/mnt/data/tailscale/tailscaled.state", "--socket", "/var/run/tailscale/tailscaled.sock", "--port", "41641", "--tun", "userspace-networking"}
2022/05/08 18:46:10 LogID: **MASKED**
2022/05/08 18:46:10 logpolicy: using system state directory "/var/lib/tailscale"
2022/05/08 18:46:10 wgengine.NewUserspaceEngine(tun "userspace-networking") ...
2022/05/08 18:46:10 dns: using dns.noopManager
2022/05/08 18:46:10 link state: interfaces.State ** TRUNCATED **
2022/05/08 18:46:10 magicsock: disco key =  **MASKED**
2022/05/08 18:46:10 Creating wireguard device...
2022/05/08 18:46:10 Bringing wireguard device up...
2022/05/08 18:46:10 Bringing router up...
2022/05/08 18:46:10 Clearing router settings...
2022/05/08 18:46:10 Starting link monitor...
2022/05/08 18:46:10 Engine created.
2022/05/08 18:46:10 Start
2022/05/08 18:46:10 using backend prefs for "_daemon": Prefs{ra=false dns=true want=false routes=[] nf=on Persist{lm=, o=, n=[LZHWO] u="**MASKED**"}}
2022/05/08 18:46:10 Backend: logs: be:**MASKED** fe:
2022/05/08 18:46:10 control: client.Login(false, 0)
2022/05/08 18:46:10 Switching ipn state NoState -> Stopped (WantRunning=false, nm=false)
2022/05/08 18:46:10 wgengine: Reconfig: configuring userspace wireguard config (with 0/0 peers)
2022/05/08 18:46:10 wgengine: Reconfig: configuring router
2022/05/08 18:46:10 wgengine: Reconfig: configuring DNS
2022/05/08 18:46:10 dns: Set: {DefaultResolvers:[] Routes:{} SearchDomains:[] Hosts:0}
2022/05/08 18:46:10 dns: Resolvercfg: {Routes:{} Hosts:0 LocalDomains:[]}
2022/05/08 18:46:10 dns: OScfg: {Nameservers:[] SearchDomains:[] MatchDomains:[]}
2022/05/08 18:46:10 control: doLogin(regen=false, hasUrl=false)
2022/05/08 18:46:10 health("overall"): error: state=Stopped, wantRunning=false
2022/05/08 18:46:10 control: control server key from https://controlplane.tailscale.com: ts2021=[fSeS+], legacy=[nlFWp]
2022/05/08 18:46:10 control: RegisterReq: onode= node=[LZHWO] fup=false
2022/05/08 18:46:10 control: RegisterReq: got response; nodeKeyExpired=false, machineAuthorized=true; authURL=false
2022/05/08 18:46:10 active login: **MASKED**@github
2022/05/08 18:46:10 control: setPaused(true)
2022/05/08 18:46:10 control: mapRoutine: paused
2022/05/08 18:46:10 control: mapRoutine: awaiting unpause
2022/05/08 18:46:10 control: NetInfo: NetInfo{varies=false hairpin=false ipv6=true udp=true derp=#4 portmap= link=""}
2022/05/08 18:46:10 magicsock: endpoints changed: ** TRUNCATED **
2022/05/08 18:46:15 ipnserver: conn2: connection from userid 0; root has access
2022/05/08 18:46:15 EditPrefs: MaskedPrefs{WantRunning=true}
2022/05/08 18:46:15 active login: "**MASKED**" ([unexpected] corp#461, not "**MASKED**@github")
2022/05/08 18:46:15 transitioning to running; doing Login...
2022/05/08 18:46:15 control: client.Login(false, 0)
2022/05/08 18:46:15 control: setPaused(false)
2022/05/08 18:46:15 Switching ipn state Stopped -> Starting (WantRunning=true, nm=true)
2022/05/08 18:46:15 control: mapRoutine: unpaused
2022/05/08 18:46:15 control: doLogin(regen=false, hasUrl=false)
2022/05/08 18:46:15 control: RegisterReq: onode= node=[LZHWO] fup=false
2022/05/08 18:46:15 magicsock: SetPrivateKey called (init)
2022/05/08 18:46:15 magicsock: private key changed, reconnecting to home derp-4
2022/05/08 18:46:15 wgengine: Reconfig: configuring userspace wireguard config (with 0/2 peers)
2022/05/08 18:46:15 wgengine: Reconfig: configuring router
2022/05/08 18:46:15 wgengine: Reconfig: configuring DNS
2022/05/08 18:46:15 dns: Set: {DefaultResolvers:[] Routes:{**MASKED**.github.beta.tailscale.net.:[]}+65arpa SearchDomains:[**MASKED**.github.beta.tailscale.net.] Hosts:3}
2022/05/08 18:46:15 peerapi: serving on http://** MASKED **:34277
2022/05/08 18:46:15 peerapi: serving on http://** MASKED **:34277
2022/05/08 18:46:15 health("dns"): error: getting OS base config is not supported
2022/05/08 18:46:15 magicsock: adding connection to derp-4 for home-keep-alive
2022/05/08 18:46:15 magicsock: 1 active derp conns: derp-4=cr0s,wr0s
2022/05/08 18:46:15 health("dns-os"): error: getting OS base config is not supported
2022/05/08 18:46:15 Switching ipn state Starting -> Running (WantRunning=true, nm=true)
2022/05/08 18:46:15 control: controlclient: restarting map request for "dns" health change to new state: getting OS base config is not supported
2022/05/08 18:46:15 control: controlclient: restarting map request for "dns-os" health change to new state: getting OS base config is not supported
2022/05/08 18:46:15 derphttp.Client.Connect: connecting to derp-4 (fra)
2022/05/08 18:46:15 ipnserver: conn2: ReadMsg: read unix /var/run/tailscale/tailscaled.sock->@: read: connection reset by peer
2022/05/08 18:46:15 control: RegisterReq: got response; nodeKeyExpired=false, machineAuthorized=true; authURL=false
2022/05/08 18:46:15 magicsock: derp-4 connected; connGen=1

Hi @dsbaars, can you try running tailscale ping and let me know whether that works? Something else to try is opening http://<UDM Tailscale IP> in your browser to see whether you can access the webpage.
(You'll find this at /mnt/data/tailscale/tailscale ping on the UDM).
Tailscale on the UDM runs in usermode and doesn't create a new network interface, so you won't find it in the ip addr output. Instead, you'll need to use the tailscale command line tool to do all of your troubleshooting, including using tailscale ping, tailscale status and tailscale netcheck.
If you're still seeing failures after trying the above, please can you include the output of tailscale netcheck and we can try and loop the folks from the Tailscale team in to debug this.

hanks @notheotherben that was not clear to me from the README.

tailscale ping

✅  This works to the UDM and from the UDM

http://

❌  Does not work from the network "behind" the UDM.
ℹ When I install tailscale client on one of the computers "behind" the UDM it is reachable.
But my idea of putting this tailscale client on the UDM is so that I don't need to put it on individual clients in the same subnet anymore.

tailscale netcheck

Looks good to me:
Report:
	* UDP: true
	* IPv4: yes, **HIDDEN**
	* IPv6: yes, **HIDDEN**
	* MappingVariesByDestIP: false
	* HairPinning: true
	* PortMapping:
	* Nearest DERP: London
	* DERP latency:
		- lhr: 27.7ms  (London)
		- fra: 31ms    (Frankfurt)
		- nyc: 107ms   (New York City)
		- ord: 118.3ms (Chicago)
		- dfw: 136.1ms (Dallas)
		- blr: 153.3ms (Bangalore)
		- sfo: 166.1ms (San Francisco)
		- sea: 173.3ms (Seattle)
		- sao: 233.3ms (São Paulo)
		- tok: 244ms   (Tokyo)
		- sin: 262.2ms (Singapore)
		- syd: 312.8ms (Sydney)

I guess I need to put a static route to the tailscale network manually?

I see, so you're looking to configure your network such that the UDM provides access to Tailnet IPs for all devices on your local network? Makes sense, however I don't know what would be entailed in setting that up and making it work. As I understand it, the way that Tailscale's subnet routers work is inherently simplex:

Subnet routers act as a gateway, relaying traffic from your Tailscale network onto your physical subnet.

I'd reach out to the folks over on tailscale/tailscale to find out whether this is a supported use case.


Don't request token for on-prem deployments

We don't need ROOKOUT_TOKEN for on-prem controllers

/jira open task


Should fallback be applied when circuit is closed?

This is not a bug per say, but I'm also not sure this is the correct behavior.
Shouldn't the fallback function only be applied when the circuit is open or half open?
I'm using this package to make http requests to several upstreams. And having the fallback being called when the fire action fails means that we lose the actual response from the upstream.
My suggestion is to invoke the fallback function only when the event 'reject' is also emitted. This will allow us to propagate the actual upstream response to above. Since we already have the response we might as well use it for debug and monitoring purposes.

@duartemendes Alternatively, what if the error was passed as a parameter to the fallback function? Would that be useful? Have a look at my PR #197

Thanks @hugoduraes. I tried it out and it solves my problem.
@lance can you take a look at @hugoduraes PR?

@duartemendes it's important for the fallback function to be executed whether the circuit is closed, open or half open, otherwise there would simply be a failure. The solution provided by @hugoduraes is great, in my opinion. I will merge it and close this issue. Thanks both of you for contributing. Would you mind telling me what project you are using this in, if it's open source?

Thanks @lance. :)


Can't Install 14.1 on macOS Ventura

Describe the bug
On my macOS Ventura (13.0) machine (M2 Air) I cannot install Xcode 14.1 (14b47b). The Release Candidate version works fine, or any prior versions I have tried. I have tried both being logged in and not logged in, tried a reinstall of Xcodes via brew, all result in this error:
The operation couldn’t be completed. (ProcessExecutionError(process: <NSConcreteTask: 0x600001bf25d0>, standardOutput: "", standardError: ""))

To Reproduce
On macOS Ventura, install Xcodes.app and attempt to install the latest xcode release.
Expected behavior
The version should install
Screenshots
If applicable, add screenshots to help explain your problem.
Version

OS: macOS 13.0
Xcodes: 1.8.0

@MattKiazyk It looks like this issue might not be the same as #323. I saw another issue is opened #338. I am also having the same issue as #338.

It looks like some partial download files are presented in the cache folder. This solves the problem.


hack: Bump vsp to main branch

Up till now we have validated "kubecon" branch is working. We now need to move to the merge with main to validate recent updates.

/lgtm

/lgtm

/retest


Terraform import is not working for global ip pool resource

Prerequisites
Create a global IP pool by utilizing Terraform Apply or Postman.
Postman was the tool I used to create:-
Request API - https:///dna/intent/api/v1/global-pool
Response:
{
"executionId": "d6cdec83-1ba3-40db-bed2-da7bf5a15fcb",
"executionStatusUrl": "/dna/platform/management/business-api/v1/execution-status/d6cdec83-1ba3-40db-bed2-da7bf5a15fcb",
"message": "The request has been accepted for execution"
Request Data:-
{
"settings": {
"ippool": [
{
"ipPoolName": "MyPool",
"type": "generic",
"ipPoolCidr": "<IP_ADDRESS>/24",
"gateway": "<IP_ADDRESS>",
"dhcpServerIps": [
"<IP_ADDRESS>"
],
"dnsServerIps": [
"<IP_ADDRESS>"
],
"IpAddressSpace": "IPv4"
}
]
}
}
The creation of the resource was successful, and I verified it using the get all (API- dna/intent/api/v1/global-pool?offset=1)
Describe the bug
During the execution of the Terraform Import command (terraform import terraform import dnacenter_global_pool.example "id:=d61b3141-9008-45f3-8032-d3638641945c"
I am encountering a problem. Take a look at the screen shot below.

Environment (please complete the following information):
Cisco DNA Center version and patch:
Terraform version: Terraform v1.6.1
Dcloud DNAC: Cisco 4D IBN Campus PoV Sandbox 4.0 Revision <IP_ADDRESS>
OS Version: windows_386

Hi @swarudka
Hi @swarudka
I tried exporting global_pool and it worked.
Can you enable debug and send me the output either screenshots or .txt/.log.
Also if you can send me the .tf you used for the test, because it looks more like a bug in the tf.
You can enable debugging by exporting these environment variables:
set -x DEBUG 'true
set -x TF_LOG 'DEBUG' set -x TF_LOG 'DEBUG'

Once debugging is enabled, you will be able to see all logs and dnac api calls.
Regards

@swarudka I'm closing this issue due to inactivity, if the issue persists or you have a new one, feel free to reopen the issue or create a new one.


Augmentation?

Hi, where is the augmentation implemeted? I could not find the weak aug and strong aug.

This is where we implemented strong augmentation.
https://github.com/facebookresearch/unbiased-teacher/blob/6977c6f77c812fae4064dc1b3865658c2ed247b1/ubteacher/data/detection_utils.py#L9-L46
For the weak augmentation, we only use horizontal random flip.
https://github.com/facebookresearch/unbiased-teacher/blob/6977c6f77c812fae4064dc1b3865658c2ed247b1/ubteacher/data/dataset_mapper.py#L92-L94
Thanks

I will close this issue as there is no other question. Welcome to reopen if you have other relevant questions.


Update README.md

Fixed #38
Added Contributors section to Readme.md file.

@liuxubo717 Please review the PR and merge it.


added catkin_package to properly deal with dependencies

It is suggested to do this here: http://wiki.ros.org/ROS/Tutorials/CreatingMsgAndSrv
Otherwise when you add ras_msgs to find_package it will spit out the cannot find config file message.

You are right, thanks!


Update domainbrain to 2.0.1

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for the contribution. It was merged directly as 299c14174fc08ec4667a09a3c3a168d5e1a88bce. Your contribution is still credited to you.


Ensure policy-testdrive binary is released when a new version is tagged

As per subject, ensure the GitHub Action we have in place is actually publishing the policy-testdrive static linux binary on the Releases page.
This is important because it allows users to get started with kubewarden policies.

Fixed


Implement similarSubjectsQuery

Subject::similarSubjectsQuery is only a mock and has to be replaced by a working implementation.

see #26

Delayed since we do not have the data needed for such a query.


Add flake8 & Format Files to be compliant

@nkorinek i'm adding flake8 here... be prepared to catch a LOT of other things we've missed!!

@nkorinek i merged this locally. there were a bunch of merge conflicts! please in the future

be sure that a PR is a WIP until it passes CI and there are NO MERGE CONFLICTS! then i will look at it
before doing any editing always update from the branch that you are working on!
I think we have one file left: base to edit!! i'll let you do that tomorrow or monday whenever you have time!

Thank you for your work on this.

@lwasser sorry!! That's my mistake, I'll try to be more careful in the future

closign this as i believe it was merged in another pr


Options to disable Pengu Loader loading screen and toast message

To be honest this project is currently inactive, so the feature request priority may be low.
I think I can make it but you need to wait until next release ( maybe after vanguard).
If somebody want to help out and make your first contribution , PRs are welcomed :).
Related codes:

Loading screen style:
https://github.com/PenguLoader/PenguLoader/blob/main/plugins/src/views/style.css#L12-L37

Toast message:
https://github.com/PenguLoader/PenguLoader/blob/main/plugins/src/views/components/Welcome.tsx#L62

You can make a new css plugin to hide this message.

💀

Next features:

[ ] Pengu silent mode (suppress popup messages)
[ ] League Client silent mode (i.e prevent the window being foreground in champ-select)

👀

I think I might try making silent mode


Print function Can't print multiple pages.

https://github.com/MicrosoftDocs/powerapps-docs/issues/3391

@TashasEv is this something you can comment on? I have no idea about the limitations or capabilities of Print().

updates has been verified and added to topic in a different pull request. Closing this on since it has conflicts.