How does Pyradiomics deal with several structures segmented in a nrrd file? [FEAT EXTRACTION]

I am trying pyradiomics on a CT scan with DICOM data and a DICOM RTSS structure file. The RTSS file has several structures in it. I have successfully used plastimatch via command line to convert the dicom image files to a single 3d nrrd file and then converted the RTSS dicom file to another nrrd file.
When I perform a feature extraction with pydicom, I get some results, but it is a single set of numbers. I was expecting that I would get values for each structure in the nrrd structure set image. Does pydicom work for only one structure per mask?
Version (please complete the following information):

OS: [WIndows 10]
Python version: [e.g. 3.6]
PyRadiomics version [e.g. 2.2.0]

For each case, PyRadiomics only computes the features for 1 ROI in your mask file (identified by the value of label).
See also this example of plastimatch. Multiple ROIs are assigned to the ith bit in the output volume, allowing for overlapping structures. Additionally, plastimatch can output a file showing your segments.
Be aware that PyRadiomics will not function correctly if you have overlapping segments! PyRadiomics only looks at the value as a whole, not a specific index. Overlapping structures in a mask are allowed by supplying a 4D volume as a mask. If there is no overlap it should work fine (i.e. possible labels are 1, 2, 4, 8, etc.)
If you know which labels are present in your mask, you can define them when using PyRadiomics in batch mode (column "Label").

Thanks a lot @JoostJM
I understand the issue a lot better now.
What is still a bit confusing for me is finding out which labels represent which structure.
I had used a RTSS dicom file with 32 structures in it. The file contents are pasted below:
0|0 255 0|BODY
1|0 0 160|Vein_IVC
2|0 255 64|Vein_PV
3|255 0 0|HepVeinRight
4|255 0 0|HepVeinMid
5|255 0 0|HepVeinLeft
6|255 0 0|PortVeinLeft
7|255 0 0|PortVeinRight
8|10 10 250|LivSegI
9|128 255 255|LivSegVII
10|255 128 128|LivSegVIII
11|128 64 64|LivSegVI
12|0 150 0|LivSegV
13|0 150 0|LivSegII
14|0 0 160|LivSegIII
15|255 255 128|LivSegIVa
16|255 0 255|LivSegIVb
17|0 0 255|Vein_SMV
18|0 0 255|Vein_Splenic
19|255 255 0|Colon
20|255 0 255|BowelSmall
21|0 0 255|Stomach
22|187 255 187|Duodenum
23|128 64 64|Pancreas
24|0 255 255|GallBladder
25|0 127 255|Spleen
26|255 128 128|KidneyR
27|50 204 153|KidneyL
28|255 255 0|UreterR
29|255 255 0|UreterL
30|255 210 0|AdrenalR
31|255 210 0|AdrenalL
32|255 0 0|Art_Aorta
33|255 128 0|Art_Celiac
34|255 128 0|Art_SMA
35|255 128 0|Art_IMA
36|255 128 0|Art_Renal
37|0 0 255|Vein_Renal
However, the labels don't match the numbers here.
I am not sure how to figure out how to match the labels with the structures.

Can you share the converted mask file? Then I think I can figure out what's what.

This is the link to the .nrrd file.
https://www.dropbox.com/s/mdavn9gxk4fpt5d/abdomen_rtss1.nrrd?dl=0
Will be great if this can be figured out.

The output file is indeed more or less like specified in the documentation of plastimatch. However, the datatype is uint8 (meaning 8 bits = 8 possible labels). To allow for more segments (38 in your case), the volume is transformed into a 4D volume, so 8 labels per channel.
To get something that Slicer and PyRadiomics understands, we need to do some restructuring:
import numpy as np
import SimpleITK as sitk

ma = sitk.ReadImage(r'abdomen_rtss1.nrrd')
ma_arr = sitk.GetArrayFromImage(ma)

labels = []
for channel in range(ma_arr.shape[3]):
    for bit in range(8):
        label_map = np.zeros(ma_arr.shape[:3], dtype='uint8')
        roi = np.bitwise_and(ma_arr[..., channel], 2 ** bit) > 0
        if np.sum(roi) > 0:
            label_map[roi] = 1
            labels.append(label_map)

mask_arr = np.array(labels).transpose(1, 2, 3, 0)
mask_arr.shape

mask = sitk.GetImageFromArray(mask_arr)
mask.CopyInformation(ma)

sitk.WriteImage(mask, r'segmentation.seg.nrrd', True)  # Specify True to enable compression

This piece of code iterates over all possible labels and if it finds voxels that match, stores them in a labelmap (be aware that this assumes a 3D volume, with uint8 datatype).
Then at the end, it makes 1 4D matrix and builds an image. As a final step, the geometric information of the mask is copied and the segmentation is stored as a segmentation. This you can load into slicer to see if it is correct.
The first value in the output file (0-37) should match the index in the segmentation. If you want to extract features for, say, "Art_IMA", run PyRadiomics with setting label_channel=35 (note that setting label=1 should not be changed).
Finally, you can also use the SlicerRT extension to load the RTSTRUCT directly into a slicer node and use it to make the segmentation files (which will then also automatically incorporate the name).

Thanks a ton! @JoostJM
Works beautifully. Checked on Slicer and python output.
You have saved me hours of work, making new exports from the planning system. Really appreciate this.

Happy to help

@JE-Jimenez, the advised entrypoint for batchprocessing in PyRadiomics is via the command line (better error handling, multiprocessing support, etc). In that case you can specify a combination of image, mask and label in the csv file using the columns "Image", "Mask" and "Label"/"Label_channel", respectively ("Label" indicates a label value in a labelmap, "Label_channel" the 0-based index of the segment, see 3D Slicer on labelmaps and segmentations for the differences).

In batch processing.py, you can achieve something similar, though currently it is only provided for label. See L81-84
for details on parsing out the label value.


Using glossary terms

Hello, I'm trying to preserve glossary terms in their original form. I have tried with memory:
./mmt memory create test
1: test
./mmt memory add 1 "Shield" "Shield"
Contribution added to memory 1
It works if the term matches the whole source:
./mmt translate "Shield"
Stínění
./mmt translate "Shield" --context-vector 1:1.0
Shield
But it doesn't work if the term is used in sentence:
./mmt translate "The best Shield is from Nvidia."
Nejlepší stínění je od Nvidia.
./mmt translate "The best Shield is from Nvidia." --context-vector 1:1.0
Nejlepší stínění je od Nvidia.
Is it possible to somehow force the engine not to translate the word "Shield"? It should be:
Nejlepší Shield je od Nvidia.

What you can do is to tag the word in the input sentence, and hope the tag to be at the right place in the output to replace the translation words.
./mmt translate "The best <term1>Shield</term1> is from Nvidia."
Nejlepší <term1>stínění</term1> je od Nvidia.

Depending on the context, it may bring you with strange formulations, but this is the only way to do an exact term translation.
The other way is to massively add sentence pairs to the training data containing your terminology...

I think the way with tags could work. Thank you very much.


Update EE-test support to use chainspec values

CHANGELOG:

Added a public fn new_from_chainspec to the WasmTestBuilder that instatiates a builder using a given chainspec.
Added PRODUCTION_GENESIS_REQUEST which uses values present in the production chainspec.toml
Deprecated DEFAULT_GENESIS_REQUEST in favor of PRODUCTION_GENESIS_REQUEST

Closes #2313

@goral09 About the concerns about the breaking change, I believe we are okay with that as we would just have these changes be presented as the next major release. @Fraser999 am I speaking incorrectly here

bors r+


RCTView cause memory leak

Description
RCTView can not be released by quite ReactNativePage
React Native Version
0.71.4
Output of npx react-native info
System:
OS: macOS 13.0.1
CPU: (8) arm64 Apple M1
Memory: 58.88 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 18.11.0 - /opt/homebrew/bin/node
Yarn: 1.22.19 - /opt/homebrew/bin/yarn
npm: 8.19.2 - /opt/homebrew/bin/npm
Watchman: Not Found
Managers:
CocoaPods: 1.12.1 - /Users/orrhsiao/.rvm/gems/ruby-2.7.6/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1
Android SDK: Not Found
IDEs:
Android Studio: 2022.1 AI-221.6008.13.2211.9477386
Xcode: 14.2/14C18 - /usr/bin/xcodebuild
Languages:
Java: Not Found
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: 0.71.4 => 0.71.4
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
https://github.com/OrrHsiao/ReactNativeDemo
You can use this example to reproduce the problem
Repeat step
Open demo and run iOS programs.
Click the "push" button to jump to the RN page.
Click "jump hello word" to go to the Page1 component page.
Click on the navigation bar return arrow "<" Close the RN page. Observe that XATestView does not execute the dealloc function.
Snack, code example, screenshot, or link to a repository
https://github.com/OrrHsiao/ReactNativeDemo

Observe that XATestView does not execute the dealloc function.

What do you mean with "Observe" here? Can you be more specific?

Observe that XATestView does not execute the dealloc function.

What do you mean with "Observe" here? Can you be more specific?

I mean that XATestView‘s instance can't be released == XATestView instance function “-(void) dealloc” can‘t be called when i close the RN page

we have found the reason：https://github.com/software-mansion/react-native-screens/issues/1754


Add explicit delimiters in web routes

This was necessary to get the ARK resolver working since the delimiter is a slash for https://cthoyt.com/2023/04/11/n2t-ark-resolver.html

Codecov Report

Merging #54 (1a25513) into main (25fde56) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main       #54   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            8         8
  Lines          479       478    -1
  Branches       103        84   -19
=========================================
- Hits           479       478    -1

Impacted Files
Coverage Δ

src/curies/web.py
100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


fix the bug of implicit declaration of function 'objc_setassociatedob…

fix the bug of implicit declaration of function 'objc_setassociatedobject' is invalid in c99

Hi, we wanted to update you that we are currently postponing the processing of pull requests.
Please refer to React native controllers evolution, we'll appreciate your feedback.

Will pull requests that fix big issues such as this one not be pulled for the people who have large codebases depending on this package?

All bug fixes and relevant PR will be addressed in react-native-navigation

@PaulBGD I'm going to support all fixes and issues in my fork aksonov/react-native-controllers (i've already pushed several unapplied PRs, including this one), react-native-ios-controllers npm package.

Thanks @aksonov, I'll check it out.

@PaulBGD we will integrate major / infra PR's and issues as this one before the migration (so we will have a stable enough ground to work on)

Fixed in version 2.1.0


Update data-box-faq.yml

Added Switzerland to the list of available DB regions

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

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


Bug: request_focus() on editor does not focus the editor

Right now requesting focus on Text Editor does not focus the view correctly, but focus one of the outer wrapper instead, what make editor not reacting on the keyboard strokes.

Hey, tried to do it on floem editor example:

...but as soon as you press any keyboard key, the app panics:

But it works fine as long as you don't clear the Document before requesting focus. If you clear it, then it panics after first keystroke. Any idea what it may cause it?

Another way to try to focus editor that fails: #392


Angular CLI proxy is very slow

Is this a question?
Hi,
I'm using the HPM from the angular cli bundle. I notice that every single request I make pass from the proxy has a latency time increased of 3/4 tenth of second. No logic inside the proxy, just this:

http-proxy-middleware:
Angular CLI: 8.3.0
Node: 12.8.1
OS: win32 x64
(I'm sorry but I cannot extract HPM version)
http-proxy-middleware configuration

'/api/postman' : {
    target: 'https://postman-echo.com/get?foo1=bar1&foo2=bar2',
    pathRewrite: {
      '/api/postman': ''
    },
  },

Does this happen if you try your proxy configuration in a minimal setup?
You can modify the example:
https://github.com/chimurai/http-proxy-middleware/blob/master/examples/express/index.js
After git clone:

yarn
yarn build
node examples/express/index.js    << start example

feel free to re-open when issue can be reproduced in minimal setup

Might be related to this: https://github.com/webpack/webpack-dev-server/issues/1850


waifu2x conversion is not efficient when converts over x2 scale

[Test reault of master]

6685 means 6685*6685, limit is written in pexel.
max size means, as w2x scales x2 and down sample it, it is real memory that needed.
time spent is in sec, total.
result was same in 24bit png and 32bit png.

6685 x2.0 ok (input: 44,689,225, output: 178,756,920)
1-1. 6685 x3.0 crash (input: 44,689,225, output: 402,223,025, max: 715,027,600)

6686 x2.0 crash (input: 44,702,596, output: 178,810,384)

4460 x 3.0 bad result (input: 19,891,600, output: 179,024,400, max: 318,265,600)

4450 x 3.0 bad result (input: 19,802,500, output: 178,222,500, max: 316,840,000)

3350 x 3.0 bad result (input: 11,222,500, output: 101,002,500, max: 179,560,000)

3344 x 3.0 crash (input: 11,182,336, output: 100,641,024. max: 178,917,424)

3343 x 3.0 crash (input: 11,175,649, output: 100,580,841. max: 178,810,384)

3342 x 3.0 ok (input: 11,168,964, output: 100,520,676. max: 178,703,424)

3342 x 4.0 ok (input: 11,168,964, output: 178,703,424. max: 178,703,424)

3342 x 4.1 crash (input: 11,168,964, output: 187,750,284. max: 714,813,696)

1672 x 4.1 crash (input: 2,795,584, output: 46.993.767, max: 178,917,376)

1671 x 4.1 ok (input: 2,795,584, output: 46,937,571, max: 178,703,424)

1671 x 8.0 ok (input: 2,795,584, output: 178,703,424, max: 178,703,424)

836 x 9.0 crash (input: 698,896, output: 56,610,576, max: 178,917,376)

835 x 9.0 ok (input: 697,225, output: 56,475,225, max: 178,489,600)

[ if convert 836 x8.0 first and x1.125 (= x16.0 => x0.5625 ) ]
step 1. 836 x 8.0 ok (input:698,896, output: 44,729,344, max: 44,729,344)
step 2. 6688 x 1.125 crash (input: 44,729,344, output: 56,610,576, max: 178,917,376)
(time spent: 28.717 + crash)
[ if convert 836 x5.0 first and x1.8 (= x8.0 => x0.625  => x2.0 => x0.9 ) ]
step 1. 836 x 5.0 ok (input: 698,896, output: 17,472,400, max: 44,729,344)
step 2. 4180 x 1.8 ok (input: 17,472,400, output: 56,610,576, max: 69,889,600)
output: 7524 x 7524 (time spent: 26.075 + 41.171)
[ if convert 836 x4.5 first and x2.0 (= x8.0 => x0.5625  => x2.0 ) ]
step 1. 836 x 4.5 ok (input: 698,896, output: 14,152,644, max: 44,729,344)
step 2. 3762 x 2.0 ok (input: 14,152,644, output: 56,610,576, max: 56,610,576)
output: 7524 x 7524 (time spent: 25.672 + 34.556)
[ if convert 836 x2.25 first and x4.0 (= x4.0 => x0.5625  => x4.0 ) ]
step 1. 836 x 2.25 ok (input: 698,896, output: 3,538,161, max: 11,182,336)
step 2. 1881 x 4.0ok (input: 3,538,161, output: 56,610,576, max: 56,610,576)
output: 7524 x 7524 (time spent: 6.445 + 35.709)
[ if convert 836 x1.125 first and x8.0 (= x2.0 => x0.5625  => x8.0 ) ]
step 1. 836 x 1.125 ok (input: 698,896, output: 884,540, max: 2,795,584)
step 2. 940 x 8 ok (input: 883,600, output: 56,550,400, max: 56,550,400)
*output: 7520 x 7520 (time spent: 1.630 + 36.093)
you can see w2x wastes memory and time when it converting over x8, it will increase even more when x16 or x32
Originally posted by @YukihoAA in https://github.com/DeadSix27/waifu2x-converter-cpp/issues/122#issuecomment-491142964

If we fix this, output file size cannot be accurate.
so, we won't fix this problem and we will fix #122 only


ETH.LINK on the "assets" page has an "earn" (savers vault) button but there is no vault for this asset

Prerequisites
Have ETH.LINK
Expected Behavior
There should not be an "earn" button for assets which do not have a savers vault.
Current Behavior
ETH.LINK (and possibly others) have an "earn" link.
Steps to Reproduce

Have ETH.LINK.
View the "assets" page.

Possible Solution

Your Environment - Release Version (skip if not using a release version)

ASGARDEX desktop version: 1.21.8

Operating system and version: Debian testing

Confirmed in 1.21.9 develop

interesting

Fixed in PR #288


remove this ugly fix when we're sure of cell AC

https://github.com/kframework/k/commit/2230bb3947c34b34b09e44eaa2ea2dfbd46b31cf

postponed for when we're sure of cell AC.


Fix Local DataTableTheme not being inherited by DataTable Widget

fixes https://github.com/flutter/flutter/issues/101099
similar to https://github.com/flutter/flutter/pull/97715
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 ///).
[ ] 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.

FYI There is the same issue for Input decoration, when you setup the input decoration as InputDecoration.collapsed the Input theme will override the collapsed decoration, if the theme contains for example a border ( collapsed should not have a border).

@cedvdb
I tried looking into the issue you describe but I am not sure if I am reproducing correctly based on your description, if you could a file PR whenever you have time and tag me, it would be appreciated, thanks


Retry on failures for all ArtifactStoreAttachmentBehaviors to stabilize mainBluewhisk

In our tests we encounter every now and then failing tests that fail because of timeouts, Cloudant's eventual consistency or other reasons.
Description
This code change tries to recover from these intermittent failures by retrying the failed test. Objective is to stabilize the mainBluewhisk builds.
17:11:37  org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should put and read large attachment STANDARD_OUT
17:11:37      [2020-07-02T15:11:31.753Z] [INFO] [#tid_47] [WhiskAction] write initiated on new cache entry
17:11:37      [2020-07-02T15:11:31.755Z] [INFO] [#tid_47] [CouchDbRestStore] [PUT] 'fn-dev-build_whisks' saving document: 'id: artifactTCK_Fft8_ns_CqjPQ/attachment_large, rev: null' [marker:database_saveDocument_start:540]
17:11:37      [2020-07-02T15:11:31.857Z] [INFO] [#tid_47] [CouchDbRestStore] [marker:database_saveDocument_finish:642:102]
17:11:37      [2020-07-02T15:11:31.857Z] [INFO] [#tid_47] [CouchDbRestStore] [ATT_PUT] 'fn-dev-build_whisks' uploading attachment '3af24794-bd82-447b-b247-94bd82e47bc7' of document 'id: artifactTCK_Fft8_ns_CqjPQ/attachment_large, rev: 1-cee6e1263ae7c0110e0be7db229f379f' [marker:database_saveDocumentAttachment_start:642]
17:11:37      [2020-07-02T15:11:37.309Z] [WARN] [#tid_47] [CouchDbRestStore] [ATT_PUT] 'fn-dev-build_whisks' failed to upload attachment '3af24794-bd82-447b-b247-94bd82e47bc7' of document 'id: artifactTCK_Fft8_ns_CqjPQ/attachment_large, rev: 1-cee6e1263ae7c0110e0be7db229f379f'; http status '500 Internal Server Error (details: {"error":"unknown_error","reason":"function_clause","ref":1941633815} )' [marker:database_saveDocumentAttachment_error:6094:5452]
17:11:37      [2020-07-02T15:11:37.310Z] [INFO] [#tid_47] [WhiskAction] invalidating CacheKey(artifactTCK_Fft8_ns_CqjPQ/attachment_large)
17:11:37
17:11:37  org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should put and read large attachment FAILED
17:11:37      org.scalatest.exceptions.TestFailedException: The future returned an exception of type: org.apache.openwhisk.core.database.PutException, with message: Unexpected http response code: 500 Internal Server Error (details: {"error":"unknown_error","reason":"function_clause","ref":1941633815}
17:11:37      ).
17:11:37          at org.scalatest.concurrent.Futures$FutureConcept.tryTryAgain$1(Futures.scala:531)
17:11:37          at org.scalatest.concurrent.Futures$FutureConcept.futureValueImpl(Futures.scala:550)
17:11:37          at org.scalatest.concurrent.Futures$FutureConcept.futureValueImpl$(Futures.scala:479)
17:11:37          at org.scalatest.concurrent.ScalaFutures$$anon$1.futureValueImpl(ScalaFutures.scala:275)
17:11:37          at org.scalatest.concurrent.Futures$FutureConcept.futureValue(Futures.scala:476)
17:11:37          at org.scalatest.concurrent.Futures$FutureConcept.futureValue$(Futures.scala:475)
17:11:37          at org.scalatest.concurrent.ScalaFutures$$anon$1.futureValue(ScalaFutures.scala:275)
17:11:37          at org.apache.openwhisk.core.database.test.behavior.ArtifactStoreAttachmentBehaviors.$anonfun$$init$$4(ArtifactStoreAttachmentBehaviors.scala:130)
17:11:37          at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)
17:11:37          at org.scalatest.OutcomeOf.outcomeOf$(OutcomeOf.scala:83)
17:11:37          at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
17:11:37          at org.scalatest.Transformer.apply(Transformer.scala:22)
17:11:37          at org.scalatest.Transformer.apply(Transformer.scala:20)
17:11:37          at org.scalatest.FlatSpecLike$$anon$5.apply(FlatSpecLike.scala:1682)
17:11:37          at org.scalatest.TestSuite.withFixture(TestSuite.scala:196)
17:11:37          at org.scalatest.TestSuite.withFixture$(TestSuite.scala:195)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.org$apache$openwhisk$core$database$test$behavior$ArtifactStoreBehaviorBase$$super$withFixture(CouchDBArtifactStoreTests.scala:26)
17:11:37          at org.apache.openwhisk.core.database.test.behavior.ArtifactStoreBehaviorBase.withFixture(ArtifactStoreBehaviorBase.scala:80)
17:11:37          at org.apache.openwhisk.core.database.test.behavior.ArtifactStoreBehaviorBase.withFixture$(ArtifactStoreBehaviorBase.scala:78)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.withFixture(CouchDBArtifactStoreTests.scala:26)
17:11:37          at org.scalatest.FlatSpecLike.invokeWithFixture$1(FlatSpecLike.scala:1680)
17:11:37          at org.scalatest.FlatSpecLike.$anonfun$runTest$1(FlatSpecLike.scala:1692)
17:11:37          at org.scalatest.SuperEngine.runTestImpl(Engine.scala:286)
17:11:37          at org.scalatest.FlatSpecLike.runTest(FlatSpecLike.scala:1692)
17:11:37          at org.scalatest.FlatSpecLike.runTest$(FlatSpecLike.scala:1674)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.org$scalatest$BeforeAndAfterEach$$super$runTest(CouchDBArtifactStoreTests.scala:26)
17:11:37          at org.scalatest.BeforeAndAfterEach.runTest(BeforeAndAfterEach.scala:221)
17:11:37          at org.scalatest.BeforeAndAfterEach.runTest$(BeforeAndAfterEach.scala:214)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.runTest(CouchDBArtifactStoreTests.scala:26)
17:11:37          at org.scalatest.FlatSpecLike.$anonfun$runTests$1(FlatSpecLike.scala:1750)
17:11:37          at org.scalatest.SuperEngine.$anonfun$runTestsInBranch$1(Engine.scala:393)
17:11:37          at scala.collection.immutable.List.foreach(List.scala:392)
17:11:37          at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:381)
17:11:37          at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:370)
17:11:37          at org.scalatest.SuperEngine.$anonfun$runTestsInBranch$1(Engine.scala:407)
17:11:37          at scala.collection.immutable.List.foreach(List.scala:392)
17:11:37          at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:381)
17:11:37          at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:376)
17:11:37          at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:458)
17:11:37          at org.scalatest.FlatSpecLike.runTests(FlatSpecLike.scala:1750)
17:11:37          at org.scalatest.FlatSpecLike.runTests$(FlatSpecLike.scala:1749)
17:11:37          at org.scalatest.FlatSpec.runTests(FlatSpec.scala:1685)
17:11:37          at org.scalatest.Suite.run(Suite.scala:1124)
17:11:37          at org.scalatest.Suite.run$(Suite.scala:1106)
17:11:37          at org.scalatest.FlatSpec.org$scalatest$FlatSpecLike$$super$run(FlatSpec.scala:1685)
17:11:37          at org.scalatest.FlatSpecLike.$anonfun$run$1(FlatSpecLike.scala:1795)
17:11:37          at org.scalatest.SuperEngine.runImpl(Engine.scala:518)
17:11:37          at org.scalatest.FlatSpecLike.run(FlatSpecLike.scala:1795)
17:11:37          at org.scalatest.FlatSpecLike.run$(FlatSpecLike.scala:1793)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.org$scalatest$BeforeAndAfterAll$$super$run(CouchDBArtifactStoreTests.scala:26)
17:11:37          at org.scalatest.BeforeAndAfterAll.liftedTree1$1(BeforeAndAfterAll.scala:213)
17:11:37          at org.scalatest.BeforeAndAfterAll.run(BeforeAndAfterAll.scala:210)
17:11:37          at org.scalatest.BeforeAndAfterAll.run$(BeforeAndAfterAll.scala:208)
17:11:37          at org.apache.openwhisk.core.database.CouchDBArtifactStoreTests.run(CouchDBArtifactStoreTests.scala:26)
17:11:37
17:11:37          Caused by:
17:11:37          org.apache.openwhisk.core.database.PutException: Unexpected http response code: 500 Internal Server Error (details: {"error":"unknown_error","reason":"function_clause","ref":1941633815}
17:11:37          )

Related issue and scope

[ ] I opened an issue to propose and discuss this change (#????)

My changes affect the following components

[ ] API
[ ] Controller
[ ] Message Bus (e.g., Kafka)
[ ] Loadbalancer
[ ] Invoker
[ ] Intrinsic actions (e.g., sequences, conductors)
[ ] Data stores (e.g., CouchDB)
[X] Tests
[ ] Deployment
[ ] CLI
[ ] General tooling
[ ] Documentation

Types of changes

[x] Bug fix (generally a non-breaking change which closes an issue).
[ ] Enhancement or new feature (adds new functionality).
[ ] Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

[X] I signed an Apache CLA.
[X] I reviewed the style guides and followed the recommendations (Travis CI will check :).
[ ] I added tests to cover my changes.
[ ] My changes require further changes to the documentation.
[ ] I updated the documentation where necessary.

Tested locally on PG2:
./gradlew :bluemix:tests:testArmada --tests org.apache.openwhisk.core.database.CouchDBArtifactStoreTests

> Configure project :bluemix:services:billingService
appArgs are not defined

> Task :bluemix:tests:addWhiskCertificate
Certificate was added to keystore

> Task :bluemix:tests:addStageCertificate
Certificate was added to keystore

> Task :bluemix:tests:addProdLondonCertificate
Certificate was added to keystore

> Task :bluemix:tests:addProdCertificate
Certificate was added to keystore

> Task :bluemix:tests:addOpenWhiskCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixUsSouthMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixUsEastMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixStageMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixStageCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixStage0Certificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixStage01Certificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixOpenWhiskStage1NgBluemixNetCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixOpenWhiskNgBluemixNetCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixOpenWhiskEuGbBluemixNetCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixOpenWhiskEuDeBluemixNetCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixJpTokMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixEuGbtMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addBluemixEuDetMultiDomainCertificate
Certificate was added to keystore

> Task :bluemix:tests:addArmadaUSEastCertificate
Certificate was added to keystore

> Task :bluemix:tests:addArmadaSelfSigned
Certificate was added to keystore

> Task :bluemix:tests:addArmadaLetsEncryptCACertificate
Certificate was added to keystore

> Task :open:tests:buildArtifacts
Test zip artifacts already built, skipping

> Task :bluemix:tests:testArmada

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should find single entity PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should not have doc with includeDocs = false PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should find all entities PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should exclude deleted entities PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should return result in sorted order PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should support skipping results PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should support limiting results PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should support including complete docs PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query should throw exception for negative limits and skip PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore count should should match all created activations PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore count should count with skip PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore count should throw exception for negative skip PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should put document and get a revision 1 PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should put and update document PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should put delete and then recreate document with same id with different rev PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should throw DocumentConflictException when updated with old revision PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should throw DocumentConflictException if document with same id is inserted twice PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore put should work if same document was deleted earlier PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore delete should deletes existing document PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore delete should throws IllegalArgumentException when deleting without revision PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore delete should throws NoDocumentException when document does not exist PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore delete should throws DocumentConflictException when revision does not match PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should get existing entity matching id and rev PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should get existing entity matching id only PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should get entity with timestamp PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should throws NoDocumentException when document revision does not match PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should throws NoDocumentException when document does not exist PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore get should not get a deleted document PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should find subject by namespace PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should not get blocked subject PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should not find subject when authKey matches partially PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should should throw NoDocumentException for non existing namespaces PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should should throw NoDocumentException for non existing authKeys PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should find subject having multiple namespaces STANDARD_OUT
    condition not met, retrying

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should find subject having multiple namespaces PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should find subject by namespace with limits PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query subjects should find blacklisted namespaces PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query public packages should only list published entities STANDARD_OUT
    condition not met, retrying

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query public packages should only list published entities PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query public packages should list packages between given times PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore query public packages should list activations between given times PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should generate different attachment name on update PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should fail on reading with old non inlined attachment PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should work on reading with old inlined attachment PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should put and read large attachment PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should inline small attachments PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should throw NoDocumentException for non existing attachment PASSED

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should delete attachment on document delete STANDARD_OUT
    Shutting down store connections

org.apache.openwhisk.core.database.CouchDBArtifactStoreTests > CouchDBArtifactStore attachments should delete attachment on document delete SKIPPED

BUILD SUCCESSFUL in 1m 17s
61 actionable tasks: 25 executed, 36 up-to-date


[BUG] Nodes with cordoned status should not be in the selection list for VM migration

Describe the bug
Newly created VMs will not run on the cordoned state node, and if there are VMs on other nodes that want to migrate to that node they should not be run, so the node should not be shown in the VM's migratable list
To Reproduce
Steps to reproduce the behavior:

set a node to cordoned state
Create a vm and wait for the state to become active
Click the migrate button on the vm to bring up the Migrate list
The node with the cordoned state appears in the list

Expected behavior

the node with the cordoned state should not be shown in the VM's migratable list
Support bundle

Environment:

Harvester ISO version: dev
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630):

Additional context
Add any other context about the problem here.

Verified fixed on master-d21b9161-head , Close this issue.
Result
Node set in cordoned state will not show up in the available migration list

All VMs can starting and get ip address.
Test Information

Test Environment: 3 nodes harvester on provo bare machines
Harvester version: master-d21b9161-head

Verify Steps

Create multiple VMs on two of the nodes
Set the idle node to cordoned state
Edit any config of VM, click migrate
Check the available node in the migration list

Additional Context
None


Prevent panic on invalid interface number

At https://github.com/jiegec/usbip/blob/master/src/device.rs#L349, setup_packet.index is sometimes (much) larger than the number of interfaces, I got 514, 1284, 264, 520, 1034 and 1290 for instance on a device with only 12 interfaces.
Since all of them seem to be in range modulo 256, I could add such a modulo but I’d prefer someone accustomed to USB to verify that this is indeed the correct fix.
The modulo otherwise fixes this panic:
thread 'tokio-runtime-worker' panicked at 'index out of bounds: the len is 12 but the index is 514', src/device.rs:349:37

Oh, that's weird.

Yes, you are right:

This indeed fixes the issue, thanks!


Adjust timeouts for invoked processes

Fixes #72
Defaulted to 5s for all commands executed, except:

phpize - 1 minute
./configure - 2 minutes
make - 10 minutes
make install - 1 minute

I think these are reasonable maximums, but we can adjust accordingly with the constants defined going forward, should we need to.

make - 10 minutes

This seems short to me
Try ones of grpc, couchbase or datadog_trace on a slow computer (especially without -j option, see #73)

make - 10 minutes

This seems short to me Try ones of grpc, couchbase or datadog_trace on a slow computer (especially without -j option, see #73)

Would you be able to suggest a safer limit please?

Thanks - I've adjusted it to be unlimited in #76


added icons to the taskbar

Related Issue
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]
Fixes:  #(issue no.)#661
Description
added icons to the taskbar

Type of PR

[ ] Bug fix
[yes ] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
[Attach any relevant screenshots or videos demonstrating the changes. Make sure to attach before & after screenshots in your PR.]
Checklist:

[ yes ] I have made this change from my own.
[yes  ] I have taken help from some online resources.
[yes  ] My code follows the style guidelines of this project.
[yes  ] I have performed a self-review of my own code.
[ yes ] I have commented my code, particularly in hard-to-understand areas.
yes [ ] I have made corresponding changes to the documentation.
[yes  ] My changes generate no new warnings.
[yes  ] I have tested the changes thoroughly before submitting this pull request.
[ yes ] I have provided relevant issue numbers and screenshots after making the changes.

@Henryhose Please see the conflicts . Resolve the conflicts . Ensure you pull all the latest changes before pushing your feature/bug fixes to the main branch. After resolving the conflicts, please open a new PR for review.
Thank you!


User hippo (from simple example kustomize/postgres) cannot create table

I just deployed example kustomize/postgres.
DB works, however user hippo cannot create table in db hippo schema public.
It may relate to this ?
https://stackoverflow.com/questions/74110708/postgres-15-permission-denied-for-schema-public

Relates to this https://github.com/CrunchyData/postgres-operator/issues/3568
Solution was to create schema for hippo user -  and this is what is fix in recent Operator.


Request : Adding oraclize to QTUM network/blockchain

Request to add oraclize to the QTUM blockchain, They are working with EVM as well
using ERC20 but again, on QTUM blockchain, not Ethereum's, QTUM have their own blockchain known as mainnet.
You can deploy the same contract bytecode and API to their network the same way you would do with ethereum, also using the solidify compiler, But to deploy it , you need qtum core wallet.
(Of course, you may need some QTUM to gas the contract creation)
For more info : https://explorer.qtum.org/
https://qtum.org/en/

@Illasera we have synchronized a node to QTUM, but after looking into it more, it did not have the web3 support that was expected, instead only exposing a qweb3 library which isn't interchangeable with web3 from what I have seen.

We will close this for now, if someone has a need for this, +1 Illasera's post or leave a comment.

@7flash sure, it's licensed under the GNU AFFERO GENERAL PUBLIC LICENSE.
The bridge is what's used for some Ethereum testnets and also RSK, and we planned to integrate it with QTUM but ran into the above hurdle.


Queues aren't created and dashboard url environment variable is incorrect

I'm working on a Grails 2.5.3 application using the rabbitmq plugin. I'm deploying the application to PCFDev and have created the p-rabbitmq service. I get the connection properties in my code like this:
        rabbitmq {
            connectionfactory {
                def dbInfo = cloud?.getServiceInfo('rabbitmq')
                username = dbInfo?.userName
                password = dbInfo?.password
                hostname = dbInfo?.host
                port = dbInfo?.port
            }
            queues = {
                exchange name: 'amq.direct', type: direct, durable: true, autoDelete: false, {
                    queue1 durable: true
                    queue2 durable: true
                }
            }
        }

As you can see I am creating two queues queue1 and queue2. When I deploy the above application, I can see the following environment variables:
{
 "VCAP_SERVICES": {
  "p-mysql": [
   {
    "credentials": {
     "hostname": "mysql-broker.local.pcfdev.io",
     "jdbcUrl": "jdbc:mysql://mysql-broker.local.pcfdev.io:3306/cf_f7626b32_02e4_46f0_84d2_7002c383c3d6?user=JW89THSa6voZbcyb\u0026password=96lFfCeFmzPZCDo0",
     "name": "cf_f7626b32_02e4_46f0_84d2_7002c383c3d6",
     "password": "96lFfCeFmzPZCDo0",
     "port": 3306,
     "uri": "mysql://JW89THSa6voZbcyb:96lFfCeFmzPZCDo0@mysql-broker.local.pcfdev.io:3306/cf_f7626b32_02e4_46f0_84d2_7002c383c3d6?reconnect=true",
     "username": "JW89THSa6voZbcyb"
    },
    "label": "p-mysql",
    "name": "mysql",
    "plan": "512mb",
    "provider": null,
    "syslog_drain_url": null,
    "tags": [
     "mysql"
    ],
    "volume_mounts": []
   }
  ],
  "p-rabbitmq": [
   {
    "credentials": {
     "dashboard_url": "https://rabbitmq-management.local.pcfdev.io/#/login/1b200e1d-139e-44ca-a284-59c6c6def87f/u15slucb59vosh3888fe1hm48m",
     "hostname": "rabbitmq.local.pcfdev.io",
     "hostnames": [
      "rabbitmq.local.pcfdev.io"
     ],
     "http_api_uri"<EMAIL_ADDRESS>     "http_api_uris": [
<EMAIL_ADDRESS>     ],
     "password": "u15slucb59vosh3888fe1hm48m",
     "protocols": {
      "amqp": {
       "host": "rabbitmq.local.pcfdev.io",
       "hosts": [
        "rabbitmq.local.pcfdev.io"
       ],
       "password": "u15slucb59vosh3888fe1hm48m",
       "port": 5672,
       "ssl": false,
       "uri": "amqp://1b200e1d-139e-44ca-a284-59c6c6def87f:u15slucb59vosh3888fe1hm48m@rabbitmq.local.pcfdev.io:5672/913f0907-5fb1-4a37-ae7f-219d91aa7807",
       "uris": [
        "amqp://1b200e1d-139e-44ca-a284-59c6c6def87f:u15slucb59vosh3888fe1hm48m@rabbitmq.local.pcfdev.io:5672/913f0907-5fb1-4a37-ae7f-219d91aa7807"
       ],
       "username": "1b200e1d-139e-44ca-a284-59c6c6def87f",
       "vhost": "913f0907-5fb1-4a37-ae7f-219d91aa7807"
      },
      "management": {
       "host": "rabbitmq.local.pcfdev.io",
       "hosts": [
        "rabbitmq.local.pcfdev.io"
       ],
       "password": "u15slucb59vosh3888fe1hm48m",
       "path": "/api/",
       "port": 15672,
       "ssl": false,
       "uri": "http://1b200e1d-139e-44ca-a284-59c6c6def87f:u15slucb59vosh3888fe1hm48m@rabbitmq.local.pcfdev.io:15672/api/",
       "uris": [
        "http://1b200e1d-139e-44ca-a284-59c6c6def87f:u15slucb59vosh3888fe1hm48m@rabbitmq.local.pcfdev.io:15672/api/"
       ],
       "username": "1b200e1d-139e-44ca-a284-59c6c6def87f"
      }
     },
     "ssl": false,
     "uri"<EMAIL_ADDRESS>     "uris": [
<EMAIL_ADDRESS>     ],
     "username": "1b200e1d-139e-44ca-a284-59c6c6def87f",
     "vhost": "913f0907-5fb1-4a37-ae7f-219d91aa7807"
    },
    "label": "p-rabbitmq",
    "name": "rabbitmq",
    "plan": "standard",
    "provider": null,
    "syslog_drain_url": null,
    "tags": [
     "rabbitmq",
     "messaging",
     "message-queue",
     "amqp",
     "stomp",
     "mqtt",
     "pivotal"
    ],
    "volume_mounts": []
   }
  ]
 }
}

{
 "VCAP_APPLICATION": {
  "application_id": "1f71603e-88d2-45ab-a64e-83ab42751d52",
  "application_name": "cf-sample",
  "application_uris": [
   "cf-sample.local.pcfdev.io"
  ],
  "application_version": "0a6a61d4-108a-4698-b272-93a305d8d0b5",
  "limits": {
   "disk": 512,
   "fds": 16384,
   "mem": 1024
  },
  "name": "cf-sample",
  "space_id": "ec596a9f-cd56-4529-8f77-9396a886a8b8",
  "space_name": "pcfdev-space",
  "uris": [
   "cf-sample.local.pcfdev.io"
  ],
  "users": null,
  "version": "0a6a61d4-108a-4698-b272-93a305d8d0b5"
 }
}

User-Provided:
JBP_CONFIG_OPEN_JDK_JRE: {jre: { version: 1.7.0_+ }}
JBP_CONFIG_TOMCAT: {tomcat: { version: 7.0.+ }}

Notice the dashboard-url. It is https://rabbitmq-management.local.pcfdev.io/#/login/ however, this URL results in 404.
Additionally, no queues are being created when I go to the management console. As can be see in the screenshot below:

Sample Grails app to re-create the issue: https://github.com/Omnipresent/cf-rabbitmq-grails

Hi @Omnipresent Can you let me know what version of pcfdev you are using so that I can try and recreate the issue you are seeing?
Thanks,

@davidhiston Hi, I'm using pcfdev-v0.20.0+PCF1.8.0-osx

@Omnipresent I have tried with the latest version of pcfdev and the management route works fine so if possible can you try the latest version?

I suspect the problem lies in the hostname mismatch. Clients can't connect and thus can't possibly declare anything.

On 12 Oct 2016, at 19:15, David Histon<EMAIL_ADDRESS>wrote:
@Omnipresent I have tried with the latest version of pcfdev and the management route works fine so if possible can you try the latest version?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I am closing this for now. I was able to resolve it by deploying another version of my app. I suspect the problem was with the grails plugin.

@omnipresent  thank you for letting me know and I am glad that it is resolved.


Why does setting AZURE_OPENAI_API_KEY env variable preclude ever using OPENAI_API_KEY?

Hi, I want to use my azure deployments for some LLMs and my openAI key for some others. However this isn't possible if I set the environment variable. I got around this by renaming the environment variable to something else and only passing it in manually when I want to use it, but this seems like an odd default?

Faced the same issue yesterday +1

+1 This was a tricky one for me to debug and glad I'm not the only one


Bug: Header Experience Fragment has the incorrect fonts and alignment is incorrect

Hey! Can I work on this ?

@ishaanbedi I will be pushing an update to the header styling for mobile today. If this issue persists afterwards, then would love some help :)

@ishaanbedi

^ This is the current status after today's work on the mobile styling.
The issue with the fonts also effects images that come from the theme/resources. In the case of the mobile header, it effects the background images used on the button that toggles the mobile menu. I believe this to be a bug with AEM and not with the template. I've tested and duplicated the experience on the adobe/aem-site-template-standard template.
As for the alignment, it happens due to the AEM author dialogs that are used to add new components. I don't see an easy way to overcome this. Additionally, it would result in extra CSS that would be shipped to end users, that only would be seen by the authors. Therefore I think it's not worth the effort or extra bytes of CSS.
The fonts and images not working is likely a bug though, and a bug with AEM or Quick Sites. I'm waiting to hear back from some people at Adobe.

This has been logged with the official adobe/aem-site-template-basic repo, as it is a bug within AEM, and not the templates. Issue #74


Enable more typing

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

Here are five more files that are fairly straightforward to enable typing in (there are only ~33 non-test files with typing disabled after this change).

Review period will end on 2023-03-23 at 04:44:21 UTC.


some questions for localTransactionBuilder

sui链的未签名交易可以不依赖节点rpc方法，离线方式构建出来得到txBytes吗？

This class will be deprecated. AFAIK, there are some read rpc methods must be invoked such as reference price, owned objects. It may do that all offline, but I follow the official SDK approach, so it can't implement in sui4j right now.

Please use https://github.com/GrapeBaBa/sui4j/blob/main/src/main/java/io/sui/models/transactions/TransactionBlock.java

thanks


Question about enclaves: Why the SECS created as ECREATE happens is in the range of EPC pages?

Hello.
I got some questions about the memory allocation step in Hyperenclave.
Assume the user app triggers an ECREATE request, the hypervisor driver catches this request and handles it using function he_cmd_encl_create, after some initialization steps, this function calls hypercall HC_ENCL_CREATE, which will be sent to the rust-monitor, and here it comes the function enclave_create.
    pub(super) fn enclave_create(
        &self,
        config_ptr: GuestPtr<HvEnclDesc>,
    ) -> HyperCallResult<usize> {
        let now = Instant::now();
        let secs_gpaddr = config_ptr.as_guest_paddr()?;
        let secs = *GuestPtr::gpaddr_to_ref(&secs_gpaddr, false)?;
        info!("enclave_create({:#x?}): {:#x?}", config_ptr, secs);
        let enclave = Enclave::new(secs_gpaddr, config_ptr.guest_vaddr(), secs)?;
        ENCLAVE_MANAGER.add_enclave(enclave.clone())?;
        enclave.atomic_add_stats(EnclaveStatsId::Create, now.elapsed());
        Ok(0)
    }

As mentioned above, the config is the SECS, so how does the SECS translated using query step in function as_guest_paddr, and Why this guest physical address will fall just in the range of EPC that we reserved beforehand? (According to my understanding, since SECS is stored in one of EPC, the guest physical address will fail just in this range.)
Besides, what confused me is that in the hypervisor-driver, we allocated the he_enclave, including SECS using kzalloc, it seems that the mappings between guest physical address and the guest virtual address are set up here. If so, how does it make sure the address of SECS is in the reserved part?
I tried to figure it out, but I failed to do so.
Any helps will be appreciated, thanks a lot.

Hi @Unik-lif, thanks for your interest on HyperEnclave.

so how does the SECS translated using query step in function as_guest_paddr

Hypervisor translates the virtual address using the page table in untrusted part, and then gets the the target physical address.

Why this guest physical address will fall just in the range of EPC that we reserved beforehand?
...
If so, how does it make sure the address of SECS is in the reserved part?

The secs_gpaddr does not locate in the range of EPC, The data pointed by secs_gpaddr is copied to the memory area held by the secs in the following expression:
 let secs = *GuestPtr::gpaddr_to_ref(&secs_gpaddr, false)?;

The memory area pointed by the field secs in struct Enclave locates in the hypervisor's memory, which cannot be accessed by untrusted software. But it should mentioned that there is no EPC page holding the SECS information in HyperEnclave currently, which is different from that in Intel SGX.

Thank u 4 ur timely reply!

But it should mentioned that there is no EPC page holding the SECS information in HyperEnclave currently, which is different from that in Intel SGX.

So can I simply conclude like that: different from other EPC pages, the SECS is not maintained in EPC part we divided beforehand, it is maintained in Rust-Monitor part?


Added the ability to emit file ASTs as JSON

Implemented and tested: variable declarations, interface declarations, class declarations, type literals, keyword types, module declarations
Began work on: type aliases, type references, imports/exports, function declarations

Can you attach the JSON payload generated?  How log does it take to generate the JSON file?


feat(Interaction): Add highlight on touch

VRTK_HighlightOnInteract adds outline to VRTK_InteractableObject's that changes its colour on touch. That outline done IKEA VR App style. It also can show/hide associated tooltip on touch.

There were the following issues with your Pull Request

Commit: b323b4f0b0c26925417d64e3c04570e0cde4f33a
Your commit message body contains a line that is longer than 72 characters
Your subject line is longer than 72 characters

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

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

There were the following issues with your Pull Request

Commit: b323b4f0b0c26925417d64e3c04570e0cde4f33a
Your commit message body contains a line that is longer than 72 characters
Your subject line is longer than 72 characters

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

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

You'll need to squash these commits into one and ensure the commit message meets the contributing guidelines.

There were the following issues with your Pull Request

Commit: b323b4f0b0c26925417d64e3c04570e0cde4f33a
Your commit message body contains a line that is longer than 72 characters
Your subject line is longer than 72 characters

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

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

There were the following issues with your Pull Request

Commit: b323b4f0b0c26925417d64e3c04570e0cde4f33a

Your commit message body contains a line that is longer than 72 characters

Your subject line is longer than 72 characters

Commit: 441931b18fc74fb810b31d5a8c96b142b8da5536

Your commit message body contains a line that is longer than 72 characters

Commit: e86b9dba6e161e786bd06fb3c263ce369a0a4109

Your commit message body contains a line that is longer than 72 characters

Commits must be in the following format: %{type}(%{scope}): %{description}

Commit: bb534ca1e80a823feec01865a25f4e6439d94ac4

Commits must be in the following format: %{type}(%{scope}): %{description}

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

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


[WIP] GMC: fix the problem that the unit-tests cannot be run on non-k8s env

Description
fix #92
the root cause:

the CI/CD env has not ~/.kube/config, but in the code it is required to create a dynamicClient
the UT due to cause 1, but was not captured
on local env, the kubeconfig exists, so the UT successed
the config file templates are not planted in CI/CD env neither

solution:
When create the fake env of k8s in UT suite, create a fake KUBECONFIG based on this env, and cp the templates to /tmp/microservices/yaml, which is required by code.
in the code, if ~/.kube/config cannot be found, use the KUBECONFIG instead.
Issues
#92
Type of change
List the type of change like below. Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would break existing design and interface)

Dependencies
n/a
Tests
Describe the tests that you ran to verify your changes.
on the local testbed, remove all the templates and ~/.kube/config, run the UT, all passed
root@cis-gms-worker-3:~/zkf/repo/GenAIInfra/microservices-connector# make test
/root/zkf/repo/GenAIInfra/microservices-connector/bin/controller-gen-v0.14.0 rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/root/zkf/repo/GenAIInfra/microservices-connector/bin/controller-gen-v0.14.0 object:headerFile="hack/boilerplate.go.txt" paths="./..."
go fmt ./...
go vet ./...
KUBEBUILDER_ASSETS="/root/zkf/repo/GenAIInfra/microservices-connector/bin/k8s/1.29.0-linux-amd64" go test $(go list ./... | grep -v /e2e) -coverprofile cover.out
?       github.com/opea-project/GenAIInfra/microservices-connector/api/v1alpha3 [no test files]
?       github.com/opea-project/GenAIInfra/microservices-connector/cmd  [no test files]
ok      github.com/opea-project/GenAIInfra/microservices-connector/cmd/router   0.033s  coverage: 58.8% of statements
?       github.com/opea-project/GenAIInfra/microservices-connector/test/utils   [no test files]
ok      github.com/opea-project/GenAIInfra/microservices-connector/internal/controller  7.191s  coverage: 70.8% of statements

if templates are not copied intentionally, UT failed, and error is captured:
root@cis-gms-worker-3:~/zkf/repo/GenAIInfra/microservices-connector# make test
/root/zkf/repo/GenAIInfra/microservices-connector/bin/controller-gen-v0.14.0 rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/root/zkf/repo/GenAIInfra/microservices-connector/bin/controller-gen-v0.14.0 object:headerFile="hack/boilerplate.go.txt" paths="./..."
go fmt ./...
go vet ./...
KUBEBUILDER_ASSETS="/root/zkf/repo/GenAIInfra/microservices-connector/bin/k8s/1.29.0-linux-amd64" go test $(go list ./... | grep -v /e2e) -coverprofile cover.out
?       github.com/opea-project/GenAIInfra/microservices-connector/api/v1alpha3 [no test files]
?       github.com/opea-project/GenAIInfra/microservices-connector/cmd  [no test files]
ok      github.com/opea-project/GenAIInfra/microservices-connector/cmd/router   0.063s  coverage: 58.8% of statements
?       github.com/opea-project/GenAIInfra/microservices-connector/test/utils   [no test files]
user config {localhost http://proxy.example.com https://proxy.example.com}
user config { localhost http://proxy.example.com https://proxy.example.com}
user config <nil>
user config {localhost http://proxy.example.com https://proxy.example.com}
user config {localhost http://proxy.example.com https://proxy.example.com}
user config { localhost http://proxy.example.com https://proxy.example.com}
user config {localhost http://proxy.example.com https://proxy.example.com}
user config {localhost http://proxy.example.com https://proxy.example.com}
user config {localhost http://proxy.example.com https://proxy.example.com }
Running Suite: Controller Suite - /root/zkf/repo/GenAIInfra/microservices-connector/internal/controller
=======================================================================================================
Random Seed:<PHONE_NUMBER>

Will run 1 of 1 specs
Reconciling connector graph apiVersion  graph test-resource
/tmp/fake-kubeconfig-28464316.yaml
------------------------------
• [FAILED] [2.061 seconds]
GMConnector Controller When reconciling a resource [It] should successfully reconcile the resource
/root/zkf/repo/GenAIInfra/microservices-connector/internal/controller/gmconnector_controller_test.go:94

  Timeline >>
  STEP: creating the custom resource for the Kind GMConnector @ 06/13/24 20:01:57.287
  STEP: Reconciling the created resource @ 06/13/24 20:01:59.329
  [FAILED] in [It] - /root/zkf/repo/GenAIInfra/microservices-connector/internal/controller/gmconnector_controller_test.go:104 @ 06/13/24 20:01:59.336
  STEP: Cleanup the specific resource instance GMConnector @ 06/13/24 20:01:59.34
  << Timeline

  [FAILED] Unexpected error:
      <*errors.withStack | 0xc000513d70>:
      Failed to pre-process the Configmap file for xeon: failed to read /tmp/microservices/yamls/qna_configmap_xeon.yaml : open /tmp/microservices/yamls/qna_configmap_xeon.yaml: no such file or directory
      {
          error: <*errors.withMessage | 0xc000372600>{
              cause: <*errors.errorString | 0xc0008bfbb0>{
                  s: "failed to read /tmp/microservices/yamls/qna_configmap_xeon.yaml : open /tmp/microservices/yamls/qna_configmap_xeon.yaml: no such file or directory",
              },
              msg: "Failed to pre-process the Configmap file for xeon",
          },
          stack: [0x158e511, 0x1593c8d, 0x14c0df3, 0x14d4d0d, 0x473e21],
      }
  occurred
  In [It] at: /root/zkf/repo/GenAIInfra/microservices-connector/internal/controller/gmconnector_controller_test.go:104 @ 06/13/24 20:01:59.336
------------------------------

Summarizing 1 Failure:
  [FAIL] GMConnector Controller When reconciling a resource [It] should successfully reconcile the resource
  /root/zkf/repo/GenAIInfra/microservices-connector/internal/controller/gmconnector_controller_test.go:104

Ran 1 of 1 Specs in 7.882 seconds
FAIL! -- 0 Passed | 1 Failed | 0 Pending | 0 Skipped
--- FAIL: TestControllers (7.88s)
FAIL
coverage: 21.4% of statements
FAIL    github.com/opea-project/GenAIInfra/microservices-connector/internal/controller  7.931s
FAIL
make: *** [Makefile:70: test] Error 1

As @mkbhanda  @irisdingbj  point out, there is still some issues in this PR, move to WIP due to lower priority

the #98 contains the solution to the UT coverage failed to run on CI/CD, close this one.


How to combine a audio file with a video file?

why closed this issue without any solution?

Because the question is broad and falls outside the scope of PyAV. If all you want to do is combine audio + video, the FFmpeg command line tools are the right tool.


The Icons and branding is incorrect  there seems to be an icon and branding issue with the Base image offerings

The icons and branding are inconsistent between the Azure Application and the VM offers for WLS.

Replaced all images for offer type "Azure Applications" to make them consistent with Azure Virtual Machines


Ship incoming log event metrics and remove plumbum

https://trello.com/c/tZghClQt/354-add-a-hosted-graphite-alert-for-missing-logs
https://trello.com/c/8sezKAoU/365-remove-dependancy-of-plubum-from-cloudwatch-to-graphite-metric-exporter
See commit messages for further details.

@Wynndow I think it was allowing us to use Jinja as per below ticket, but we wrote a script that does it instead of plumbum:
https://trello.com/c/8sezKAoU/365-remove-dependancy-of-plubum-from-cloudwatch-to-graphite-metric-exporter

Yep totally, just wondering what plumbum was actually doing? It looks like it was using Jinja to populate a template, but it was also talking to AWS for something. Wondering what that something was.

So from what I understand, Plumbum comes as part of leadbutt which makes it easy to create your config file. It makes the assumption that someone using it is going to query AWS to find out say the IDs of 40 different EC2 instances and then ship metrics defined by those 40 EC2 instances that you just found. The assumption was you would also use Jinja as part of that using a template that would take data from AWS as parameters. We were originally using plumbum to just take advantage of the built in jinja pipeline and actually didn't need (or at least not anymore) the access to AWS, however the connection to AWS was mandatory as part of the plumbum flow. Does that answer your question?


⚠ Topfarmacia has degraded performance

In 29707f0, Topfarmacia (https://www.topfarmacia.it) experienced degraded performance:

HTTP code: 200
Response time: 17454 ms

Resolved: Topfarmacia performance has improved in 734ac4d.


Add combine-schedulers

Checklist
I have:

[x] Run swift ./validate.swift diff before submitting this PR

Thanks Stephen :)


[SMALLFIX] Syntax duplication

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/6671/
Test PASSed.

LGTM


[vcpkg.cmake] guard against inf recursion.

requires cmake 3.18
closes #16454

@JackBoosY: Why the tag depends:different-pr?

Ah sorry for that. Now we use cmake 3.22.

Hmm the license bot is buggy for test ports

Ready for review now?

@JackBoosY Yes

I'd like this PR and we should wait for other team members to review it.

As a curiosity that doesn't detract from the merit of the PR: what scenario caused you to encounter this issue? Were you building your own CMake machinery that you wanted to use at the same time as the vcpkg machinery? Or is there another middleware out there doing something similar?

what scenario caused you to encounter this issue?

I personally did not directly encounter it. I just know that there have been people hitting this problem using vcpkg and since I had the solution laying around I just adapted it to vcpkg.
As far as I remember I looked once into the problem of one of these and it was a build script which completely changed the signature of add_library|add_executable with no easy way to replace it.

Hmm all Linux builds fail due to protobuf and I cannot figure out why.

/azp run

All regressions have the same error message:
FAILED: caffe2/proto/hsm.pb.cc caffe2/proto/hsm.pb.h caffe2/proto/hsm_pb2.py /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg/caffe2/proto/hsm.pb.cc /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg/caffe2/proto/hsm.pb.h /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg/caffe2/proto/hsm_pb2.py
cd /mnt/vcpkg-ci/buildtrees/caffe2/src/639a981b79-8e24fb82ee.clean && /mnt/vcpkg-ci/downloads/tools/cmake-3.22.2-linux/cmake-3.22.2-linux-x86_64/bin/cmake -E make_directory /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg/caffe2/proto && /mnt/vcpkg-ci/installed/x64-linux/tools/protobuf/protoc -I/mnt/vcpkg-ci/buildtrees/caffe2/src/639a981b79-8e24fb82ee.clean --cpp_out /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg /mnt/vcpkg-ci/buildtrees/caffe2/src/639a981b79-8e24fb82ee.clean/caffe2/proto/hsm.proto && /mnt/vcpkg-ci/installed/x64-linux/tools/protobuf/protoc -I/mnt/vcpkg-ci/buildtrees/caffe2/src/639a981b79-8e24fb82ee.clean --python_out /mnt/vcpkg-ci/buildtrees/caffe2/x64-linux-dbg /mnt/vcpkg-ci/buildtrees/caffe2/src/639a981b79-8e24fb82ee.clean/caffe2/proto/hsm.proto
terminate called after throwing an instance of 'std::system_error'
  what():  Unknown error -1
Aborted (core dumped)

All regressions have the same error message:

I know. The best port to test is probably gRPC. The problem is I don't know why. The configure logs of protobuf looks the same.

Tested in a Ubuntu 19.04 VM and orc builds successful. So I am missing a reproducer.

it looks like it's breaking protoc...

hmm why do I have a feeling that the protoc termination on x64-linux was a fluke due to some runner setup. I add logging and now it executes fine? Something is wrong here.

Don't know what caused https://github.com/microsoft/vcpkg/pull/23195#issuecomment-1089694398 but it isn't happening any longer. I assume that there was a os binary incompatible version of protobuf in the binary cache which got restored.
@BillyONeal: was there some linux vm update of system binaries between Mar 29 and 31 ?

@BillyONeal: was there some linux vm update of system binaries between Mar 29 and 31 ?

Nope, the last VM versions were 2022-03-09 and 2022-04-13

Don't know what caused #23195 (comment) but it isn't happening any longer. I assume that there was a os binary incompatible version of protobuf in the binary cache which got restored.
@BillyONeal: was there some linux vm update of system binaries between Mar 29 and 31 ?

Maybe related: https://github.com/protocolbuffers/protobuf/issues/4958

Ok, so whatever happend in x64-linux was probably unrelated to this PR. CI is happy.

LGTM.

we can't prevent this if the user overrides after

users simply need to have the same approach as vcpkg and check how many underscores they should be using. At least it gets possible to override an already overriden function with this PR

We don't have outstanding cases in the tree

I won't count that as an argument since having that in the tree was impossible before because it would have always failed without patching it out which might have been a lot of work nobody was willing to do

vcpkg is in the "wrong" here in overriding these functions in the first place

I argued a long time ago for a different mechanism then the find_package override which is the only important one but simply was overruled. As long as vcpkg intends to support old versions of cmake I am not seeing those gone in the next ten to twenty years.

Shouldn't we instead ask users to use VCPKG_OVERRIDE_FIND_PACKAGE_NAME (introduced in https://github.com/microsoft/vcpkg/commit/039098c9546195a50e45c41e37d7e2b9168b4245 )?

no this simply breaks ALL vcpkg-cmake-wrappers which commonly require find_package to be redefined. (e.g. they all call _find_package)

We don't have outstanding cases in the tree

I won't count that as an argument since having that in the tree was impossible before because it would have always failed without patching it out which might have been a lot of work nobody was willing to do

What I mean is, all the cases we know about that led to this created the problem after calling project meaning this would be no help.

vcpkg is in the "wrong" here in overriding these functions in the first place

I argued a long time ago for a different mechanism then the find_package override which is the only important one but simply was overruled. As long as vcpkg intends to support old versions of cmake I am not seeing those gone in the next ten to twenty years.

Both of these are true:

vcpkg should not be overriding find_package (Your point, you were correct about)
vcpkg must support downstream consuming cmakes with "in the box" versions on contemporary Linux distros (I think the point being made before)

It is acceptable for footguns to exist for people on older CMake releases, and this footgun certainly isn't new.

Shouldn't we instead ask users to use VCPKG_OVERRIDE_FIND_PACKAGE_NAME (introduced in 039098c )?

no this simply breaks ALL vcpkg-cmake-wrappers which commonly require find_package to be redefined. (e.g. they all call _find_package)

Hmmmmm it seems like they're still broken with this. But I'll ensure we consider this point...

Hmmmmm it seems like they're still broken with this. But I'll ensure we consider this point...

yeah you need to replace _find_package in all wrappers with z_vcpkg_underlying_find_package(${ARGS}). I only did it for zlib here for testing and since it rebuilds a lot of deps.

So what's the status here?

@JackBoosY Should be finished. The zlib issue seems to be gone since CI is green (?, never had a clue why it was happening any way and wasn't locally reproduciable)

@BillyONeal Can you please review again?
Thanks.

I see the merge conflict; I ignore the merge conflict unless somebody is showing a willingness to merge. or should I invent a new 3.24 toolchain ?

We should not do this: defending against the "before project()" case when all in-the-wild examples have been after project() seems like unnecessary complexity.

all in-the-wild examples have been after project()

Do you have a list of examples? The point here is also that for those examples we could patch them to be before project() (or also do the correct thing which is applied here.)

all in-the-wild examples have been after project()

Do you have a list of examples? The point here is also that for those examples we could patch them to be before project() (or also do the correct thing which is applied here.)

The ones listed in the rationale for the change were all that way.

Given that this change is complex and we haven't seen an in the wild example it will fix, I'm going to close this. Please feel to reopen it should an in the wild bug it would fix appears.
Thanks for your contribution!

@BillyONeal You still want to have z_vcpkg_underlying_find_package to someday support dependency providers. You want wrappers to stop using _find_package directly

@JavierMatosD @ras0219-msft @vicroms @AugP and I discussed. We make the following observations:

The expected use case is:

Define VCPKG_OVERRIDE_FIND_PACKAGE_NAME to something else
You call macro(find_package ...)
In your overridden macro, you call "something else"
but we understand that this enforces that vcpkg is in the 'bottom' of the stack without excessive workarounds.

We would be OK with adding a new feature for "the name of the thing we call that is not _find_package" but:

It needs infrastructure for the wrappers to call to avoid needing cmake_language(...)
We need a post build check for vcpkg-cmake-wrapper to fail if _find_package is present

Define VCPKG_OVERRIDE_FIND_PACKAGE_NAME to something else

That variable is currently broken and correctly supporting it requires cmake_language call.

We need a post build check for vcpkg-cmake-wrapper to fail if _find_package is present

Seems like a hen/egg problem. First requires the proper infrastructure in vcpkg.cmake and then can add the post build check into vcpkg-tool otherwise there is no way to fix the CI issues appearing due to the post build check.


Add temporary directory handling to ctest

I tried many ways to do this natively in ctest/cmake, but none of them did what we wanted.
This runs each test through a custom shell script "run_test.sh" that sets up and tears down a temporary directory for the test.
This gets the file IO tests running on ctest and fixes the CLI smoketests locally, but not on the Kokoro VMs.
Closes https://github.com/google/iree/issues/731

The smoke tests passed on my local machine as well. Anyway, LGTM :+1:
BEFORE
95% tests passed, 8 tests failed out of 174
The following tests FAILED:
4 - iree_base_file_io_test (Child aborted)
162 - iree_compiler_Translation_SPIRV_LinalgToSPIRV_test_pw_add.mlir.test (Failed)
169 - iree_tools_vm_util_test (Failed)
170 - iree_tools_test_multiple_args.mlir.test (Failed)
171 - iree_tools_test_scalars.mlir.test (Failed)
172 - iree_tools_test_simple.mlir.test (Failed)
173 - iree_samples_custom_modules_custom_modules_test (Child aborted)
174 - iree_samples_simple_embedding_simple_embedding_test (Child aborted)
AFTERWARDS
98% tests passed, 4 tests failed out of 174
The following tests FAILED:
162 - iree_compiler_Translation_SPIRV_LinalgToSPIRV_test_pw_add.mlir.test (Failed)
169 - iree_tools_vm_util_test (Failed)
173 - iree_samples_custom_modules_custom_modules_test (Failed)
174 - iree_samples_simple_embedding_simple_embedding_test (Failed)


Add TOC and title for new C# 9 proposal

The LDM just added the addition for Unconstrained type parameter annotations.
This PR adds that article to the TOC, and configures the metadata for the title.
This should fix the existing build warnings.

Thanks @gewarren Build warning is now fixed.


[SR2022]: 2022-02-11 International Day of Women and Girls in Science

Body
todo
#womeninscience
Media
No response
Category
Filler

Tweet scheduled for tomorrow (2022-02-11) at 12:00 UK time


Steemia app v0.0.5||After entering in a user's profile from that user's post does not show any info of the profile.

Expected Behavior
After entering in any user's profile from his/her post must show all the info of the user's profile.
Actual Behavior
After entering in someone's profile from their own posts doesn't show any info of their profile.
Steps to Reproduce the Problem

Start Steemia app v0.0.5 then login and enter in any post from the home screen of Steemia app.
At the top left of the post you will see user's icon who submit that specific post you've entered.
Then click on the user's profile icon to see the profile info.
Note that after entering in the post owners profile from his/her own post doesn't show any info of the profile and app says that"There are no more post to load".

Specifications

Version: Steemia v0.0.5
Platform: Android 7.0
Recorded video : https://vimeo.com/279915979

Hello,
I will close this one in favor of #106 which is basically the same issue. This behavior is caused by the bug reported in #106.
Thanks :)


Opening plugin repo from script?

It would be awesome to be able to have a keyboard shortcut to open the plugin repo from the dotfile. I sometimes forget what a given plugin does and want to clean them up once in a while.
Example:
Plug 'junegunn/goyo.vim'
Keyboard shortcut to open up https://github.com/junegunn/goyo.vim

Type:

[ ] Bug
[ ] Enhancement
[x] Feature Request
[ ] Question

OS:

[ ] All/Other
[ ] Linux
[x] OS X
[ ] Windows

Vim:

[x] Terminal Vim
[ ] GVim
[ ] Neovim

I think this wiki post should be what you're looking for.

@nfischer Thanks for the comment.
@jon-choi Note that the example on the wiki page works on plug window that is opened by one of the Plug commands (PlugStatus, PlugInstall, ...). I believe you can figure out how to write a version that works on vimrc based on the example.


feat: add pydantic's error dict to ValidationException

Description

Updated SignatureModel's _build_error_message method to accept an optional error dict and add it to the message.
This can be used to propagate the original error object to the error handlers.

Closes #3466

I'm not enthusiastic about adding more pydantic specific handling in our core, and wonder if there's not a way we can better manage this type of thing with our plugin architecture.
We have this ExtendedMsgSpecValidationError raised by the pydantic type decoders to communicate to our core error handling that the exception has extra detail that can be included in the error response. I wonder if it would be more generic to have the ExtendedMsgSpecValidationError type accept an original_exception parameter instead of the errors mapping, and let the pydantic plugin register an exception handler that can access the original pydantic exception and add the extra detail to the exception response. This way, other serialization plugins could leverage the same behavior.

This approach feels more accessible. I'll try to implement this.

I'm not enthusiastic about adding more pydantic specific handling in our core, and wonder if there's not a way we can better manage this type of thing with our plugin architecture.

We have this ExtendedMsgSpecValidationError raised by the pydantic type decoders to communicate to our core error handling that the exception has extra detail that can be included in the error response. I wonder if it would be more generic to have the ExtendedMsgSpecValidationError type accept an original_exception parameter instead of the errors mapping, and let the pydantic plugin register an exception handler that can access the original pydantic exception and add the extra detail to the exception response. This way, other serialization plugins could leverage the same behavior.

This approach feels more accessible. I'll try to implement this.

Cool, feel free to share early thoughts and if you have any questions I'll do my best to try and answer them. Perhaps best to do this in another branch in case we hit a dead end and end up back here?


MODIS datasets need more keyword arguments

Currently, calling e.g. Raster(MODIS{MOD13Q}, :NDVI; RDS.britanny...) throws an UndefKeywordError because the kwargs specific to MODIS are filtered out by _filterkw
This PR allows more kwargs, allowing to call MODIS sources via Raster directly.

Thanks! I noticed this the other day.

Codecov Report

Merging #375 (998cb53) into main (c1d473e) will not change coverage.
The diff coverage is 50.00%.

@@           Coverage Diff           @@
##             main     #375   +/-   ##
=======================================
  Coverage   79.33%   79.33%
=======================================
  Files          38       38
  Lines        3135     3135
=======================================
  Hits         2487     2487
  Misses        648      648

Impacted Files
Coverage Δ

src/sources/rasterdatasources.jl
26.66% <50.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

The docs are not your fault... I'm stupidly printing the output of a dataset that keeps having observations added to it, in a doctest :sweat_smile:

Something like this ? I feared that it would be a bit too much for the Rasters doc because it's already listed in the RasterDataSources doc, but it's true that the abbreviations need explanation :sweat_smile:

If you can just split them into separate keywords  like the ones above (res, month etc) that would be clearer

Indeed :)

Thanks

I think we can fix the interface at some point to accept an Extents.extent object to get tiles - but then we will need lazy concatenation which I never finished.


ErrorReporting: No "serviceContext" on logs from Cloud Run

When following the Laravel instructions on https://cloud.google.com/error-reporting/docs/setup/php#framework_integrations for a Laravel Lumen service running on Cloud Run, the ErrorReporting library writes logs to Stackdriver. However it seems because it is not an App Engine Service, the necessary meta data is not included, which results in logs with "global" resource and missing service context labels:
{
  "insertId": "1k2543ig364hmad",
  "jsonPayload": {
    "message": "…",
    "serviceContext": {
      "version": "",         // Empty
      "service": ""          // Empty
    },
    "context": {
      "reportLocation": {
        "functionName": "…",
        "filePath": "…",
        "lineNumber": 53
      }
    }
  },
  "resource": {
    "type": "global",        // Not cloud_run_revision
    "labels": {
      "project_id": "…"
    }
  },
  "timestamp": "…",
  "severity": "ERROR",
  "logName": "…",
  "receiveTimestamp": "…"
}

This leads to the errors not being picked up by Error Reporting which means that no notifications for new Errors are sent.
What I found is that when a new PsrLogger is instantiated, no metadataProvider is passed. This leads to the default one being used, which seems to be only handling cases for App Engine services:
// vendor/google/cloud-core/src/Report/MetadataProviderUtils.php

public static function autoSelect($server)
{
    if (isset($server['GAE_SERVICE'])) {
        if (isset($server['GAE_ENV']) && $server['GAE_ENV'] === 'standard') {
            return new GAEStandardMetadataProvider($server);
        }
        return new GAEFlexMetadataProvider($server);
    }
    return new EmptyMetadataProvider();
}

Is this intentional? If so, shouldn't the library set the correct meta data when run on Cloud Run so that ErrorReporting recognizes the exception?
Steps to reproduce

Setup Laravel or similar framework on Cloud Run and catch exceptions:

public function report(Exception $exception)
{
        // Ensure Stackdriver is initialized and handle the exception
        Bootstrap::init();
        Bootstrap::exceptionHandler($exception);
        parent::report($exception);
}

Throw exception.
Check Logs in GC Project, find exception and check for missing service labels.

Environment details

OS: macOS 10.14.6
PHP version: 7.3.14
Package name and version: google/cloud-error-reporting 0.16.1

@jdpedrie Hey, do you have any update on this?

Sorry @niklasravnsborg I don't work on this project anymore. I'm sure someone will weigh in soon though!

Hi @niklasravnsborg! Congratulations, you are the owner of our longest open issue!
I am sorry it's taken so long for someone to take a look at this. Looking at the code, the class should be getting back the expected values from the metadata server, which is available on Cloud Run, App Engine, OR GCE. If you're on any Google platform, those values should be getting populated. This would work if the logger was using the Component/Metadata class, but it isn't because it's calling this class instead, which returns an empty metadata provider.
This should be an easy fix, let me see what i can do.

Okay looking at this more (and thinking about this more), the Bootstrap class calls serviceId and versionId, which do not exist in the Cloud Run environment in the same way as they do in the App Engine environment.
Therefore, if these are values you want populated, I'd say the best approach (right now) would be to use the Google\Cloud\Core\Report\SimpleMetadataProvider class, pass it into an instance of Google\Cloud\Logging\PsrLogger class which would then return your own MetadataProvider class, which could provide the values for serviceId and versionId that you'd like to see.
use Google\Cloud\Core\Report\SimpleMetadataProvider;
use Google\Cloud\Logging\PsrLogger;
use Google\Cloud\ErrorReporting\Bootstrap;

$myServiceId = 'YourServiceID';
$myVersionId = 'YourVersionID';

$metadataProvider = new SimpleMetadataProvider(serviceId: $myServiceId, versionId: $myVersionId);
$psrLogger = (new LoggingClient())
    ->psrLogger(self::DEFAULT_LOGNAME, [
        'metadataProvider' => $metadataProvider
        'batchEnabled' => true,
        'debugOutput' => true,
        'batchOptions' => [
        'numWorkers' => 2
    ]
]);

Bootstrap::init($psrLogger);

In the meantime, there's still work we could do to automatically detect Cloud Run and provide the service. I do not think Cloud Run has the idea of a "version". @glasnt (who wrote the amazing Cloud Run for Laravel Tutorial may know more.

Looks like we can use the K_SERVICE and K_REVISION environment variables to get this information:
$metadataProvider = new SimpleMetadataProvider(serviceId: getenv('K_SERVICE'), versionId: getenv('K_REVISION'));

I can look into adding a class to detect these automatically


WebGlTile in a group always visible

See https://codesandbox.io/s/wms-image-custom-proj-forked-dfc1vm?file=/main.js
The map contains a single layer of type Group (ol/layer/Group).
The group contains a single layer of type WebGlTile  (ol/layer/WebGlTile ).
After 3 seconds the code change the visibility of the group (from true to  false)
=> The WebGlTile layer is still visible !
Note : If I change the type of the layer from WebGlTile  to Tile (ol/layer/Tile), the layer is hidden when the group visibility is set to false. The issue is only for WebGlTile

It looks like this was introduced in #13212.  During rendering, the layer states are calculated so that group visibility is applied to a layer's "own" state.  For WebGL tile layers after #13212, calling layer.getSourceState() now calls layer.getLayerState() which modifies the layer's own state so that it again represents its own visibility.
Generating layer states tries to avoid unnecessary allocation, but the resulting code is fragile due to all of the mutability.  Digging around for a fix...

Proposed fix in #13509.

Thanks for the quick fix !


Compiling in Visual Studio Issue

Hello,
I am trying to compile xgboost in visual studio 2015 (I also tried 2013 express) on a windows 10 64 bit PC.  I download the files in the windows folder, open the solution file, then when prompted I upgrade the files to the current version of visual studio (I did this in both 2015 and 2013), I change to Release and x64, and then I try to build the solution.  I get 18 errors: all basically say things like "Cannot open source file: '....\src\gbm\gbm.cpp': No such file or directory".  They are all different .cpp fies it can't find.
What should I do differently?
Thanks!

I also have Windows 10 64 bit...is that a possible issue?

Anyone know what to do?  I've encountered a few other forums where people have had this issue, but no solutions.
Thanks!

Hello, I figured it out.  What I was doing wrong was only copying out the "Windows" folder from the folders provided.  You need to copy all folders and their relationships to one another before you compile (i.e. you need the src folder).

Glad that it works out for you.


Adding of the NRC Affect Intensity Lexicon

There are more lexicons available that can be potentially added to the website.
For example, the NRC-Affect Intensity Lexicon By Dr. Saif M. Mohammad
The work can be obtained here.
If this can be added to the current lexicons it would be great. The structure of the project should be easy to understand and extend.
References

Word Affect Intensities. Saif M. Mohammad. In Proceedings of the 11th Edition of the Language Resources and Evaluation Conference (LREC-2018), May 2018, Miyazaki, Japan.
Paper (pdf)

If any help is needed, feel free to ask.

Hi, @JianLoong your project is really inspiring me I want to contribute to it how can I get started? also, I need guidance as well on the way.

@Muhammad-Shahid-Jamal
Thank you for your interest.
You can first download the NRC-EIL lexicon from the author's website here
Inside there, should be a file for the emotion and lexicons called NRC-Emotion-Intensity-Lexicon-v1.txt
Basically what you have to do now, is map this information to the ones I have in the project.
https://github.com/JianLoong/sentimentanalysis/tree/main/lexicons
What you need to do now, is transform this information into the format I have for all the other lexicons in there, It doesn't have to be minified for now.
After that, if you take a look at the main.js, it should be pretty straightforward on how to use the workers.
Do tell me if you need more clarification.
Remember to do your work on a feature branch as well.

sounds good kindly assign this issue to me so i can work on it.


fix: e2e missing package and linter

Description

added biome linter and fixed linting errors
added missing faker package
exported findEnv to helper for reusability
using sdk from the package

@patzick Unfortunately in this solution, tests for stackblitz (template and exmaples) will not work


Documentation fixes

Latex docs need updating with latest installation instructions

Read the docs needs fixing

Can CCDC host docs

Remove from readthedocs

Some TLC required


Training gets stuck when cache upload errors.

I Found a new edge case. When you train and try to push to the Trainium cache during training and you get a 500 from the hub during the upload of the neffs, the training gets stuck. My training is stuck now stuck for > 30 minutes and is not finishing.
We should make sure that in case the upload fails the training correctly finishes.
error:
model.neff:  80%|████████████████████▊     | 16.0M/20.0M [00:00<00:00, 51.3MB/s]Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/utils/_errors.py", line 269, in hf_raise_for_status
    response.raise_for_status()
  File "/usr/local/lib/python3.8/dist-packages/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: https://s3.us-east-1.amazonaws.com/lfs.huggingface.co/repos/bf/18/bf18727de0ab9f5939c4b3b52ca9cddeb0389a416e27697a6b48ccd639670f9e/7280eab103853156f8a7cb68aad5f51e6b05e5288e2d63f030ded8efb70ae90a?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4N7VTDGO27GPWFUO%2F20231207%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231207T135039Z&X-Amz-Expires=86400&X-Amz-Signature=18c4306daf63bb4e89f53372e5e05b1b51fa3403604281529730ca0d7be6d1cc&X-Amz-SignedHeaders=host&partNumber=2&uploadId=.SU.MrPlZIcWlMwlHmJ5xZViOvbm4gvxrD5ZWC7aqNjbJ5lKt_gQIpwbCAAX8q32dzzWGrFcZqRnTMo4xdrD671JuIBEIWy6en54pZzChiNfxtATDVT3mq6o2KHpEKB2&x-id=UploadPart

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/_commit_api.py", line 391, in _wrapped_lfs_upload
    lfs_upload(operation=operation, lfs_batch_action=batch_action, token=token)
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/lfs.py", line 222, in lfs_upload
    _upload_multi_part(operation=operation, header=header, chunk_size=chunk_size, upload_url=upload_action["href"])
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/lfs.py", line 318, in _upload_multi_part
    else _upload_parts_iteratively(operation=operation, sorted_parts_urls=sorted_parts_urls, chunk_size=chunk_size)
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/lfs.py", line 375, in _upload_parts_iteratively
    hf_raise_for_status(part_upload_res)
  File "/usr/local/lib/python3.8/dist-packages/huggingface_hub/utils/_errors.py", line 320, in hf_raise_for_status
    raise HfHubHTTPError(str(e), response=response) from e
huggingface_hub.utils._errors.HfHubHTTPError: 500 Server Error: Internal Server Error for url: https://s3.us-east-1.amazonaws.com/lfs.huggingface.co/repos/bf/18/bf18727de0ab9f5939c4b3b52ca9cddeb0389a416e27697a6b48ccd639670f9e/7280eab103853156f8a7cb68aad5f51e6b05e5288e2d63f030ded8efb70ae90a?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA4N7VTDGO27GPWFUO%2F20231207%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231207T135039Z&X-Amz-Expires=86400&X-Amz-Signature=18c4306daf63bb4e89f53372e5e05b1b51fa3403604281529730ca0d7be6d1cc&X-Amz-SignedHeaders=host&partNumber=2&uploadId=.SU.MrPlZIcWlMwlHmJ5xZViOvbm4gvxrD5ZWC7aqNjbJ5lKt_gQIpwbCAAX8q32dzzWGrFcZqRnTMo4xdrD671JuIBEIWy6en54pZzChiNfxtATDVT3mq6o2KHpEKB2&x-id=UploadPart

The above exception was the direct cause of the following exception:

Can you provide the command to reproduce it please?

Sorry I don't have a command. But it could happen with any script. Steps to reproduce would be:

Login into hf.co which account which has access to the trainium cache
run a training
force a 500 error during the upload face of the cached .neff files.


cuda launch bounds, use ptrdiff_t instead of int for indices

For large convs and other operations, int is not large enough for indices. I ran into this when playing with unet3d

Changes made in tinygrad/:
------------------------------------------------------------
files                             insertions       deletions
------------------------------------------------------------
tinygrad/renderer/cstyle.py                1               1
tinygrad/runtime/ops_cuda.py               1               1
------------------------------------------------------------
total                                      2               2
------------------------------------------------------------
lines added in the tinygrad folder: 0

Hmm, so this probably slows things down. Do you have a failing example?

Going to close. Either need to see that this doesn't hit perf or gate it for when it's really needed


Vs Code live server not working

We have written the needed data into your clipboard because it was too large to send. Please paste.

Can you paste the log on here so we can access the issue.


lua version mismatch?

Running w/ lua5.4 I am getting the following error ./scripts/social-network/read-user-timeline.lua: error loading module 'socket.core' from file '/usr/lib64/lua/5.4/socket/core.so'
I don't see a mention of what version of lua to stuck with? Is it possibly < 5.4?
   Lua:
      Version    : 5.4
      Interpreter: /usr/bin/lua (ok)
      LUA_DIR    : /usr (ok)
      LUA_BINDIR : /usr/bin (ok)
      LUA_INCDIR : /usr/include (ok)
      LUA_LIBDIR : /usr/lib64 (ok)

I see references to 5.3 and 5.1 ?

Yeah I met the same issue, I changed from 5.3 to 5.1, and it works.


python310Packages.whisper-ctranslate2: init at 0.2.7

Description of changes
addition to the existing packages.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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.

Result of nixpkgs-review pr 240833 run on x86_64-linux 1

2 packages built:

python310Packages.whisper-ctranslate2
python310Packages.whisper-ctranslate2.dist

This looks more like an application than a library, should it be under python310Packages?

you're right this doesn't export a python module at all.
I've moved it to the tools audio section instead.


[Sept Sprint] Card Tricks

This is part of our September Spring to get the Go Track in shape. Please read the Overview issue for more details. This exercise is unclaimed. To claim it, please comment below.

[x] https://github.com/exercism/go/issues/1600
[x] https://github.com/exercism/go/issues/1564
[x] https://github.com/exercism/go/issues/1566
[x] https://github.com/exercism/go/issues/1567
[x] https://github.com/exercism/go/issues/1619
[ ] https://github.com/exercism/go/issues/1565
[x] https://github.com/exercism/go/issues/1620

I already took care of the first part of this so I can take the rest as well.

Last issue is blocked on an implementation of bird-watcher introducing for-loops.

The instructions don't mention what to do with out of bound values (negative and >= len(slice)).
Should this be added?

The instructions don't mention what to do with out of bound values (negative and >= len(slice)).

Added #1743

Thanks @jmrunkle