Fixed NULL handling in codegen

This PR fixes NULL handling in the codegen engine. codegen::Value has a NULL-bit indicating if the value is NULL. This is in contrast to how NULL-checking is done in type::Value, which relies on special values. Additionally, this PR separates the notion of a type::SqlType, a SQL data type (i.e., bigint) that is static in the DBMS, from a runtime type::Type that captures a SQL data type, NULL-ability, and other type-specific information (e.g., the precision and scale of decimals). All codegen::Values have a codegen::type::Type. Having both a data type and NULL-ability information allows us to generate specialized code. For example, NULL-ability information allows us to avoid generating NULL-checking code altogether when materializing columns, performing comparisons, or executing binary functions - this is unavoidable in type::Value.
Part of this PR introduces a new TypeSystem class that is essentially a Postgres operator table. Every SqlType has a TypeSystem that captures all the operations that a SQL type supports. Any of these can be overridden by modifying the catalog.
This isn't fully ready to be merged. I just want eyes on it now because it's large.

Coverage decreased (-0.4%) to 71.075% when pulling 1069a91a5907f8d8ffe393356f88ca95eb3fa8ab on pmenon:type-system into 03c1764d2cbb1087c3909d9b13dd95ec8d304ad1 on cmu-db:master.

Coverage decreased (-0.6%) to 70.881% when pulling a1d2a4595641de7984d317d900a6653b558d1c45 on pmenon:type-system into 03c1764d2cbb1087c3909d9b13dd95ec8d304ad1 on cmu-db:master.

Coverage decreased (-0.6%) to 70.886% when pulling 0912a8be8ecb9d66ca5c22707b2f6535ba515954 on pmenon:type-system into 03c1764d2cbb1087c3909d9b13dd95ec8d304ad1 on cmu-db:master.

Coverage decreased (-0.5%) to 72.476% when pulling b6d8452f7c56f0d953829a4cd8d6b321f78cd089 on pmenon:type-system into aedc28d5f61885603854ef891a7b2e9a6d15e876 on cmu-db:master.

Coverage decreased (-0.5%) to 72.467% when pulling b6d8452f7c56f0d953829a4cd8d6b321f78cd089 on pmenon:type-system into aedc28d5f61885603854ef891a7b2e9a6d15e876 on cmu-db:master.

Coverage decreased (-0.5%) to 72.419% when pulling b6d8452f7c56f0d953829a4cd8d6b321f78cd089 on pmenon:type-system into aedc28d5f61885603854ef891a7b2e9a6d15e876 on cmu-db:master.

Coverage decreased (-0.5%) to 72.427% when pulling 89509cf8cc90fc63708e1fc6a4c472d3694b9d26 on pmenon:type-system into aedc28d5f61885603854ef891a7b2e9a6d15e876 on cmu-db:master.

@seojungmin You can review this PR now.
@apavlo Once the reviews/changes are done, this should be merged first as it's the largest.

Coverage decreased (-0.5%) to 72.41% when pulling 497027e9b5f81434b0c497a69c05fa7d55cfbb99 on pmenon:type-system into aedc28d5f61885603854ef891a7b2e9a6d15e876 on cmu-db:master.

Coverage decreased (-0.5%) to 72.386% when pulling 79cfe57c6208c523e6bf1b33aab12ece5e290296 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

Addressed all comments. If the latest build passes, this can be merged.

Coverage decreased (-2.6%) to 70.31% when pulling dc4239742b83c6b153a13dcc8cdf7c8559d2f1c4 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

Coverage decreased (-0.5%) to 72.408% when pulling dc4239742b83c6b153a13dcc8cdf7c8559d2f1c4 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

Coverage decreased (-0.5%) to 72.408% when pulling dc4239742b83c6b153a13dcc8cdf7c8559d2f1c4 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

Coverage decreased (-0.5%) to 72.398% when pulling 535da4439b246721d35161257a9f457a494fd027 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

Coverage decreased (-0.5%) to 72.402% when pulling ad2cd320262a573e8e6d0141cba7396eec23d357 on pmenon:type-system into 70197b232af0398cc209be4d251785fdd7c912d8 on cmu-db:master.

@apavlo This can be merged.

Coverage decreased (-0.5%) to 72.403% when pulling 09c971aaa703e9fa1013bc02de2605e0d953645a on pmenon:type-system into dcac90d9d5db592cf50b3613c2022a7371afa482 on cmu-db:master.


Antd 4 custom theme config with nextjs after .less CSS files appended multiple times on DOM.

I have an issue with antd v4 with nextjs to use .less based antd custom theme to produce more than times same .less CSS files are appended many more times on DOM.

This is OK if it is in development mode. Is there a problem in production mode?

@SolidZORO Yes. I faced the above issue in production mode also.
Note: I have used nextjs v13

@SolidZORO any update?

@SolidZORO any update?

I haven't used next for a long time. I don't have time to deal with it recently. You can see if you can solve it by yourself.

Hello, does anybody know something to replace next-plugin-antd-less
It seems like it's Incompatible with antd v5


[SPARK-15681][core] allow lowercase or mixed case log level string when calling sc.setLogLevel

What changes were proposed in this pull request?
Currently SparkContext API setLogLevel(level: String) can not handle lower case or mixed case input string. But org.apache.log4j.Level.toLevel can take lowercase or mixed case.
Also resetLogLevel to original configuration could be helpful for users to switch  log level for different diagnostic purposes.
How was this patch tested?
A unit testcase is added.

Test build #59678 has started for PR 13422 at commit 01e12f3.

Test build #59678 has finished for PR 13422 at commit 01e12f3.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59678/
Test FAILed.

Merged build finished. Test FAILed.

retest this please

Test build #59681 has started for PR 13422 at commit 01e12f3.

Test build #59681 has finished for PR 13422 at commit 01e12f3.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59681/
Test FAILed.

Test build #59697 has started for PR 13422 at commit bcb1130.

Test build #59697 has finished for PR 13422 at commit bcb1130.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59697/
Test FAILed.

Test build #59707 has started for PR 13422 at commit b0dc5ef.

Test build #59707 has finished for PR 13422 at commit b0dc5ef.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59707/
Test FAILed.

Merged build finished. Test FAILed.

Test build #59714 has started for PR 13422 at commit cb21175.

Test build #59714 has finished for PR 13422 at commit cb21175.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59714/
Test PASSed.

Merged build finished. Test PASSed.

@srowen Thank you! I updated the code upon your comments.

LGTM

Jenkins retest this please

Test build #59739 has started for PR 13422 at commit dab23fb.

Test build #59739 has finished for PR 13422 at commit dab23fb.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59739/
Test PASSed.

@srowen Thanks!

LGTM; merging to master / 2.0.


[Feature Request] Be able to use date specifications as homepage name

In Periodic Notes, I can specify a date format for the note location.  For example:
somefolder/YYYY/MM-MMMM/YYYY-MM-DD
with today (march 28, 2022) would have the today note created as:
somefolder/2022/03-March/2022-03-28.md
Allowing this would means my home page when I open Obsidian is the current daily note or a new one is created.

Closed by #16, thanks to @kzhovn


Lower minimum allowed Fan RPM.

Lower the minimume allowed rpm.
This keeps the motor running, but has less significant impact on the air-flow.
This is needed when the fan is used for forced air move inside->out and no backstop is installed and fan can't/should not be turned off.

In my situation my fan is installed in a house with very bad normal ventilation.
However now in the winter, it's unoccupied and there's no/minimal need to change the air inside.
The house is heated and running the fan at 800 RPM will cause unessesary heating costs.
With this change, the fan should still run but keep the outside cold air from flowing inside.
Unfortunately I'm not currently at the house and can check the absolute minimal RPM required to have the motor running reliably.

Hi,
can you please try this in your local version first? I remember trying some lower speeds when first creating this integration, and if I recall correctly it didn’t work well for me - the fan started racing up and down!

Hi,
Yeah, that's just that...
I'm not currently at the location where this fan is running so I can't physically test it - it's 140km away...
I remember when I ran this with the Original Python package inside Node-Red i was able to run the fan on significantly lower RPM's.
At that time I had sucess.
If you want me to check on location, Please leave this PR open as I can't check it right now.

800 RPM seems to be lowest setting that it accepts. It still runs fine at that speed. It results in ~26 m3/h ventilation. (The default speed is 975 RPM ~35 m3/h).
Maybe the worry from the manufacturer has been that a strong gust of wind could resist the blade spinning and since the RPM is too slow, it will not be able to start spinning. This is not an issue for ON/OFF situations as the fans first spin at a faster rate.

I tested the commit:
600 works + starts OK
550 works + starts OK
500 works + starts OK
450 works + starts OK
400 works + starts OK
It should be noted that this is probably highly dependent on the measurement conditions: installation type: roof/wall, presence of backflow mechanism, type, length and size of the ventilation duct, ventilation duct length and height difference, under/overpressure conditions, local weather conditions, room and outdoor temperature and pressure...
The measured RPM value was fluctuating -50 / +50 of the target value during the measurement. For 400 that's over +/- 10 % fluctuation.
=> 800 RPM is probably safe for most conditions.

Well, I think we are all beyond the reasons of making something secure.
Is there anything that can break or diminish if we allow a slower rpm and the fan stalls?
I have for myself a pretty good use case where a lower than normally accepted speed would suffice. I also do not directly care if the fan stops, it will at some point start again.
I just want minimal air flow to minimise airflow as I can't and don't want switch it off completely.
My fan is wall mounted on a loft pushing air inside->out.

Increase to 500 and I'll approve it.

Thanks! - Now increased to 500rpm

I am not sure what RPM the fan shows when stalled as I didn't actually pay attention to that, but I agree that this could just as well be handled in HA.


Store settings in multiple files 159

[ ] I updated the changelog
[ ] I updated the composer.json version
[ ] I wrote tests
[ ] I am proud of my code

Should be better now.


Support for route params

I was using this for a while and thought this might be a quick implementation of router params.
This is just passing the params to the reducer not via URL but via action itself.
at https://github.com/rackt/redux-simple-router/blob/master/src/index.js#L8
if we replace
function transition(method) {
  return arg => ({
    type: TRANSITION,
    method, arg
  })
}

with
function transition(method) {
  return (arg, data) => ({
    type: TRANSITION,
    method, arg, data
  })
}

we can do something link
import { routeActions } from 'redux-simple-router'
routeActions.push('login', 'custom data');

looks like the transition is an internal event. is there a way to add things to location update event?

params passed to transition.push will be the sent to history so we can use router params there.

It might be better like this:
function transition(method) {
  return ...arg => ({
    type: TRANSITION,
    method, args
  })
}

Then you can pass in an unlimited number of arguments, not just 1 or 2.

This would make a great PR! :wink:

But TRANSITION events are handled by the reduxRouterMiddleware. Only the UPDATELOCATION is passed to reducer. I was able to do this with
transition('push')({pathname: 'login' , state: somedata})
when dispatching and
action.location.state in reducer

Yes, that is correct. You should use the state property to store extra data about your location.


feat: prevent auto reply loops with inbound emails

Preventing "out of office/auto-reply loops" with the Notify auto-reply feature.
Some recipients reply to the Notify default auto-reply to the sender address and not the return path. Since the sender address is still a @notification.canada.ca, this email goes again through the same process. On and on. This is because we + the recipient implement poorly a defense mechanism to prevent this.
After looking at probematic payloads, we should be identify those in multiple ways:

the recipient is the GC Notify service<EMAIL_ADDRESS>in production
a Precedence header is set. This is not a real email standard but it seems used to identify automated responses/bulk emails
the subject contains specific words like "auto-reply"/"out of office" and the like

The PR relies on the Precedence header but we should look at other measures to prevent this in the future.

Revised my initial PR to add another defense mechanism if the GC Notify is in the list of recipients. With this additional commit, we'll have measures 1 and 2 in place.


HBO Max

Checklist

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

Example URLs
https://www.hbomax.com/collections/watch-free/barry-s1-e1
Description
Some videos are free, and it seems no DRM as well.
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://www.hbomax.com/collections/watch-free/barry-s1-e1']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.4 (CPython) - Windows-10-10.0.18363-SP0
[debug] exe versions: ffmpeg 2022-06-09-git-5d5a014199-essentials_build-www.gyan.dev
[debug] Proxy map: {}
[generic] barry-s1-e1: Requesting header
WARNING: Falling back on generic information extractor.
[generic] barry-s1-e1: Downloading webpage
[generic] barry-s1-e1: Extracting information
ERROR: Unsupported URL: https://www.hbomax.com/collections/watch-free/barry-s1-e1
Traceback (most recent call last):
  File "C:\python\lib\site-packages\youtube_dl\YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "C:\python\lib\site-packages\youtube_dl\YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "C:\python\lib\site-packages\youtube_dl\extractor\common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "C:\python\lib\site-packages\youtube_dl\extractor\generic.py", line 3489, in _real_extract
    raise UnsupportedError(url)
youtube_dl.utils.UnsupportedError: Unsupported URL: https://www.hbomax.com/collections/watch-free/barry-s1-e1

Some videos are free, and it seems no DRM as well.

What do you mean by "it seems"? Did you test whether it had drm? You can find instructions to do that here

I might have more experience with DRM than anyone on this issue tracker, including @gamer191, so I take the previous comment as an insult.
I have now blocked @gamer191, because of their past history of trolling threads. I refuse to engage in any pointless back and forth with this person. They have a repeated history of derailing threads with off topic and political comments. Not gonna happen this time.

I must say thanks for the education @gamer191. That's good information

@SavSanta has been blocked. anyone else who wants to be blocked, feel free to mention @gamer191

Some videos are free, and it seems no DRM as well.

What do you mean by "it seems"? Did you test whether it had drm? You can find instructions to do that here

I got the m3u8 from one of the requests on the page (https://medium.ngtv.io/v2/media/...) and it doesn't have any! In fact, throwing it into yt-dlp without any additional parameters seems to work without any issues at all.
[debug] Command-line config: ['--verbose', 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/master_cl_de.m3u8']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.07.18 [135f05e]
[debug] Python 3.10.6 (CPython 64bit) - Linux-5.19.2-arch1-1-x86_64-with-glibc2.36 (glibc 2.36)
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg 5.0.1 (setts), ffprobe 5.0.1, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.14.1, certifi-2022.06.15, mutagen-1.45.1, secretstorage-3.3.2, sqlite3-2.6.0
[debug] Proxy map: {}
[debug] [generic] Extracting URL: https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/master_cl_de.m3u8
[generic] master_cl_de: Downloading webpage
[debug] Identified a direct video link
[generic] master_cl_de: Downloading m3u8 information
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), acodec, filesize, fs_approx, tbr, vbr, abr, asr, proto, vext, aext, hasaud, source, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] master_cl_de: Downloading 1 format(s): 8138+audio-ENGLISH
[debug] Invoking hlsnative downloader on "https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/5cfdca83-7b48-49e5-b9fe-0902ec725b88-565823-1920x1080_8000k.m3u8"
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 305
[download] Destination: master_cl_de [master_cl_de].f8138.mp4
[download]   2.3% of ~1.50GiB at    2.69MiB/s ETA 12:05 (frag 7/305)

This isn't YT-DLP repo.

OH my bad, i seriously thought i was there.
It still works in youtube-dl though!
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/master_cl_de.m3u8']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.6 (CPython) - Linux-5.19.2-arch1-1-x86_64-with-glibc2.36
[debug] exe versions: ffmpeg 5.1, ffprobe 5.1, rtmpdump 2.4
[debug] Proxy map: {}
[generic] master_cl_de: Requesting header
[generic] master_cl_de: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/5cfdca83-7b48-49e5-b9fe-0902ec725b88-565823-1920x1080_8000k.m3u8'
[download] Destination: master_cl_de-master_cl_de.f8138.mp4
[debug] ffmpeg command line: ffmpeg -y -loglevel verbose -headers 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.39 Safari/537.36
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: en-us,en;q=0.5
' -i https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/5cfdca83-7b48-49e5-b9fe-0902ec725b88-565823-1920x1080_8000k.m3u8 -c copy -f mp4 file:master_cl_de-master_cl_de.f8138.mp4.part
ffmpeg version n5.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 12.1.1 (GCC) 20220730
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-shared --enable-version3
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
[tcp @ 0x563773d91f40] Starting connection attempt to <IP_ADDRESS> port 443
[tcp @ 0x563773d91f40] Successfully connected to <IP_ADDRESS> port 443
[hls @ 0x563773d8dcc0] Skip ('#EXT-X-VERSION:6')
[hls @ 0x563773d8dcc0] HLS request for url 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/h264_1920x1080_8000k.mp4', offset 0, playlist 0
[hls @ 0x563773d8dcc0] Opening 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/h264_1920x1080_8000k.mp4' for reading
[tcp @ 0x5637743c8680] Starting connection attempt to <IP_ADDRESS> port 443
[tcp @ 0x5637743c8680] Successfully connected to <IP_ADDRESS> port 443
[AVIOContext @ 0x5637743c4140] Statistics: 876 bytes read, 0 seeks
[hls @ 0x563773d8dcc0] HLS request for url 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_1.m4s', offset 0, playlist 0
[hls @ 0x563773d8dcc0] Opening 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_1.m4s' for reading
[tcp @ 0x5637743bfc40] Starting connection attempt to <IP_ADDRESS> port 443
[tcp @ 0x5637743bfc40] Successfully connected to <IP_ADDRESS> port 443
[hls @ 0x563773d8dcc0] HLS request for url 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_2.m4s', offset 0, playlist 0
[hls @ 0x563773d8dcc0] Opening 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_2.m4s' for reading
[tcp @ 0x563773e331c0] Starting connection attempt to <IP_ADDRESS> port 443
[tcp @ 0x563773e331c0] Starting connection attempt to 2600:1405:1000::17c4:2f39 port 443
[tcp @ 0x563773e331c0] Starting connection attempt to <IP_ADDRESS> port 443
[tcp @ 0x563773e331c0] Successfully connected to <IP_ADDRESS> port 443
[h264 @ 0x56377439ea40] Reinit context to 1920x1088, pix_fmt: yuv420p
Input #0, hls, from 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/5cfdca83-7b48-49e5-b9fe-0902ec725b88-565823-1920x1080_8000k.m3u8':
  Duration: 00:30:27.83, start: 0.000000, bitrate: 0 kb/s
  Program 0
    Metadata:
      variant_bitrate : 0
  Stream #0:0: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], Closed Captions, 8216 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
    Metadata:
      variant_bitrate : 0
      major_brand     : isom
      minor_version   : 0
      compatible_brands: iso8mp41dashavc1cmfc
      creation_time   : 2021-12-13T21:30:51.000000Z
Output #0, mp4, to 'file:master_cl_de-master_cl_de.f8138.mp4.part':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (0x0) [SAR 1:1 DAR 16:9], q=2-31, 8216 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
    Metadata:
      variant_bitrate : 0
      major_brand     : isom
      minor_version   : 0
      compatible_brands: iso8mp41dashavc1cmfc
      creation_time   : 2021-12-13T21:30:51.000000Z
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[hls @ 0x563773d8dcc0] HLS request for url 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_3.m4s', offset 0, playlist 0
[https @ 0x5637743c5780] Opening 'https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/segment_3.m4s' for reading
^Cframe=  359 fps= 42 q=-1.0 Lsize=   11883kB time=00:00:11.91 bitrate=8172.1kbits/s speed=1.41x
video:11879kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.036609%
Input file #0 (https://clips-media-aka.warnermediacdn.com/hbomax/clips/2021-12/565823-3464db935b394afbba5ce3ff9e375f6c/cmaf/h264_1920x1080_8000k/5cfdca83-7b48-49e5-b9fe-0902ec725b88-565823-1920x1080_8000k.m3u8):
  Input stream #0:0 (video): 359 packets read (12163707 bytes);
  Total: 359 packets (12163707 bytes) demuxed
Output file #0 (file:master_cl_de-master_cl_de.f8138.mp4.part):
  Output stream #0:0 (video): 359 packets muxed (12163707 bytes);
  Total: 359 packets (12163707 bytes) muxed
[AVIOContext @ 0x563773dfbcc0] Statistics: 12168164 bytes written, 2 seeks, 50 writeouts
[AVIOContext @ 0x5637743c5340] Statistics: 6006705 bytes read, 0 seeks
[AVIOContext @ 0x5637743cabc0] Statistics: 6170724 bytes read, 0 seeks
[AVIOContext @ 0x5637743b80c0] Statistics: 9478 bytes read, 0 seeks


feat: Bump rustc version to 1.80

Description
Bump rustc version to 1.80

Included in  v3.2.00 already


All page text missing in IE 11, but not in chrome

Link to PDF file (or attach file here):
blankinvoice.PDF
Configuration:

Web browser and its version:IE 11.0.9600.18230, update versions 11.0.29.  The "install new versions" automatically box is checked. All windows updates applied as of March 31, 2016
Operating system and its version: Windows 7 Pro x64
PDF.js version:1.2.109 and 1.3.91 have the same issue
Is an extension:no

Steps to reproduce the problem:

Use pdf.js to render the attached blankinvoice.pdf

What is the expected behavior? (add screenshot)

What went wrong? (add screenshot)
In IE the lines and background colors are displayed, but there is no text. In chrome, the document renders correctly.
In the developer tools in IE, I receive this error on every pdf (even those that render correctly):
Unable to get property 'src' of undefined or null reference
File: pdf.js, Line: 9529, Column: 5

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):
A link wouldn't do any good. You would need an account to sign in to the system. The company would not let me provide you an account.

I downloaded the PDF and opened it in the online viewer (https://mozilla.github.io/pdf.js/web/viewer.html) on Browserstack (Windows 7, IE 11.0.9600.17420), and it looks fine.
Are you using the default viewer or a modified version?

In the developer tools in IE, I receive this error on every pdf (even those that render correctly):
Unable to get property 'src' of undefined or null reference
File: pdf.js, Line: 9529, Column: 5

You would need an account to sign in to the system. The company would not let me provide you an account.

The company developers forgot to include 'web/compatibility.js' library to the custom solution they created. See https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions#faq-support
Closing as answered. Please provide public access to minimal example with steps to reproduce to reopen the issue.


add flag to bake non bootstrap validator stakes into genesis

Problem
There is currently no efficient way of to bake validator stakes into genesis without requiring the user to serialize and deserialize validator accounts into and out of a primordial-accounts-file file.
Summary of Changes
add flag for baking validator (non bootstrap) identity, vote, and stake accounts into genesis
add flag for baking validator (non bootstrap) stake and identity lamports into genesis. all non bootstrap validators will be set to the same stake and account lamports

I'm wondering if we want a more flexible interface here. I know you're reusing a lot of the --bootstrap-validator logic, and it is nice and clean. And I know it also matched the specific use-cases of /net and validator-lab. But the upshot is that this only enables two stake-levels of validators (bootstrap and internal).
What if internal_validator took something like this as input instead:
Arg::with_name("internal_validator")
    .number_of_values(5)
    .value_name("IDENTITY_PUBKEY VOTE_PUBKEY STAKE_PUBKEY IDENTITY_BALANCE_SOL STAKE_BALANCE_SOL")`

Oh, just saw the help text; it looks like you were originally headed that direction? https://github.com/anza-xyz/agave/pull/2704/files#diff-4ba9fb9faa2132f5a4b9dde7b311023011c423c34c21bebf6c8f6f638fae0bf3R321

I'm wondering if we want a more flexible interface here. I know you're reusing a lot of the --bootstrap-validator logic, and it is nice and clean. And I know it also matched the specific use-cases of /net and validator-lab. But the upshot is that this only enables two stake-levels of validators (bootstrap and internal).
What if internal_validator took something like this as input instead:
Arg::with_name("internal_validator")
    .number_of_values(5)
    .value_name("IDENTITY_PUBKEY VOTE_PUBKEY STAKE_PUBKEY IDENTITY_BALANCE_SOL STAKE_BALANCE_SOL")`

Oh, just saw the help text; it looks like you were originally headed that direction? https://github.com/anza-xyz/agave/pull/2704/files#diff-4ba9fb9faa2132f5a4b9dde7b311023011c423c34c21bebf6c8f6f638fae0bf3R321

omg i forgot to update the comment lol. and yesss I was. I was thinking it made it more confusing to have pubkeys and lamports in the same argument. But if we want this level of flexibility (sounds like we do), then it makes sense to add lamports to the end of that arg

But if we want this level of flexibility (sounds like we do), then it makes sense to add lamports to the end of that arg

Alternately, we could read a yaml file that defines a list of validators with their keys and different funding levels. But I wasn't sure if this would be confusing alongside the primordial-accounts file, and/or harder to use than a long, multi-type CLI arg... What do you think?

But if we want this level of flexibility (sounds like we do), then it makes sense to add lamports to the end of that arg

Alternately, we could read a yaml file that defines a list of validators with their keys and different funding levels. But I wasn't sure if this would be confusing alongside the primordial-accounts file, and/or harder to use than a long, multi-type CLI arg... What do you think?

I do think that a yaml file is a little easier to manage. But, ya not sure it makes sense along side of primordial accounts file. I assume we do NOT want to change the functionality of the primordial-accounts file, right? Or would that be an option?

I assume we do NOT want to change the functionality of the primordial-accounts file, right? Or would that be an option?

I'd say it's an option if we can do it in a backward compatible way; ie. still parse files written with the existing format. There are various ways I can think to do that. One way might be to replace Base64Account in the deserialization with an enum with Base64Account and some new validator-info type.
But I'm also not totally opposed to a 2nd yaml for validator defs. I think we could make it distinct enough and clear enough to work... This crate probably needs a readme to explain stuff like the primodial-accounts file syntax anyway.

I assume we do NOT want to change the functionality of the primordial-accounts file, right? Or would that be an option?

I'd say it's an option if we can do it in a backward compatible way; ie. still parse files written with the existing format. There are various ways I can think to do that. One way might be to replace Base64Account in the deserialization with an enum with Base64Account and some new validator-info type.
But I'm also not totally opposed to a 2nd yaml for validator defs. I think we could make it distinct enough and clear enough to work... This crate probably needs a readme to explain stuff like the primodial-accounts file syntax anyway.

i think the backwards compatibility makes the most sense since it's somewhat similar logic (Adding accounts into genesis). I'll take a stab at it.

@yihau - pardon my ignorance. How do we do this on invalidator today? Should we adopt what @gregcusack is doing? What does it buy us?

I hacked for solana-genesis to handle different stakes for validators. for now, all the stakes are the same, so it's quite easy to manage. and yeah, we do have some primordial-accounts-file in the genesis 🙈 I think this will be really useful if we need to assign different stakes again in the future

ya as @yihau mentioned, the main motivations are:

Bake validator stakes into genesis with different stake and account distributions
Remove the overhead of forcing the user to serialize and deserialize validator stake and vote account state if they want varying stake distributions


Implement pluggy as plugin manager

Description
sorry to muddy the water a bit... but in the interest of being thorough, I'd like us to at least consider using pluggy (the plugin backend for pytest and tox) as our plugin manager before moving forward..  While I was writing the code for #891 that would control plugin module discovery and how plugins declare the interfaces that they implement,  I was trying to create at least some code that might be reusable as we add different (non-reader) type plugins later... which eventually led me to pluggy.  This PR serves as a minimal example of what it might look like to use pluggy as our plugin system.  I actually like it a lot.
nice things
What I really like about pluggy is how the host application declares hook specifications that are basically just well-documented function signatures (with type annotations if desired) that plugins can implement. We then identify places in our code that these hooks/functions get called. These hookspecs lend themselves nicely to autodocs (see the pytest hooks API).  We can then also eat our dogfood/write our own internal plugins for these hooks, and can modify the order in which the registered hook implementations are called.
It has a nice namespace-based plugin organization, and it also allows for easy hook deprecation.
one thing you might not like
the way pytest uses this (and the convention seems to be) that all hook functions that plugin modules may define must begin with the name of the main application (e.g. pytest_... or in our case napari_).  since ultimately this is about plugging in to napari, i don't see that as a big problem, but just wanted to point it out in case you think that is too "napari-centric"
update: but see https://github.com/pytest-dev/pluggy/pull/251, which could address this.

The entirety of the recently proposed IO plugin architecture can basically be done in a few lines with pluggy (most of which is just docs).  In this PR:

hook specifications are defined in napari/plugins/hookspecs.py
an internal "plugin" (implementation) of the one current hook is in napari/plugins/_internal.py
plugin registration and discovery happens in napari/plugins/__init__.py
the one currently implemented hook is called as an example here in QtViewer.

additional note:
note the "plugin reader" API here has been changed slightly here.  plugins must now define a single function "napari_get_reader" that accepts a path (str) and either returns None if it cannot be read, or returns a new function (the actual reader function that returns a list of layer data) if it can be read.  (so basically plugins just define the checker function and it either returns None or the reader function).

In the interest of keeping the plugin PRs as small and reviewable as possible, I think I'm going to say that this PR is ready for review.  I removed the actual "hookup" of the reader plugin for a later PR.  This PR focuses on:

integrating pluggy with our own PluginManager (that looks under the napari namespace)
autodiscovery of plugins by naming convention and entry points
initial hookspecs and builtin hookimpl examples
lots of tests to make sure hookspecs are well-annotated and documented, and that plugin discovery is working.
some convenience functions that would enable us to query pypi for napari plugins and their versions, with mocked tests.

plans for follow-up PRs are in #936.

Starting to look over this now @tlambert03 - I'm not quite sure about leaving the hookspec and our built-in hookimpl for napari_get_reader without hooking them up, as I'd like to think about more about how they actually work in practice before committing to them - right now it seems like you've moved away from the checker / reader approach into a single function that then returns another function if it is readable right? This maybe the way we want to go, but might be nice to be able to review that independently from all the other changes. If you remove it is there still enough left in this PR (in terms of tests you've added etc) for it to be meaningful? That follow-up PR could add hookspec and our built-in hookimpl for napari_get_reader and hook them up in one go

a more descriptive name than hookimpl would be nice

"hookimpl" was not my choice, it's pluggy's standard abbreviation for hook implementation, so I was just sticking with the convention used by other packages adopting pluggy.  sound good, or still want to consider changing it for our usage?

it seems you aren't naming function return variables in the docs – not sure if this is incorrect syntax but if it is, please correct it

can you point me to the specific line(s) that you are referring to?

"hookimpl" was not my choice, it's pluggy's standard abbreviation for hook implementation, so I was just sticking with the convention used by other packages adopting pluggy. sound good, or still want to consider changing it for our usage?

right, as you could tell by my other comment, i didnt realize that we would not be providing the mechanism
apologies, i was lazy and didnt read the thread :)

can you point me to the specific line(s) that you are referring to?

hookspecs:46
manager:57
manager:84
pypi:30
pypi:55

can you point me to the specific line(s) that you are referring to?

ahh.  I see!  that was just the format that my autodocstring extension gave me.  Looks like it's a valid numpydoc (see #5 here).  I don't mind adding the optional name, but since there's a description right below, and since the return variable name isn't necessarily even used in the body of the function, it feels slightly weirder to provide it than to not.  but don't have a strong opinion.  thoughts?

Thanks for that review @kne42 and updates @tlambert03. Is this ready to go in? Maybe @jni wants to give it one final look over and then we merge. Super excited to start our pluggy journey :-)

yep, ready to go as far as I'm concerned.

Great stuff, thanks for the thorough review.  Will give it some time later today

ok @jni, I think i've addressed all the open questions in here.  I resolved conversations i didn't think needed reviewing, but left open the ones you either need to respond to, or might want to read.

I might also suggest adding a simple plugin to examples/. I suspect that this would clarify my understanding of this whole endeavor...

Since nothing is actually hooked up here... let's leave that until #937 at least.  hard to make an example when there is no actual hook consuming the plugins.  if you want a sneak peek of a  full installable napari plugin example, try this: https://github.com/napari/napari/pull/937#issuecomment-581178696

OK @jni, I think this is ready for your eyes again.  I made the hookimpl and hookspec changes (note, our module is still named hookspec, but all instances are hook_specification...)
the other main changes are  new Exception classes in plugins.manager.py and a modified plugin detection scheme, starting in NapariPluginManager.discover, calling manager.iter_plugin_modules() and then wrapping the registration of each plugin in some specific error catching in _register_module.

@jni: Really excited to have this in — I can use it quite immediately to distribute something to read a specific type of satellite data from a collaborator!

well... not quite immediately :)  We now need to get #937 in.  but it's mostly ready to go.  So once tests pass here, I will merge this to master, and then merge into #937 so it should be much easier to review at that point.  We should then make sure that we're happy with the reader plugin tests over there.  But then we're off and running!
🏃♂💨

let there be plugins.

(a) :tada: :fireworks: :raised_hands:
(b) Ha, nice hack doing jumbomojis in markdown. =D

Very exciting!


Resuming training from last iteration

Hello @daylen @akirafukui @Seth-Park
Can I resume training from the last iteration? I am trying to find where I can input the last solver state, to resume training from there.
Thanks.

If I recall correctly, we didn't build in support for restarting training. I think the compact bilinear layer messed up resuming.


Resolve test failure due to slow server shutdown

Definition of Done
Ensure that the following tests succeeds:
  1) Provider logs
       JSON-RPC provider
         "after each" hook: Remove provider for "should log basic methods":
     Error: Closing the server took more than 1 second (5010ms), which can lead to incredibly slow tests. Please fix it.
      at Context.<anonymous> (test\internal\hardhat-network\helpers\useProvider.ts:155:15)
      at processTicksAndRejections (node:internal/process/task_queues:95:5)

source: https://github.com/NomicFoundation/hardhat/actions/runs/5730334578/job/15528932333

I looked into this and learned the following:

I can't reproduce the failures locally.
Running yarn build && DEBUG=hardhat:core:hardhat-network:jsonrpc yarn test -g "Provider logs JSON-RPC provider" in hardhat-core in the rethnet/main branch shows suspiciously long shutdown times for the HTTP server in the JsonRpcServer (900-1000ms).

It's probably due to the socket being kept open for some reasons after the last request which prevents closing the server. This is a well-known problem with NodeJS.
I haven't managed to find what keeps the socket open in reasonable time.
I tried a hacky solution to force the server to close immediately. This resulted in the HTTP server shutting down immediately and tests were still passing.
Since the JsonRpcServer is exposed to users, I looked into finding a non-hacky solution by properly prevent keep alive/new connections when the server is shutting down and destroying sockets manually. There are several libraries that propose to do this, but none of them seem maintained. So we would have to write our own implementation which is non-trivial.

Running the same command from 2. in main or hardhat-edr-merge shows that the HTTP server shuts down in <10ms.

I tried to find a diff that could account for this, but had no luck.

I'd propose that we wait until hardhat-edr-merge is merged and see if the problem persists after that before spending more time on it.

Thanks for the research, @agostbiro.
I feel out of my depth here, in NodeJS land. Do you have any insights on this, @alcuadrado or @fvictorio ?

Running yarn build && DEBUG=hardhat:core:hardhat-network:jsonrpc yarn test -g "Provider logs JSON-RPC provider" in rethnet/main now yields server shutdown times of ~10ms as opposed to the prior ~1000ms before merging main into rethnet/main.
I also looked through the hardhat-core workflow failures in the latest commit in the last few PRs to rethnet/main and haven't seen this failure, so I think it's safe to say that this particular issue is resolved.


Rename property "WebBrowserControl"

Rename property "WebBrowserControl" to "EdgeBrowserControl".
This should clearly express that BAC depends on the edge browser control.

The value in the enumeration “chDisplayIn” can also be renamed at this opportunity

The next thing is to remove the property let "Control".
This was helpful when we supported various controls.
Now the whole Better Access Charts depends on the edge browser control

Released with version 4.08.11


[Feature] dbt init add package-lock.yml to .gitignore

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
Please add "package-lock.yml" to core/dbt/include/starter_project/.gitignore.  This file should not be checked into source control.  When creating a new project, it should be excluded.
Describe alternatives you've considered
No response
Who will this benefit?
All users
Are you interested in contributing this feature?
Yes
Anything else?
No response

Thanks for reaching out @tphillip33 !
Our recommendation is to check package-lock.yml into version control, so we're going to leave the default .gitignore as-is.

@dbeatty10   I don't understand why you would check this into source control when you don't check in dbt_packages/.  The data in package-lock.yml is directly related to dbt_packages installed.  If you start clean without dbt_packages populated, what is the point of having package-lock.yml?
In fact, I was going to suggest you move this file to dbt_packages, instead of the root.  Since it is directly related to the installed packages in dbt_packages.


Assign single reviewer

Hello, my team would like to use this action for assigning a random assignee and a random reviewer to incoming PRs.
Issue
As far as I see, it is possible with this action to assign a single assignee different from the author to an incoming PR. But after that the whole team (excluding the author) is assigned as the reviewers. We would like there to be only one person or a set number  people different form the author and the assignee being set as reviewer(s).
We would be very grateful if you were to implement a change that would allow this. And frankly I think that the addition of a numOfReviewer parameter would a nice complement to the numOfAssignee parameter.

Hi @jtodev, thanks for reaching out. As you pointed out, there's no numOfReviewer parameter at the moment but despite it's name the numOfAssignee parameter serves this exact purpose when the action is running in the context of a PR.
Say you have a team of two assigned via teams and that you have numOfAssignee set to 1, the action will pick a random team member as a reviewer provided that they are not the PR author.
I added a test for this behavior here.
Does it make sense?


Complain about pycryptdome version - 3.4.3

Bug report
Your Environment

Netflix add-on version: Leia (18)
Operating system version/name: Ubuntu 20.10 Groovy
Device model:

Used Operating system:

[ ] Android
[ ] iOS
[x ] Linux
[ ] OSX
[ ] Raspberry-Pi
[ ] Windows

Describe the bug
Trying to used this plugin and complain about pycryptdome wrong version 3.4.3
Expected behavior
I expected to be possible install this plugin without issues
Actual behavior
complain about pycryptdome wrong version 3.4.3
Steps to reproduce the behavior

Install Ubuntu 20.10
Install kodi from defaul repo
Download https://github.com/CastagnaIT/plugin.video.netflix
Initialize the kodi
Try to install plugin but zip file
Then complain about pycryptdome version - 3.4.3

Possible fix

Debug log

The debug log can be found from this link:
Additional context or screenshots (if appropriate)
Installation

[ ] I'm using other Netflix Repo
[ ] I'm using a different source

Other information

Screenshots

https://github.com/CastagnaIT/plugin.video.netflix/blob/master/requirements.txt
Says it needs version 3.4.5


FDO service & route

CGO_ENABLED=1 - FDO uses cgo with libfdo_data, needed for compilation
mod tidy - clean
Use vet inside of test container - vet will try to use libfdo_data, the test-container has it inside
Improve test-container - not every OS support libfdo_data.so, this will help build & test things from your repo & branch
FDO service & route - created

Codecov Report

Merging #378 (e4d7f7c) into main (85e1eb8) will increase coverage by 1.85%.
The diff coverage is 67.66%.

@@            Coverage Diff             @@
##             main     #378      +/-   ##
==========================================
+ Coverage   25.81%   27.66%   +1.85%
==========================================
  Files          31       32       +1
  Lines        2851     3065     +214
==========================================
+ Hits          736      848     +112
- Misses       2026     2121      +95
- Partials       89       96       +7

Impacted Files
Coverage Δ

pkg/models/updates.go
0.00% <ø> (ø)

pkg/services/ownershipvoucher.go
43.58% <43.58%> (ø)

pkg/clients/fdo/client.go
75.00% <69.23%> (-2.64%)
:arrow_down:

pkg/routes/ownershipvoucher.go
92.10% <92.10%> (ø)

pkg/clients/imagebuilder/client.go
34.57% <0.00%> (-2.93%)
:arrow_down:

pkg/routes/devices.go
28.57% <0.00%> (-0.30%)
:arrow_down:

pkg/services/images.go
8.71% <0.00%> (+0.02%)
:arrow_up:

pkg/routes/images.go
26.00% <0.00%> (+0.07%)
:arrow_up:

pkg/routes/thirdpartyrepo.go
25.12% <0.00%> (+4.86%)
:arrow_up:

Continue to review full report at Codecov.

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

@Mergifyio refresh

@Mergifyio refresh

@Mergifyio refresh

@Mergifyio refresh

@Mergifyio refresh

@Mergifyio refresh

@maxamillion @biancarosa

@Mergifyio refresh

@biancarosa I've created quay.io/cloudservices/edge-api:libfdo-data which is the internal version.
Github actions can't pull it without secrets so for Github actions we can use the private for fast tests && coverage, and for building edge-api binary we will use the internal version. WDYT?

I created the spec for FE, so this will be much easier for them :)
I'll create a separate PR for openapi, thanks !


Fix url parsing for S3

Add test for colon in key name of s3 uri. Apply bug fix on line 491 of smart_open/smart_open_lib.py. To my knowledge, other tests are still passing and this didn't introduce any regressions.
Let me know if there's anything else to do. For now we just downgraded to 1.6.0, but hoping to see this in the next release. Thanks!

Looks like the issue came back?
Getting:
>>> smart_open.open("s3://bucket/foo:bar@baz")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/smart_open_lib.py", line 224, in open
    binary = _open_binary_stream(uri, binary_mode, transport_params)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/smart_open_lib.py", line 400, in _open_binary_stream
    fobj = submodule.open_uri(uri, mode, transport_params)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 221, in open_uri
    parsed_uri = parse_uri(uri)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 112, in parse_uri
    head, key_id = uri.split('/', 1)
ValueError: not enough values to unpack (expected 2, got 1)
>>> smart_open.open("s3://bucket/foo:bar@baz/boz")
Traceback (most recent call last):
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 330, in _get
    return client.get_object(Bucket=bucket, Key=key, Range=range_string)
  File "/home/abury/.local/lib/python3.10/site-packages/botocore/client.py", line 530, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/home/abury/.local/lib/python3.10/site-packages/botocore/client.py", line 964, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (AuthorizationHeaderMalformed) when calling the GetObject operation: The authorization header is malformed; the Credential is mal-formed; expecting "<YOUR-AKID>/YYYYMMDD/REGION/SERVICE/aws4_request".

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/smart_open_lib.py", line 224, in open
    binary = _open_binary_stream(uri, binary_mode, transport_params)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/smart_open_lib.py", line 400, in _open_binary_stream
    fobj = submodule.open_uri(uri, mode, transport_params)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 224, in open_uri
    return open(parsed_uri['bucket_id'], parsed_uri['key_id'], mode, **kwargs)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 291, in open
    fileobj = Reader(
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 574, in __init__
    self.seek(0)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 666, in seek
    self._current_pos = self._raw_reader.seek(offset, whence)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 417, in seek
    self._open_body(start, stop)
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 438, in _open_body
    response = _get(
  File "/home/abury/.local/lib/python3.10/site-packages/smart_open/s3.py", line 338, in _get
    raise wrapped_error from error
OSError: unable to access bucket: 'baz' key: 'boz' version: None error: An error occurred (AuthorizationHeaderMalformed) when calling the GetObject operation: The authorization header is malformed; the Credential is mal-formed; expecting "<YOUR-AKID>/YYYYMMDD/REGION/SERVICE/aws4_request".

Are you able to debug?


CentOS issues with ls-remote and install

Operating system and version: CentOS 5.10

nvm debug output:

nvm --version: v0.33.4
$SHELL: /bin/bash
$HOME: /data/jenkins
$NVM_DIR: '$HOME/.nvm'
$PREFIX: ''
$NPM_CONFIG_PREFIX: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu)'
uname -a: 'Linux 2.6.18-371.12.1.el5 #1 SMP Wed Sep 3 16:22:34 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux'
OS version: CentOS release 5.10 (Final)
curl: /usr/bin/curl, curl 7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
wget: /usr/bin/wget, GNU Wget 1.11.4 Red Hat modified
sed: invalid option -- E
Usage: sed [OPTION]... {script-only-if-no-other-script} [input-file]...

  -n, --quiet, --silent
                 suppress automatic printing of pattern space
  -e script, --expression=script
                 add the script to the commands to be executed
  -f script-file, --file=script-file
                 add the contents of script-file to the commands to be executed
  -i[SUFFIX], --in-place[=SUFFIX]
                 edit files in place (makes backup if extension supplied)
  -c, --copy
                 use copy instead of rename when shuffling files in -i mode
         (avoids change of input file ownership)
  -l N, --line-length=N
                 specify the desired line-wrap length for the `l' command
  --posix
                 disable all GNU extensions.
  -r, --regexp-extended
                 use extended regular expressions in the script.
  -s, --separate
                 consider files as separate rather than as a single continuous
                 long stream.
  -u, --unbuffered
                 load minimal amounts of data from the input files and flush
                 the output buffers more often
      --help     display this help and exit
      --version  output version information and exit

If no -e, --expression, -f, or --file option is given, then the first
non-option argument is taken as the sed script to interpret.  All
remaining arguments are names of input files; if no input files are
specified, then the standard input is read.

E-mail bug reports to<EMAIL_ADDRESS>.
Be sure to include the word ``sed'' somewhere in the ``Subject:'' field.
git: , git version 2.1.3
nvm current: system
which node: /usr/bin/node
which iojs: which: no iojs in (/local/bin:/local/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin)
which npm: /usr/bin/npm
npm config get prefix: /opt/node-v6.11.2-linux-x64
npm root -g: /opt/node-v6.11.2-linux-x64/lib/node_modules

nvm ls output:

How did you install nvm? (e.g. install script in readme, homebrew): Shell script following the readme

git clone https://github.com/creationix/nvm.git ${NVM_DIR}
git -C ${NVM_DIR} checkout --quiet v0.33.4
. ${NVM_DIR}/nvm.sh
nvm ls-remote

What steps did you perform? nvm ls-remote and nvm install

What happened?
On these CentOS boxes, nvm ls-remote breaks for me as of version 0.33.3 and nvm install breaks for me as of version 0.31.1. The nvm ls-remote command returns "N/A". Checking the connection to https://nodejs.org/dist/ with curl works fine. Using version 0.31.0 works so far.

What did you expect to happen?
The commands should work as usual.

Is there anything in any of your profile files (.bashrc, .bash_profile, .zshrc, etc) that modifies the PATH?

If you are having installation issues, or getting "N/A", what does curl -I --compressed -v https://nodejs.org/dist/ print out?

* About to connect() to nodejs.org port 443
*   Trying <IP_ADDRESS>... connected
* Connected to nodejs.org (<IP_ADDRESS>) port 443
* successfully set certificate verify locations:
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* SSLv3, TLS handshake, Client hello (1):
SSLv3, TLS handshake, Server hello (2):
SSLv3, TLS handshake, CERT (11):
SSLv3, TLS handshake, Server finished (14):
SSLv3, TLS handshake, Client key exchange (16):
SSLv3, TLS change cipher, Client hello (1):
SSLv3, TLS handshake, Finished (20):
SSLv3, TLS change cipher, Client hello (1):
SSLv3, TLS handshake, Finished (20):
SSL connection using AES128-SHA
* Server certificate:
* 	 subject: /OU=Domain Control Validated/OU=PositiveSSL Wildcard/CN=*.nodejs.org
* 	 start date: 2017-08-14 00:00:00 GMT
* 	 expire date: 2019-11-20 23:59:59 GMT
* 	 subjectAltName: nodejs.org matched
* 	 issuer: /C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
* SSL certificate verify ok.
> HEAD /dist/ HTTP/1.1
> User-Agent: curl/7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
> Host: nodejs.org
> Accept: */*
> Accept-Encoding: deflate, gzip
>
< HTTP/1.1 200 OK
< Date: Fri, 08 Sep 2017 19:22:03 GMT
< Content-Type: text/html
< Connection: keep-alive
< Set-Cookie: __cfduid=d688cbe20209e376ee613b24e849ed9bc1504898523; expires=Sat, 08-Sep-18 19:22:03 GMT; path=/; domain=.nodejs.org; HttpOnly
< CF-Cache-Status: HIT
< Vary: Accept-Encoding
< Expires: Fri, 08 Sep 2017 23:22:03 GMT
< Cache-Control: public, max-age=14400
< Server: cloudflare-nginx
< CF-RAY: 39b4463e8e82559a-ORD
< Content-Encoding: gzip
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Connection #0 to host nodejs.org left intact

* Closing connection #0
* SSLv3, TLS alert, Client hello (1):
HTTP/1.1 200 OK
Date: Fri, 08 Sep 2017 19:22:03 GMT
Content-Type: text/html
Connection: keep-alive
Set-Cookie: __cfduid=d688cbe20209e376ee613b24e849ed9bc1504898523; expires=Sat, 08-Sep-18 19:22:03 GMT; path=/; domain=.nodejs.org; HttpOnly
CF-Cache-Status: HIT
Vary: Accept-Encoding
Expires: Fri, 08 Sep 2017 23:22:03 GMT
Cache-Control: public, max-age=14400
Server: cloudflare-nginx
CF-RAY: 39b4463e8e82559a-ORD
Content-Encoding: gzip

It looks like your sed doesn't have -E, which I believe is part of POSIX.
I'll try to track down to when it broke for you; to summarize, it looks like nvm install breaks between v0.31.0 and v0.31.1; and nvm ls-remote breaks between v0.33.2 and v0.33.3?

It's also worth noting that I believe CentOS 5 is EOL as of April 2016, and is many years out of date - is there a reason you haven't upgraded to v6+ yet (v6 came out in 2011)?

Yes, that's correct on the versions and when things break. The company CentOS boxes this is failing on are somewhat outside my control, but I can see what I can do and/or point people to this ticket. Thanks!

I tested on Docker container and got no problem:
# nvm debug
nvm --version: v0.33.4
$SHELL: /bin/bash
$HOME: /root
$NVM_DIR: '$HOME/.nvm'
$PREFIX: ''
$NPM_CONFIG_PREFIX: ''
$NVM_NODEJS_ORG_MIRROR: 'http://ftp.yzu.edu.tw/nodejs.org-dist'
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu)'
uname -a: 'Linux 4.10.17-1-pve #1 SMP PVE 4.10.17-16 (Tue, 11 Jul 2017 09:55:44 +0200) x86_64 x86_64 x86_64 GNU/Linux'
OS version: CentOS release 5.11 (Final)
curl: /usr/bin/curl, curl 7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
wget: not found
git: not found
nvm current: none
which node: bash: which: command not found
which iojs: bash: which: command not found
which npm: bash: which: command not found
npm config get prefix: $NVM_DIR/versions/node/v0.12.18
npm root -g: $NVM_DIR/versions/node/v0.12.18/lib/node_modules

Can you please check your sed version? This is mine:
# yum info sed
Installed Packages
Name       : sed
Arch       : x86_64
Version    : 4.1.5
Release    : 8.el5
Size       : 327 k
Repo       : installed
Summary    : A GNU stream text editor.
License    : GPL
Description: The sed (Stream EDitor) editor is a stream or batch (non-interactive)
           : editor.  Sed takes text as input, performs an operation or set of
           : operations on the text and outputs the modified text.  The operations
           : that sed performs (substitutions, deletions, insertions, etc.) can be
           : specified in a script file or from the command line.
``

Sent a PR here #1613 to help detect similar issues.


available xss attack

Hi!
There isn't escaping for html attributes.
I faced with problem with select element and option=><script>alert('fgdfgdfg')</script>. This option bring alert.
Another example: value for "text" contain test "oo". It show only test.
In similar library attributes escaped by default:
https://github.com/LaravelCollective/html/blob/5.2/src/HtmlBuilder.php#L421
Thanks!

Any update on this issue? This seems to be a serious shortcoming of the library

Sorry I am a bad maintainer 👀 I haven't used this library myself in a few years. Will happily look at any PRs to fix this.

Going to close this.  If any other XSS vulnerabilities are found, feel free to submit new issue/PR 👍


python3Packages.pymazda: 0.0.9 -> 0.0.10

Motivation for this change
Update to latest upstream release 0.0.10
Change log: https://github.com/bdr99/pymazda/releases/tag/0.0.10
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 116712 run on x86_64-linux 1

3 packages built:

home-assistant
python38Packages.pymazda
python39Packages.pymazda

Result of nixpkgs-review pr 116712 at 74175d61 run on aarch64-linux 1

3 packages built successfully:

home-assistant
python38Packages.pymazda
python39Packages.pymazda


Implement validation of base features

Software Inc mods can define base features, specifically

Optinally a base.xml file can be placed in the "SoftwareTypes" folder with feature definitions, which will then be added to all software. If the root tag of the base.xml file contains the attribute Override = "TRUE", it will remove any base features already defined, this would remove the built-in QA feature for example.

At the conclusion of this work,

The tool will load and perform basic validation on features defined in base.xml

db4cc9ff25b799b357cd4228b4946c471e694668


Add new POST feed mode

It has become clear there is a big use case to cover blogs without RSS feeds.
We should allow users to add a blog in "skeleton mode", whereby they don't include an RSS/ATOM URL when creating the blog. The intention being they add the posts to that blog manually later on.
we should split the endpoints into
POST /api/v1/feeds/valid_feed
POST /api/v1/feeds/invalid_feed

Update current feed endpoint
POST /api/v1/feeds/ -> POST /api/v1/feeds/valid_feed
Change the endpoint name, but all other logic remains the same (e.g. RSS/ATOM validation)
We also add the following optional properties

pretty_url (always optional) -- there is a cosmetic URL. It is designed to show the actual blog link to browse to in a web browser (not the feed)
title (optional) -- if not passed, will inherit this from the feed
description (optional) -- if not passed, will inherit this from the feed

Add invalid feed endpoint
This essentially allows user to create a skeleton feed where an RSS feed does not exist for a feed
POST /api/v1/feeds/invalid_feed

Accepts URL paramater

pretty_url (always optional) -- there is a cosmetic URL. It is designed to show the actual blog link to browse to in a web browser (not the feed)
title (required)
description (required)

Note, this will create a feed of type skeleton
IMPORTANT: we should allow user the option to update (PATCH /api/v1/feeds/{feed_id}/) a feed of skeleton type, but we just allow user to update it to support name/description changes (https://github.com/muchdogesec/history4feed/issues/78)

We decided to have one endpoint for this
Currently accepts type;
{
  "profile_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "include_remote_blogs": false,
  "pretty_url": "string",
  "title": "string",
  "description": "string",
  "url": "string"
}

However, we should validate URLs for ATOM / RSS if not skeleton mode.
We should allow user to pass feed_type in body as skeleton. Doing this should skip the RSS / ATOM validation of url . If not passed, assumption is it is type RSS/ATOM

ignore the above (just saw the skeleton endpoint :)

@fqrious try
python3 tests/test_01_add_fakeblog123_atom_rss_feeds.py \
	--feed-url https://muchdogesec.github.io/fakeblog123/feeds/atom-feed-decoded.xml

not how the new properties set (title/desc/pretty url) are not being stored against the feed
    {
      "id": "cb0ba709-b841-521a-a3f2-5e1429f4d366",
      "count_of_posts": 6,
      "pretty_url": null,
      "title": "Your awesome title",
      "description": "ATOM -- Contains decoded html (without CDATA tags, but it XML escaped) -- FULL CONTENT",
      "url": "https://muchdogesec.github.io/fakeblog123/feeds/atom-feed-decoded.xml",
      "earliest_item_pubdate": "2024-08-01T08:00:00Z",
      "latest_item_pubdate": "2024-09-01T08:00:00Z",
      "datetime_added": "2024-11-27T10:08:11.342030Z",
      "feed_type": "atom"
    },

it got updated after the feed was retrieved.


Release 1.8: prepare the release notes and upgrade notes

I re-created https://github.com/cert-manager/website/pull/839 due to me pushing to cert-manager/website instead of maelvls/website. I could not force push to the branch on cert-manager/website.
Later on, I will update the release notes with the command:
GITHUB_TOKEN=$(lpass show -p github.com) START_SHA="$(git rev-list --reverse --ancestry-path $(git merge-base v1.7.0 master)..master | head -1)" END_REV="master" BRANCH="master" RELEASE_VERSION="1.8.0" release-notes --repo-path=cert-manager --org=cert-manager --repo=cert-manager --required-author=jetstack-bot --output /tmp/release-notes-1.8.0.md

The reason I am doing this so early is that I wish to review each changelog entry "from the start" and as early as possible, instead of doing it at the last moment.
If I need to reformulate one of the changelog entries, I usually also update the release-note block in the original PR description. It is not the best workflow, but at least any subsequent run of release-note will pick up the changes.
@SgtCoDFish I have opened this PR against master this time, since I am not sure release-next still makes sense with the new website.

Looks like a good start! I think the release notes I've written for v1.8.0-alpha.0 will be useful here, I spent a bunch of time on them this morning: https://github.com/cert-manager/cert-manager/releases/tag/v1.8.0-alpha.0
Agree that release-next is not useful now!
We might need to merge https://github.com/cert-manager/website/pull/877 before we start working on next-docs (if we're gonna start working on next-docs that is)

@SgtCoDFish I have copy-pasted the release notes you have written in 1.8.0-alpha.0 and 1.8.0-alpha.1. I have gone over each PR and made sure the release-note block is easily understandable.

sorry, broke the spell checker, will fix

/lgtm
/approve


Configure git on the TWC server

added git and setup with current key.

Moved setup over and removed the MDK. Still need to create service.


Consider additional section for System Dependencies

Some R packages needs System dependencies like libgit2

We would like to have this as well, but it will indirectly be handled by the list of used packages.
But do you have a suggestion on how to capture the system libraries used as well?

System dependencies can be get by checking all R dependencies SystemRequirements field from the DESCRIPTION file.
packages_list <- c("curl")
lapply(packages_list , \(x) packageDescription(x)$SystemRequirements)

Nice and easy solution!
I am still a bit in doubt if you win enough by having the system requirements in the log, since it is enough knowing you need to have the package and then e.g. pay::pay() would take care of it.
But I also see it is good for completeness. Will try to discuss it with the rest of the development team.


Test tolerances updated

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main@7e3bfd4). Click here to learn what that means.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #45   +/-   ##
=======================================
  Coverage        ?   92.28%
=======================================
  Files           ?       10
  Lines           ?      402
  Branches        ?        0
=======================================
  Hits            ?      371
  Misses          ?       31
  Partials        ?        0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Performance in browser really sucks

I have an 800 KB GPX file, which freezes my Chromium when trying to convert it online.

Indeed! Use ogr2ogr: toGeoJSON is not intended for gigantic files.

800 KB is quite small by today's browser standards though — I wouldn't call that gigantic.
@andischan does it happen only on that file or any GPX files of similar size? Does it "freeze" withouht recover, or just completes in am absurdly long time? How do the other browsers like Firefox or Safari behave? Can you try running the Chrome DevTools profiler when the conversion happens and then share the results?


Adjust Open Graph settings: Use OGP image with 630 pixels height

Problem
The outcome of GH-433 reveals that using non-standard image sizes is not a good idea, see Open Graph Preview for #433.

Solution
This patch will bring in an image with 630 pixels height, as recommended.

Looks better now, thanks!
-- https://www.opengraph.xyz/url/https%3A%2F%2Fcrate-docs-theme.readthedocs.io%2F

thanks and sorry for the oversight before!


Feature/istio endpoint scan

fixes #485

fixes #477

fixes #212

partially fixes #213

partially fixes #213

@girishranganathan if this is only a partial fix, will you use a verb other than "fixes" so as not to have #213 close? And update the checkboxes in #213 with what's completed?

Output from wrk2 perf test when running make run-local:
ERRO[0041] Unable to read data from bitcask store: error: key not found
WARN[0041] Unable to read session from the session persister. Starting a new session.
DEBU[0041] received command: wrk [-t1 -d30s -R-1 -s ./wrk2/scripts/multiple-endpoints_in_json.lua https://www.google.com:443]
DEBU[0041] received new data on response channel         file=load_test_handler
DEBU[0041] Flushed the messages on the wire...           file=load_test_handler
ERRO[0041] unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
ERRO[0041] error while running tests: unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
ERRO[0041] error: unable to perform load test: error while running tests: unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
DEBU[0041] received new data on response channel         file=load_test_handler
DEBU[0041] Flushed the messages on the wire...           file=load_test_handler
DEBU[0041] response channel closed                       file=load_test_handler
DEBU[0041] load test completed                           file=load_test_handler

Icon available - https://github.com/layer5io/meshery/pull/292

Output from wrk2 perf test when running make run-local:
ERRO[0041] Unable to read data from bitcask store: error: key not found
WARN[0041] Unable to read session from the session persister. Starting a new session.
DEBU[0041] received command: wrk [-t1 -d30s -R-1 -s ./wrk2/scripts/multiple-endpoints_in_json.lua https://www.google.com:443]
DEBU[0041] received new data on response channel         file=load_test_handler
DEBU[0041] Flushed the messages on the wire...           file=load_test_handler
ERRO[0041] unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
ERRO[0041] error while running tests: unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
ERRO[0041] error: unable to perform load test: error while running tests: unable to execute the requested command: fork/exec ./wrk2/wrk: no such file or directory
DEBU[0041] received new data on response channel         file=load_test_handler
DEBU[0041] Flushed the messages on the wire...           file=load_test_handler
DEBU[0041] response channel closed                       file=load_test_handler
DEBU[0041] load test completed                           file=load_test_handler

Yeah you cannot test it on a Mac. Try running it from a Docker container.

Running make docker produces this error:
 => CACHED [bd0 2/5] RUN adduser --disabled-login appuser                                                                     0.0s
 => CACHED [bd0 3/5] WORKDIR /github.com/layer5io/meshery                                                                     0.0s
 => CACHED [bd0 4/5] ADD . .                                                                                0.0s
 => ERROR [bd0 5/5] RUN cd cmd; GOPROXY=direct GOSUMDB=off go build -ldflags="-w -s" -tags draft -a -o /meshery .           186.5s
 => CACHED [bd1 2/3] ADD ui ui                                                                                0.0s
 => CACHED [bd1 3/3] RUN cd ui; npm i; npm run build && npm run export; mv out /                                              0.0s
------
 > [bd0 5/5] RUN cd cmd; GOPROXY=direct GOSUMDB=off go build -ldflags="-w -s" -tags draft -a -o /meshery .:
#13 186.3 go<EMAIL_ADDRESS>requires
#13 186.3<EMAIL_ADDRESS>reading golang.org/x/mod/go.mod at revision v0.1.0: unknown revision v0.1.0
------
failed to solve with frontend dockerfile.v0: failed to build LLB: executor failed running [/bin/sh -c cd cmd; GOPROXY=direct GOSUMDB=off go build -ldflags="-w -s" -tags draft -a -o /meshery .]: runc did not terminate sucessfully


[cloudprober.surfacer.prometheus.SurfacerConf] Set global labels via CLI Flag

Per https://cloudprober.org/docs/config/surfacer/#cloudprober_surfacer_prometheus_SurfacerConf , --prometheus_metrics_prefix can be set to define the prefix of all metrics surfaces to Prometheus.
In addition to defining a prefix, I would like to define some common labels across all probesets in a cloudprober instance.
I can use the additional_labels functionality within a specific probeset, but that will generate a significant amount of boilerplate configuration after a number of probesets.
Instead of having to define the following additional label across every probeset with
  additional_label {
    key: "src_zone"
    value: "{{.zone}}"
  }

or
  additional_label {
    key: "src"
    value: "value"
  }

I would prefer to be able to do:

--prometheus_global_label=src_zone={.zone} (or some shorthand to set the label key)
--prometheus_global_label=src=value

This would be particularly useful in non Kubernetes environments, where additional metadata needs to be explicitly configured, instead of being detected

@conallob will something like the following work:
https://cloudprober.org/docs/how-to/additional-labels/#global-additional-labels


Added external quarkus_openshift test

enabled external quarkus_openshift test, it remains disabled due to lack of openshift cluster
added arch detection to select corresponding openshift cluster
added platform requirement and subsets

runtimes/backlog 353
Signed-off-by: Longyu Zhang<EMAIL_ADDRESS>

Grinder links:
x86: grinder_internal/10080
s390x: grinder_internal/10067
ppc64le: grinder_internal/10068

@smlambert @llxia Could you review it? Thanks.

Summary from Longyu of the steps to get quarkus-openshift-test running:

Used Openshift oc command line tool to communicate with Openshift Cluster, which runs on corresponding platform, e.g. Jenkins x86 machine will connect with Openshift Cluster runs on x86 platform. Possible improvement is to install oc tools on all Jenkins machines, currently only on machines with label sw.tool.oc;
modified s2i source code, which is used by Redhat to generate s2i images, to generate adopt-11-openj9 s2i images for x,p,z platform, which were pushed to my personal DockerHub and are used when running quarkus-openshift-test-suite. Possible improvement is to generate adopt 11 s2i nightly image, same as adopt 11 docker images;
the minimum quarkus version in test should be at least 1.7.2.Final, since the io.quarkus:quarkus-maven-plugin issue on plinux and zlinux machines only gets fixed after opening the issue previously;


Dynamic inventory may not be working with newer versions of Ansible

The Ansible dynamic inventory seems like it is not working in the latest version of ansible:
$ ansible --version
ansible [core 2.11.6]
config file = /home/x/throughput_test/ansible.cfg
configured module search path = ['/home/x/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/x/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.8.10 (default, Sep 28 2021, 16:10:42) [GCC 9.3.0]
jinja version = 2.10.1
libyaml = True
The dynamic inventory has stopped working without any changes to my ansible and terraform code projects.  I am using terraform to create my resources, which may be relevant.  My inventory shows:
@all:
|--@ungrouped:
Thanks
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 059a1972-09ee-02a7-8159-07ba04a2c763
Version Independent ID: 4323aa16-062c-1b11-fb73-11777c34f88e
Content: Tutorial - Configure dynamic inventories for Azure Virtual Machines using Ansible
Content Source: articles/ansible/dynamic-inventory-configure.md
Service: ansible
GitHub Login: @TomArcherMsft
Microsoft Alias: tarcher

The Dynamic Inventory script has a known bug that throws an error if the resource is in update or delete state. This bug is being worked on.


Crashes if folder for config doesn't exist

Application crashes if folder: C:\Users\{USER}\AppData\Roaming\WFInfo doesn't exist. Probably it has to be configurable or there might be some permission issue.

OS: Win 10
Tried with admin/without, same error.
It doesn't happen if folder already exists, so manually creating it works.

Latest release fixed it.


[consensus] Turn noisy error to quiet trace

As discussed with @andll the error! in the bullshark logic that is logged in fact is not an error, is expected to happen, and happens quite often, leading to error log lines spam. I am making this quieter by turning it into a trace level log line.

Just curious, what is the explanation for this being expected? I also wanted to get to this (https://github.com/MystenLabs/sui/issues/5572) but keep forgetting to ..


How to supply correct autoload file to docker?

I am trying to use the extesion from a docker image, with some custom stuff for my repository.
In my case it is in order to have the result of composer in the docker image since we rarely change this.
It would be nice to have som examples in the documentation about how to use it from dockerimage
I saw that there was two issues that was written with docker in focus (#1, #12, (#32) ).
In #1, the opption "phpstan.paths": is mentioned, but it is hard to know what I should add there.
(doc improvement)
If I add a censored block of output from the console (/efs/sandbox/username/projectname is the root of the git repo)
[check:6] Spawning PHPStan with the following configuration:  {"binCmd":"/efs/sandbox/username/projectname/meta/dev/wrappers/phpstan-docker.sh","args":["analyse","-c","/efs/sandbox/username/projectname/phpstan.neon","--error-format=raw","--no-interaction","--memory-limit=1G","--no-progress","--autoload-file","/app/shared/lib/autoprepend_phpstan.php","--debug","/efs/sandbox/username/projectname/FILE_TO_CHECK.php","-a","/tmp/tmp-11527-Pj3Q0WvKtxQ0/autoload.php","-c","/tmp/tmp-11527-Pj3Q0WvKtxQ0/config.neon"]}
[check:6] PHPStan process exited with error  filteredErr=Autoload file "/tmp/tmp-11527-Pj3Q0WvKtxQ0/autoload.php" not found.  rawErr=Autoload file "/tmp/tmp-11527-Pj3Q0WvKtxQ0/autoload.php" not found.

I am trying to supply --autoload-file, but the extension wants to supply -a. So it wolud be solved if there was an option to supply the autoload file in the extension. (So the extension could map/capy that file.
I could perhaps take a look at this myslef, put I am quite new to javascript/typescript and vs code extensions.
So I would need instructions on "how to build"/package/test changes to the extension.

Actually, when I did add path mapping, it looks much better:
    "phpstan.paths": {
        "/efs/sandbox/username/projectname": "/app"
    },

Snippet from the Output > PHPStan Client
[check:2] Spawning PHPStan with the following configuration:  {"binCmd":"/efs/sandbox/username/projectname/meta/dev/wrappers/phpstan-docker.sh","args":["analyse","-c","/app/phpstan.neon","--error-format=raw","--no-interaction","--memory-limit=1G","--no-progress","--autoload-file","/app/shared/lib/autoprepend_phpstan.php","--debug","/app/shared/lib/classes/AbstractImageManipulator.php"]}
[check:2] PHPStan process exited succesfully

Ah yeah the docs are indeed a bit meh on the docker setup, largely because I don't use the docker setup myself (and haven't gotten it to work with any project) so it's a bit of guesswork for me too. There isa  decent explanation of all the settings over here.
Regarding passing an autoload file, you can use the phpstan.options option and pass an autoload file that way. IIRC I made it smart enough to detect that you passed an autoload file (and made it so it does the rewriting it needs to do).
What is the current state of the issue? Does it work? From your last message it looks like it works but I'm not entirely sure :)

It "works for me" now after adding the path mapping.
Well I can see if I can sum up what I did to run it using docker.
I have a wrapper script that calls docker, set up mounts, and so on.
This is my config of the plugin.
{
    "phpstan.binPath": "/efs/sand/fredriks/skridskonet/meta/dev/wrappers/phpstan-docker.sh",
    "phpstan.options": [
        "--autoload-file",
        "/app/shared/lib/autoprepend_phpstan.php",
        "--debug"
    ],
    "phpstan.paths": {
        "/efs/sand/fredriks/skridskonet": "/app"
    },
    "phpstan.enableLanguageServer": false
}

Good to hear! I'll close this issue for now then. I might dive into the docker setup and do a small writeup on the wiki at some point.


Website Overhaul

Description

Updated splash page:

Fixed broken links

Adjusted the About Us language

Updated quick links to more popular pages:

Site Introduction
Onboarding Hub (content WIP)
Documentation
News

Content pages restructured to group like pages for ease of navigation.

Updates "Processes" tab

Fixed all broken links

Overall improved language to be more concise, gramattically correct, free of spelling errors and correct punctuation.

Renamed to "Resources" to be more appropriate for content

Updated language in the introduction

Validated and expanded on the technology stack documentation

Removed "Cyber Security Guidelines" parent folder to have the "Remote Working Guide" unnested.

Created Onboarding Hub

Moved the Thoth Tech Welcome Package to here from "Policies"

Created placeholders for current teams

Updated Quality Assurance Overview document language

Validated and updated the Git Contributions Guide.

Added explanations to commands

Expanded some explanations

Improved overall language

Updated Testing and Development content

Updated Documentation Tab

Documenting for Thoth Tech document format adjusted and languate improved.

Writing Style Guide formatting improved; examples provided for all items.

Templates moved to Documentation tab for coherence

FAQs moved to Resources; added a few additional FAQs.

Consolidated Teams and Leadership page into trimesters.

Included current trimester information into Teams and Leadership page.

Consolidated Company Submissions into appropriate trimesters for ease of navigation.

Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] Documentation (update or new)

How Has This Been Tested?
Tested in Astro dev environment with no new errors.
Tested that all links work.
Testing Checklist

[x] Tested in latest Chrome
[x] Tested in latest Safari
[x] Tested in latest Firefox

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have requested a review from SplashKit Leadership Team on the Pull Request

This is great, the site looks much better with the new organisation and the additions of the new team lists for this semester.


Replace "cluster.local" in Zookeeper chart

Please replace "cluster.local" with a helm variable for cluster name. Otherwise, this chart can't be used with other cluster names (e.g. "production", "integration").
See:
https://github.com/confluentinc/cp-helm-charts/blob/df888a1b51e2031b6afc218d5f0f1389e96dca63/charts/cp-zookeeper/templates/_helpers.tpl#L45

Sorry, there is already a Pull request for this issue.
https://github.com/confluentinc/cp-helm-charts/pull/128


Reset Embedded Kafka Broker After Each Test Method

Currently, @EmbeddedKafka can be applied only on classes (@Target(ElementType.TYPE)). This gives us a global Kafka broker for that class than will be used by all the test methods. What if I want to use a different broker for each method?
Use Case: Consider two methods and two Kafka topics, A and B. One method wants to simulate a publish error to topic A. The other method wants both topics A and B for testing. A good way to simulate a publish error would be to delete topic A. But we can't do that since B needs that topic.
I don't want to incrementally keep adding topics as I don't want to introduce any ordering in my unit tests. Also I don't want to put my methods in separate classes.

Don't ask the same question in multiple places; it's a waste of your time and ours.
In any case, GitHub issues are NOT for asking questions, which is explained in the issue template, which you probably did not read.
It's better to use different topics in each test. However, you can add @DirtiesContext to each test method or add @DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD to the test class.

I am sorry should have been more careful. Thanks a lot.

maybe someone will be reading this post in the future, but
@DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD)
doesn't work properly in that case


doesn't work

this doesn't work with  "@docusaurus/core": "2.2.0".

seem to work fine for us as https://github.com/typescript-eslint/typescript-eslint

can i see your docusaurus.config.js @armano2

https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/website/docusaurusConfig.ts

@armano2 thanks it works but documentation at https://github.com/mccleanp/remark-docusaurus-tabs doesn't say anywhere to put it in beforeDefaultRemarksPLugins. It should be modified for it to work.

that's why i linked you a PR that fixes doc :P

thanks. Your pr is pending since 2021 !

@armano2 do you have any idea how to add reading time to a doc. Docusaurus supports for blog but not doc. I tried integrating https://www.npmjs.com/package/remark-reading-time but it keeps throwing error.


Setting the subject when using plain SendableEmail w/Envelope

Looking to set the subject line (for a gmail account) using the plain example here
    let email = SendableEmail::new(
        Envelope::new(
            Some(EmailAddress::new(sender.to_string()).unwrap()),
            vec![EmailAddress::new(receiver.to_string()).unwrap()],
        )
        .unwrap(),
        "some id ".to_string(),
        "Hello example".to_string().into_bytes(),
    );

and while I do get the email, I don't see a parameter in this SendableEmail function for the subject line, does this imply I should use this example instead?
https://github.com/lettre/lettre/pull/319/files#diff-e94a281541eed0085f0dfd472d0f3a1cR9

ah - I got my code to work with the latest code via my toml
lettre = { git = "https://github.com/lettre/lettre.git"}


The comment in PoolThreadCache is wrong, there is no longer tiny

Expected behavior
Remove tiny from comments
Actual behavior
Comments containing tiny

@xuziyang Fixed... thanks https://github.com/netty/netty/pull/12020


Add a set of administrative and default permissions when creating a new project

Currently, when a new project is created, there are now administrative and default permissions in place which would allow a ProjectAdmin or ProjectMember to do anything.
Creating a new project should also trigger creating ProjectAdmin permissions allowing to create new resources only viewable by project members.
As a side note, the V2 Resource API  allows overriding default permissions when creating resources.

We changed our minds. No permissions will be created for a new project. The ProjectAdmin can add these permissions based on the project's requirements.


Serialize Distance and Percentiles aggregate using an invariant locale

See issue #4041
Added unit tests to show problem and added a fix using the invariant culture to serialize the type. I only saw the problem with fractional values but there can potentially also be problems with thousand separators in some locales.

When I moved the unit test I found another unit test that was failing if the culture is not en-US (GithubIssue3715.CanDeserializeExtendedStats). Will investigate

Feel free to open a separate issue for GithubIssue3715.CanDeserializeExtendedStats. I can take a look at it (tomorrow) :+1:

Created issue #4044 regarding the issue with CanDeserializeExtendedStats. The problem is probably the double.Parse calls in AggregateFormatter (from just briefly looking at the stacktrace of the failed test).
Might be a good idea to scan the code for <numeric type>.Parse without a CultureInfo.InvariantCulture in the serialization code.

I added the fix for issue #4044 as well since I think it was a no-brainer. In AggregateFormatter, I added InvariantCulture to the double.Parse call. I did a full solution search for double.Parse and the only remaining case where InvariantCulture is not used is in StringToDoubleConverter in Utf8Json, and it looks like a fall-back case.

ported to 7.x


Workaround if you're getting "unable to open database file"

In UWP you're limited to a handful of folders for file IO (outside StorageFile anyway).  This works:
string path = System.IO.Path.Combine
	(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "test_sqlite.db");

//get our sqlite database, or create if none existing
using (SqliteConnection db =
new SqliteConnection())
{
	db.ConnectionString = "Filename=" + path;
	db.Open();
	//... do stuff like creating tables
}

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

ID: 6c591596-d202-244c-6fbf-31c288fe9b57
Version Independent ID: 1473907c-0cba-8917-2fd8-d3ca1fb73cae
Content: Use a SQLite database in a UWP app - Windows UWP applications
Content Source: windows-apps-src/data-access/sqlite-databases.md
Product: uwp
Technology: data-and-files
GitHub Login: @lastnameholiu
Microsoft Alias: alholiu

Thanks for your input. We have revised the code examples in this article to account for this behavior.


When dragging Email into a software ( webapplication) the Email is moved to "deleted items"

Dear Tony,
We've seen a similar topic regarding mails that move to the deleted items. You suggested to change the script but we are not able to change this because the online application we are working with is in oracle and there is no script available.
We are working with outlook 365. Can you please have a look and advise?
Many thanks.
Kind regards,
Tatiana

Hello Tony,
we are facing similar problem. When I want to drag the message straight from Outlook 2013 into my webapp, the message moves into deleted items. Could you please give me an advice how to make the message copy to the webapp without deleting it? Thank you very much!
Best regards
Jan

Hi Tony,
First, thanks for the job done, it's really helpful for my customers.
I have the same issue when drag&droping the mail (not an attached file, but the whole email object).
I can't look at the code right now, but will do in some week and see if I can help with that.
Regards,
Romain

Hi Tony,
Thanks for nice job!
I get the same issue when draging the whole email object.
Any advise/fix would be greatly appreciated!
Best regards
Frode

Some applications set the drop effect to "move", which cause the original item to be deleted.  As a workaround, OutlookFileDrag now detects if dropped files are being moved and overrides the effect to "copy" so the original item is not deleted.  This change has been released in version 1.0.9.
https://github.com/tonyfederer/OutlookFileDrag/releases/tag/v1.0.9

Thanks !!

Thank you very much!

Thanks Tony, Works Great now!


Update for ORT code generation

Updates to the ORT code generation to fix a couple of issues as well as changes based on feedback.

Closing and reopening to clear internal state.