Display download failure modal

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/49022
PROPOSAL: https://github.com/Expensify/App/issues/49022#issuecomment-2345259451
Tests

Go to Workspace settings > Categories.
Delete all the categories.
Tap 3-dot menu.
Verify that Download CSV button doesn't appear
Hard code to display Download CSV button
Click download
The download failure modal appear

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

Go to Workspace settings > Categories.
Delete all the categories.
Tap 3-dot menu.
Verify that Download CSV button doesn't appear

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/58dda873-1c68-49a7-aadd-9086772cc333

Android: mWeb Chrome

https://github.com/user-attachments/assets/55ddaa1a-10c8-4a68-8053-41a15e5ebdf3

iOS: Native

https://github.com/user-attachments/assets/a673efcc-fbcc-4589-9fb5-5c4d17536a98

iOS: mWeb Safari

https://github.com/user-attachments/assets/81b7c177-3bb9-4dbe-aaa3-ce8716be61dc

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/d1537fa0-eeaf-4dd7-9ccb-10b5e126ab1c

MacOS: Desktop

https://github.com/user-attachments/assets/5b7aeac4-4cce-4dbf-952e-2d3b9a4f9aa6

@brunovjk Please review this PR

Sure :D Give me a moment

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/19fbebc8-7fa9-4cad-b845-f9a519926c0e
https://github.com/user-attachments/assets/f595eada-cc1d-4ad2-a358-69b7424f9e42

Android: mWeb Chrome

https://github.com/user-attachments/assets/38d77f1d-9a32-4cdb-8900-c3c2685f9427
https://github.com/user-attachments/assets/05ea1f6e-029b-46e4-a6d8-eb5fe664b401

iOS: Native

https://github.com/user-attachments/assets/0edcdc15-db99-466a-90a3-41d618d34bf6
https://github.com/user-attachments/assets/2d868a1e-da89-4094-aeea-cdcbc7ae565c

iOS: mWeb Safari

https://github.com/user-attachments/assets/12049afc-0a81-4c39-9675-36eca3835762
https://github.com/user-attachments/assets/9535d5f3-7fd0-47e4-b1ab-40891dc34d97

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/15734658-bf1e-4cca-9027-a753a81b5d05

MacOS: Desktop

https://github.com/user-attachments/assets/7ec3da7d-15e0-4c72-8ce9-b685db894b74
https://github.com/user-attachments/assets/1b70d70f-ca9d-487f-9bdf-c775b04eb4fe

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/rlinoz in version: 9.0.39-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[Feature request] Import CLI Account via address and private key

Currently, there is a lack of a command to import accounts, which needs to be added under the rooch account command.

Now, All CLI account is generated by the mnemonic phrase. We need to support imported accounts in CLI, like the MetaMask.

Related: #2022
🙋♀


Fix minor typo in metric label

What was changed
A metric label in the PromQL in the history dashboard.
Why?
Because of a minor typo.
Checklist

Closes N/A

How was this tested: Re-import of history the dashboard

Any docs updates needed? N/A

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for the PR!


feat(querying): Add declarative querying

@jeffbcross Ready for your review!
Examples:
With Scalar values
class MyComponent {
  constructor(af: AngularFire) {
    const subject = new Subject();
    const peopleStream = af.database.list('/people', {
      query: {
        orderByChild: 'height',
        startAt: 60
      }
    });
    peopleStream.subscribe(people => console.log(people);
  }
}

With Observables 😱 😱 😱
class MyComponent {
  constructor(af: AngularFire) {
    const subject = new Subject();
    const peopleStream = af.database.list('/people', {
      query: {
        orderByChild: 'height',
        startAt: subject
      }
    });
    peopleStream.subscribe(people => console.log(people);
    subject.next(60); // re-run the query!
  }
}

A couple of comments to address, and needs some docs.

Will add docs in a separate MEGA-DOC PR.


tests: kernel: fail to download firmware to ADSP on Up Xtreme

Describe the bug
Fail to download binary image of test cases to ADSP on Up Xtreme, and the test cases failed with "timeout"

Platform: ADSP on Up Xtreme

To Reproduce
Steps to reproduce the behavior:

cavsload.sh:

set -e

FLASHER=$ZEPHYR_BASE/boards/xtensa/intel_adsp_cavs15/tools/cavs-fw-v25.py
LOGGER=$ZEPHYR_BASE/boards/xtensa/intel_adsp_cavs15/tools/adsplog.py
if [ "$1" = "" ]; then
        ssh root@localhost pkill -9 -f adsplog.py || true
        sleep 1
        ssh root@localhost "python3 -u $LOGGER --no-history || true"
        exit 0
fi

BLDDIR=$1

RIMAGE=$HOME/twister_tools/rimage
KEY=$HOME/twister_tools/keys/otc_private_key_3k.pem
IMAGE=$BLDDIR/zephyr/zephyr.ri
ELF=$BLDDIR/zephyr/main.mod
BOOT=$BLDDIR/zephyr/boot.mod

$RIMAGE -v -k $KEY -o $IMAGE -c $HOME/twister_tools/config/tgl.toml \
        -i 3 -e $BOOT $ELF > $BLDDIR/rimage.log

while [ ! -e $IMAGE ]; do
    sleep 0.1
done

ssh root@localhost pkill -9 -f cavs-fw-v25.py || true
sleep 1
ssh root@localhost "$FLASHER $IMAGE || true"

twister -p intel_adsp_cavs25 --device-testing --device-serial-pty=/path/to/cavsload.sh --west-flash=/path/to/cavsload.sh -T tests/

in device.log:
INFO:cavs-fw:cAVS firmware loader v25
IFO:cavs-fw:Mapped PCI bar 0 of length 16384 bytes.
INFO:cavs-fw:Selected output stream 7 (GCAP = 0x1009701)
INFO:cavs-fw:Mapped PCI bar 4 of length 1048576 bytes.
INFO:cavs-fw:Detected cAVS 1.8+ hardware
INFO:cavs-fw:Reset HDA device
INFO:cavs-fw:Enable HDA global processing
INFO:cavs-fw:Powering down, ADSPCS = 0x1010e0e
INFO:cavs-fw:Powered down, ADSPCS = 0xf0f
INFO:cavs-fw:Configuring DMA output stream 7...
INFO:cavs-fw:Obtained the physical address of the mapped huge page.
INFO:cavs-fw:Mapped 2M huge page at 0x15d200000 to contain 106496 bytes of firmware
INFO:cavs-fw:Filled the buffer descriptor list (BDL) for DMA.
INFO:cavs-fw:Powering up DSP core #0, ADSPCS = 0xf0f
INFO:cavs-fw:Powered up 1 cores, ADSPCS = 0x1010f0f
INFO:cavs-fw:Sending PURGW_FW IPC, HIPCR = 0x81004000
INFO:cavs-fw:Starting 1 cores, ADSPCS = 0x1010f0f
INFO:cavs-fw:Started 1 cores, ADSPCS = 0x1010e0e
INFO:cavs-fw:Waiting for ROM init, FW_STATUS = 0x5000001
INFO:cavs-fw:ROM ready, FW_STATUS = 0x5000001
INFO:cavs-fw:Awaiting IPC acknowledgment, HIPCA 0x80000000
INFO:cavs-fw:Awaiting ROM init... FW_STATUS = 0x5000001
INFO:cavs-fw:Starting DMA, FW_STATUS = 0x5000001
INFO:cavs-fw:Waiting for load, FW_STATUS = 0x5000001
WARNING:cavs-fw:Load failed?  FW_STATUS = 0x80000006
INFO:cavs-fw:ADSPCS = 0x1010e0e
INFO:cavs-fw:cAVS v25 firmware load complete, 1 cores active

Failed cases:
tests/kernel/context/kernel.common
tests/kernel/msgq/msgq_api/kernel.message_queue
tests/kernel/fatal/message_capture/kernel.logging.message_capture
tests/kernel/lifo/lifo_api/kernel.lifo
tests/kernel/fifo/fifo_usage/kernel.fifo.usage
tests/kernel/workq/work/kernel.work.api
tests/kernel/sched/deadline/kernel.scheduler.deadline
tests/kernel/sched/schedule_api/kernel.scheduler.multiq
tests/kernel/semaphore/semaphore/kernel.semaphore
tests/kernel/timer/timer_error_case/kernel.timer.error_case

Environment (please complete the following information):

OS: (e.g. Linux)
Toolchain (e.g Zephyr SDK, ...)
Commit SHA or Version used: 44462723f5

That's a load failure, which usually implies a glitch in the DSP (it's possible for the DSP to get into a state from which it can't recover, at least with our loader.  This is a known thing).  Are you absolutely sure that this is repeating after a power cycle of the device, and that it affects only those specific Zephyr tests and not just "every test you try after it hangs?".
It seems very unlikely that this is a Zephyr bug to be fixed, basically.  Can you retest?

Every time run twister, about a dozen cases failed because of "WARNING:cavs-fw:Load failed? FW_STATUS = 0x80000006", but they are not always the same cases.

Again, that's known behavior.  One test hangs the DSP and causes spurious failures on other tests.
The test rig needs to be robust enough to be able to retry tests after a reboot to figure out.  If there are tests that reliably hang the DSP (one was discovered yesterday) we need to know what they are.   You need to help us isolate failing test cases.

Here are some more specific suggestions:

Always inspect the logs after a failure like this to find the first case that failed.  Add that to a list of suspected "DSP hang tests"
Validate the test with several manual runs to make sure you can see it fail using west/cavs-fw*.py/adsplog.py.
Submit a github bug for that one test.  Mention that it doesn't just fail but hangs the device.
Filter that test from your rig when running twister in the future

"One test hangs the DSP and causes spurious failures on other tests" has been reported in #41877, it is closed. Another case with the same symptom is reported to #41989.
Failed test cases listed here do not cause following cases failed or cause DSP hang.

If download firmware failed, re-download it will most likely success. refine cavsload.sh like:
set -e

if [ "$1" != "" ]; then
        echo $1 > $ZEPHYR_BASE/inform_logger
        exit 0
fi

while [ ! -e $ZEPHYR_BASE/inform_logger ]; do
        sleep 1
done
BLDDIR=`(cat $ZEPHYR_BASE/inform_logger)`
rm $ZEPHYR_BASE/inform_logger

RIMAGE=$HOME/twister_tools/rimage
KEY=$HOME/twister_tools/keys/otc_private_key_3k.pem
IMAGE=$BLDDIR/zephyr/zephyr.ri
ELF=$BLDDIR/zephyr/main.mod
BOOT=$BLDDIR/zephyr/boot.mod

$RIMAGE -v -k $KEY -o $IMAGE -c $HOME/twister_tools/config/tgl.toml \
        -i 3 -e $BOOT $ELF > $BLDDIR/rimage.log

while [ ! -e $IMAGE ]; do
    sleep 0.1
done

FLASHER=$ZEPHYR_BASE/boards/xtensa/intel_adsp_cavs15/tools/cavs-fw-v25.py
LOGGER=$ZEPHYR_BASE/boards/xtensa/intel_adsp_cavs15/tools/adsplog.py
ssh root@localhost pkill -9 -f cavs-fw-v25.py || true
ssh root@localhost pkill -9 -f adsplog.py || true
sleep 1

**ssh root@localhost "python3 $FLASHER $IMAGE || python3 $FLASHER $IMAGE || true"**
ssh root@localhost "python3 -u $LOGGER || true"

in cavs-fw-v25.py, add
 sd.CTL = 1
time.sleep(1)
exit(1)

under line
log.warning(f"Load failed?  FW_STATUS = 0x{dsp.SRAM_FW_STATUS:x}")"

these modification make the pass rate rise to 90%

Going to close this.  We have multiple people reporting 100% success in test runs (with the exception of one case that had to be excluded, see #42061).

From our side, we can continue see this "fw downloading failure" issue.
The "retry FW download" workaround is still needed. Can we keep this bug re-open?
We're using UP Extreme board as both Host Machine (on X86 CPU) and Tested Machine (Zephyr on Xtensa SOC).

see above

Verified on CAVS25, CAVS18 DSP, this issue is fixed by #41862 , and have also verified no impact on CAVS15.


ambient new doesn't use the correct dependency for nested folders in guest/rust/examples

Pretty simple issue.
https://github.com/AmbientRun/Ambient/blob/727c2009f922bd5bbf275056a6456e7864cdabea/app/src/cli/new_project.rs#L32-L53
This logic special-cases the reference to ambient_api so that if a project is created in guest/rust/examples, the local API is used instead of crates.io. Unfortunately, this doesn't work for guest/rust/examples/basic.
I would suggest adjusting the logic to find where guest/rust/examples is present in the segments (if it is), and then using that to construct the number of ../ in the GuestRustRelative case.

I've implemented a solution, and I'll make a pull request when I get home.


Notion template link is not working

Hi guys,
Can you please update the Notion template link?
Thank you!

Up，please update template.

I just found the new template link from a post on the demo site. Hope this helps you.
New template link


Update requirements.txt

Added needed packages to run the gradio app as well as the provided code blocks

Fixed in #20 . Thank you still for your contribution. :)


operator trustify-operator (0.1.0-alpha.8)

Automated changes by create-pull-request GitHub action

/merge possible

/merge possible


Accessing data

Hi !
First, thanks for your librairy, it can help many developers ^^.
But, do we have a simple way to access saved data on other screen ?
Thanks in advance ^^

My mistake, i found how. xp


Packages with vulnerabilities

This package lists System.Drawing.Common >= 4.6.1 as dependency which has a vulnerability.
Bump version?

Hi @jmcmeen, will do - thanks!

@jmcmeen actually I may walk that statement back -- check out the preview version of Spectrogram. I don't think it has that dependency at all. The upcoming version will use SkiaSharp instead of System.Drawing, so "problem solved" once I publish a version without the prerelease tag 👍
Let me know if you try the preview version and a hit a similar issue though.
Thanks again for reporting this!


Default assignment of an empty array to known array type should keep type

TypeScript Version:  3.5.2

Search Terms: array type default
Code
/**
 * @param {Object} [opts]
 * @param {string[]} [opts.arr]
 */
function test(opts = {}) {
  const { arr } = opts
}

Expected behavior:

Actual behavior:

Sure I can cast { arr = /** @type {string[]} */ ([]) }but I shouldn't have to really.
Playground Link:
Related Issues:

Equivalent TypeScript code works, so the problem is likely something to do with JS Doc handling
function fn(obj: { arr?: string[] } = {}) {
    const { arr = [] } = obj;
    // arr: string[]
}

Works now


Podman - Detect when net.ipv4.ip_forward=0 and warn user

If net.ipv4.ip_forward is not enabled then the Podman/libpod containers will not be able to reach the internet with the packets being dropped.
In my case (clean Ubuntu environment), it was due to net.ipv4.ip_forward not being enabled.
My solution was to enable forwarding which allowed the containers to reach the internet.
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sudo sysctl -p

I think Podman should warn users when ip_forward hasn't been set.

This is easy enough to detect (it's exposed as /proc/sys/net/ipv4/ip_forward). I wonder if we shouldn't upstream this to the OCICNI package or CNI plugins themselves, as this is something that would also affect Kubernetes.

Lets get a quick fix into podman, and then work on getting it into OCICNI.  That way we can help our users who hit this issue.

@BenHall  you must use a cni configuration file that has isGateway: true in it.  that will automatically flip the forwarding bit for you.  We ship a default cni configuration file in podman.

@baude Is that currently the default?

yes, in the podman default configuration -> https://github.com/projectatomic/libpod/blob/master/cni/87-podman-bridge.conflist#L8

@baude Just checked the environment. The file was in the correct location.

@BenHall i tested on xenail ... what are you on?

@baude Ubuntu 16.04.2 LTS. I'll double check the environment without the IP forward flag

Are we just saying that this works on Xenail?


Add :checkSubprojectsInfo to sanity task to ensure up-to-date

:checkSubprojectsInfo will now be run as a part of the sanity check task. This will verify that the .teamcity/subprojects.json file is always kept up-to-date for our CI builds.
This came out of this discussion with @lptr:
https://github.com/gradle/gradle/pull/15240#discussion_r528576053

@bot-gradle help

Currently I support the following commands:

@bot-gradle test {BuildStage} to trigger a build

e.g. @bot-gradle test SanityCheck plz
SanityCheck/CompileAll/QuickFeedbackLinux/QuickFeedback/ReadyForMerge/ReadyForNightly/ReadyForRelease are supported
test this means test ReadyForMerge
SanityCheck can be abbreviated as SC, ReadyForMerge as RFM, etc.

@bot-gradle help to display this message
@bot-gradle clean to clear the conversation history

@bot-gradle test SanityCheck plz

OK, I've already triggered SanityCheck build for you.

@bot-gradle SanityCheck plz

Sorry I don't understand what you said, please type @bot-gradle help to get help.

Currently I support the following commands:

@bot-gradle test {BuildStage} to trigger a build

e.g. @bot-gradle test SanityCheck plz
SanityCheck/CompileAll/QuickFeedbackLinux/QuickFeedback/ReadyForMerge/ReadyForNightly/ReadyForRelease are supported
test this means test ReadyForMerge
SanityCheck can be abbreviated as SC, ReadyForMerge as RFM, etc.

@bot-gradle help to display this message
@bot-gradle clean to clear the conversation history

@bot-gradle test SanityCheck plz

OK, I've already triggered SanityCheck build for you.

Thanks! This makes it much clearer.


THRIFT-3580 THeader for Haskell (Resubmitting for nsuke)

This closes #820

Seems to be broken when you run the csharp client against it, so I will add that to the exclusions and commit it.


Compiling a Bicep template with a variable using listAccountSas returns incomplete ARM template

Bicep version
Bicep CLI version 0.6.18 (46dd19e8eb)
Describe the bug
I have a Bicep file in which I specify a couple variables, including an URL to a storage account - that I must generate a SAS key for. The implementation itself is failry easy and it's deployment works.
However, if I want to compile the template to read values from it, the variable that uses the SAS key is not compiled together with the rest. That is very unfortunate, as I do need to read data out of this file to use for other purposes.
There is no error message whatsoever, but the entire variable is just missing.
To Reproduce
Steps to reproduce the behavior:
Execute
(az bicep build --file '<pathToSnippet>.bicep' --stdout | ConvertFrom-Json -AsHashtable).variables

for the following Bicep snippet:
targetScope = 'subscription'

@description('Generated. Do not provide a value! This date value is used to generate a registration token.')
param baseTime string = utcNow('u')

// Misc
resource existingStorage 'Microsoft.Storage/storageAccounts@2021-09-01' existing = {
    name: 'alsehrcustomsa'
    scope: resourceGroup(subscription().subscriptionId, rgParam.name)
}
var sasConfig = {
    signedResourceTypes: 'o'
    signedPermission: 'r'
    signedServices: 'b'
    signedExpiry: dateTimeAdd(baseTime, 'PT1H')
    signedProtocol: 'https'
    // keyToSign: 'key2'
}
var sasKey = existingStorage.listAccountSas(existingStorage.apiVersion, sasConfig).accountSasToken

// Resource Group
var rgParam = {
    name: 'agents-vmss-rg'
}

// Image Template
var itParam = {
    name: 'The cake is a lie'
    scriptUri: 'https://alsehrcustomsa.blob.${environment().suffixes.storage}/aibscripts/LinuxInstallPowerShell.sh?${sasKey}'
}

which returns only
WARNING: C:\dev\ip\DevOps-Self-Hosted\MrMCakeFork\DevOps-Self-Hosted\constructs\azureImageBuilder\parameters\del.bicep(27,5) : Warning no-unused-vars: Variable "itParam" is declared but never used. [https://aka.ms/bicep/linter/no-unused-vars]

Name                           Value
----                           -----
rgParam                        {name}
sasConfig                      {signedPermission, signedExpiry, signedServices, signedResourceTypes…}

PS C:\dev\ip\DevOps-Self-Hosted\MrMCakeFork\DevOps-Self-Hosted>

So the 'itParam' variable is missing completly - though I'd need to gain access to the 'itParam.name' variable.
Expected behavior
I'd expect that the template returns at least
Name                           Value
----                           -----
rgParam                        {name}
itParam                         {name}
sasConfig                      {signedPermission, signedExpiry, signedServices, signedResourceTypes…}

if, for some reason it cannot render the ARM template properly.
In that sense it's quite interesting that the template deployment still works. The above snippet is just a subset of the entire solution, found here which works like a charm. It's just a shame that I need to access the 'itParam' variable for other actions my pipeline.

However, if I want to compile the template to read values from it

What if we provided a way to read values from the bicep file directly, instead of having to do it from the compiled JSON? I don't know exactly why this is happening, but I know we will optimize the JSON if there is a good reason to do so, so I am not sure it's a safe practice to rely on a 1:1 relationship.

However, if I want to compile the template to read values from it

What if we provided a way to read values from the bicep file directly, instead of having to do it from the compiled JSON? I don't know exactly why this is happening, but I know we will optimize the JSON if there is a good reason to do so, so I am not sure it's a safe practice to rely on a 1:1 relationship.

That would be great too. I see it's a quite common case that folks convert Bicep to JSON just to process it better - if there is a way to work with the file natively, even better

I think this is related to #529


[CSL-2129] Add HTTP-based block downloading

Also,

neongreen wants to merge 1 commit into serokell/csl2129-http-based-block-sync from neongreen/csl-2129-http-block-downloading

I suppose we'll download blocks from epoch of b, which is not correct. Maybe you want to do something smarter here.

This is true. I don't know what smarter thing I could do, though. With epochs ranging between 5–15 MB it probably doesn't matter much; and when epochs grow bigger, the right thing to do would be simply creating a server that can serve a suffix of an epoch on demand.


Scaling problem

Sometimes widgets are displayed at incorrect scale.
Steps to reproduce:

Open SAMPLES in DSW
Add 2 "widget covers"
Save and refresh
Open dashboard with widget cover
Go back to SAMPLES
Repeat 4-5.

Screenshots:

Fixed in commit 5ea7bc4023ec058edf28bfad89a29c79ce6d323d


input_format_null_as_default flag not available as a valid connection query param

Describe your feedback
I have a use case where I would like to set this property input_format_null_as_default to false; however, as it is not a valid query param option, I would need to execute it in every request.

I think so. However, typically, frameworks abstract the instantiation of the client/connection factory. Just a suggestion, but I believe this should be supported via connection string as a queryparam

Just a suggestion, but I believe this should be supported via connection string as a queryparam

@chernser, that's a valid point. Other language clients support this method.
python client
nodejs client
@chernser  Once it's implemented, could you also update the language client spec with this requirement?

@mshustov will do and will update the language spec.


Work out how to use HMock with servant-client

servant-client generates actions that run directly in a ClientM monad.  There should be some kind of story about the right way to integrate servant-client with HMock.
One idea is to write a new library, such as servant-classy-client, that uses TH to generate an MTL-style class from a servant API type.
Another idea is to generate a server implementation that delegates everything to mockMethod using withMockT, and then allow the tests to serialize everything but point them at an in-process HTTP server.  So you'd expect the server methods, not the client methods.  This requires generalizing Mockable a but so that it doesn't require an MTL-style class, but I want to do that anyway.

See #4


feat: retrieve entrypoint and command of parameterized images

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

What this PR does / why we need it:
This PR enables the retrieval of the entrypoint and command for images defined in the template parameters.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: francesco-racciatti
Once this PR has been reviewed and has the lgtm label, please assign leodido for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

2f835e8 feat: retrieve entrypoint and command of parameterized images

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Building on armhf fails

OS:
Ubuntu 16.04 armhf (armbian) on orange pi zero
Issue Descriptions:

root@orangepizero:~/Google-Play-Music-Desktop-Player-UNOFFICIAL-# npm run build

<EMAIL_ADDRESS>build /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-
gulp build

[05:49:14] Requiring external module babel-register
[05:49:32] Using gulpfile ~/Google-Play-Music-Desktop-Player-UNOFFICIAL-/gulpfile.babel.js
[05:49:32] Starting 'clean-material'...
[05:49:32] Starting 'clean-utility'...
[05:49:32] Starting 'clean-internal'...
[05:49:32] Starting 'clean-images'...
[05:49:32] Starting 'clean-less'...
[05:49:32] Starting 'clean-fonts'...
[05:49:32] Starting 'clean-html'...
[05:49:32] Starting 'clean-locales'...
[05:49:32] Finished 'clean-material' after 337 ms
[05:49:32] Starting 'materialize-js'...
[05:49:32] Finished 'clean-utility' after 260 ms
[05:49:32] Starting 'utility-js'...
[05:49:32] Finished 'clean-internal' after 321 ms
[05:49:32] Starting 'transpile'...
[05:49:32] Finished 'clean-images' after 331 ms
[05:49:32] Starting 'copy-static-images'...
[05:49:32] Finished 'clean-less' after 342 ms
[05:49:32] Starting 'less'...
[05:49:32] Finished 'clean-fonts' after 369 ms
[05:49:32] Starting 'fonts'...
[05:49:32] Finished 'clean-html' after 419 ms
[05:49:32] Starting 'html'...
[05:49:32] Finished 'clean-locales' after 428 ms
[05:49:32] Starting 'locales'...
[05:49:36] Finished 'materialize-js' after 3.89 s
[05:49:38] Finished 'utility-js' after 5.88 s
[05:49:39] Finished 'html' after 6.49 s
[05:49:50] Finished 'less' after 18 s
[05:49:51] Finished 'locales' after 18 s
[05:49:51] Finished 'copy-static-images' after 19 s
[05:49:51] Starting 'images'...
[05:49:57] Finished 'images' after 5.92 s
[05:50:02] Finished 'fonts' after 30 s
[05:50:44] Finished 'transpile' after 1.18 min
[05:50:44] Starting 'build'...
[05:50:44] Finished 'build' after 492 μs
root@orangepizero:~/Google-Play-Music-Desktop-Player-UNOFFICIAL-# npm start

<EMAIL_ADDRESS>prestart /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-
pre-flight && node vendor/mac_patch_dev.js

Starting pre-flight checks
Processing production dependencies
Processing development dependencies
Processing optional dependencies
Dependencies are all up to date, looking good!
Monkey patching your Info.plist

<EMAIL_ADDRESS>start /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-
electron . --dev

fs.js:557
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: ENOENT: no such file or directory, open '/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron/path.txt'
at Object.fs.openSync (fs.js:557:18)
at Object.fs.readFileSync (fs.js:467:33)
at Object. (/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron/index.js:4:42)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
npm ERR! Linux 3.4.113-sun8i
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! node v7.3.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>start: electron . --dev
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start script 'electron . --dev'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the google-play-music-desktop-player package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     electron . --dev
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs google-play-music-desktop-player
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls google-play-music-desktop-player
npm ERR! There is likely additional logging output above.
npm ERR!
Rebuilding native modules for electron
Couldn't find electron-prebuilt and no --node-module-version parameter set, always rebuilding

<EMAIL_ADDRESS>postinstall /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron
node install.js

<EMAIL_ADDRESS>install /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/mdns
node-gyp rebuild

make: Entering directory '/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/mdns/build'
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
dns_sd_bindings.target.mk:149: recipe for target 'Release/obj.target/dns_sd_bindings/src/dns_sd.o' failed
make: Leaving directory '/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/mdns/build'
g++: error: unrecognized command line option ‘-m32’
make: *** [Release/obj.target/dns_sd_bindings/src/dns_sd.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 3.4.113-sun8i
gyp ERR! command "/usr/bin/nodejs" "/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/mdns
gyp ERR! node -v v7.3.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm ERR! Linux 3.4.113-sun8i
npm ERR! argv "/usr/bin/nodejs" "/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/npm/bin/npm-cli.js" "rebuild" "--runtime=electron" "--target=1.4.12" "--arch=ia32" "--update-binary"
npm ERR! node v7.3.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the mdns package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs mdns
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls mdns
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/npm-debug.log
Process exited with code: 1
Error: Process exited with code: 1
at ChildProcess. (/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron-rebuild/lib/spawn.js:55:26)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:885:16)
at Socket. (internal/child_process.js:334:11)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:501:12)
Rebuild failed
npm ERR! Linux 3.4.113-sun8i
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "make:deb"
npm ERR! node v7.3.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>make:deb: gulp make:linux:deb
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>make:deb script 'gulp make:linux:deb'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the google-play-music-desktop-player package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     gulp make:linux:deb
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs google-play-music-desktop-player
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls google-play-music-desktop-player
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR!     /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/npm-debug.log
root@orangepizero:~/Google-Play-Music-Desktop-Player-UNOFFICIAL-# cat /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/npm-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'run', 'make:deb' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose run-script [ 'premake:deb', 'make:deb', 'postmake:deb' ]
5 info lifecycle google-play-music-desktop-player@4.0.5~premake:deb<EMAIL_ADDRESS>6 silly lifecycle google-play-music-desktop-player@4.0.5~premake:deb: no script for premake:deb, continuing
7 info lifecycle google-play-music-desktop-player@4.0.5~make:deb<EMAIL_ADDRESS>8 verbose lifecycle google-play-music-desktop-player@4.0.5~make:deb: unsafe-perm in lifecycle true
9 verbose lifecycle google-play-music-desktop-player@4.0.5~make:deb: PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/root/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
10 verbose lifecycle google-play-music-desktop-player@4.0.5~make:deb: CWD: /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-
11 silly lifecycle google-play-music-desktop-player@4.0.5~make:deb: Args: [ '-c', 'gulp make:linux:deb' ]
12 silly lifecycle google-play-music-desktop-player@4.0.5~make:deb: Returned: code: 1  signal: null
13 info lifecycle google-play-music-desktop-player@4.0.5~make:deb: Failed to exec make:deb script
14 verbose stack Error<EMAIL_ADDRESS>make:deb: gulp make:linux:deb
14 verbose stack Exit status 1
14 verbose stack     at EventEmitter. (/usr/lib/node_modules/npm/lib/utils/lifecycle.js:255:16)
14 verbose stack     at emitTwo (events.js:106:13)
14 verbose stack     at EventEmitter.emit (events.js:191:7)
14 verbose stack     at ChildProcess. (/usr/lib/node_modules/npm/lib/utils/spawn.js:40:14)
14 verbose stack     at emitTwo (events.js:106:13)
14 verbose stack     at ChildProcess.emit (events.js:191:7)
14 verbose stack     at maybeClose (internal/child_process.js:885:16)
14 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
15 verbose pkgid<EMAIL_ADDRESS>16 verbose cwd /root/Google-Play-Music-Desktop-Player-UNOFFICIAL-
17 error Linux 3.4.113-sun8i
18 error argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "make:deb"
19 error node v7.3.0
20 error npm  v3.10.10
21 error code ELIFECYCLE
22 error<EMAIL_ADDRESS>make:deb: gulp make:linux:deb
22 error Exit status 1
23 error Failed at the<EMAIL_ADDRESS>make:deb script 'gulp make:linux:deb'.
23 error Make sure you have the latest version of node.js and npm installed.
23 error If you do, this is most likely a problem with the google-play-music-desktop-player package,
23 error not with npm itself.
23 error Tell the author that this fails on your system:
23 error     gulp make:linux:deb
23 error You can get information on how to open an issue for this project with:
23 error     npm bugs google-play-music-desktop-player
23 error Or if that isn't available, you can get their info via:
23 error     npm owner ls google-play-music-desktop-player
23 error There is likely additional logging output above.
24 verbose exit [ 1, true ]
root@orangepizero:~/Google-Play-Music-Desktop-Player-UNOFFICIAL-#

Steps to Reproduce:
Follow these steps to attempt a build:
https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/blob/master/README.md

Looks like electron failed to download to your local clone.  Can you wipe your node_modules and try again.
For dev related things you'll probably get a faster resolution from chatting in Gitter so if you head in there I'll try help you get it going.


dependency to deprecated version of fsevents

Detailed description
There seems to be a deprecated dependency to the fsevents module. Although the server starts a lot of errors appear while installing.
Am I missing something?

warning Error running install script for optional dependency: "./node_modules/fsevents: Command failed.
Exit code: 1
Command: node install
Arguments:
Directory: ./node_modules/fsevents
Output:
node-pre-gyp info it worked if it ends with ok
node-pre-gyp info using<EMAIL_ADDRESS>node-pre-gyp info using<EMAIL_ADDRESS>| darwin | x64
node-pre-gyp WARN Using request for node-pre-gyp https download
node-pre-gyp info check checked for "./node_modules/fsevents/lib/binding/Release/node-v72-darwin-x64/fse.node" (not found)
node-pre-gyp http GET https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.7/fse-v1.2.7-node-v72-darwin-x64.tar.gz
node-pre-gyp http 404 https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.7/fse-v1.2.7-node-v72-darwin-x64.tar.gz
node-pre-gyp WARN Tried to download(404): https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.7/fse-v1.2.7-node-v72-darwin-x64.tar.gz
node-pre-gyp WARN Pre-built binaries not found for<EMAIL_ADDRESS>and<EMAIL_ADDRESS>(node-v72 ABI, unknown) (falling back to source compile with node-gyp)
node-pre-gyp http 404 status code downloading tarball https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.7/fse-v1.2.7-node-v72-darwin-x64.tar.gz
node-pre-gyp WARN Pre-built binaries not installable for<EMAIL_ADDRESS>and<EMAIL_ADDRESS>(node-v72 ABI, unknown) (falling back to source compile with node-gyp)
node-pre-gyp WARN Hit error Connection closed while downloading tarball file
[...]
Failed to execute './.nvm/versions/node/v12.16.3/bin/node ./node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=./node_modules/react-scripts/node_modules/fsevents/lib/binding/Release/node-v72-darwin-x64/fse.node --module_name=fse --module_path=./no✨

Steps to reproduce the issue
$ git clone [fork of this repository]
$ cd carbon-tutorial
$ git remote add upstream https://github.com/carbon-design-system/carbon-tutorial.git
$ git fetch upstream
$ git checkout -b react-step-1 upstream/react-step-1
$ yarn
Additional information

macOS v10.15.4
nvm 0.35.3
node v12.16.3
npm 6.14.4

happening here too


Add upsertGraphAndFetch method

As discussed #556, here the PR to add upsertGraphAndFetch()
I still need to add unit tests to this, but from my own testing this all works as expected!

Coverage decreased (-0.3%) to 95.493% when pulling 0ecb92cca0234cb369d2897519c4861cf7a349cc on lehni:feature/upsert-graph-and-fetch into e31b3ab8b941347249d77656927ceb31b6d8f45f on Vincit:master.

Looks good! Just add tests and documentation and that's it.

Where does documentation go?

here

Should have looked first...

Coverage decreased (-0.3%) to 95.491% when pulling 57dcbd0cae86afb374d9b5fddd38b677b630ae3b on lehni:feature/upsert-graph-and-fetch into 2f14a57e2393dc4864965c991066c8a9bde9b3c3 on Vincit:master.

Coverage decreased (-0.3%) to 95.491% when pulling 57dcbd0cae86afb374d9b5fddd38b677b630ae3b on lehni:feature/upsert-graph-and-fetch into 2f14a57e2393dc4864965c991066c8a9bde9b3c3 on Vincit:master.

Coverage decreased (-0.3%) to 95.491% when pulling 57dcbd0cae86afb374d9b5fddd38b677b630ae3b on lehni:feature/upsert-graph-and-fetch into 2f14a57e2393dc4864965c991066c8a9bde9b3c3 on Vincit:master.

@koskimas the API contains links to #graph-upserts, which aren't in the actual document. Where does the section on the website about "Graph Upserts" come from?

@lehni Slate wraps all those .md files into one html document. #graph-upserts anchor points here

And the source file is here

Coverage decreased (-0.001%) to 95.798% when pulling 55f254702af88fdea8d0997117666c27b2f9b182 on lehni:feature/upsert-graph-and-fetch into 2f14a57e2393dc4864965c991066c8a9bde9b3c3 on Vincit:master.

@koskimas -0.001% doesn't sound too bad : )

Looks perfect! Thank you!


PixelFormat::R8/A8 and GLES 2.0

GLES 2.0 for single channel textures used PixelFormat::A8, but in GLES 3.0 it was removed in favor of PixelFormat::R8. It seems like all other graphics APIs also use PixelFormat::R8. Our and Axmol code is full of hacks like these:
auto pixelFormat = AX_GLES_PROFILE == 200 ? PixelFormat::A8 : PixelFormat::R8;
Maybe it's worth to make PixelFormat::A8 = PixelFormat::R8 and deal with the difference on the backend side when calling GLES api, so all code could use PixelFormat::R8 everywhere? I'm not aware of unintended consequences, but at first sight it seems it would work. There could also be a macro to help on the shader code side, something like:
#ifdef GLES2
    #define R8_CHANNEL a
#else
    #define R8_CHANNEL r
#endif

What do you think?

Our ... code is full of hacks like these:
auto pixelFormat = AX_GLES_PROFILE == 200 ? PixelFormat::A8 : PixelFormat::R8;

@smilediver
May a "global pixelFormat" member is the solution on your code, defined only one times?
Can you close this issue?

I would prefer for this to be handled on the engine side, since the engine's whole purpose is to abstract out such minor platform differences. But if people don't see this as something useful, then I'll close the issue.

@halx99 @rh101
What are you meaning?

Can by done #1839 and GLES2 will emulate R8 RG8 via:

R8: L8
RG8: LA8


Trojan:Win64/Grandoreiro in ExcelDna.XFunctions.xll

My Windows 11 PC detected Trojan:Win64/Grandoreiro in ExcelDna.XFunctions.xll

"Troll in the dungeons, thought you ought to know"


FIX-#4227: Calling FactoryDispatcher.get_factory also initializes the engine

Signed-off-by: Anatoly Myachev<EMAIL_ADDRESS>
What do these changes do?

Previously, there were entry points that did not initialize the engine but could create Modin objects that required the engine to be initialized. This pull request is intended to ensure that these entry points also initialized the engine.

[x] commit message follows format outlined here
[x] passes flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py
[x] passes black --check modin/ asv_bench/benchmarks scripts/doc_checker.py
[x] signed commit with git commit -s
[x] Resolves #4227
[x] tests ~added~ and passing
[x] module layout described at docs/development/architecture.rst is up-to-date
[x] added (Issue Number: PR title (PR Number)) and github username to release notes for next major release

Code changes themselves look fine, but PR title is completely wrong now (plus PR body could use some explanation that is easily copy-pasteable into the merged commit message).

@vnlitvinov you're right. I updated the PR title.


⚠ Bofrost.fr has degraded performance

In 1ce537a, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 984 ms

Resolved: Bofrost.fr performance has improved in fc8bcf7 after 6 minutes.


Mistral-7B-Instruct-v0.2 to lit-gpt format

Hello i tried to convert the Mistral-7B-Instruct-v0.2 checkpoint to the lit-gpt format, and it seems that is not supported.
ValueError: 'Mistral-7B-Instruct-v0.2' is not a supported config name.
Any idea?

Hello @Chasapas
That's because Lit-GPT's config only has v0.1:
https://github.com/Lightning-AI/lit-gpt/blob/ad6554911951768b1db275a9b911e767faaa9aa7/lit_gpt/config.py#L1174-L1193
PRs are welcome.

Note to self, seems like v0.2 additionally does not use sliding window attention: https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2/blob/main/config.json#L19


fix: use with_bundle_update to prevent take_bundle panic

I had run into this issue when using the payload builder:
2023-09-12T00:38:30.746878Z DEBUG reth_basic_payload_builder: building empty payload parent_hash=0xc350640ec651d2df0ccce26c9134de3c2a17aaa0cce73d8d3beb0eb625ca5f00 parent_number=0
thread 'tokio-runtime-worker' panicked at 'called `Option::unwrap()` on a `None` value', /usr/local/cargo/git/checkouts/revm-bf744d8ffabcbad9/26dc07d/crates/revm/src/db/states/state.rs:197:51
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

This caused all payload building to fail, because the default was changed. Enabling with_bundle_update prevents the panic.

Nice find!


Music keeps playing in background while sim is reloading after code change

If a song is playing in the sim and you change the code, the sim turns grey while the project is rebuilding. During this time, the song keeps playing. It does stop (correctly) once the sim reloads.

@thsparks  can you check if this is fixed with the latest fixes?

Yes it still repro's


fix: Employee table with no added columns

What is the purpose of this pull request?
This change modifies the EmployeesTable component to return undefined when the contexts array is empty, instead of returning an empty array.
What problem is this solving?
The modification ensures that when no contexts are enabled, the component returns undefined rather than an empty array. This can potentially optimize performance and improve consistency in how the absence of contexts is represented.
Types of changes

[x] Chore: (improvements that will not reflect in production behaviour)

#165  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @keeganpotgieter and the rest of your teammates on  Graphite

Merge activity

Oct 1, 8:32 PM EDT: @keeganpotgieter started a stack merge that includes this pull request via Graphite.


603 remove hard coded agegroups in set edges function

Changes
Add minimum and maximum commuter age as function parameters for the set_edges function instead of hard coding it within the function.
Merge Request - GuideLine Checklist

Check our git workflow before opening a Pull request/Merge request.
Request a reviewer when your work is ready to review, before this please use the draft feature.

Checks by code author

[x] Every addressed issue is linked (use the "Closes #ISSUE" keyword below)
[x] New code adheres to coding guidelines
[x] No large data files have been added (files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
[x] Tests are added for new functionality and a local test run was successful
[x] Appropriate documentation for new functionality has been added (Doxygen in the code and Markdown files if necessary)
[x] Proper attention to licenses, especially no new third-party software with conflicting license has been added

Checks by code reviewer(s)

[ ] Corresponding issue(s) is/are linked and addressed
[ ] Code is clean of development artifacts (no deactivated or commented code lines, no debugging printouts, etc.)
[ ] Appropriate unit tests have been added, CI passes and code coverage is acceptable (did not decrease)
[ ] No large data files added in the whole history of commits(files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)

Additional context
Please list additional information or things a reviewer should look out for.
closes #603

Codecov Report
Patch coverage has no change and project coverage change: -0.01 :warning:

Comparison is base (a789002) 93.19% compared to head (ef40e0a) 93.19%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #607      +/-   ##
==========================================
- Coverage   93.19%   93.19%   -0.01%
==========================================
  Files          93       93
  Lines        7291     7289       -2
==========================================
- Hits         6795     6793       -2
  Misses        496      496

Impacted Files
Coverage Δ

cpp/memilio/mobility/graph.h
91.73% <ø> (-0.14%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Fix typographical error(s)

@ogrisel, I've corrected a typographical error in the documentation of the python-appveyor-demo project. Specifically, I've changed continous to continuous. You should be able to merge this pull request automatically. However, if this was intentional or if you enjoy living in linguistic squalor, please let me know and create an issue on my home repository.

Thanks!


Import NativeModules through react-native

Using this with React Native v14-rc+ will an error if NativeModules is not imported through react-native.
Please see this discussion for context: https://github.com/facebook/react-native/issues/3817

Merged thanks!

@darylrowland thank you!


Issue 500 feature add reference secret manager implementation demoapps

What?
Add example implementation of Secrets Manager and how to consume secrets from EKS
Why?
To have basic implementation as an example for using Secrets Manager from some workload in EKS, particularly on the reference code of k8s-eks-demoapps reference code.

Test after modifications


XKQZ

Use the preview tab to see the example given below. Edit the relevant information and preview the changes before submitting. You may delete these instructions.

Key
Value

ID
XKQZ

Source
Vaaran Bhai Gurdas Ji

Page
21

Line
ihMdU muslmwxu, n scu iswixAw [

Correction
THIS ≠ THAT

PROOF (EDITION)
Image:

Correction:
iswixAw  ≠
Proof:
Vaaran Bhai Gurdaas Ji | November 2011 | Shamsher Singh Ashok | SGPC, Sri Amritsar
Image:


[MRG+1] Create events from annotations in Brainvision

Reference issue
Fixes: #5455, #5456
What does this implement/fix?
Yet another step into having a better io through annotations. This PR is a bisection of #4936 and needs to go in after #4936.
The idea is to allow reading brainstorm markers and convert them into events through annotations. This PR does not intend to remove any duplicated code/functionality just lie out a way of doing the task. API homogenization, depreciation, etc.. would be done in a subsequent PR.
cc:@cbrnr

@jona-sassenhagen can your review this? It might affect your workflow.

Looks good to me. Maybe @cbrnr or @mmagnuski could say more though, they probably know annotations better.

Is there an example that shows how BrainVision markers are translated to annotations?

we don't have any example using brainvision data AFAIK
you can load any data using this PR and look at raw.annotations

OK, will try that.

@jona-sassenhagen @massich I think I addressed your comments.

I've restarted the single failed test, I think it was unrelated.

I've tried this with a random BrainVision file and it works pretty well 👍! However, here's some things that I've noticed:

Not all markers are correctly converted to annotations. In my file, there are 226 markers (Mk1-Mk226), but there are only 225 annotations. The problematic marker looks like this: Mk4=New Segment,,1,1,0,20110228132350000000. I guess the issue here is that there is only a type entry but no description.
When reading the file, a bunch of runtime warnings are issued (e.g. Marker 'Comment/ActiveTwo MK2' will be dropped). These seem to be related to converting markers into a stim channel, but to the user it looks like there's something wrong with reading in those events and converting them to annotations. I think these warning messages should be made more specific. Or better yet, they should be condensed to one line saying that there were X number of markers that were not considered in the stim channel conversion (otherwise there are over 200 warnings/lines in my case).

New Segment corresponds to the orig_time in the Annotations (or meas_date
in the file) so we don't treat it as a regular event.

This is not obvious. I would convert all markers to annotations, otherwise people will wonder why some markers are missing (it also doesn't hurt to have special markers in two places).
BTW, raw.info["meas_date"] is<PHONE_NUMBER>, 0) - how does this correspond to<PHONE_NUMBER>0448000000 (YYYYMMDDhhmmssuuuuuu)?

can you share a file and a script to replicate?

I can't share the file I was using because it belongs to one of our collaborators. However, it should be easy to replicate with non-stimulus markers in the .vmrk file, e.g.
Mk6=Bad Interval,Multiple,73,164,0
Mk7=Bad Interval,Bad Min-Max,73,160,0
Mk8=Bad Interval,Multiple,79,168,0
Mk9=Bad Interval,Bad Min-Max,84,170,0
Mk10=Bad Interval,Bad Min-Max,92,155,0
Mk11=Bad Interval,Multiple,92,184,0
Mk12=Bad Interval,Bad Min-Max,93,149,0
Mk13=Bad Interval,Multiple,93,173,0
Mk14=Bad Interval,Multiple,93,167,0
Mk15=Bad Interval,Multiple,94,166,0

@cbrnr I do not understand where do you see the warnings. If I apply the following patch I get no warnings when running test_read_vmrk_annoations.
diff --git a/mne/io/brainvision/tests/data/test.vmrk b/mne/io/brainvision/tests/data/test.vmrk
index 994b91dae..e3c4ffb2f 100755
--- a/mne/io/brainvision/tests/data/test.vmrk
+++ b/mne/io/brainvision/tests/data/test.vmrk
@@ -22,4 +22,14 @@ Mk10=Response,R255,6000,1,0
 Mk11=Stimulus,S254,6620,1,0
 Mk12=Stimulus,S255,6630,1,0
 Mk13=SyncStatus,Sync On,7630,1,0
-Mk14=Optic,O  1,7700,1,0
\ No newline at end of file
+Mk14=Optic,O  1,7700,1,0
+Mk15=Bad Interval,Multiple,73,164,0
+Mk16=Bad Interval,Bad Min-Max,73,160,0
+Mk17=Bad Interval,Multiple,79,168,0
+Mk18=Bad Interval,Bad Min-Max,84,170,0
+Mk19=Bad Interval,Bad Min-Max,92,155,0
+Mk20=Bad Interval,Multiple,92,184,0
+Mk21=Bad Interval,Bad Min-Max,93,149,0
+Mk22=Bad Interval,Multiple,93,173,0
+Mk23=Bad Interval,Multiple,93,167,0
+Mk24=Bad Interval,Multiple,94,166,0
\ No newline at end of file
diff --git a/mne/io/brainvision/tests/test_brainvision.py b/mne/io/brainvision/tests/test_brainvision.py
index eb2bd439d..f3e0f3e65 100644
--- a/mne/io/brainvision/tests/test_brainvision.py
+++ b/mne/io/brainvision/tests/test_brainvision.py
@@ -608,12 +608,18 @@ def test_read_vmrk_annotations():
     annotations = read_annotations_brainvision(vmrk_path, sfreq=sfreq)
     assert annotations.orig_time ==<PHONE_NUMBER>.794231
     expected = np.array([486., 496., 1769., 1779., 3252., 3262., 4935., 4945.,
-                         5999., 6619., 6629., 7629., 7699.]) / sfreq
+                         5999., 6619., 6629., 7629., 7699., 72., 72., 78., 83.,
+                         91., 91., 92., 92., 92., 93.]) / sfreq
     description = ['Stimulus/S253', 'Stimulus/S255', 'Stimulus/S254',
                    'Stimulus/S255', 'Stimulus/S254', 'Stimulus/S255',
                    'Stimulus/S253', 'Stimulus/S255', 'Response/R255',
                    'Stimulus/S254', 'Stimulus/S255',
-                   'SyncStatus/Sync On', 'Optic/O  1']
+                   'SyncStatus/Sync On', 'Optic/O  1', 'Bad Interval/Multiple',
+                   'Bad Interval/Bad Min-Max', 'Bad Interval/Multiple',
+                   'Bad Interval/Bad Min-Max', 'Bad Interval/Bad Min-Max',
+                   'Bad Interval/Multiple', 'Bad Interval/Bad Min-Max',
+                   'Bad Interval/Multiple', 'Bad Interval/Multiple',
+                   'Bad Interval/Multiple']
     assert_array_almost_equal(annotations.onset,
                               expected, decimal=7)
     assert_array_equal(annotations.description, description)

~/code/mne-python brainvision_annot_to_event* 1m 9s
(mne) ❯ pytest mne/io/brainvision/tests/test_brainvision.py -k read_vmrk_anno -s
Test session starts (platform: linux, Python 3.6.6, pytest 3.6.3, pytest-sugar 0.9.1)
rootdir: /home/sik/code/mne-python, inifile: setup.cfg
plugins: smother-0.2, sugar-0.9.1, pudb-0.6, ipdb-0.1, faulthandler-1.5.0, cov-2.5.1

 mne/io/brainvision/tests/test_brainvision.py ✓                                100% ██████████
================================= slowest 20 test durations ==================================
0.01s call     mne/io/brainvision/tests/test_brainvision.py::test_read_vmrk_annotations
0.00s setup    mne/io/brainvision/tests/test_brainvision.py::test_read_vmrk_annotations
0.00s teardown mne/io/brainvision/tests/test_brainvision.py::test_read_vmrk_annotations

Results (0.22s):
       1 passed
      12 deselected

Regarding the comment to add or not an annotation for the new segment maker:

I would convert all markers to annotations, otherwise people will wonder why some markers are missing (it also doesn't hurt to have special markers in two places).

I'm not sure its a good idea. It could be usefull if more than one new segment per file is present. In the test suit this happen in test_old_layout_latin1_software_filter.vmrk but is never used in the testsuit.

Otherwise, IMHO the PR is fine to be merged

@agramfort I would prefer if all markers get converted to annotations, otherwise people will wonder why the number of markers in the .vmrk file and the number of annotations do not match. It is perfectly fine if we also use some markers we deem special (e.g. we think that the "New Segment" marker corresponds to the recording time) to fill in some other fields in the info structure. Furthermore, as @massich points out, our assumption regarding the "New Segment" marker might not be correct since there are files that have several of these markers. If we keep all markers as annotations, we do not discard any information (we can still keep using the first "New Segment" marker for the recording time).
Regarding the warnings, here's the output I see after loading a BrainVision file with non-stimulus markers:
In [1]: import mne

In [2]: raw = mne.io.read_raw_brainvision("/Users/clemens/Desktop/Functions_3b_8.vhdr")
Extracting parameters from /Users/clemens/Desktop/Functions_3b_8.vhdr...
<ipython-input-2-a38ef91d58f9>:1: RuntimeWarning: No coordinate information found for channels ['EXG1', 'EXG2', 'EXG3', 'EXG4', 'EXG5', 'EXG6', 'EXG7', 'EXG8', 'Status']. Setting channel types to misc. To avoid this warning, set channel types explicitly.
  raw = mne.io.read_raw_brainvision("/Users/clemens/Desktop/Functions_3b_8.vhdr")
No coordinate information found for channels ['EXG1', 'EXG2', 'EXG3', 'EXG4', 'EXG5', 'EXG6', 'EXG7', 'EXG8', 'Status']. Setting channel types to misc. To avoid this warning, set channel types explicitly.
 Consider using ``regexp`` to ignore triggers that do not follow a specicif pattern.

On master, I only get these warnings:
Extracting parameters from /Users/clemens/Desktop/Functions_3b_8.vhdr...
<ipython-input-3-a38ef91d58f9>:1: RuntimeWarning: No coordinate information found for channels ['EXG1', 'EXG2', 'EXG3', 'EXG4', 'EXG5', 'EXG6', 'EXG7', 'EXG8', 'Status']. Setting channel types to misc. To avoid this warning, set channel types explicitly.
  raw = mne.io.read_raw_brainvision("/Users/clemens/Desktop/Functions_3b_8.vhdr")
No coordinate information found for channels ['EXG1', 'EXG2', 'EXG3', 'EXG4', 'EXG5', 'EXG6', 'EXG7', 'EXG8', 'Status']. Setting channel types to misc. To avoid this warning, set channel types explicitly.
Setting channel info structure...
<ipython-input-3-a38ef91d58f9>:1: RuntimeWarning: Currently, 6 trigger(s) will be dropped, such as ['CMS in range', 'Multiple', 'ActiveTwo MK2', 'Speed Mode 4', 'Bad Min-Max']. Consider using ``event_id`` to parse triggers that do not follow the '###' pattern with an optional single character prefix.
  raw = mne.io.read_raw_brainvision("/Users/clemens/Desktop/Functions_3b_8.vhdr")
Currently, 6 trigger(s) will be dropped, such as ['CMS in range', 'Multiple', 'ActiveTwo MK2', 'Speed Mode 4', 'Bad Min-Max']. Consider using ``event_id`` to parse triggers that do not follow the '###' pattern with an optional single character prefix.

I don't really understand why there are different warnings. On master an on this PR. I'm on it.

can you share a file to quickly test and fix this? I can maybe find some
time this we.

I can't share the EEG file because it's not mine, but I'll see if I can replicate this behavior with one of our test files.

The files mne/io/brainvision/tests/data/test.{eeg|vhdr|vmrk} reproduce the messages. If you don't change anything, you will get the warning just for Mk13=SyncStatus,Sync On,7630,1,0.
You can append a couple of Mk14=Bad,Whatever,7700,1,0 lines to the .vmrk file, and for each added line you will get a warning message that the marker was dropped.
Also note that there is a typo in one of the messages: Consider using ``regexp`` to ignore triggers that do not follow a specicif pattern. Here, specicif should be specific.

@cbrnr can you try again this branch?

Yes, this looks better now.
We should be careful with our terminology though (I'm still getting confused). It's already in the glossary, but to recap: there are annotations (stored in raw.annotations), triggers (used to automatically create the stim channels), and events (extracted from the stim channel using mne.find_events). Is this correct? If yes, then this PR should be renamed to "Create annotations from BrainVision markers". The term "triggers" is not in the glossary yet, should I add it? If not, we should adapt the warning message:
6 trigger(s) will be dropped, such as ['Comment/CMS in range', 'Bad Interval/Multiple', 'Comment/Speed Mode 4', 'Bad Interval/Bad Min-Max', 'Comment/ActiveTwo MK2']. Consider using ``regexp`` to ignore triggers that do not follow a specific pattern.

@massich I factorized the code with private _report_dropped function.
@cbrnr now you have all the "New Segment" entries in the raw.annotations
regarding the use of the word trigger, I removed it from the error message
to stick to the word annotations.
let me know what else should be addressed.

Thx @agramfort
It's good to merge from my end, if CIs are happy.
Reword the commit message, when squashing.

green
ok for you to merge @cbrnr @larsoner @jona-sassenhagen ?

 I think that will make people turn off logs/warnings.
It should be something like, "x events of type y were dropped". We have code like that elsewhere.

@jona-sassenhagen you should not see the duplication of all warnings. are you sure you tested with latest version of the branch?

ok the code looks cleaner than before. I didn't test it, but my comments are stylistic only, looks good.

I like @larsoner's suggestion to simplify the stim channel creation, but since the stim channel will be dropped anyway it isn't really that important.
Regarding the warning about dropped events, although we devs know the difference between annotations and events, I'm afraid the normal user won't know the difference. This means that if the user sees these messages about dropped events, he/she will wonder if something went wrong with parsing the markers. I think the warning message should contain the information that this occurred while synthesizing the analog stim channel, but all markers have successfully parsed to annotations or something.

@jona-sassenhagen I pushed to address your comments.
@cbrnr can you push to this PR to address your concerns or suggest where I should write what? you can also do it in a subsequent PR.

Fixed the thing I was concerned with, LGTM +1 for merge


[Bug]: nested metadata filtering condition doesn't work

Bug Description
The solution from https://github.com/run-llama/llama_index/issues/10353
doesn't work for me when i am testing nested metadata filtering with chat_engine and pinecone.
Version
0.10.36
Steps to Reproduce
subfilters1 = MetadataFilters(
    filters=
        [
        MetadataFilter(key="fruit", value="apple", operator="=="),
        MetadataFilter(key="timestamp", value=unix_timestamp_two_weeks_ago, operator=">"),
    ],
    condition=FilterCondition.AND
)

subfilters2 = MetadataFilters(
    filters=
        [
        MetadataFilter(key="fruit", value=["banana", "orange"], operator="in")
    ]
)

metadata_filter = MetadataFilters(
    filters=[
            subfilters1,
            subfilters2,
        ],
        condition=FilterCondition.OR
)

    query_engine = loaded_index.as_chat_engine(
        chat_mode="best",
        filters=metadata_filter,
        system_prompt=system_prompt,
        similarity_top_k=8,
        memory=memory,
        llm=llm
    )

Relevant Logs/Tracbacks
No error found. it's just the filter not working.

Hmm, there is code to handle this, but no idea if its correct or not
https://github.com/run-llama/llama_index/blob/bfd25142f2098bc8da9a0b091874090a94834ff5/llama-index-integrations/vector_stores/llama-index-vector-stores-pinecone/llama_index/vector_stores/pinecone/base.py#L132
PRs welcome to update it


Add back buttons to Create and Open wallet forms

[x] Add "Back" link to Create New Wallet screen, that takes the user back to the landing page
[x] Add "Back" link to Open Existing Wallet screen, that takes the user back to the landing page

Design:
https://zpl.io/VYBXP6e


feat(secrets): add secrets component

Do not merge until:

[ ] Secrets are supported in the wizard

Issue
Issue number, if available, prefixed with "#"
Description
What does this implement? Explain your changes.
-Adds Secret component and SecretDefinition for wizard Options

fix typo in test blueprint ("touple" -> "tuple")

Testing
How was this change tested?
Additional context
Add any other context about the PR here.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

todo: fix build errors, and fix package.json changes from * to hardcoded versions

add npm public in package json: https://github.com/aws/codecatalyst-blueprints/pull/479/files


Run wasm-strip with --release

💡 Feature description
Building the default example project as a release build yields some rather big wasm modules, which might be deterring to some:
Command: wasm-pack build --release

stable: 1.3M
nightly: 771K

After running wasm-strip, the size goes down drastically:

stable: 1.6K
nightly: 1.6K

Anything speaking against running wasm-strip automatically, at least for --release?
wasm-pack 0.6.0
rustc 1.32.0 (9fda7c223 2019-01-16)
rustc 1.34.0-nightly (57d7cfc3c 2019-02-11)

@surma yeah! i was actually thinking about this after our in person hack sesh at the meetup. the biggest blocker to adding tools to wasm-pack is the availability of a rust library and/or linux/macOS/windows binaries (the binaries are the preferred option). would you be willing to take a look into the availability of these binaries? if they exist, adding wasm-strip should be otherwise not too difficult.
also a side note- wasm-pack defaults to release so this is a feature that would be run by default and turned off for when wasm-pack runs in --dev mode.

I think we would only want to run wasm-strip for the release profile, not debug or profiling profiles, since it will remove debug info. But I'm also a little confused because I would assume that we are already not including any custom sections in release profile builds...
Either way -- if we add support for this, we would want to control it via the toml config.

@fitzgen agree we'd only want it for --release, which is the "default" (i.e. not on --dev, or debug, or the others)
it certainly appears that wasm-strip does something here, perhaps it would help to figure out exactly what it does! (re: your comment re custom sections)

As I mentioned in the title, I definitely meant wasm-strip to only be run for release builds!
I ran Twiggy real quick:

So it seems that custom sections do not get stripped.
(That being said, I think this might have been a change in 1.32 or something. I believe when I was on 1.30 the binary was way smaller)

Figured out why the DWARF isn't getting stripped: https://github.com/rustwasm/wasm-bindgen/issues/1254

@surma could you try the newest release of wasm-bindgen and confirm this is fixed? (i'd expect that wasm-strip would make a lot less of, if no, difference if the bug is indeed fixed!)

I updated wasm-bindgen dependency to 0.2.37, but sadly it doesn’t seem to actually be invoked.
Invoking wasm-strip manually shaves off around 3k.

@fitzgen circling back up on this - any idea what wasm-strip is stripping? @surma can you give any more details?

wasm-bindgen doesn't ever attempt to run wasm-strip -- I think there is some kind of misunderstanding here?
I think we need to be more concrete about examples, expectations, and actual behavior here, so it would be useful to have:

steps to reproduce (clone this repo, run this command, etc)
expected behavior (the generated wasm does not have any custom sections)
actual behavior (the generated wasm has X and Y custom sections)

@surma sorry for the Extreme Delay. any status update on this? if you have a way to repro that'd be great.

Apologies! I lost track of this as well!
Here’s a repro repo: https://github.com/surma-dump/wasm-pack-issue-543
Repro steps:

Run wasm-pack build --release
Check file size of pkg/wasm_pack_issue_543_bg.wasm
Run wasm-strip pkg/wasm_pack_issue_543_bg.wasm
Check file size of pkg/wasm_pack_issue_543_bg.wasm again

Expected: File size remains the same
Currently observed: File size got smaller after running wasm-strip


[Bug]: Can't login as machine user

Preflight Checklist

[X] I could not find a solution in the documentation, the existing issues or discussions
[X] I have joined the ZITADEL chat

Environment
Self-hosted
Version
v2.50.2
Database
PostgreSQL
Database Version
16
Describe the problem caused by this bug
I've configured a self-hosted ZITADEL Instance, running behind a Caddy Proxy. I'm attempting to login from a Node.js application into ZITADEL, utilizing the library provided on the official ZITADEL website. Despite my efforts, ZITADEL consistently denies authentication requests. Notably, the user in question is designated as "Iam Owner."
To reproduce
This is the code I'm using in my Node.JS application:
zitadelServiceAccount = ServiceAccount.fromJson({
  userId: ***,
  key: ***,
  keyId: ***
})

const interceptor = createServiceAccountInterceptor(SERVER, zitadelServiceAccount, { apiAccess: true })
managementClient = createManagementClient('https://***.cloud', interceptor)

If I set SERVER to "https://***.cloud" the authentication fails with the following error:
issuer does not match: Expected: https://***.cloud:443, got: https://***.cloud
If I set SERVER to "https://***.cloud:443" i receive a different error:
Audience must contain client_id \"https://***.cloud\""
Screenshots
No response
Expected behavior
No response
Operating System
Linux / Node.JS v20
Relevant Configuration
ZITADEL
ExternalSecure: true
ExternalDomain: '***.cloud'
ExternalPort: 443

TLS:
  Enabled: false

Database:
    postgres:
        Host: localhost
        Port: 5432
        Database: zitadel
        MaxOpenConns: 25
        MaxConnLifetime: 1h
        MaxConnIdleTime: 5m
        Options:
        User:
            Username: zitadel
            Password: ***
            SSL:
                Mode: disable
                RootCert:
                Cert:
                Key:
        Admin:
            Username: postgres
            Password: ***
            SSL:
                Mode: disable
                RootCert:
                Cert:
                Key:

Caddy
https://***.cloud {
        reverse_proxy h2c://localhost:8080
}

Additional Context
No response

You have to take care that the proxy does not add the port to the Host header. The Host must be the same for zitadel and the browser, or you get all sorts of issues. Similar to https://github.com/zitadel/zitadel/issues/7251

@montycb did you resolve the issue? How does your Caddyfile look like?


strange glitch

Describe your bug here. If you are modding, try testing your bug in a clean version of the engine instead. Also, if you're using an older version of JSE, please try the latest version/action build. Also, be sure to check the pinned 'JS Engine: Known Issues' issue, to check if your issue hasn't already been found!
https://github.com/user-attachments/assets/bbe667af-9958-479c-b99f-cf31bd0852c1
Command Prompt/Terminal/Crash logs (if existing)
No response
Have you identified any steps to reproduce the bug? If so, please describe them below in as much detail as possible. Use images if possible.
No response
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
no
If you use 1.12.0 or earlier, did you have Optimized Chart Loading turned on?
None
Did you check for any similar issues to what you're reporting? Check, then come back here. If there is a similar issue, then do not report the issue, otherwise it will be marked as a duplicate.
Yes

I don’t get it, what’s the problem here?

the screen freezes completely, but the game and sound still work

the screen freezes completely, but the game and sound still work

then wait for it to work

over 20 minutes of waiting, also I discovered, that this bug happens when I turning off function called "enable note colors"

maybe turn it on then?
@moxie-coder this issue is stale btw

maybe turn it on then?
@moxie-coder this issue is stale btw

I know, I forgot to fix this in the meantime

I’ve been unable to replicate myself so I’m gonna assume you have a weak pc


helm lint : invalid Yaml document separator: apiVersion

I've encountered an error when linting my charts : [ERROR] templates/hull.yaml: unable to parse YAML: invalid Yaml document separator: apiVersion: v1
This happens with helm 3.7+. Helm 3.5 and 3.6 are fine and do not show such an error. Now, generating the template with helm template gives correct results, so this might be a helm issue.

A non-hull helm chart with this basic template succesfullt passes the lint. This is a similar output to helm template with the hull chart. :
templates/test.yaml (there is nothing else in the templates folder) :
apiVersion: v1
data:
  testdata: lorem-ipsum
kind: ConfigMap
metadata:
  name: release-name-test-testconfigmap1
---
apiVersion: v1
data:
  testdata: dolor sic amet
kind: ConfigMap
metadata:
  name: release-name-test-testconfigmap2

However, such a Hull chart fails :
values.yaml :
hull:
  objects:
    configmap:
      testConfigMap:
        data:
          testdata:
            inline: "lorem ipsum dolor"

templates/hull.yaml (there is nothing else in the templates folder) :
{{- include "hull.objects.prepare.all" (dict "HULL_ROOT_KEY" "hull" "ROOT_CONTEXT" $) }}

I don't really understand the cause, and if hull is at fault, or helm itself. I will continue investigating this.

Thanks @matthias4217  for reporting this.
First glance it seems to be related to this helm issue. Will investigate this tomorrow but likely the (to my knowledge YAML conforming?) --- seperators seem to be involved in this ...
Anyhow linting should be added to the tests. At the moment they only excessively do helm template and check the rendered results against the expectations which requires all tests to pass to successfuly create a build.

Thank you @matthias4217 , yes that does fix it! I was able to quickly reproduce the problem and verify the fix is working.
By removing the single dash, the beginning of a new objects specification is on a new line and all is good in terms of linting. As to why this is not a problem when templateing or installing - same here, no clue ... but someone also noted the same (inconsistent) behavior here. If I were to guess, the code to render objects appears somewhat different between helm template and helm lint and some compensation for this type of problem takes place when templateing.
Think it makes sense to add strict linting to the test cases so linting errors are catched early on and the test output is cleaner. Unfortunately I had a tendency to use underscores in almost all test object names which is also producing several dozens of linter errors like this:
[WARNING] templates/hull.yaml: object name does not conform to Kubernetes naming requirements: "test-release-hull-test-quota_one": metadata.name: Invalid value: "test-release-hull-test-quota_one": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')

So its gonna take a moment to correct the tests but I think it is worth it. New (linted) HULL versions should drop later today.

Strict linting for all release tests implemented. Done for all Helm versions >= 3.3.0.
Releases:
1.23.14
1.24.9
1.25.8


Add an option to tail the last N lines

Could you please add an option for tailing the last few lines? Perhaps replace 'fromBeginning' with 'lastLines' or something, that takes either an int value, or 'true' or something, which is a special value which means from beginning.

:+1:

I am experimenting with this package and was surprised to find that the "line" event fires for each line as expected, it get executed not only for new lines but again and again for hundreds of lines, even though I added only a single new line at the end of the file.
How can we just catch that last new line (or however many new lines have actually been added)?

There's no way at the moment to tail only a certain number of lines. It's either from the beginning of the file or from the latest line. I can see the need of mirroring the tail -n behaviour; the problem is that I can't see a neat way to do this with the current params list; this means I'll have to do some refactoring in the constructor signature(adding yet another params is a no, the signature is getting too long).

Any chance of this being added? It's exactly the functionality I was looking for.

Is this feature planned @lucagrulla?

Unfortunately no.
There's no clean way to idenitfy N lines from file's tail, you can only go via trial and error (read a large of past data, count all the lines, repeat if you missed the mark).
That makes it very inefficient and error prone.
Unless something new appears in the underlying Nodejs core API I'm not looking at doing this any time soon.

Here's an implementation that appears to proceed linearly from the end of the file, tracking newline characters, until it locates enough lines https://github.com/alexbbt/read-last-lines/blob/master/src/index.js. So, inefficient, yes, error prone, unsure. In any case this doesn't do tailing, just retrieves the last N lines, unfortunately.
What I would be most curious about was how to merge such an implementation with tailing, making sure that while you were progressively seeking from the end of the file, you also were keeping track of new data appended to the file. I personally would take the hit on inefficiency so long as the implementation was correct (in that way), because I suspect that the implementation would overall be faster and more memory-efficient for long logfiles than what I am currently doing, which is
// The 'tail' module lacks a `-n`-like option to get the last `N` lines. So what we
// do is load the entire file, but wait to render only the last `N` lines, then
// start streaming.
const N = 100;
let logs = [];
let initialDataFlushed = false;
const tail = new Tail(logfile, { fromBeginning: true });
tail
  .on('line', (line) => {
    if (initialDataFlushed) {
      console.log(line);
    } else {
      logs.push(line);
      if (logs.length > N) logs.shift();
    }
  })
  .on('historicalDataEnd', () => {
    logs.forEach((line) => console.log(line));
    logs = [];
    initialDataFlushed = true;
  })
  .on('error', (err) => console.error(err));

For what it’s worth, this package does this out of the box :stuck_out_tongue_winking_eye:

Available since v.2.2.0.

Available since v.2.2.0.


How can I change the color Scheme?

Is there a way to change the color scheme so I can have a dark theme...? Noy only on the Graphs?

The nightly build has a dark theme after enabling theme support:


Update pdfsearch extension

Description

Add outline search for individual PDF documents.
Fix incorrect page numbering in search results for collections.
Improve search using sentence embeddings and query expansion.

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Thank you @kevin-pek! Looks great in the screenshot! Hope to see it in the Store soon. 🔥


One transaction for b2b onboarding (new org, create user, add manager roles)

Preflight Checklist

[X] I could not find a solution in the existing issues, docs, nor discussions
[X] I have joined the ZITADEL chat

Describe your problem
In a b2b scenario you might want to create a new organization per customer, and also create the first user based on the registration information with a specific manager role. This requires multiple calls at the moment, but could be done in one transaction to ease implementation.
We use the same pattern for zitadel.com and multiple users have the same use case to handle.
Describe your ideal solution
As a developer, I have an API call to create a new organization with a user and setting manager roles to that user, so I can create an easy onboarding/register in a b2b scenario.
Considerations:

Should check if the user already exists/ is unique
Should check if the domain of the organization already exists
Decision: If the organization already exists only register the user? (this would allow to have one call in a style of create if not already exists)

Version
No response
Environment
ZITADEL Cloud
Additional Context
No response

Hei @mffap
I think what you describe in the issue, already exists.
There is a setup organization method.
You can send an orgnization, a user and roles directly in the body.
https://zitadel.com/docs/apis/resources/admin/admin-service-set-up-org


TypeScript, string literal, compiler false positive error

VSCode Version: 0.10.11, 0.10.13-insider, 0.10.14-insider
OS Version: Windows 10
TypeScript Version: 1.8.9 locally via tsdk workspace, also occurs with this setting removed.
Node Version: 4.1.1

Steps to Reproduce:

String literal declaration as follows (You can also download the source here):

/** String literal with possible values. Used in place of an enum to allow string type. */
export type RequestType = 'LaunchRequest' | 'IntentRequest' | 'SessionEndedRequest';
export const RequestType = {
    LaunchRequest: 'LaunchRequest' as RequestType,
    IntentRequest: 'IntentRequest' as RequestType,
    SessionEndedRequest: 'SessionEndedRequest' as RequestType
};

Build the project (ctrl+shift+B) with the file closed, i.e. not in the edit window. In my project, I have created a task as follows:

{
	// See http://go.microsoft.com/fwlink/?LinkId=733558
	// for the documentation about the tasks.json format
	"version": "0.1.0",
	"command": "tsc",
	"isShellCommand": true,
	"args": ["-p", "."],
	"showOutput": "silent",
	"problemMatcher": "$tsc"
}

The compiler shows that there are multiple errors (for each of the above string literal declarations). When you navigate to the error (thus opening the file in a window), however, the error message disappears. If you compile with the offending file already open (in my case, either helper.ts or alexa-skills-kit.ts), the compiler error does not show at all.

Because it not showing up with the file open in a window, I would think that there is something funky going on with caching and the string literal feature. Possibly a TypeScript issue and not a VS code issue?  I am attaching a screenshot:

@bill-mybiz I think it is a mismatch of the external tsc command you are using and the tsserver. When you run tsc -version what is printed. If this is not 1.8.9 please upgrade tsc to version 1.8.9.
I am closing this because it is very likely a version mismatch between the external compiler and the internal TS service.
@bill-mybiz please ping if the versions are the same.

@dbaeumer That does indeed seem to be the case.
It seems that in troubleshooting the previous Salsa+TypeScript issue, we switched to a newer version of node and didn't have TypeScript installed globally. So even though TypeScript is installed as a dev dependency locally for the project, the tsc compiler (versioning) relies on the global install of TypeScript.
Thanks for your help.