Add initial PostgreSQL implementation for get & put operations

TestStrategy
How?

PostgresIntegrationTest uses testcontainers to spin up docker containers for each test.
AbstractKVStoreIntegrationTest defines behavior that every impl of KVStore needs to follow. Different impl's can re-use the same abstract class to test their impl against it.
We will keep on adding tests to this as we add more impl details.

also, would be good to have an integration test.  not sure if it's better to have it against postgres (more precise model of a production environment) or against a lightweight in-memory SQL DB (faster to run the tests).

Added an integration test for AbstractKVStore and PostgresIntegration test uses it.
Can review it as part of this PR or we can separate it out as well in #5


[e2e]: go push branch1 config-ldflags slsa3

Repo: https://github.com/slsa-framework/example-package/tree/branch1
Run: https://github.com/slsa-framework/example-package/actions/runs/11512838066
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.push.branch1.config-ldflags.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.go.push.branch1.config-ldflags.slsa3.yml
Trigger: push
Branch: branch1
Date: Fri Oct 25 06:14:15 UTC 2024

Repo: https://github.com/slsa-framework/example-package/tree/branch1
Run: https://github.com/slsa-framework/example-package/actions/runs/11529515969
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.push.branch1.config-ldflags.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.go.push.branch1.config-ldflags.slsa3.yml
Trigger: push
Branch: branch1
Date: Sat Oct 26 06:14:38 UTC 2024
Tests are passing now. Closing this issue.


Issues running the provided examples

Hi, I have tried to run DHALSIM for 3 of the provided examples (WADI, Anytown and Ky3) and I have run into problem with the WNTR simulation not converging after 2999 iterations or with issues by requesting dynamic properties from an unsolved network.
Question
Why is this the case? Are the examples incorrect or do you think there is a problem with my installation?
Installation and machine configuration
I used the provided ./install.sh script and installed DHALSIM and its dependencies on a VM running Ubuntu 20.04.1. The VM has 2 cores and 4GB of RAM.
Changes to the default configuration
The only changes I made to the default config files was enabling debug logging.
Running DHALSIM
Run using sudo dhalsim <config_name>.yaml inside the examples folder.
WADI
Simulation never converges.

Ky3
Simulation stops converging at iteration 89. (I did 2 runs on separate days and both times this occurred at iteration 89.

Anytown
Problem with requesting dynamic properties from an unsolved network.

Hello,
Thank you for your question,
I don't think there is an issue with your installation. Did you install on Ubuntu 20.04?. We mostly use C-Town for all our experiments, so probably something broke up after an update. Could you try running a small experiment on C-Town? Say, 288 iterations (one day with a timestep of 300 seconds).

Thank you for the quick response,
If I run the ctown example with 288 iterations I still get the following errors:
...
*** Cleanup complete.
tcpdump: listening on plc3attac-eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
/usr/local/lib/python3.8/dist-packages/epynet/baseobject.py:63: UserWarning: requesting dynamic properties from an unsolved network
  warnings.warn("requesting dynamic properties from an unsolved network")
 [Elapsed Time: 0:00:00 - 0 of 288] |                       | [ETA:  --:--:--]
/usr/local/lib/python3.8/dist-packages/epynet/baseobject.py:63: UserWarning: requesting dynamic properties from an unsolved network
  warnings.warn("requesting dynamic properties from an unsolved network")
 [Elapsed Time: 0:00:24 - 1 of 288] |                       | [ETA:   1:56:03]
/usr/local/lib/python3.8/dist-packages/epynet/baseobject.py:63: UserWarning: requesting dynamic properties from an unsolved network
  warnings.warn("requesting dynamic properties from an unsolved network")
 [Elapsed Time: 0:01:05 - 2 of 288] |                       | [ETA:   2:36:02]
/usr/local/lib/python3.8/dist-packages/epynet/baseobject.py:63: UserWarning: requesting dynamic properties from an unsolved network
  warnings.warn("requesting dynamic properties from an unsolved network")
 [Elapsed Time: 0:01:44 - 3 of 288] |                       | [ETA:   2:45:14]
/usr/local/lib/python3.8/dist-packages/epynet/baseobject.py:63: UserWarning: requesting dynamic properties from an unsolved network
  warnings.warn("requesting dynamic properties from an unsolved network")
 [Elapsed Time: 0:02:17 - 4 of 288] |                       | [ETA:   2:42:42]

If I change the log_level to debug I can also see a lot of Python Exceptions being thrown:

These exceptions are not visible in the normal info loggin_level.
Below I have also added the config file for completeness.
inp_file: ctown_map.inp
#iterations: 2880
iterations: 288
#iterations: 70
network_topology_type: complex
plcs: !include ctown_plcs.yaml

log_level: debug
simulator: epynet
demand: pdd
attacks: !include ctown_unconstrained_blackbox_concealment_mitm.yaml
#attacks: !include ctown_concealment_mitm_value.yaml
#attacks: !include ctown_payload_replay_conceal.yaml
#ma attacks: !include ctown_network_replay_conceal.yaml

Below is the output of uname -a:
Linux VDesktop 5.15.0-117-generic #127~20.04.1-Ubuntu SMP Thu Jul 11 15:36:12 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Hello,
Thank you for runningthe example, did the simulartion finished executing? Those errors are printed when one of the PLC/SCADA are unable to receive one message, but the emulation and the commuication keeps going, this is just a message showing you that there was a connection error and the node will retry to get it, you can check this behaviour in: https://github.com/Critical-Infrastructure-Systems-Lab/DHALSIM/blob/master/dhalsim/python2/generic_plc.py Line 277.
If the simulation finished, then probably there is an issue with the other examples and DHALSIM code, I could try finding sometime in the coming weeks to launch experiments with those topologies and check what might be the issue.

Hey,
After running ctown for 288 iterations it seems to have completed successfully. At this time I have only looked at the ground_truth values and te SCADA pcap, which seem promising. Soon I will try running the full 2880 iterations.
Thank you for your help.
I also had a second question. Have you seen the work done in IPAL and have you considered extending the CIP support of their transcriber to also (officially) support DHALSIM?

Hello,
I tried the topologies with 288 iterations and they seem to work ok, I think there might have been an issue with the latest wntr versions. I'm closing the issue for now, but please feel free to raise it again if you face further issues.


Implementation of ios push notifications

Currently untested, due to some issues of apns certificate on chat.zulip.org (Will be resolved soon)
Not sure if Bundle ID should be the same as the certificate ID, but a provisioning team needs to be create to test this on a device

The displaying content part of the notification is mostly related from the server (unlike GCM), hence a PR will be landing there.

Automated message from Dropbox CLA bot
@kunall17, it looks like you've already signed the Dropbox CLA. Thanks!

At a first glance the code looks ok. I'll do a more thorough review and merge if OK.
Make sure the code does not crash the app even if the server has no support for notifications, both for iOS and Android, because we might have to connect to older servers that don't have that.

Rebase and try to test and improve the code and prepare it for the server with a certificate. Likely we will have it very soon and then it will be highest priority to make it work.

Make sure tests pass.

Done

Nice. Getting it in.


What's the meaning of “/dev/hyperenclave”？

What's the meaning of “/dev/hyperenclave”？Is it a device or somthing？

Hi @Ariel08081214 , it is the device files for HyperEnclave's Driver.

Thanks, I got it!


When updating all my configuration is gone

Current behavior
when I updated all my previous configuration is gone :
configuration of symbole char
color
...
Expected behavior
to keep all my configuration
Relevant Zsh configuration (.zshrc)
# Your configuration here

Environment
Spaceship version:  (use echo $SPACESHIP_VERSION)
Zsh version:
Zsh framework: <None/oh-my-zsh/prezto/etc>
Zsh plugin manager: <None/antigen/zplug/etc>
Terminal emulator: <iTerm/Hyper/Terminator/etc>
Operating system: <macOS/Windows/Linux>
Screenshot
Provide a screenshot that shows your issue.

Possible solution

Excuse us for the trouble. Could you please provide more information about your issue ? If I understand correctly you're missing your char section configuration ?

yes , like all the configuration for the prompt written in my .zshrc file , are all gone deleted

We don't tamper with .zshrc files during updates. Only time we touch .zshrc is on configuring as theme during installation, all the changes after that are through our repository.

all the configuration for the prompt written in my .zshrc file , are all gone deleted

What was your update method ?
Can you make sure .zshrc file exists and is accessible to system ?
Are you missing only prompt configuration or something else missing ?

I am using npm-up , an npm package for updating , and it just removed my spaceship prompt configuration that’s it , it kept all my others alias and functions

That's strange :thinking: I believe this is the one we're talking about ? Was there any specific options passed to npm-up ?
This doesn't look like result of direct activity by spaceship-prompt and I won't be able to check more on this soon, appreciate if we get some help on this one.

I just pass g ( global ) and i ( install ) as options , i had a backup for my zshrc file but just saying about this problem, if i am the only one then it’s not a big deal

It's great that you filed this report @xhaythemx. We'll surely look into it.


Support labeled frames and/or framegroups

Hi, this is a transcription of part of a discord conversation on theatrejs channel, moved here by suggestion of @AriaMinaei .
Basically I'm using the timeline for scrollable website transitions...
so labelling a frame group would probably be the most flexible (it would be possible to name either one frame or several ones) to work with that, instead of having to take note of individual time frame for each transition.
On Flash at least and very probably on other editors, there was an ability to name a keyframe or a range of keyframes.

Having that, the usage in terms of play or some sort of playToPosition(frame time or frame name) api could be something like the following: it would nice to be to be able to say "go to that frame group" either jump there instantaneously or playing from the current sequence position.
It could diverge slightly if when the play is triggered was from a frame before or after that frame group

if I was on a frame before the frame group it would play until the beginning of the framegroup,
if the current position was after, it could play to the end of the framegroup)...

Other parameter for that would be either stop on hitting the framegroup or also playing it through.
well I guess this might sound confusing but feel free to ask me any clarifications
Great work!

This is now being worked on. @vezwork will attach the PR


[BUILD] Building Android Native Assets for libHarfBuzzSharp fails in an error

Description
When I try to build Android native assets in native\android folder using dotnet cake libSkiaSharp builds ok, but libHarfBuzzSharp fails with the following error:
========================================
libHarfBuzzSharp
========================================
make: *** No rule to make target 'C:/repos/mono/SkiaSharp/externals/skia/third_party/externals/harfbuzz/src/harfbuzz-subset.cc', needed by 'obj/local/x86/objs/HarfBuzzSharp/C_/repos/mono/SkiaSharp/externals/skia/third_party/externals/harfbuzz/src/harfbuzz-subset.o'.  Stop.
An error occurred when executing task 'libHarfBuzzSharp'.
Error: Process 'C:/Microsoft/AndroidNDK/android-ndk-r23c/ndk-build.cmd' failed with error: 2

Any idea how to resolve this error?
I am using the latest code in the SkiaSharp repository (as of 2nd Sep 2023).
Code
No code.
Expected Behavior
libHarfBuzzSharp native assets will build.
Actual Behavior
libHarfBuzzSharp does not build.
Version of SkiaSharp
Other (Please indicate in the description)
Last Known Good Version of SkiaSharp
Other (Please indicate in the description)
IDE / Editor
Visual Studio (Windows)
Platform / Operating System
Android
Platform / Operating System Version
Windows 11
Devices
No response
Relevant Screenshots
No response
Relevant Log Output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

@mattleibow This seems to be caused by ../../../externals/skia/third_party/externals/harfbuzz/src directory missing from the SkiaSharp repository (or more precisely, its linked mono/Skia repository). Would it be possible to add this src directory along with its source files to the repository, or is the idea to download the sources somehow separately?

How did you clone this? You need to make sure submodules are also pulled and then skia goes and pulls additional dependencies in the git-sync-deps cake task.
Basically, SkiaSharp uses submodules, and skia uses a manually pull on top.

I think I used Visual Studio's Clone Repository with https://github.com/mono/SkiaSharp.git. Is there a better way to do it?

I suppose it is fine to use, you just need to run git submodule update --init --recursive in the directory after the clone.
Or just use the GitHub desktop app as it will do it automatically. Not sure why VS does not clone submodules...

Thanks! I will try that out!

It's working now.


Buid failed

this is appearing, what can it be?

Scroll to the top. I can't see the main issue.


refine def spindle pole body anchor

GO:0106166    spindle pole body anchor
Current Definition
Interacting selectively and non-covalently with a mitotic spindle pole body and a membrane, in order to maintain specific membrane location of the spindle pole body. PMID:9763447
refine to
Interacting selectively and non-covalently with a mitotic spindle pole body and (THE NUCLEAR) membrane, in order to maintain the ~specific~ membrane location of the spindle pole body. PMID:9763447
The SPB is  only anchored in the nuclear membrane

done


Is this normal?

Not sure if this is something bad.

http://lifeonubuntu.com/tar-errors-ignoring-unknown-extended-header-keyword/

Not sure if this is something bad.

I looked it up before falling asleep. Apparently is has something to do with how tar files are being handled. This can be marked closed. lol
Get Outlook for iOShttps://aka.ms/o0ukef

From: neizvedaniydag @.>
Sent: Monday, October 3, 2022 7:31:52 AM
To: palera1n/palera1n @.>
Cc: GSITechStudent @.>; Author @.>
Subject: Re: [palera1n/palera1n] Is this normal? (Issue #71)
http://lifeonubuntu.com/tar-errors-ignoring-unknown-extended-header-keyword/
[Screen Shot 2022-10-02 at 11 52 15 PM]https://user-images.githubusercontent.com/104477485/193498663-4fecf064-2143-431c-a57f-5351f46d5d04.png
Not sure if this is something bad.
—
Reply to this email directly, view it on GitHubhttps://github.com/palera1n/palera1n/issues/71#issuecomment-1265306696, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AY5DGLO6IP7Q2ME4SYARA7LWBK72RANCNFSM6AAAAAAQ3G3PJA.
You are receiving this because you authored the thread.Message ID: @.***>

Yep that’s fine, it happens when extracting the ramdisk tar


Potencial features to Improve the game experience

Use spacebar instead of enter key to jump
Limit number of characters to the name of the player (suggested 8 characters)
Assign random names to users who don't write a player name
Don't allow repeating letters in the player name, except rr and ll
Show the player name while playing
Save the player name when clicking the start button
Use input to allow user write the player name when playing in mobile device
Improve mobile view or attach it to a facebook game
Don't allow using badwords for the player name
Limit the use of digits in the player name
If the player is in the platform on the lowest level, avoid creating the new platform on the highest level
Avoid creating virus at the very beginning of the game
Make the bubble gives the player a superpower to kill virus

Some more:

Remember the player name when playing from the same device
Only save scores that are on the top scorers


💭 Image Compression and Frame Processing Question

Question
I have two questions. One relating to image capture and one related to frame processing.
What we are trying to do:
We are trying to apply a technique called "Background-Oriented Schlieren" to identify airflow using images. To do this you can subtract the pixels of 2 stationary images from each other to see if there has been a pixel shift that indicates airflow (dependent on air temperature).
What we have implemented:
So far I have been able to use this library to implement the image capture portion. We then send the images to a server for processing to identify the pixels shifting and return manipulated images to the phone for display. It's a pretty straightforward approach but not the most user friendly. Ideally we would like to do this processing on the device but it's fairly computationally intensive to iterate through all the pixels and a cloud base solution has been the most effective so far.
Question 1: How does this library handle the compression of image files?
When I call takePhoto() or takeSnapshot() it creates a temporary image file that I am able to grab from the device and send off for processing. Would you be able to tell me what sort of compression is being done to those .png files that are temporarily stored within the application data? Is this something that the library is doing or is it device/hardware specific?
Question 2: Is it possible to use 2 frames within a frame processor?
My first attempt at an implementation was using a frame processor but I pivoted from their because of inexperience and trouble using 2 frames within the frame processor. Is it possible to use 2 frames within a frame processor? All of the examples I have seen are looking at single frames and I would appreciate knowing if I'm on a fools errand trying to compare two frames within the frame processor architecture.
Thank you for any info that can be provided!
What I tried
No response
VisionCamera Version
4.5.0
Additional information

[ ] I am using Expo
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar questions in the issues page as well as in the discussions page and found none.

Hi!

1.: How does this library handle the compression of image files?
Compression is handled using normal device JPEG encoders. That's it. For very obvious reasons, I don't choose any opinionated compression algorithms or settings. "to those .png files" What png files? VisionCamera does not use png.

Is it possible to use 2 frames within a frame processor?

A Frame Processor is a stream of Frames. You can queue up frames if you want. So yes if that answers your question.

Hi!

1.: How does this library handle the compression of image files?

Compression is handled using normal device JPEG encoders. That's it. For very obvious reasons, I don't choose any opinionated compression algorithms or settings. "to those .png files" What png files? VisionCamera does not use png.

Is it possible to use 2 frames within a frame processor?

A Frame Processor is a stream of Frames. You can queue up frames if you want. So yes if that answers your question.

My bad, definitely meant "jpg" not "png". Thanks for the feedback. Good to know I can use multiple frames and I am not trying to do something impossible. Appreciate your work!


add sbin to the path in the readme instructions

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

as promised,  just add sbin to the path setup instructions as privoxy installs to there (and i'm imagining it's not the only one)

Oh, BTW, please ignore the Travis CI failure on macOS. It's a known issue that I'm working on resolving (see https://github.com/Linuxbrew/brew/pull/462#issuecomment-323144151).

Thanks, Jordan! Looks good to me.


boards: adafruit_feather_stm32f405: Fix Feather Header pins

The current gpio-mapping for adafruit_feather_stm32f405 contains issues (see https://github.com/zephyrproject-rtos/zephyr/issues/33326), this very small pull request fixes them.
The mapping was taken from the documentation at
https://learn.adafruit.com/adafruit-stm32f405-feather-express/pinouts, screenshot:

Name / GPIO

current mapping
correction

RX / GPIO 0
PB11
&gpiob 11

TX / GPIO 1
PB10
&gpiob 10

SDA / GPIO 14
PB7
&gpiob 7

SCL / GPIO 15
PB6
&gpiob 6

GPIO 5
PC7
&gpioc 7

GPIO 6
PC6
&gpioc 6

GPIO 9
PB8
&gpioc 5 :x:
&gpiob 8

GPIO 10
PB9
&gpioc 4 :x:
&gpiob 9

GPIO 11
PC3
&gpioc 3

GPIO 12
PC2
&gpioc 2

GPIO 13
PC1
&gpioc 1

SCK / GPIO23
PB13
&gpiob 13

MISO / GPIO24
PB14
&gpiob 14

MOSI / GPIO25
PB15
&gpiob 15

A0 / GPIO 16
PA4
&gpioa 4

A1 / GPIO 17
PA5
&gpioa 5

A2 / GPIO18
PA6
&gpioa 6

A3 / GPIO19
PA7
&gpioa 7

A4 / GPIO20
PC4
&gpioc 4

A5 / GPIO21
PC5
&gpioc 5

closes #33326

Hi @maxhbr, this looks like a bug to me and I agree that your PR fixes it.


WIP KOGITO-5468: DMN Tabular Input

WIP PR
On this PR:

Modify the boxed-component to enable dynamic data as input so it can be used by the DMN Runner.
Add a new build that will be used to publish the component on npm.

Known issues

All recursive components (Invocation, Context, Function, List) returns to their initial state after an update is made on a field that has being already assign to a field type.
e.g. Create a Context field, change the first row to be a "Literal Expression". Add new rows, updating the first literal expression will erase all previously add rows.
Function PMML: second Select field can't be changed.

@karreiro Hi! This is a WIP PR, however, I think we would benefit a lot if you good take a look at the changes Luiz already made. We needed to change places not directly related to our use-case to enable it, and it would be great if you could take a look and provide us with feedback to know if we're going on the right direction. Thanks in advance!!

Thank you for this PR, @ljmotta - also, thanks for your thoughts, @tiagobento.
I'll review it for sure, but @vpellegrino is the SME for the new Boxed Expression component. I believe he can provide valuable thoughts from the architecture perspective (essentially from the update-propagation-mechanism aspect).
Thanks again for this effort! 🚀

@vpellegrino Hi Valentino! Please reach out if you have questions about something on the code!

Hi @ljmotta and @tiagobento
I will start to review this PR today. Maybe it will require some time, but I will reach out to you immediately if anything is unclear.
Thanks for this PR :)

I've checked out your branch, firstly to understand the overall solution and related architecture.
That's a thing I've noticed: the boxed-expression-components's quality-checks script (https://github.com/kiegroup/kogito-editors-java/blob/f0912ca114b23ddcbd466bdaf9eb8cdb1204ec51/kogito-editors-js/packages/boxed-expression-component/package.json#L18) is failing.

I've not yet started to look at code, file by file, but I wanted to reach out to you immediately. I have two observations:

Should dmn-runner-showcase folder be not inside boxed-expression-component? Logically it is a self-contained project that uses the boxed-expression-component. Any technical reason for not being an isolated project which has boxed-expression-component as a dependency? Furthermore, I think that a README.md would be really appreciated, to understand the project's purpose is and how to compile&launch it.
Typically, when I need to use an external component, and I need it to behave slightly differently to cover my use case, I prefer to wrap it with another component to avoid modifying it. I can see that in this specific case, the boxed-expression-component has been modified a lot. I don't have any specific opposition on that, but it is important to ensure that the existing component's use cases are still covered and that no regression has been introduced. I just launched boxed-expression-component's showcase, and I noticed that:

<result> row is missing for the context expression:

it is not possible to edit a Relation table with multiple cells:

If we want to proceed in this direction, a QE member must help us test it, for example, @jomarko.
Furthermore, consider that we are working to integrate the boxed-expression-component inside the existing DMN Editor (https://github.com/kiegroup/kogito-editors-java/pull/104), and we need to make sure that the changes to it do not affect the integration itself.

Hi @vpellegrino, thanks for taking a look at this PR! I appreciate you taking some time to thoroughly look at it and find bugs, as Luiz and I are not familiar with all the use cases it has.
Of course, wrapping the existing component and adding features on top of it is the ideal scenario and is what we were aiming for, but it wasn't possible, so we had to change it internally. This PR is the beginning of a big effort to make the same "table" component be used in both the new Boxed Expressions and the DMN Runner Tabular Input.
We tried to keep changes to a minimum to avoid breaking existing use-cases, but it's a complex task, so naturally bugs appeared, as you found out. We're going to keep working on this PR until we have no regressions and we're comfortable with the DMN Runner Tabular Input quality.
Packaging and bundling is not final, as with most things on this PR. We're also going to have big changes soon, as this repository is going to be moved to kogito-tooling as part of our Monorepo initiative, so don't look to much into those areas just yet 😝
There is a lot to figure out, but ultimately we're going to have a unique experience on all of our table-formatted data. Looking forward to it!
Thanks again for taking a preliminary look at this PR, we'll get back to it as soon as Luiz is back from PTO :)

@jomarko @vpellegrino  I've created a new PR https://github.com/kiegroup/kogito-editors-java/pull/145 due to the size of the necessary modifications to solve all issues. I'll be closing this one.


Geocoding intersections with & returns incorrect address

For geocoding addresses that are intersections of two streets, the address is written as:
Man O' War Blvd & Polo Club Blvd Lexington, Kentucky, 40509
When sent through the library the & needs to be replaced with a URI encoded character %26, otherwise both Google and ArcGIS will return an incorrect address since it is getting parsed as a query parameter.
I'm not sure the best location where this replace would happen and for what adapters this would be necessary.

Fixed in v2.13.4, thanks for the issue :)


feat(#2): input github token typo

ref #2

PR-Codex overview
This PR updates the environment variable name from INPUT_GITHUBTOKEN to INPUT_GITHUB_TOKEN for consistency and readability.
Detailed summary

Updated environment variable name from INPUT_GITHUBTOKEN to INPUT_GITHUB_TOKEN

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@rultor merge

@rultor release, tag is 0.0.8

@rultor release, tag is 0.0.8

@h1alexbel OK, I will release it now. Please check the progress here

@rultor release, tag is 0.0.8

@h1alexbel Done! FYI, the full log is here (took me 2min)


Make using line more explicit for cl.exe.

The using line was confussing cl.exe, which was seeing both
swift::ReflectionContext and swift::reflection::ReflectionContext. Make
it clear that we are talking about the second one.

Forget about it. Just seen #27518 and #27519 merged half an hour ago.


Master

👷 Deploy Preview for hpislab processing.

Name
Link

🔨 Latest commit
bb598f1aab9835aa9f32d2fd471854c55c190046

🔍 Latest deploy log
https://app.netlify.com/sites/hpislab/deploys/62bb1ec2c54a2a0008b6a06a


Dynamically changing the width of the modal

Is there a way to dynamically change the width of the modal? I have multiple elements on the modal which differ by width and I would like to adjust the width of the modal dynamically based on the element sizes.

Add this data-width="auto" as an attribute of your modal.


ci(clang-tidy): analyze only modified files

Description

Please refer to https://github.com/autowarefoundation/autoware-github-actions/pull/178.
I used this action and option.
https://github.com/tj-actions/changed-files#outputs
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

CI: https://github.com/autowarefoundation/autoware.universe/runs/8109904105?check_suite_focus=true

Worked: https://github.com/autowarefoundation/autoware.universe/runs/8112529300?check_suite_focus=true#step:7:268


Added runscripts for conv fwd, bwd and upd for resnet-50 convolutions with SPR optimized tuning parameters and strings

Possibly, tunings might change later but saving the current more or less well-behaving state.

This is fine for now, but what I was thinking going forward/including tunings for more platforms:

The scripts (i.e. the ones you submitted with this PR) have "all" tunable parameters as variables (i.e. not just batch, but also the spec loop string, the other algorithmic knobs, blocking factors etc.). Potentially we associate with each layer a unique ID and those tunable params have that ID in the name, e.g. spec_loop_string_id0 etc
We record the tuned parameters per platform/minibatch/number of threads in a metafile where the values of the aforementioned variables are extracted from.

In this way we would avoid tons of duplication pertaining in the model specification. What I envision for example: single run_conv_fwd/bwd/upd_resnet50_all.sh script and multiple metafiles for each platform x minibatch x number of threads. In this was we are somewhat modular and we can reuse the "model" scripts as we add more and more (e.g. for MLPs pertaining to specific DLRM configurations, MLPs for GNNs, GEMMs arising in MHA in BERT etc)
Thoughts?

This is fine for now, but what I was thinking going forward/including tunings for more platforms:

The scripts (i.e. the ones you submitted with this PR) have "all" tunable parameters as variables (i.e. not just batch, but also the spec loop string, the other algorithmic knobs, blocking factors etc.). Potentially we associate with each layer a unique ID and those tunable params have that ID in the name, e.g. spec_loop_string_id0 etc
We record the tuned parameters per platform/minibatch/number of threads in a metafile where the values of the aforementioned variables are extracted from.

In this way we would avoid tons of duplication pertaining in the model specification. What I envision for example: single run_conv_fwd/bwd/upd_resnet50_all.sh script and multiple metafiles for each platform x minibatch x number of threads. In this was we are somewhat modular and we can reuse the "model" scripts as we add more and more (e.g. for MLPs pertaining to specific DLRM configurations, MLPs for GNNs, GEMMs arising in MHA in BERT etc)
Thoughts?

I agree that it would be a nicer way to keep information if we go with id + metadata.
But I have a couple of (weak) concerns about whether right now is a good moment to implement this. They are mostly about the increased complexity and if benefits are greater than costs.

To get the more general design with id + metadata right, we need more examples of what we want to cover now and in the future. Since metadata will need to combine conv_fwd/bwd/upd and gemms (which all have different tuning parameters and even problem definitions = case-defining parameters (for conv vs gemm))
What I like about keeping it simple is that we can easily communicate everything. Say, I can look at a runstring and immediately [up to remembering which parameters goes where] have smth to try/run/reproduce. When we will have the metadata + id setup, there will be more places to get details lost / misinterpreted.
When [if] running simple auto-tuning shell scripts it's easy now to relate a configuration from the autotuning script and currently-optimal tunings already found. If we use a more complicated setup, either writing autotuning scripts  or matching the tuning results with known tunings will become more difficult.

And we can keep this PR open and not merge it till we decide what to do, since it's just an add-on.


[#5489] fix(build): Improve the gradle to skip some modules to avoid publishing empty jars

What changes were proposed in this pull request?
This PR improves the gradle and release script to skip some modules.
Why are the changes needed?
This is to avoid some unnecessary empty jars to be published to maven repo.
Fix: #5489
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Tested locally.

Does this PR need to be backported to branch-0.7?

LGTM. @yuqi1129 Do you want to review it?

I'm okay with the changes.

Let me add the label.


Add ProxyFromEnvironment to http client

Currently trying to use this behind corporate proxy to ACMEDNS server on internet, and getting "dial tcp x.x.x.x:443 connect: connection refused"
Need to pick up https_proxy value and use it from environment variable in container/OS.

Pull Request Test Coverage Report for Build 737

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 78.74%

Totals

Change from base Build 661:
0.0%

Covered Lines:
100

Relevant Lines:
127

💛  - Coveralls

@cpu, Thank you for the quick merge. Appreciate it. 👍


Error when trying to do a Refresh

Hi there, I am stuck with an error when trying to do a refresh. It says that there are pending changes in your queries that haven't been applied and when I click apply changes, it's complaining Query 'Tables' (step 'Renamed Columns1') references other queries or steps, so it may not directly access a data source. Please rebuild this data combination. Kindly see below screenshot.

Hi @gapendo
I see you're running Model Documenter v1.x.x
May I suggest you to upgrade to Model Documenter v2.0.1 where these kind of issues are resolved. You can read more and download v2 in this blog
Thanks!

Thank you so much @marclelijveld. I have downloaded and used the latest version it is now working perfectly. :)


[PUI] Barcode scan

Closes https://github.com/inventree/InvenTree/issues/8692
Fixes barcode "quick scan" dialog
Implements using existing forms framework
Error management

Notes: I have tested this with a USB barcode reader, and it works pretty well
This is not intended as a full featureset for this quick-scan dialog. Rather it is intended to get the scan dialog working and fixed for 0.17.x branch

Closing this, as I realise that this approach does not consider the "webcam" support at all.


Cannot execute ./configure

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Not Applicable
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 20 window subsystem.
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: Not Applicable
TensorFlow installed from (source or binary): source
TensorFlow version (use command below): master branch
Python version: 3.8.2
Bazel version (if compiling from source): Not Applicable
GCC/Compiler version (if compiling from source): Not Applicable
CUDA/cuDNN version: Not Applicable
GPU model and memory: Not Applicable

Describe the current behavior
./configure does not execute
Describe the expected behavior
./configure should execute
Standalone code to reproduce the issue
Please clone and do ./configure on ubuntu on window subsystem. It will not work!
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.
./configure: line 2: $'\r': command not found  : invalid optione 3: set: -                                                                                set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]   : invalid option nameset: pipefail                                                                                ./configure: line 5: $'\r': command not found
./configure: line 16: syntax error: unexpected end of file

@rxng8
Provide the exact sequence of commands / steps that you executed before running into the problem.Thanks!

Does python configure.py work?
It is very likely the issue is on your system, we cannot know without additional checks.

Yes, python configure.py does work, thank you!

I think we should still make a note that the command ./configure does not work with Linux in Windows subsystem.

I think the issue is on your system, it was looking for the wrong end of line marker (\r\n instead of \n).
We are building our pip wheels on Windows using WSL, afaik


Added planetocentric coordinates and limb/ring distances to click location coordinates in the GUI

Added new values to the 'Coords' tab (and copyable strings etc.) when clicking on the image in the PlanetMapper GUI:

Planetocentric longitude/latitude coordinates
Height above the target's limb
Ring plane radius

Other minor associated GUI improvements:

Added ability to have tooltips for 'Coords' tab values. Currently we only use these for the limb distance and ring radius values, as these could be a bit more ambiguous with only the short labels.
Added keyboard shortcut Control+Shift+C to formatted (i.e. human-readable) click coordinate values.
On MacOS, added keyboard shortcut aliases so that the command key can be used instead of control. For example, Command+S and Control+S both now open the save observation dialog on Mac. This only applies to MacOS (platform.system() == 'Darwin'), so Linux and Windows are unchanged and only accept Control+... shortcuts.

Closes #391
Pull request checklist

[x] Add a clear description of the change
[x] Add any new tests needed
[x] Run spell check on new text visible to user (documentation, GUI etc.)
[x] Check any changes to requirements.txt are reflected in setup.py and conda-forge feedstock
[x] Check code passes CI checks (run run_ci.sh or check GitHub Actions)

See CONTRIBUTING.md for more details.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.615%

Totals

Change from base Build<PHONE_NUMBER>0:
0.0%

Covered Lines:
3138

Relevant Lines:
3150

💛  - Coveralls


How can I delete the github button in the upper right corner?

as the title says
this is a great project
But I think the logo of github in the upper right corner affects the appearance..

You could modify the file "components/GitHubShareButton.tsx".

hey - you just need to delete or comment out this line in NotionPageTSX:

Here what I've done:
1.Removed the lines <GitHubShareButton />  and import { GitHubShareButton } from  components/NotionPage.tsx
2.Deleted the file GitHubShareButton.tsx at /components
3.And removed the whole CSS at components/styles.module.css
@media (max-width: 1360px) {
  .githubCorner {
    display: none;
  }
}

.githubCorner:hover .octoArm {
  animation: octocat-wave 560ms ease-in-out;
}

@keyframes octocat-wave {
  0%,
  100% {
    transform: rotate(0);
  }
  20%,
  60% {
    transform: rotate(-25deg);
  }
  40%,
  80% {
    transform: rotate(10deg);
  }
}

@media (max-width: 500px) {
  .githubCorner:hover .octoArm {
    animation: none;
  }

  .githubCorner .octoArm {
    animation: octocat-wave 560ms ease-in-out;
  }
}

I may have missed something but at least visually it won't show the GitHub logo.


Question:Expose timefilter in query variable ?

Query variable to build dynamic filter and is a key feature of grafana.
I'm looking to use this feature on the top of clickhouse to let him select an application and display some metrics. As there is thousand of applications , i want to display only a Top X application on those filter.
But to do that i need to access to the timefilter and update the variable when the time range is changed.
I know it 's possible to do it for other datasources ( postgre , mysql ,influx ,example : https://github.com/grafana/grafana/pull/10069  ) , but i m not able to do it on clickhouse.
The question is :
Is it doable with the current version of clickhouse datasource ?
If not , is it an evolution of the grafana core engine ?
If it rely on the data source to expose this timefilter , is it possible to  expose it ?
Thanks in advance.

Just to be exhaustive in my description , the query variable without allowing to access to the time range has 2  very negative effects :
- The list of possible value is not accurate and this can lead to empty dashboard ( as the query is done on all the data )
- this can kill the system as querying the whole database can take dozen of seconds which make dashboard display very very slow.

just realize that you have commited the annotation query which may add such kind of feature.
If you want someone to test it. I'll be happy to do it.
Regards

Hi @TH-HA
Yes, it would be nice to have such option as $__timeFilter in variable queries. And we have corresponding pr (#66) from community to add that option. I hope it will be added this or next week. Thank you!

Hi @TH-HA
Take a look https://github.com/Vertamedia/clickhouse-grafana/releases/tag/1.6.0

Thanks a lot it works perfectly and open new usage of grafana with Clickhouse.
Thanks again.


SOLR-15787: Fix FileSystemConfigSetService test failure

Tested the latest changes on Mac and Windows and both pass (.\gradlew test --tests TestConfigSetService)


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-main" workflow

Codecov Report

Merging #308 (7713261) into main (2974dfe) will increase coverage by 12.10%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##             main     #308       +/-   ##
===========================================
+ Coverage   83.33%   95.44%   +12.10%
===========================================
  Files           2        1        -1
  Lines         126      395      +269
  Branches       31       46       +15
===========================================
+ Hits          105      377      +272
+ Misses         21       18        -3

Impacted Files
Coverage Δ

src/index.ts
95.44% <100.00%> (+13.44%)
:arrow_up:

example/src/main.ts

Continue to review full report at Codecov.

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


Kulla fidasim

Upgrades and improvements

First pass at an interface to FIDASIM
Improved interface to EQDSK G-files

OK I think this version is ready for testing now.  @kudav @alexleviness if you could verify a case you've done before then we can go ahead and merge it in.  I'll do the same.


New release required for getSupportedCodeFixes() to function correctly

Hi,
I had a struggle figuring out why getSupportedCodeFixes() was not working as expected so I tried using a build from most recent commit which functioned as expected.
It looks like https://github.com/microsoft/typescript-template-language-service-decorator/commit/3af3ba3527f8919c1c8a4fbe8348206585177ec4#diff-77817860eba34646cba9ba7ce0d125bafacc0163f65b18ee87caa2ebbeec82e1R201 is the main reason behind this.

Struggling with similar thing myself - I can't seem to make getCodeFixesAtPosition to work at all, and wondered with its connected. Are there any docs about how the whole combo of getCodeFixesAtPosition / getSupportedCodeFixes / getSemanticDiagnostics is supposed to work together?


OWallet no longer sees my ONT, ONG or Staking info after upgrading to Win10. Please help!

I upgraded my wallet machine from Win7 to Win10 Pro x64, and all wallets are working except OWallet. Shows no sign of previous wallet; only options are Create (New) or Import (Existing). I was on version 0.9.6, updated to 0.9.7. Attempted to Import using Private key (WIF) & Keystore (.dat). Don't have info for Mnemonic Phrase or Private key (64 Hex). One peculiarity: Keystore (.dat)-keystore file is keystore.db in Program Data, only .dat file is ONT101.dat (name of wallet). All combinations I tried result in spinning cursor, for HOURS. I tried using same name (ONT101), different name (ONT102), same password, different password; no clues from app if I'm warm or cold. I don't know what happened to my ONT, ONG or Staking. Any ideas or suggestions will be appreciated.

Problem solved. Installed/imported on different machine. Uninstalled/re-installed/imported on wallet machine. I have all my ONT, ONG and staking info back. Thanks for warm attempts to assist me with this problem. NOT!


Investigate: "ignored" ConsulExceptions in KeyValueClient

KeyValueClient has two locations that catch ConsulException and are declared like:
try {
    // the logic
} catch (ConsulException ignored) {
    if (ignored.getCode() != NOT_FOUND_404) {
        throw ignored;
    }
}

The question here is whether the exception is just named badly, since clearly it is not always ignored.

yeah I would say something more like can be ignored or the like. It is sort of nebulous either way


Reflections of points in sky atmosphere

Look please at this example: editor view / full page view
In the example, four cities Entity are added to the map. All entities include Label and Point. When viewed from a certain angle, a reflection of points in the sky appears.
It has been experimentally verified that the more points on the map, the more points are reflected in the sky. As the camera moves, the points in the sky begin to flicker.
Below is the code setting the camera position:
var heading = Cesium.Math.toRadians(142.8074308297535);
var pitch = Cesium.Math.toRadians(-3.04226367144852);
var range = 15000.0;
let position = entity4.position.getValue(viewer.clock.currentTime);
viewer.camera.lookAt(position, new Cesium.HeadingPitchRange(heading, pitch, range));

Thanks for reporting this @ollazarev, and thanks for including the code example!  If possible, it would be a little bit easier for us if you could use our Sandcastle application for sample code instead of codepen: https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/
There's a 'share' button at the top to get a link.  Either way is fine though =)
As a workaround you can set viewer.scene.logarithmicDepthBuffer = false; to fix the problem
Minimal Example:
var  viewer = new Cesium.Viewer('cesiumContainer');

function getEntity(coords) {
    return new Cesium.Entity({
        position : Cesium.Cartesian3.fromDegrees(coords[0], coords[1]),
        point: {
             pixelSize: 5,
        }
    });
}

viewer.entities.add(getEntity([-101.678, 57.7833]));
var entity4 = viewer.entities.add(getEntity([-79.38318429999998, 43.653226]));

var heading = Cesium.Math.toRadians(142.8074308297535);
var pitch = Cesium.Math.toRadians(-3.04226367144852);
var range = 15000.0;
var position = entity4.position.getValue(viewer.clock.currentTime);
viewer.camera.lookAt(position, new Cesium.HeadingPitchRange(heading, pitch, range));

@bagnell this is another log depth issue, can you look into this?  I'm going to mark it 'next release' since it's a regression.

This is a regression of #5501.  The sandcastle demo there is reproducible once again.
var viewer = new Cesium.Viewer('cesiumContainer');
var collection = new Cesium.PointPrimitiveCollection();
viewer.scene.primitives.add(collection);

// Add 10,000 points to random positions
for (var i = 0; i < 10000; i++) {
    var lat =  Math.random() * 360 - 180;
    var long =  Math.random() * 360 - 180;
    collection.add({
        position : Cesium.Cartesian3.fromDegrees(lat, long),
        pixelSize: 3,
        disableDepthTestDistance: 1
    });
}

I forgot about that one, thanks @emackey
Apparently you opened the PR fixing that one year ago today: #5735
I found that amusing =P

This issue is marked for next release, so we should try to get in a fix for next week. Who is best to look at this, @hpinkos do you know?

Thanks again for reporting this @ollazarev!  This has been fixed and will be included in the 1.49 release available September 3rd.


Add files via upload

What does the program do ?

In what programming language it is written?

factorial of a number written in python


Fix Building a Cipher Step 81 test feedback

Describe the Issue
User received mis-leading feedback from test.
Feedback received:
Sorry, your code does not pass. Keep trying. Your encryption variable should have the value of encrypt(text, custom_key).
However if you open the console it shows an error for both variables:
// running tests Your encryption variable should have the value of encrypt(text, custom_key). Your decryption variable should have the value of decrypt(encryption, custom_key). // tests completed
The encryption variable was ok, but the decryption variable was wrong.
User's code:
encryption = encrypt(text, custom_key) print(encryption) decryption = decrypt(encryption, custom_key, -1) print(decryption)
I was able to pass the test by removing the 3rd argument from the decrypt function call:
decryption = decrypt(encryption, custom_key)
Affected Page
https://www.freecodecamp.org/learn/scientific-computing-with-python/learn-string-manipulation-by-building-a-cipher/step-81
Your code
encryption = encrypt(text, custom_key)
print(encryption)
decryption = decrypt(encryption, custom_key, -1)
print(decryption)

Expected behavior
Feedback should indicate the problem is with the decryption variable, not the encryption variable
Screenshots

System
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
Additional context
none

Thank you for reporting this issue.
This is a standard message notifying you that this issue appears to be very similar to issue #52448, so we are closing it as a duplicate.
If you think we're wrong in closing this issue, please request for it to be reopened and add further clarification. Thank you and happy coding.


update type definition for ListItem.

The current type definition show error when using LitsItem and not passing the button flag. Which is very obvious from the below line:
declare const ListItem: OverridableComponent<ListItemTypeMap<{ button?: false }, 'li'>> &
  ExtendButtonBase<ListItemTypeMap<{ button: true }, 'div'>>;

[x] I have followed (at least) the PR section of the contributing guide.

button as false

Not passisng it

Could you include the code that is failing please? The overloads are intended to not have any overlap so it's not obvious that this needs to be changed.

@eps1lon

Could you include the code that is failing please? The overloads are intended to not have any overlap so it's not obvious that this needs to be changed.

Code sample is as below:
const LegendButton = (legendColor: string) =>
  withStyles({
    root: {
      color: legendColor,
    },
    gutters: {
      paddingLeft: spaces[1],
      paddingRight: spaces[1],
    },
  })(ListItem);

const MyLegend: FC<{ legendColor: string }> = ({ legendColor}) => {
  const Legend = LegendButton(legendColor);

  return (
    <Legend> // build fails at this line with TSLint reporting error as shown in above screenshots
      <IconButton>
        <DotIcon />
      </IconButton>
      <ListItemText primary={legendName} />
    </Legend>
  );
};

It works only if pass button.
<Legend button>

I tried something like below, but this also reports the error:
const isButton = false;
<Legend button={isButton}>

That is an issue with higher-order components and some of our typings. Essentially a duplicate of #15759. The underlying issue is microsoft/typescript#26591.
I recommend using withStyles(styles)(SomeMuiComponent) as SomeMuiComponent.


phenio injects http://purl.obolibrary.org/obo/BFO_0000179 as an ObjectProperty

This should be an AP
somewhere in the imports someone is injecting a declaration that says this is an OP
This causes all kinds of trouble, because we also have triples
BFO:0000015 BFO:0000179 "process" .

OAK correctly interprets OPs as denoting edges between individuals, but the RHS is not a node in the above...

OK, I see it in PHENIO:

    <!-- http://purl.obolibrary.org/obo/BFO_0000179 -->

    <owl:AnnotationProperty rdf:about="http://purl.obolibrary.org/obo/BFO_0000179"/>

...

    <!-- http://purl.obolibrary.org/obo/BFO_0000179 -->

    <owl:ObjectProperty rdf:about="http://purl.obolibrary.org/obo/BFO_0000179">
        <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/>
    </owl:ObjectProperty>

though I don't see it in any import.

Grep through imports/*.owl for the relation. Most likely an import is using the relation in a domain restriction, and mostly likely it is SEPIO (which I would suggest to remove for now).

Yep, that's what I've done so far - plus SEPIO hasn't been imported since 09d6ec2328a69b7eb78421e4c0295390364d9e9b
Could it be declared in a less explicit way somewhere?

Yes, the declartion could be injected if the BFO:179 was used in a logical axiom.
What did the grep tell you, i.e. which ontologies use BFO:179?

Strangely enough, none of the imports but the merged version:
$ sudo grep -r -l "BFO_0000179" imports/*.owl
imports/merged_import.owl

and of the components, just BFO itself:
$ sudo grep -r -l "BFO_0000179" components/*.owl
components/bfo.owl

In merged_import.owl, all places where BFO_0000179 is used are:
$ sudo grep -r "BFO_0000179" imports/*.owl
imports/merged_import.owl:Declaration(AnnotationProperty(<http://purl.obolibrary.org/obo/BFO_0000179>))
imports/merged_import.owl:# Annotation Property: <http://purl.obolibrary.org/obo/BFO_0000179> (BFO OWL specification label)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/BFO_0000179> "Relates an entity in the ontology to the name of the variable that is used to represent it in the code that generates the BFO OWL file from the lispy specification."@en)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000232> <http://purl.obolibrary.org/obo/BFO_0000179> "Really of interest to developers only"@en)
imports/merged_import.owl:AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/BFO_0000179> "BFO OWL specification label"@en)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000001> "entity")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000002> "continuant")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000003> "occurrent")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000004> "ic")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000006> "s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000009> "2d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000015> "process")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000016> "disposition")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000017> "realizable")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000018> "0d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000019> "quality")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000020> "sdc")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000023> "role")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000024> "fiat-object-part")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000026> "1d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000028> "3d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000029> "site")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000031> "gdc")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000034> "function")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000040> "material")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000141> "immaterial")

None of this explains the behaviour. Can you confirm the issue persists in the latest release?

Try a ROBOT mirror before merge to get a better picture of the import chain


Updated README.md - SIGN_IN_REQUIRED error code on Android

Summary
Added SIGN_IN_REQUIRED error explanation on Android.

That makes total sense. Will do!

@vonovak done ✅

thanks!


Use the appropriate length field for uintmax_t

  CXX      experimental/traffic_dump/traffic_dump.lo
experimental/traffic_dump/traffic_dump.cc:307:86: error: format specifies type 'long long' but the argument has type 'uintmax_t' (aka 'unsigned long') [-Werror,-Wformat]
          TSDebug(PLUGIN_NAME, "Finish a session with log file of %" PRId64 "bytes", ts::file::file_size(st));
                                                                  ~~~                ^~~~~~~~~~~~~~~~~~~~~~~

@dyrock  FYI

How were original code passed tests? CI jobs doesn't have --enable-werror on configure?

Maybe because of platform / compiler difference? I saw the warning on macOS.

Updated with PRIuMAX.


refactor workspace initialization and fix bug in tsrc apply-manifest

Workspace instances are now built with a WorkspaceConfig and LocalManifest instances.
LocalManifest is abstract and is either implemented by:

ClonedManifest, which represents a manifest cloned in
<workspace_path>/.tsrc/manifest,
or ManifestCopy, which represents a manifest located in the file system

This allows for a more robust implementation of the apply-manifest command
Fix #268

Codecov Report

Merging #269 (2ba7cbe) into master (e17921a) will decrease coverage by 0.05%.
The diff coverage is 91.30%.

@@            Coverage Diff             @@
##           master     #269      +/-   ##
==========================================
- Coverage   91.39%   91.34%   -0.06%
==========================================
  Files          25       27       +2
  Lines        1267     1294      +27
  Branches      141      141
==========================================
+ Hits         1158     1182      +24
- Misses         84       87       +3
  Partials       25       25

Moved to GitLab : https://gitlab.com/tsrc2/tsrc/-/merge_requests/269

Moved to GitLab : https://gitlab.com/tsrc2/tsrc/-/merge_requests/269


Check continuation in getChannelPlaylistsMore()

In getChannelPlaylistsMore(), there is no check on whether continuation data is available and therefore fails when there is no further continuation that can be obtained from the response (happens when you are fetching the last page of playlists).

LGTM. Thank you for the PR!


How do you determine the vanishing points? And how do you draw the intersecting lines?

I couldn't find any information about vanishing points in either the article or the code.

Hi. We don't directly generate vanishing points. We use DeepLSD to detect line segments and then train a network based on PointNet architecture to distinguish between real and generated images. The intersecting lines in the teaser are drawn by hand to illustrate the errors that exist in generated images that can be detected by the PointNet. f

Thank you so much, this completely resolved my question.


Calling Actor that returns void (Task) via Remoting throws XmlSerialization Exception

Expected Behavior
An actor that returns void (async Task) should be able to be called via Remoting
Actual Behavior
Calling an actor method that returns void (async Task) via Remoting throws an XmlSerialization exception. Changing the call to the actor method using non-remoting succeeds.
Steps to Reproduce the Problem
I have an actor defined as such:
    internal class GribSupervisorActor : Actor, IGribSupervisor
    {
        public GribSupervisorActor(ActorService actorService, ActorId actorId)
            : base(actorService, actorId)
        {
        }
        public async Task BeginProcessingScheduledGribFiles(BeginGribProcess msg)
        {
            var datetimestamp = DateTime.UtcNow.AddHours(-1);
            var date = datetimestamp.ToString("yyyyMMdd");
            var hour = datetimestamp.ToString("HH");
            ...
        }
    }

Calling it using remoting fails:
    var id = new ActorId("runner");
    var proxy = ActorProxy.Create<IGribSupervisor>(id, "GribSupervisorActor");
    await proxy.BeginProcessingScheduledGribFiles(new BeginGribProcess
    {
        FileTypes = names,
        Locations = locations
    });

The above throws an exception of XmlSerialization, saying that the response was not formatted correctly.
Calling the actor method without remoting succeeds:

    var id = new ActorId("runner");
    var proxy = ActorProxy.Create(id, "GribSupervisorActor");
    await proxy.InvokeAsync("BeginProcessingScheduledGribFiles", new BeginGribProcess
    {
        FileTypes = names,
        Locations = locations
    });

This seems similar to issue #129 which was closed.
My message that I'm passing to my actor method is such:
    public class BeginGribProcess
    {
        public IEnumerable<string> FileTypes { get; set; }
        public IEnumerable<Location> Locations { get; set; }
        public BeginGribProcess() { }
    }

I have received a similar issue with messages that do not have enumerables.
I'm using Dapr 0.5.1 and this is running in my AKS cluster (1.17).

@DavidHoerster The samples have calls for the methods that return just a Task. i just ran it and could not repro:
https://github.com/dapr/dotnet-sdk/blob/master/samples/Actor/ActorClient/Program.cs#L49
Could you share the full exception as well?

@DavidHoerster does this still repro on the latest version of dapr and dapr/dotnet-sdk (0.7)?

Closing it due to lack of response, feel free to reopen, if it still happens.


"dep deploy" does not exist, offers an option list

Deployer version: 6.8.0
Deployment OS: Mac OS 10.13.6

As a beginner, I am working through the "Getting startet" chapter. At "dep deploy" I get this error:
Command "deploy" is not defined.

  Did you mean one of these?
      deploy:clear_paths
      deploy:copy_dirs
      deploy:lock
      deploy:prepare
      deploy:release
      deploy:shared
      deploy:symlink
      deploy:unlock
      deploy:update_code
      deploy:vendors
      deploy:writable

Why?

Because deploy task not defined.

Shouldn#t that be mentioned in a "Getting started" guide?

Yes I think so. Also i have plans to rewrite docs from scratch. Also it’s possible to add deploy task to common recipe as well.

Thank you! It would be okay for to close this issue, if you are all right with that.
Have a good day!


Global Typedoc configuration?

currently some libraries have typedoc.json while others don't.  We should investigate whether we need some configurations from existing typedoc.json and apply it to all libraries.

Closing in favour of issue #10288


Status endpoint fails due to RabbitMQ

Expected Behavior
Checking the /_status URL on a Chef Server should return HTTP 200 and 'pong' for all services listed there.
Current Behavior
Returns HTTP 500 with chef_index":"fail" in the upstreams list.  This appears to be reflected in<EMAIL_ADDRESS>=CRASH REPORT==== 31-Oct-2017::01:47:22 ===
  crasher:
    initial call: mochiweb_acceptor:init/4
    pid: <0.12853.0>
    registered_name: []
    exception exit: {error,accept_failed}
      in function  mochiweb_acceptor:init/4 (src/mochiweb_acceptor.erl, line 73)
    ancestors: [rabbit_web_dispatch_sup_15672,rabbit_web_dispatch_sup,
                  <0.10599.0>]
    messages: []
    links: [<0.10606.0>]
    dictionary: []
    trap_exit: false
    status: running
    heap_size: 610
    stack_size: 27
    reductions: 1145
  neighbours:

There is nothing besides a startup message in /var/log/opscode/rabbitmq/current.  Also, an indirect vote for #603 as we have a monitoring process that checks this URL periodically and it's going to cause that file to keep growing without log rotation configured.
Steps to Reproduce (for bugs)

Access http://chef-server/_status

Your Environment

Chef Server Version: 12.17.5-1
Total/free RAM and disk space: 8G total / 1G free RAM; 40G total / 34G free disk
Operating System and Version: Ubuntu 16.04.3 LTS
If upgrading, previous Chef Server version: 12.14.0
Running in a container? No

Everything else appears to be working fine - Chef client runs on nodes, knife queries, knife from file updates, push jobs, etc., though I'm sure I haven't exercised all paths yet.  This seems to be related to the RabbitMQ management plugin not working properly in our install.
The server was newly created and the latest package installed today.  Data was migrated from its predecessor server without issue.  It serves no other main purpose and differs largely in operating system and Chef Server version from the predecessor.

Thanks for the report.  That check is rather new (cc @jaym).  Do you get a different result if you try the same check manually with something like:
curl -k -u rabbitmgmt:$(chef-server-ctl show-secret rabbitmq management_password) https://<IP_ADDRESS>:15672/api/aliveness-test/%2Fchef

Is rabbitmq working correctly via AMPQ:
PATH=/opt/opscode/embedded/bin:$PATH /opt/opscode/embedded/bin/rabbitmq-plugins list
PATH=/opt/opscode/embedded/bin:$PATH /opt/opscode/embedded/bin/rabbitmqctl node_health_check
PATH=/opt/opscode/embedded/bin:$PATH /opt/opscode/embedded/bin/rabbitmqctl list_vhosts
PATH=/opt/opscode/embedded/bin:$PATH /opt/opscode/embedded/bin/rabbitmqctl list_queues -p /chef | tail

In the erchef log (/var/log/opscode/opscode-erchef/current), are there any lines that start with:
Error getting Rabbitmq aliveness

From the sasl logs it appears rabbitmq wasn't able to accept() the new connection.  Does the condition persist across a restart of rabbitmq?  Are there any other processes trying to use port 15672?

If the management plugin is not functioning correctly, the default configuration will think things are broken. You should be able to have any checks against rabbitmq disabled by disabling rabbitmq management:
rabbitmq['management_enabled'] = false

% curl ...
curl: (35) gnutls_handshake() failed: The TLS connection was non-properly terminated.

The other commands look fine, and yes, that log file is getting full of that Rabbitmq aliveness message.
I took a look at /var/opt/opscode/rabbitmq/etc/rabbitmq.config, which it turns out uses our domain-specific certificate and key supplied for Chef Server nginx[ssl_*] settings.  I guess that error is to be expected, then - the management API is bound to and accessed via <IP_ADDRESS>, but the cert it's supplying for HTTPS is for an actual domain.
Our /var/opt/opscode was copied over and dropped in place before running chef-server-ctl upgrade and a reconfigure for good measure.  I'm not sure how it picked up that setting, though maybe it's more globally applied than Nginx?  I don't think I saw any chef-server.rb options that would pass through more useful settings to RabbitMQ, nor did there seem to be any more obviously applicable certs around in /var/opt/opscode.
I'll gladly take disabling those specific checks as a useful fix for now.

I took a look at /var/opt/opscode/rabbitmq/etc/rabbitmq.config, which it turns out uses our domain-specific certificate and key supplied for Chef Server nginx[ssl_*] settings. I guess that error is to be expected, then - the management API is bound to and accessed via <IP_ADDRESS>, but the cert it's supplying for HTTPS is for an actual domain.

Thanks for digging into this.  We do indeed re-use the nginx ssl config when setting up rabbitmq:
https://github.com/chef/chef-server/blob/master/omnibus/files/private-chef-cookbooks/private-chef/recipes/rabbitmq.rb#L82-L83

IIRC, we had a similar issue that was caused by the rabbitmq user not being able to access the certificate

There are 2 log files in /var/opt/opscode/rabbitmq/log that might have useful information in them. Please post anything you see in there that seems strange

Definitely should have looked in there earlier:
=ERROR REPORT==== 2-Nov-2017::22:04:24 ===
    application: mochiweb
    "Accept failed error"
    "{error,{options,{keyfile,\"/path/to/key\",\n                         {error,eacces}}}}"

It looks like the rabbitmq process user and group ID are both opscode, so adding the opscode user to the group that does have access to the key file for this reason doesn't help.  There are obvious quick fixes we could make around permissions, ownership, and/or file location, but that doesn't seem like a great way to keep this issue from popping up.  Perhaps the management interface should get its own cert setup unless otherwise configured?  I haven't paid attention to what happens when the user doesn't configure their own Nginx SSL certs, so not sure how much of an added burden that would be.

We ran into the same issue. Is it safe to disable rabbitmq_management plugin in chef-server.rb? It looks like this mitigate the issue. However, I'm not sure if this will not break something else.

I imagine nothing else will break. I believe this was broken before, and there was an update that checks to see if that endpoint says its healthy as part of the status check. There are places where the management endpoint is used, but they all check if its enabled since its optional

Look like disabling the management interface also remove the "oc_chef_action" component:
Before:
{
  "status": "fail",
  "upstreams": {
    "chef_solr": "pong",
    "chef_sql": "pong",
    "chef_index": "fail",
    "oc_chef_action": "fail",
    "oc_chef_authz": "pong"
  },
  ....
}

After:
{
  "status": "pong",
  "upstreams": {
    "chef_solr": "pong",
    "chef_sql": "pong",
    "chef_index": "pong",
    "oc_chef_authz": "pong"
  },
  ....
}

Is it of consequences ?

Next actions:

Check to see if this exists with the latest version of Chef Infra Server
Check if getting rid of the actions rabbitmq queue helps mitigate this.

Chef-Server 14 does not support Rabbitmq. Please let us know if upgrading to this version help with the mitigation.  Closing this for now. Feel free to reopen if needed.


Speed-up hex using noble technique.

The PR makes hex decoding 23x faster on 8KB inputs.
The cost: +40 lines of code.
Should we do it? Is hex a bottleneck?

I think it's a really small price to pay for such a big performance improvement.

@arobsn is it relevant to your use case? Is it a bottleneck in your case?

I mean, we can speed-up every function, but that would make package big. If we speed up only some functions, we need to select which ones.

I usually avoid using it because it's too slow, but yes, not really an issue for my use case. My point is that 40 lines of code is a good price to pay for a 23x performance boost.

The PR is no longer 23x, i've did the speed-up and it's 6x now.


Unable to find RMpro on another subnet

Hi, my RMpro is connected to wifi on another subnet <IP_ADDRESS>.
My home-assistant is in a docker on a linux box on IP <IP_ADDRESS>. I am able to ping the RMpro on <IP_ADDRESS> from the linux box.
Broadlink manager has been installed to a docker container on the linux box. Upon launching the web interface, the searching for devices is unable to return with RMpro. It just cannot find the device.
What should I do?

Hi,
Broadlink Manager is based on python broadlink and broadlink protocol,
Broadlink is using MAC Address to communicate with the device and MAC adress cannot
be bridged between networks.

Thanks Tomer for the reply.
In my house I have all wireless devices connecting to the 192.168.3 subnet and all wired devices to the 192.168.1 subnet.
So does it mean that no matter what I do, broadlink manager will not work with this arrangement?
Thanks again!

I'm facing the same issue here.

Same issue

+1

+1, looks like a great tool but can't use it based on this.

find the devices.json file on your filesystem and put in the correct details  something like ...
[{"name":"RM Mini 3","type":"0x5f36","ip":"<IP_ADDRESS>","mac":"xxxxxxxxxxxx"}]
For the type look in the app (Android) and go to the Device info page look at at the PID ... mine shows
000000000000000000000000365f0000 (24 zero's, a hex number, and then 4 zeros)
take the hex number 365f, this is little endian so the devce ID is 0x5f36 in my case.
HTH.

find the devices.json file on your filesystem and put in the correct details something like ...
[{"name":"RM Mini 3","type":"0x5f36","ip":"<IP_ADDRESS>","mac":"xxxxxxxxxxxx"}]
For the type look in the app (Android) and go to the Device info page look at at the PID ... mine shows
000000000000000000000000365f0000 (24 zero's, a hex number - well the whole thing is a hex number but you know what I mean, and then 4 zeros)
take the hex number 365f, which translates into a devce ID of 0x5f36 in my case.
HTH.

Thanks LucidityCrash.
I would like to give it a try. I can figure out the PID via the Android app but where do I find this devices.json file?

To access it on the machine you run Docker on it will be in the folder you specified in the Volume option.
Assuming you used the docker compose given in the readme :
version: "3.6"
services:
  broadlinkmanager:
    image: techblog/broadlinkmanager
    network_mode: host
    container_name: broadlinkmanager
    restart: always
    restart: unless-stopped
    volumes:
      - ./broadlinkmanager:/opt/broadlinkmanager/data

then it will be in the folder broadlink (which will be in whatever folder you were in when you ran docker compose.
If you just did a docker run, for example like :
docker run -d --restart=unless-stopped -v /opt/docker/broadlinkmanager:/opt/broadlinkmanager/data --net=host --name broadlinkmanager techblog/broadlinkmanager

then it will be in /opt/docker/broadlinkmanager

To access it on the machine you run Docker on it will be in the folder you specified in the Volume option.
Assuming you used the docker compose given in the readme :
version: "3.6"
services:
  broadlinkmanager:
    image: techblog/broadlinkmanager
    network_mode: host
    container_name: broadlinkmanager
    restart: always
    restart: unless-stopped
    volumes:
      - ./broadlinkmanager:/opt/broadlinkmanager/data

then it will be in the folder broadlink (which will be in whatever folder you were in when you ran docker compose.
If you just did a docker run, for example like :
docker run -d --restart=unless-stopped -v /opt/docker/broadlinkmanager:/opt/broadlinkmanager/data --net=host --name broadlinkmanager techblog/broadlinkmanager

then it will be in /opt/docker/broadlinkmanager
btw you might already realise but just in case - the xxxxxxxxxxxx for the mac need to be set to the mac off the RM Mini which you'll find in the app too.

Thanks for your reply.
This is my docker-compose file:
version: "3.6"
services:
  broadlinkmanager:
    image: techblog/broadlinkmanager
    network_mode: host
    container_name: broadlinkmanager
    restart: always
    restart: unless-stopped
    volumes:
      - /volume1/docker/broadlinkmanager:/opt/broadlinkmanager/data

When I check the actual physical /volume1/docker/broadlinkmanager directory or when i shell into the broadlinkmanager docker container and then cd to /opt/broadmanager/data, I don't see any json devices file.
The only i see is my docker-compose.yml which I just left at /volume1/docker/broadlinkmanager folder.
I know I am missing something but I couldn't figure out what.
Broadlinkmanager is running at port 7020 and the web interface loads - but just continues to "searching for devices".
Any idea please?

Unless you've put the device in the same network as the docker image and done a discover it wont exist ... you will need to create it.
Using your favorite editor create a new file called devices.json in that path and add the line I put previously - replacing the type, ip, and mac with the ones for your specific device.
Then restart the docker container

Unless you've put the device in the same network as the docker image and done a discover it wont exist ... you will need to create it.
Using your favorite editor create a new file called devices.json in that path and add the line I put previously - replacing the type, ip, and mac with the ones for your specific device.
Then restart the docker container

Thanks again. Gotcha. I am still not getting much luck but here are my steps.
From my android ihc app, I can see that the PID number of my RM Pro is "whole bunch of zeros"+2a27+"4 zeros". So I figured my PID is therefore 2a27 so I reckon my device number is 0x272a.
From the github page (https://github.com/t0mer/broadlinkmanager-docker) I see that a device number 0x272a corresponds to the RM2 Pro Plus.
So my devices.json file contain the following string:
[{"name":"RM2 Pro Plus","type":"0x272a","ip":"<IP_ADDRESS>","mac":"redacted"}]
And I saved this file to my folder /volume1/docker/broadlinkmanager. And just to double check that the docker container can see this, I shell into the docker manager and browse to /opt/broadlinkmanager/data and I can see the same devices.json file.
Then I restart the docker container and browse to the web gui at 7020. It still says searching for devices...much to my dismay.
I think I follow all the right steps but something must be amiss.
Any idea?

Mine still says "searching for devices" for a few seconds then shows a list of devices which is the one I've got configured in devices.json.

beyond that I'm a bit out of ideas.  Which user is running the docker container ?  Which user owns the devices.json and what are the permissions on it ? (post the output of "ls -l" in the folder with the devices.json file in it.

Which user is running the docker container ? Which user owns the devices.json and what are the permissions on it ? (post the output of "ls -l" in the folder with the devices.json file in it)
edit : might be worth trying clicking on the load from file button

Thanks again. Here is the output in the /opt/broadlinkmanager/data directory while inside the docker container.
root@voyager:/opt/broadlinkmanager/data# ls -l
total 8
-rwxr-xr-x 1 1027 users  83 Dec 24 05:00 devices.json
-rwxr-xr-x 1 1027 users 314 Dec 23 06:48 docker-compose.yml
root@voyager:/opt/broadlinkmanager/data#

The physical folder /volume1/docker/broadlinkmanager - the ownership is the one user (i.e. me)
You mention clicking on the load from file button - I would like to try this - but where is this located? Can't find this anywhere.
Thanks again

Thanks again.
On that Devices List page, because it is continuing "searching for devices", it does not give the options to display those 3 buttons (notably Rescan, Save to File and Load from file). There is just no button that I can press.
How do i stop it from searching for devices?

As far as I can tell it just stops by itself ... at least that is what it does for me.


flush_queue should take a oneshot channel for cancelation

Fixes #878.
If a session is cancelled, an older session may sit draining on the flush_queue up until timeout.
Have the flush_queue take a oneshot channel that will resolve when a session is terminated.
The other half of the channel should be held by a session, and should fire on session termination.
Signed-off-by: Joe Grund<EMAIL_ADDRESS>

Codecov Report

Merging #948 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #948   +/-   ##
=======================================
  Coverage   95.42%   95.42%
=======================================
  Files           2        2
  Lines         153      153
=======================================
  Hits          146      146
  Misses          7        7

Continue to review full report at Codecov.

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

Codecov Report

Merging #948 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #948   +/-   ##
=======================================
  Coverage   95.42%   95.42%
=======================================
  Files           2        2
  Lines         153      153
=======================================
  Hits          146      146
  Misses          7        7

Continue to review full report at Codecov.

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

Codecov Report

Merging #948 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #948   +/-   ##
=======================================
  Coverage   95.42%   95.42%
=======================================
  Files           2        2
  Lines         153      153
=======================================
  Hits          146      146
  Misses          7        7

Continue to review full report at Codecov.

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


Layers

I've been playing with this locally and wadding through a-lot of learning and wanted to create an issue to figure out if I'm heading in the correct direction/wasting my time because you're already working on this.
The simplest surface change from the shader context, looks to be changing the map_size to a vec3u, and adding a 'layer_padding/layer_offset' vec2f.

Will donate this asset and my example I'm toying with, has some magical numbers.
https://gist.github.com/urothis/ba9eb3930dcc481c84fd10a6fc8d4e86
I assume the ideal would be to not over-complicate with additional logic for tile determinism and leave that up to build_and_initialize.

Hey @urothis I'm not quite following, solution to what? What problem are you trying to solve?

Apologies @Droggelbecher, I was working with stacking tilemaps to try and achieve some rct/ttd style terrain.
The performance scaling quickly became problematic, I assumed this was because I was doing multiple instances/entities.
With the next thought being that doing the layer/sprite culling in a single shader/entity/render pass seemed a much more optimal pattern.

Yeah indeed having really a lot of layers can be problematic at some point as your GPU has to do a lot of work to compute the depth/overlaps.
I think it could be done in the shader if you only render the surface of your 3d world and as you say have a per-tile y-offset or something. Still might become pretty expensive if for every pixel the shader has to check a lot of array entries to see whether a tile was lifted up to this particular position. There is probably some smarter approach and its not yet clear to me whether some parts of this computation might be better off being done on the CPU actually.
Perhaps this warrants a separate crate depending on how far you want to go down that path.
Depending on your game you also may not want to render a lot of different height levels at the same time as the occlusion of units etc.. can quickly become problematic (recently toyed with that a bit myself). Perhaps a viable option for you could be to only show a hand full of height layers at the same time (i.e. the ground and then some) which could help both the user and the machine ;-)


Fixed returned header/footer views in FormViewController

viewForHeaderInSection was returning footerView
viewForFooterInSection was returning headerView

works! thanks!


Imported 2020 400ng data; fixed some migrator issues

Description
This PR imports the 2020 400ng rates and related data via a migration.  In addition, it addresses a few issues in pkg/migrate that were causing a SQL migration to fail under our migration system but work fine when sent to psql.
I also updated our documentation for doing a 400ng import.  Because we are trying to avoid having Postgres generate our UUIDs (and getting a different UUID for these records in each environment), I had to change the process some.
Reviewer Notes
Most of the data import follows the same general process as before.  I just pushed the data into a local database instead, then used pg_dump to extract it to SQL (using the fast COPY method) that became the included migration.
I did audit the tariff400ng_zip3s table as well since zip3 and service area data are contained in the spreadsheet but not fully imported like the other imported tables (zip3/zip5 data is not scoped to a time period currently).  I did find one needed change ... zip 629 (Vienna, IL) had a rate area of 252 but should have been 256.  There's a separate migration to fix that.
The two issues I addressed in the migrator are:

When parsing COPY statements, the parser was not matching the tariff400ng_* tables because the regex pattern didn't allow numbers in table names.
Previously, an assumption was made that only one COPY would appear in any migration.  Since a 400ng update involves a half dozen or so tables and we're now using pg_dump (and COPY) to create the needed migration, that assumption was no longer valid.  I also didn't want to split up the tables across separate migrations because I'd like all the data imported in a single transaction.

Setup
To test the import:

make db_dev_reset db_dev_migrate
Spot-check the data imported into the following tables against the 2020 400ng spreadsheet:

tariff400ng_full_pack_rates
tariff400ng_full_unpack_rates
tariff400ng_item_rates
tariff400ng_linehaul_rates
tariff400ng_service_areas
tariff400ng_shorthaul_rates

Also check for the changes noted above for zip 629 in the tariff400ng_zip3s table.
Note: Additional checks will be noted in the documentation.

To run server tests for the pkg/migrate fixes:

make server_test

Code Review Verification Steps

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in Querying the Database Safely have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #dp3-engineering
[ ] Secure migrations have been tested following the instructions in our docs

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change
2020 400NG Baseline Rates spreadsheet that serves as the basis for this import
Existing import process documentation (updated in this PR)

Thanks for adding the comments!

Warnings

:warning:
Please include the Jira ID at the start of the title with the format MB-123

  Generated by :no_entry_sign: dangerJS against 056b007f8a9426782a48b3cb00f15369c81edac8


Add note about combineReducers in AsyncActions documentation

It is somehow hard to grasp what's going on at first sight, specially for someone not much familiar with ES6.
I tried to explain the combineReducers part and let the reader figure out the ES6 part :)

I think that section is a bit too heavy now because the code snippet is followed by a note, and then the list. How about we move the note before the snippet, just below the section title, and put something like

Note

This section assumes you understand reducer composition with combineReducers(), as described in the introduction to reducers. If you don’t, please read it first.

What do you say?

I agree. I've updated the commit to reflect this.

Can you please make combineReducers() a link to its API reference?

Ofcourse :)


Validation loss is lower than training loss

This shouldn't be the case. Need to investigate

Changed the dataloaders and it now is similar to training loss


[MacOS] LXD socket not found; is LXD installed and running?

Hello,

Distribution: MacOS
Distribution version: Hight Sierra 10.13.1

Issue description
I have installed LXD with brew, then with build from source and when I type lxc info --debug I have

DBUG[11-13|09:48:03] Connecting to a local LXD over a Unix socket
DBUG[11-13|09:48:03] Sending request to LXD                   etag= method=GET url=http://unix.socket/1.0
LXD socket not found; is LXD installed and running?

I don't find any log file :x
Thanks

The LXD daemon itself (started by the lxd binary) cannot run natively on MacOS, only the client can.

You're going to want to add a remote LXD server using "lxc remote add", then you can use "lxc remote set-default" to have all commands default to that remote server.


Fix bp --help (fix #429)

I have actually looked at a few other parsers in the last couple of months.  Most of them appeared better but not so much better I wanted to take the couple of hours it would take to rip out the current one and drop in a new one, plus no doubt new bugs.
I spent some time playing with the app and I wasn't able to come up with any other command line bugs, so perhaps we're through.
Certainly next time I start something, I'll look for another command line parser than argparse.

Hah, this literally was announced yesterday:  https://docs.python.org/3.7/library/argparse.html#argparse.ArgumentParser.parse_intermixed_args
(Basically a way to fix this and another issue I have code for in main...)


UI live view hang on retryStrategy

Summary
When defining a step where the template have a retryStrategy (without maxDuration defined), the last step is hanging when looking its live progression through the UI (the step is running forever from the UI point of view).
Workaround: force a refresh of the browser with SHIFT+refresh button. Then you see that the workflow has passed and continued through its further steps.
retryStrategy:
    limit: 5
    backoff:
        duration: "5"
        factor: 2
        # maxDuration: "30s"

Diagnostics
I'm using argo v2.11.7 on a pure kubernetes installed on-premise.
View hanging

Message from the maintainers:
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.

Is this reproducible? It seems unlikely to us it is a problem with retry. Maybe you could add any information from the browser console.

Fixed with last version. v2.11.8 for me.

Fixed with last version. v2.11.8 for me.


EtcdMaintenanceImpl.setSnapshotCallback(...) never uses the supplied callback

Am I missing something? Or the callback parameter is never actually used?

taking a look.

@pgbunce the EtcdMaintenanceImpl code doesn't seem right. I'll take a stab on fixing it.


Support nested attributes

Description
given a scenario like the following:
class Item < ApplicationRecord
  has_many :comments

  accepts_nested_attributes_for :comments
end

class Comment < ApplicationRecord
  belongs_to :item
  counter_culture :item
end

if I update the nested attributes of an Item with a series of comments, the comments_count does not update
however, if I then touch each of the comments the comments_count on Item will reflect the correct count

and... it turns out this was user error, disregard nothing to see here :slightly_smiling_face:


NDT_MAPPING IN SMALL WAREHOUSE

hello every one.
I have a big problem with loop closure in ndt_mapping for my logistic robot.
do you have any idea to fix the problem.?

also, I tested Autoware from version 1.9 to 1.13.1 but still the same issue. I add odometry and Imu to ndt_mapping but it doesn't change anything.


Question: How to execute query with arguments?

Hi
Maybe this is a dumb question, but I can't find an answer anywhere...
How to run a query with arguments like select name from person where id = :id;
Thanks.

I think you're confusing SQL with query builder behaviors. When you're executing the query directly (like with SQLectron), you just plugin in whatever the value is.
select name from person where id = 1;
select name from person where id in (1,2,3,4)


Feature Request: 12 hour time clock

I would welcome a setting to change the clock format to a 12 hour format instead of a 24 hour format. Thanks

Perhaps ther could be a toggle to change 00-11 to "n AM" and 12-23 to "n PM" while only using numbers 00-12?


More command line switches support needed (-f,-si,-sc)

I don't see a way to pass parameters to support other command line switches such as -f, -si, and -sc.  1 second between samples is overkill for many of the things I want to measure.  A way to override this would be great.  Support for -f and -sc would be nice.

I realize now that -f option doesn't make sense for this library, however I still think -si and -sc support would be helpful.  I submitted a pull request in case the original contributor pays any attention to this anymore.


Does emptyDir storage can be reused across multiple steps?

Hey guys,
Can I share an empty_dir volumes across multiple steps ? -> https://github.com/argoproj/argo/blob/master/examples/volumes-emptydir.yaml
Idea is to avoid using PVC cuz they takes too much time to be created and mounted during my CICD workflow
Does argo make sure that the pods using the volumes are being mounted on the same node?
Example that fails:
# This example demonstrates the ability for a workflow to use an
# emptyDir volume.
#
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: volumes-emptydir-
spec:
  entrypoint: main
  volumes:
  - name: workdir
    emptyDir: {}

  templates:
  - name: main
    steps:
    - - name: volumes-emptydir-example
        template: volumes-emptydir-example
    - - name: volumes-emptydir-example-2
        template: volumes-emptydir-example-2
  - name: volumes-emptydir-example
    container:
      image: debian:latest
      command: ["/bin/bash", "-c"]
      args: ["echo 'toto' > /mnt/vol/toto.txt"]
      volumeMounts:
      - name: workdir
        mountPath: /mnt/vol
  - name: volumes-emptydir-example-2
    container:
      image: debian:latest
      command: ["/bin/bash", "-c"]
      args: ["cat /mnt/vol/toto.txt"]
      volumeMounts:
      - name: workdir
        mountPath: /mnt/vol

getting volumes-emptydir-2vhxz-2751420709: cat: /mnt/vol/toto.txt: No such file or directory

No, emptyDirs are at a per pod level and disappear when the pod completes. A workaround might be to use node-affinity against the steps which want to share a volume (so that they run on the same node), and use a hostPath to share the contents of the volume. However using hostPaths would be a security concern and are sometimes blocked by cluster operators.

Yeah that's what I wanted to avoid actually. It's sad that the emptyDirs are getting removed then pod is completed. The kubernetes doc only mention about "when the pod is not on the node anymore". Anyway, I ended up merging all my steps into one.
Thanks a lot for your answer.


chore(main): release 2.128.0

:robot: I have created a release beep boop
2.128.0 (2024-07-10)
Features

Selected options (#4311) (d32a320)

Bug Fixes

get_permitted_projects: get rid of distinct (#4320) (e7252cb)
version diff overflow (#4313) (2525636)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Flagsmith/flagsmith/releases/tag/v2.128.0 :sunflower:


Capture if a node module is private

The private field within a node module's package.json indicates when
true that the package cannot be published to a registry. This is a
strong indication that public CVE reported against a component of the
same name are likely do not affect this particular module.
This change introduce a Private bool to NpmPackageJSONMetadata that is
exposed in the Syft SBOM's metadata for an npm package artifact. It does
not directly consume the value in any way.
Resolves #1160
Signed-off-by: Scott Andrews<EMAIL_ADDRESS>

Hi @scothis, thank you very much for your contribution! We'll review it as soon as we can and get back to you with any comments or questions.

Approved - adding private field to metadata LGTM!

^ I'll update this test - looks like the license list has been updated behind the scenes.


Use full RGB color variables

Taken from comments on reddit

for the color variables it would be better to put the full color definition inside the variable:
--red: rgb(254,24,54);

doing so will let people with color plugins see and edit the color more easily, and will allow people to use other color types like Hex or HSL

Fixed in 1.2.0


Scheduled jobs

Two bugs:

When saving a scheduled job, the status says "Policy saved" instead of "Schedule saved"
If there are more than 10 scheduled jobs, the pager does not appear, so you cannot access schedules >=11.

Fixed at a446b1671c26fc62cd6920a1e7a59a22839e3f47.