Add pipeline for Debian PR testing and Debian package release

Contains https://github.com/theforeman/jenkins-jobs/pull/97 which should be merged first to make it easier to read this diff

#97 is merged

There is a bit to digest here, and where it made sense I have tried to break things out from shell into native groovy methods of code handling. The code is still a bit complex due to:

source generation requires different methods based on a few criteria
plugins are handled special in almost every case making for a lot of variation

their directory structure
that they are not staged unless its a pull request

I wonder if there are further optimizations we could make in the process to make it smoother to understand the branches. For example, choosing to stage plugins rather than release them directly to reduce those code branches.
These are all things that could be done before hand or after this is merged. Given this provides various benefits to get merged (e.g. an auto release job).

Pushed another round of updates, I think the things being discussed currently here can happen after this goes in. I am trying to balance improvements with getting a release job available to reduce overhead with debian packaging.

There are a couple options we could choose to deploy this and get comfortable with it:

Deploy just the PR testing job alongside the current PR testing job and let them run together, wait on enabling the release job
Replace current PR testing job with this one and let it run for a it and then enable the release job
Turn on just the release job to test the new code and leave existing PR testing / jobs in place and then turn on PR testing later
Just do it: turn everything new on and remove the old and fix it as we go

There is a syntax error somewhere, as all release related pipelines produce the following error:
{'error': "expecting ')', found '=' @ line 446, column 21."}
output/foreman-2.3-release-pipeline/config.xml: NOT OK

This now disables the current PR test and adds but keeps disabled the new release job. I am aiming to merge this on 9/7 to actively test Debian PR. Hopefully there will be a few open to try this out on.


Test trigger

What does this PR do?

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

[QuestionAnsweringExampleTester]

[QuestionAnsweringExampleTester]

image-classification


An element could not be located on the page using the given search parameters.

desired_caps = {}
desired_caps["app"] = "Root"
self.driver = webdriver.Remote(
command_executor='http://<IP_ADDRESS>:4723',
desired_capabilities=desired_caps
)
Current my driver's handle is the desktop
And I can find other app's handle using:
appWindow = self.driver.find_element_by_name("appname")
appWindowHandle = appWindow.get_attribute("NativeWindowHandle")
except for the window 'NVIDIA uninstall'
And I can't find the button or label on this window directly.
In inspect.exe, 'NVIDIA uninstall' is the children of the desktop just like other apps, but the exception is thrown when I run my code.

are the buttons visible in inspect.

are the buttons visible in inspect.

thanks for your quick response
yes it is visible in inspect
I can see the name, class name, automation Id and everything

Can you share code?

Can you share code?

Yes of course, but some of the names of element are shown in Chinese. I will add some translation in the annotation  to make it easier for you to understand.
class Tests(unittest.TestCase):
@classmethod
def setUpClass(self):
# set up appium
desired_caps = {}
desired_caps["app"] = "Root"
self.driver = webdriver.Remote(
command_executor='http://<IP_ADDRESS>:4723',
desired_capabilities=desired_caps
)
#open the control.exe because if I use desired_caps["app"] = "the executable path for control.exe", the driver cannot find the application
os.popen('control.exe')
@classmethod
def tearDownClass(self):
   self.driver.quit()

def test_uninstall_cuda_documentation(self):

#uninstall application interface where all install application are shown in a lisst in control.exe
self.driver.find_element_by_name("卸载程序").click()
#double click for uninstall to start
uninstall_element = self.driver.find_element_by_name("NVIDIA CUDA Documentation 10.0")
uninstallAction = selenium.webdriver.common.action_chains.ActionChains(self.driver)
uninstallAction.move_to_element(uninstall_element)
uninstallAction.double_click(uninstall_element)
uninstallAction.perform()
#find the uninstall button, "卸载" means "uninstall"
while len(self.driver.find_elements_by_name("卸载（C)")) == 0:
time.sleep(1)
self.driver.find_element_by_name("卸载（C)").click()
Then my program is stuck in the while loop.
These code works fine when uninstalling python 3.6. But when I try to uninstall CUDA, the elemnet could not be found.

@anunay1  When the uninstall .exe running, a splash windows appears firsts, I wonder if that's the reason why I can't seems to find any element or the window itself.

Yes that's the reason you are not able to find any controls.

@anunay1 But I tried creating a new session after the splash window disappears, desired_caps["app"] = "Root" , and I still can find every other window expect for the NIVIDA uninstall window.  Any pointers?

I found this in some similar issue, but I don't know how to code it in Python.
https://github.com/microsoft/WinAppDriver/blob/5398a93938747305c60596a55502bdad0319a7cd/Tests/WebDriverAPI/Window.cs#L98


KDS Buffer Auto Scaling: KDS to increase rapidly and can not scaling down

Describe the bug
The settings for KDS AutoScaling are overly sensitive, causing the number of shards for KDS to increase rapidly and preventing scaling down.
Expected Behavior
Scaling up and down based on customer's workload.
Current Behavior
The settings for KDS AutoScaling are overly sensitive, causing the number of shards for KDS to increase rapidly and preventing scaling down.
Reproduction Steps
Reproduce by having the data source consistently generate over 1000 logs per second.
Possible Solution
No response
Additional Information/Context
No response
Solution Version
v1.0.3
AWS Region. e.g., us-east-1
No response
Other information
No response

fixed in v2.0


Fix PaddlePaddle IR empty a_array and idx if 0

In some special cases:

'a_array' could be an empty list
'idx' of tensor could be 0 (just like a placeholder)

This PR fixed these problems ~
Test model:
empty_list.json
@lutzroeder Could you plz review this PR ~ Really thx!!! 😁

cc @wanghuancoder @changeyoung98 @luotao1


New extension - AdvancedPlatformCamera

AdvancedPlatformCamera [<IP_ADDRESS>]
Adds some cool improvements to camera follow behavior:

Interpolated dynamic zoom
You can set a dynamic zoom during the game to the camera, the current camera zoom will interpolate to the target one, adding a cool effect
Interpolated position following
Camera will follow the player with interpolation, so it will be less static and more dynamic, adding a realistic camera follow effect to the game

Check the extended description and changelogs here
Extension file
apc.zip

Sorry for the wait, I'll take a look today :)

Looks nice! A few remarks:
For the behavior description:

Advanced utilies for platformer camera (and others kind of player)

Could we put something more descriptive (Set the camera to follow the specified object with smooth transitions between positions and zooms)?
All of the actions are for the base layer, should we add a parameter to each action to enter the layer name? There is a "Layer" parameter type so it will be easy to use, and by default will be the base layer :)

@NicolaLC do you think the "Follow Multiple Objects With Camera" extension will meet your needs?  It can be used to follow a single object instance, and it uses lerp() to make the camera move smoothly.

Hello, I checked this out and as far as I see this is just wrappers for camera actions that add lerp. I think it is a good concept if it was actually like in the presentation video: a behavior you put on a sprite with the platformer behavior and that handles all the camera movement afterwards. Here, it still leaves so much work to do that it hardly shortens or simplifies anything. I therefore reject it.


Redis shows 100% CPU with Redisson library version 3.23.3.

Randomly Redis shows 100% CPU and all clients connected to that Redis instance become unresponsive. Clients need to be restarted for Redis to come back to normal CPU usage. We see this issue sometimes once a week and other times every few hours - so there is no consistent pattern in terms of use case or user action.
We worked with AWS as we use AWS managed Redis cache and their support engineer reviewed Redis configuration and confirmed there is nothing wrong with Redis and it is reaching 100% as large number of EVAL requests are coming from the client. Since we don't call EVAL directly from our code, assumption is that Redisson library is making these calls.
We see this error in the log file but I am assuming this is coming once Redis has reached 100% CPU and is an after effect:
Unable to send PING command over channel: [id: 0xcc4dc043, L:/<IP_ADDRESS>:57028 - R:<IP_ADDRESS>/<IP_ADDRESS>:6379]
org.redisson.client.RedisTimeoutException: Command execution timeout for command: (PING), params: [], Redis client: [addr=rediss://<IP_ADDRESS>:6379]
at org.redisson.client.RedisConnection.lambda$async$0(RedisConnection.java:256)
at io.netty.util.HashedWheelTimer$HashedWheelTimeout.run(HashedWheelTimer.java:715)
at io.netty.util.concurrent.ImmediateExecutor.execute(ImmediateExecutor.java:34)
at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:703)
at io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:790)
at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:503)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:833)
We don't see anything logged before this error message so not able to figure out what is causing the issue. We also looked at the thread dumps and do not see anything obvious there. All netty threads were in WAITING state and other Redisson threads are either Running or in WAITING state.
### Expected behavior
We should not be having RedisTimeoutException in the logs and Redis should not reach 100% CPU..
Actual behavior
100% CPU utilisation followed by RedisTimeoutException
### Steps to reproduce or test case
Completely random - sometimes it does not happen for a week and other times we see it every few hours in our production environments.
Redis version
7
Redisson version
3.23.3
Redisson configuration
config.useClusterServers().addNodeAddress(nodeAddress).setReadMode(ReadMode.SLAVE).setSubscriptionMode(
SubscriptionMode.MASTER).setTimeout(5000).setRetryAttempts(5).setRetryInterval(
2000).setMasterConnectionMinimumIdleSize(2).setMasterConnectionPoolSize(
24).setSlaveConnectionMinimumIdleSize(2).setSlaveConnectionPoolSize(
12).setSubscriptionConnectionMinimumIdleSize(2).setSubscriptionConnectionPoolSize(
5).setSubscriptionsPerConnection(5);

Can you share SLOWLOG command output?


Ci

This pull request introduces Github Actions workflow for CI that supports multiple platforms (Linux, macOS, and Windows).
Including few changes in order to make the code compatible, with a little improvement of CMake files.

@philomath213 thanks! I am testing the Mac right now. Windows checks out.

@philomath213 thanks! I am testing the Mac right now. Windows checks out.


Pokeballs count fix.

Short Description:
Fixing # get player balls stock
Fixes:
Fixing # get player balls stock

These same changes were made in #388 and I believe it got reverted a few minutes after it got merged.  Not sure about all the issues it causes but the comments seem to suggest the logging will be messed up since it's not an int


[kernel] Plumb through int8 mfma support

Adding support for the following mfma instrinsics and tests:
    v_mfma_i32_32x32x16_i8
    v_mfma_i32_16x16x32_i8

there are also blocked versions:
    v_mfma_i32_32x32x4_2b_i8
    v_mfma_i32_16x16x4_4b_i8
    v_mfma_i32_4x4x4_16b_i8

but we can worry about those later.

iree branch: https://github.com/iree-org/iree/tree/shared/sdxl_quantized
punet_06_19_all_signed.mlir: https://gist.github.com/aviator19941/7e2396d3aa8b4f26773c4296cf620a95
punet_06_19.irpa: https://sharkpublic.blob.core.windows.net/sharkpublic/avi/punet_06_19.irpa
iree-compile punet_06_19_all_signed.mlir --iree-global-opt-propagate-transposes=true --iree-opt-const-eval=false --iree-opt-outer-dim-concat=true --iree-vm-target-truncate-unsupported-floats --iree-llvmgpu-enable-prefetch=true --iree-opt-data-tiling=false --iree-codegen-gpu-native-math-precision=true --iree-rocm-waves-per-eu=2 --iree-flow-inline-constants-max-byte-length=1 --iree-preprocessing-pass-pipeline="builtin.module(iree-preprocessing-transpose-convolution-pipeline, util.func(iree-preprocessing-pad-to-intrinsics))" --iree-flow-enable-aggressive-fusion --iree-global-opt-enable-fuse-horizontal-contractions=true --iree-opt-aggressively-propagate-transposes=true --iree-codegen-llvmgpu-use-vector-distribution=true --iree-hal-target-backends=rocm --iree-rocm-target-chip=gfx942 --iree-vm-bytecode-module-output-format=flatbuffer-binary --iree-codegen-transform-dialect-library="spec.mlir" -o punet_06_24_all_signed.vmfb

I have a tested and numerically correct WIP here https://github.com/iree-org/iree/tree/shared/int8mfma
Using initial IR from: https://gist.github.com/raikonenfnu/99ca5a7cfca08e1b94e966ee77c63b11
and inputs and reference numpy from:
import numpy as np

lhs = np.random.randint(64 ,size=(128, 256))
rhs = np.random.randint(64 ,size=(256, 128))
ref = np.dot(lhs, rhs)

np.save("lhs_i8.npy", lhs.astype(np.int8))
np.save("rhs_i8.npy", rhs.astype(np.int8))
np.save("ref.npy", ref)

Nice. Can someone merge this with the quant branch above and get a perf readout?

Stan's change in the above gets us mfma intrinsics. To properly wire up and enable in the model we additionally need to teach MMA deduction logic to see through the fused extsi op. Something like this one.
Also need to add some correctness tests in the e2e matmul.

np.save("ref.npy", ref)

This contains the same bug that I made -- when you save the golden output, the default data type is int64 instead of int32. This should be np.save("ref.npy", ref.asdtype(np.int32) to produce bit-identical results with the correct output from iree-run-module.

PR: https://github.com/iree-org/iree/pull/17764

Closing given the above PR is merged.


Mouse work not correct in some games

Hyprland Version
 System/Version info
commit 3d9ca6381df1cdbf1731d7e2b39ea3f7574fce1e dirty (crashreporter: fix logging of function data (4632)).
Tag: v0.35.0-7-g3d9ca638

Bug or Regression?
Bug
Description
Most of the launches, for example, CS2, do not have correct capture, show too reliable sensitivity, changing the window to full screen does not help, switching between windows does not help.
How to reproduce
Test in CS2
Crash reports, logs, images, videos
https://github.com/hyprwm/Hyprland/assets/111539573/332f0a95-4a80-4932-bbfb-f538ffb680dc

IIRC that's a cs2 bug.
For me, with csgo-vulkan-fix from hyprland-plugins, I've never had this happen.

For me, with csgo-vulkan-fix from hyprland-plugins, I've never had this happen.

its work fine :D


Update BINDINGS.md (version change for raylib-ocaml)

Bump version supported version by raylib-ocaml.

@Lattay Thanks for the update! 😄👍


Question on #220 Measuring companies' AppSec

Ref: [ https://github.com/DinisCruz/Book_Software_Quality/pull/220]
Thanks for your comments and changes to this chapter.
I just want to check I have understood the following sentence properly, on line 21: "There is still a huge amount of cost in moving away from that scalable platform to what I call the 'logging index' that we will be tracking."  Am I correct to call it a "logging index" , and am I correct to say "We will be tracking", and not  'that tracks all activity'. (url)
Thanks.

It actually should be 'locking index' as in 'lock-in the customer into the software'
Also the ### only need to appear at the begining of the title


feat(optimizer): support column pruning for some operators

Signed-off-by: lokax<EMAIL_ADDRESS>#654

That's so cool! I'll take a look later. cc @st1page may also help 🥰


Upgrade FuzzUtil to support Bellatrix

PR Description
This PR updates the fuzz utility (FuzzUtil) from Phase0 to Bellatrix. I thought about creating a new FuzzUtilBellatrix class but decided against it because I do not think we need to support old versions (Phase0 & Altair).
I am not sure how the original developers of this created all of the pyspec yaml files. I do not see any generator options for this. I will need to either figure out how to do this or delete all of the old yaml files to avoid any confusion.
Fixes #5216.
Documentation

[x] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[x] I thought about adding a changelog entry, and added one if I deemed necessary.

So I just learned of the zcli utility that can convert ssz files to json/yaml for inspection. With this tool, I think we should remove all of the yaml files as they are no longer produced during generation. For example:
$ zcli pretty bellatrix BeaconState --preset-phase0=minimal --preset-altair=minimal pre.ssz | head
{
  "genesis_time": "0",
  "genesis_validators_root": "0x5dec7ae03261fde20d5b024dfabce8bac3276c9a4908e23d50ba8c9b50b0adff",
  "slot": "0",
  "fork": {
    "previous_version": "0x01000001",
    "current_version": "0x02000001",
    "epoch": "0"
  },
  "latest_block_header": {

In the same spirit, since the pyspec generators now produce .ssz_snappy files by default, I think we should swap to that format and update the loadSsz method to snappy uncompress it first. This will be easier for others to reproduce. My understanding is that the generators used to produce both .ssz and .yaml files but switched at some point in the past two years, presumably to save space.

For snappy compressed ssz files, you would use this command to print it:
$ zcli pretty bellatrix BeaconState --preset-phase0=minimal --preset-altair=minimal ssz_snappy:pre.ssz_snappy

zcli is awesome. :). For the record we recently added the subcommand teku debug-tools pretty-print to support converting SSZ objects to either json or yaml. It can read .ssz_snappy files directly as well which I always found frustrating with zcli.
I'd agree that removing the YAML files and moving .ssz_snappy makes sense since it matches the reference tests.

Sweet. I'll make those changes. And awesome, I didn't know about debug-tools!

Hmm updating .gitattributes and re-adding the file didn't seem to do the trick. Git (via git check-attr) knows that it is binary, but GitHub still shows it as text. I think it either has something to do with eol (end-of-line) and/or the file length; it's the smallest file of the bunch at 103 bytes. Let me try removing the eol attribute for binary files & re-adding the file.
$ git check-attr --all -- sync_aggregate.ssz_snappy
sync_aggregate.ssz_snappy: binary: set
sync_aggregate.ssz_snappy: diff: unset
sync_aggregate.ssz_snappy: merge: unset
sync_aggregate.ssz_snappy: text: unset
sync_aggregate.ssz_snappy: eol: lf

$ git check-attr --all -- pre.ssz_snappy
pre.ssz_snappy: binary: set
pre.ssz_snappy: diff: unset
pre.ssz_snappy: merge: unset
pre.ssz_snappy: text: unset
pre.ssz_snappy: eol: lf

Nope, didn't work. I'm not sure what we can do. It might just be a problem with GitHub's file review.

Cool thanks - probably is just a GitHub display issue. Must think the file is small enough to display even though it's binary.

hmm, we did something bad to git attributes and broke the windowsBuild. I'll have a play with it and see if I can figure it out.

Ah thank you for reverting that.


Deploy agent on metal instances launched for KMT

What does this PR do?
This PR deploys the datadog-agent on the metal instances launched as part of KMT.

Motivation
Get metrics on the resource utilization of the metal instance. These can then be used to make decisions about changing instance types, and restructuring the tests for more efficient resource usage.

Additional Notes
Associated PR in test-infra-definitions

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Looks like the setup job failed and a retry doesn't work. Can you ensure KMT passes?

Looks like the setup job failed and a retry doesn't work. Can you ensure KMT passes?

The initial failure is a known condition.
The retry failed because the underlying metal instance was cleaned up.
I will run the pipeline again to make it green


GPU-acceleration in OSKAR

#134 is currently blocked because our simulations are not fast enough, even on CSCS. OSKAR is currently running in a CPU-only configuration. We need a way to distribute Karabo that supports both CPU-only and GPU-accelerated versions of our dependencies.
Options:
a) Build dependencies in such a way that they pick the right version at runtime
b) Build dependencies in multiple configurations, Karabo ships with both dependencies, and Karabo decides at runtime which dependency to run.
c) Build from source on every installation
Option b) might be easier to set up, option a) would be easier for all non-Karabo users. Option c) is something that Victor (CSCS) is working on but probably not the right solution for general distribution.

Perhaps a build compiled with CUDA- & OpenCL-support could be used on all machines after all?
https://ska-telescope.gitlab.io/sim/oskar/settings/settings-simulator.html suggest there's a runtime configuration switch. But perhaps it only allows users with CUDA to temporarily disable CUDA. It's likely that a CUDA-build wouldn't work on non-CUDA machines, despite disabling it in the configuration file.

I tried to find out exactly where we chose to build oskar without CUDA support. Do we know this? I found this:
#mkdir -p $PREFIX
#cmake -DCFIND_CUDA=OFF -DCUDA_ARCH="3.5;3.7;5.0;5.2;6.0;6.1;6.2;7.0;7.5" -DNVCC_COMPILER_BINDIR=$CXX -DCMAKE_INSTALL_PREFIX=$PREFIX
# for some reason without the extra LICENCE call the build tells that it doesn't exists and thus fails
wget https://github.com/OxfordSKA/OSKAR/blob/master/LICENSE

pkgv=$(sed 's/dev//g' <<< "$PKG_VERSION")

mkdir tmp
cd tmp
git clone --branch "$pkgv" https://github.com/OxfordSKA/OSKAR.git .
cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
make -j install
cd ..
rm -rf tmp
#
#export OSKAR_INC_DIR=$PREFIX/include
#export OSKAR_LIB_DIR=$PREFIX/lib
#
#cd $SRC_DIR/python && $PYTHON -m pip install .  -vv

from https://github.com/i4Ds/oskar-build/blob/master/oskar-base/conda/build.sh
I am not sure why so much is commented out. Did we ever try to just build it with CUDA enabled and see what happens if we use use_gpu in Oskar as following:
        setting_tree = oskar.SettingsTree("oskar_sim_interferometer")
        if use_gpu:
            settings1 = {**settings1, **{'simulator/use_gpus': use_gpu}}
        setting_tree.from_dict(settings1)

CUDA builds of karabo/OSKAR/RASCIL on CPU-only machines work for me (finally). use_gpus needs to be set to False at runtime to avoid errors though.
On a side note (for future builds): I found that installing rascil, in particular ska-sdp-func, has an issue when CUDA >=11.6 and compiled with GCC 12. Installing and compiling ska-sdp-func manually with GCC 11 seems to work. Has anybody observed similar problems?

I also found this to install cuda on github hosted instances: https://github.com/Jimver/cuda-toolkit
Maybe we could just prebuild karabo with cuda and gpu support?

Yeah, that sounds reasonable. Should we do something with OpenCL? Wonder how many users there are that are using AMD cards. Perhaps something to worry about later. If we could quickly get a Cuda version running, that'd be amazing.


update terraform-aws-dynamodb-autoscaler version

what
set minimum versions for providers without pinning to a specific major version
why
the current method makes it very difficult to maintain or upgrade consistent provider versions within a project
references
https://www.terraform.io/docs/configuration/provider-requirements.html#best-practices-for-provider-versions

unclear why this build is failing. seems unrelated to code changes.

love your work @woz5999 , any chance this can get merged?

@osterman

/test all

@osterman @aknysh looks like this is ready to merge.


ModuleSettings should interpret 1 as boolean true

When invoking ModuleSettings.getBoolean() it looks just for true, but it should also work with "C" values.

See also #19.


rename bandit.yaml to bandit.yml

Fixes #679  (?)
We're still seeing the warning for using asserts in tests.
I think it might be because I named the file slightly wrong.

:+1:


if my image size:256*256,should I modify this model structure

@daixiangzi Hello, have you solved this problem?

Yes.i modify window size
我没有什么天赋，我只是生而由来的执着。
------------------ Original ------------------
From: yangdaowu @.>
Date: Tue,Dec 21,2021 2:11 PM
To: berniwal/swin-transformer-pytorch @.>
Cc: daixiangzi @.>, Mention @.>
Subject: Re: [berniwal/swin-transformer-pytorch] if my imagesize:256*256,should I modify this model structure (Issue #18)
@daixiangzi Hello, have you solved this problem?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.Message ID: @.***>

It's window_ Size? It was originally set to 7. Why did you set it to be better

It's window_ Size? It was originally set to 7. Why did you set it to be better

yes, adapt 256*256 input

Ok, thank you for your answer, thank you very much.


Update to serde 0.9.0

Check out the release notes here: https://github.com/serde-rs/serde/releases/tag/v0.9.0

Whoa you are way ahead of me. Sorry! :sweat_smile:

All the credit goes to @sfackler. He is a terrific crate maintainer and updated serde-cbor before I could even respond to issue #22 he opened.


[graphics] MERC

Lots of weird bugs still, but it is recognizable as Jak and Daxter.
Don't look too closely at MercProgram.cpp... it's gross.

MERC Bugs
Textures failing test
It's particularly obvious on crates:

but also happens on various platforms/precursor doors.
Jak is Transparent

Happens reliably at the village2 checkpoint. Just walk forward slightly.  Jak's hair is sometimes transparent too, but this might be okay because we're rendering his hair with the wrong renderer.
Merc and tfrag dirt don't seem to line up
Jak's feet are on the ground correctly, but the "dirt" is above the ground:

This could be a tfrag issue instead of a merc issue, I'm not sure.
Texture "flashing"
Hard to capture a screenshot, but the fisherman's boat tends to flash violently.
Near objects (clipping?) sometimes positioned wrong.

The normal merc renderer can clip using a mode called "merc prime".  However, it can't always clip, evidently if an edge is too long, as seen on-screen I think. (side note: this is why all the skelgroups have a longest-edge thing).
The check longest edge check appears to work (has reasonable numbers, and eventually decides things are too close).  But, if you get right near the limit, merc will have some weird clipping failures.
An easy way to trigger this is the first cutscene when you talk to keira, daxter walks toward the camera.
Another good spot is to walk a bit forward

Sky Garbage

Sometimes the sky is filled with garbage. This is merc triangles that are very far in the distance. This might be the same as the problem above but the object ends up partially behind the camera.

With those bug fixes, the only remaining issue is the clipping stuff. It looks like any time mscal 17 or 32 is used ("merc prime") the output is garbage.  The decision to use normal/prime appears to be correct, and the decision to go from prime -> generic is also reasonable looking.  So I don't think we're accidentally using prime when we should be using generic.
Interestingly, if you use prime in cases where you don't need it, it is bad in a similar way.  I'd expect this to work (as the guard band check that picks merc prime over normal is conservative)

Merc is now working correctly!  I've also set it up to try rendering things that would normally be rendered by other renderers, so there are still some graphical glitches caused by this.  In particular, stuff close to the camera can have clipping disasters and stuff rendered normally with generic may have bad blending/alpha settings.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

29 of 3611 (0.8%)  changed or added relevant lines in 14 files are covered.
27 unchanged lines in 5 files lost coverage.
Overall coverage decreased (-2.02%) to 47.425%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

decompiler/VuDisasm/VuInstruction.h
0
1
0.0%

decompiler/analysis/mips2c.cpp
0
1
0.0%

game/graphics/opengl_renderer/tfrag/tfrag_common.cpp
0
1
0.0%

common/dma/dma.cpp
0
2
0.0%

decompiler/VuDisasm/VuInstruction.cpp
0
2
0.0%

game/mips2c/mips2c_private.h
0
5
0.0%

game/graphics/opengl_renderer/DirectRenderer.cpp
0
13
0.0%

game/graphics/opengl_renderer/OpenGLRenderer.cpp
0
28
0.0%

game/graphics/opengl_renderer/MercRenderer.h
0
175
0.0%

game/graphics/opengl_renderer/MercRenderer.cpp
0
207
0.0%

Files with Coverage Reduction
New Missed Lines
%

common/dma/dma.cpp
2
0%

../../../../../usr/lib/gcc/x86_64-linux-gnu/9/include/emmintrin.h
2
0%

game/graphics/opengl_renderer/DirectRenderer.cpp
3
0%

game/mips2c/mips2c_private.h
3
4.68%

../../../../../usr/lib/gcc/x86_64-linux-gnu/9/include/xmmintrin.h
17
0%

Totals

Change from base Build<PHONE_NUMBER>:
-2.02%

Covered Lines:
41207

Relevant Lines:
86889

💛  - Coveralls


Set pre-optimization iteration cap as function of FLOPs rather than loops

The same number of loops in the get_words_for_board_optimize_fast function can have wildly varying numbers of internal steps as currently measured. This causes some inputs to run for several minutes despite technically having a low loop count
Add the true loop # and/or optimize the function
Can be tested with the long-running input:
python make_puzzle_v2.py "conference" "deadline" --packing-constant=1.22 --strategy=median --pivot=max_freq --optimize-words

Added in d99ad4a..7ab4e48
Would be better to optimize the underlying algorithm since with the function-calls this is basically a 5x-nested loop, but this is good-enough for now


fix label formatting on image-attribute admin button using materialize

Currently, the button on the admin page for the image button using materialize has some broken formatting:

Fixed by moving the <br> tag and adding the input-field class to the element containing the button, copying the formatting from the "orionMaterializeFileAttribute" template:

This doesn't address the other inconsistencies between the two buttons (size, presence of waves-effect on file and not image, etc); not sure if the differences are intentional/, due to file-attribute having a separate materialize version but image-attribute not, or something else.

Great


Cross building for arm64 on x64 host issues

Hi @HidenoriMatsubayashi ,
I followed the guide in https://github.com/sony/meta-flutter to cross build using Yocto sdk (Skipped Cross-building using bitbake section). Everything succeeded. Then, I ran "source /opt/poky/3.1.15/environment-setup-aarch64-poky-linux" , "export CC=${CLANGCC}" and "export CXX=${CLANGCXX}". After that, I tried to run "flutter-elinux build elinux --target-arch=arm64
--target-compiler-triple=aarch64-poky-linux --system-include-directories=/usr/aarch64-linux-gnu/include/c++/9/aarch64-linux-gnu -v" in https://github.com/sony/flutter-elinux/wiki/Building-flutter-apps#case-2-use-yocto-sdk.
But it gave me the following errors:
[  +96 ms] executing: [/opt/flutter-elinux/sample/build/elinux/arm64/release/]
cmake -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_BACKEND_TYPE=wayland
-DFLUTTER_TARGET_PLATFORM_SYSROOT=/
-DFLUTTER_SYSTEM_INCLUDE_DIRECTORIES=/usr/aarch64-linux-gnu/include/c++/9/aarch6
4-linux-gnu -DCMAKE_C_COMPILER_TARGET=aarch64-poky-linux
-DCMAKE_CXX_COMPILER_TARGET=aarch64-poky-linux /opt/flutter-elinux/sample/elinux
[ +225 ms] -- Toolchain file defaulted to
'/opt/poky/3.1.15/sysroots/x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfi
g.cmake'
-- The CXX compiler identification is Clang 10.0.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to:
/opt/flutter-elinux/sample/build/elinux/arm64/release
[        ] executing: [/opt/flutter-elinux/sample/build/elinux/arm64/release/]
cmake --build .
[ +821 ms] Scanning dependencies of target flutter_assemble
[  0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_plugin
[  7%] Building CXX object
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_
client_wrapper/core_implementations.cc.o
                In file included from
                /opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_clie
                nt_wrapper/core_implementations.cc:21:
                In file included from
                /opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_clie
                nt_wrapper/include/flutter/engine_method_result.h:8:
                //lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/
                9/memory:121:25: error: cast from pointer to smaller type
                'uintptr_t' (aka 'unsigned int') loses information
                  const auto __intptr = reinterpret_cast<uintptr_t>(__ptr);
                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                1 error generated.
                make[2]: ***
                [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63
                :
                flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_
                client_wrapper/core_implementations.cc.o] Error 1
                make[1]: *** [CMakeFiles/Makefile2:118:
                flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] Error 2
                make: *** [Makefile:130: all] Error 2

[  +21 ms] Building an eLinux application with wayland backend in release mode
for arm64 target... (completed in 1,833ms)
[        ] "flutter elinux" took 2,504ms.
[   +7 ms] Failed to cmake build:
Scanning dependencies of target flutter_assemble
[  0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_plugin
[  7%] Building CXX object
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o
       In file included from

/opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_client_wrapper/core_impl
ementations.cc:21:
In file included from
/opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_client_wrapper/include/f
lutter/engine_method_result.h:8:
//lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/9/memory:121:25:
error: cast from pointer to smaller type 'uintptr_t' (aka 'unsigned
int') loses
information
const auto __intptr = reinterpret_cast<uintptr_t>(__ptr);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: ***
[flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:118:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
[   +9 ms]
0      throwToolExit
(package:flutter_tools/src/base/common.dart:10:3)
1      NativeBundle.build
(package:flutter_elinux/elinux_build_target.dart:387:7)

2      ELinuxBuilder.buildBundle
(package:flutter_elinux/elinux_builder.dart:135:7)

3      BuildPackageCommand.runCommand
(package:flutter_elinux/commands/build.dart:121:5)

4      FlutterCommand.run.
(package:flutter_tools/src/runner/flutter_command.dart:1161:27)

5      AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

6      CommandRunner.runCommand
(package:args/command_runner.dart:209:13)

7      FlutterCommandRunner.runCommand.
(package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)

8      AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

9      FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)

10     run..
(package:flutter_tools/runner.dart:62:9)

11     AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

12     main (package:flutter_elinux/executable.dart:83:3)

[   +6 ms] ensureAnalyticsSent: 3ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 1
Additional information:
OS: Ubuntu 20.04.4 LTS
Followed the instructions in https://github.com/sony/flutter-embedded-linux/issues/4#issuecomment-1090157925 to disable the compiler test for C and C++, set the target architecture and swap the x86_64 and the ARM64 linker as the Yocto SDK is using the wrong linker.
Regards,
Toy

How about the below?
$ source /opt/poky/3.1.15/environment-setup-aarch64-poky-linux
$ export CC=${CLANGCC}
$ export CXX=${CLANGCXX}
$ flutter-elinux build elinux --target-arch=arm64 --target-compiler-triple=aarch64-poky-linux

You used --system-include-directories=/usr/aarch64-linux-gnu/include/c++/9/aarch64-linux-gnu -v option, right?

Hi Matsubayashi,
Commands Run:
$ source /opt/poky/3.1.15/environment-setup-aarch64-poky-linux
$ export CC=${CLANGCC}
$ export CXX=${CLANGCXX}
$ flutter-elinux build elinux --target-arch=arm64 --target-compiler-triple=aarch64-poky-linux
Failed to cmake build:
Scanning dependencies of target flutter_assemble
[  0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_plugin
[  7%] Building CXX object
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o
In file included from
/opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_client_wrapper/core_impl
ementations.cc:16:
//lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/9/cassert:43:10:
fatal error: 'bits/c++config.h' file not found
#include <bits/c++config.h>
^~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:118:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
If I use the "--system-include-directories" option (https://github.com/sony/flutter-elinux/wiki/Building-flutter-apps#troubleshooting), it gives a different error.
Commands Run:
$ source /opt/poky/3.1.15/environment-setup-aarch64-poky-linux
$ export CC=${CLANGCC}
$ export CXX=${CLANGCXX}
$ flutter-elinux build elinux --target-arch=arm64
--target-compiler-triple=aarch64-poky-linux  --system-include-directories=/usr/aarch64-linux-gnu/include/c++/9/aarch64-linux-gnu -v
Failed to cmake build:
Scanning dependencies of target flutter_assemble
[  0%] Built target flutter_assemble
Scanning dependencies of target flutter_wrapper_plugin
[  7%] Building CXX object
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o
       In file included from

/opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_client_wrapper/core_impl
ementations.cc:21:
In file included from
/opt/flutter-elinux/sample/elinux/flutter/ephemeral/cpp_client_wrapper/include/f
lutter/engine_method_result.h:8:
//lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/9/memory:121:25:
error: cast from pointer to smaller type 'uintptr_t' (aka 'unsigned
int') loses
information
const auto __intptr = reinterpret_cast<uintptr_t>(__ptr);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: ***
[flutter/CMakeFiles/flutter_wrapper_plugin.dir/build.make:63:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/ephemeral/cpp_client_wrapper/core_
implementations.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:118:
flutter/CMakeFiles/flutter_wrapper_plugin.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
[   +5 ms]
#0      throwToolExit
(package:flutter_tools/src/base/common.dart:10:3)
#1      NativeBundle.build
(package:flutter_elinux/elinux_build_target.dart:387:7)

#2      ELinuxBuilder.buildBundle
(package:flutter_elinux/elinux_builder.dart:135:7)

#3      BuildPackageCommand.runCommand
(package:flutter_elinux/commands/build.dart:121:5)

#4      FlutterCommand.run.
(package:flutter_tools/src/runner/flutter_command.dart:1161:27)

#5      AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

#6      CommandRunner.runCommand
(package:args/command_runner.dart:209:13)

#7      FlutterCommandRunner.runCommand.
(package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)

#8      AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

#9      FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)

#10     run..
(package:flutter_tools/runner.dart:62:9)

#11     AppContext.run.
(package:flutter_tools/src/base/context.dart:150:19)

#12     main (package:flutter_elinux/executable.dart:83:3)

Could you use --target-sysroot option? I successed the build using its option.
$ sudo mv /opt/poky/3.1.16/sysroots/x86_64-pokysdk-linux/usr/bin/ld /opt/poky/3.1.16/sysroots/x86_64-pokysdk-linux/usr/bin/ld.x86_64
$ sudo cp -a /opt/poky/3.1.16/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-ld /opt/poky/3.1.16/sysroots/x86_64-pokysdk-linux/usr/bin/ld

$ source /opt/poky/3.1.15/environment-setup-aarch64-poky-linux
$ export CC=${CLANGCC}
$ export CXX=${CLANGCXX}
$ flutter-elinux build elinux --target-arch=arm64 --target-compiler-triple=aarch64-poky-linux --target-sysroot=/opt/poky/3.1.16/sysroots/aarch64-poky-linux

Also, I updated Case 2: Use Yocto SDK.

I'll close this issue, but please let me know if you have still any problems.

Hi Matsubayashi,
This command "flutter-elinux build elinux --target-arch=arm64 --target-compiler-triple=aarch64-poky-linux --target-sysroot=/opt/poky/3.1.16/sysroots/aarch64-poky-linux" works.
It is strange that I tried that command before but it didn't work with the exact same steps. Probably now it works because my Poky version is now 3.1.16?
Anyways, Thanks for your help :)

It sounds nice. You're welcome.


docs(transport-smtp): fix docs for domain field

The domain field does not get “send to the server”, but is used to
check the authenticity of the server.
Fixes #363

There were the following issues with your Pull Request

Commit: 5d73bef5f3e78857b554896d4311b15aedda5065
Your commit message body contains a line that is longer than 72 characters

Guidelines are available at https://github.com/lettre/lettre/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: 8ac515e1a863b4c8721585fcd87f2eefa96f541f
Your commit message body contains a line that is longer than 72 characters

Guidelines are available at https://github.com/lettre/lettre/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

Indeed, this was really misleading. Thanks!


Clarify how to enable analytics

Analytics can be enabled using the portal OR using powershell. Changing from letters to numbers and some wording to make that clear.

Hi @bernitorres, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (betorres). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;

Sorry, I made a mistake. I will open this PR against private


Move the NaN special case check into float itself.

This was the facepalm one I was talking about recently.


Add the SelectionStrategy type.

Issue Number
ADP-1499
Summary
This PR is intended to be a pure refactoring, with no changes to behaviour. It adds the SelectionStrategy type to the coin selection library, which will eventually be defined as:
data SelectionStrategy
    = SelectionStrategyMinimal
    | SelectionStrategyOptimal

This PR adds only the SelectionStrategyOptimal constructor: this strategy corresponds to the existing behaviour of coin selection.
A future PR will add the SelectionStrategyMinimal constructor, along with appropriate test coverage.
Explanation
These two strategies are intended to correspond to the following behaviours:

Specifying the optimal strategy (currently the default) should cause the coin selection algorithm to attempt to select around twice the minimum possible amount of each asset from the available UTxO set, making it possible to generate change outputs that are roughly the same sizes and shapes as the user-specified outputs.

Specifying the minimal strategy should cause the coin selection algorithm to select just enough of each asset from the available UTxO set to meet the minimum amount. When the minimum amount of each asset is satisfied, coin selection should terminate. This strategy, if used frequently, may sacrifice the long-term health of the wallet’s UTxO distribution, as it’s likely to produce a greater concentration of dust values. Therefore, it should only be used as a fallback: i.e., if using the optimal strategy produces a selection that is too large.

bors r+


Create additional functionality for Array Libraries

Right now we have functions implemented in the Array Libraries that we are using for our other libraries, but other types of functions could be useful in the future for different types of libraries and applications.  Some other functionality can be added based on what is found in other language's standard libraries, like underscore for Javascript.   Make sure you add test cases for all the new functionality
Keep in mind that returning dynamic arrays from externally called functions in Solidity will not be implemented until Metropolis, but how awesome would it be if we had functions ready for that when it comes out?
Josh can help with details of the Array Library

I'm on it. Will come up with a list of potential function candidates soon.


Segmentation Fault: trying to use foreign functions stored in Map.

So I have these maps meant to hold wren foreign functions:
static std::map<const char*, WrenForeignMethodFn> _methods;
static std::map<const char*, WrenForeignMethodFn> _classes;

void setMethod(const char* name, WrenForeignMethodFn f)
{
	_methods.insert(std::make_pair(name, f));
}

WrenForeignMethodFn getMethod(const char* name)
{
	std::map<const char*, WrenForeignMethodFn>::iterator it = searchByKey(_methods, name);
    auto v = it->second;
	return v;
}

void setClass(const char* name, WrenForeignMethodFn f)
{
	_classes.insert(std::make_pair(name, f));
}

WrenForeignMethodFn getClass(const char* name)
{
	std::map<const char*, WrenForeignMethodFn>::iterator it = searchByKey(_classes, name);
    auto v = it->second;
	return v;
}

And I have functions for binding foreign class and foreign methods:
WrenForeignClassMethods bindClass(WrenVM *vm, const char *module, const char *className) {
	if(strcmp(module, "main") != 0){
		throw "tried to bind foreign class from non-main module";
	}

	WrenForeignMethodFn c = getClass(className);

	WrenForeignClassMethods holder;

	holder.allocate = c;
	holder.finalize = NULL;

	return holder;
};
WrenForeignMethodFn bindMethod(WrenVM *vm, const char *module, const char *className, bool isStatic, const char *signature)
{
	if(strcmp(module, "main") != 0){
		return WrenForeignMethodFn(0);
	}
	std::stringstream fullName;
	if(isStatic) {
		fullName << "static ";
	}
	fullName << className << "." << signature;

    WrenForeignMethodFn  m = getMethod(fullName.str().c_str());

	return m;
};

But when I run the VM, I get a segmentation fault: segmentation fault: 11
Any ideas what I might be doing wrong?

I realized I can only assign static functions as a WrenForeignMethodFn;
I am going to close this issue; however.. I need ideas on how to dynamically assign foreign methods.

The fact it is static is not related to the error, I would suggest to use
valgrind to try to have a better view of what is going on.

@mhermier  I realize that the code was failing when I try to assign a function pointer to WrenForeignClassMethods.allocate or when I try to bind a foreign method.


Icon matching sometimes gets the wrong icon

Homework

[X] I looked at nativefier --help and https://github.com/nativefier/nativefier/blob/master/API.md
[X] I checked the Troubleshooting section of the README.
[X] I searched existing issues, open & closed. Yes, my bug is new.
[X] I'm using the latest version available at https://github.com/nativefier/nativefier/releases

Bug description
This one is very simple: icon lookup for e.g. trainingpeaks.com wrongly matches the icon for ing.
How can I override this behavior/prevent lookup in nativefier-icons?
Steps to reproduce
nativefier www.trainingpeaks.com --name 'TrainingPeaks' gives:
...
Sanitized filename for TrainingPeaks : TrainingPeaks
Got 249 icons from gitcloud
Max icon match score: 1
Downloading https://nativefier.github.io/nativefier-icons/files/ing.png
...

Expected behavior
Not get the wrong icon :-)
Actual behavior
Debug info
Context

Nativefier: 45.0.0
Node.js: v14.17.3
Npm: 6.14.13
OS: Big Sur 11.5.2 (20G95)
Additional context: none

Duplicate of #969 and #1125.
You can use a custom image file on you system by using the --icon flag
https://github.com/nativefier/nativefier/blob/master/API.md#icon
[icon]
-i, --icon <path>

Notes:

When packaging for Windows, must be a path to a .ico file.
When packaging for Linux, must be a path to a .png file.
When packaging for macOS, must be a .icns or a .png file if the optional dependencies are installed.
If your PATH has our image-conversion dependencies (iconutil, and either ImageMagick convert + identify, or GraphicsMagick gm), Nativefier will automatically convert the .png to a .icns for you.

Alternative to macOS users: iConvertIcons can be used to convert .pngs, though it can be quite cumbersome.
To retrieve the .icns file from the downloaded file, extract it first and press File > Get Info. Then select the icon in the top left corner of the info window and press ⌘-C. Open Preview and press File > New from clipboard and save the .icns file. It took me a while to figure out how to do that and question why a .icns file was not simply provided in the downloaded archive.

@ronjouch @TheCleric Since this seems to be a very common issue, we may just want to remove the ing logo from nativefier-icons until we get nativefier-catalog ready and can just completely replace the icon finding logic.

@ronjouch @TheCleric Since this seems to be a very common issue, we may just want to remove the ing logo from nativefier-icons until we get nativefier-catalog ready and can just completely replace the icon finding logic.

True! Good suggestion, thx. Will do.

@mattruzzi or simply add an option in the CLI to bypass nativefier-icons lookup? Could be a very simple workaround in the meantime ; automatic fetching of website icons seems to work quite well.

Frequently-colliding ING icon removed in https://github.com/nativefier/nativefier-icons/commit/dd755501cade125e23ed3a3bf00c994f5e3b4748 ; thx for the suggestion @mattruzzi 🙂.

or simply add an option in the CLI to bypass nativefier-icons lookup? Could be a very simple workaround in the meantime ; automatic fetching of website icons seems to work quite well.

@champagnealexandre Matt's suggestion was the simplest to cover this icon that people are frequently confused about (but common icon inferring otherwise works well). We already have a zillion CLI options, the more we avoid adding, the merrier I am.
With that, closing. Thanks for the report.

no problem @ronjouch, thanks for the great work!
Cheers,


React v0.14 compatibility

start from React v0.14, react split into two packages, react and
react-dom.
ref: https://facebook.github.io/react/blog/2015/07/03/react-v0.14-beta-1.html#two-packages

:+1: Though I am confused why beta1 instead of rc1.

@L42y thanks that is great. I would prefer not merging this to master until 0.14 is released. We can make a 0.14 branch and merge it into that if there is a need for it.
What do think ?

I like the idea of a 0.14 branch and keeping master "clean".

I would prefer not merging this to master until 0.14 is released. We can make a 0.14 branch and merge it into that if there is a need for it

Great idea

@L42y The minified file needs to be generated as well (with npm run build). The tests are green, but there are a couple of deprecation errors involving React.unmountComponentAtNode in both the test files.

I created a react-0.14 branch, you can submit a pull-request against that - thanks

Replaced by #107


Updates information_governance.md based on #283 proposal

:white_check_mark: Checklist

[x] This pull request has a meaningful title.
[ ] If your changes are not yet ready to merge, you have marked this pull request as a draft pull request.

:ballot_box_with_check: Maintainers' checklist

[ ] This pull request has had the appropriate labels assigned
[ ] This pull request has been added to the SATRE backlog project board
[ ] This pull request has been assigned to one or more maintainers

:arrow_heading_up: Summary
Per proposal in #283
:closed_umbrella: Related issues
Relates to #283
:raising_hand: Acknowledging contributors

[x] All contributors to this pull request are already named in the table of contributors in the README file.
[ ] The following people should be added to the table of contributors in the README file:

I think this is good to get in, but since it modifies some statements I don't think we can review this in time for 1.0.0. We should attempt to get this into the first post-1.0.0 version.


Adapterproblems - RFLearn not working

Hi there,
I´ve got some problems with my broadlink2 Adapter.
I´ve learnd many devices. Since cupple of days, it´s no more possible to learn new devices. If I use "Learn" or "RFLearn" and press any button in my broadlink-App nothing happens.
The App is working without problems.
I´ve restated the iobroker and reinstalled the Adapter several times.
Version 1.9.1 is installed. I also tried to downgrade but when I import the folder "L" the adapter updates to 1.9.1
Can you help using the learn function?
THX!

Hi Miro,
at first reinstalling adapter does not solve problems if there are no installation errors., if you try older adapter by selecting them in admin it is impossible that adapter changes himself back unless you do a update withadmin for all.
But now to the problem, you cklick on learn mode in object view of admin?
Does the red led on RM light up?
Do you use the learn or the rf-sweep-learn? They work kompletely different. the normal learn can learn also RF and you do a normal short press on your remote. with the rf-learn you need to press the remote for 10 seconds and then shortely reelease and press short again.
In both cases the red led should stop when the RM fiund the signal.
If red led does not go on I need you to set adapter to debug mode and restart him and copy the log generated for the fist 2 minutes including a test for learning.
The reason is that it could be that the RM-adapter changed it's address.
Problem finding should start to look in log if adapter finds the RM and provide data (like the temperature for some RM's).. The next step is to try to learn (normal learn) and look if red led lights up. If led does not g on (and out after 30 seconds by itself without learning anything) the RM or the communication with it is broken.
If red LED lights up but adapter is not learning anything: RM broken or cannot learn the remote command.
p.s. forgive me some mistakes, typing on mobile....

Oh yes, if your led goes on when learning and off after you press what you want to learn on remote but no line is generates in broadlink2 'L' then the code you learned is already learned!

Any feedback? I would like to close the case if it is resolved or need more info to help to resolve it!

Hey,
sorry for answering late.
I think, my broadlink is not working any more (no reactions any more). I have to buy a new one - so you can close that case.

Ok, let me know if yoiu have any problem with the new device!


(FunctionClauseError) no function clause matching in Electric.Replication.ShapeLogCollector.handle_call

Experiencing these logs on the simplest setup via docker compose
What can be the issue?
** (EXIT) time out
(elixir 1.17.2) lib/gen_server.ex:1128: GenServer.call/3
(opentelemetry 1.4.0) /app/deps/opentelemetry/src/otel_tracer_default.erl:47: :otel_tracer_default.with_span/5
(electric 0.7.6) lib/electric/telemetry/open_telemetry.ex:67: anonymous fn/3 in Electric.Telemetry.OpenTelemetry.with_span/3
(telemetry 1.2.1) /app/deps/telemetry/src/telemetry.erl:321: :telemetry.span/3
(electric 0.7.6) lib/electric/postgres/replication_client.ex:222: Electric.Postgres.ReplicationClient.process_x_log_data/3
(opentelemetry 1.4.0) /app/deps/opentelemetry/src/otel_tracer_default.erl:47: :otel_tracer_default.with_span/5
(electric 0.7.6) lib/electric/telemetry/open_telemetry.ex:67: anonymous fn/3 in Electric.Telemetry.OpenTelemetry.with_span/3
(telemetry 1.2.1) /app/deps/telemetry/src/telemetry.erl:321: :telemetry.span/3
(postgrex 0.19.0) lib/postgrex/replication_connection.ex:551: Postgrex.ReplicationConnection.handle/5
(postgrex 0.19.0) lib/postgrex/replication_connection.ex:537: Postgrex.ReplicationConnection.handle_data/2
(stdlib 6.0.1) gen_statem.erl:3115: :gen_statem.loop_state_callback/11
(stdlib 6.0.1) proc_lib.erl:329: :proc_lib.init_p_do_apply/3

Queue: [info: {:tcp, #Port<0.346>, <<100, 0, 0, 10, 188, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 199, 189, 8, 160, 126, 1, 82, 0, 0, 84, 67, 112, 117, 98, 108, 105, 99, 0, 115, 105, 109, 117, ...>>}]
Postponed: []
11:04:26.165 [info] Postgres server version = 140013, system identifier =<PHONE_NUMBER>957849128, timeline_id = 1
11:04:26.197 [info] Starting replication from postgres
11:04:26.268 [error] GenServer {Electric.Registry.Processes, {Electric.Replication.ShapeLogCollector, :default}} terminating
** (FunctionClauseError) no function clause matching in Electric.Replication.ShapeLogCollector.handle_call/3

Hey @emakarov. Can you show the remaining log? There's normally also a stacktrace.
I would venture a guess that your Docker setup doesn't use persistent volume which would result in the shape logs to be lost upon container restart.
Could you share your compose file to help us investigate? Also, which version of the sync service are you running?

extract of the docker compose looks like this, so I just copied from tutorial the sync
version: "3"

networks:
  backend:
    internal: true

  internet:

volumes:
  pgdata_volume:

services:
  db:
    image: postgis/postgis:14-3.4
    container_name: pg-db
    environment:
      - POSTGRES_USER=pguser
      - POSTGRES_DB=pgdb
      - POSTGRES_PASSWORD=pgpassword
      - PGDATA=/var/lib/postgresql/data
    command: "postgres -c log_statement=all -c listen_addresses=* -c wal_level=logical"
    restart: always

    networks:
      - backend
      - internet

    volumes:
      - pgdata_volume:/var/lib/postgresql/data

    tmpfs:
      - /tmp

    ports:
      - "5432:5432/tcp"

  electric:
    image: electricsql/electric
    container_name: electric
    environment:
      DATABASE_URL: postgresql://pguser:pgpassword@pg-db:5432/pgdb?sslmode=disable
    ports:
      - "3001:3000"
    depends_on:
      - db

    networks:
      - backend
      - internet

stacktrace
13:22:09.753 [error] GenServer {Electric.Registry.Processes, {Electric.Replication.ShapeLogCollector, :default}} terminating
** (FunctionClauseError) no function clause matching in Electric.Replication.ShapeLogCollector.handle_call/3
  (electric 0.7.6) lib/electric/replication/shape_log_collector.ex:118: Electric.Replication.ShapeLogCollector.handle_call({:relation_msg, %Electric.Replication.Changes.Relation{id: 21571, schema: "public", table: "simulation_simulation", columns: [%Electric.Replication.Changes.Column{name: "id", type_oid: 23}, %Electric.Replication.Changes.Column{name: "created_at", type_oid: 1184}, %Electric.Replication.Changes.Column{name: "completed_at", type_oid: 1184}, %Electric.Replication.Changes.Column{name: "name", type_oid: 1043}, %Electric.Replication.Changes.Column{name: "state", type_oid: 1043}, %Electric.Replication.Changes.Column{name: "mixed_fleet", type_oid: 16}, %Electric.Replication.Changes.Column{name: "geofence_id", type_oid: 2950}, %Electric.Replication.Changes.Column{name: "start_time", type_oid: 1184}, %Electric.Replication.Changes.Column{name: "end_time", type_oid: 1184}, %Electric.Replication.Changes.Column{name: "conversion_rate", type_oid: 701}, %Electric.Replication.Changes.Column{name: "journey_duration_source", type_oid: 1043}, %Electric.Replication.Changes.Column{name: "number_of_vehicles", type_oid: 23}, %Electric.Replication.Changes.Column{name: "road_network", type_oid: 1043}, %Electric.Replication.Changes.Column{name: "vehicle_capacity", type_oid: 23}, %Electric.Replication.Changes.Column{name: "min_advance_booking_window", type_oid: 23}, %Electric.Replication.Changes.Column{name: "max_advance_booking_window", type_oid: 23}, %Electric.Replication.Changes.Column{name: "acceptable_waiting_time", type_oid: 23}, %Electric.Replication.Changes.Column{name: "max_additional_journey_time", type_oid: 23}, %Electric.Replication.Changes.Column{name: "odbs_trip_duration", type_oid: 23}, %Electric.Replication.Changes.Column{name: "driver_prep_time", type_oid: 23}, %Electric.Replication.Changes.Column{name: "min_driver_rest_time", type_oid: 23}, %Electric.Replication.Changes.Column{name: "percentage_driver_rest_time", type_oid: 701}, %Electric.Replication.Changes.Column{name: "used_vehicles_count", type_oid: 23}, %Electric.Replication.Changes.Column{name: "in_service_mileage", type_oid: 23}, %Electric.Replication.Changes.Column{name: "dead_mileage", type_oid: 23}, %Electric.Replication.Changes.Column{name: "transfer_rate", type_oid: 701}, %Electric.Replication.Changes.Column{name: "bookings_count", type_oid: 23}, %Electric.Replication.Changes.Column{name: "completed_odbs_trips_count", type_oid: 23}, %Electric.Replication.Changes.Column{name: "completed_fixed_route_trips_count", type_oid: 23}, %Electric.Replication.Changes.Column{name: "no_offer_count", type_oid: 23}, %Electric.Replication.Changes.Column{name: "odbs_trips_per_vehicle_per_hour", type_oid: 701}, %Electric.Replication.Changes.Column{name: "avg_waiting_time", type_oid: 701}, %Electric.Replication.Changes.Column{name: "min_waiting_time", type_oid: 701}, %Electric.Replication.Changes.Column{name: "max_waiting_time", type_oid: 701}, %Electric.Replication.Changes.Column{name: "avg_planned_actual_journey_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "min_planned_actual_journey_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "max_planned_actual_journey_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "avg_waiting_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "min_waiting_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "max_waiting_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "avg_journey_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "min_journey_time_difference", type_oid: 701}, %Electric.Replication.Changes.Column{name: "max_journey_time_difference", ...}, %Electric.Replication.Changes.Column{...}, ...]}}, {#PID<0.2893.0>, [:alias | #Reference<0.0.370307.1878049856.980484099.221096>]}, %{producer: {#PID<0.2892.0>, [:alias | #Reference<0.0.370179.1878049856.980484099.220824>]}, demand: :accumulate, subscriptions: {0, MapSet.new([])}, electric_instance_id: :default, inspector: {Electric.Postgres.Inspector.EtsInspector, [server: Electric.Postgres.Inspector.EtsInspector]}, link_consumers: true})
  (gen_stage 1.2.1) lib/gen_stage.ex:1942: GenStage.handle_call/3
  (stdlib 6.0.1) gen_server.erl:2209: :gen_server.try_handle_call/4
  (stdlib 6.0.1) gen_server.erl:2238: :gen_server.handle_msg/6
  (stdlib 6.0.1) proc_lib.erl:329: :proc_lib.init_p_do_apply/3


Installing casks requiring sudo password?

Hi and thank you very much for this role!
One thing I do not understand is how can the one use it in order to install casks which require sudo password input during cask installation...
Examples of such casks are: Virtualbox, Wireshark, Zenmap, Mactex etc.
Every time I run my plays, when the task comes to install those casks it hangs infinitely(((.
I wonder if there anything can be done to work around this issue?
I found this community collection.
So it kinda works like this:
  - name: Install configured cask applications.
    community.general.homebrew_cask:
      name: "{{ item.name | default(item) }}"
      state: present
      install_options: "{{ item.install_options | default('appdir=' + homebrew_cask_appdir) }}"
      accept_external_apps: "{{ homebrew_cask_accept_external_apps }}"
      sudo_password: "{{ ansible_become_password }}"
    loop: "{{ homebrew_cask_apps }}"
    notify:
      - Clear homebrew cache

But that would require some dummy password to be specified in the role, and then it to be overwritten in playbooks using vault, which I think is fine...
What do you guys think?

You can use the -K option. This will prompt you to enter a password for commands that require privilege escalation.
https://docs.ansible.com/ansible/latest/cli/ansible.html#cmdoption-ansible-k

You can consider using the ask-become-flag while using it in a playbook. Example: https://github.com/rounakdatta/computer.setup/blob/master/start.sh#L25

Could it be that the 'bug' here is that the wrapper created in this repo does not expose (or set) the sudo_password?
It looks like that argument is not set by default to sudo_password: "{{ ansible_become_pass }}"
Perhaps there could come a parameter to this role to be passed through to homebrew_cask ?
Somewhere here:
https://github.com/geerlingguy/ansible-role-homebrew/blob/master/tasks/main.yml#L111

hi: I'm also facing this issue: I'm trying to install the mactex cask, and the installer hangs because it needs a (sudo?) password.  I tried adding sudo_password: "{{ ansible_become_pass }}" but I get undefined variable error.  The module doesn't seem to support become: true.  I'm very new to ansible so I can't figure out how this problem was solved: would you mind awfully pasting some brief instructions?  This is my current task:
    - name: Install mactex
      community.general.homebrew_cask:
        name:
          - mactex
        path: /opt/brew/bin
        state: present
        sudo_password: "{{ ansible_become_password }}"

Thanks!


ENG-2032 Fix Workflows Back Navigation

Describe your changes and why you are making these changes
When pressing the browser's back button on the workflow details page, the page would simply reload and not go back as expected.
Related issue number (if any)
ENG-2032
Loom demo (if any)
https://www.loom.com/share/717dde5c32c1476c817a0f992c51ead6
Checklist before requesting a review

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

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

Was this just missing an onClick?

@kenxu95 couple things. Workflow card wasn't using the react router links to navigate to the workflow details page.
After fixing that, I still noticed that we had the navigation issue. Turns out that when the page is loaded and we navigate to a particular workflowDagId, calling navigate adds to the navigation stack. As a result, clicking back would just take you to the same page and add the same route back to the nav stack, creating an infinite loop :).
The real magic here is in the { replace: true }, which replaces the top of the nav stack instead of adding to it.
      navigate(
        `?workflowDagResultId=${encodeURI(workflow.selectedResult.id)}`,
        { replace: true }
      );


refactor: use Try operator in kv::Visitor

Avoids unwrapping in functions which return a Result.
Admittedly this is limitedly useful here because everything is preseently unwrapped at a higher-level anyways but is still good practice.

thanks!

Cross-linking https://github.com/async-rs/async-std/pull/917 - bizarre.
I don't think it's worth doing a match since we .unwrap() anyways. I did this because it was simple.


npx hardhat coverage fails - stack too deep

npx hardhat coverage --show-stack-traces

Version
=======
> solidity-coverage: v0.8.12

Instrumenting for coverage...
=============================

> APIConsumer.sol
> AutomationCounter.sol
> PriceConsumerV3.sol
> RandomNumberConsumerV2Plus.sol
> RandomNumberDirectFundingConsumerV2Plus.sol
> test/VRFCoordinatorV2_5Mock.sol
> VRFV2PlusWrapper.sol

Coverage skipped for:
=====================

> test/fuzzing/AutomationCounterEchidnaTest.sol
> test/MockLinkToken.sol
> test/MockOracle.sol
> test/MockV3Aggregator.sol

Compilation:
============

CompilerError: Stack too deep. Try compiling with `--via-ir` (cli) or the equivalent `viaIR: true` (standard JSON) while enabling the optimizer. Otherwise, try removing local variables. When compiling inline assembly: Variable headStart is 1 slot(s) too deep inside the stack. Stack too deep. Try compiling with `--via-ir` (cli) or the equivalent `viaIR: true` (standard JSON) while enabling the optimizer. Otherwise, try removing local variables.

after checking out, npm install, npx hardhat compile, npx hardhat test, I am trying to get the code coverage.
It fails with stack too deep. In order to solve the above issue, I tinkered around with

enabling the via-ir flag
excluding more/all of the .sol files in .solcover.js
adding a @skip-on-coverage to the test definitions (  it("testname [ @skip-on-coverage ]", async () => {}))

but with none of those i was able to get code coverage running
Any hint is appreciated to help me understand how to get code coverage for the code to run.

Hey @mreitschuster
Thanks for raising this. I was able to reproduce.  The fix appears to be adding configureYulOptimizer: true to .solcover.js.
Try that out and let us know if its working?  Note that npm run tests will work but npm run coverage may cause some failures in the unit test for VRF Direct Funding.  We are looking into that too.

thank you @zeuslawyer
works like a charm.

sorry. too eager too early. the error "stack too deep" is now gone. but there is another error now - not sure if this belongs in the same or in a different issue:
npx hardhat test works fine, but npx hardhat coverage fails some tests

npx hardhat test
WARNING: You are currently using Node.js v22.4.1, which is not supported by Hardhat. This can lead to unexpected behavior. See https://hardhat.org/nodejs-versions

  Automation Counter Unit Tests
    #checkUpkeep
      success
        ✔ should be able to call checkUpkeep (242ms)
    #performUpkeep
      success
        ✔ should be able to call performUpkeep after time passes
      failure
        ✔ should not be able to call perform upkeep without the time passed interval

  Price Consumer Unit Tests
    deployment
      success
        ✔ should set the aggregator addresses correctly (69ms)
    #getLatestPrice
      success
        ✔ should return the same value as the mock

  Random Number Consumer Unit Tests
    #requestRandomWords
      success
        ✔ Should successfully request a random number (116ms)
        ✔ Should successfully request a random number and get a result (59ms)
ReturnedRandomness event fired!
        ✔ Should successfully fire event on callback (4029ms)

  Random Number Direct Funding Consumer Unit Tests
    #requestRandomWords
      success
        ✔ Should successfully request a random number (216ms)
price<PHONE_NUMBER>000000000
paid<PHONE_NUMBER>000000000
wrapper balance<PHONE_NUMBER>000000000
initial subscription balance<PHONE_NUMBER>00000000000
final subscription balance<PHONE_NUMBER>0000000000
paid by wrapper<PHONE_NUMBER>00000000
wrapperPremium<PHONE_NUMBER>000000000
percentage 73
        ✔ Should successfully request a random number and get a result (95ms)
        ✔ Should be able to request several random words (92ms)
      error
        ✔ Cannot request randomness without funding wrapper
        ✔ Cannot request more than maxNumWords  (46ms)
        ✔ Cannot fulfill if callback gasLimit too low  (60ms)

  14 passing (5s)

npx hardhat coverage
WARNING: You are currently using Node.js v22.4.1, which is not supported by Hardhat. This can lead to unexpected behavior. See https://hardhat.org/nodejs-versions

Version
=======
> solidity-coverage: v0.8.12

Instrumenting for coverage...
=============================

> AutomationCounter.sol
> PriceConsumerV3.sol
> RandomNumberConsumerV2Plus.sol
> RandomNumberDirectFundingConsumerV2Plus.sol
> test/VRFCoordinatorV2_5Mock.sol
> VRFV2PlusWrapper.sol

Coverage skipped for:
=====================

> test/fuzzing/AutomationCounterEchidnaTest.sol
> test/MockLinkToken.sol
> test/MockV3Aggregator.sol

Compilation:
============

Compiled 40 Solidity files successfully (evm target: paris).

Network Info
============
> HardhatEVM: v2.22.3
> network:    hardhat

  Automation Counter Unit Tests
    #checkUpkeep
      success
        ✔ should be able to call checkUpkeep (59ms)
    #performUpkeep
      success
        ✔ should be able to call performUpkeep after time passes
      failure
        ✔ should not be able to call perform upkeep without the time passed interval

  Price Consumer Unit Tests
    deployment
      success
        ✔ should set the aggregator addresses correctly (88ms)
    #getLatestPrice
      success
        ✔ should return the same value as the mock

  Random Number Consumer Unit Tests
    #requestRandomWords
      success
        ✔ Should successfully request a random number (99ms)
        ✔ Should successfully request a random number and get a result (39ms)
ReturnedRandomness event fired!
        ✔ Should successfully fire event on callback (4032ms)

  Random Number Direct Funding Consumer Unit Tests
    #requestRandomWords
      success
        1) Should successfully request a random number
        2) Should successfully request a random number and get a result
        3) Should be able to request several random words
      error
        4) Cannot request randomness without funding wrapper
        5) Cannot request more than maxNumWords
        6) Cannot fulfill if callback gasLimit too low

  8 passing (5s)
  6 failing

  1) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         success
           Should successfully request a random number:
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

  2) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         success
           Should successfully request a random number and get a result:
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

  3) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         success
           Should be able to request several random words:
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

  4) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         error
           Cannot request randomness without funding wrapper:
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

  5) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         error
           Cannot request more than maxNumWords :
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

  6) Random Number Direct Funding Consumer Unit Tests
       #requestRandomWords
         error
           Cannot fulfill if callback gasLimit too low :
     ProviderError: Sender doesn't have enough funds to send tx. The max upfront cost is:<PHONE_NUMBER>75100000000000 and the sender's balance is:<PHONE_NUMBER>999998471072.
      at EdrProviderWrapper.request (/home/username/src/hardhat-starter-kit/node_modules/hardhat/src/internal/hardhat-network/provider/provider.ts:430:19)
      at EthersProviderWrapper.send (/home/username/src/hardhat-starter-kit/node_modules/@nomiclabs/hardhat-ethers/src/internal/ethers-provider-wrapper.ts:13:20)

----------------------------------------------|----------|----------|----------|----------|----------------|
File                                          |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
----------------------------------------------|----------|----------|----------|----------|----------------|
 contracts/                                   |       30 |    21.43 |    66.67 |       50 |                |
  AutomationCounter.sol                       |      100 |      100 |      100 |      100 |                |
  PriceConsumerV3.sol                         |      100 |      100 |      100 |      100 |                |
  RandomNumberConsumerV2Plus.sol              |      100 |       50 |      100 |      100 |                |
  RandomNumberDirectFundingConsumerV2Plus.sol |        0 |        0 |    16.67 |     5.26 |... 119,126,127 |
  VRFV2PlusWrapper.sol                        |      100 |      100 |      100 |      100 |                |
 contracts/test/                              |      100 |      100 |      100 |      100 |                |
  VRFCoordinatorV2_5Mock.sol                  |      100 |      100 |      100 |      100 |                |
----------------------------------------------|----------|----------|----------|----------|----------------|
All files                                     |       30 |    21.43 |    66.67 |       50 |                |
----------------------------------------------|----------|----------|----------|----------|----------------|

> Istanbul reports written to ./coverage/ and ./coverage.json
Error in plugin solidity-coverage: ❌ 6 test(s) failed under coverage.

For more info run Hardhat with --show-stack-traces


Rust: Improved punctuation and operators

This PR improves Rust's punctuation as discussed here.
Edit:
It now also adds support for the missing ..= and ? syntax.

List of operators:
https://doc.rust-lang.org/book/appendix-02-operators.html

Verified.. thanks!

Any thoughts on when this will be released?

This will be released as part of the next version of Prism (v1.17). We don't have a date for that release yet.
If you need this feature, you can go to the download page and get Prism from there. This version of Prism includes all the new features we added since the last release.


ci: Fix developer_productivity push error

This is a speculative fix, I think the CI works for the pull_request trigger but fails on the push trigger. Seems like maybe a checkout action will fix it.
Checklist

[ ] Sensible git history (for example, squash "typo" or "fix" commits). See the Rewriting History guide for help.
[ ] Update the changelog (if necessary)

This works now as intended. Very nice :)
https://github.com/rust-osdev/uefi-rs/actions/runs/5234417427/jobs/9450556469
Strange that this worked in the first place


Should the Intents and Entities properties of RecognizerResult return JObect?

The current descriptions for these properties suggest that they return Dictionary<string, object>.
Since this class supports an interface definition, we probably want something more strongly typed than a JObject here. Implementers won't know what format they should give to these properties.

PS. Looks like for LUIS, this could just be Dictionary<string, double> for Intents.

We have defined a generic JSON payload for any recognizer (including LUIS) to return.  It looks like:
{ "intents": {"Help": {"score":0.9}, "Cancel": {"score": 0.01}}, ...}
In addition to score, any given recognizer is also free to return other information about each intent.  For example, if your recognizer supported multiple intents, it might point to the span where the intent was found.  We really should update the documentation to point to the definition of this structure which is only weakly typed which should help people understand what to generate.
Your question has to do with how we model weakly typed objects in C#.  The current interface uses a JObject which really is a dictionary that maps from a string to a value.  It also corresponds to the underlying JSON object which is common across languages.  We could make it slightly stronger by using Dictionary<string, object> but that is the same as JObject while losing the connection to the underlying JSON.  Alternatively we could type it as Dictionary<string, BaseClassWithScore> which makes it a little stronger, but at the cost of introducing another class which itself needs to have a property bag inside it for any extra properties found in the intent.
In the case of LUIS if you want a fully typed object you can use the LUISGen tool to generate a custom class for C# or Typescript which gives you intellisense.
Please reopen if you disagree with the reasoning and have a counter-proposal.

@chrimc62 , RecognizerResult has a Properties property, used to capture such additional information. Would it be untoward to continue that sort of model one more level down? (I'm not sure what a RecognitionEntity class should look like, but I'll take a wild guess.)
public class RecognitionIntent
{
    public string Name { get; set; }
    public double Score { get; set; }

    [JsonExtensionData(ReadData = true, WriteData = true)]
    public IDictionary<string, object> Properties { get; set; } = new Dictionary<string, object>();
}
public class RecognitionEntity<T>
{
    public string Name { get; set; }
    public T Value { get; set; }

    [JsonExtensionData(ReadData = true, WriteData = true)]
    public IDictionary<string, object> Properties { get; set; } = new Dictionary<string, object>();
}

Then intents (and entities) could be defined as some sort of collection, IEnumerable, Dictionary, whatever:
[JsonProperty("intents")]
public IEnumerable<RecognitionIntent> Intents { get; set; }

I can push it one level down.  IDictionary<String, ScoredObject>
class ScoredObject
{
double Score;
IDictionary<string, object> Properties;
}

This has shipped now. We have an IntentScore in the product. Luis recognizer makes use of that.


[Proposal] Consider using squash merges for pull-requests

💥 Proposal
Current merges bring each individual commit on a PR, usually including WIP and intermediate broken commits into the history and mixing commits from different PRs. Squash merges would help to keep a cleaner git history of the project and understanding what gets merged when.

I recommend we make this switch post-mainnet. Anecdotally, when multiple contributors were working on the library with squashes in the past, there were corner cases when merge conflicts became unresolvable from squashed commits.


convert coffee to js

Hi @jasonrudolph I've added simple caching and convert the source into ES6 since Atom moving into this direction and code base is pretty small for now. What do you think about it ?

Thank you, @shemerey! :zap: :bow: :heart:
Can I talk you into splitting these changes into two separate pull requests?

One pull request to convert to ES6
Another pull request to add caching

By having two separate pull requests, each pull request will be easier to review and test.

@jasonrudolph here is convert to ES6

Thank you, @shemerey. It will probably take me a while to review this pull request, but I'll be sure to review it as soon as I can. Thanks for this contribution. :cake:

This looks great, @shemerey. Thank you! :bow:


calling definition by post got an error

Hi,
I' m trying to curl /definition api and got an error with no description:
curl -H "Content-type: application/json" -X POST -d '{"r_0":{"all":[{"m":{"subject":"hello"}}]}}' http://localhost:5000/newtest/definition
the response i got is       {"error":{}}%
I have no ruleset with an existing name
curl http://localhost:5000/newtest/definition
the response i got sounds good ----> {"error":"Ruleset newtest not found"}
what's going wrong..
I appreciate some help and thanks in advance

Are you trying this with Ruby, Python or Node.js?

my app is in node.js but getting the same error with curl.
i tried curl to be sure that this is not something else in my app.
thanks

I am a Ruby guy not a Node.js guy, but what I suggest you do is take a look at the source code for Node.js.  In https://github.com/jruizgit/rules/blob/master/libjs/durable.js, if the code's anything like the Ruby code, you should find how this processes definitions.
Set a breakpoint or something like that in the relevent code and fire off your curl and see what it does.

I tried to debug the code under ./libjs/durableEngine.js (line 772) and found that it crush because inside it is looking after a property named "run" inside the rule.
the rule i provided was fetched from the GET method (/definition) and returns without such property.
I suppose that in normal situation the rule should contain the antecedent (whenall) and the consequent (run)
any idea what is the format of such rule in json ?
thanks

If I'm understanding what you're writing, it's failing on this line of code => delete(rule.run)
I see that rule.run is also referenced in lines immediately preceding that.
Are you seeing any clues about this property when you evaluate any of those lines with debug?


const_cast2_test needs triage

class A {
  const A(dynamic input) : n = input as int;
}

This is not a valid const expression.
It either should be, or we should find a way to rewrite this test without using one, or (since I don't see how that's possible) delete this test.

See https://dart-review.googlesource.com/c/sdk/+/36220 .  @lrhn when the final spec change lands we need to coordinate with the implementations.


Consider API redirection for the default variant

Migrated from GitLab: https://gitlab.com/meltano/hub/-/issues/253
Originally created by @edgarrmondragon on 2022-05-24 04:27:36

Example: I hit /api/v1/plugins/extractors/tap-stackexchange (currently a 404) and I get redirected to /api/v1/plugins/extractors/tap-stackexchange--meltanolabs (the default variant).
This is required until we have fuzzy search/match (e.g. https://gitlab.com/meltano/meltano/-/issues/3514#note_953679207), otherwise for the plugin to be found either

users have to always pass --variant to meltano add or
meltano add hits the /index, and looks up the API URL and for the default variant if no particular one is requested

View 6 previous comments from the original issue on GitLab


Ask for licence prices

How do I get a licence, I can't submit information through the link in the readme. if i only install csd-python-api by pip install csd-python-api, How do I activate it?

When you say link in the readme are you referring to the<EMAIL_ADDRESS>If not, please email them to help you out with the licence.  They will also be able to help you activate your licence and your python API install :)

Or if you are referring to :

Don’t have a licence? Contact us here to request a quote or demonstration.

Which part can you not submit information through?


go: re-enable windows tests

perhaps could land directly with https://github.com/tigerbeetle/tigerbeetle/pull/1804


react 0.12

When I try to install this I get the following error:
npm ERR! peerinvalid The package react does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>

+1


sets rubocop ruby version to 2.1 and apply rubocop -a

Let me describe what happened here. I've decided to add frozen_string_literal to auto_inject code base. After completing this task I thought that this is one of the rubocop recommendations. This moment a brilliant idea appeard in my mind and I've decided to run rubocop -a to fix all possible violations. I think it would be nice to tweak rubocop settings to make it more usable, right now I have a feeling, that it's abandoned.
One thing I'd like to change in these PR - is to use " instead of ' by default. Other things are good.
I personnally use ruby style guide block notation, where you write do ... end with multiline blocks, but this code base follows another notation.
What do you think?

@raventid Thank you so much for taking the time for doing this ❤ ❤ ❤
I totally agree with @timriley I think it would be good to split into two PR's.

@GustavoCaso @timriley thank you very much for your thorough review.
I totally agree with you, but I have one question. What is the reason to use curly braces for multiline blocks? I'm aware of Weirich's block notation, but never really used it. Any advantages of using this style that I miss?
Plans are:

Frozen string literals as separate PR
Additions to rubocop.yml according to this review. One thing I'm not sure about is double vs single quotes. I'll stick with " in new PR thats not so hard to change anyway.

CodeClimate is good, and if no one against this, I'm gonna totally remove rubocop related stuff.

@raventid please do that


Idea: Add inbox over rest api for #61

This is just a guess, but this probably doesn't support anonymous login. You should call _checkAnonymous(). If it works with anonymous login, feel free to correct me.

You are right of course. Update the PR


Parameter processing

So initially we were trying to deal with Postgres-style $n parameters by getting all up in Hibernate's SQL generation and doing it at the source, by overriding the methods which actually generate the SQL. The reasoning was supposed to be that it would alleviate the need to re-tokenize the SQL when the SQL is executed, something that Hibernate has always preferred.
I think it's fair to say that this approach has pretty much failed, and made the code much uglier.
The pull request gives up on that goal, and just does the parameter substitution iff the database is Postgres, right before calling preparedQuery().
Now, this could (or could not), in principle, have an impact on performance in Postgres.
But if it does then I say the fix would be to go back to the source and change the original SQL generation code in Hibernate core, instead of trying to hack it into HR.
Thoughts?

I need to hear if anyone objects to doing this, because if not I'm going to merge it. @Sanne @DavideD ?

Could someone explain the high level purpose of this?
I'm surprised we need to apply any change to how SQL is generated and parameters are being handled, as it was a project goal to reuse what Hibernate ORM is able to rather than fork such essential aspects?

@Sanne well this was an issue I reported to the SQL client months ago. It's currently being discussed here.
Suffice to say I seem to be losing the argument.

This actually simplify the code

Yes, that was the whole point.

Let's see if I can squash this. Last time I tried I failed.

Yup, it worked this time.

Merged as a single commit.


Make the beginner tutorial match the style/content of the beginner guide repo

Looks like the beginner guide repo and the tutorial have diverged a bit.
This makes the tutorial consistent with the code in the repo.

thanks


Build error: The module/namespace 'Microsoft.FSharp.Core' from compilation unit 'FSharp.Core' did not contain the namespace, module or type 'string'

Receive the following error whilst trying to build the F# compiler as detailed in DEVGUIDE.md.
build.cmd
FSC : error FS0193: The module/namespace 'Microsoft.FSharp.Core' from compilation unit 'FSharp.Core' did not contain the namespace, module or type 'string' [C:\Projects\visualfsharp\src\fsharp\FSharp.Core\FSharp.Core.fsproj]
Log of the build output when run as normal user and again as a user with admin perms.
build.admin.txt
build.txt

Operating system - Win7
Branch - master
.NET Runtime, CoreCLR or Mono Version: 4.6.1
Editing Tools (e.g. Visual Studio Version) VS2017

@chillitom can you please try:

git clean -xdf
build.cmd debug

Seems like something was holding a handle open to FSharp.Build-proto.dll causing it to fail to rebuild, unfortunately I didn't manage to see what it was.


[functionapps] Improvements of devops-pipeline command

This change is made based on the feedback of 4/2019 Node report meeting

Add log streaming feature to show Azure DevOps progress when waiting for build.
Remove the unnecessary "--use_local_settings" flag and warn user in HISTORY.rst because currently the azure-functions-devops-build library does not support it.
Improve Azure DevOps release detection to prevent creation of duplicate

Miscellaneous

Fix info/warn messages including "Azure DevOps" spelling and wording.

This checklist is used to make sure that common guidelines for a pull request are followed.

[X] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[X] I adhere to the Command Guidelines.

Please change all references from Azure DevOps to Azure Pipelines, this is the correct name of the product


Correction in Readme

Correction's in the installation file is completed.

The files have been changed sir


Add shebang and command-line arguments

I added a shebang and made vanity.py executable. I also added optional command-line args -u and -p for faster but less secure authentication (since the password is stored in your shell's history).

Cool, thanks!