[Bug]: Does not work on MacOS

Your current environment

```text
username@My-MacBook-Pro ~ % python3 collect_env.py
torch.device('cpu'),
Collecting environment information...
PyTorch version: 2.2.2
Is debug build: False
CUDA used to build PyTorch: None
ROCM used to build PyTorch: N/A
OS: macOS 14.5 (x86_64)
GCC version: Could not collect
Clang version: 15.0.0 (clang-15<IP_ADDRESS>)
CMake version: Could not collect
Libc version: N/A
Python version: 3.9.6 (default, Feb  3 2024, 15:58:28)  [Clang 15.0.0 (clang-15<IP_ADDRESS>)] (64-bit runtime)
Python platform: macOS-14.5-x86_64-i386-64bit
Is CUDA available: False
CUDA runtime version: No CUDA
CUDA_MODULE_LOADING set to: N/A
GPU models and configuration: No CUDA
Nvidia driver version: No CUDA
cuDNN version: No CUDA
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True
CPU:
Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz
Versions of relevant libraries:
[pip3] numpy==2.0.1
[pip3] torch==2.2.2
[conda] Could not collect
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: N/A
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
Could not collect
</summary>

pip install vllm
Defaulting to user installation because normal site-packages is not writeable
Collecting vllm
  Downloading vllm-0.5.4.tar.gz (958 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 958.6/958.6 kB 2.8 MB/s eta 0:00:00
  Installing build dependencies ... error
  error: subprocess-exited-with-error

  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [10 lines of output]
      Collecting cmake>=3.21
        Downloading cmake-3.30.2-py3-none-macosx_11_0_universal2.macosx_10_10_x86_64.macosx_11_0_arm64.whl.metadata (6.1 kB)
      Collecting ninja
        Downloading ninja-<IP_ADDRESS>-py2.py3-none-macosx_10_9_universal2.macosx_10_9_x86_64.macosx_11_0_arm64.macosx_11_0_universal2.whl.metadata (5.3 kB)
      Collecting packaging
        Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
      Collecting setuptools>=49.4.0
        Downloading setuptools-72.1.0-py3-none-any.whl.metadata (6.6 kB)
      ERROR: Could not find a version that satisfies the requirement torch==2.4.0 (from versions: 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2)
      ERROR: No matching distribution found for torch==2.4.0
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

</details>

### 🐛 Describe the bug

The instructions on the front page don't seem to work for MacOS. I'm at a loss for what to do next.

`
pip install vllm
`

Defaulting to user installation because normal site-packages is not writeable
Collecting vllm
Downloading vllm-0.5.4.tar.gz (958 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 958.6/958.6 kB 2.8 MB/s eta 0:00:00
Installing build dependencies ... error
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> [10 lines of output]
Collecting cmake>=3.21
Downloading cmake-3.30.2-py3-none-macosx_11_0_universal2.macosx_10_10_x86_64.macosx_11_0_arm64.whl.metadata (6.1 kB)
Collecting ninja
Downloading ninja-<IP_ADDRESS>-py2.py3-none-macosx_10_9_universal2.macosx_10_9_x86_64.macosx_11_0_arm64.macosx_11_0_universal2.whl.metadata (5.3 kB)
Collecting packaging
Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
Collecting setuptools>=49.4.0
Downloading setuptools-72.1.0-py3-none-any.whl.metadata (6.6 kB)
ERROR: Could not find a version that satisfies the requirement torch==2.4.0 (from versions: 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2)
ERROR: No matching distribution found for torch==2.4.0
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

Unsure what's causing the mess above either. Sorry.

So this is a vllm and a pytorch issue.
These are the available versions for pytorch cpu
pip index versions torch
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
torch (2.2.2)
Available versions: 2.2.2, 2.2.1, 2.2.0

and these are the available versions for pytorch gpu
pip index versions torch
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
WARNING: Ignoring invalid distribution -m-eval (/opt/conda/lib/python3.10/site-packages)
torch (2.4.0)
Available versions: 2.4.0, 2.3.1, 2.3.0, 2.2.2, 2.2.1, 2.2.0, 2.1.2, 2.1.1, 2.1.0, 2.0.1, 2.0.0, 1.13.1, 1.13.0, 1.12.1, 1.12.0, 1.11.0

  INSTALLED: 2.3.1
  LATEST:    2.4.0

My assumption is In a recent bump I believe they just replaced the version number and added +cpu to it but the binary doesn't seem to be made available yet (although this could be incorrect)

PyTorch has stopped building MacOS x86_64 binaries since torch v2.3.0.
RFC: https://github.com/pytorch/pytorch/issues/114602, and my comment on it

I have managed to force install on PDM by override the resolutions. not sure it could do similar thing on pip
My configuration here
[project]
name = "experimental-vllm"
version = "0.1.0"
description = "Default template for PDM package"
authors = [
    { name = "David Ng", email =<EMAIL_ADDRESS>},
]
dependencies = [
    "huggingface-hub[cli]>=0.26.2",
    "vllm>=0.6.3.post1",
    "torch==2.2.2; sys_platform == 'macos'",
    "torchvision==0.17.2; sys_platform == 'macos'",
]
requires-python = "==3.12.*"
readme = "README.md"
license = { text = "MIT" }

[tool.pdm]
distribution = false

[tool.pdm.resolution.overrides]
torch = "2.2.2; sys_platform == 'macos'"
torchvision = "0.17.2; sys_platform == 'macos'"


nixos/acme: implement postRun using ExecStartPost

Motivation for this change
Consider
security.acme.certs.<name>.postRun = "systemctl reload nginx.service";.
I would expect this to reload the certificates into nginx whenever new ones arrive.
However, it appears this does not happen after https://github.com/NixOS/nixpkgs/commit/5532065d0690645f0a813fed6e68163b0f4774d4.
That commit changed the systemd service to be Type=oneshot, RemainAfterExit=true, but the postRun commands are implemented as ExecStopPost.
Systemd believes the service is still running, because of RemainAfterExit, and thus will not reload nginx. Moving to ExecStartPost will reload nginx when the new certificates arrive.
Things done
I've built this change and deployed using NixOps, and tested it on the remote server.
I'm happy to do more tests (please yell!), but may need more detailed instructions
(in particular, my machine swiftly OOMs with nix-review, I'm not sure what I'm doing wrong here!)

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

[ ] NixOS
[ ] macOS
[X] other Linux distributions, and deployed via NixOps

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

ping @arianvp @m1cr0man @petabyteboy

@GrahamcOfBorg test acme

AH good catch. That's also what probably broke the tests on master

Lgtm!

Thanks for fixing this!


Initial pairing is pain

Once connected, it's perfect, can power cycle the board -- it re-connects all good. And stays connected.
But to make the board connect to the radio the first time can be pain.
I expect there are some bugs in ArduinoBLE library that shall be fixed or code in the main loop re-arranged to please FrSky radios.
Shall debug and see.

After some experiments, it seems like Arduino's bluetooth stack is actually OK.
Instead, the radio's bluetooth that may end up in some limbo state if you try to "[Clear]" connection and then connect again in hope to speed up connection after powering off radio and turning it on before a flight.
Just wait, let radio to boot up its bluetooth stack, discover head tracker board and connect to it.
So far, once paired, waiting was the best approach and definitely better than jamming radio with constant requests to clear connection and connect again.

After flashing a new version, board sometimes changes address and this breaks bluetooth plairing. No reason to wait for eventual connection (as advised), that will never happen.
Shall be no-issue for day-to-day use (no flashing a new version), but good to keep in mind.

Not actual anymore after switching to Go


feat(NotificationItem): add support for forum mentions

Overview

render notifications of type forum_mention w/ an '@' icon

PR Checklist

[ ] Related to designs:
[x] Related to JIRA ticket: EGG-1115
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change

📬Published Alpha Packages:@codecademy/gamut-illustrations@0.10.10-alpha.8fa316.0@codecademy/gamut-kit@0.3.60-alpha.8fa316.0@codecademy/gamut-labs@15.1.3-alpha.8fa316.0@codecademy/gamut@32.4.4-alpha.8fa316.0<EMAIL_ADDRESS>
📬Published Alpha Packages:@codecademy/gamut-illustrations@0.11.2-alpha.47d531.0@codecademy/gamut-kit@0.3.67-alpha.47d531.0@codecademy/gamut-labs@15.2.7-alpha.47d531.0@codecademy/gamut@32.7.4-alpha.47d531.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://608c81770b164e1d8569267a--gamut-preview.netlify.appDeploy Logs

It's so cool seeing this project get iterated on. 😍

📬Published Alpha Packages:@codecademy/gamut-illustrations@0.11.2-alpha.70680b.0@codecademy/gamut-kit@0.3.67-alpha.70680b.0@codecademy/gamut-labs@15.2.7-alpha.70680b.0@codecademy/gamut@32.7.4-alpha.70680b.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://60900af8dd1e9000c7430f1b--gamut-preview.netlify.appDeploy Logs


Fix readme typo

Fix typo. :)

I cannot merge it ... please contact @bestit-tkellner for merging.


Add photography and no alcohol policy

Will fix formatting later -- mostly looking for content feedback now. We also still have to confirm these badge colours.

merging with requested changes - feel free to make followup requests


Bug - Major - Icon Cards - The pop-up of the video displayed clicking on the Play video button is smaller and the thumbnail is cutout

When clicking the Play video button, the video pop-up is smaller and the video thumbnail cutout
Steps to reproduce:

Go to https://119-icon-cards--vg-macktrucks-com-rd--netcentric.hlx.page/drafts/shomps/icon-cards
Click on the Play video button
Notice the video pop-up and thumbnail

Expected result
Video pop-up and video thumbnail should be correctly displayed
Actual result
Video pop-up is smalled and the video thumbnail cutout

#119


Can't toggle all group at once by looping through

Trying to toggle all groups which have child item. using
adapter.toggleGroup(POSITION_WHICH_HAS_CHILD_ITEM);

I have same issue...please provide some solution

hi @noman404 and @mjobanputra
Here is how you can toggle all groups:
  public void toggleAllGroups() {
    for (int i = 0; i < expandableList.expandedGroupIndexes.size(); i++) {
      toggleGroup(getFlattenedGroupPosition(i));
    }
  }

  public int getFlattenedGroupPosition(int groupIndex) {
    int runningTotal = 0;
    for (int i = 0; i < groupIndex; i++) {
      runningTotal += numberOfVisibleItemsInGroup(i);
    }
    return runningTotal;
  }

  private int numberOfVisibleItemsInGroup(int group) {
    if (expandableList.expandedGroupIndexes.get(group)) {
      return expandableList.groups.get(group).getItemCount() + 1;
    } else {
      return 1;
    }
  }

The toggleAllGroups and getFlattenedGroupPosition method do not currently exist in the library. I will add both in the next version. The numberOfVisibleItemsInGroup method does exist within ExpandableList it is just private so you have to copy and paste it over. I will change it's scope in the next version as well.

Problem is that when we call toggleGroup() it does not call expand() or collapse() in GoupViewHolder.
expand() and collapse() only calls when we click on groupViewHolder item. can you please provide some solution for it??


Update Website for v1.1.0 release

What does this PR do?
This PR updates usdx.eu/format page. It's ready for v1.1.0 release.
Motivation
Release of UltraStar Song Format v.1.1.0
Screenshots

Hi @Baklap4 , @bohning , could one of you approve this pull request? - we should release v1.1.0 tomorrow 1th december 🎉 😃
Everything should be fine. HTML Validator is ✅


fix regex for debit card name

Details
Fix regex for card name in add debit card form.
Fixed Issues

$ https://github.com/Expensify/App/issues/21255
$ https://github.com/Expensify/App/issues/21255#issuecomment-1601634117
Tests

Go to settings -> payments -> add debit card.
Enter a name with emojis in the card name field. ex - "John ❤😄😄".
Form should show an error for invalid name.
Enter a name with any characters other than alphabets, numbers and accented characters (À-ÿ) and form should show an error for invalid name and the message should be - "Name can only include latin letters and numbers.".
Enter a valid name with allowed characters specified in point 4 and enter other details. A valid card number is<PHONE_NUMBER>528599.
You should be able to submit the form.
Change language to spanish from settings > preferences.
Go to debit card page again and enter an invalid name. The error should be "El nombre solo puede contener números y caracteres latinos.".

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

Offline tests

Same as above.
QA Steps

Same as above.

[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 / Chrome
[x] iOS / native
[x] iOS / 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 approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[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 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(themeColors.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 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 author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/31413407/1c5a64e7-10f0-4718-900d-f1118bec02fe

Mobile Web - Chrome
https://github.com/Expensify/App/assets/31413407/8a66ca4a-c429-4ec2-bc65-804d11995514

Mobile Web - Safari
https://github.com/Expensify/App/assets/31413407/bb64253f-2585-434d-b1d7-9103d5b0e8ad

Desktop
https://github.com/Expensify/App/assets/31413407/51e263ac-3911-4c5a-b1db-821ec8859a0b

iOS
https://github.com/Expensify/App/assets/31413407/7cbeda47-59f5-46c5-93d3-b7b282e94eea

Android
https://github.com/Expensify/App/assets/31413407/d1629c20-1dff-476b-b1ab-d67963f2abf0

@narefyev91 @PauloGasparSv I have created the PR but haven't completed the PR author checklist since I wanted to confirm a few small details first -

@PauloGasparSv suggested to use the isValidLegalName inside isValidCardName. I removed the isValidCardName function altogether since it will just call the isValidLegalName inside so why not call it directly?
The error for name on debit card page and legal name page is different -

Should we use the same error messages as well?
3. The regex for legal name allows a name with only numbers. Should we have a limitation of at least 1 alphabet?

@PauloGasparSv suggested to use the isValidLegalName inside isValidCardName. I removed the isValidCardName function altogether since it will just call the isValidLegalName inside so why not call it directly?

I was also worried that the return !_.isEmpty(nameOnCard.trim()) bit that checked if the name is empty would be required too! I just tested and it seems not, so LGTM this way : )

The error for name on debit card page and legal name page is different -
Should we use the same error messages as well?

Great catch, yes! Can you please update that error message so it matches that other one and reflects the new validation rules for that field?

The regex for legal name allows a name with only numbers. Should we have a limitation of at least 1 alphabet?

Since that behavior also happens with the Legal Name field and since that data will be validated by a bunch of other Bank related API's I think it's ok to leave it like that.
@Nikhil-Vats @narefyev91 LMK if you disagree with anything here

@PauloGasparSv I agree with all your comments, updated the code as per your suggestions.

@narefyev91 PR is ready for review.

Reviewer Checklist

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

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] 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)
[ ] 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)

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

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] 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
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] 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 approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] 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)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] 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)
[ ] 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)
[ ] All JSX used for rendering exists in the render method
[ ] 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

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

[ ] 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

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

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

[ ] 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.
[ ] 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)
[ ] 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.
[ ] 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.
[ ] 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.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

: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/PauloGasparSv in version: 1.3.36-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Julesssss in version: 1.3.36-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


chore: add awsService unit tests

Closes #45

:tada: This PR is included in version 1.3.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add useLimitInFirst property to ModelClass type def

Coverage remained the same at 97.003% when pulling 2b17cf6e63943be80309c57b00d64aab67a0c526 on carlbennettnz:patch-1 into a376005a1cde5f7706cdd23946e594ca984172f6 on Vincit:master.

@carlbennettnz Thanks for the PR! Your change doesn't pass the tests though. I'll merge this as soon as this is changed to pass the test.

Looks like making the parameter optional fixed it


Can we have OSX travis builds please?

I'm getting a linker error building the example on OSX at the moment, but seems fine when I build the example under Linux. Would it be possible to add in an OSX build to travis so that I can see it does work on someone else machine?
This is the kind of thing I'm getting:
= note: Undefined symbols for architecture x86_64:
"_PyUnicode_FromStringAndSize", referenced from:
pyo3::objects::string::PyString::new::h9fb8a4b84a834ac6 in libpyo3-49b4944a87639b83.rlib(pyo3-49b4944a87639b83.3c5roxachxe1z4t.rcgu.o)
"_PyDict_Items", referenced from:
pyo3::objects::dict::PyDict::items::h8bd206fbf2672629 in libpyo3-49b4944a87639b83.rlib(pyo3-49b4944a87639b83.9vksi06m8ba06d9.rcgu.o)
To me it seems like these should be left as dynamic external calls to the std python library.
I tried setting:
DYLD_LIBRARY_PATH=/Library/Frameworks/Python.framework/Versions/3.6/lib
but to no avail.
Versions:
OSX High Serra, Python 3.6.1, pyo3: Master

Would it be possible to add in an OSX build to travis so that I can see it does work on someone else machine?

We have people successfully using pyo3 on a mac following the readme. Getting travis build to work is incredibly time consuming and I don't even have a os x machine to reproduce failures locally. You're free to make a pull request and figure out the os x build though as all pull requests are run on travis.

Ah - that's what it was. Sorry didn't spot there was a separate readme in the examples.


Make diagrams editable

Using something like ipe or TikzEdt that saves diagrams in XML/tex (and renders to pdf) would allow for diagrams and figures to be trivially editable -- e.g. to correct mistakes like #284, #282 etc without redoing the whole thing or messing around with inkscape etc.

duplicate of  #300


Enforce context invariant

Description of changes
Fix #541. Statically enforce invariant that Context must contain a record. Also documents that the context must be a restricted expressions, but doesn't enforce this invariant.
I also found that the into_values function did not properly enforce the invariant on PartialValue. It could construct a PartialValue that did not contain an unknown because it assumed that all attributes of a PartialValue record would contain a unknown when it's only the case that at least one will.
Checklist for requesting a review
The change in this PR is (choose one, and delete the other options):

[ ] A breaking change requiring a major version bump to cedar-policy (e.g., changes to the signature of an existing API).
[ ] A backwards-compatible change requiring a minor version bump to cedar-policy (e.g., addition of a new API).
[ ] A bug fix or other functionality change requiring a patch to cedar-policy.
[x] A change "invisible" to users (e.g., documentation, changes to "internal" crates like cedar-policy-core, cedar-validator, etc.)
[ ] A change (breaking or otherwise) that only impacts unreleased or experimental code.

I confirm that this PR (choose one, and delete the other options):

[ ] Updates the "Unreleased" section of the CHANGELOG with a description of my change (required for major/minor version bumps).
[x] Does not update the CHANGELOG because my change does not significantly impact released code.

I confirm that cedar-spec (choose one, and delete the other options):

[x] Does not require updates because my change does not impact the Cedar formal model or DRT infrastructure.
[ ] Requires updates, and I have made / will make these updates myself. (Please include in your description a timeline or link to the relevant PR in cedar-spec, and how you have tested that your updates are correct.)
[ ] Requires updates, but I do not plan to make them in the near future. (Make sure that your changes are hidden behind a feature flag to mark them as experimental.)
[ ] I'm not sure how my change impacts cedar-spec. (Post your PR anyways, and we'll discuss in the comments.)

LGTM. Nit: should we do something similar to Entity?

DRT build fails due to an earlier PR, but I want to make sure I didn't break context serialization for DRT, so i'll hold off on merging until I can build DRT and test that.

Change builds against DRT now and I've tested that context serialization works in the fuzz targets. Should be good to merge


[QUESTION]: Can't create PVs with CSI driver version 2.8 and Powerstore ver 3.6

How can the Team help you today?
Details: ?

@dlavi : Please provide more details and logs for further investigation

After connecting successfully to the hosts ( recognized with the powerstore with iSCSI) I am trying to create PVs ( all done through our automated tools), we are getting error message like the following :
"msg":"could
n't get the software version installed on the powerstore array"

I tired connecting to powerstore https://<IP_ADDRESS>/, but observing can't reach the page. Pease confirm the installation of powerstore is successful on thi IP.

Logs with the exact error was attached in the prev message , please advise which specific log do you need ?

Lavi, Doron @.***) has sent you a protected message.
Read the message            Learn about messages protected by Microsoft Purview Message Encryption.
       Privacy Statement

          Learn More on email encryption.             Microsoft Corporation, One Microsoft Way, Redmond, WA 98052

Please provide me the configuration date used.
if possible, provide Powerstore logs when this error happened.

@dlavi : Thanks for the response


Move to Accessors.jl from Setfield.jl

Changes from Setfield to Accessors

Accessors is based on ComposeFunction, which means all the optics are either function or functor. Also, no get(obj, optic) interface, but optic(obj).
Lens abstract type doesn't exist in Accessors, IdentityLens is just identity, ComposedLens is now ComposedOptic (alias for ComposedFunction)
Inner and Outer are interchanged, l1 ∘ l2 in Setfield is l2 ∘ l1 in Accessors. Accessors adopted ⨟(\bbsemi "opposite compose") from CompositionBase: l1 ∘ l2 in Setfield is l1 ⨟ l2 in Accessors.

Unsure

The equivalence between VarNames are changed, before @varname(y[:], true) and @varname(y[1:100] (where y = zeros(10,10)) are considered to be ==. But with Accesssors, two IndexLens are generally not equivalent even when they have the same field because they are also functors.
Accessor.parse_obj_optic and Setfield.parse_obj_lens behave differently when deal with interpolation. I have tried and failed to maintain the current interface with Accessor.parse_obj_optic, so I am keeping Setfield.parse_obj_lens (and Setfield as a dependency), while replace the Lens with optic in the result of Setfield.parse_obj_lens.
Optics are functions or functors, how would this affect type stability?

By saying "they are functor", I am just making a guess why Accessors doesn't have this == defined as Setfield does: it might be related to the semantic meaning of functions equivalence.

Might be worth raising an issue and asking about this, as IIUC it should be okay to define == for some of the optics, e.g the getindex one.

Is there a reason why we can't just copy-paste the macro? :shrug:


Update tutorial-one-dotnet.md

Remove redundant symbols and empty string.

@kegor Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@kegor Thank you for signing the Contributor License Agreement!

Good catch, thanks.


bg background can't be a variable of a theme.

So bg_color: var(--contrast2) has no effect on background.
It's work only with rgb or hex colours.
Frustrating on light and dark themes.
I would like to have the same colour of my primary background colour.

This is indeed an issue, I will fix that in the next release.

I've released a new beta that fix that issue, here is the changelog:
https://github.com/Clooos/Bubble-Card/releases/tag/v2.0.0-beta.2


Serious "loss of data" issue with new command

If you do the following:

Load any cart
Issue new command to create a new cart
Press Ctrl+S to try and save it

...it'll overwrite previously loaded cart! I've almost lost my Heavy Duty Sprinkler port due to this. Good thing I had a backup!

Possible solution from another open issue:
https://github.com/nesbox/tic.computer/issues/59

fixed in .27


Adding Dagger to the list in README

Adding Dagger to the README

@meirwah  we just open sourced it, but we have been using it widely for about 2 years. Looking to benefit from community support at this point

This library is maintained by the engineering team at Wayfair

@meirwah could we merge this one, please?

Hey @patkivikram I understand this is maintained , but I want to see some OSS traction before adding to this list
since it has only 3 github stars, I want to wait until it reaches a much higher number, than I will add
For now I will close this PR, feel free to reopen once Dagger repo reaches a more significant amount of github stars , which is a key metric to asses the project

hey @meirwah do you think we can add it now? This is more of a chicken and egg problem


dlsym(RTLD_DEFAULT, Pm_Initialize): symbol not found

I'm on macOS 12.5.1-arm and I'm forced to upgrade to Python 3.11 because of another dependency on the project I'm working on.
python-rtmidi unfortunately doesn't support 3.11 and error when compiling rtmidi.
When trying to switch to PortMidi (installed via brew), I choose the back end with:
mido.set_backend('mido.backends.portmidi')

but I get the following error when trying to use mido:
dlsym(RTLD_DEFAULT, Pm_Initialize): symbol not found

Any idea where I'm going wrong?

PortMidi is notoriously difficult to get working properly sometimes.
I'm not yet familiar enough with its intricacies to help out.
I'd try the pygame backend which uses a baked-in PortMidi.


Problem with Titan Lab Kommander after holding switch

I use the Ki2 for screen management with the Titan Lab Kommander. Since I updated to v 2.0 when I start the route it stops working.

Hi, I don't have a Kommander to test with, so you need to provide more details, otherwise I cannot fix this.

First of all thanks for answering.
I start the Karoo 2 and the Ki2 app recognizes the Kommander. Signal
strength of 65-75 dB. Manage device enable.
Before beginning the route, correct operation of the buttons with
their programmed functions.
I start the route and after several presses (I have tried 7-8 times)
the Karoo's low battery alarm goes off in the Di2 and the Kommander
buttons stop working. I need to reboot the Karoo to start over.
Saludos,   Gerardo Alvarez
El lun, 27 feb 2023 a las 15:16, Valter Costa @.***>)
escribió:

Hi, I don't have a Kommander to test with, so you need to provide more
details, otherwise I cannot fix this.
—
Reply to this email directly, view it on GitHub
https://github.com/valterc/ki2/issues/125#issuecomment-1446399927, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A6E6475P6XRVDU5Y46G7LCLWZSZM5ANCNFSM6AAAAAAVJMA4RU
.
You are receiving this because you authored the thread.Message ID:
@.***>

I have been doing tests with the previous battery (at 35%) and with a new one (100%), with the same results.
At the bottom of the app, where the effect of each button press is shown, it is displayed correctly UNTIL I make a long press, regardless of whether it has a function assigned to it or not. From that moment that button stops working.
To go back to the start I need to restart the Karoo and sometimes the buttons don't work like that either.
It really is a bit anarchic,
And I don't know if it will depend more on Kommader than on your application, which until I did the update worked great. Thanks for your attention.

What happens when you hold a button? Does it say 'Holding' in Ki2 details? if yes, does the 'Holding' go away after you release the button?
This is tricky for me to debug, I don't have a Kommander, it might be some problem in the way Kommander sends the button events.

Did some check on Ki2 and I don't see any potential problems, so it's likely that the issues is on Kommander side? Unfortunately I don't have access to a Kommander for further testing 😐
It seems that the low battery problem is also well known, so maybe try to update Kommander to latest firmware and if it still does not fix it, try reaching out to their support.
This what they state in their website:

We are aware of false positive battery warnings. Please ensure you are on the latest firmware of the application as filtering was improved. Some head units tend to freak out we’ve found.
Some of this is related to the battery connection. Under vibration the unit disconnects but takes 1 – 2 seconds to discharge the caps, as such when the unit reboots a Windows or macOS computer will reconnect immediately assuming it was just interference. The BLE characteristic must be requested from the host side to update, since the device rebooted and the computer assumes it was just interference the computer thinks it’s requested the update already while the device has not. This means that under these circumstances the batter level gets stuck on a false low. Disconnecting and reconnecting will force the computer to request the battery updates.
Contact<EMAIL_ADDRESS>for instructions on fixing the battery connection or replacement.

I have the Kommander with the latest firmware update.
Thank you Valterc for your time and dedication.
For now I'll avoid long presses on the switches.😁
Un saludo, Gerardo Alvarez
El vie, 3 mar 2023 a las 12:56, Valter Costa @.***>)
escribió:

Did some check on Ki2 and I don't see any potential problems, so it's
likely that the issues is on Kommander side? Unfortunately I don't have
access to a Kommander for further testing 😐
It seems that the low battery problem is also well known, so maybe try to
update Kommander to latest firmware and if it still does not fix it, try
reaching out to their support.
This what they state in their website:
We are aware of false positive battery warnings. Please ensure you are on
the latest firmware of the application as filtering was improved. Some head
units tend to freak out we’ve found.
Some of this is related to the battery connection. Under vibration the
unit disconnects but takes 1 – 2 seconds to discharge the caps, as such
when the unit reboots a Windows or macOS computer will reconnect
immediately assuming it was just interference. The BLE characteristic must
be requested from the host side to update, since the device rebooted and
the computer assumes it was just interference the computer thinks it’s
requested the update already while the device has not. This means that
under these circumstances the batter level gets stuck on a false low.
Disconnecting and reconnecting will force the computer to request the
battery updates.
Contact @.*** for instructions on fixing the battery
connection or replacement.
—
Reply to this email directly, view it on GitHub
https://github.com/valterc/ki2/issues/125#issuecomment-1453422701, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A6E647ZZY4M3PDEYVTTBCULW2HL7XANCNFSM6AAAAAAVJMA4RU
.
You are receiving this because you authored the thread.Message ID:
@.***>


Model architecture

Hello, thanks for your work.
self.attention(self.embed_wk.permute((1,0,2)), self.res_x.permute((1,0,2)), self.res_x.permute((1,0,2)))
In this code, you use self.embed_wk, self.res_x, self.res_x for Query, Key and Value?
And How about use singleNet output "self.x_im" for Query, Key and Value?
Because there are some important knobs with given workloads, but there are important knobs irrelevant with given workloads.
if use self.embed_wk, self.res_x, self.res_x for Query, Key and Value, then I think it is not include second case.
If you tested it before, I want to know the results.
Thank you.

As you say, there may be important knobs regardless of the given workload.
When we experimented, we didn't find knob that had the same importance for all workloads.
But since we haven't experimented with all the real-world data that can exist, let's assume that there is a significant knob, regardless of the given workload .
If the knob is important regardless of the given workload, the importance of that knob will be high in the second case, and it will be as high in the first case.
And when checking the performance of a database, the workload that the database performs is determined as one, so the first case that gives importance to the important knob when given a specific workload is more appropriate than the second case.


Compound Clip instead of Synced Clip

I would love an option to bring the BRAW clips in as Compound Clips with the audio instead of Synced clips. This would allow for changes to ripple through to the edit/timeline if a change needed to be made to audio patching, processing and color tweaks by opening up the CC and making the change. The way Synced clips work, you can't make a global change to a clip inside that Synced clip timeline—they are all individual copies unless you happen to make this change in the browser before editing the clip. Otherwise you'd have to do a ton of match and replace all your edits with the updated clip in the browser.

This is a slightly tricky one. The main reason for doing sync-clips is so that if you're using dual-system audio, you can use something like Sync-N-Link to sync the sync-clips with your location audio and create new multi-cam clips.
I could add the option to automatically create a new multi-cam clip that contains each sync-clip?
I didn't want to create multi-cam clips to start with, as it seems a bit weird to embed a multi-cam within a multi-cam if using dual-system audio.
Using compound clips instead of sync-clip is an option, but I think it just complicates things in terms of exporting FCPXMLs to Resolve, etc.
Generally speaking, if I'm not using dual-system audio, I always create new multi-cam clips anyway, so I have that control.
I did think of using "normal clips" instead of a sync-clip, but then you can't easily double click on them to control the metadata.

Thinking about this some more, as mentioned above, I think one potential compromise is probably to create "normal" video clips for the main BRAW file, then put that clip inside a multi-cam.

The downside is that this makes it harder to get to the BRAW metadata, as you need to go inside the multi-cam clip, then select the video clip and select "Clip > Open Clip". However, I can't imagine people will be messing with the RAW metadata very often. Ideally you basically set everything you want in the Workflow Extension.
An easier fix would be to just leave it as a sync-clip, but wrap it in a Multicam clip, so you can still double click the angle to get to the RAW controls. If you're using dual-system audio, you'd delete these multi-cam clips and create new ones with the sync-clips.
I've also looked into just replacing sync-clips with compound clips, and it would be a fair bit of re-engineering to swap them over, but certainly possible. The downside is that I feel like FCPX might struggle on a big project if it's filled with Compound Clips. I also feel like it might be harder to conform in Resolve for colour grading?
Currently none of these options work with Sync-N-Link X, and I've reached out to Gregory. I don't think they ever envisaged getting a FCPXML with no actual video files inside. Hopefully it's a relatively easy fix.
Long story short... I'm still not sure what the way solution is.

I'm currently leaning on the idea of just creating a multi-cam clip instead of a sync-clip. This probably gives the most flexibility.

Maybe synced clips are the way to go then. I was thinking if they were compound clips, it would be easier to open and adjust the Braw controls (white balance for example) during the edit, where the synced clips are all silos once you begin editing. Thinking of broll shoots. But for an interview, i can make a Multicam and I guess if I open that synced clip timeline from within the Multicam, those Braw changes will come back through… I just can’t open the synced clip and make changes once the Multicam is made, which is fine since I tend to reject the clips ones the Multicam is made.
Multicams and Compound clips render in the background, so having them as synced clips will avoid rendering for people who have that turned on by default too.

Yes, I think you're right. I'll leave as Synchronised Clips for now, as I think that makes the most sense.
However, I'll have a think about adding an option to "make multi-cams of sync-clips" - so that BRAW Toolbox can automatically create multi-cam clips for all your B-Roll footage, so you don't have to make multi-cams or compound clips manually.

The next beta will have a new settings button with the option to "Create Multicam Clips":


phantomBindingPatterns idea

Some Lua libraries (especially LÖVE 2D) can have many parameters for functions. This can result in situations where you read many lines of code that look like this:
love.graphics.draw(playerSprite, 0, 0, math.rad(90), 1, 1, 0, 0, 16, 16)

Here's what the function call would be likely to look like if it came from JS since JS devs prefer object literals over many parameters, unlike Lua devs who avoid creating tables and function expressions especially for code that is executed multiple times:
love.graphics.draw(playerSprite, {
    positionX: 0,
    positionY: 0,
    orientation: math.rad(90),
    scaleX: 1,
    scaleY: 1,
    offsetX: 0,
    offsetY: 0,
    shearX: 16,
    shearY: 16,
});

Reads a lot better with an object literal describing what each parameter is called.
Another possible call:
love.graphics.draw(playerSprite, { offsetX: 16 });

Since every parameter is optional, only offsetX is used.
So the idea of this directive is to allow functions like this:
declare function draw(drawable: Drawable, x?: number, y?: number, r?: number, ...): void;

To also be declared as:
/** @phantomBindingPattern */
declare function draw(drawable: Drawable, {
    positionX,
    positionY,
    orientation,
    scaleX,
    scaleY,
    offsetX,
    offsetY,
    shearX,
    shearY
}: {
    positionX?: number,
    positionY?: number,
    orientation?: number,
    scaleX?: number,
    scaleY?: number,
    offsetX?: number,
    offsetY?: number,
    shearX?: number,
    shearY?: number,
}): void;

Which would cause this to happen:
draw(playerSprite, { positionX: 0, positionY: 0 });
// draw(playerSprite, 0, 0)

draw(playerSprite, { positionY: 0 });
// draw(playerSprite, nil, 0)

draw(playerSprite, { offsetX: 16 });
// draw(playerSprite, nil, nil, nil, nil, nil, 16)

Which means no table literals are generated and users can take advantage of the improved code readability.
The order of the function declarations' binding pattern elements matter.
declare function print({x, y}): void;
declare function printReverse({y, x}): void;
print({x: 0, y: 1});
// print(0, 1)
printReverse({x: 0, y: 1});
// printReverse(1, 0)

Nested binding patterns are also possible which stick to the same ordering rule
declare function print({x: {x}, y}): void;
print({ x: { x: 0 }, y: 1 });
// print(0, 1)

This should also be usable on  any function implementation which can help reduce the table literals created.
/** @phantomBindingPattern */
function test({ x, y }) {
    console.log(x, y);
}

This destructure would also cause non-object-literals to be destructed appropriately with their properties being assigned to the appropriate positions within a function's parameters. If those properties exist on the object.
const position = { positionX: 0, positionY: 0 };
draw(playerSprite, position);
// draw(playerSprite, position.positionX, position.positionY)

For cases like these it is possible to compute that positionX will be 5 at the end of computing this destructure. However doing things like this could be supported later on.
draw(playerSprite, {
    positionX: 0,
    positionY: 0,
    ...{ positionX: 5 },
});

IMO using type declarations to construct own fake API is a a bad idea. Is it really a common pattern in Lua? I haven't worked with many Lua environments, but if it's specific to LÖVE 2D, why it should be added to a generic Lua transpiler? It is kind of similar to #65. If we won't oppose adding some not lua-specific compile-time transform, we won't be able to oppose adding anything similar, like #65, or function inlining, or maybe some implicit type conversion, etc. If it's basically adding a new API, why not use a just make a wrapper (or a transform if performance matters)?

I found it a bit unclear where to draw the line when some directives can already be used to create fake APIs.

Directive
What it does

@compileMembersOnly
Fakes an enum. Uses only the enum's values

@customConstructor
Fakes a class to allow new to call something else

@pureAbstract
Fakes a class which can be extended from

I thought this idea would be similar to @compileMembersOnly.
But I agree with your opinion, for the sake of keeping this transpiler generic and with the availability of custom transformers features like this should stay away from TypeScriptToLua and would be best implemented in some sort of TypeScript transformer.


Change Spark data source option style

This PR renames iceberg.write.format into write-format in the Spark data source to be aligned with snapshot-id and as-of-timestamp.
This resolves #212.

@rdblue while we have as-of-timestamp, snapshot-id, users can still set Hadoop conf via iceberg.hadoop (e.g. iceberg.hadoop.iceberg.compress.metadata).
Do we want to keep that as is?

@aokolnychyi, I think it would make sense to simplify it to just hadoop.(hadoop option).

@rdblue makes sense to me, shall it be in this PR?

That makes sense to me.

I've updated the way we process Hadoop options as well.

+1, thanks for fixing this, @aokolnychyi!


Update link to reflect new "Fluent API Generator' branding

This PR was included in release version 1.2.1-beta.1 :tada:

This PR was included in release version 1.2.1 :tada:


Integrate Azure Ad B2c UserFlows in this

First of all Thanks for putting this tutorial. it really helps me a lot after spending two days in search of appropriate sample. there is no such sample i found anywhere which is as complete as this one.
Thanks!!!!!!. Now i want to integrate Azure ad b2c using msal. and want to execute azure ad b2c user flows like SignUpandSignIn for login into the android app
What changes i need to do if i want to in integrate azure ad B2C user flows like SignUpAndSignIn.
can you please share any sample with azure ad b2c user flows.

Thanks @tkadam513. Full disclosure: I'm just not that familiar with B2C, which I realize doesn't help you :). I'm starting to hear more and more feedback asking for B2C though, so I'm going to need to track down someone from that part of the company and dig into it. I can't promise that I'll update all of our tutorials for it, but a B2C-specific sample, or maybe a B2C guide, would definitely be reasonable.

Marking this one as resolved/out of scope, since I'm not going to add to this specific example. I've got an item on my backlog now to create a B2C-specific guide/tutorial.


OCM-6569 | fix: Hide the duplicate output of operator roles

https://issues.redhat.com/browse/OCM-6569

/lgtm

/approve


http://tris3d.net/ not Working

Only a blank page with 3 menu buttons at bottom.
Following is the error in console:
bundle.js:8383 Warning: Functions are not valid as a React child. This may happen if you return a Component instead of  from render. Or maybe you meant to call this function rather than return it.
in div (created by HeroBody)
in HeroBody (created by Root)
in section (created by Hero)
in Hero (created by Root)
in Root (created by Connect(Root))
in Connect(Root)
in Provider

@waqast thanks, I updated link with a working one.


Hooking trace detected

One of my banking apps detects this app as gathering sensitive data because of which I'm not able to open my banking app it force closes.
If I uninstall it then I can open my banking app without any problem. If this is a bug please fix this.

Hi @code3AGL3. Thanks for the feedback. We need to determine if your banking app detects Amarok's operations or the app itself. Please try the following:

Reinstall Amarok but do not launch it after installation.
If you have Xposed framework, disable Amarok in the Xposed manager.
Open your banking app to check if it keeps complaining.

As per your instructions I did the procedure and my device is not rooted. I just installed and opened my banking app and still it shows the same threat message. I think its the app not the operation it does.

Well then, please try revoking the "query all packages" permission from your banking app, or try to install Amarok with another package name - you may need to compile it yourself.


KTaNE & Huniepop 1.2 hard crash

For whatever reason, they crash with some access violation.
I've tested disabling resetting static fields and that seems to prevent the problem for KTaNE even though the game is broken when I do that.
After testing static field resetting for Huniepop, find out which field is causing this issue for each game
Disabling static fields

[x] KTaNE

Game breaks but didn't hard crash upon running a TAS multiple times

[x] Huniepop

It was solved with GC collection upon setting a class's static fields to null


Draft: provide caddyfile basic auth for the mlflow

closing #10

Did you tried Traefik ? It should be worth mentioning it here

Did you tried Traefik ? It should be worth mentioning it here

Used it one time for api gateway. For this project IMO it would be best to implement something that 1. will work (so we need a tested PR) 2. be simple to maintain (main user is a data scientist who can just run docker compose up)

@scls19fr

Did you tried Traefik ? It should be worth mentioning it here

I've used it one time for api gateway. For this project IMO it would be best to implement something that 1. will work (so we need a tested PR) 2. be simple to maintain (main user is a data scientist who can just run docker compose up) and 3. possibly provide different auth methods and be easily swappable
If you want to contribute - feel free to do so, im open to accepting PRs here


fix: improve "Native Module 'CameraView' was null!" error message

What
We ran into the error message "Camera: Native Module 'CameraView' was null! Did you run pod install?" while building an app with Expo.
This happened because we were not building a native app directly, but were running the app through the Expo Go app (using the expo start command). Running the app with expo run:ios or expo run:android fixed the problem.
This PR updates the error message to help people who run into the same issue.

Changes
This PR updates the "Native Module 'CameraView' was null!" error message.

Tested on

Related issues

Hey! I just added more details to the error in https://github.com/mrousavy/react-native-vision-camera/pull/1515, this will be merged to V3. Wdyt?

Hey @mrousavy, I looked at the pull request and if I understand correctly, the message would be

react-native-vision-camera is not supported in Expo Go! Use EAS (expo prebuild) or eject to a bare workflow instead.

Using EAS would fix the problem, but is not productive for development. That would mean a lot of waiting for long builds.
I had to look up what ejecting to a bare workflow means.
It's not necessary to do that. It's sufficient to run a development build on a device using expo run:ios or expo run:android (documented under Running a project with a development build) instead of using expo start.
So I think this would help more people:

react-native-vision-camera is not supported in Expo Go! Use EAS (expo prebuild) or run a development build (expo run:[ios|android]) instead.

Should I comment in #1515 ?

Good point, just updated it. I also asked Evan & Brent for their opinions.

Will there be a better error message in an upcoming v2 release as well?

Hey! No, this will be for V3 only. Thanks for your PR, I took the idea into V3. Sorry for not merging this, but it was easier to target V3 now - will improve DX in the future more :)


UnixPb: Symlink adoptopenjdk install directory to temurin install directory on macos

[x] commit message has one of the standard prefixes
[ ] faq.md updated if appropriate
[ ] other documentation is changed or added (if applicable)
[ ] playbook changes run through VPC or QPC (if you have access)
[ ] for inventory.yml changes, bastillion/nagios/jenkins updated accordingly

ref https://github.com/adoptium/infrastructure/issues/2281#issuecomment-1059322275
Since changing from hotspot to temurin, bootjdks (on MacOS) are installed into /Library/Java/JavaVirtualMachines/temurin-*.jdk/ rather than /Library/Java/JavaVirtualMachines/adoptopenjdk-*.jdk/. The build scripts still look in the former directory, https://github.com/adoptium/temurin-build/blob/c4842313fe56dacd4986e35d34d132db979bf8df/build-farm/platform-specific-configurations/mac.sh#L82 as do the playbooks. Making this link would solve this problem.
This would also ensure idempotency for the adoptopenjdk_install role for MacOS

It seems bootjdks 10 and 15 install to an adoptopenjdk named directory, while the others install to a temurin named one. May need to make exceptions for those two

15 shouldn't be needed now, but yes 10 will need an exception - we use it to bootstrap JDK11

Another option (and probably the cleaner one) would be to modify the logic in https://github.com/adoptium/temurin-build/blob/c4842313fe56dacd4986e35d34d132db979bf8df/build-farm/platform-specific-configurations/mac.sh#L82 to pick it up from whichever version is present, with a preference for temurin-

Another option (and probably the cleaner one) would be to modify the logic in https://github.com/adoptium/temurin-build/blob/c4842313fe56dacd4986e35d34d132db979bf8df/build-farm/platform-specific-configurations/mac.sh#L82 to pick it up from whichever version is present, with a preference for temurin-

I would be more inclined for this pr's symlink method as it is similar to the way we do it on our linux machines
root@ecs-bf3a-bf29-0001:~# ls -la /usr/lib/jvm
total 40
drwxr-xr-x  9 root root    4096 Nov 19 01:39 .
drwxr-xr-x 90 root root    4096 Nov 18 21:59 ..
lrwxrwxrwx  1 root root      20 Jul 19  2019 java-1.8.0-openjdk-arm64 -> java-8-openjdk-arm64
-rw-r--r--  1 root root    2766 Apr 21  2021 .java-1.8.0-openjdk-arm64.jinfo
drwxr-xr-x  7 root root    4096 Nov 18 21:36 java-8-openjdk-arm64
lrwxrwxrwx  1 root root      26 Nov 18 22:13 jdk-10 -> /usr/lib/jvm/jdk-10.0.2+13
drwxr-xr-x 10 root jenkins 4096 Nov 27  2018 jdk-10.0.2+13
lrwxrwxrwx  1 root root      26 Nov 18 22:14 jdk-11 -> /usr/lib/jvm/jdk-11.0.13+8
drwxr-xr-x  9 root root    4096 Oct 20 06:24 jdk-11.0.13+8
lrwxrwxrwx  1 root root      25 Nov 18 22:15 jdk-15 -> /usr/lib/jvm/jdk-15.0.2+7
drwxr-xr-x  9 root root    4096 Jan 21  2021 jdk-15.0.2+7
lrwxrwxrwx  1 root root      26 Nov 19 01:34 jdk-16 -> /usr/lib/jvm/jdk-16.0.2+7/
drwxr-xr-x  9 root root    4096 Jul 23  2021 jdk-16.0.2+7
lrwxrwxrwx  1 root root      26 Nov 19 01:39 jdk-17 -> /usr/lib/jvm/jdk-17.0.1+12
drwxr-xr-x  9 root root    4096 Oct 20 20:34 jdk-17.0.1+12
lrwxrwxrwx  1 root root      25 Nov 18 22:11 jdk8 -> /usr/lib/jvm/jdk8u312-b07
drwxr-xr-x  8 root root    4096 Oct 20 04:52 jdk8u312-b07

That is, make one standardised directory/path for the build tools (and any other tool) to look. And then let the playbooks take care of the rest

I have tested this pr for idempotency 👍🏻

That is, make one standardised directory/path for the build tools (and any other tool) to look for. And then let the playbooks take care of the rest

The difference is that we have adoptopenjdk in the name which is an absolete project. Anything we can do to stop referencing that would be a positive thing. If we made the symlinks jdk-11 etc. in all cases (which would be consistent with the other platforms) then that would be better.

I am not sure what the /Library/Java/JavaVirtualMachines directory (bootjdk install directory) looks like on the macos image in the workflow, but I have tested this pr in an empty install directory on test-macincloud-macos1201-x64-1.
Before the install
admin@test-macincloud-macos1201-x64-1 JavaVirtualMachines % ls -la
total 0
drwxr-xr-x  2 root  wheel   64  1 Apr 10:22 .
drwxr-xr-x  4 root  wheel  128 17 Oct 22:30 ..

After the install
admin@test-macincloud-macos1201-x64-1 ~ % ls -la /Library/Java/JavaVirtualMachines
total 0
drwxr-xr-x  12 root  wheel  384  1 Apr 10:24 .
drwxr-xr-x   4 root  wheel  128  1 Apr 10:22 ..
drwxr-xr-x   3 root  wheel   96 21 Jan  2021 adoptopenjdk-15.jdk
lrwxr-xr-x   1 root  wheel   49  1 Apr 10:23 jdk-11 -> /Library/Java/JavaVirtualMachines/temurin-11.jdk/
lrwxr-xr-x   1 root  wheel   54  1 Apr 10:23 jdk-15 -> /Library/Java/JavaVirtualMachines/adoptopenjdk-15.jdk/
lrwxr-xr-x   1 root  wheel   49  1 Apr 10:24 jdk-16 -> /Library/Java/JavaVirtualMachines/temurin-16.jdk/
lrwxr-xr-x   1 root  wheel   49  1 Apr 10:24 jdk-17 -> /Library/Java/JavaVirtualMachines/temurin-17.jdk/
lrwxr-xr-x   1 root  wheel   48  1 Apr 10:22 jdk-8 -> /Library/Java/JavaVirtualMachines/temurin-8.jdk/
drwxr-xr-x   3 root  wheel   96  8 Feb 18:36 temurin-11.jdk
drwxr-xr-x   3 root  wheel   96 22 Jul  2021 temurin-16.jdk
drwxr-xr-x   3 root  wheel   96 20 Jan 12:22 temurin-17.jdk
drwxr-xr-x   3 root  wheel   96 19 Jan 13:12 temurin-8.jdk

@gdams @sxa Where does this workflow job run? I would like to ssh into it and see if I can recreate the error myself

It looks from the error message as though it's trying to create the symlink to three different targets, which mean the detection of where to symlink it to has multiple options.

fqcn errors are still popping up on the ansible linter despite https://github.com/adoptium/infrastructure/pull/2522 @zdtsw

fqcn errors are still popping up on the ansible linter despite #2522 @zdtsw

@Haroon-Khel I suspect that's just because your branch hasn't been rebased onto that change, so not a concern.

fqcn errors are still popping up on the ansible linter despite #2522 @zdtsw

@Haroon-Khel I suspect that's just because your branch hasn't been rebased onto that change, so not a concern.

@Haroon-Khel Could you try to rebase from upstream master  and re-run the job?

That fixed it, thanks 👍🏻 . Will merge after the other checks finish


MRG: Problem to sphinx dir

Coverage remained the same at 55.051% when pulling 9c126bd5fdc66c44ea9f5dc1c7247a22f57af626 on jarrodmillman:problem_to_sphinx_dir into 3673dd8a17436789b2590af838f417452e5dbafc on berkeley-stat222:master.


services/horizon: Fix captive-core's reset of its tmp dir

What
Fix how the Captive Core backend resets its temporary directory. Previously:

it removed its contents, but didn't reset its reference to the path.
it didn't re-create the temporary directory after close()

Why
It made Captive core enter an error loop after a reset was attempted (e.g. after encountering an unexpected state).
Fixes #3145
Known limitations
It may be cleaner to just create another runner instead of just expecting stellarCoreRunner to work after a call to close() (which is how it is today).

It may be cleaner to just create another runner instead of just expecting stellarCoreRunner to work after a call to close() (which is how it is today).

It is much cleaner (and there was a bug preventing this from happening).
I created #3162 , which overrides this PR (sorry @bartekn )


Django REST Framework (alt)

Optional serializers, view sets, and URL routes for use with Django REST Framework. The included views allow authenticated users to view/add/remove devices associated with their account. These views can be used as is or inherited from if you'd like to modify permissions or functionality.
Pretty simple to use. Here's an example of how to include the URL routes:
from push_notifications.django_rest_api import gcm_list, apns_list, gcm_detail, apns_detail

# ... in your URL patterns

# GCM API notifications
url(r'^api/devices/gcm/$',
    gcm_list,
    name='api_devices_gcm_list'),

url(r'^api/devices/gcm/(?P<registration_id>[\w-]+)/$',
    gcm_detail,
    name='api_devices_gcm_detail'),

# APNS notifications
url(r'^api/devices/apns/$',
    apns_list,
    name='api_devices_apns_list'),

url(r'^api/devices/apns/(?P<registration_id>[\w-]+)/$',
    apns_detail,
    name='api_devices_apns_detail'),

Hey guys. It's nice to see that someone did the job before I started. I just wanted to add some notes:

pre_save won't work with DRF 3.0. You need to use perform_create and perform_update instead. I think it would be best to provide both of those methods to be compatible with both versions. Reference: http://www.django-rest-framework.org/topics/3.0-announcement/
This entire app breaks pep8 by using wrong indentations (tabs). This pull request uses 4 spaces which is a valid indentation but inconsistant with the rest of the project. I would suggest using tabs for this pull request and tell the project author to run autopep8 on the entire project.
I don't understand why the other solution offers read only access without filtering by request.user. What is the usage scenario for that? For me it seems reasonable to filter this out for all requests but I'm implementing push notifications for the first time and I don't really know how it works yet.

@brianlittmann As weird as it is the device_id doesn't need to be unique http://stackoverflow.com/a/2338839

Also the registration_id is not unique for the GCMDevice which makes it bad lookup_field (if conflict is created it will raise MultipleObjectsReturned for the detail view)

Guys, I don't use Django-Rest-Framework so I would love some feedback on which approach is preferred by users between #102 and #105.
I'd love to get this merged and release 1.3.

For what it's worth, code-wise, I prefer #105 and possibly expanding on it later.

Closing in favour of #102.


How to run the demo

Hi, i'm recently starting on Node.js so i wasn't able to run the demo."
I've downloaded the project, change the application keys, and type:

node web-server.js

But when i'm entering on localhost:8000 i'am only getting the directory list and when i try with localhost:800/app/index.html i'm getting 404 not found.
Please can you help me to run the demo.
Thanks

Hi @diego1199
Thanks for trying out this library but unfortunately it has not been maintained for a long time.
Since the last update parse.com has been open sourced which means all the parse.com dependencies needs to be updated.


Abbreviate branch name

By default, only show the first 15 characters of the branch name in the prompt.
Fixes #143

(Spec failure is related to #114)

Thanks for the review, merging.


Missing required option 'url' in Paperless-ngx (ca5234a0_paperless-ngx).

It tells me that the the url is required when configuring the plugin.

It's an issue with the repository, I'll try to fix that

Fixed with #28
The option is now,  not required


Add XML schema to dependency verification documentation snippets

Fixes #23662

@bot-gradle test BD

I've triggered the following builds for you:

BuildDistributions build

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you.


Documentation Bug: Examples - Nevergrad for Machine Learning

https://facebookresearch.github.io/nevergrad/machinelearning.html
In the first example in the page, the ng.P.Log function has parameters a_min=0.0001, a_max=1 which is not consistent with the current ng.P.Log function.
This should be lower and upper respectively.

Fixed now.


Added a hyperlink

Added a hyperlink (https://docs.microsoft.com/en-us/azure/web-application-firewall/overview) for the Web application firewall (WAF) text.

@arav-k : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@v-andreaco : Thanks for your contribution! The author(s) have been notified to review your proposed change.

The content has been moved or reconfigured since the pull request was opened. The pull request can't be merged in, so we'll need to close it. If the proposed update still needs to be added to the content, please submit it in a new pull request. Thanks.


Fixed some stuff

Spaces / Sources / Functions / C++ style comments
the or / and problem!

@pmkary
If all is ok. delete the branch.

@sinabakh done!


awfull long time is spend when compiling ../lib/jxl/convolve.cc

hi there,
I experience a long hang when cross compiling libjxl, where it takes about 10 minutes to finish this job:
[182/200] /usr/bin/armv7a-unknown-linux-gnueabihf-g++ -DJPEGXL_MAJOR_VERSION=0 -DJPEGXL_MINOR_VERSION=7 -DJPEGXL_PATCH_VERSION=0 -DJXL_INTERNAL_LIBRARY_BUILD -D__DATE__=\"redacted\" -D__TIMESTAMP__=\"redacted\" -D__TIME__=\"redacted\" -I/var/tmp/portage/portage/media-libs/libjxl-0.7.0_pre20220511/work/libjxl-libjxl-105bf1a -I/var/tmp/portage/portage/media-libs/libjxl-0.7.0_pre20220511/work/libjxl-libjxl-105bf1a/lib/include -I/var/tmp/portage/portage/media-libs/libjxl-0.7.0_pre20220511/work/libjxl-libjxl-105bf1a_build-.arm/lib/include  -O2 -pipe -fomit-frame-pointer -fno-rtti -funwind-tables -fno-omit-frame-pointer -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -fmacro-prefix-map=/var/tmp/portage/portage/media-libs/libjxl-0.7.0_pre20220511/work/libjxl-libjxl-105bf1a=. -Wno-builtin-macro-redefined -Wall -fmerge-all-constants -fno-builtin-fwrite -fno-builtin-fread -Wextra -Wc++11-compat -Warray-bounds -Wformat-security -Wimplicit-fallthrough -Wno-register -Wno-unused-function -Wno-unused-parameter -Wnon-virtual-dtor -Woverloaded-virtual -Wvla -fsized-deallocation -fno-exceptions -fmath-errno -std=c++11 -MD -MT lib/CMakeFiles/jxl_dec-obj.dir/jxl/convolve.cc.o -MF lib/CMakeFiles/jxl_dec-obj.dir/jxl/convolve.cc.o.d -o lib/CMakeFiles/jxl_dec-obj.dir/jxl/convolve.cc.o -c /var/tmp/portage/portage/media-libs/libjxl-0.7.0_pre20220511/work/libjxl-libjxl-105bf1a/lib/jxl/convolve.cc

the compile is stuck for around ten minutes, slowly increases its memory usage from some 500mb to around 900mb, and after some ten minutes somehow manages to overcome its hang.
Expected behavior
I expect the compile to pass through smoothly
Environment

OS: linux-amd64
Compiler version: gcc-10.3.1
CPU type: host x86_64, target armv7a

the full build log is attached:
libjxl-build.log.gz
I don't have any experience with debugging such a hang further, any suggestions?

Did you try other compilers or other versions of gcc?
It could be a compiler performance bug...

Indeed, I'm also leaning towards a compiler bug since convolve.cc hasn't been touched for a very long time and the problem has popped up just recently.

Still a thing?


How to run local job without docker?

I'm looking for some way to run the local jobs without docker for our CI.
Is it currently possible or is docker required?

Hi, Currently it's not possible but I've marked it as a feature-request/enhancement.

Is there any plan to implement this? This is currently blocking our continuous integration of fuzzit.

Hi, Fuzzit was recently acquired by Gitlab. So in the near future the service will be deprecated. It will be available as part of GitLab if you happen to be a GitLab user.
I'll also update that fuzzit was acquired in this repo so it will be more visible, thx!


Commenting git diff for jupyter notebook in GitHub PR

If we continue to use jupyter notebook, it is very important that we find a way to comment git diff of jupyter notebook. To do so, I found so far only ONE way:
https://www.reviewnb.com/ (15$/m for up to 3 private repo, free for opensource)
Should we take it now or should we wait to the point where we start to hate jupyter notebooks because it is so much pain to work on it with several people ?

reopening

ReviewNB integration is working. Closing


set typeface for ColorChooserDialog

hi,
how to set typeface for title and positive and negative buttons of ColorChooserDialog?

Added in <IP_ADDRESS>

Thank you so much


refactor: replacing go-tinylfu with ristretto. #22

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 91.76%. Comparing base (a19ae7d) to head (e43d338).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #24   +/-   ##
=======================================
  Coverage   91.76%   91.76%
=======================================
  Files           4        4
  Lines         704      704
=======================================
  Hits          646      646
  Misses         42       42
  Partials       16       16

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


Wire new organised floating visualization plugins to SAM (including new overlay handling)

Resolves #86
Resolves #90
Resolves https://github.com/VEuPathDB/web-monorepo/issues/198
Resolves https://github.com/VEuPathDB/web-monorepo/issues/134
(now works with regular dev back end)

[x] make useStandaloneVizPlugins hook to create customised plugins for SAM and add plugins prop with fallback to uncustomised statically defined plugins to any component that used the static plugins
[x] re-use StartPage (MBio's new viz picker) in place of NewVisualizationPickerGrouped
[x] retire NewVisualizationPickerGrouped
[x] add props to control layout of StartPage in SAM menu context
[x] proper handling of computations and visualizations (replace computations[0] with something appropriate) see also https://github.com/VEuPathDB/web-eda/issues/1495
[x] boxplot - working :heavy_check_mark:  - avoid country as overlay (apostrophe)
[x] barplot - back end 500s reported
[x] lineplot - back end 500s reported
[x] histogram - back end 500s reported
[x] scatterplot - working :heavy_check_mark: - avoid country as overlay (apostrophe)
[x] conttable - working :heavy_check_mark: - note that graphical plot is disabled to simplify UX (otherwise we have to force the y-variable to use the global overlay variable, and deal with various UX issues)
[x] check reponses are handled correctly when back end 500s are sorted
[x] reinstate useDeepValue in useStandaloneMap to prevent data request when switching between donut and bar on the same variable (apply to selectedOverlayVariable and overlayConfig?)
[x] Upgrade StartPage to use CoreUI elements (headings, <p>, etc) and rename it DEFERRED --> https://github.com/VEuPathDB/web-monorepo/issues/204
[x] remove apps filtering hack (MapAnalysis.tsx) or add a comment to address in this new issue DEFERRED --> https://github.com/VEuPathDB/web-monorepo/issues/161
[x] check EDA and...
[ ] MBio are not broken, especially new viz picker, viz thumbnail handling (Mbio not currently available :sob:)
[x] remove unused imports, console.log etc

Known issues

the return type of the options.getRequestParams functions are HistogramRequestParams or BarplotRequestParams etc (as defined by the generic/template) but I haven't modified those types to include the new overlayConfig props. It seems that it compiles OK because the new requests are a superset of the old ones. Any props not present in the new requests were already optional in the old XXXRequestParams type, e.g. overlayVariable.
effects causing extra back end requests and possibly confusing UX --> https://github.com/VEuPathDB/web-monorepo/issues/205

Update on mbio testing.
Currently testing against https://q1.microbiomedb.org/eda
I've been unable to get past step (1) "Configure" computation using either this branch or main.
The browser hangs just after a request to https://localhost:3000/eda-service/computes/alphadiv?autostart=false which returns without problem the following:
{
	"jobID": "3d094de3cc127d77717837679c3f837e",
	"status": "no-such-job"
}

Next, I will test the code more aggressively.

Update on mbio testing.
Currently testing against https://q1.microbiomedb.org/eda
I've been unable to get past step (1) "Configure" computation using either this branch or main. The browser hangs just after a request to https://localhost:3000/eda-service/computes/alphadiv?autostart=false which returns without problem the following:
{
	"jobID": "3d094de3cc127d77717837679c3f837e",
	"status": "no-such-job"
}

Same behaviour on https://q1.microbiomedb.org front end too, btw

It seems that this only happens with BoxplotVisualization with a computation. Since it's also happening on main, it's probably related to changes I made in #139.

It seems that this only happens with BoxplotVisualization with a computation. Since it's also happening on main, it's probably related to changes I made in #139.

I found the issue. These function calls need to be memoized. The question is, do I fix it on a new PR targeting main, or do I fix it in this one?
https://github.com/VEuPathDB/web-monorepo/blob/7201b8c666d48d38d7024f59c5bbb3e243c0c087/packages/libs/eda/src/lib/core/components/visualizations/implementations/BoxplotVisualization.tsx#L248-L253

Hi @dmfalke
I guess probably against main but I will address feedback to this PR now and maybe we can make the fix here today and save a bit of overhead.

Hi @dmfalke I guess probably against main but I will address feedback to this PR now and maybe we can make the fix here today and save a bit of overhead.

I went ahead and fixed on main. Shall I merge the latest from main into this branch?

Hi @dmfalke I guess probably against main but I will address feedback to this PR now and maybe we can make the fix here today and save a bit of overhead.

I went ahead and fixed on main. Shall I merge the latest from main into this branch?

Merged from main and now testing MBio :-)

Merged from main and now testing MBio :-)

Awesome, thanks. I was just about to merge the latest.

All MBio computations/visualizations seem to work, I've checked the final checkbox :tada:

Fixed a bug with Maine and "count of traps" in https://github.com/VEuPathDB/web-monorepo/pull/143/commits/34272f0a48b13be0d992450ff0e393279de1bf3e
I was wrongly relying on the presence of overlayVariable.vocabulary as indication that we needed to handle as categorical. Sorted now, also the divide by zero, which I'm surprised didn't crash and burn. I chose a colour exactly halfway through the palette for this. Seems to look OK.

Sorted now, also the divide by zero, which I'm surprised didn't crash and burn. I chose a colour exactly halfway through the palette for this. Seems to look OK.

I guess JavaScript treats division by zero as a limit:

I think this fix looks good!

Sorted now, also the divide by zero, which I'm surprised didn't crash and burn. I chose a colour exactly halfway through the palette for this. Seems to look OK.

I guess JavaScript treats division by zero as a limit:
I think this fix looks good!

TIL!


Eng 1570 add endpoint to fetch historical data given an artf ID

Describe your changes and why you are making these changes
This PR adds a route api/artifact/{artfId}/results to list all historical results given an artifact ID. It reuses RawResultResponse object introduced in #425 . For small artifacts like bool, string and numeric, we also include the artifacts' value as response.
This route will be immediately used to fetch metrics / check history for UI redesign.
Related issue number (if any)
ENG-1570
Checklist before requesting a review
Verified in postman, together with a new integration test.
{
    "results": [
        {
            "id": "c1e5514d-ab0c-47c2-897f-1886084d553b",
            "content_path": "5a71b1e8-0a8f-4085-b070-e2eb7fee07be",
            "content_serialized": "true",
            "exec_state": {
                "user_logs": {
                    "stdout": "",
                    "stderr": ""
                },
                "status": "succeeded",
                "failure_type": null,
                "error": null,
                "timestamps": null
            }
        },
        {
            "id": "5109ce64-a44a-41c5-8f24-a481c6cca800",
            "content_path": "bde0a196-f454-45f2-8f73-4065bd632ab2",
            "content_serialized": "true",
            "exec_state": {
                "user_logs": {
                    "stdout": "",
                    "stderr": ""
                },
                "status": "succeeded",
                "failure_type": null,
                "error": null,
                "timestamps": null
            }
        },
        {
            "id": "6618d3d2-c5c3-4940-a7cd-fc609cea0059",
            "content_path": "64f36922-4434-49b6-b1f8-1f62b04b35c3",
            "content_serialized": "true",
            "exec_state": {
                "user_logs": {
                    "stdout": "",
                    "stderr": ""
                },
                "status": "succeeded",
                "failure_type": null,
                "error": null,
                "timestamps": null
            }
        },
        {
            "id": "7a44cd6f-0632-4b98-806c-8bac5455203d",
            "content_path": "a5cc4391-dc05-44e1-a908-ad931268ca4e",
            "content_serialized": "true",
            "exec_state": {
                "user_logs": {
                    "stdout": "",
                    "stderr": ""
                },
                "status": "succeeded",
                "failure_type": null,
                "error": null,
                "timestamps": null
            }
        },
        ...
   ]
}

[x] I have created a descriptive PR title. The PR title should complete the sentence "This PR...".
[x] I have performed a self-review of my code.
[x] I have included a small demo of the changes. For the UI, this would be a screenshot or a Loom video.
[x] If this is a new feature, I have added unit tests and integration tests.
[x] I have run the integration tests locally and they are passing.
[x] I have run the linter script locally (See python3 scripts/run_linters.py -h for usage).
[x] All features on the UI continue to work correctly.
[x] Added one of the following CI labels:

run_integration_test: Runs integration tests
skip_integration_test: Skips integration tests (Should be used when changes are ONLY documentation/UI)

@kenxu95 thanks for ideas! I think it's a good question on how to track the version update today, let's discuss in eng sync offline.
Ideally I think we need some version-free ID to track changes across versions. For now if name is good enough I think we should just change to name, which is not very hard (we just need to change artf results from fetch by ID to fetch by name)

For null timestamp, these are from artifacts created in older version of workflows. We could migrate these data if necessary but I don't think it's high-pri for now. Newly created wf after #452 will have these timestamps, as reflected in integration tests

Oh and also for #1, this version tracks the same artifact from potentially different dag as we get all results by artf ID.

@kenxu95 updated the query to bound both on artifact name and workflowId


Discussion about custom total entries

Hi, I'm using Backpack 3.5 and I have some questions about how calculation entries is done with group by.
We are using a filter for check users that has more or less invoices than X number, something like this:
$this->crud->addFilter([
            'name'       => 'number',
            'type'       => 'range',
            'label'      => 'Number of Invoices',
            'label_from' => 'min value',
            'label_to'   => 'max value',
        ],
            false,
            function ($value) { // if the filter is active

                $range = json_decode($value);
                if ($range->from) {
                    $this->crud->query = $this->crud->query->select('users.*')->leftJoin('invoices', 'users._id', '=', 'invoices.IdUser')->groupBy('users._id')->havingRaw('COUNT(invoices."IdUser") >= ' . (float) $range->from);

                }
                if ($range->to) {
                    $this->crud->query = $this->crud->query->select('users.*')->leftJoin('invoices', 'users._id', '=', 'invoices.IdUser')->groupBy('users._id')->havingRaw('COUNT(invoices."IdUser") <= ' . (float) $range->to);

                }
            });

The filter works fine, and I have the correct information, but I have a problem with the total of elements for the pagination... I have checked that it show the first number of invoices to show the total of users that pass the filter.
I know where is the problem, because backpack use a custom query for count how much rows are in total to make the pagination works, with a query like this (this is checking users with more or equal than 100 invoices):
select count(*) as aggregate from users."users"
left join users."invoices" on users."users"."_id" = users."invoices"."IdUser"
group by users."users"."_id"
having COUNT(users.invoices."IdUser") >= 100

The output of this query is a lot of rows, and I don't know why it don't get the total rows sum.

If you see this picture carefully you will see that my total is not correct, it should show 19 entries, and not the 233 entries, that is the the result always of the first row.

My question is... is this a bug? Or Backpack not works very well with this kind of filters... find something similar here (https://github.com/Laravel-Backpack/CRUD/issues/1519), but I would like please a response from @tabacitu. Can I overwrite this result entries total to make my pagination works fine?
Thank you much for this amazing product. We started to work last week with it, and except this issue, all works like a charm.

Hi, I have been deeping on the code, and I think it would be greeat if I caould overwrite the totalRaws in method.
https://github.com/Laravel-Backpack/CRUD/blob/03261b30046dca5a4d19403924aaf2807290a542/src/PanelTraits/Search.php#L312

Ok, the problem is here... https://github.com/Laravel-Backpack/CRUD/blob/8b094c1e691deea8a9ae89181bcfb9c28c9d0930/src/app/Http/Controllers/Operations/ListOperation.php#L34
You are making here the calculation... but this is not correct "always"... maybe we need to count the total of the rows in some cases... any ideas? Thanks.

Hi @chemitaxis ,
You can actually easily overwrite how that happens. Just place a search() method inside your ProductCrudController, and Backpack will pick it up instead. There, you can copy-paste the original code, and change $totalRows to whatever you'd like.

Oups - sorry, I missed the point here :-)) You don't want to customize it for yourself, when filters are applied the count isn't quite right.
Yes, I do think this is a small bug. Let me figure investigate and I'll get back to you :-)
Thanks, cheers!

Done! Just pushed a fix for it, the total should now show the right amount - it's always the number of rows in the database. Don't know how everybody missed this until now :-)
Thank you @chemitaxis !

Thanks @tabacitu I have added this to my custom search, and works fine in ALL cases... I think it solves the problem with clauses GROUP_BY.
$items = $this->crud->query->get()->count();
$filteredRows = $items > 1 ? $items : $this->crud->count();

@tabacitu here is work-around with GROUP BY statements:
    /**
     * The search function that is called by the data table.
     *
     * @return array JSON Array of cells in HTML form.
     */
    public function search()
    {
        $this->crud->hasAccessOrFail('list');
        $this->crud->setOperation('list');

        $totalRows = $this->crud->model->count();

        $query = clone $this->crud->query;
        $query->select = [];
        $query->selectRaw('COUNT(*) as aggregate');

        $filteredRows = \DB::selectOne("SELECT SUM(aggregate) FROM ({$query->toSql()}) t", $query->getBindings())->sum;

        // ....

@tabacitu I think it will be great, if you will add check for GROUP BY statement to:
/**
 * Count the number of results.
 * @return int
 */
public function count()
{
    return $this->query->count();
}

And then apply the correct way to count when GROUP BY is used in query.

Hello, after a year (v4.0.60) I can't make it work yet.
Using groupBy the count and the pagination stop working.
What can I do?
Thanks in advance.


Optimize eq for same object floc 4321

Just creating this PR to trigger travis.

I'm pretty sure travis will keep working even if I close this, so I'm going to close this PR. Travis is now set up for ClusterHQ/pyrsistent, so we should see that on all of our pushes in the future.


pull request for e2e test at 01/15/2017 16:26:08

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Couldn't find any CAD Device

Wondering if anyone can help me on this, I gave up on this integration 6months back as fitted whole house monitoring but this only covers electricity. Would be really useful to get my Gas usage.
Ive installed via integrations in HA entered username & password, bright app is all set up & working well for both Gas & Electric but I get this error in my HA Logs
Error setting up entry for hildebrandglow
12:22:38 – (ERROR) Hildebrand Glow (custom integration)
Couldn't find any CAD devices (e.g. Glow Stick)
12:22:38 – (ERROR) Hildebrand Glow (custom integration)
I thought the point was I didn't need a CAD with the bright app set up. Any ideas? Perhaps user error on my part :-)

my mistake was using the old version found here https://github.com/unlobito/ha-hildebrandglow.


Workflow unable to pull Docker image to run action

Bug Report
Most of the times that my actions run, I get the error in the log below and then the rest of the workflow fails.
edit: sometimes it works, so maybe this is an issue with some runners?
Workflow File
    - name: Code Coverage Summary Report
      uses<EMAIL_ADDRESS>      with:
        filename: coverage/coverage.cobertura.xml
        badge: true
        format: 'markdown'
        output: 'both'

Actions Log
Pull down action image 'ghcr.io/irongut/codecoveragesummary:v1.0.2'
  /usr/bin/docker pull ghcr.io/irongut/codecoveragesummary:v1.0.2
  Error response from daemon: received unexpected HTTP status: 503 Service Unavailable
  Warning: Docker pull failed with exit code 1, back off 6.596 seconds before retry.
  /usr/bin/docker pull ghcr.io/irongut/codecoveragesummary:v1.0.2
  Error response from daemon: received unexpected HTTP status: 503 Service Unavailable
  Warning: Docker pull failed with exit code 1, back off 8.36 seconds before retry.
  /usr/bin/docker pull ghcr.io/irongut/codecoveragesummary:v1.0.2
  Error response from daemon: Head "ghcr.io/v2/irongut/codecoveragesummary/manifests/v1.0.2": received unexpected HTTP status: 503 Service Unavailable
Error: Docker pull failed with exit code 1

Expected Behavior
Actions is able to pull the Docker image for this action and run my entire workflow.
Additional Context
I first noticed it today. It was fine on Friday.
Linked To

@fjmorel I've just tried one of my pipelines and it didn't have any problems pulling the container. There was a service incident for GitHub Packages earlier today which was probably the problem you experienced.
If there is an extended outage for Packages you could try the previous version of the action (v1.0.1) which doesn't use the cached container. Your workflow will take 30 seconds longer to run but the action has almost the same output.

Ah, I didn't see that. Thank you for looking into it!


feat: add zoom option in page frontmatter

This PR adds a zoom option in every page's frontmatter to scale each slide separately.

zoom: 0.3
zoom: 1 (default)
zoom: 3

Resolves #1075.
If we want to zoom all the slides, we can use the canvasWidth option in the headmatter, which has almost the same effect as applying this zoom option to all slides.

I've just tested it. It works well I think.


chore(main): release 2.0.0

:robot: I have created a release beep boop
2.0.0 (2024-09-11)
⚠ BREAKING CHANGES

remove support for old config

Code Refactoring

remove support for old config (f0f02a9)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v2.0.0
:sunflower:


Finish off bash/zsh completion

Right now bash/zsh completion is a hidden feature which we could flesh out quite a bit more.

I'm going to leave this one out for now while I work on things upstream in kingpin.

https://getcarina.com/docs/reference/carina-cli/#generate-bash-completion


update mapping of GO:0004087

Hi Pascale, Harold,
RHEA:10624 2 ATP + CO2 + H2O + NH4+ = 2 ADP + carbamoyl phosphate + 3 H+ + phosphate
seems to be an old version of the EC <IP_ADDRESS> IUBMB reaction.
RHEA:10624 is currently mapped to GO:0004087
I'm going to OBSOLETE RHEA:10624 (RHEA:10624 has been replaced by RHEA:18029)
Please could you update the mapping of GO:0004087 to RHEA:18029 and its definition
RHEA:18029 (EC <IP_ADDRESS>)
2 ATP + hydrogencarbonate + NH4+ = 2 ADP + carbamoyl phosphate + 2 H+ + phosphate
Thank you,
Anne

Done.