multipass: fix submodule fetching

Description of changes
mulitpass currently fails to build from source: https://hydra.nixos.org/build/241500327
Relevant portion of log:
error: Server does not allow request for unadvertised object 090e6a054d6283b144d20f5783852b95eade90ee
fatal: Fetched in submodule path '3rd-party/xz-decoder/xz-embedded', but it did not contain 090e6a054d6283b144d20f5783852b95eade90ee. Direct fetching of that commit failed.
error: Server does not allow request for unadvertised object 090e6a054d6283b144d20f5783852b95eade90ee
fatal: Fetched in submodule path '3rd-party/xz-decoder/xz-embedded', but it did not contain 090e6a054d6283b144d20f5783852b95eade90ee. Direct fetching of that commit failed.

Setting leaveDotGit fixes this and what it basically does is removing --depth 1 flag passed to git, so instead of git submodule update --init --recursive --progress --depth 1 (producing above error), we do git submodule update --init --recursive --progress (success).
I'm not so skilled with Nix yet, so maybe there is some other trick that we can do to fix this problem. This isn't really an upstreamable issue, because not using --depth 1 works.

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

I don't know what's happening, each build hydra reports different hash for the source. This does not seem to happen for me locally.

Yeh I don't think using leaveDotGit is going to work, but you might be able to fetch the sub module upfront and sub it in (similar to how the grpc sub module is bought in)?

Hmm, okay I see that won't work either. I was taking a look around at some similar issues earlier and came up with the following that seems to work:
https://github.com/NixOS/nixpkgs/compare/master...jnsgruk:nixpkgs:fix-multipass-build-submodule-fail
@RaitoBezarius does that seem like a reasonable workaround?

Hmm, okay I see that won't work either. I was taking a look around at some similar issues earlier and came up with the following that seems to work:
master...jnsgruk:nixpkgs:fix-multipass-build-submodule-fail

Aaand I've got a different hash trying to build that locally :smile:
error: hash mismatch in fixed-output derivation '/nix/store/n2lr32ky8f25f67jzrxzzx5wp2ip03nm-source.drv':
         specified: sha256-L2B1obutp18HALRDupwTfFig67C/TOOBS8usFmIktsQ=
            got:    sha256-c+RuK0jso+g3EYd/pMk4BEiU7dQ8fI4tSqWjK4biFNs=
error: 1 dependencies of derivation '/nix/store/gb606ni5jclylbla1lsp6bcj7nli93hy-multipass-1.12.2.drv' failed to build

Oops, I forgot a cd $out. Latest commit here seems to be deterministic for me! https://github.com/NixOS/nixpkgs/commit/2b17b55ef45f441ddae314dbb20d628462801e79

Indeed it works! Thanks for help, I'll update this PR with your commit.

while we are at it we should fix some of the vendoring. We should at least the anno dominion old libssh they are using https://github.com/canonical/multipass/blob/main/.gitmodules#L7C8-L8C1
Same with yaml-cpp. If the one patch they have applied is not upstream yet, we should fetch that instead.

What's the best way to go about that, by adding more into the postFetch block?
Perhaps we could follow up with a separate PR? I'm happy to take that on separately if need be, but if you've got a similar example that would be great 😄

What's the best way to go about that, by adding more into the postFetch block?

If the problem they are fixed is a general problem of the library and fixing a bug we could think about adding it to the package in nixpkgs. Otherwise we could work with overlays or we could decide that the patch is not really required and just drop it.

Perhaps we could follow up with a separate PR?

sure

if you've got a similar example that would be great 😄

I don't have on in mind right now.


CAMEL-20172: Add checksum feature to camel-file/ftp

Hi @davsclaus, JIRA issue (CAMEL-20172) and PR as requested.

Too late, however: This produces a checksum file after completion of the "temp file mechanism", i. e. if use of "temp named" file is requested, then first the "temp named" file is transferred, then this file is renamed to its final name AND THEN the checksum file is generated and transferred WITH ITS FINAL NAME. This is not always useful: We have e requirement to (1) transfer file + checksum WITH TEMP NAME and (2) afterwards rename both files, the checksum file being the first to rename. Currently this is not feasible with this code. What about changing the impl to behave this way always? (or to make this requestable by a new parameter? There are myriads of parameters already anyway). I think that is not a too exotic feature.

Just one more thing: Would be KEWL to have the possibility to not only hash but digitally sign transferred files this way. The default private key + passphrase for signing could be the SSH private key given as a parameter for SFTP / FTPS / SCP anyway, completed by the encryption algo (like RSA or newer), of cource alternatively another private key + passphrase just for the purpose of signing ... (yes, I need this, and for the time being I will try to solve it with a custom Processor impl...)


projects in .meta file are not sorted

🐛 Bug Report
projects in .meta file are not sorted
To Reproduce
add some projects in random order
cd $(mktemp -d)
git init
meta init
meta project import b https://b.org/
meta project import c https://c.org/
meta project import a https://a.org/
cat .meta

now the projects are sorted by time
{
  "projects": {
    "b": "https://b.org/",
    "c": "https://c.org/",
    "a": "https://a.org/"
  }
}

Expected behavior
projects are sorted by name, like dependencies in package.json
Workaround
sort all objects with jq
cat .meta | jq --sort-keys | sponge .meta

PRs are welcome


AppService/Test: fix 2 unit tests

It appears using mock's autospec might generate mock object which can not be de-serialized by python sdk runtime, so fall back to manual faked object.

//cc: @devigned

woot! Thank you.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #2331   +/-   ##
=======================================
  Coverage   72.85%   72.85%
=======================================
  Files         425      425
  Lines       19302    19302
  Branches     2740     2740
=======================================
  Hits        14063    14063
  Misses       4330     4330
  Partials      909      909

Continue to review full report at Codecov.

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


An error occurred while initializing the youtube player

i installed latest react-native-youtube version 2.0.2. but when i click on video from react native app it shows get youtube app. Before updating version it was working fine. video was playing within the project.
my code:
<YouTube
ref={youtubePlayerRef}
// You must have an API Key
apiKey={API_KEY}
videoId={"AhRE9ExeyV4"}
play={isPlaying}
loop={isLooping}
fullscreen={false}
controls={2}
style={[
            ]}
            showinfo={false}
            rel={false}
            showFullscreenButton={false}
            modestbranding={false}

            onError={e => setError(e.error)}
            onReady={e => setIsReady(true)}
            onChangeState={e => setStatus(e.state)}
            onChangeQuality={e => setQuality(e.quality)}
            onChangeFullscreen={e => {
              console.log(props.route.params.data
            }}

            onProgress={e => console.log(e)}
          />

package.json
"dependencies": {
"@react-native-async-storage/async-storage": "^1.17.11",
"@react-native-community/datetimepicker": "^6.7.0",
"@react-native-community/geolocation": "^3.0.3",
"@react-native-masked-view/masked-view": "^0.2.8",
"@react-native-picker/picker": "^2.4.8",
"@react-navigation/bottom-tabs": "^6.4.0",
"@react-navigation/material-top-tabs": "^6.3.0",
"@react-navigation/native": "^6.0.13",
"@react-navigation/native-stack": "^6.9.1",
"deprecated-react-native-prop-types": "^2.3.0",
"moment": "^2.29.4",
"react": "18.1.0",
"react-native": "0.70.5",
"react-native-android-location-enabler": "^1.2.2",
"react-native-calendars": "^1.1291.1",
"react-native-countdown-component": "^2.7.1",
"react-native-document-picker": "^8.1.2",
"react-native-image-picker": "^4.10.1",
"react-native-image-slider-box": "^2.0.7",
"react-native-image-viewing": "^0.2.2",
"react-native-linear-gradient": "^2.6.2",
"react-native-maps": "^1.3.2",
"react-native-modal-selector": "^2.1.2",
"react-native-pager-view": "^6.1.0",
"react-native-paper": "^4.12.5",
"react-native-safe-area-context": "^4.4.1",
"react-native-screens": "^3.18.2",
"react-native-skeleton-placeholder": "^5.2.4",
"react-native-snackbar": "^2.4.0",
"react-native-tab-view": "^3.3.0",
"react-native-vector-icons": "9.2.0",
"react-native-video": "^5.2.1",
"react-native-video-controls": "^2.8.1",
"react-native-youtube": "^2.0.2",
"rn-fetch-blob": "^0.12.0"
},

same !!!

for android version >= 11 add
 <queries>     <intent>       <action android:name="com.google.android.youtube.api.service.START"/>     </intent>   </queries>
into your AndroidManifest file

We have the same problem as well, and adding the queries does not work still.

We have the same problem as well, and adding the queries does not work still.

Do you have any resolution? I am experiencing the same issue.

any soltion here yet

Add the below lines of code into your AndroidManifest.xml file
<queries>
   <intent>
      <action android:name="com.google.android.youtube.api.service.START" />
   </intent>
</queries>

https://stackoverflow.com/questions/29133874/android-youtube-api-an-error-occurred-while-initializing-youtube-player/66330541#66330541


WIP/DNM: Update VTR with extended map lookahead

This PR builds on top of https://github.com/SymbiFlow/symbiflow-arch-defs/pull/1666 and is intended to test the extended lookahead map.

At a glance it looks like the 50 and 100 lookahead computation times are lower with the extended map vs the connection box.

Looks like a conflict on environment.yml when I merged the sv2v changes.

At a glance it looks like the 50 and 100 lookahead computation times are lower with the extended map vs the connection box.

@litghost Indeed, I have seen that it is more than half of the time to compute the extended map w.r.t. connection box map.

At a glance it looks like the 50 and 100 lookahead computation times are lower with the extended map vs the connection box.

@litghost Indeed, I have seen that it is almost half of the time to compute the extended map w.r.t. connection box map.

From the results, it looks like most routing times are down, except for baselitex arty 100.  Also the critical path delays for most designs meet the constraint (CPD < 20 ns).  Let's wait for the results from https://github.com/SymbiFlow/symbiflow-arch-defs/pull/1666, but it looks like the extended map lookahead is definitely good enough to replace the connection box lookahead.

It seems like there an issue with fasm2bels or VPR on a ROI target (picosoc_basys3) when using the extended lookahead map, investigating:
FAILED: cd /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7-vendor/build/tests/9-soc/picosoc && diff -u /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7-vendor/build/tests/9-soc/picosoc/picosoc_basys3/artix7-xc7a50t-basys3-roi-virt-xc7a50t-basys3-test/basys3_demo.bit.fasm /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7-vendor/build/tests/9-soc/picosoc/picosoc_basys3/artix7-xc7a50t-basys3-roi-virt-xc7a50t-basys3-test/design_picosoc_basys3_vivado.bit.fasm
--- /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7-vendor/build/tests/9-soc/picosoc/picosoc_basys3/artix7-xc7a50t-basys3-roi-virt-xc7a50t-basys3-test/basys3_demo.bit.fasm	2020-09-16 10:44:16.031415533 -0700
+++ /tmpfs/src/github/symbiflow-arch-defs-presubmit-xc7-vendor/build/tests/9-soc/picosoc/picosoc_basys3/artix7-xc7a50t-basys3-roi-virt-xc7a50t-basys3-test/design_picosoc_basys3_vivado.bit.fasm	2020-09-16 10:48:59.694717134 -0700
@@ -65533,8 +65533,6 @@

 INT_R_X31Y62.LV0.LH12

-INT_R_X31Y63.LV0.LH12
-
 INT_R_X31Y64.LV0.LH12

 INT_R_X31Y65.LV0.LH12
@@ -65549,8 +65547,6 @@

 INT_R_X31Y80.LV0.LV18

-INT_R_X31Y81.LV0.LV18
-
 INT_R_X31Y82.LV0.LV18

 INT_R_X31Y83.LV0.LV18
@@ -65565,8 +65561,6 @@

 INT_R_X31Y98.LV0.LV18

-INT_R_X31Y99.LV0.LV18
-
 INT_R_X31Y100.LVB0.LV18

 INT_R_X31Y101.LV0.LV18
@@ -65584,8 +65578,6 @@

 INT_R_X31Y116.LVB0.LV18

-INT_R_X31Y117.LV0.LV18
-
 INT_R_X31Y119.NN6BEG3.LV18

 INT_R_X31Y121.LV0.LV18
@@ -65601,8 +65593,6 @@

 INT_R_X31Y130.NW6BEG3.LV18

-INT_R_X31Y135.LH0.LV18
-
 INT_R_X31Y139.WW4BEG3.LV18

 INT_R_X35Y71.SE6BEG0.LV0
@@ -65705,9 +65695,7 @@
 INT_R_X43Y43.NR1BEG0.LOGIC_OUTS18

 INT_R_X43Y44.LV0.NR1END0
-INT_R_X43Y44.NR1BEG0.LOGIC_OUTS18

-INT_R_X43Y45.LV0.NR1END0
 INT_R_X43Y45.NR1BEG0.LOGIC_OUTS18
 INT_R_X43Y45.SS6BEG0.SE6END0

@@ -65731,8 +65719,6 @@

 INT_R_X43Y62.LH0.LV18

-INT_R_X43Y63.LH0.LV18
-
 INT_R_X43Y64.LH0.LV18

 INT_R_X43Y65.LH0.LV18
@@ -66047,9 +66033,7 @@

 RIOB33_X43Y43.IOB_Y0.IN_TERM.NONE
 RIOB33_X43Y43.IOB_Y0.LVCMOS12_LVCMOS15_LVCMOS18_LVCMOS25_LVCMOS33_LVTTL.SLEW.FAST
-RIOB33_X43Y43.IOB_Y0.LVCMOS12_LVCMOS15_LVCMOS18_LVCMOS25_LVCMOS33_LVTTL_SSTL135_SSTL15.IN_ONLY
-RIOB33_X43Y43.IOB_Y0.LVCMOS25_LVCMOS33_LVTTL.IN
-RIOB33_X43Y43.IOB_Y0.PULLTYPE.NONE
+RIOB33_X43Y43.IOB_Y0.PULLTYPE.PULLDOWN
 RIOB33_X43Y43.IOB_Y1.IN_TERM.NONE
 RIOB33_X43Y43.IOB_Y1.LVCMOS12_LVCMOS15_LVCMOS18_LVCMOS25_LVCMOS33_LVTTL.SLEW.FAST
 RIOB33_X43Y43.IOB_Y1.LVCMOS12_LVCMOS15_LVCMOS18_LVCMOS25_LVCMOS33_LVTTL_SSTL135_SSTL15.IN_ONLY
@@ -66205,7 +66189,6 @@
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y0.IFF.SRTYPE.ASYNC
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y0.ISERDES.MODE.MASTER
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y0.ISERDES.NUM_CE.N1
-RIOI3_TBYTESRC_X43Y43.ILOGIC_Y0.ZINV_D
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y1.IDELMUXE3.P1
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y1.IFF.SRTYPE.ASYNC
 RIOI3_TBYTESRC_X43Y43.ILOGIC_Y1.ISERDES.MODE.MASTER

I would assume this is a fasm2bels issue around constant routing, but hard to say for sure.

@litghost Not sure if this makes sense, but I have an idea why this is happening.
Basically, there is a connection within the ROI on an interconnect tile that seem to trigger make_routes to use a LH12 wire that gets outside of the ROI (the select white wire that gets to the bottom right in the image below that represents the broken dcp file).
This is a pretty unfortunate and improbable corner case, as the destination point of that  wire coincides with the destination of the missing wire that connects the missing IOB to the ROI.
In other words, make_routes correctly finds a route that connects two pips, but it happens that that is an inexistent route.
To be more precise, this would certainly lead to a non-working bitstream, as the long wire (LH12)  would have a conflict at its two ends (visible in the last image).

@litghost Not sure if this makes sense, but I have an idea why this is happening.
Basically, there is a connection within the ROI on an interconnect tile that seem to trigger make_routes to use a LH12 wire that gets outside of the ROI (the select white wire that gets to the bottom right in the image below that represents the broken dcp file).
This is a pretty unfortunate and improbable corner case, as the destination point of that wire coincides with the destination of the missing wire that connects the missing IOB to the ROI.
In other words, make_routes correctly finds a route that connects two pips, but it happens that that is an inexistent route.
To be more precise, this would certainly lead to a non-working bitstream, as the long wire (LH12) would have a conflict at its two ends (visible in the last image).

make_routes should never generate a route that doesn't exist in the underlying bitstream.  Given what you are writing, it should like the bitstream from VPR was broken?

@litghost let me rephrase.
The LH12 wire has three endpoints, one inside the ROI and the other two outside of the ROI as visible in the second image.
The problem is that in the output fasm from VPR both of the endpoints pips are enabled (one, the leftmost, is produced by VPR and the second, the rightmost, is part of the harness), but they are part of two different nets, but of course VPR does not know about that as it routes only within the ROI.
IMO, make_routes saw the leftmost pip enabled and saw also the middle endpoint of the LH12 enabled, and generated the (inexistent) connection.

@litghost let me rephrase.
The LH12 wire has three endpoints, one inside the ROI and the other two outside of the ROI as visible in the second image.
The problem is that in the output fasm from VPR both of the endpoints pips are enabled (one, the leftmost, is produced by VPR and the second, the rightmost, is part of the harness), but they are part of two different nets, but of course VPR does not know about that as it routes only within the ROI.
IMO, make_routes saw the leftmost pip enabled and saw also the middle endpoint of the LH12 enabled, and generated the (inexistent) connection.

Ok, so there are two bugs.  The first is that the routing import for the ROI shouldn't excluded the node containing the LH12 wire such that no input edges went to that CHAN except for the edge from the synthetic tile.
The second bug is a missing sanity check in fasm2bels about invalid bitstream that has a shorted wire.  This is mostly an additional error check (e.g. missing feature), rather than a defect in fasm2bels.

@litghost All right, IMO as this is a corner case affecting only ROI targets, solving these bugs is a lower priority task.
As I am unsure how long it would require to fix both the "bugs", it may would be better to file GH issues on both fasm2bels and here, and solve this in a second moment.

@litghost All right, IMO as this is a corner case affecting only ROI targets, solving these bugs is a lower priority task.
As I am unsure how long it would require to fix both the "bugs", it may would be better to file GH issues on both fasm2bels and here, and solve this in a second moment, and for the time being disable the diff_fasm test on the picosoc_basys3 target.

I completely disagree.  If VPR is generating invalid bitstreams, we need to fix that.

I completely disagree. If VPR is generating invalid bitstreams, we need to fix that.

Ok, I'll get this fixed on the VPR side, during the RR graph generation for ROI targets as this is the issue that is generating invalid bitstreams

@litghost I am quite unsure on how to proceed in solving the rr graph issue and eliminate the nodes that can escape the ROI, generating shorted connections with pre-existing harness routing.
With https://github.com/SymbiFlow/symbiflow-arch-defs/pull/1667/commits/d0db3dcea355c2765038469657f18d4bd6ea13e5, I have tried to delete nodes that have edges with nodes outside the ROI, but I think that my implementation (and I believe also the idea) is quite wrong, in fact I CI went red due to the fact that I deleted nodes are unrelated to the problem I am trying to solve:
## Initializing router criticalities took 0.07 seconds (max_rss 711.1 MiB, delta_rss +0.0 MiB)
---- ------ ------- ---- ------- ------- ------- ----------------- --------------- -------- ---------- ---------- ---------- ---------- --------
Iter   Time    pres  BBs    Heap  Re-Rtd  Re-Rtd Overused RR Nodes      Wirelength      CPD       sTNS       sWNS       hTNS       hWNS Est Succ
      (sec)     fac Updt    push    Nets   Conns                                       (ns)       (ns)       (ns)       (ns)       (ns)     Iter
---- ------ ------- ---- ------- ------- ------- ----------------- --------------- -------- ---------- ---------- ---------- ---------- --------
Warning 64: No routing path for connection to sink_rr 102804, retrying with full device bounding box
Warning 65: No routing path for connection to sink_rr 189328, retrying with full device bounding box
Cannot route from SYN-GND[0].GND[0] (RR node: 103530 type: SOURCE location: (30,27) class: 0 capacity: 1) to BLK-TL-BRAM_L[0].BRAM_FIFO18_ADDRBWRADDR0[0] (RR node: 189328 type: SINK location: (20,53) class: 18 capacity: 1) -- no possible path
Failed to route connection from '$false' to 'murax.system_ram.ram_symbol<IP_ADDRESS>' for net '$false' (#0)

Do you have some suggestions on how to proceed?

With https://github.com/SymbiFlow/symbiflow-arch-defs/pull/1667/commits/e72d91340470ed19a6b5a10840d3d0ba83631675, the Vendor Tools failure seems to be fixed, but I am unsure whether this is because the corner case we hit prior to the commit does not show up due to changes to the RR graph that yield different routing.
One thing I see from the QoR results though is a degradation of CPD and runtime for the baselitex tests, which is strange due to the fact that the changes in https://github.com/SymbiFlow/symbiflow-arch-defs/pull/1667/commits/e72d91340470ed19a6b5a10840d3d0ba83631675 should affect ROI-only tests.

Preliminary analysis of the QoR results among the continuous CI on master and this PR's CI is the following:
Average route time increase: 17%
Average CPD increase: 0.1%
Good news is that CI builds do complete much faster compared to baseline. For instance, the longest current CI (200T vendor tools) takes on master ~10h20m, while, using the extended map, it takes ~6h30m.
A similar reduction appears in the install package size due to a reduction in the size of the lookahead:

XC7 (compressed)

Baseline: 906 MB
Changes: 658 MB

XC7 200T (compressed)

Baseline: 548 MB
Changes: 400 MB

Here is the csv file that includes both the CI results of baseline and the changes. The same file is imported in sheets here

@acomodi How does CI run time complete faster while route time takes longer? It is because the map calculation is significantly faster?

@mithro Indeed, the main reason of faster CI is the Lookahead map calculation, which for what I have seen with local tests, takes up to half of the time required by the current master

@acomodi Great work on this!  Exciting to see this merged.  Next steps:

Determine how to fix workaround in https://github.com/verilog-to-routing/vtr-verilog-to-routing/pull/1564/files#diff-0fa89048843d13236cff348a4ce8edc2L390-R394 .
Determine if penalty cost on edges is still as needed as before.  If so, implement the edge splitting work that was started before.

Sounds good?


add monitoring variables for integration

This add the variables to spin up the monitoring deployment in integration
Refs:

trello card

superseded by #295


Set Titlestring to session name

Hi,
switched over from vim-session. I set my titlestring to the name of the current session:
auto BufEnter * let &titlestring = "Neovim " . xolox#session#find_current_session()
Does Startify has a function like xolox#session#find_current_session()
Cheers

Well, what does that function do? :-)
In general, Vim has an internal variable v:this_session which points to the file of the current session or is empty when there was no session sourced yet.
Does that help already?

It did help, thanks!
set title
auto BufEnter * let &titlestring = "Neovim " . fnamemodify(v:this_session, ':t:r')

If this is inside vimrc then the title of the terminal-window is set to the name of the current session.

Good! I guess this can be closed then.
By the way, using the SessionLoadPost event might be even better, since it triggers less often than BufEnter.


feature/clean-a-specific-scheme: Add this-scheme new flag for clean c…

This PR intent to add the possibility for developer which have a heavy project, to run flutter clean with a specific scheme. This to avoid running xcode clean to all schemes.
List which issues are fixed by this PR. You must list at least one issue.
https://github.com/flutter/flutter/issues/116735
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.
Done

I will rework error management. Btw, command was "--this-scheme" not "this-scheme".

@andrewkolos can you take another look at this one?

@andrewkolos friendly ping

Hello--sorry I lost track of this PR, I confused it with another one that was merged. I'll be looking at this again shortly

Is this ready for review again?

Is this ready for review again?

Yes

@EArminjon Google testing seems to be stuck for this PR. Would you mind merging upstream/master into this branch? This might fix it.

oops bad push, will fix

Seems to be good now.

The ci.yaml validation check is failing for some reason. Per the message, could you try another git fetch upstream && git merge upstream/master?

(didn't know why  I always fail my rebase. I update my repo on github to sync it with the original flutter repo. Then i go to my branch : git fetch --all && git pull --rebase origin master && git push origin my_branch_name -f. I got the all commit history pushed... Git is still a subject for me despite all these years...)
Must be good this time :'( !


[SR-4513] Compiler crash when Range incorrectly used with BidirectionalCollection instead of CountableRange

Previous ID
SR-4513

Radar
None

Original Reporter
@jadengeller

Type
Bug

Attachment: Download

Environment
Version 8.2.1 (8C1002)
Toolchain: Swift 3.1 Snapshot 2017-03-19 (a)

Additional Detail from JIRA

Votes
0

Component/s
Compiler

Labels
Bug, CompilerCrash, DiagnosticsQoI, TypeChecker

Assignee
None

Priority
Medium

md5: 5445f8f68cdc39c1cfd02c8be2d54208

Issue Description:
If changed to `CountableRange`, this compiles. The error message is bad, and the compiler crashes…

This works correctly with Swift 5.7.1.


[Question] How is this project different from https://github.com/YaccConstructor/Quickgraph.?

Hello,
I made a fork of the YaccConstructor.QuickGraph repository that is available here.
The purpose of my fork was to clean the library and make it using modern C# development pipelines to be usable in recent build processes. As an example, using my new packages avoid problems of mscorlib not found when using the Microsoft.NET.Sdk.WindowsDesktop of new csproj format.
So I took as basis the quoted repository and made a lot of clean, unit tests and bug fixes.
I only focused for now on the core library that I split in 2 packages (QuikGraph and QuikGraph.Serialization).
The plan for the future is to fully clean the original library to provide it as several packages representing independant sub modules of the library.

Thanks for the reply.


about image input

Hi, thank you for your work.
Can Relevance AI process image data, and what input format does it need to be given?
Looking forward for your answer, thank you.

Hey yep of course we can - you can upload your images on https://cloud.relevance.ai via our "Connect Media" workflow. You can visit our documentation for our no-code platform on docs.relevance.ai.


History

Added a nice time line with ownCloud events from the last 5 years to our history page. A few minor gaps and issues, feedback super welcome! @karlitschek @jancborchardt and everybody else ;-)
All icons are svg and somehow - that creates problems.  As svg is more scalable it'd be nice to keep it svg instead of png but then I need some ideas on how to deal with the cutting off...
Here's a full picture of the page.

The headings should be above the events of that year, not below. ;)
Also to make it a bit more visual and to show the incredible growth, I would add a picture of each of the dev meetings from 2011 all the way to the conf 2015.

Btw, the second developer meeting was in Zurich, on the weekend of October 22–23. It was hosted by https://github.com/FreeMinded and consisted of 7 people – the 5 from the first meeting plus Pascal and a friend/colleague of his.
(I know the date cause after that I gave a talk at JSZurich ;)

@jancborchardt awesome, will make the changes. A question: do you happen to like this look more:

It would be a bit of work to make it all look like that (I only did 2015 now) but if you think it's worth it, I am up for it. @camilasan I did it!!! ;-)

@jancborchardt that's how images would look

It would be a better layout, but only if the respective other side (in this case the left side when the image is on the right) doesn’t have that much whitespace, but rather the events below move up.

@jancborchardt ok, that is not easy. I made it work but it is quite a bit of manual work. Did manage to make it responsive, though. Now we'll have to figure out what to give images to - the left vs right and the extra spacing I have to do manually. Do we want screenshots and youtube videos of releases, too? Pictures of office? I can add a shitload of images, would make it nicer...
Want me to?

The updated look

looks good. :+1:
As you know I'm a big fan of starting with something and improve over time. :-)
Sheryl Sandberg: 'Done is better than perfect.'

Ok, then, let's first merge the history page as it is in https://github.com/owncloud/owncloud.org/pull/680#issue-106168286 and improve after that ;-)

(don't delete the branch, I'll continue here)

@karlitschek @jancborchardt too many images/videos, or nice?


Is there a way to promote/deploy a version of the agent to an environment (beta feature) via command-line or REST?

I am working with the beta version of Dialogflow which has released "Environments" feature. Currently I have created different environments and published multiple versions of the agent in the environments using the Dialogflow console. Is there a way to publish a version to an environment via command line, REST API, or using npm dialogflow package?

As of today, I don't think there is.
You can use it for like detect intent calls and similar, but not uploading new versions of your agent.
https://github.com/googleapis/googleapis/blob/master/google/cloud/dialogflow/v2beta1/session.proto#L55-L72


document catalog cluster locator method

Hey, I just made a Pull Request!
Docs only, no issue tracking this
:heavy_check_mark: Checklist

[ ] ~A changeset describing the change and affected packages. (more info)~ docs only
[x] Added or updated documentation
[ ] ~Tests for new functionality and regression tests for bug fixes~ docs only
[ ] ~Screenshots attached (for UI changes)~ pretty easy to check out
[x] All your commits have a Signed-off-by line in the message. (more info)

@benjdlambert he's been out sick, we can debate and revise when he's back 😄

lgtm


add fixer logic for aliases

Hey, I just made a Pull Request!
looking at #23913 found that some use cases where not fixed correctly by this lint rule.

WhitStyles was missing on the know styles list and was replaced with import WithStyles from '@material-ui/core/WithStyles';
on this plugin there is multiple uses of imports as alias and the linter was using the wrong name to resolve that too
causin this type of fixes

- import {
-   Button,
-   Dialog as MaterialDialog,
- } from '@material-ui/core';
+ import Button from '@material-ui/core/Button';
+ import MaterialDialog from '@material-ui/core/MaterialDialog'; <

// note that `MaterialDialog` is an alias and the import should be from  '@material-ui/core/Dialog' instead

On this PR:

Updated the KNOWN_STYLES looking on almost all the exported tokens from @material-ui/core/styles
Added the functionality to get the alias in place and doing the right remediation for those

TODO:

[ ] Review and add test from the closed PRs in related with #23467 ass seems like those were also some missing logic in the linter

issue: https://github.com/backstage/backstage/issues/23467

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Hi @Sarabadu, I don't understand the todo?

Review and add test from the closed PRs in related with https://github.com/backstage/backstage/issues/23467 ass seems like those were also some missing logic in the linter

The linter has been added to the merged PRs. These would then fail in the CI for this PR would they not? Then you would have to correct them here. Like I said, feel like I might be missing something.

Hi @Sarabadu, I don't understand the todo?

Review and add test from the closed PRs in related with https://github.com/backstage/backstage/issues/23467 ass seems like those were also some missing logic in the linter

The linter has been added to the merged PRs. These would then fail in the CI for this PR would they not? Then you would have to correct them here. Like I said, feel like I might be missing something.

Some PR like: https://github.com/backstage/backstage/pull/23766
Are closed and are still pending.
I will review those, seems like we  have something odd with pickers and I saw also some alpha failing.
We can try to fix the linter and ask the authors to re build it.

Ah, I follow now, thanks @Sarabadu 👍


Adding App shell and caching it.

Adding an app shell would be really great. We can also cache it for the repeated user. I can start working on it if it's okay.

Can you add more clarification?

Hey there! Thank you for your contribution. We have decided to take Next.js Commerce in a new direction and will be closing out current PRs and issues due to this change. Please see this PR for more details: #966


No example of using Import-PnPTaxonomy with a file containing terms

Hi
There are two ways of using this command.
The first way of just including the terms has an example.
The second way, using a file containing terms has no example.
Regards
Nigel

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

ID: 36c52515-b901-5928-cbe1-641b0c21f975
Version Independent ID: 700c3b55-3841-f8fc-3fc1-5dad4b6dc7be
Content: Import-PnPTaxonomy (sharepoint-pnp)
Content Source: sharepoint/sharepoint-ps/sharepoint-pnp/Import-PnPTaxonomy.md
Service: unspecified
GitHub Login: @techwriter40
Microsoft Alias: kirks

Thank you @NPrice99. Added in PR https://github.com/SharePoint/PnP-PowerShell/pull/1606

Closed based on the update from @erwinvanhunen as PR is merged.


RSpec failing on Ruby 2.7. Investigate whether a workaround is available.

When dealing with #35 we encountered an issue where the build is failing on Ruby 2.7.x with the RSpec version that fixed the build failures for Ruby 3.2.x.
See if there is a way to get the build passing with both 3.2 and 2.7 or update master to drop support for 2.7.

Per the Ruby Maintenance Branches page, Ruby 2.7 is End-of-Life even for security fixes as of 2023-03-31. Rather than spending the effort to try and fix the build failure for 2.7, the solution is to modify the gemspec to make 3.0 the minimum version on the master branch.

Resolved by not fixing for 2.7 and dropping support. See #51


Frame Set Selection

Add the ability to save a frame set name and provide users a drop-down to select frame set in processing.

[ ] Frame set name input (Frame Extraction)
[ ] Persisted data saves string instead of integer
[ ] Frame selection dropdown

Thanks for the heads up!


🔧 feat: Initial MCP Support (Tools)

Summary
Initial Support for MCP, integrating tools to start, I will then move on to Resources, then Prompts.
Initial tool support is for Agents and Assistants API endpoints.
Note: Agents are recommended due to the ability to provide images from tool results directly to the LLM (Anthropic/OpenAI only).
Relevant issue: https://github.com/danny-avila/LibreChat/issues/4876
Change Type

[x] New feature (non-breaking change which adds functionality)

Testing
Tested the following mcpServers config via librechat.yaml file:
# librechat.yaml
mcpServers:
  everything:
      # type: sse # type can optionally be omitted
      url: http://localhost:3001/sse
  puppeteer:
    type: stdio
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-puppeteer"
  filesystem:
    # type: stdio
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-filesystem"
      - /home/danny/LibreChat/
# `iconPath` - unique to LibreChat, defines the tool's display icon shown
# in the tool selection dialog, opened by "Add Tools" from Agents form
    iconPath: /home/danny/LibreChat/client/public/assets/logo.svg
  mcp-obsidian:
    command: npx
    args:
      - -y
      - "mcp-obsidian"
      - /mnt/c/Users/danny/Documents/obsidian

Checklist

[x] My code adheres to this project's style guidelines
[x] I have performed a self-review of my own code
[x] I have commented in any complex areas of my code
[x] I have made pertinent documentation changes
[x] My changes do not introduce new warnings
[x] I have written tests demonstrating that my changes are effective or that my feature works
[x] Local unit tests pass with my changes
[x] Any changes dependent on mine have been merged and published in downstream modules.
[x] A pull request for updating the documentation has been submitted.

I attempted to set this up on an Ubuntu server at home. While I successfully configured Librechat, the MCP tools did not set up properly. I managed to establish the filesystem MCP server, but when I tried to add another server, like the Todoist MCP server, it failed. I used the deploy-compose.yml file for deployment, and here’s my librechat.yaml configuration. I experimented with various configurations, but all were unsuccessful. I even tried the one mentioned in the earlier testing comment above. I'm not an expert, so I might be overlooking something obvious and would appreciate guidance either way.
mcpServers:
  todoist:
    command: npx
    args:
      - -y
      - "@abhiz123/todoist-mcp-server"
    env:
      TODOIST_API_TOKEN: "REPLACE_WITH_YOUR_API_TOKEN"
  brave-search:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-brave-search"
    env:
      BRAVE_API_KEY: "REPLACE_WITH_YOUR_API_KEY"
  filesystem:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-filesystem"
      - "/Users/abe"
  memory:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-memory"
  github:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-github"
    env:
      GITHUB_PERSONAL_ACCESS_TOKEN: "REPLACE_WITH_YOUR_PERSONAL_ACCESS_TOKEN"
  mcp-installer:
    command: npx
    args:
      - "@anaisbetts/mcp-installer"
  markdown:
    command: npx
    args:
      - -y
      - "mcp-obsidian"
      - "/Users/abe/Library/Mobile Documents/iCloud~md~obsidian/Documents/Vault"
  puppeteer:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-puppeteer"
  airtable:
    command: npx
    args:
      - -y
      - "airtable-mcp-server"
      - "REPLACE_WITH_YOUR_AIRTABLE_API_KEY"
  sequential-thinking:
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-sequential-thinking"
  playwright:
    command: npx
    args:
      - -y
      - "@executeautomation/playwright-mcp-server"

@ThoughtPhotography appreciate the feedback. We will simply rely on the librechat.yaml file for now. I will see about using JSON from the frontend, though.

@epaproditus open a troubleshooting discussion and post relevant logs.
I’m locking discussion here since it’s easily missed and comments here are intended for the actual code.


Create new User Profile Component

Epic Subtask
Create new User Profile Component
Placeholder issue for discussion.

https://github.com/operationcode/operationcode_frontend/issues/20

hey @sethbergman is it possible to define the scope of this issue a little more? I want to work on the profile UI but this issue feels so broad that I am blocked.

Ahh yes this was something I thought about while exploring the new GitHub API, which utilizes GraphQL and allows you to easily query specific data about users, orgs, repos, and also allows you to get Gravatars for user profiles. I thought it would be beneficial for our users to build a resume with a component inside of their user profile to display their contributions and format it in a nice way. This is probably one that needs more fleshing out and could be integrated down the line once we have a portal type system built for admins, users, mentors and mentees, etc. I would also like to have the ability to link social profiles like linkedin, which was what the Passport middleware was for. I believe that issue was closed though. Anyway, it's open for feedback and discussion, and likely more of a long term goal.

The above is in regards to #486 and #540.

hey @sethbergman, so is this something we could later integrate with redux?

I'm not sure. I believe Apollo is the standard for GraphQL. There's also graph.cool and graphiql, but I don't see why you can't implement redux. It just depends on what parts of the app need state management and action dispatchers.

@sethbergman be awares that the new profile system is in place!

Awesome! :+1:

Closing this out.


[csl-2833] scroll to top between questions

You'll need a way to access the ref though since the title is nested and you can access it directly from CioQuiz -> index.tsx

Or maybe you can create the ref on index.tsx and then forward it to the question title. I'm not sure if this is the best solution though

Closing this PR since customers will be the ones handling this if they want to.


fix(android): Fix launching camera when targeting SDK 30

Platforms affected
Android
Motivation and Context

Fixes #673
The Android 11 (API Level 30) migration has some changes regarding package visibility. This page mentions:

When your app targets Android 11 or higher and uses an intent to start an activity in another app, the most straightforward approach is to invoke the intent and handle the ActivityNotFoundException exception if no app is available.

Currently, this  plugin tries to resole the intent by querying the Package Manager, seemingly for a workaround for Nexus 7.
Description

This PR attempts to start the activity and handle the ActivityNotFoundException error (if thrown).
Testing

I ran npm test
I tested this on an Android 11 device with an app targeting SDK 30 and it launched the camera fine.
I haven't tested this on Nexus 7, but I did also test on a device with no camera app installed (disabled via ADB) and the error was handled gracefully.
Checklist

[ ] I've run the tests to see all new and existing tests pass
[ ] I added automated test coverage as appropriate for this change
[X] Commit is prefixed with (platform) if this change only applies to one platform (e.g. (android))
[X] If this Pull Request resolves an issue, I linked to the issue in the text above (and used the correct keyword to close issues using keywords)
[ ] I've updated the documentation if necessary

This PR is related to #684, as both aim to address issues with SDK 30 in different ways.
This one attempts to invoke the intent (and handle error if no activity found), whereas the other PR continues using the package manager and updates the package visibility to include the IMAGE_CAPTURE intent in the AndroidManifest.xml to allow launching the camera.

This fix solved my issue on my Moto 8 / 4GB / Android 11.  Thank you very much.
My question is, Is there a reason why this has not been merged into master?
Is there some concern about this change?
@erisu Do you or anyone on your team have an issue with this change?
Kevin Cornelison

I need it in Arabic language please
في الأحد، 12 ديسمبر 2021 8:51 ص yogeshingale1 @.***>
كتب:

@.**** approved this pull request.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/cordova-plugin-camera/pull/739#pullrequestreview-829586489,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWCRWBAESQN6SJM3UXUIR5LUQQZ5DANCNFSM47B73R5A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I my case when I set sdktarget 29 then camera  working but when set 30 then not
with<EMAIL_ADDRESS>

Closed by #684
The current release contains #684 which resolved the issues with Android SDK 30.
Thank you for your PR.


[Bug] metadatFilter input on QueryByVectorIdRequest variable impossible to use as it does not start with a capital letter.

Is this a new bug?
In other words: Is this an error, flaw, failure or fault? Please search Github issues and check our Community Forum to see if someone has already reported the bug you encountered.
If this is a request for help or troubleshooting code in your own Pinecone project, please join the Pinecone Community Forum.

[ X] I believe this is a new bug
[ X] I have searched the existing Github issues and Community Forum, and I could not find an existing post for this bug

Describe the bug
The input variable on this method has the  metadataFilter variable in lowercase. This makes usage of this input variable impossible.
Here is the struct showing the metadataFilter variable
type QueryByVectorIdRequest struct {
	VectorId        string
	TopK            uint32
	metadataFilter  *MetadataFilter
	IncludeValues   bool
	IncludeMetadata bool
	SparseValues    *SparseValues
}

This is the function it is used in.
func (idx *IndexConnection) QueryByVectorId(ctx context.Context, in *QueryByVectorIdRequest) (*QueryVectorsResponse, error)

Hey @mgagnon-rvo , thanks for opening this, and apologies for the delayed response. We're investigating this bug now.


"version" in x-nmos-api private claim

Currently the BCP-003-02 description of the x-nmos-api private claim has:
"x-nmos-api": {
  "name": "is-04",
  "version": ["1.0","1.1","1.2"]
}

Would it make sense to be consistent with other NMOS specifications (e.g. IS-04 Node /self resource "api" property), like so:
"x-nmos-api": {
  "name": "is-04",
  "versions": ["v1.0","v1.1","v1.2"]
}

That seems reasonable - please draft PR.


App Store and playstore videos if any.

App Store: Videos would be required in 5.5" and 6.5" variants.

Also use the videos on YouTube


set LDAP_* environment variables to an empty string

This PR will fix https://github.com/antleaf/nims-mdr-development/issues/365#issuecomment-740635833 .

Changes are required to tests in: https://github.com/antleaf/nims-hyrax/blob/develop/hyrax/spec/services/user_authorisation_service_spec.rb

@Steven-Eardley Thanks, I've fixed it.
@asahiko Could you try it on your local environment?

Worked for me. Merging.


ASM-8019 ASM Support for Compellent Enterprise Manager 2016 R2

Format of JSESSION Id that needs to be passed in the REST API header for authentication has changed with 2016 R2. Now we need to munge the content of set-cookie attribute before passing it to subseqent APIs.
Also API version value needs to be passed as "3.1" instead of "2.0"

@gavin-scott Can you review?  Or let me know if I should ask Kaushal...

@sushilrai Looks like there is review feedback for you to address.


formatNow

You are not using moment or something like :(
return now.format(`${day}/${month}/${year} ${hour}:${minute}`);

Woopsie

Done in #abc64d751da450c4a79450af5d4a6964f7d8effc


Installation and Docker??

Are you guys working perhaps in creating a Docker image of this installation process? https://github.com/LexPredict/openedgar/blob/master/INSTALL.md

Hello - Yes, we will be working to migrate this deployment method to Docker
& Kubernetes to match other applications and platforms we develop.
We would also be looking for others to create a pull request for this
functionality if they are able to create one.
Thanks,
Eric
On Fri, Nov 22, 2019 at 8:07 AM Pedro V<EMAIL_ADDRESS>wrote:

Are you guys working perhaps in creating a Docker image of this
installation process?
https://github.com/LexPredict/openedgar/blob/master/INSTALL.md
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/LexPredict/openedgar/issues/16?email_source=notifications&email_token=AHIAIOW76WIJAD4YSW2LSKDQU7KRRA5CNFSM4JQQNGK2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4H3MGYPA,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHIAIOVDGJDLWRGJXPSGVVTQU7KRRANCNFSM4JQQNGKQ
.

--
*Eric Detterman *| VP and Global Head of Products and Solution Engineering,
LexPredict, LLC
*Email<EMAIL_ADDRESS>*LinkedIn: *
*https://www.linkedin.com/in/ericdetterman
https://www.linkedin.com/in/ericdetterman**Web: *https://www.lexpredict.
https://www.lexpredict.com/com/ https://www.lexpredict.com/
Cell: +1<PHONE_NUMBER>
[image: LexPredictÂ®]
--
CONFIDENTIALITY NOTICE: This transmission, including any attachments,
may contain confidential, protected, or sensitive information.  If you are
not the intended recipient of this transmission, you may not disclose,
copy, redistribute, or use the contents of this message.  If you have
received this email in error, please destroy it and notify the sender
immediately.


Code cleanup

Fixed some typos and PEP8 stuff.

A word on class names: https://www.python.org/dev/peps/pep-0008/#class-names

Oops, made a mistake in the last commit name...


Dupplicated notification occurs whenever the app is openned(not minimize or in background mode) on iOS

Dupplicated notification occurs whenever the app is openned(neither minimize nor in background mode) on iOS
To Reproduce

Open Omi app, keep it opened
Install App Mentor.01
Says 'Hey Omi what do you think`

Current behavior
There're 2 notifications occurs
Expected behavior
Only one notification
Screenshots

Smartphone + device

Device: iphone 11 pro
App Version: 1.0.46 build 170
Device version: DevKit 2 - firmware 2.0.2

@nguyenthe0107

still getting this bug

done, try it now b177


[BEAM-12199] Run pack_combiners phase by default in FnApiRunner

Run the pack_combiners optimizer phase by default in FnApiRunner. pack_combiners only packs combiners with the APPLY_COMBINER_PACKING annotation, so this will not result in any breaking changes for user pipelines.
Also create default factory methods for certain Environment subclasses so that the default Python capabilities are set correctly.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Ping?

Ready for review. I couldn't get FlinkRunnerTest to work so I filed BEAM-12305 for that, and will deal with it later.

Ping @robertwb ?

Run all tests

retest this please

Run Python Flink ValidatesRunner

Run Python Spark ValidatesRunner

Run Python Flink ValidatesRunner

Run Python Spark ValidatesRunner

@robertwb Should be good to merge now; the remaining test failure looks spurious ("RuntimeError: Channel closed prematurely.")

Ping?


Updated bundled gems, fixed the default rake task, dropped ruby 1.9 (red on travis), add badges

@sax could you please review this PR?

Actually any one of @sax, @richardiux or @hjhart – take a look and merge or comment. I want this gem to be used at the project I am on, and it would be nice to have a bit refreshed dependencies, and badges, and the build not in error state. :+1:

Looks good to me.


pkg/rate: Make parsing of positive values more strict

This fixes issues identified by CodeQL where strings were parsed as
unsigned integers and then converted to integers without a bounds check.
Refs #14514
Signed-off-by: Tom Payne<EMAIL_ADDRESS>

test-me-please

test-me-please

test-me-please

test-me-please

retest-net-next

retest-net-next

test-gke

test-gke

The Cilium-Ginkgo-GKE check is currently failing with messages like:
15:00:27  ERROR: (gcloud.container.clusters.delete) Some requests did not succeed:
15:00:27   - ResponseError: code=400, message=Operation operation-1610373623343-d02f397d is currently operating on cluster cilium-ci-21. Please wait and try again once it is done.

This seems unrelated to the changes in this PR.

The Cilium-Ginkgo-GKE check is currently failing with messages like:
15:00:27  ERROR: (gcloud.container.clusters.delete) Some requests did not succeed:
15:00:27   - ResponseError: code=400, message=Operation operation-1610373623343-d02f397d is currently operating on cluster cilium-ci-21. Please wait and try again once it is done.

This seems unrelated to the changes in this PR.

retest-gke

retest-gke

retest-gke

retest-gke


Add Caret Insert Below and Above shortcuts to TextEdit

This PR is an enhancement of the multi caret support (#61902). This adds the shortcuts ui_text_caret_insert_below and ui_text_caret_insert_above. The default keys are Ctrl+Shift+L and Ctrl+Shift+O. These shortcuts allow the user to quickly insert multiple carets without using the mouse.

[x] Handle selections
[x] Handle Wrap
[x] Handle RTL

I would add two actions directly into TextEdit for this, no need to make it editor only.

This PR is done as far as I am concerned, but I encountered an issue concerning selections. If I insert a new caret with a selection and then try to select more text using Shift+Right, the selection of the new caret behaves weirdly. But if I insert a new caret with a selection using Alt+LeftClick then the selection behaves as expected. The GIFs below demonstrate the issue:
With ui_text_caret_insert_below:

With Alt+LeftClick:

Since I am only calculating a line, a column and the from and to column of the selection my code should not be the problem. So I am either using the API wrong or there is a bug in add_caret or select.

I added the actions to the documentation.

Couple thoughts about the shortcut, JetBrains uses Alt+Shift+Up / Alt+Shift+Down, though as a last resort we could stick with Ctrl+Shift+Up / Ctrl+Shift+Down and override it to something more suitable for mac. VSCode seems to use Command+Up / Command+Down

Alt+Shift+Up/Down is already in use by Script Editor -> Move Down/Up.

I added a Unit Test

I changed the shortcut back to Ctrl+Shift+Up / Ctrl+Shift+Down and added an override for macOS with Ctrl+Shift+O / Ctrl+Shift+L.

Thanks!


request more accurate information when emitting dependencies arising from gradle plugins

Expected Behavior
The dependencies task should note the name of the plugin that pulls in transitive plugin dependencies.
Current Behavior (optional)
Generic data files name.
Context
When troubleshooting build systems, or when addressing supply chain security, the name of the toplevel package is essential for communicating the root cause of transitive plugin dependencies.

Could you please clarify your request and provide some examples?

If we are talking about plugins, you probably want buildEnvironment that displays all buildscript dependencies declared in project with transitive dependencies.
What do you mean by "Generic data files names"? Both the dependencies and buildEnvironment tasks output dependency tree with maven coordinates.


UDX-109 updates to work with Cypress v.10

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


UniFi - Move ignoring logic to entity registry enabled default

Breaking Change:

Description:
Related issue (if applicable): fixes #
Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
Example entry for configuration.yaml (if applicable):

Checklist:

[ ] The code change is tested and works locally.
[ ] Local tests pass with tox. Your PR cannot be merged unless tests pass
[ ] There is no commented out code in this PR.
[ ] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[ ] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[ ] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

@balloob I still need to be able to trigger a reload of the entry if config entry option changes

As we discussed today in the chat, you don't have to, it will be done automatically after we merge #26120 . All you need to do is update the entity registry and the system will reload if necessary.


alternate addon usage doesn't work for dummy app?

I'm trying to follow: https://github.com/aexmachina/ember-cli-sass#alternative-addon-usage
I am having trouble loading the <my-addon.scss> file from tests/dummy/app/styles/app.scss:
File: /Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/tmp/sass_compiler-input_base_path-ZGIGWPMk.tmp/0/app/styles/app.scss (5)
The Broccoli Plugin: [SassCompiler] failed with:
Error: File to import not found or unreadable: ember-datagrid
Parent style sheet: /Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/tmp/sass_compiler-input_base_path-ZGIGWPMk.tmp/0/app/styles/app.scss
    at options.error (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/node-sass/lib/index.js:292:26)

The broccoli plugin was instantiated at:
    at SassCompiler.Plugin (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/broccoli-plugin/index.js:7:31)
    at SassCompiler.CachingWriter [as constructor] (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/broccoli-caching-writer/index.js:18:10)
    at new SassCompiler (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/broccoli-sass-source-maps/index.js:20:17)
    at /Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/ember-cli-sass/index.js:27:12
    at Array.map (native)
    at SASSPlugin.toTree (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/ember-cli-sass/index.js:24:34)
    at /Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/ember-cli/node_modules/ember-cli-preprocess-registry/preprocessors.js:184:26
    at Array.forEach (native)
    at processPlugins (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/ember-cli/node_modules/ember-cli-preprocess-registry/preprocessors.js:182:11)
    at module.exports.preprocessCss (/Volumes/Macintosh_HD/Users/shauncutts/src/ember-datagrid/node_modules/ember-cli/node_modules/ember-cli-preprocess-registry/preprocessors.js:152:10)

Is there any "trick" to using it in the dummy app (e.g. include path?)?

:( opps -- sorry: I had the paths wrong!


Use s1_orbits

TODO:

[x] Don't install s1_orbits via pip in environment.yml after it's published to conda-forge
[ ] Test locally with before and after versions of the plugin and confirm the same orbit files are downloaded.
[ ] Squash merge to clean up the fact that I manually reverted changes across several files, which will make git blame ugly

Verified that python -m hyp3_isce2 ++process insar_tops_burst S1_136231_IW2_20200604T022312_VV_7C85-BURST S1_136231_IW2_20200616T022313_VV_5D11-BURST --looks 20x4 --apply-water-mask True downloads the same orbit files (same filenames and contents) on develop and s1-orbits.


create a generic struct constructor scheme

This is an experimental item, that is not really required, but would be very useful. It is more of a new technique of struct creation required because of the lack of the constructor paradigm in golang. The NewXXX alternative paradigm is weak at best, giving risie to an alternative approach in this area, that I have so far not seen elsewhere. This is just an experiment and might not work as I would like, but the idea needs to be researched and worked through.
The idea is that it would be nice if we could define a constuctor for a struct that would be invoked automatically on the client's behalf, as the use creates the struct instance: MyStruct{ members }.
Of course, MyStruct{} would'nt work as is, because there is no way of intercepting struct instiantiations. So, rather, a new generic would be introduced, lets call the generic Construct. So the client would invoke Construct[MyStruct]{ members }.
The client would then have to defined a 'ctor' method for the struct and we could invoke this (possibly with reflection, depening on how we handle parameters).

Bingo. This is much less of a problem than initially thought and much easier to fix.
All we need to do is follow a new constructor paradigm which is as follows:

Define a construct method on the strict, does not need to take new parameters but that is up to the implementer. The construct method returns a pointer to the struct

the client would invoke as: instance := MyStruct{ members }.construct()

This technique does not replace all NewXXX cases. Some of these cases are non trival factory functions which may not be suited to this pattern.


Update to latest Rust

Some traits have been moved from std::num to the num crate, and Default is in the prelude now.

Nice!


Dimensional Storage dupe

Describe the bug
This allows players to dupe entire inventory of Dimensional Storage
To Reproduce
Steps to reproduce the behavior:

Place an actuator
Open its inventory
Destroy an actuator
You will still have access to whole inventory of Dimensional Storage

Expected behavior
GUI should close as soon as block is destroyed
Video
https://youtu.be/M974aST6TtU
System (please complete the following information):

Occultism Version:
OS: Windows 11 22H2
Server OS: Linux Debian (Kernel 4.19.235-1)
Java: Zulu 18 on both server and client
Minecraft Version: 1.19.2
Mods: https://dpaste.org/FR6ec/raw

@WGOS thanks for the report, will move to internal to avoid abuse until fixed


Support Default Values

Some of the types might provide default values and hence should be automatically initialized. The point here is to provide user controllable facilities to define default values. Maybe use Mixins?
Default values may take two forms:

fixed values - just a compile time specified value that will be used to initialize
dependent values - when another object of same underlying type is present it can be used to default initialize

Or maybe something more generic like value mapping?


add: Mermaid icon

Add Mermaid Logo #46

Icon ID
Icon Image

mermaid

closes #46
Mermaid: https://mermaid.js.org/

Sure, sorry.

please @LelouchFR, can you check again? Thanks.


Bad state: No element error

Describe the issue
In case of server response code more than 300(here) this line of code
https://github.com/zino-app/graphql-flutter/blob/beta/packages/graphql/lib/src/core/query_manager.dart#L202
throws 'Bad state: no element' error.
In my case I'm getting 401 Unauthorized error. But this error is being lost. On ui I'm getting only  'Bad state: no element' error

Was there a regression?
No

To Reproduce
Steps to reproduce the behavior:

Go to make a request to any endpoint with response statusCode higher then 300
Check the query exception information

Expected behavior
It is expected that the error meaning and description is not being lost.
device / execution context
any device
screenshots
https://tppr.me/26LA4
https://tppr.me/P6Ph9
If you want to troubleshoot or discuss in real time, consider coming to the support channel in the discord

You're saying "Bad  state: no element" is within result.exception? Please copy result.toString() and show a sample of your build code

I'll try to prepare a reproduction repo

This issue seems state. Closing.


Add conversions of HeaderName to HeaderValue

Generally speaking, all HeaderNames are definitely valid HeaderValues. It'd be nice to be able to convert into one without copying. Consider the follow code that should just work:
map.insert(UPGRADE, WEBSOCKET);

I'd expect From<HeaderName> for HeaderValue, an HttpTryFrom for HeaderValue, and possibly a HeaderValue::from_name(name: HeaderName).

I don't mind taking a stab at this one. But wouldn't converting from a standard that doesn't have inner bytes to a value that requires it mean some amount of copying/writing?

Yes and no. It will require creating a Bytes, but since it's from a static string, it shouldn't need a copy. And, since we know its safe and valid, we can skip the parse/validation in HeaderValue.

@seanmonstar https://github.com/hyperium/http/pull/184 😄

This was implemented in #184.


[BugFix] Fix concurrentModificationException in materializedViewMetricsRegistry

Why I'm doing:
A ConcurrentModificationException is thrown when collecting materialized view metrics due to concurrent modifications of the idToMVMetrics map in MaterializedViewMetricsRegistry. This exception disrupts metric collection and logs unnecessary warnings.
What I'm doing:
Replaced the non-thread-safe HashMap with ConcurrentHashMap for the idToMVMetrics map to ensure thread-safe operations. This change prevents ConcurrentModificationException when the map is accessed concurrently by multiple threads.
Fixes #51140
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)
[ ] I have added documentation for my new feature or new function
[ ] This is a backport pr

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.3
[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

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


[test] Update tests for parity with the new driver

Update tests such that they run with both the old and new driver in preparation for switching over to the new driver.

@swift-ci please test

@swift-ci please test

@swift-ci please test

SymbolGraphGen test update looks good.
How do you force running tests with the new driver? I'm interested to know so i can double-check during the transition period.

@QuietMisdreavus You can force the new driver by setting SWIFT_FORCE_TEST_NEW_DRIVER=1 in your environment

https://github.com/swiftlang/swift-syntax/pull/2858
@swift-ci please test

@swift-ci please test Linux


/usr/bin/env: 'bash\r': No such file or directory

Description:
When running the sail up command the laravel container exits with an error code of 127, with the only log being:
laravel.test_1  | /usr/bin/env: 'bash\r': No such file or directory
I think that it may be connected to a line ending issue but i am unable to track it down.
The full log:

sail up
Creating network "contract_manager_app_sail" with driver "bridge"
Creating contract_manager_app_mysql_1 ... done
Creating contract_manager_app_redis_1 ... done
Creating contract_manager_app_laravel.test_1 ... done
Attaching to contract_manager_app_redis_1, contract_manager_app_mysql_1, contract_manager_app_laravel.test_1
redis_1         | 1:C 25 Oct 2021 11:01:16.716 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1         | 1:C 25 Oct 2021 11:01:16.716 # Redis version=6.2.5, bits=64, commit=00000000, modified=0, pid=1, just started
redis_1         | 1:C 25 Oct 2021 11:01:16.716 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
laravel.test_1  | /usr/bin/env: 'bash\r': No such file or directory
redis_1         | 1:M 25 Oct 2021 11:01:16.716 * monotonic clock: POSIX clock_gettime
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * Running mode=standalone, port=6379.
redis_1         | 1:M 25 Oct 2021 11:01:16.717 # Server initialized
redis_1         | 1:M 25 Oct 2021 11:01:16.717 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * Loading RDB produced by version 6.2.5
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * RDB age 15 seconds
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * RDB memory usage when created 0.77 Mb
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * DB loaded from disk: 0.000 seconds
redis_1         | 1:M 25 Oct 2021 11:01:16.717 * Ready to accept connections
mysql_1         | 2021-10-25 11:01:16+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.26-1debian10 started.
mysql_1         | 2021-10-25 11:01:16+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
mysql_1         | 2021-10-25 11:01:16+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.26-1debian10 started.
mysql_1         | 2021-10-25T11:01:17.297505Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.26) starting as process 1
mysql_1         | 2021-10-25T11:01:17.305454Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
mysql_1         | 2021-10-25T11:01:17.586522Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
mysql_1         | 2021-10-25T11:01:17.757833Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1 is enabled for channel mysql_main
mysql_1         | 2021-10-25T11:01:17.758094Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1.1 is enabled for channel mysql_main
mysql_1         | 2021-10-25T11:01:17.759072Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
mysql_1         | 2021-10-25T11:01:17.759223Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
mysql_1         | 2021-10-25T11:01:17.762627Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
mysql_1         | 2021-10-25T11:01:17.782820Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.26'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
mysql_1         | 2021-10-25T11:01:17.782821Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
contract_manager_app_laravel.test_1 exited with code 127
^CGracefully stopping... (press Ctrl+C again to force)
Stopping contract_manager_app_mysql_1        ... done
Stopping contract_manager_app_redis_1        ... done

Steps To Reproduce:

I faced the same issue recently. After running artisan sail:publish and made some tweaks for getting xdebug running as expected, it were working fine so I committed my changes.  I switched to another branch and after that, I switched back and suddenly that error start to appear.
In my case was related with a Git misconfiguration for line endings formats. So this is what I did:
1.- I installed dos2unix command line program for passing those files that I changed to the right format.
#Mac OS
$ brew install dos2unix
$ find docker/ -type f -exec dos2unix {} ;
$ dos2unix docker-compose.yml
2.- Remove previous images and containers with docker desktop.
3.- Run sail up again
4.- Change my git config:
$ git config --global core.autocrlf input
Hope it can help anyone else.


Custom error messages for assertions

I'm guessing this has already been brought up, but I'm having trouble finding the issue.

Do you want to request a feature or report a bug?
Feature.
What is the current behavior?
expect(false).toBe(true, "it's true") doesn't print "it's true" in the console output.
If the current behavior is a bug, please provide the steps to reproduce and either a repl.it demo through https://repl.it/languages/jest or a minimal repository on GitHub that we can yarn install and yarn test.
What is the expected behavior?
The message should be included in the response somehow.
Please provide your exact Jest configuration and mention your Jest, node, yarn/npm version and operating system.
Just made a new project
yarn add --dev jest
echo 'it("works", () => { expect(true).toBe(false, "FOO"); });' > a.test.js
./node_modules/.bin/jest

There are many questions here, one of them in this issue #1965.

Why was this closed? The linked discussion doesn't mensions custom error messages! Is this supported in jest?

@cpojer is there a way to produce custom error messages?
I'm using lighthouse and puppeteer to perform an automated accessibility audit. I don't know beforehand how many audits are going to be performed and lighthouse is asynchronous so I can't just wrap each audit result in the response in a test block to get a useful error message.
I'm left with
        await page.goto(url);

        const result = await lighthouse(url, { port: port }, lighthouseConfig);

        const auditResults = Object.values(result.audits);

        for (let result of auditResults)
        {
          expect(result.score).toEqual(true);

        }

Which then returns
    Expected value to equal:
      true
    Received:
      false

So if I have a single audit failure I just get expected whatever to be true, it was false but with no information as to which audit failed.

@phawxby In your case I think a custom matcher makes the most sense: http://facebook.github.io/jest/docs/en/expect.html#expectextendmatchers
Then you can use jest-matcher-utils to create as nice of a message that you want 🙂
If you do create the custom matcher(s), it would be awesome to link to them in http://facebook.github.io/jest/docs/en/puppeteer.html

@SimenB that worked really well. The whole puppeteer environment element was overkill for my needs as not all the tests require it but here's what I used.
const puppeteer = require('puppeteer');
const lighthouse = require('lighthouse');
const url = require('url');
const { getSlugs } = require('./bulk.js');
const config = require('./lighthouse-config.js')

expect.extend({
  toPassLighthouse(received) {

    const auditResults = Object.values(received.audits)
    .filter((x) => !x.manual); // Strip manual audits. We don't care about those inside automated testing ;)

    for (let result of auditResults)
    {
      let output = true;

      if (!result.score) {
        output = `${result.name} - ${result.description}`;

        if (result.displayValue) {
          output += ` - ${result.displayValue}`;
        }

        return {
          message: () => output,
          pass: false
        };
      }
    }

    return {
      message: () => `expected to fail lighthouse`,
      pass: true
    }
  },
});

let browser;
let page;
let port = null;

beforeAll(async () => {
  browser = await puppeteer.launch();
  page = await browser.newPage();

  const endpoint = new URL(browser.wsEndpoint());
  port = endpoint.port;
});

afterAll(async () => {
  await page.close();
  await browser.close();
});

describe(`Accessibility`, () => {
  const slugs = getSlugs();

  for(let slug of slugs)
  {
    let url = `http://localhost:3000/patterns/${slug}/${slug}.rendered.html`;

    test(slug, async () => {
      await page.goto(url);

      const result = await lighthouse(url, { port: port }, config);

      expect(result).toPassLighthouse();
    });
  }
});

@cpojer @SimenB I get that it's not possible to add a message as a last param for every assertion. But what about very simple ones, like toBe and toEqual? I think that would cover 99% of the people who want this. toHaveProperty will already give very readable error messages. When I use toBe and toEqual it's usually because I have some custom condition that jest can't easily help me assert on out-of-the-box. It's especially bad when it's something like expected "true", got "false".
Can we reduce the scope of this request to only toBe and toEqual, and from there consider (or not consider) other assertion types?

toBe and toEqual would be good enough for me. Personally I really miss the ability to specify a custom message from other packages like chai.  expected 0 to equal 1 usually means I have to dig into the test code to see what the problem was. I would appreciate this feature

Posting this here incase anyone stumbles across this issue :smile:
jest-expect-message allows custom error messages for assertions.
test('returns 2 when adding 1 and 1', () => {
  expect(1 + 1, 'Woah this should be 2!').toBe(3);
});

/*
  ● returns 2 when adding 1 and 1

    Custom message:
      Woah this should be 2!

    expect(received).toBe(expected) // Object.is equality

    Expected: 3
    Received: 2
*/

You can also throw an error following way, without using expect():
it('foo should be true', (done) => {
  if (foo === true) {
    done(); // All good.
  }
  else {
    done(new Error('Sorry, it is false'));
  }
});

It comes handy if you have to deal with a real async code, like bellow:
it('promise should resolve, (done) => {
  fooPromise()
    .then(() => done())
    .catch(done);
});

When you have promises, it's highly recommended to return them.
it('promise should resolve, () => {
  return fooPromise();
});

// or

it('promise should resolve, async () => {
  await fooPromise();
});

That will behave the same as your example

Posting this here incase anyone stumbles across this issue 😄
jest-expect-message allows custom error messages for assertions.
test('returns 2 when adding 1 and 1', () => {
  expect(1 + 1, 'Woah this should be 2!').toBe(3);
});

/*
  ● returns 2 when adding 1 and 1

    Custom message:
      Woah this should be 2!

    expect(received).toBe(expected) // Object.is equality

    Expected: 3
    Received: 2
*/

fwiw: it works well if you don't use flow for type checking

All of the above solutions seem reasonably complex for the issue. besides rolling the message into an array to match with toEqual, which creates (in my opinion) ugly output.
In that spirit, though, I've gone with the simple:
const duplicateErrors = max(values(countBy(values(errors)))) > 1
// Add some useful information if we're failing
if (duplicateErrors) {
  console.log('actual errors\n', errors)  // eslint-disable-line no-console
}
expect(duplicateErrors).toBe(false)

Jest's formatting of console.log()s looks reasonably nice, so I can easily give extra context to the programmer when they've caused a test to fail in a readable manner.  Logging plain objects also creates copy-pasteable output should they have node open and ready.

Use assert instead of expect is the current workaround if you really need it

@SimenB perhaps is obvious, but not for me: where does this suggested assert come from? I search for it in jestjs.io and it does not seem to be a jest api.

Looks like a node thing.
> assert(1 === 2)
Thrown:
{ [AssertionError [ERR_ASSERTION]: false == true]
  generatedMessage: true,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
>

Thanks @mattphillips, your jest-expect-message package works for me! Especially when you have expectations in loops, this functionality is really important.


Add ability to Include both json and yaml tags to the generated structs

How do we provide a custom template to have json and yaml tags to the generated structs?
I am aware that I can use x-oapi-codegen-extra-tags to add custom tags but it is tedious to add for each schema type.
It is common to encode/decode b/w json and yaml so it would be nice to have ability to add this common tags w/o needing to specify it explicitly.
Originally posted by @MUzairS15 in https://github.com/oapi-codegen/oapi-codegen/discussions/1686

@jamietanna would you accept a PR for this feature?

We would, yes! Not sure when we'd get to it (there's a backlog for the next release) but sounds like it'd be reasonable as an opt-in option (via output-options)

Ah, I have been looking for this. I just spent too long trying to determine why my yaml unmarshal was not generating the expected data, yet no errors. The go structs are generated by oapi-codegen, so they look like:
type Something struct {
  FooBar *string `json:"fooBar,omitempty"
}

My eyes saw it as yaml: so I could not figure out why until I stepped through the unmarshal code (not recommended 😆 ), and found it was looking for "foobar" (lowercase), and I realized.
I will take a look at it as well.

Simple test when just json is defined vs json and yaml: https://go.dev/play/p/mBu34KwpW9O

First attempt https://github.com/oapi-codegen/oapi-codegen/pull/1798 ; review would be appreciated @jamietanna , tell us what is missing.


ASTMangler: skip mangling Copyable dependents

Typically, a conformance that is dependent on a conformance to a marker protocol never reaches this point in the compiler, where we're mangling the metadata for an opaque return type.
But with the invertible protocols like Copyable, we do permit them, so we should avoid mangling Copyable as that's generally ABI incompatible with existing code.
resolves rdar://135310019

@swift-ci smoke test

@swift-ci smoke test


Write a Tauri E2E test for navigating between files in a project

To prove we can always do that, so that regressions like this one can't happen.

this was done as part of electron port @Irev-Dev covered it


pass port configuration paramater to driver

Obviously no one else uses a different port :-)

I didn't write any tests. I didn't look for them. Should I take the time for that?

Heh, yeah, obviously everyone is running default port. No need for tests on this one! Thank you :)


Translation doesn't use sampling temperature param

I noticed that when I'm generating translations using sampling instead of beam search, that the temperature param doesn't seem to do anything. Looking at generate.py SequenceGenerator is called as follows:
translator = SequenceGenerator(
            models, task.target_dictionary, beam_size=args.beam,
            stop_early=(not args.no_early_stop), normalize_scores=(not args.unnormalized),
            len_penalty=args.lenpen, unk_penalty=args.unkpen,
            sampling=args.sampling, sampling_topk=args.sampling_topk, minlen=args.min_len,
        )

Sampling temperature thus seems not passed in and will always defaults to 1.0, which is fixed if I add sampling_temperature=args.sampling_temperature to the function call.
Is this the correct way to sample with translations?

Yep, if you add the kwarg it will work as expected. We fixed this internally already, I'll merge the fix here shortly.

Cool thanks for the fix!


Will a boundary live forever if I don't remove it?

Hi Eddie, first of all thanks for your work on this library. It is much appreciated!
I wanted to first ask how much resources this library uses to set up a geofence boundary? My application needs to set geofences for each location of a user's 'workorders'. Currently it is set up to fetch the workorders and create the geofences every time the user logs in. This I know will cause redundancy. So I wanted to get an idea as to:

How taxing it is on the phone and the application to set geofences?

What happens if I keep recreating the same boundary over and over again, without removing a previous instance? Will it overwrite the previous one? Or will there end up being multiple geofences around the same location meaning the on ENTER and on EXIT functions will be called multiple times when a user crosses the boundary?

Also, what happens if I do not remove a boundary? Does it live forever?

Thanks again. I know these are not actually bugs but there was no other way for me to ask you these questions.

The library is wrapping the respective native geofencing library. The geofences are triggered when a user enters the radius of a lat lng, so it is not demanding on battery or data.
If you make multiple calls to the add function, a new ID will be returned and a new boundary will be created. I'd assume that the underlying OS would create completely new geofences but I haven't tested this case exactly.
It depends on the OS. I know for Android if you don't remove a boundary it will live on the device until it is rebooted, the app is uninstalled, or the data is cleared.

Also, it sounds like this may be relevant to your use case; Android allows 100 geofences maximum, and iOS allows for 20 geofences maximum. You may want to implement some logic to handle more than the limit.
Thanks!

@eddieowens Thank you so much for the response. I really appreciate it!


Limitation of the number of characters in a text

I added a text the size of a page. there is no problem when i use textmesh pro, but with rtltextmesh pro i get this error:
IndexOutOfRangeException: Index was outside the bounds of the array.
it refers to this method in FastStringBuilder class:
public void Append(char ch)
{
            if (capacity < Length)
                EnsureCapacity(Length, true);

            array[Length] = ch;
            Length++;
}

it seems like you have declared an array that can store for example 8 elements not 9. why the code isn't in a try/catch block? how to solve this problem?

This was due to a bug. Latest master has the fix. You could cherry-pick this commit too if you don't want to pull master.
https://github.com/mnarimani/RTLTMPro/commit/8110907dcc72ab5f4194646b94261aa4cdc79b23


Couldn't read block from Mifare Classic

Hi,
We are trying to use your library in our project with NXP Explore NFC card PN512. We have been able to read blocks from Mifare UltraLight but when it comes to Mifare Classic we can only read UID. We have got "ReadError: read failed: 782". Maybe It's the block size ? or Explore NFC proprietary driver?
Thank you,

Sorry, Mifare Classic is not supported yet.  See #5 .


Add test coverage for --exclude argument

Fixes #127
Once this pull request is merged, I will open an additional pull request with a refactor of the code in cli_test.rs; as there is now excessive code repeition in the tests.

✔ Checklist:

[x] This PR has been added to CHANGELOG.md (at the top of the list);

Codecov Report

Merging #135 into master will increase coverage by 0.58%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #135      +/-   ##
==========================================
+ Coverage   87.99%   88.58%   +0.58%
==========================================
  Files          11       11
  Lines        1008     1060      +52
==========================================
+ Hits          887      939      +52
  Misses        121      121

Impacted Files
Coverage Δ

tests/cli_test.rs
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

@sonro 👋Thank you for your contribution! 🚀
What do you think about moving tests for --exclude arguments to another file?

@mgrachev I have refactored the tests to smaller files and added helper functions too. Was going to put that in another pull request as it is a bigger change. Can push it all here if you would like?

@sonro Thank you! Another PR would be better.


Legacy JSON issues | Brought over for better chance at resolution

Linking 2 Bug Reports from the original source of JSON formatting.
The original repo has not had an update since Jan 10, 2018 and the maintainer is not responding.
I was not sure where else to post this but I figured that it would have a better chance at being addressed here.
escaped double quotes breaks color formatting
Link to Original: https://github.com/elzr/vim-json/issues/101#issue-650931123

It appears that it's valid json syntax to allow double quotes as a value by escaping them like so \". But doing that breaks the coloring that this plugin provides...
here "inch" is spelled out at top of screenshot...

and here I try to use the doublequotes symbol " to indicate inches...

Is this a bug or a feature request?

'{' in a string will mess up indentation
Link to Original: https://github.com/elzr/vim-json/issues/90#issue-311152628

indent/json.vim seems to interpret '{' within a string equally as outside of it, thus it "thinks" that a '{' within a string starts a new json-object,
Actual AutoIndentation:
{
    "foo": "{",
        "bar": "qux"
    }

Expected AutoIndentation:
{
    "foo": "{",
    "bar": "qux"
}

Note:
If there is a better way to bring over the issues, please let me know and I will update this issue.

This also happens for ( and [ in a string.


Minor tests improvements

This PR restores one test and makes minor improvements to the rest.

Interaction between tests causes a failure, perhaps we should consider some mechanism for test to request their own contract deployments so modifications to the state between tests doesn't cause failures like this one.

Ah this problem is actually based on my assumption, that the order of test execution is the same as the order of the test cases in the class. Yeah, we can either provide a mechanism to perform some of the tests in isolation, or we can manually enforce order of the tests.


XMM SAS

Added some instructions and links for XMM SAS.
Sorry, I didn't re-synchronise my local fork so there may be some trivial conflicts to resolve. (Now resolved).

I'm actually just trying to set this up on typhon using singularity at the moment! I will maybe add those commits to this PR before merging if I'm successful. But thanks for adding this!

I got it working, but I think I will add a general document about using docker containers with singularity in the guides, else we would have to repeat the same setup in each installation tutorial. Perhaps we can add a link in the README to the guides later so that the connection is apparent.
Will merge this now.


irmin-pack: add control file to layout classifier

Is this needed for a future change or are you adding for the sake of completeness?

omg I also forgot that one...

Is this needed for a future change or are you adding for the sake of completeness?

Yes it's just for completeness :P

Thanks!


TABL ROWORCOLST serialize: Delete value C #1722

https://github.com/larshp/abapGit/issues/1722

Any testing performed for this change?

On NW 7.52 and NW 7.31 no diffs displayed for TABL in repo https://github.com/Microsoft/ABAP-SDK-for-Azure.
With repo https://github.com/abapGit-tests/TABL_with_index no diffs for TABL on NW 7.52. Unfortunately diffs are display on NW 7.31.

repo https://github.com/abapGit-tests/TABL_with_index should be updated after merging this change


Remove/update some hard-coded values in the console app

https://github.com/Netflix/osstracker/blob/master/osstracker-console/public/js/perrepo.js#L98
Netflix is hardcoded here
https://github.com/Netflix/osstracker/blob/master/osstracker-console/public/js/perrepo.js#L102
Kibana port based off deployment instructions is 5601 (although these Kibana links don't work anyway based off information in #1, right?)

Good catches. I recently updated master to have our Netflix version wrap the OSS version so we are using the same codebase completely for the scraper.  I need to do the same for the console and will address this as we go through that part.


Can't kill app anymore (Android)

After following the docs, I'm able to get an audio to play, and the notification appears correctly and all, but upon killing the app and running it once again, the entire app state is still there; almost like if I had only sent the app to the background, although React's life cycle hooks are definitely running again.

Can I ask what phone / api level / android version you are on? We're getting some weirdness but only on a Galaxy S9+ on api 26 / android 8.0.0. Specifically I am getting MediaPlayer.MEDIA_ERROR_SERVER_DIED

Gotcha. Is this the example app that you are running?

No, it's my own, although I'm not doing anything fancy. Just testing it out first. I managed to narrow it down for you a bit. It apparently only happens to me when streaming audio over the network. If the url property is a file system path, everything seems to work correctly.

Actually the audio even starts playing once again as soon as I run the app again.

Does it still happens on 1.0.0?

@Guichaguri
yes, in my case if i inject the store into the registerEventHandler, as long as the MusicService is alive when onDestroy is called, the redux store persists between sessions.
however I'm not sure if this is a flaw with this library or our redux implementation, the work around is to reset the store.
@clundberg1
something like this worked for us:
componentWillUnmount() {
    TrackPlayer.reset().then(() => store.dispatch(resetStore()));
  }

You don't need to use registerEventHandler anymore, there is a new event registration method which allows you to separate your store from the playback service. Read more about it here.

@Guichaguri: I actually have the same issue on Android through multiple versions on different Android Simulators and on a real device with test and production builds equally. I had it with version 1.1.4 and it still exists after upgrading to 1.1.6.
I tired to use stopWithApp: true - but it doesn't change anything. I'm really confused about the issue. It works fine on iOS, so I guess it is not about my implementation but an Android issue.


Not working in Android

Hi I test  the plugin from the fork that got package.json
the AudioToggle is detected but it didn't work
I tried all the options and nothing change audio route.
How to make it works? Thank you

https://github.com/alongubkin/audiotoggle/pull/22/files


pull request for e2e test at 11/29/2016 17:56:05

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


[EventEngine] Enable the EventEngine DNS Resolver on Posix

This is currently breaking Python with some hidden segfault. We may need Python team's help to get the details reported. CC @XuanWang-Amos @gnossen .
@yijiem I'll leave this to you to land in another PR.