Incorrect min_rtt calculation in Adaptive concurrency

Title: Incorrect min_rtt calculation in Adaptive concurrency
Description:
Inside Lyft, we occasionally observed the extremely large value for the stats min_rtt, which seems to be maximum value of unsigned long type (18.45 * 10 ^ 17); Subsequently, it caused rq_blocked and 503s to increase.
My hypothesis is that 18.45 * 10 ^ 17 is caused by hist_approx_quantile on the empty latency histogram. There exists a chance that the method updateMinRTT gets invoked right after the method resetSampleWindow. As invoking processLatencySamplesAndClear in resetSampleWindow clears the latency histogram, nan value will get returned when updateMinRTT invokes processLatencySamplesAndClear, eventually cause the issue.

This can be assigned to me and I'll take a look this evening. Should be straightforward to test the hypothesis via unit tests, so @freedomljc I can do this unless you were hoping to do so.

@freedomljc a few questions...

How is a large min_rtt value causing blocked requests? Was the concurrency limit being clamped down? This would only happen if the sampled RTT values exceed the minRTT by some threshold, so I'm unsure how that follows.

resetSampleWindow() can only occur if we're not currently inside of a minRTT measurement window. The minRTT measurement should be based on a request count, not a timer, and all effects from the sampling window can't happen as long as we're inside of a minRTT window. I may be missing something here, so can you give more details on the sequence of events that would lead to this condition you're hypothesizing?

Thanks @tonya11en for the follow-ups.

How is a large min_rtt value causing blocked requests? Was the concurrency limit being clamped down? This would only happen if the sampled RTT values exceed the minRTT by some threshold, so I'm unsure how that follows.

I am also fuzzy about why a large min_rtt value would cause the issue. But here are the metrics about minRTT, sample_rtt and rq_blocked.

concurrency limit stats is not provided here as I am not sure whether the concurrency limit stats is meaningful: the stats keeps unchanged over time, and it was sampled every 10 minutes inside Lyft.

resetSampleWindow() can only occur if we're not currently inside of a minRTT measurement window. The minRTT measurement should be based on a request count, not a timer, and all effects from the sampling window can't happen as long as we're inside of a minRTT window. I may be missing something here, so can you give more details on the sequence of events that would lead to this condition you're hypothesizing?

I previously tried to figure out the scenarios how the latency histogram is cleared out, but just realized there might exist another scenario: enterMinRTTSamplingWindow() could cause to clear the latency histogram as well.
I wrote a unit test in https://github.com/envoyproxy/envoy/pull/15001/files. It tests against the scenario when the latency histogram is cleared out by enterMinRTTSamplingWindow(), the min_rtt value become<PHONE_NUMBER>3707404133.  I am not completely sure whether the events sequence makes sense or not in my test, but they would lead to this extremely large min_rtt value.

I just put a draft pr to mitigate the issue: only process latency samples when the latency histogram is not empty. WDYT?

Alright, I think I know what's going on here. This condition is possible. It's not in resetSampleWindow(), but calls to updateMinRTT()! It's possible that 2 concurrent requests can succeed at the condition necessary to update the minRTT before one of them is able to update and pull us out of the minRTT window:
https://github.com/envoyproxy/envoy/blob/eb0ada654812af824bd682050f7d56cf1d591e64/source/extensions/filters/http/adaptive_concurrency/controller/gradient_controller.cc#L218
The implications of this are not just getting the percentile on an empty histogram, but scheduling multiple sampleRTT update timers and creating noise in the measurements as the race condition is hit regularly. That's rough. Unfortunately, this problem won't be fixed by #15004.
This is going to require a compare/exchange to ensure that only a single thread is performing the minRTT update at a time or to periodically poll the sample aggregate every ~1s or so and perform the update on that dispatcher thread (but I recall @mattklein123 wasn't fond of that approach back when the filter was being implemented).
I can cook up a patch that I think fixes this and I'll add you on it @freedomljc. You pulled some serious wizardry catching this.

@freedomljc will be jumping in to make this change after our conversation on slack, but for posterity I'm posting the planned changes here.
All of the RTT mutations need to just occur on the dispatcher to avoid races and locking on the worker threads. The dispatchers will handle:

Sample window resets.
Entering minRTT windows.
Updating minRTT values.
Updating sampleRTT values.

There will be scenarios where mutation tasks are scheduled on the dispatchers using stale minRTT data, so there will also need to be a concept of a minRTT version that's passed when the tasks are being scheduled. This way if there is a minRTT update of some kind scheduled during an old version, we will disregard it if there was an unexpected update before it was able to execute.
It will also be prudent to sprinkle ThreadSynchronizer sync points around so we can easily test these scenarios and verify there aren't races.

@tonya11en , I just drafted the pr to move the logic into the dispatcher thread, but found it might still cause this minRTT issue. Essentially, this minRTT issue was caused by the below event sequence:

Invoke the code block https://github.com/envoyproxy/envoy/blob/1b118df9a9ddab835f891b7458b8012f6d454dd8/source/extensions/filters/http/adaptive_concurrency/controller/gradient_controller.cc#L119-L125
Invoke enterMinRTTSamplingWindow()
Invoke the code block  again https://github.com/envoyproxy/envoy/blob/1b118df9a9ddab835f891b7458b8012f6d454dd8/source/extensions/filters/http/adaptive_concurrency/controller/gradient_controller.cc#L119-L125

The approach essentially moves the step 1 and step 3 into the same thread, but the above event sequence might still happen.  I think this minRTT issue seems unavoidable as long as we periodically invoke enterMinRTTSamplingWindow(). in this case, I wonder we should just mitigate the issue by checking whether the histogram is empty in updateMinRTT(): https://github.com/envoyproxy/envoy/pull/15004
Besides, i think it might cause some performance issue: every time worker thread processes the http request, and it will invoke dispatcher.post(). But there exists a lock in the the implementation of dispatcher.post(), which would cause all worker threads pends on the dispatcher thread.
Please let me know if I misunderstood the approach.

@freedomljc I think there's been a misunderstanding. This change is much more substantial than https://github.com/envoyproxy/envoy/pull/15060.
A few quick notes and then I'll do a beefier writeup when I find some time tonight. I have an in-progress version of the patch I can share as well.

Posting to the dispatcher is non-blocking. The worker threads do not wait on the dispatcher thread to complete anything, which is why this model is used.
You cannot bump the version number in the worker threads before posting the mutation to the dispatcher. That would just result in a unique version number for each task posted to the dispatcher. It must be bumped in the posted task after the minRTT updates are complete. It should be that if the version number is not current, then the task was posted with stale data and should be disregarded.
All of the mutations need to occur on the dispatcher. This means not just updating the minRTT, but basically anything that would need to take the mutex.

Thanks @tonya11en for clarification, look forward to seeing how it works in your patch.
I just added the unit test into https://github.com/envoyproxy/envoy/pull/15004 anyway.


Cleanup docs

This allows setting up a hub for development from scratch

Travis build result link not rendered as image.

Thinking like someone who just want's to get up and running, would just a set of commands that I can copy paste without reading the descriptions.
Like here: https://github.com/TheMeaningfulEngineer/senic-infrastructure/blob/docs-cleanup2/docs/osbuild.rst

There is tox dependency to run make the first time.
$ make
tox -e develop --notest
make: tox: Command not found
Makefile:10: recipe for target 'venv/bin/pserve' failed
make: *** [venv/bin/pserve] Error 127

For some reason the commit i added to resolve the conflicts never showed up here, despite pushing and doublechecking the target, so i merged locally and pushed to master


[feat] Add sizeVariant and Validation enum props to TextComponent

Does your feature request relate to a specific USWDS feature?
Form Control component specifically the TextInput subcomponent
Is your feature request related to a problem? Please describe.
Discussion of problem is in #187.
Describe the solution you'd like

Add new sizeVariant  prop.
Deprecate small, medium props in favor of new sizeVariant prop.
Add new validationStatus prop.
Deprecate error, and success props in favor of new validationStatus prop.
Add new tests and adjust stories as needed.

This work should look very similar to #229.
Describe alternatives you've considered
n/a, we converged on a solution for handling these cases in the linked issue.

minor naming suggestion:

inputWidth instead of sizeVariant? that might make it a little clearer what dimension is being sized here (I had to go back to Storybook and remind myself we're talking about the width of the input element, not something like the text size for example)


Blocks misaligned after snap

Having a block snap alignment issue, arrows and blocks are misplaced after snap.
To recreate:
1.) Add root block to middle of page
2.) Add 2 children to root
3.) Add 5 or more grandchildren to each child leaving you with a root node and two columns that scroll Y
4.) Scroll to where root block is at the top of the page
5.) Move root block to the right dragging the whole tree over
6.) Click and hold the right child to the root, drag away then drag back to root and snap it back to root (expected behavior is no change) and arrows and blocks will be misaligned when snapping back

Hmm I'm not able to recreate this, it works fine for me. Are you using the latest version (there were several updates today fixing multiple issues)?

Latest update fixed. Thanks!


LVGL example build error on Eclipse (ESP-IDE) with ESP-IDF v4.4  (IDFGH-7171)

Environment

Development Kit:      [ESP32-Wrover-Kit]
Kit version: v4.1
Module or chip used:  [ESP32-WROOM-32|ESP32-WROOM-32D|ESP32-WROOM-32U|ESP32-WROVER|ESP32-WROVER-I|ESP32-WROVER-B|ESP32-WROVER-IB|ESP32-SOLO-1|ESP32-PICO-D4|ESP32]
IDF version (run git describe --tags to find it):  v4.4
Build System:         [Make|CMake|idf.py]
Compiler version (run xtensa-esp32-elf-gcc --version to find it):
// 1.22.0-80-g6c4433a
Operating System:     Windows
(Windows only) environment type: [MSYS2 mingw32|ESP Command Prompt|Plain Command Prompt|PowerShell].
Using an IDE?: Yes, Eclipse (ESP-IDE)
Power Supply:     USB

Problem Description
Hi,
I am new to ESP32 and trying to compile LVGL example but I'm getting the attached error. My goal is to port this example to work on  SPI-LCD. It would be appreciated if you help to fix the issue.
FYI, I am able to compile, program and test other examples on the ESP-WROVER-KIT.
error.txt
Thanks,
Bardi

"idf_component.yml" file was found for components:

D:/Espressif/workspace/lvgl/main

However, the component manager is not enabled.
Call Stack (most recent call first):
D:/Espressif/esp-idf-v4.4/tools/cmake/project.cmake:378 (idf_build_process)
CMakeLists.txt:4 (project)
Seems like the eclipse doesn't enable the package manager by default.

So, what's the solution to fix it?

Ok, found how to do it:

Open an "ESP-IDF Terminal" from eclipse barmenu,
Change to target project folder,
Enter: "idf.py reconfigure",

See this: IDF Component Manager


Does it work with Tapsellplus too?

Apparently Tapsell has been discontinued and they won't support Tapsell anymore.
Any plan to upgrade or any compatibility between this repo and Tapsellplus sdk?

Tapsellplus and standard banner ad(#2) implementation is almost done and will be merged soon.


[TEVA-4303] update hint for finding jobseeker TRN

https://dfedigital.atlassian.net/browse/TEVA-4303

Have checked out the review app and looks good to me.


docs: add hertz adaptor

What type of PR is this?

docs: Documentation only changes
What this PR does / why we need it (en: English/zh: Chinese):

en: add docs for Hertz adaptor
zh: 添加 Hertz adaptor 的文档
Which issue(s) this PR fixes:

Fixes https://github.com/cloudwego/hertz/issues/506

add  handler adaptor in https://github.com/hertz-contrib/pprof/tree/main/adaptor


Webpack error using turndown with angular

Hi,
I'mt trying to use turndown in an angular (version 6) application. This what I do in my component
import * as TurndownService from 'turndown';
let turndownService = new TurndownService();
let markdown = turndownService.turndown('html code here...');
But it doesn't work. This is what I get in the console:
SampleeditorComponent.html:19 ERROR TypeError: turndown__WEBPACK_IMPORTED_MODULE_3__ is not a constructor
at SampleeditorComponent../src/app/sampleeditor/sampleeditor_script.ts.SampleeditorComponent.btnConvert_Click (sampleeditor_script.ts:47)
at Object.eval [as handleEvent] (SampleeditorComponent.html:19)
at handleEvent (core.js:10251)
at callWithDebugContext (core.js:11344)
at Object.debugHandleEvent [as handleEvent] (core.js:11047)
at dispatchEvent (core.js:7710)
at core.js:8154
at HTMLButtonElement. (platform-browser.js:988)
at ZoneDelegate../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)
at Object.onInvokeTask (core.js:3811)
Any help would be appreciated.

Rather than import * as TurndownService …, try import TurndownService from 'turndown'


Throws an error (camera with name does not exists) while providing camera name instead of ID.

When providing a camera name instead of a camera ID, the software does not detects the cameras.
System Architecture: 2 USB cameras are connected, which are supposed monitor different angles and run some processing code by subscribing to the respective topics.
If camera ID is provided which changes (or swaps in this case) which changes the resulting output.
The software results in following error:
terminate called after throwing an instance of 'std::runtime_error'
[camera_node-1]   what():  camera with name /dev/v4l/by-id/usb-Generic_USB_Camera_200901010001-video-index0 does not exist

Ros2 launch code:
Node(
            package='camera_ros',
            executable='camera_node',
            name='camera_node',
            output='screen',
            parameters=[{'camera': '/dev/v4l/by-id/usb-Generic_USB_Camera_200901010001-video-index0'},{'width': 1920},{'height':1080}]
        )

/dev/v4l/by-id/usb-Generic_USB_Camera_200901010001-video-index0 is not a camera name. It's the V4L2 device path.
When you start the node without specifying a camera, it will list all available cameras with their name in brackets:
>> cameras:
   0: Integrated IR Camera: Integrate (\_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-5986:2123)
   1: Integrated Camera: Integrated C (\_SB_.PCI0.XHC_.RHUB.HS08-8:1.0-5986:2115)

Here, the camera names are \_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-5986:2123 and \_SB_.PCI0.XHC_.RHUB.HS08-8:1.0-5986:2115. If the camera name contains special characters, such as in this case, you also have to escape them or place them in quotes:
ros2 run camera_ros camera_node --ros-args -p camera:="\_SB_.PCI0.XHC_.RHUB.HS05-5:1.0-5986:2123"

Yes, Got it, thanks for the very fast update.


Fixed broken URL in writingrules.rst

The original URL is 404'ing:
https://www.leeholmes.com/blog/2019/12/10/searching-for-content-in-base-64-strings-2/

The article that the URL was originally pointing to is most likely the following, based on the publishing date of 12/10/2019:
https://www.leeholmes.com/searching-for-content-in-xor-encrypted-data/

@googlebot I signed it!


bug: improve error message when running a database query and the query object is not valid

When a POST /data/{name}/_query occurs and the body of the post is not valid, and the body does not contain the correct object shape for the query, the response is an internal service error occurs and the error message is generic, it should provide feedback to the caller that the query

Need to work on a format for zod error messages and issues that is readable and clean.
Then incorporate the checks into hyper test.


how to use Open3D

I am not sure how to use Open3D

Okay, We can use Open3D and 3D posenet and others.


CASMTRIAGE-6728: Correction in management_rollout.md to configure ncn-nodes

[ ] If I added any command snippets, the steps they belong to follow the prompt conventions (see [example][1]).
[ ] If I added a new directory, I also updated .github/CODEOWNERS with the corresponding team in [Cray-HPE][2].
[x] My commits or Pull-Request Title contain my JIRA information, or I do not have a JIRA.

/backport release/1.6

/backport release/1.4


80 verb meanings?

The page "Verb meanings" lists 162 verb meanings.
The glossay says "The 80 ValPaL verb meanings are comparison meanings that were chosen for representativeness and comparability."
I had a look in the CLDF parameter table, and the column meaning_list breaks down like this:
Core list Extended list   New meaning   Old meaning
       70            10            72            10

The ValencyDBQuestionnaireManual.pdf lists 70 meanings.
I'm wondering where the 80 comes from.
I suspect that there's maybe a typo in the glossary and it should say "The core set of 70 ValPaL verb meanings.."? Or is the 80 Core list + Old meaning?
The parameter table in the CLDF-dataset contains the column on verb meaning list, which is helpful. This could also be added to the table of verb meanings on the CLLD-web app, that might be helpful.

I think representation in terms of number of forms makes it clear that 80 = Core list + Extended list. Below is verb meanings ordered by frequency, with the first 80 cut off. There's just one "Core list" entry, which is less frequent than one "Old meaning" entry. All the rest is "Old|New meaning":
sqlite>
select
  p.cldf_id, p.meaning_list, count(f.cldf_id) as c
from
  formtable as f, parametertable as p
where
  f.cldf_parameterReference = p.cldf_id
group by p.cldf_id
order by c desc
limit 100 offset 80;
get|Old meaning|32
shave-a-body-part_person|Core list|29
fall|Old meaning|29
make|Old meaning|27
want|Old meaning|26
be-ill|Old meaning|25
cry|Old meaning|24
hunt-for|Old meaning|9
shave-self|New meaning|8
burn-tr|New meaning|8
roll-tr|New meaning|7
boil-tr|New meaning|7
sink-tr|New meaning|6
...

I think representation in terms of number of forms makes it clear that 80 = Core list + Extended list. Below is verb meanings ordered by frequency, with the first 80 cut off. There's just one "Core list" entry, which is less frequent than one "Old meaning" entry. All the rest is "Old|New meaning":
sqlite>
select
  p.cldf_id, p.meaning_list, count(f.cldf_id) as c
from
  formtable as f, parametertable as p
where
  f.cldf_parameterReference = p.cldf_id
group by p.cldf_id
order by c desc
limit 100 offset 80;
get|Old meaning|32
shave-a-body-part_person|Core list|29
fall|Old meaning|29
make|Old meaning|27
want|Old meaning|26
be-ill|Old meaning|25
cry|Old meaning|24
hunt-for|Old meaning|9
shave-self|New meaning|8
burn-tr|New meaning|8
roll-tr|New meaning|7
boil-tr|New meaning|7
sink-tr|New meaning|6
...

Okay. It was not clear to me. Reading the description on the website and the parameter-tabe, I would not have arrived at that understanding.


A way to configure sys.executable flags at PEX runtime

I noticed that Python flags are supported in interpreter mode using the inject_args flag and wonder if something similar can be supported running entry points.

@bkad can you give a concrete example of what you're aiming for here?

What you can't do is pass flags to CPython itself

This is what I'm trying to do, pass -u to CPython. Alternatively, I could use the PYTHONUNBUFFERED environment variable, but I'd like to configure this within the PEX at build time rather than everywhere the PEX is executed. Passing PYTHONUNBUFFERED through --inject-env has no effect on the re-executed interpreter for some reason.

Ok. Yeah, you generally can't do this today. Only one incantation gets this to work, and then only after the 1st run:

exe.py:import sys

if __name__ == "__main__":
    print(sys.stdout.buffer)

Pex command::; pex --exe exe.py -o test.pex --python-shebang "/usr/bin/env python -u" --sh-boot

Nets:
:; ./test.pex
<_io.BufferedWriter name='<stdout>'>
:; ./test.pex
<_io.FileIO name='<stdout>' mode='wb' closefd=False>
:; ./test.pex
<_io.FileIO name='<stdout>' mode='wb' closefd=False>
...

Why this works is fairly arcane, but basically --sh-boot respects args it finds in --python-shebang (even if the --python-shebang specified is not valid!) and, after 1st boot when the PEX is laid out on disk under the PEX_ROOT, --sh-boot optimizes by directly calling <full path to compatible python it discovered> <python args from --python-shebang> <installed PEX path/__main__.py> "$@". Notably, this only works for plain PEXes and not --venv PEXes. Since most PEX users probably want both --sh-boot and --venv for minimum boot latency and max Python ecosystem compatibility, the example incantation is not generally viable.
In summary, this seems like a good feature to support across all PEX styles.

For a bit more insight on the --sh-boot machinery, using the example test.pex above:
:; head -123 test.pex
#!/bin/sh
# N.B.: This script should stick to syntax defined for POSIX `sh` and avoid non-builtins.
# See: https://pubs.opengroup.org/onlinepubs/9699919799/idx/shell.html
set -eu

VENV=""
VENV_PYTHON_ARGS="-sE"

# N.B.: This ensures tilde-expansion of the DEFAULT_PEX_ROOT value.
DEFAULT_PEX_ROOT="$(echo ~/.pex)"

DEFAULT_PYTHON="/usr/bin/env"
DEFAULT_PYTHON_ARGS="python -u"

PEX_ROOT="${PEX_ROOT:-${DEFAULT_PEX_ROOT}}"
INSTALLED_PEX="${PEX_ROOT}/unzipped_pexes/466b0553ddeea983208b65ba0b5f9870e10b1127"

if [ -n "${VENV}" -a -x "${INSTALLED_PEX}" ]; then
    # We're a --venv execution mode PEX installed under the PEX_ROOT and the venv
    # interpreter to use is embedded in the shebang of our venv pex script; so just
    # execute that script directly.
    export PEX="$0"
    if [ -n "${VENV_PYTHON_ARGS}" ]; then
        exec "${INSTALLED_PEX}/bin/python" "${VENV_PYTHON_ARGS}" "${INSTALLED_PEX}" \
            "$@"
    else
        exec "${INSTALLED_PEX}/bin/python" "${INSTALLED_PEX}" "$@"
    fi
fi

find_python() {
    for python in \
"python3.12" \
"python3.11" \
"python3.10" \
"python3.9" \
"python3.8" \
"python3.7" \
"python3.6" \
"python3.5" \
"python2.7" \
"pypy3.12" \
"pypy3.11" \
"pypy3.10" \
"pypy3.9" \
"pypy3.8" \
"pypy3.7" \
"pypy3.6" \
"pypy3.5" \
"pypy2.7" \
"python3" \
"python2" \
"pypy3" \
"pypy2" \
"python" \
"pypy" \
    ; do
        if command -v "${python}" 2>/dev/null; then
            return
        fi
    done
}

if [ -x "${DEFAULT_PYTHON}" ]; then
    python_exe="${DEFAULT_PYTHON} ${DEFAULT_PYTHON_ARGS}"
else
    python_exe="$(find_python)"
fi
if [ -n "${python_exe}" ]; then
    if [ -n "${PEX_VERBOSE:-}" ]; then
        echo >&2 "$0 used /bin/sh boot to select python: ${python_exe} for re-exec..."
    fi
    if [ -z "${VENV}" -a -e "${INSTALLED_PEX}" ]; then
        # We're a --zipapp execution mode PEX installed under the PEX_ROOT with a
        # __main__.py in our top-level directory; so execute Python against that
        # directory.
        export __PEX_EXE__="$0"
        exec ${python_exe} "${INSTALLED_PEX}" "$@"
    else
        # The slow path: this PEX zipapp is not installed yet. Run the PEX zipapp so it
        # can install itself, rebuilding its fast path layout under the PEX_ROOT.
        if [ -n "${PEX_VERBOSE:-}" ]; then
            echo >&2 "Running zipapp pex to lay itself out under PEX_ROOT."

exit 1
P!
  .bootstrap/P!.bootstrap/pex/P!x�_ek␦.bootstrap/pex/__init__.pySVp�/�,�L�(Q0204H�P((��JM.QH��+)�L*-�/*��RV��LN�+NMQ(�KI-R(�HUp,HLRP��Ԣ���<#=��T�����_���P!(�e��␦.bootstrap/pex/__main__.py5��

Basically all the Pex python bootstrap logic is replaced with shell to drop boot overhead from ~50ms to ~1ms (Python is SLOW).

Noting that the trick to all this will be protecting -sE which is the standard set of Pex python args used to enforce the hermeticity guarantees of PEX files (the -E is only meant to turn off PYTHONPATH but it also turns off things like PYTHONUNBUFFERED). All Python flags besides -s and all PYTHON* env vars besides PYTHONPATH are likely safe to let propagate to the final exec'd process.

Ok, some ctypes hackery to implement sys.orig_argv for CPython<3.10 gets this working for all CPythons Pex supports and PyPy>=3.10. It will not work for the PyPy>=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*.<3.10 that Pex supports: I can find no way to access the original process argv for those PyPy releases.

Alrighty, this is now released on 2.4.0,: https://github.com/pex-tool/pex/releases/tag/v2.4.0
Thanks @bkad.

Much appreciated!


Site request : please add Videum support

Hello,
Someone can add site support for https://www.videum.com/ ? This website provide free medical video.
This website used blob for provide video. I don't know how to get mp4 from it so I can't make script for that.

Hi, could you give the URL for a specific video?

https://www.videum.com/video/trimesters/#.V9gFE3WLSHs

Work since the brightcove support, thanks guys !


[suggestion] changing animals on planets

then I enter earth-like planets (with no oxygen on them) I sometimes find animals spawning and dying on these planets, maybe you can make them despawn, or make mutated versions of them, so they can live in no oxygen planets

Will look into it

thanks

I've just modified the threshhold at which a planet is considered to have to atmosphere.


Inputs does not support adding oneshot

Hi guys,
In the INPUT_KINDMAP oneshot is not listed. The preferred way seems to be uploading through an index? I see why you could upload to an index but since you through REST can also add an oneshot input, shouldn't that functionality also exist in the SDK?
Thanks!

You are right. Let me explain a bit of the reasoning: there are several endpoints, like data/inputs/oneshot, receivers/simple, etc, that more or less operate on an index, rather than an input. So we defined the upload` function on the Index object rather than as a generic input.
So if you wanted to create a oneshot input, you could just create an instance of the Index class with the name of the index you want it uploaded to, and then use the upload function.
However, the shortcoming is that you must always specify an index, while the data/inputs/oneshot does not require one (it will default to the main index none is specified). So I think it is reasonable for us to add this in the next version - I will look into it.


JSON content not properly rendered on iOS devices.

For the following card content the JSON strings are rendered in HTML encoding rather than JSON strings on iOS devices for MS Teams App
Card Content file is attached below.
CardContent.txt

.

@shriyamgupta, is the screenshot at the bottom what the renderer should render?
Sample app's textBlock renderer will ignore all html tags as shown in the first screenshot.
Team's app use custom textBlock renderer that renders html tags.

@nesalang the below text block just contains JSON
				"text": "{\"task\":{\"type\":\"continue\",\"value\":{\"title\":\"Custom Form\",\"height\":430,\"width\":510,\"fallbackUrl\":\"https:\/\/taskmoduletest.azurewebsites.net\/customform\",\"url\":\"https:\/\/taskmoduletest.azurewebsites.net\/customform\"}}}",
It should render as plain text .It renders correctly on Android and Desktop .

@shriyamgupta, is the screenshot at the bottom what the renderer should render?
Sample app's textBlock renderer will ignore all html tags as shown in the first screenshot.
Team's app use custom textBlock renderer that renders html tags.
Sorry for the late reply but we were not using the custom label renderers in Teams iOS app for adaptive cards.


ring:add a cne_ring_init to use external memory

Add a new API cne_ring_init() to allow the caller to pass in the memory
to build the ring into for allowing the caller to supply the memory region.
The new API becomes useful when we need to share memory or the application needs
to build a ring into a already allocated memory region.
Signed-off-by: Keith Wiles<EMAIL_ADDRESS>

I can work on that for a different PR, would that be fine.


Review pull requests in pre-production environments - Limitations outdated

Limitations section states

Only GitHub Actions deployments support pre-production environments

This azure update states this is not the case. Note: I've not personally tested this.

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

ID: c1fbc397-f3ea-dc49-ec99-a77e824752e0
Version Independent ID: 7524eee9-a9a6-07f6-acb5-b008a02d6078
Content: Review pull requests in pre-production environments
Content Source: articles/static-web-apps/review-publish-pull-requests.md
Service: static-web-apps
GitHub Login: @sinedied
Microsoft Alias: yolasors

@jwccit
Thanks for your feedback! We will investigate and update as appropriate.

@jwccit thanks for pointing that out. I've removed the note to address this feedback. But I'm also letting the content author know to add a pivot that outlines the steps for Azure DevOps


[New Platform] Compile Mobile SDK to the Web/Javascript via Emscripten

Hi @mtehver, I ported this excellent project to the web. My motivation,

As @jaakla mentioned here(#66), I wanted to learn the limits of Emscripten/Webassembly.
I wanted to see a map with powerful and performant vector rendering on the web.
I'm imagining a map that will run on three platforms (Android, iOS, Web) with the same code. This might be possible with React Native if someone integrates JSI into mobile swig.

This implementation covers multiple projects so I'm writing to this issue instead of a pull request. Related projects;

[x] I added function overloading support using parameter types to embind. https://github.com/emscripten-core/emscripten/pull/17445
[x] I added emscripten support to mobile swig. (It's ugly, but it works fine. :))  https://github.com/CartoDB/mobile-swig/pull/3
[x] I added emscripten support to this project.  https://github.com/CartoDB/mobile-sdk/pull/509

Demo: https://mobile-sdk-web.netlify.app/
Example Usage: https://github.com/bugra9/mobile-sdk/blob/emscripten-support/scripts/emscripten-dev/main.js
In the demo application, the debug icon appears after 7 seconds. You can test live with it.
Tested;

[x] Marker
[x] Line
[x] MbTiles with 3D Polygon
[x] NMLModel
[x] RasterTileLayer/HTTPTileDataSource
[x] MapEventListener, VectorTileEventListener

Known Issues;

[x] NMLModel looks transparent.
[x] onMapClicked and onVectorTileClicked don't work. (Emscripten bug. Event is thrown to the listener only in the main thread.)
[x] Emscripten don't support streaming downloads so the application cannot cancel the request when it is not needed. (Emscripten issue. https://emscripten.org/docs/api_reference/fetch.html#streaming-downloads)
[x] I want to download tiles in parallel for performance. To do this I set setTileThreadPoolSize to 20 in options but it caused performance drops as it says in the documentation. In my opinion, network operations should be able to work asynchronously.

@bugra9 amazing! I tried your demo site on my mobile phone and I got a blank page. I ll try tomorrow on my computer

@farfromrefug, I deployed very fast and didn't optimize for size. If your internet is slow, you may have to wait a little longer.
What is your browser name?
I tested it on Firefox Android and Chrome Android and it worked.

I waites quite a lot and still white page. I see the debug button but then nothing in the console.
tried on system webview, bromite(chrome) and mull(Firefox)

@bugra9 Very impressive! I did a basic Emscripten port of mobile-carto-libs 2-3 years ago just for testing but making full SDK port seemed way too much work :-).
I will take a closer look at the code later this week and will add detailed questions/comments. But at the high level it looks very good.
I did a quick test on different devices:

Worked perfectly on Chrome Windows and on Android 12.
Rendering/animation worked on MacOS 12 and on iOS 15.5 but tiles were not loaded. Safari log shows 'Failed to load resource: Worker load was blocked by Cross-Origin-Embedder-Policy'
Empty page on iOS 14.3. Could not find anything in the log. My guess is that WebAssembly is not supported on this device. So probably expected.

Thank you. It was quite difficult for me, but the result was worth the effort. I learned a lot.
SharedArrayBuffer is required for thread support. For security reasons, it is necessary to add two headers to the response.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer#security_requirements
I added "Cross-Origin-Opener-Policy: same-origin" and "Cross-Origin-Embedder-Policy: require-corp" but I don't understand why Apple doesn't allow access to SharedArrayBuffer. I will investigate this.


ftr: switch from keycloak to oidc library

TRACEFOSS-565

PR is closed for now. OIDC is not supported by catena-x


Arisilon/issue 24 - [merged]

In GitLab by @arisilon on Oct 30, 2019, 10:11
Merges arisilon/issue-24 -> master

In GitLab by @arisilon on Oct 30, 2019, 10:11
merged

In GitLab by @arisilon on Oct 30, 2019, 10:11
mentioned in commit 876d7df2be64f5a099e2e7c65a7518918764c0e5


Update best-practices.md

Fixed grammatical error in one line and typos in another line. Silly ones

_articles/best-practices.md


add NLDelphi forum

https://www.nldelphi.com/forum.php

more for Delphi developers than just Pascal or Object Pascal languages but you can reopen this issue if you think I'm wrong. Please give a description to add to it's link on this website.


v2 support static IP, so this statement should be only for v1

Does the IP or DNS name change over the lifetime of the application gateway?
The VIP can change if you stop and start the application gateway. But the DNS name associated with the application gateway doesn't change over the lifetime of the gateway. Because the DNS name doesn't change, you should use a CNAME alias and point it to the DNS address of the application gateway.
---- Also with v2, you can put A record (not only CNAME) as it support static public IP.

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

ID: 88466307-81b8-1e5b-7f2c-191d8e818071
Version Independent ID: 08ad49f3-6a57-b925-794a-37215e985aba
Content: Frequently asked questions about Azure Application Gateway
Content Source: articles/application-gateway/application-gateway-faq.md
Service: application-gateway
GitHub Login: @vhorne
Microsoft Alias: victorh

PR: https://github.com/MicrosoftDocs/azure-docs-pr/pull/94245


bundle: fix validation error via removing SA manifest

Fix: "Error: Value odf-operator-controller-manager: invalid service
account found in bundle. sa name cannot match service account defined
for deployment spec in CSV".
References:
https://github.com/operator-framework/operator-sdk/issues/5244
https://github.com/operator-framework/operator-sdk/issues/5326
Signed-off-by: Nitin Goyal<EMAIL_ADDRESS>https://bugzilla.redhat.com/show_bug.cgi?id=2021119

/cherrypick release-4.9


Parse Bug

I Try parse https://raw.githubusercontent.com/twbs/bootstrap/v4-dev/dist/css/bootstrap.css Fail.
Carbon.Css.Parser.UnexpectedTokenException
HResult=0x80131500
Message=Unexpected token at 43318 reading Function. Expected 'RightParenthesis'. Was 'Semicolon'.
StackTrace:
at Carbon.Css.StyleSheet.FromFile(FileInfo file, CssContext context)
at ...

Missed this! This file parses correctly in v0.10.0.
Thanks for the bug report.


Clarify characters are each unique in permutation

Closes #2524.

Excellent addition.  We get a lot of questions about this one.


Named pipes between external commands on Windows

Fildesh builtins treat files starting with "/dev/fd/" as a symbolic name for a file descriptor, but not all programs do that.

[ ] Enable test/syntax/alias_ofxf_test.fildesh on Windows.

Named pipes have symbolic names like \\.\pipe\pipename (https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-createnamedpipea), but I'm not sure how isolated the access is. Can some other process get read or write access? Or cause name collisions?
I was also looking around for an alternative to posix_memfd(). Maybe something like that is helpful. Not sure if it has a symbolic filename. Relevant links:

https://docs.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-createfilemappingw
https://devblogs.microsoft.com/oldnewthing/20130301-00/?p=5093
https://docs.microsoft.com/en-us/windows/win32/memory/creating-named-shared-memory ?


Create run

Tested

I'm not sure this is something which should exist here...

No I agree... @RamiSJ12 if you think this is something we should merge then feel free to reopen the PR, but then please make sure the PR has enough information to understand your goal.


Should Mailhog be converted to run as a global shared service?

Currently each environment runs it's own Mailhog container to capture emails relayed via SMTP. This seems quite redundant and inefficient when spinning environments up and down.
The idea here is that Mailhog would run as a shared global service in like manner to Traefik, Portainer, etc. It would be peered with each project network (just like Traefik is) allowing php-fpm containers to continue sending email to mailhog on port 1025 (i.e. there should be zero re-configuration of application configuration for this to work).
Implementing this change would have mailhog service spun up when warden svc up (formerly warden up) is run and would obsolete the WARDEN_MAILHOG flag in per-project .env files as it would no longer have a purpose.
~Users who do not want to run Mailhog for any of their projects (despite it being very lightweight) could be empowered to turn it off by implementing a similar flag in the global service .env file typically found at ~/.warden/.env~ PHP-FPM images are built with mhsendmail pre-configured to route outbound emails to mailhog:1025 and overriding this based on a global svc presence indicator would be difficult, so implementing a global flag to avoid running mailhog at all is unlikely at this time.
Any thoughts on this front are welcome. Should there be no opposition to the idea, it will likely be explored in context of 0.7.0 release (timeline tbd).

This has been implemented in commit 12d8452 and has been working well. The change will be published in the upcoming 0.7.0 release.


Thyron implementation can be stuck on signature confirmation dialog

The Thyron connector does not show buttons when confirming a signature. If the merchant rejects the signature on the scanner device the confirmation dialog can not be closed anymore leaving the app stuck on the dialog.
https://github.com/mposSVK/acceptSDK-Android/blob/master/demo/demo/sample/src/flavor_thyron/java/de/wirecard/accept/sample/PaymentFlowActivity.java#L15
https://github.com/mposSVK/acceptSDK-Android/blob/master/demo/demo/sample/src/main/java/de/wirecard/accept/sample/PaymentFlowDialogs.java#L84

Good job mpost. This is demo app, its like example of implementation...not real production app.(Still you have no chance to get stack because to continue or cancel you need press some action buttons on terminal(hardware)... it mean that you are confirming or decline signature on terminal... like remote control of app ;) )
thx.

Agreed but the cancel button on the device does not continue the app.


Api docs

This provides live API documentation for the node's REST API on the url: http://testnet.sushichain.io:3000/docs/api/v1
it covers all the rest GET and POST at a basic level  - It can be refined in the future and also will add websocket pubsub documentation there in a different PR
Please review and merge if all good

The documents seems almost good. But I found 2 issues.

I always got Network Error when I try every APIs. - (1)
I got many debug logs in my developer console. - (2)

For (1)

For (2)

Could you check them?

Network error is because until this gets deployed there is no Cross Domain Origin headers on the API - but this PR adds them so will work after deploy or if you use localhost with this branch sushid running.
I’ll see why the console log comes - looks like it’s coming from an imported library - I think if I compile index.html in prod mode it will go away - I’ll fix

Oh I see. I'll merge after the debug logs be disappeared.
Please ping me then.

Fixed now - can be merged

awesome!


Add option in BulkWESLevel1 metadata sheet

Request from Thomas at Stanford to add a valid value.
Hello,
For BulkWESLevel1, can we add the following as an option for the  Target Capture Kit  column?
“SureSelect Human All Exon v6”
Thank you,
Thomas
Please update the originating Jira ticket once incorporated: https://sagebionetworks.jira.com/servicedesk/customer/portal/1/HTAN-305

Thomas notes: This is blocking our WES metadata submission, which we want to include in the upcoming release.


add message similar to vue-router's regarding compatibility with vue 2

I won't be offended if this doesn't get merged in, but some simple note like this would have saved me (and I suspect others, like @darwinluague) a good chunk of time.  Tried to follow convention from vue-router.

This pull request is now irrelevant with the official release of Vue 2!  Congrats on the release!


[Distributed] Handle distributed thunk requirements/witnesses

This is an important piece for allowing calls on @DistributedProtocol protocols -- and marks our first "complete" roundtrip call through a protocol!

@swift-ci please smoke test

Reviews welcome, but merging so we don't have so many in-flight-overlapping PRs. I'd address any feedback in follow-up 🙏

unrelated failure
******************** TEST 'lldb-api :: lang/swift/embedded/expr/TestSwiftEmbeddedExpression.py' FAILED ********************

@swift-ci please smoke test macOS

@swift-ci please smoke test


Offer alternative API's similar to flate2

It's pretty common to support multiple compression algorithms within applications.  zstd and zlib are pretty common partners.
flate2 offers a BufReader API, it would be nice (tm) if zstd offered a similar function.
https://docs.rs/zstd/latest/zstd/stream/zio/struct.Reader.html
vs
https://doc.servo.org/flate2/zlib/read/struct.ZlibDecoder.html
Example:
    fn inflate_heap_chunk(&mut self, index: u64) -> Result<usize, Box<dyn error::Error>> {
        let pos = self.heap_chunk_offset(index)?;
        let uncompressed_size = self.heap_chunk_uncompressed_size(index)? as usize;
        let header = self.header.as_ref().unwrap();
        let filename = self.filename.as_ref().unwrap();
        println!("Chunk {}; {} - {} inflate to {}", index, pos, pos + header.heap_chunk_size as u64,
            uncompressed_size);

        let mut f = File::open(filename)?;
        f.seek(SeekFrom::Start(pos))?;
        let mut buffer = vec![0; uncompressed_size];
        let mut reader: Box<dyn Read> = match header.heap_compression {
            0 => Box::new(f),
            1 => Box::new(ZlibDecoder::new(f)),
            2 => Box::new(zstd::stream::zio::Reader::new(f)),      //// This won't work since I also need an operation.
            _ => return Err(From::from(format!("Unknown hpkg heap compression: {}", header.heap_compression)))
        };

        reader.read_exact(&mut buffer)?;
        self.heap_data.push(buffer);
        Ok(uncompressed_size)
    }

It's also completely possible i'm missing something in calling zio::Reader.  There aren't any examples so i'm not 100% sure what the intent of Operation is

Do you just want a Read implementation that decodes? The Decoder (linked from the crate's top-level doc page) should be what you need.

There's also a couple examples, for example this one using this Decoder.


Revise for GCC

Description

Revised GCC to make it more in line with the idea of his original paper
Checklist
Please feel free to remove inapplicable items for your PR.

gcc_mw
gcc_dw
sampling
bug fixed
...

update gcc

update gcc


Minor improvements (no behavior changes)

Neither should change any actual behavior, but both are (in my opinion) minor improvements nonetheless.

Thanks! Good improvements.


Where do I get KITTI depth folder to train CaDDN?

After applying the fixes mentioned in https://github.com/open-mmlab/OpenPCDet/pull/542 I can still not train CaDDN
because I am missing the depth_2 folder of KITTI.
Where can I get this data?

Here is the instruction for preparing depth_2 data: https://github.com/open-mmlab/OpenPCDet/blob/master/docs/GETTING_STARTED.md#dataset-preparation

Here is the instruction for preparing depth_2 data: https://github.com/open-mmlab/OpenPCDet/blob/master/docs/GETTING_STARTED.md#dataset-preparation

@sshaoshuai  Thanks, I did not see that!


test docker for EWS v2 2019

Status
Ready/In Progress/In Hold (Reason for hold)
Related Content Pull Request
Related PR: link to the PR at demisto/content
Related Issues
Related: link to the issue
Description
Create a docker for ews v2 2019

keep me alive pls

keep me alive pls


Reorder personal app tabs

Starting with manifest version 1.7 developers can rearrange all tabs in their personal app. In particular, a developer can move the “bot chat” tab (which has always defaulted to the first position) anywhere in the personal app tab header. We’ve declared two reserved tab entityId keywords: “conversations” and “about”.
Todo:

[ ] Include a screenshot of the feature in the documentation
[ ] App Studio support (in approved PR)
[ ] Wait until the most recent mobile update has reached critical mass wrt user adoption
[ ] Publish documentation and App Studio changes

Docs Build status updates of commit 17078eb:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/how-to/reorder-personal-app-tabs.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit f0d8d01:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/tabs/how-to/reorder-personal-app-tabs.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Questions about DropNode

Questions:

The code did not scale features after dropping nodes randomly while training. It's not consist with paper.
Should it be original features as DropNode output during inference?
Should (1 - droprate) or 1 / (1 - droprate) be scale factor?

Description of DropNode in paper:

Code of DropNode:
if training:
    masks = torch.bernoulli(1. - drop_rates).unsqueeze(1)
    features = masks.cuda() * features  # did not scale features after dropping nodes randomly
else:
    features = features * (1. - drop_rate)  # scaled features during inference

Questions:

The code did not scale features after dropping nodes randomly while training. It's not consist with paper.
Should it be original features as DropNode output during inference?
Should (1 - droprate) or 1 / (1 - droprate) be scale factor?

Description of DropNode in paper:

Code of DropNode:
if training:
    masks = torch.bernoulli(1. - drop_rates).unsqueeze(1)
    features = masks.cuda() * features  # did not scale features after dropping nodes randomly
else:
    features = features * (1. - drop_rate)  # scaled features during inference

Hi, thanks for your interests! DropNode/dropout can be implemented with two ways: 1) Scaling features with 1 / (1 - droprate) during training. 2) Scaling features with (1 - droprate) during inference. Our paper only describes the first method, but we implement it with the second.  Both methods are correct.


Goals - Question

In section 4.1.3 Goal Statements (Page 4), your first goal is to "Present a mathematical model of IP". Should we consider this as a goal statement? Calculation in GS2 and GS3 seems ok, but presentation can be considered as a goal?

@DeeshaPatel
I see what you are telling, I'm not sure about it and somehow agree with you. however, let me ask @smiths.

I've deleted it in commit 4d129a5.

I agree that presenting a mathematical model is not a goal statement in the way that we use goal statement in our template.  The "goal" of the SRS itself is to present the mathematical model.  The goal of the software is to take inputs and produce outputs.


"Merkle roots differ after transfer" after node is running for a while

This morning my node was looping with timeouts in the log.    I stopped and restarted, and it has now crashed with "Merkle roots differ after transfer: got unexpected result"

My most recent run-in with this, after restarting the daemon: coda-1564065341.log
{"timestamp":"2019-07-25 14:35:42.198983Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 291, characters 65-72"},"message":"Error reading daemon.json: $error","metadata":{"error":"(Unix.Unix_error\"No such file or directory\"open\"((filename /home/matthew/.coda-config/daemon.json) (mode (O_RDONLY O_CLOEXEC)) (perm 0o0))\")","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199052Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"external-port","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199083Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"client-port","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199106Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"snark-worker-fee","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199136Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"max-concurrent-connections","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199160Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"work-selection","pid":6186}}
{"timestamp":"2019-07-25 14:35:42.199183Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 313, characters 65-72"},"message":"Key '$key' not found in the config file, using default","metadata":{"key":"peers","pid":6186}}
{"timestamp":"2019-07-25 14:35:43.935050Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 486, characters 54-61"},"message":"Creating database of type $typ in directory $directory","metadata":{"directory":"/home/matthew/.coda-config/trust","pid":6186,"typ":"trust_system"}}
{"timestamp":"2019-07-25 14:35:57.372066Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 500, characters 63-70"},"message":"Creating database of type $typ in directory $directory","metadata":{"directory":"/home/matthew/.coda-config/trust","pid":6186,"typ":"consensus local state"}}
{"timestamp":"2019-07-25 14:35:57.372390Z","level":"Debug","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 467, characters 63-70"},"message":"Long async cycle: $span milliseconds","metadata":{"pid":6186,"span":"13.563110095s"}}
{"timestamp":"2019-07-25 14:35:57.482060Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 523, characters 64-71"},"message":"Creating database of type $typ in directory $directory","metadata":{"directory":"/home/matthew/.coda-config/receipt_chain","pid":6186,"typ":"receipt_chain_database"}}
{"timestamp":"2019-07-25 14:35:57.508772Z","level":"Trace","source":{"module":"Coda","location":"File \"app/cli/src/coda.ml\", line 531, characters 62-69"},"message":"Creating database of type $typ in directory $directory","metadata":{"directory":"/home/matthew/.coda-config/transaction","pid":6186,"typ":"transaction_database"}}
{"timestamp":"2019-07-25 14:36:00.196735Z","level":"Debug","source":{"module":"Coda_run","location":"File \"app/cli/src/coda_run.ml\", line 70, characters 52-59"},"message":"Successfully wrote the visualization of the registered masks at location: /home/matthew/.coda-config/registered_masks.dot.","metadata":{"coda_run":"Logging state before program ends","pid":6186}}
{"timestamp":"2019-07-25 14:36:00.197537Z","level":"Trace","source":{"module":"Coda_run","location":"File \"app/cli/src/coda_run.ml\", line 75, characters 56-63"},"message":"Shutdown before Coda instance was created, not saving a visualization","metadata":{"coda_run":"Logging state before program ends","pid":6186}}

  ☠  Coda Daemon crashed. The Coda Protocol developers would like to know why!

  Please:
    Open an issue:
      https://github.com/CodaProtocol/coda/issues/new

    Briefly describe what you were doing, and include the last 20 lines from .coda-config/coda.log.
    And then paste the following:

    (monitor.ml.Error
  (runtime-lib/runtime.ml.E
    "Merkle roots differ after transfer: got unexpected result"
    ((expected
<PHONE_NUMBER>0467596106866402734597443669063381446628167838929129222958650359402660018169492542114228579857016809663362878702967691140114883880635297843337526424344049903879831696969707777320618038873222528382381697025453708056747)
      (got
<PHONE_NUMBER>1025011603230697695085370554301275323584479787590866411302392047573659534418116050177771442629407029327750673002858692494540135237949546362363166695549101792654595707467823915385172461099965870109734933066241071519040)
      (Loc lib/coda_base/ledger_transfer.ml:25:19)))
  ("Raised at file \"runtime-lib/runtime.ml\", line 28, characters 28-53"
    "Called from file \"runtime-lib/runtime.ml\" (inlined), line 105, characters 27-78"
    "Called from file \"lib/coda_base/ledger_transfer.ml\", line 25, characters 19-32"
    "Called from file \"lib/coda_lib/coda_lib.ml\", line 352, characters 4-73"
    "Called from file \"lib/coda_lib/coda_lib.ml\", line 394, characters 12-52"
    "Called from file \"src/deferred0.ml\", line 56, characters 64-69"
    "Called from file \"src/job_queue.ml\" (inlined), line 131, characters 2-5"
    "Called from file \"src/job_queue.ml\", line 170, characters 6-47"
    "Caught by monitor coda"))

Log from prior run (staking): coda-1564063596.log

I ran into the same bug after I ran coda for the first time. But after I deleted the ~/.coda-config and ran again. This never happens again.

FWIW, I got the same error when I changed the snark-worker-key.

We will do a work around just deleting the existing DB. @nholland94 's persistence patch will do the actually good right thing.


Local Host Refuses to connect.

Hello, I'm getting this error regularly when trying to launch the local connection.  When I went to the public gradio I was taken to something that I'm pretty sure isn't Stable Diffusion.  The translated text says "Convert Kurdish speech to writing".

Gradio sometimes sends you a link to a different server, just restart the gradio cell and it'll fix

Any suggestions on the local host error?  I'd like to be able to do it that way instead of using the public if possible.

Impossible with google colab, but you can set a password for you server, I'll add that option later

Ahh okay, thanks!

no problem


Consolidate CLI logging and remove subsequently unnecessary port arg for prepareMiddleware

💯% better console output.
Note the above is shown when using the keystone CLI (which most projects should anyway). If the app developer opts out and creates a custom server, then they can implement their own pretty printing logic 👍

I went down a rabbit hole for both of those things!
Gladly, I pulled myself out of it and stuck with this basic implementation first.

the Admin UI app and GraphQL app are [treated] special[ly]

I thought about a more generalised solution where .prepareMiddleware could return more than just the middleware, or even "register" some meta info or... something. But it ended up being hacky and felt wrong.
This version which I landed on feels better because the hackyness is contained, and since we use named exports and we're in the same monorepo, I don't mind reaching in like this (but it's still not ideal).

The loading thing pauses and it's annoyyyyyyying(I'm assuming because a bunch of synchronous work happens?

Yep! I tried using the threads library, then the tiny-worker library, but both introduced more complexity than I was comfortable with. It's purely because the main thread is locked up while requireing the file, so the CLI output doesn't update.


Everdev installer doesn't work

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.3 LTS
Release:	20.04
Codename:	focal

$ node -v
v14.19.0

$ sudo npm i -g everdev
npm WARN deprecated<EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated<EMAIL_ADDRESS>this library is no longer supported
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
/usr/local/bin/everdev -> /usr/local/lib/node_modules/everdev/cli.js

><EMAIL_ADDRESS>install /usr/local/lib/node_modules/everdev/node_modules/cpu-features
> node-gyp rebuild

gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/14.19.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/everdev/node_modules/cpu-features/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/everdev/node_modules/cpu-features/.node-gyp'
gyp ERR! System Linux 5.13.0-28-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/everdev/node_modules/cpu-features
gyp ERR! node -v v14.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok

><EMAIL_ADDRESS>install /usr/local/lib/node_modules/everdev/node_modules/ssh2
> node install.js

gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/14.19.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/everdev/node_modules/ssh2/.node-gyp"
gyp WARN install got an error, rolling back install
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/everdev/node_modules/ssh2/.node-gyp'
gyp ERR! System Linux 5.13.0-28-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "--target=v14.19.0" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/everdev/node_modules/ssh2/lib/protocol/crypto
gyp ERR! node -v v14.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
Failed to build optional crypto binding

><EMAIL_ADDRESS>postinstall /usr/local/lib/node_modules/everdev/node_modules/@tonclient/lib-node
> node install.js

Error: EACCES: permission denied, mkdir '/root/.tonlabs/binaries/1_30'
    at Object.mkdirSync (fs.js:1013:3)
    at resolveBinariesTargetPath (/usr/local/lib/node_modules/everdev/node_modules/@tonclient/lib-node/install.js:97:16)
    at main (/usr/local/lib/node_modules/everdev/node_modules/@tonclient/lib-node/install.js:111:32)
    at /usr/local/lib/node_modules/everdev/node_modules/@tonclient/lib-node/install.js:117:15
    at Object.<anonymous> (/usr/local/lib/node_modules/everdev/node_modules/@tonclient/lib-node/install.js:122:3)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Module.load (internal/modules/cjs/loader.js:950:32)
    at Function.Module._load (internal/modules/cjs/loader.js:790:12)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:75:12) {
  errno: -13,
  syscall: 'mkdir',
  code: 'EACCES',
  path: '/root/.tonlabs/binaries/1_30'
}
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/everdev/node_modules/cpu-features):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>postinstall: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2022-02-07T09_00_26_395Z-debug.log

If you really want to install in root using nobody uid, you need to grant access for it. Or try install everdev without sudo.

As i know it is impossible to install any package globally without sudo at least on Ubuntu.
$ npm i -g everdev
npm WARN deprecated<EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated<EMAIL_ADDRESS>this library is no longer supported
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! syscall access
npm ERR! path /usr/local/lib/node_modules
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR!  [Error: EACCES: permission denied, access '/usr/local/lib/node_modules'] {
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path: '/usr/local/lib/node_modules'
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

npm ERR!  Missing write access to /usr/local/lib/node_modules.

@zeleniy I recommend installing node.js using nvm. It solves all problems related to installing modules globally.
Let me know if this helps so I can close the issue.

Closed due to inactivity

I have installed node.js with nvm. It doesn't help. Here is reproduction steps:

Create Dockerfile:

FROM ubuntu:18.04

ENV TZ=Europe/Moscow
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

RUN apt-get update
RUN apt-get install -y curl wget

RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# RUN npm install -g n
# RUN n 14
# RUN npm install -g everdev

WORKDIR /root/free-ton-app

Build image:

docker build -t free-ton-v1.0 .

@Artem-Zhdanov reopen issue please.

@elasticLove1 may be you can help with this issue?


Check if logging works properly

During development of #223 I've noticed that logging seems not to work properly (I've literally copy-pasted already existing solution). It's advised to verify if and where logged are being saved as well as checking if other places that are using slf4j logger are reporting the logs properly.

For oscm.logging.Log4JLogger to work properly it is needed to activate file appender in logger factory:

In that case, when error is logged in a manner mentioned in this issue's description, logs are appended to logs/system.log of oscm-app container.
To log errors/warns/infos to different log files it is needed to use different logger implementation


Allow http_proxy, https_proxy and no_proxy env variables

What do you think on allowing on this module the standard proxy environment variables of http_proxy, https_proxy, HTTP_PROXY, HTTPS_PROXY and no_proxy.
I can do a pull request if you feel that is useful for the module :)

Did you take a look at proxy-from-env to implement this in your own code? It's pretty straightforward to use.
I think it would be preferable if this simple, lightweight library remained just that way - a simple, lightweight library. I could definitely see another package wrapping this with some factory functionality that supports env-var based proxy resolution then instantiates the right agent class for a given target URL.

Closed in https://github.com/delvedor/hpagent/pull/36#pullrequestreview-970391689.


Flaky test: WritePidFile_WorksAsExpected

This test fails occasionally with the following error:
System.IO.IOException : The process cannot access the file 'C:\Users\asplab\.dotnet\pids\build\rzc-3176' because it is being used by another process.
   at System.IO.FileSystem.DeleteFile(String fullPath)
   at System.IO.File.Delete(String path)
   at Microsoft.AspNetCore.Razor.Tools.ServerCommandTest.WritePidFile_WorksAsExpected() in /_/test/Microsoft.AspNetCore.Razor.Tools.Test/ServerCommandTest.cs:line 55

Dup of https://github.com/aspnet/Razor/issues/2303.


Apple script stand-up and sit-down do not work

I currently writing raycast extension which works with your application and gets the following issue.
Since the new version, the following two apple scripts do not work anymore. I did not get any error message when I run the script. You can check out my code in the following Mr https://github.com/raycast/extensions/pull/1964.
tell application "Desk Controller"
    move "to-sit" // or "to-stand"
end tell

To add, specifying the height manually does work in AppleScript.
tell application "Desk Controller"
    move to "125cm"
end tell

looks like it's simple copy-paste mistake. both command codes in deskcontroller.sdef are the same.

Same for me. I'm running the script in Script Editor and setting the height works, but setting "to-stand" (or "to-sit") doesn't. No errors, no messages.
I'm in the latest Ventura release.
Let me know if I can do anything for debugging.

@alvarogonzalez-packlink I fixed it in my forked branch and added Notification. There is currently no signed or build version uploaded, so you need this to build by your own on your local system.

I wrote a bash script for this which works for me and I thought I'd share if anyone wanted something like it;
#!/bin/bash

ACTION=$1
HEIGHT=$2

# preset heights
SIT="80cm"
STAND="110cm"

# height check values
MAX_HEIGHT=115
MIN_HEIGHT=75

# colours
NOCOLOUR='\033[0m'
RED='\033[0;31m'
ORANGE='\033[0;33m'

warning() {
    echo -e "${RED}$1${NOCOLOUR}"
}

hint() {
    echo -e "${ORANGE}$1${NOCOLOUR}"
}

desk_move() {
    osascript <<EOD
    tell application "Desk Controller"
        move to "$1"
    end tell
EOD
}

height_check() {
    if [ -z $HEIGHT ]; then
        warning "ERROR!"
        echo "Height not supplied"
        exit
    elif (($HEIGHT > $MAX_HEIGHT)); then
        warning "ERROR!"
        echo "Height $HEIGHT is too high"
        exit
    elif (($HEIGHT < $MIN_HEIGHT)); then
        warning "ERROR!"
        echo "Height $HEIGHT is too low"
        exit
    fi
}

if [ "$ACTION" == "sit" ] || [ "$ACTION" == "stand" ]; then
    if [ "$ACTION" == "sit" ]; then VALUE=$SIT; else VALUE=$STAND; fi
    echo "Moving Desk to $ACTION - $VALUE"
    desk_move $VALUE
elif [ "$ACTION" == "height" ]; then
    height_check $HEIGHT
    echo "Moving Desk to height - $HEIGHT"
    desk_move "${HEIGHT}cm"
else
    warning "Missing action"
    hint "Available actions:"
    echo "desk sit"
    echo "desk stand"
    echo "desk height <NUMBER>"
fi

This used to work on my previous Mac but strangely it no longer works. Interestingly Script Editor automatically changes move "to-sit" to move to "to-sit"
tell application "Desk Controller"
	move to "to-sit"
end tell


fix: Fix issues when pages don't have reference in application object

Description

As a part of git-directory update we have introduced a bug where if the entity names includes the - we were not able to filter the entities in the individual page directory. This PR introduces a new name-seperator to avoid such issues.

Also in the merge operation we used to delete only the unpublishedPages which resulted in stale pages, where page object had the applicationId but the same application did not had the reference of pageId in pages and publishedPages array. As a fix we are now not committing the entities in git which has non-null deletedAt field inside the unpublished resource as we expect commit flow will be triggered only after the publish.

Fixes #13023 #13064
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

JUnit testcase
Manual testing

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, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/ok-to-test sha=e207295


Salam/knife update

Update Chef-DK to include knife-windows 1.1.0
@chef/client-core @tpetchel @adamedx

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
Non-GitHub Verified Committers
There are 1 commit author(s) whose commits are authored by a non-GitHub verified email address. Chef will have to manually verify that they are authorized to contribute.
Please sign the CLA here.

:+1:


Extensions section needs some love

Clearly this is not intended to be in the final spec:

This is the trickiest bit, probably, along with the idea of constraining document resources. The below is intended to be very preliminary.

Just making sure we've got an issue in.

The actual extension properties look pretty solid to be aside from the placement property. #30

This is handled


LSTM Layer normalization

https://github.com/opendilab/DI-engine/blob/765b8fb0d15092027dcc5b9b511c919059e1516b/ding/torch_utils/network/rnn.py#L230
Layer normalization is applied to c before taking tanh for h calculation in the original paper: equation (22) of https://arxiv.org/pdf/1607.06450. Any reason it's not done here?

The Layer Normalization (LN) issue you mentioned does indeed exist. Our previous version was implemented following equations (20)-(22). However, I recall that our earlier experiments suggested that LN on c sometimes limits the model's capacity. We will conduct an experiment on Atari using R2D2 to verify this and modify the code accordingly, adding an option to control whether LN is applied on c.

Thanks for your reply!


Add support for UPSERT

Closes #256. UPSERT is done with the ON CONFLICT clause available on PostgreSQL >= 9.5.
Bulk UPSERT can be done by adding Prefer: resolution=ignore-duplicates/merge-duplicates headers, these do a INSERT .. ON CONFLICT(<pkCols>) DO NOTHING/DO UPDATE.
The ignore-duplicates/merge-duplicates Prefer values only work with tables that have a PK, if the table doesn't have a PK the Prefer will be ignored(no error).
Single row UPSERT can be done with PUT if the client specifies only PK columns as eq filters and the payload is identified by the URI, other restrictions include not allowing Content-Range/limit/offset(took into account the previous implementation).

I tried this out locally again and it's fun to use. 🎈
Noticed a few things:

"You must specify all columns in the payload when using PUT"

This returns HTTP 405, which is misleading because PUT is supported on the resource, it's just that the payload was wrong. Seems more like it should be a 400 error. (405 is perfect for the "Filters must include all and only primary key columns with 'eq' operator" though)

This was weird, but when I did a POST with a single item that duplicated a row in the table, and used Prefer: resolution=ignore-duplicates, then the server had an internal error.

{
  "details": "Row number 0",
  "message": "Row error: unexpected null"
}

Seems like a haskell error because running the generated query in psql just gives┌──────────────────┬────────────┬───────────┬──────────┐
│ total_result_set │ page_total │ array_agg │ ?column? │
├──────────────────┼────────────┼───────────┼──────────┤
│                  │          0 │ ∅         │          │
└──────────────────┴────────────┴───────────┴──────────┘

Including multiple items in the POST array makes the error go away, even when both items are dups of existing rows.

@begriffs Added latest corrections.

I added one more note about response codes. Aside from that and rebasing it looks good to merge!


Table field captions are generated even without GenerateCaptions flag

1. Describe the bug
When field doesn't have caption specified it is still included into translation file even without GenerateCaptions flag. Problem was introduced with runtime 10.
2. To Reproduce
Steps to reproduce the behavior:

Create table extension:

tableextension 50000 TestCaption extends Item
{
    fields
    {
        field(50000; "Field without caption"; Boolean)
        {
        }
    }
}

Make app.json to have following setup:
"runtime": "11.0",
"features": [ "TranslationFile" ],

Compile project

3. Expected behavior
New field is not added to the generated translation file
4. Actual behavior
Following section is added to translation file:
        <trans-unit id="TableExtension<PHONE_NUMBER> - Field<PHONE_NUMBER> - Property<PHONE_NUMBER>" size-unit="char" translate="yes" xml:space="preserve" al-object-target="Table<PHONE_NUMBER>">
          <source>Field without caption</source>
          <note from="Developer" annotates="general" priority="2"></note>
          <note from="Xliff Generator" annotates="general" priority="3">TableExtension TestCaption - Field Field without caption - Property Caption</note>
        </trans-unit>

5. Versions:
Runtime 11

All table fields has a caption by default, and this has been the behavior since xliff translations was introduced.


Atom.Object.defineProperty.get is deprecated.

Following was reported by Deprecation Cop
The atom.syntax global is deprecated. Use atom.grammars instead.
Atom.Object.defineProperty.get (/opt/atom/resources/app/src/atom.js:314:11)
RstPreviewView.handleEvents (/home/mandar/.atom/packages/rst-preview/lib/rst-preview-view.coffee:53:20)

Never mind, looks like Duplicate. Should have checked first. Closing.


Add: IGLGroup TV

Channel Name
IGLGroup TV
Alternative Names (optional)
No response
Network (optional)
No response
Owners (optional)
No response
Country
AR
Subdivision (optional)
No response
City (optional)
Iglesia
Broadcast Area
c/AR
Languages
spa
Categories (optional)
general
NSFW
FALSE
Launched (optional)
No response
Closed (optional)
No response
Replaced By (optional)
No response
Website (optional)
No response
Logo
https://avatars.githubusercontent.com/u/163193844?v=4
Notes
Iglesia, San Juan, Argentina.

#10331 ?

Hmm, haven't found that out when I've checked. My bad.


Page 8 adding the functions

Step 6 --> The added functions have to be before the actionMaps section, otherwise it will fail.

Closing -- no longer relevant


Adding new Production Environment section

I wrote a replacement for the Production Environment page that provides an overview of what someone should consider when creating their own production-quality Kubernetes. It ended up being sort of a guide to other sections of the docs, since I found excellent information already existed to cover most of the points I wanted to make.
The content of the PR was proposed in this issue: https://github.com/kubernetes/website/issues/27072

Also relevant to issue #25974

@sftim I believe I've addressed all the comments. Please let me know if there is anything further I need to do before.

Preview page:
https://deploy-preview-27466--kubernetes-io-master-staging.netlify.app/docs/setup/production-environment/

@chrisnegus I added a few suggestions, most of them are attempts to make the content more concise and clear.
If you accept my suggestions, remember to match parallelism on lists.

@chrisnegus I added a few suggestions, most of them are attempts to make the content more concise and clear.
If you accept my suggestions, remember to match parallelism on lists.

Everything you said looks reasonable. I'll try to resolve the comments today. Thanks!

All comments to date from @sftim and @reylejano have been addressed. Let me know what else I need to do to prepare the PR to be merged.

@kbhawkey I'm told you are the PR wrangler this week. Could you tell me if you think this PR needs further review before it is merged or if there is anything else it needs? Thanks!

Page preview:
https://deploy-preview-27466--kubernetes-io-master-staging.netlify.app/docs/setup/#learning-environment

@chrisnegus . I am reading through this PR.
Is there a reason to change the _index.md file to index.md?

@chrisnegus . I am reading through this PR.
Is there a reason to change the _index.md file to index.md?

I was told that _index.md is a special file that just pulls in .md file from the current directory as links. An index.md file is just interpreted as a regular file, displaying its content.

Hi @chrisnegus . Thanks for this pull request!
This page seems to provide an extensive list (advice) of things to do when setting up a production Kubernetes cluster.
You could leave the section index (_index.md) in place and add a new page, something like Best Practices?
You could simplify the page by briefly describing these setup topics:

Control plane
Nodes
User access
Workload Resources

The site has individual pages for these topics; you could possibly update/add to the related pages?

@chrisnegus . I am reading through this PR.
Is there a reason to change the _index.md file to index.md?

I was told that _index.md is a special file that just pulls in .md file from the current directory as links. An index.md file is just interpreted as a regular file, displaying its content.

Yes, _index.md is a section index page.

@kbhawkey Thanks for the thorough edit! I'll try to work through these comments tonight. On the whole, it looks great. BTW, what's wrong with "Transition your mindset?" Every once in a while it's good to try to wake up the reader. ;-)

@chrisnegus I went through and left some comments in an informal review. Overall i think this page has a lot of great details! I do agree with the points in this comment from @kbhawkey though.

Hi @chrisnegus . Thanks for this pull request!
This page seems to provide an extensive list (advice) of things to do when setting up a production Kubernetes cluster.
You could leave the section index (_index.md) in place and add a new page, something like Best Practices?
You could simplify the page by briefly describing these setup topics:

Control plane
Nodes
User access
Workload Resources

The site has individual pages for these topics; you could possibly update/add to the related pages?

There needs to be an _index.md . Without it the sub pages/folders: Container Runtimes, Installing Kubernetes with deployment tools, Turn Key Cloud solutions, and Windows in Kubernetes are orphaned. In the deploy preview (https://deploy-preview-27466--kubernetes-io-master-staging.netlify.app/docs/setup/production-environment/) they either dont appear at all in the TOC, or do not appear nested correctly (at least they dont when i view the deploy preview), live site -  https://kubernetes.io/docs/setup/production-environment/.
I think it might be better to make the _index.md page more like the _index.md file for Learning Environments, github pg - https://github.com/kubernetes/website/blob/master/content/en/docs/tasks/tools/_index.md, where there is a brief description and then a list of links to the sub pages for this section.
I like the suggestion of moving this content to a Best Practices page

Thanks for the excellent comments @kbhawkey and @a-mccarthy . I've responded to all of them except the last one you each had for moving the content to other places. Perhaps we could have a discussion of this at the next SIG docs meeting. My inclination would be to merge this PR and consider the reorg later. But I'd be happy to wait and discuss it further first. Thoughts?

If #27466 (comment) is addressed and we can agree on a way forward for #27466 (comment) I'd be willing to LGTM this, even with other feedback outstanding.

Sorry I missed those comments @sftim . I think I've responded to them all now. I reread the last comments from @kbhawkey and @a-mccarthy and I think they have good points. I was trying to avoid this, but we could reorganize this all in the following ways:

Move this PR's contents (production-environment/index.md) into ../best-practices/index.md and call it "Production best practices".
Move the files from best-practices (certificates.md, cluster-large.md, multiple-zones.md, and node-conformance.md) to the production-environment directory. I think that's appropriate because they aren't really best practices and they all would apply to a prod environment and not to a learning environment.
Reinstate production-environment/_index.md to pick up links to all the contents of that directory (there will be eight links now, including the moved best-practices content).
Add a few paragraphs to the production-environment/_index.md content to introduce the topic and make it more parallel with the learning-environment page.
Perhaps create a new learning-environment/index.md page along the same lines that doesn't just point to the Install Tools page, but has basically the same content (Install Tools), but includes a few words about what you are looking for in a learning environment.

Of course, if you prefer, we can merge this PR and not do any of that. Opinions?

/approve

To address the spirit of the last few comments, to not lose the links in the left nav from the original Production Environment page, I moved the content I wrote back to the _index.md file. The links have reappeared now.

Looks great, thanks @chrisnegus!
/lgtm


fixed typo

added missing space

Thank you for your feedback! We’ll look into it and come back to you if we have any questions.

Fixed


update network dep to be zig 0.9 compat

The latest commit on https://github.com/MasterQ32/zig-network fixes the c_void break in zig 0.9. I am suppppeerr new to zig and am not sure if this is the right way to track master in gyro.

Since a new version hasn't been published on astrolabe for the zig 0.9.0 changes I'm going to accept this and we'll start tracking zig-network master in gyro too.

Since a new version hasn't been published on astrolabe for the zig 0.9.0 changes I'm going to accept this and we'll start tracking zig-network master in gyro too.


Refactoring to allow parallel queries

Using static doesnt allow us to create more than one query in parallel, so I made this refatoring to allow that

Thank you so much


[otbn] Signal multiple errors together

Previously when several errors were observed together OTBN prioritised
them to set a single error bit. This removes the priortisation so bits
for all observed errors are set simultaneously.
Fixes #5141
Signed-off-by: Greg Chadwick<EMAIL_ADDRESS>

Note that will be some ISS/RTL mismatches due to #4996 I don't think they break anything important for now.

Note that will be some ISS/RTL mismatches due to #4996 I don't think they break anything important for now.

These aren't new mismatches though, right? As in, current master will have mismatches on all sorts of corner cases, and this squashes some of them?

These aren't new mismatches though, right? As in, current master will have mismatches on all sorts of corner cases, and this squashes some of them?

Correct


[v1.9] chore: Update argocd-operator to include ha reconciliation fix

What type of PR is this?
/kind bug
What does this PR do / why we need it:
Updates argocd-operator version to include https://github.com/argoproj-labs/argocd-operator/pull/916 fix.

/lgtm
/approve


keylime_tenant add crash with TypeError: Object of type 'bytes' is not JSON serializable

Is your an issue a feature request? If so, please raise it as an enhancement
Environment

OS / version: Ubuntu 18.04
Processor architecture: VM
TPM Manufacturer: swtpm - stefan berger
Keylime version: latest as of today (git clone)

Description
Trying to add a compute to KL using keylime_tenant.
keylime_tenant -c add -u 817B07F2-24F0-4EB5-B686-F15D0B4DF2A4 -t xxx -v yyy --cert /var/lib/keylime/ca
Relevant logs
2021-04-09 14:38:29.787 - keylime.tpm - INFO - TPM2-TOOLS Version: 5.0
2021-04-09 14:38:29.789 - keylime.tenant - INFO - Setting up client TLS in /var/lib/keylime/cv_ca
2021-04-09 14:38:29.790 - keylime.tenant - INFO - TPM PCR Mask from policy is 0x408000
2021-04-09 14:38:29.790 - keylime.tenant - INFO - TPM PCR Mask from policy is 0x808000
2021-04-09 14:38:29.791 - keylime.tenant - WARNING - CA directory does not exist. Creating...
Please enter the password to decrypt your keystore:
2021-04-09 14:38:33.499 - keylime.ca_impl_openssl - WARNING - CRL creation with openssl is not supported
2021-04-09 14:38:33.500 - keylime.ca-util - INFO - CA certificate created successfully in /var/lib/keylime/ca
2021-04-09 14:38:33.784 - keylime.ca-util - INFO - Created certificate for name 817B07F2-24F0-4EB5-B686-F15D0B4DF2A4 successfully in /var/lib/keylime/ca
2021-04-09 14:38:33.834 - keylime.ca-util - INFO - Creating cert package for 817B07F2-24F0-4EB5-B686-F15D0B4DF2A4 in 817B07F2-24F0-4EB5-B686-F15D0B4DF2A4-pkg.zip
2021-04-09 14:38:33.976 - keylime.ca-util - INFO - Created certificate for name RevocationNotifier successfully in /var/lib/keylime/ca
2021-04-09 14:38:34.027 - keylime.ca-util - INFO - Creating cert package for RevocationNotifier in RevocationNotifier-pkg.zip
2021-04-09 14:38:34.029 - keylime.tenant - DEBUG - b64_v: Bmswx+oDZNshkJZNbh82rVnX5kIV7Kl96B/aREAX+qg=
Traceback (most recent call last):
File "/usr/bin/keylime_tenant", line 11, in
load_entry_point('keylime==0.0.0', 'console_scripts', 'keylime_tenant')()
File "/usr/lib/python3/dist-packages/keylime/cmd/tenant.py", line 15, in main
tenant.main()
File "/usr/lib/python3/dist-packages/keylime/tenant.py", line 1083, in main
mytenant.do_cv()
File "/usr/lib/python3/dist-packages/keylime/tenant.py", line 554, in do_cv
json_message = json.dumps(data)
File "/usr/lib/python3.6/json/init.py", line 231, in dumps
return _default_encoder.encode(obj)
File "/usr/lib/python3.6/json/encoder.py", line 199, in encode
chunks = self.iterencode(o, _one_shot=True)
File "/usr/lib/python3.6/json/encoder.py", line 257, in iterencode
return _iterencode(o, 0)
File "/usr/lib/python3.6/json/encoder.py", line 180, in default
o.class.name)
TypeError: Object of type 'bytes' is not JSON serializable
Attach any relevant log files that can help to debug your issue.

I think this is the same issue that @stefanberger mentioned in slack and might be related to this change https://github.com/keylime/keylime/commit/23c2ae3f9aa1ab22f9a2fec02fc5e888475c38b3 from @kaifeng

I will take a look on this issue, probably something introduced during rebase. The alllowlist change shouldn't introduce bytes data.

I didn't find evidence on how 23c2ae3 leads to this issue, my suspicion is something has changed in the process_allowlists which included bytes, @jronnblom could you print the data to the console so we know which part of data is violating the serialization?

@kaifeng @jronnblom @stefanberger I hit this issue over the weekend.
I do not understand the history of changes that led to this bug yet, but it's fairly easy to reproduce with python 3.8.7 over Fedora 32.
=========== bug description ==============

A private key is read from a zip file by tenant.py during "init_add" (tenant.py line 366)
The revocation key is assigned from privkey in line 396.
The revocation key is thus "bytes" not "string", as it was read directly from a file.
do_cv sends information from the deployer to the agent, (tenant.py line 554)
JSON.dumps does not handle the revocation key, because -- as mentioned before -- it is of type bytes
One can fix this bug trivially by forcing the revocation key to be a string (revocation_key = str....

A similar problem exists around line 421 with auth_tag --- Stefan's crypto.do_hmac returns a hex digest which is apparently of type bytes and JSON can similarly not handle it.
====== proposed simplistic fix ========
I propose to open a PR (20 minutes?) in which I force both offending objects to type string. There should really not be a problem with making either of the two objects into strings, so I don't see a big drawback except for the fact that I don't understand how this change came to be.

@jronnblom Can you try again with the latest master and see whether the problem has been fixed?

@jronnblom Can you try again with the latest master and see whether the problem has been fixed?

I'll try and then report the result back here.

I think that this one can be closed


Adapting to new models

Hi I would like to adapt this to the Phi Model.
Is there any good documentation on guide to help with this?

Hi 👋
Wanted to follow up on this some more I'm currently attempting to finteune TinyLlama/TinyLlama-1.1B-intermediate-step-1195k-token-2.5T Using LongLora I'm currently getting the following error.
Per their Github TinyLlama architecture should be the same as llama, but I'm seeing errors within llama_attn_replace.py.
Error:
 File "/workspace/LongLoRA/llama_attn_replace.py", line 96, in forward_flashattn
    key_padding_mask = attention_mask.repeat(2, 1)

RuntimeError: Number of dimensions of repeat dims can not be smaller than number of dimensions of tensor

Context

    # We have disabled _prepare_decoder_attention_mask in LlamaModel
    # the attention_mask should be the same as the key_padding_mask

    key_padding_mask = attention_mask.repeat(2, 1)
    nheads = qkv.shape[-2]

Log

 0%|                                                                                | 0/1000 [00:00<?, ?it/s]
You're using a LlamaTokenizerFast tokenizer. Please note that with a fast tokenizer, using the `__call__` method is faster than using a method to encode the text followed by a call to the `pad` method to get a padded encoding.
Traceback (most recent call last):
  File "/workspace/LongLoRA/fine-tune.py", line 220, in <module>
    train()
  File "/workspace/LongLoRA/fine-tune.py", line 214, in train
    trainer.train()
  File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 1537, in train
    return inner_training_loop(
  File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 1854, in _inner_training_loop
    tr_loss_step = self.training_step(model, inputs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 2735, in training_step
    loss = self.compute_loss(model, inputs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 2758, in compute_loss
    outputs = model(**inputs)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/deepspeed/utils/nvtx.py", line 15, in wrapped_fn
    ret_val = func(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/deepspeed/runtime/engine.py", line 1833, in forward
    loss = self.module(*inputs, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/models/llama/modeling_llama.py", line 1181, in forward
    outputs = self.model(
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/models/llama/modeling_llama.py", line 1058, in forward
    layer_outputs = self._gradient_checkpointing_func(
  File "/usr/local/lib/python3.10/dist-packages/torch/utils/checkpoint.py", line 249, in checkpoint
    return CheckpointFunction.apply(function, preserve, *args)
  File "/usr/local/lib/python3.10/dist-packages/torch/autograd/function.py", line 506, in apply
    return super().apply(*args, **kwargs)  # type: ignore[misc]
  File "/usr/local/lib/python3.10/dist-packages/torch/utils/checkpoint.py", line 107, in forward
    outputs = run_function(*args)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformers/models/llama/modeling_llama.py", line 796, in forward
    hidden_states, self_attn_weights, present_key_value = self.self_attn(
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/workspace/LongLoRA/llama_attn_replace.py", line 96, in forward_flashattn
    key_padding_mask = attention_mask.repeat(2, 1)
RuntimeError: Number of dimensions of repeat dims can not be smaller than number of dimensions of tensor
WARNING:torch.distributed.elastic.multiprocessing.api:Sending process 16124 closing signal SIGTERM
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 1 (pid: 16125) of binary: /usr/bin/python
Traceback (most recent call last):
  File "/usr/local/bin/accelerate", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/accelerate_cli.py", line 47, in main
    args.func(args)
  File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/launch.py", line 1002, in launch_command
    deepspeed_launcher(args)
  File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/launch.py", line 718, in deepspeed_launcher
    distrib_run.run(args)
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/run.py", line 785, in run
    elastic_launch(
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 134, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/usr/local/lib/python3.10/dist-packages/torch/distributed/launcher/api.py", line 250, in launch_agent
    raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
============================================================
fine-tune.py FAILED
------------------------------------------------------------
Failures:
  <NO_OTHER_FAILURES>
------------------------------------------------------------
Root Cause (first observed failure):
[0]:
  time      : 2023-12-24_20:58:39
  host      : 372ceeb793ae
  rank      : 1 (local_rank: 1)
  exitcode  : 1 (pid: 16125)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
============================================================

Hey I happen to see the same problem. Turns out that it is caused by the version of transformers library. I downgrade it to transformers=4.34.0, and everything works fine now.


feat(sdk): make offset and count parameters optional and None by default

This makes offset and count parameters optional and None by default. It will affect existing code that does not set count value and relies on the default value, which has been changed from -1 to None. Now, in case of a very large sample, YouTrack API will return 1000 entries by default. But if you want to fetch all entries, set count=-1 or paginate results until you get an empty page. I didn't find any confirmation in the docs that -1 is a valid value, so it's better to use pagination.

Ok, then lets close this PR.


Add a HOA format input that accepts (the negation) of a language

As discussed with @alaarman and with the help of @etienne-renault and @adl this PR adds a --hoa flag to ltsmin.
It's been tested and debugged with the MCC benchmark so it seems clean semantically
This is with the flags I use, which do include POR
I spent more testing on --buchi-type=spotbuchi than =tgba but both work with state based AP at least.
The PR includes Alfons's patch for "weak" detection so it closes https://github.com/utwente-fmt/ltsmin/issues/201
I can add tests but mine are all .c/.so inputs to pins2lts-mc there is no model for a test setup like that (at least in what I saw) and I'm unsure how many you'd like. But I have plenty of test cases maybe I send one set of files + formula + verdict and if you set it up as an example test Alfons so I can see the files I need to add/edit, and I'll generate as many as you like.
Some hacking of strings used as keys which did not have homogeneous whitespace was also added in the AP registration phase, I hope we didn't break anything for other input languages/AP.
Please don't hesitate to comment or ask for changes we tried to not too intrusive but registering AP was a bit of a pain, we end up parsing a textual formula that is the AND of all AP just to get them registered.

as an example set of test files/formulas, we have those I attached to the Issue #201


[mashREPL] ifconfig does not report IPv6 addresses

Bug description
When using the ifconfig command, only ipv4 addresses are shown on the en0 interface
Screenshots

Steps to reproduce

Run the ifconfig command in mashREPL
See that your public IPv6 address is not shown.

Good  catch 👍
I will upgrade the underlying library