The collapse query does not support multiple inner_hit conditions

Please use the following questions as a guideline to help me answer
your issue/question without further inquiry. Thank you.
Which version of Elastic are you using?

[x] elastic.v7 (for Elasticsearch 7.x)
[ ] elastic.v6 (for Elasticsearch 6.x)
[ ] elastic.v5 (for Elasticsearch 5.x)
[ ] elastic.v3 (for Elasticsearch 2.x)
[ ] elastic.v2 (for Elasticsearch 1.x)

The elasticsearch query statement I want is like this
{
  "_source": {
    "includes": [
      "flow_id"
    ]
  },
  "aggregations": {
    "collapse_count": {
      "cardinality": {
        "field": "collapse_field.keyword",
        "precision_threshold": 40000
      }
    }
  },
  "collapse": {
    "field": "collapse_field.keyword",
    "inner_hits": [
      {
        "name": "severity",
        "size": 0
      },
      {
        "name": "result",
        "size": 0
      }
    ]
  },
  "from": 0,
  "query": {
    "bool": {
      "must": {
        "exists": {
          "field": "collapse_field"
        }
      }
    }
  },
  "size": 10,
  "sort": [
    {
      "timestamp": {
        "order": "desc",
        "unmapped_type": "long"
      }
    }
  ]
}

Note that inner_hits is an array.There are also corresponding usage methods in the official documents:
https://www.elastic.co/guide/en/elasticsearch/reference/7.0/search-request-collapse.html
like this:
{
    "query": {
        "match": {
            "message": "elasticsearch"
        }
    },
    "collapse" : {
        "field" : "user",
        "inner_hits": [
            {
                "name": "most_liked",
                "size": 3,
                "sort": ["likes"]
            },
            {
                "name": "most_recent",
                "size": 3,
                "sort": [{ "date": "asc" }]
            }
        ]
    },
    "sort": ["likes"]
}

But I found that in the implementation of CollapseBuilder, innerHit can only be an object and not an array.
type CollapseBuilder struct {
	field                      string
	innerHit                   *InnerHit
	maxConcurrentGroupRequests *int
}

When I tried to write elastic.NewCollapseBuilder().InnerHit().InnerHit(), I found that the inner_hit in the last query statement would be overwritten by the last one.
I am eager to know if there is a problem with my writing method or it is not yet supported that inner_hit is an array.
Thank you so much!

Upgrading the version can solve this problem


include openmp and mpi example programs in repository

Such examples will facilitate testing the affinity binding on hpc machines

available in example-scripts/affinity.


Android SDK/NDK Install Error on MacOS Images

Description
Starting around Jan 23rd, 2023, our MacOS 12 images are failing to install the Android NDK with this error:
2023-01-30T17:56:32.9363400Z + /Users/runner/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager --install 'ndk;22.1.7171670'
2023-01-30T17:56:33.1477830Z Error: A JNI error has occurred, please check your installation and try again
2023-01-30T17:56:33.1484110Z Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/prefs/AndroidLocationsProvider has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
2023-01-30T17:56:33.1492600Z 	at java.lang.ClassLoader.defineClass1(Native Method)
2023-01-30T17:56:33.1493190Z 	at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
2023-01-30T17:56:33.1493800Z 	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
2023-01-30T17:56:33.1494360Z 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
2023-01-30T17:56:33.1494890Z 	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
2023-01-30T17:56:33.1495430Z 	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
2023-01-30T17:56:33.1495930Z 	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
2023-01-30T17:56:33.1496420Z 	at java.security.AccessController.doPrivileged(Native Method)
2023-01-30T17:56:33.1496920Z 	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
2023-01-30T17:56:33.1497430Z 	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
2023-01-30T17:56:33.1497950Z 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
2023-01-30T17:56:33.1498460Z 	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
2023-01-30T17:56:33.1498940Z 	at java.lang.Class.getDeclaredMethods0(Native Method)
2023-01-30T17:56:33.1499430Z 	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
2023-01-30T17:56:33.1499960Z 	at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
2023-01-30T17:56:33.1502380Z 	at java.lang.Class.getMethod0(Class.java:3018)
2023-01-30T17:56:33.1502870Z 	at java.lang.Class.getMethod(Class.java:1784)
2023-01-30T17:56:33.1503430Z 	at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:650)
2023-01-30T17:56:33.1504010Z 	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:632)

This looks like duplicates of #6960 and #6985. It also looks like this issue was possibly fixed in PR #6965, but I don't see if/where this fix was merged into a recent release. Would appreciate any guidance with this 😊
Platforms affected

[X] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[X] macOS 11
[X] macOS 12
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
As of recently, the failure is occurring with:
Runner Image
Image: macos-12
Version: 20230117.3
Included Software: https://github.com/actions/runner-images/blob/macOS-12/20230117.3/images/macos/macos-12-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/macOS-12%2F20230117.3

Around Jan 24th, the failure was occurring with this image (which seems to no longer exist):
Runner Image
Image: macos-12
Version: 20230120.1
Included Software: https://github.com/actions/runner-images/blob/macOS-12/20230120.1/images/macos/macos-12-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/macOS-12%2F20230120.1

Is it regression?
It looks like the last pass of our pipeline was on Jan 20th, 2023, but also with MacOS-12 Version 20230117.3.
Expected behavior
Expected output is that the NDK installs properly.
ExpectedOutputForAndroidNDKInstall.txt
Actual behavior
The current output is that the NDK install fails with the error I mentioned above.
FailureOutputForAndroidNDKInstall.txt
Repro steps
Repro Steps:

Spin up a new macos-latest image. This should currently point at macos-12 v20230117.3.
Attempt to install Android NDK r22b, 22.1.7171670.
NDK install will fail with the above error.

@SahilAshar please sync your main, these fixes are merged :)

Thanks for the updates y'all!
@mikhailkoliada as I mentioned in the issue, we're using this through one of the Microsoft-hosted agents on ADO, so no way for us to update it on our own unfortunately. But based on what @bogdan-damian-bgd is saying, we should expect a new release of the MacOS image this week?
We've been unable to validate our Android releases in our pipelines for the last week or so due to the broken image, so any help getting out a fix out would be greatly appreciated :)

Hi @mikhailkoliada & @bogdan-damian-bgd -
Our ADO pipelines have updated to the newest MacOS-12 image y'all released.
Image: macos-12
Version: 20230205.1
Included Software: https://github.com/actions/runner-images/blob/macOS-12/20230205.1/images/macos/macos-12-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/macOS-12%2F20230205.1

Unfortunately, it looks like this failure is still occurring, with the exact same logs I've attached above. Any assistance with this would be appreciated.


Setting "sidebar.enabled" to stops code completion from working

OS X 10.13.3
Oni 0.3.0
Setting "sidebar.enabled": false in my oni config stops code completion from working
This issue may be fixed by https://github.com/onivim/oni/pull/1555 , I'll build from source and double check it tomorrow.

I can confirm that this is no longer issue on the latest commit (92d3f9ab).


Enable npm package usage in browser

Currently when we include the npm file in the browser, we get a message 'Uncaught ReferenceError: module is not defined'. This PR fixes this problem, while also keeping normal usage working just fine.
Reason we are moving to NPM is because we have the ability to use npm outdated to see if we need to update, and we are required to take all the externally referenced files into our own code repository to better handle the maintenance on our production environment.

Also will love to see this commit in the base branch.

Thanks! This looks very good. I did not know about this issue.

Thanks! Can you notify when you update the npm version? :)

Yes! I make some other changes and hope i update it today or tomorrow. I'll tell you.
On Sep. 10 2019, at 11:09 am, Kees Wiegel<EMAIL_ADDRESS>wrote:

Thanks! Can you notify when you update the npm version? :)
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub (https://github.com/browser-update/browser-update/pull/445?email_source=notifications&email_token=ACASWKXVT5FKI4CO46JO53DQI5P3FA5CNFSM4ITDWINKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6KM6AI#issuecomment-529846017), or mute the thread (https://github.com/notifications/unsubscribe-auth/ACASWKQSHEQE7WMEZ5SVMBLQI5P3FANCNFSM4ITDWINA).


Running pxt electron * throws errors on Windows

Attempting to run pxt electron run or pxt electron package throws errors:

when the cli tries to run the local gulp command: 'C:\Users\Adam' is not recognized as an internal or external command, operable program or batch file.
Workaround:
a. install gulp globally
b. change the cli to call the global gulp command

when npm 5.x is installed: [...]/pxt-microbit/node_modules/caniuse-db is not a child of [...]/pxt/electron/src
Workaround:
a. use npm 4.6.1

when the cli tries to run the local gulp command: 'C:\Users\Adam' is not recognized as an internal or external command, operable program or batch file.

It looks like you might have a space in your path, right after "Adam" - I think the real fix would be to properly escape that path instead of shifting to use the global gulp

Creating a user without spaces (...\adamc... instead of ...\Adam Carriere...) and running pxt electron * avoids the global gulp issue.
I'm going to close this issue and PR #2435.


LightGBM fails linear classification task

I am not filing this as a bug because I am pretty sure the error is on my side.
I am trying to use LightGBM for a small toy classification example (sklearn iris dataset reduced to two classes and two features) that is linearly separable. LightGBM however fails to find an optimal separation between the examples used for training while the GradientBoostingClassifier integrated in sklearn does not seem to have a problem with this task:

The only parameter that seems to have a visible effect on the result is the number of trees that should be learned. I am however unable to find any combination of num_trees, num_leaves, max_depth, and learning_rate that allows a perfect fit to the training data. Most other available parameters LightGBM provides are only useful for dealing with overfitting while I am (more or less) underfitting so they do not seem useful to me.
What am I doing wrong?
How can I convince LightGBM to fit to the presented training data?
Thank you in advance.
The behaviour is identical with versions 2.3.1 and 3.0.0.
Here is the code used to generate the above image (the functions are only used to draw the dataset and the decision boundary and can be considered 'noise'):
from sklearn.datasets import load_iris
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import LabelEncoder

from lightgbm.sklearn import LGBMClassifier

from matplotlib.colors import ListedColormap

import matplotlib.pyplot as plt
import numpy as np

# Functions for drawing classification result and decision boundary
def meshgrid(X):
    step_size = 0.02
    x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5
    y_min, y_max = X[:, 1].min() - .5, X[:, 1].max() + .5
    return np.meshgrid(np.arange(x_min, x_max, step_size),
                       np.arange(y_min, y_max, step_size))

def meshdata(X):
    xx, yy = meshgrid(X)
    return np.c_[xx.ravel(), yy.ravel()]

def plot_decision_boundary(ax, cls, X):
    xx, yy = meshgrid(X)
    data = meshdata(X)

    Z = cls.predict_proba(data)
    if Z.shape[1] > 1:
        Z = Z[:, 1]

    Z = Z.reshape(xx.shape)
    ax.contourf(xx, yy, Z, cmap=plt.cm.RdBu, alpha=0.6)

def plot_classification(ax, cls, X, y):
    plot_decision_boundary(ax, cls, X)

    y_pred = cls.predict(X)
    score = accuracy_score(y, y_pred)

    X_correct = X[y_pred == y]
    X_wrong = X[y_pred != y]

    y_correct = y[y_pred == y]
    y_wrong = y[y_pred != y]

    ax.scatter(X_correct[:, 0], X_correct[:, 1], c=y_correct, cmap=plt.cm.RdBu, alpha=0.4)
    ax.scatter(X_wrong[:, 0], X_wrong[:, 1], c=y_wrong, s=90, edgecolor='k',
               cmap=ListedColormap(['#FF0000', '#0000FF']), marker='X')

    ax.text(X[:, 0].max() - .3, X[:, 1].min() - .2, ('%0.2f' % score).lstrip('0'),
            size=15, horizontalalignment='right')

# Training the classifiers
n_estimators = 1
n_leaves = 8
max_depth = 4
learning_rate = 1

classes = [1, 0]
features = [2, 0]

iris = load_iris()

mask = [x in classes for x in iris.target]

X = iris.data[mask][:, features]
y = iris.target[mask]

le = LabelEncoder()
le.fit(y)
y = le.transform(y)

sklearn_cls = GradientBoostingClassifier(n_estimators=n_estimators, max_depth=max_depth, max_leaf_nodes=n_leaves,
                                         learning_rate=learning_rate, verbose=2)
sklearn_cls.fit(X, y)

lgbm_cls = LGBMClassifier(n_estimators=n_estimators, max_depth=max_depth, num_leaves=n_leaves,
                          learning_rate=learning_rate, verbosity=2)

lgbm_cls.fit(X, y)

fig = plt.figure()
ax = plt.subplot(1, 2, 1)
ax.set_title("Sklearn Gradient Boosting")

plot_classification(ax, sklearn_cls, X, y)

ax = plt.subplot(1, 2, 2)
ax.set_title("LightGBM")

plot_classification(ax, lgbm_cls, X, y)

plt.show()

I guess the data is very small . And you can try min_data=1 and min_bin_in_bin=1

Thank you so much. Setting min_data_in_bin=1 solved my issue.


New Page: Database statistics

The idea would be to build a page to check some data form the database, without access to specific brews or authors.
We could check things like:

brews per day/month/year
brews per day/month/year
brews per author per day/month/year
brews without author per day/month/year
new accounts per day/month/year

And so on.

We will probably want to build it using $facet and $search  aggregation pipelines, which only work on deployments, so cannot test in local.


Images loading one by one.

Here is the problem that I am facing. http://g.recordit.co/giZacSFRNc.gif
Any help is appreciated!
thanks
Here is my html and javascript
HTML-

              <% @medias.each_with_index do | media,index | %>

                img src="<%= "http://#{media["path"]}/#{media["key"]}.jpg?w=10000&h=600&fit=clip" %>"

                <%= index+1<EMAIL_ADDRESS><%=media["caption"]%>

          <%end%>

JS-
$('#variable-width').slick({
dots: false,
infinite: true,
speed: 300,
slidesToShow: 1,
variableWidth: true,
arrows:true,
centerMode: true,
centerPadding: '2px',
slidesToShow: 3,
asNavFor: '.slider-nav',
});

You could perhaps take a look at using lazyloading.

I did try that also , but no luck~


run.js

Sprig is a good platform to learn and program!!! I have learnt so much experiences in this project. Thank you for made this platform!!!

Author name
Author: Nguyễn Gia Bách
About your game
What is your game about? Endless runner
How do you play your game? Press WASD to control the character to dodge the missiles and gain as many points as possible!
Code
Check off the items that are true.

[x]  The game was made using the Sprig editor.
[x]  The game is placed in the in the /games directory.
[x]  The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x]  The game runs without errors.
[x]  The name of the file/game contains only alphanumeric characters, -s, or _s.
[x]  The game name is not the same as the others from gallery

Image (If an image is used)

[ ]  The image is in the /games/img directory.
[ ]  The name of the image matches the name of your file.


Changed parameters.ini to parameters.*.

Symfony 2.0.4 changed standard to using a parameters.yml file, so this change allows for both variants.

Change to parameters.yml had been rolled back out of 2.0.x releases, but is in upcoming 2.1 release.


promolecule.get_attachment_points function messed up

Function currently returns:
return tuple(self.yield_attachment_points(self))
Needs to be rewritten as
return tuple(self.yield_attachment_points())

Been addressed in previous updates


SPECULAR_AMOUNT is already defined

I download this shader and import to my project.
However, I got this error.
I don't know what happened about it.

A couple of people have been having this problem as of lately, I don't know if it's because there has been an update or something but I should have fixed it already. I'll take a look as soon I'm able, thanks for posting an issue here.


Application deploy

I deployed my project earlier than the exercise, so this is the online version of my project. (It is also in the demo link of the readme)

Hi @blueberry1312 ,
STATUS: APPROVED! 🥇🟢🟢💯

Your project is complete!  There is nothing else to say other than... it's time to merge it :ship it:
Congratulations! 🎉
Highlights💯🎈🪄✔

[x] Beautiful UI. ✔
[x] Nice design.✔

Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Understanding the error about the model

I would like to understand why the model works while using static images and doesn't work using the camera.
Remembering this comment you made in the other issue I created, I knew the code worked using file images but camera images doesn't work.
He're two examples:

File running example
example image.zip

Camera not valid example:
example camera.zip
        With the model you provided I am able to falsh and watch the serial console logs. I don't see model loading section in your flash logs. please check the sketech folder and place model inside data folder.  Thanks!!!

Look like the model does not work with Dev Board Micro!! There are two subgraphs in the model, can you try with one subgraph?
serial consoel logs:

flash logs:
	Section: 0x0
iMX bootable image generated successfully
Boot Section 0x00000000:
  FILL | adr=0x00010000 | len=0x00000004 | ptn=0xc2000105
  FILL | adr=0x00010004 | len=0x00000004 | ptn=0x00010020
  FILL | adr=0x00010008 | len=0x00000004 | ptn=0x00040004
  FILL | adr=0x0001000c | len=0x00000004 | ptn=0x00080004
  FILL | adr=0x00010020 | len=0x00000004 | ptn=0xc0010021
  ENA  | adr=0x00010000 | cnt=0x00000004 | flg=0x0110
  ERAS | adr=0x00000004 | cnt=0x00000004 | flg=0x0110
  ERAS | adr=0x00000008 | cnt=0x00000004 | flg=0x0110
  ERAS | adr=0x0000000c | cnt=0x00000040 | flg=0x0110
  LOAD | adr=0x00000004 | len=0x000178c4 | crc=0xe89368d6 | flg=0x0110
  LOAD | adr=0x00000008 | len=0x000178c4 | crc=0x849acdbd | flg=0x0110
Inject command 'receive-sb-file'
Preparing to send 193264 (0x2f2f0) bytes to the target.

Successful generic response to command 'receive-sb-file'
Response status = 0 (0x0) Success.
Wrote 193264 of 193264 bytes.
Finding all necessary files
Creating Filesystem
STATE_CHECK_FOR_ANY
STATE_CHECK_FOR_CORAL_MICRO
STATE_RESET_TO_SDP
STATE_CHECK_FOR_SDP
STATE_LOAD_FLASHLOADER
STATE_CHECK_FOR_FLASHLOADER
STATE_PROGRAM
STATE_LOAD_ELFLOADER
STATE_PROGRAM_DATA_FILES
OpenHidDevice vid=18d1 pid=9307 ...
OpenHidDevice vid=18d1 pid=9307 opened
Transferring /highwayframe.rgb
/highwayframe.rgb 10%
/highwayframe.rgb 20%
/highwayframe.rgb 30%
/highwayframe.rgb 40%
/highwayframe.rgb 50%
/highwayframe.rgb 60%
/highwayframe.rgb 70%
/highwayframe.rgb 80%
/highwayframe.rgb 90%
/highwayframe.rgb done
Transferring /models/yolov5s-int8-224_edgetpu.tflite
/models/yolov5s-int8-224_edgetpu.tflite 10%
/models/yolov5s-int8-224_edgetpu.tflite 20%
/models/yolov5s-int8-224_edgetpu.tflite 30%
/models/yolov5s-int8-224_edgetpu.tflite 40%
/models/yolov5s-int8-224_edgetpu.tflite 50%
/models/yolov5s-int8-224_edgetpu.tflite 60%
/models/yolov5s-int8-224_edgetpu.tflite 70%
/models/yolov5s-int8-224_edgetpu.tflite 80%
/models/yolov5s-int8-224_edgetpu.tflite 90%
/models/yolov5s-int8-224_edgetpu.tflite done
Transferring /default.elf
/default.elf 10%
/default.elf 20%
/default.elf 30%
/default.elf 40%
/default.elf 50%
/default.elf 60%
/default.elf 70%
/default.elf 80%
/default.elf 90%
/default.elf done
Transferring /usb_ip_address
/usb_ip_address done
STATE_RESET_TO_FLASH
OpenHidDevice vid=18d1 pid=9307 ...
OpenHidDevice vid=18d1 pid=9307 opened
Flashing to flash storage complete, the device is restarting to execute your application.

Originally posted by @hjonnala in https://github.com/google-coral/coralmicro/issues/45#issuecomment-1601108395

I haven't seen that error before. Can you try the same script with the different models..

Different edgetpu model from coral example.
uncompiled yolo tflite model
edgetpu compiled model with only one subgraph (i.e compile the model without -a flag)

Hello, I solved it using an interesting method, but I don't think it is running the model correctly (at least it runs now).
The model loading error happens when I pass the grabbed image directly to the input_tensor:
    if (Camera.grab(tflite::GetTensorData<uint8_t>(input_tensor)) != CameraStatus::SUCCESS) {
      Serial.println("cannot invoke because camera failed to grab frame");
      return;
    }

Doing like this, it actually runs the model, I just need to check if the image is being inferenced the right way:
// creating frame_buffer inside the namespace
FrameBuffer frame_buffer;

// in while loop
    if (Camera.grab(frame_buffer) != CameraStatus::SUCCESS) {
      Serial.println("cannot invoke because camera failed to grab frame");
      return;
    }
    std::memcpy(tflite::GetTensorData<uint8_t>(input_tensor), frame_buffer.getBuffer(), frame_buffer.getBufferSize());

One thing I noted is that I was using raw rgb images when testing the model inference, but the I think the camera is grabbing a BGR formatted image (even if I created the Camera instance using coralmicro::CameraFormat::kRgb).
I'll try it out too.

I can't be 100% sure about the problem that happens using the camera directly, but I suspect the first frames are not valid and then the neural network buffer does not match with the image dimensions.
The image format using kRgb works fine, I was using it the wrong way.
Thanks for the responses, I'll keep this thread updated if I find something out.


refactor: remove redundant e2e tests and organize

This is phase 1 of dealing with the e2e tests, where I am handling first the redundant tests. The next phase will start to port over non-redundant tests.
For reference, the doc regarding the state of e2e tests are here: https://hackmd.io/QiOaGHBlS9W_A-ZCU6tpag?view
A quick summary of changes:

Consolidate, organize, and remove redundant cross_chain tests into the multi-stage test
Remove counter e2e test
Port and remove auth e2e test

Docs Preview
Hey there! 👋 You can check your preview at https://66e83c98e030c7045bba552f--aztec-docs-dev.netlify.app


Integrity checking

Integrity checking is to check all required conditions are met when completing the spec. we can add more. right now, add checking the components replicas meet the desired number.
Signed-off-by: clyang82<EMAIL_ADDRESS>

/retest

/retest

/retest

/retest

/assign @songleo

/retest


[nomerge] [WIP] make Xen compatible with EFI booting

This is my attempt at fixing #12225 and it supersedes the attachment in that issue.  I do not claim it's ready for merge yet or even that it works

it looks like I have to enhance gummiboot-builder.py to include xen-specific config in the same way as install-grub.pl does for legacy boots

This boots and runs under VirtualBox, modulo some kind of framebuffer corruption that makes the console unreadable.  I can't presently use it on real hardware, because my laptop (2012-era Samsung) is now having a major sulk about booting anything in EFI mode and I've had to reinstall it using CSM.
That being so, I actually have no immediate use for any of this work.  If anyone wants to pick it up and try it/take it over/report back, all those options are acceptable to me ;-)
total 0
-r--r--r--  1 root root 4096 Jan 11 09:10 config_table
drwxr-xr-x  2 root root    0 Jan  8 16:08 efivars
-r--r--r--  1 root root 4096 Jan 11 09:10 fw_platform_size
-r--------  1 root root 4096 Jan 11 09:10 systab
drwxr-xr-x 52 root root    0 Jan  8 16:08 vars

[dan@snot1:~/nixpkgs]$ ls -l /proc/xen/
total 0
-r--r--r-- 1 root root 0 Jan  8 16:08 capabilities
-rw------- 1 root root 0 Jan  8 16:08 privcmd
-rw------- 1 root root 0 Jan  8 16:08 xenbus
-rw------- 1 root root 0 Jan  8 16:08 xsd_kva
-rw------- 1 root root 0 Jan  8 16:08 xsd_port

Any progress?

See also https://github.com/jakogut/xen-igvtg-aur/blob/master/xen_efi_build.patch

Apparently the task turned out to be even more complicated than expected… Closing, as I guess any new effort will be different enough to be a new PR.


Failed to import and requireModeAllowList

I would just like to understand better and maybe discuss any improvements on a common issue that looks like:
The requested module '....' does not provide an export named '...'

Searching for similar issues here I see the solution happens to be to add the package into requireModeAllowList. Could someone please explain the root cause of the error and how adding requireMode argument solves it. Sorry, I'm new to esm.sh.
Also, maybe it would be useful to add query string parameter to force requireMode without hardcoding failing packages?

The requireMode imports npm packages in the node process, that is not safe if we allow any packages to do that. you can make a pr to update the requireModeAllowList, but only safe/popular packages will be approved.


Add component atlas count to Atlas list and make it link to the atlas' component atlas list

Approach

Similar to the list of Source Datasets
Aggregate the component atlases count in the atlas' query.
Add to the API
Add to the table after the source dataset count
Make it a link to atlas/id/component-atlases

Compllete


Comment out flaky test

Signed-off-by: John Mazanec<EMAIL_ADDRESS>Description
This PR comments out the flaky test to prevent integration tests from failing. This is a minor test that checks to see if the graph_query_errors stat is getting incremented on error.
Added information in a comment above the test:

// This test case intended to check whether the "graph_query_error" stat gets incremented when a query fails.
// It sets the circuit breaker limit to 1 kb and then indexes documents into the index and force merges so that
// the sole segment's graph will not fit in the cache. Then, it runs a query and expects an exception. Then it
// checks that the query errors get incremented. This test is flaky:
// https://github.com/opensearch-project/k-NN/issues/43. During query, when a segment to be
// searched is not present in the cache, it will first be loaded. Then it will be searched.
//
// The problem is that the cache built from CacheBuilder will not throw an exception if the entry exceeds the
// size of the cache - tested this via log statements. However, the entry gets marked as expired immediately.
// So, after loading the entry, sometimes the expired entry will get evicted before the search logic. This causes
// the search to fail. However, it appears sometimes that the entry doesnt get immediately evicted, causing the
// search to succeed.

Issues Resolved
#43
Check List

[x] Commits are signed as per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@0094dee). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #54   +/-   ##
=======================================
  Coverage        ?   82.48%
  Complexity      ?      474
=======================================
  Files           ?       69
  Lines           ?     1821
  Branches        ?      178
=======================================
  Hits            ?     1502
  Misses          ?      257
  Partials        ?       62

Continue to review full report at Codecov.

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


Fallback to guess_host_triple if rustc -vV failed

Signed-off-by: Jiahao XU<EMAIL_ADDRESS>

What are the circumstances that actually cause rustc -vV to fail? This feels like an edge case that isn't worth 30 seconds of build time - https://github.com/cargo-bins/cargo-quickinstall/pull/149#issuecomment-1407688462

What are the circumstances that actually cause rustc -vV to fail? This feels like an edge case that isn't worth 30 seconds of build time - https://github.com/cargo-bins/cargo-quickinstall/pull/149#issuecomment-1407688462

Well, it fails when rustc isn't present.
If we can assume rustc always prrsent, then we can revert this.

I don't think we provide any instructions for installing cargo-quickinstall without using cargo. We also install things into a place that would only be in your $PATH if you are using rust, and if something isn't installed then we fallback to using cargo install.
It seems reasonable to assume that cargo and rustc are installed. It might be worth going around and adding nice error messages for when our runtime dependencies aren't available.


Avalanche.Flatten causes code explosion

Flatten duplicates a lot of code.
This should be easily fixed.
let x = Bool_fold a b c;
stmts;

actually becomes
if c {
 let x = a;
 stmts;
} else {
 let x = b;
 stmts;
}

however we should introduce a mutable variable instead:
alloc x$acc = <default>;
if c {
  write x$acc = a;
} else {
  write x$acc = b;
}
read x = x$acc;
stmts;

The same is true of other folds.

agree completely. No target compiler will do this lifting-out-of-conditional transformation.

:potable_water:

@HuwCampbell do you want to take a look at this?
I think you'll only need to modify Icicle.Avalanche.Statement.Flatten, and the important part is actually flatFold which converts a primitive fold over various types to ifs and stuff.
I believe the array and map and loopy folds are already decent, but the Bool, Option and Sum need some love.
It's a pretty weird transform - it's like it has to do everything inside out to build up the loop nest in the right way, while changing the primitive types. There must be a simpler way to do it, but I didn't find it.
So in
  flatFold Core.PrimFoldBool _ [then_, else_, pred]
   = flatX' pred
   $ \pred'
   -> If pred'
        <$> flatX' then_ stm
        <*> flatX' else_ stm

Here, flatX' :: Exp Core -> (Exp Flat -> FlatM (Statement Flat)) -> …
That is, it takes an expression with Core primitives, converts it to a flattened primitives, then passes that to the callback.
In this case stm is the "rest of the computation", like what happens with the result of the Bool fold.
I guess we want something like
  flatFold Core.PrimFoldBool _ [then_, else_, pred]
    -- Convert all the arguments. Sorry, this is weird
   = flatX' pred
    $ \pred'
    -> flatX' then_
     $ \then_'
    -> flatX' else_
     $ \else_'
    -> do -- Fresh name for accumulator and result.
            -- We can use same name for acc & result variables because accumulators and variables are in different scopes
           acc <- fresh
           -- Compute the rest of the computation, assuming we've stored result in variable named acc
           stm' <- stm (xVar acc)
           -- Perform if and write result
           let if_ =  If pred' (Write acc … then_)
                                    (Write acc … else_)
           -- After if, read back result from accumulator and then go do the rest of the statements
           let read_ = Read acc acc … stm'
           return (InitAccumulator (Accumulator acc … defaultOfType …) (if_ <> read_))

That's the rough idea. I hope I don't appear to be condescending by going into so much detail. I have no doubt that you would figure it out, but this is just a particularly gnarly transform

Sure

Done


allow setting breakpoints in zig source files

this is useful when debugging using the c++ extension

This functionality is provided by debugger extensions like CodeLLDB


Add telemetry event for general settings

Summary of the Pull Request
Added telemetry event on applying general settings. Updated runner launch event with elevated value.

PR Checklist

[x] Applies to #1252

Nice work, I liked the code refactoring. Only two small changes and we should be good to merge.


Add GetEnantiomer and IsMolChiral

What does this implement/fix? Explain your changes.
This PR implements two functions: GetEnantiomer and IsMolChiral. The first function generates the enantiomer for a given molecule and returns None if no enantiomer exists for the molecule. The second function uses the first function to determine whether or not a molecule is chiral.
Any other comments?
I'm not completely sure about how I organized all the files since this is the first I have contributed to this repository. All feedback is welcome!

Do you guys think I should also write some tests for these functions?

It should work. On all the molecules I have tested, it works.

Do you guys think I should also write some tests for these functions?

Do you guys think I should also write some tests for these functions?

Related to your request, if your function contained several if/else that could change the result, it is required to make some tests out of them. Otherwise, you just need to write one test to check whether it functioning properly and result matched your expectations. You can also try a push a small dataset in .csv to test it

Do you guys think I should also write some tests for these functions?
@Polydynamical
In general, I found it very interestingly. There are some suggestions from me that you can consider

Merge two functions into one Python file, you can named it as MolChiral.py.

[Not recommended, but worth to test] In the __init__.py, you can make something as from rdkit.Chem.MolChiral import *

The function named GetChirality is not a good name. You can consider GetChirality() to be IsMolChiral() which matched the RDKit's scheme better. You can adjust the name GetEnantiomers() to be GetEnantiomer, as it only returned one molecule only

Add a warning in GetEnantiomer if it does not found your 'Enantiomer'. You can try the function warning in from logging import warning.

If you want to further develop this project, you may want to rename function GetEnantiomer() to be _GetEnantiomer() (make it protected, add documentation), and make its public version to be better.

Your function GetChirality() should change doc from returns the chirality of a molecule. Return True if the molecule is chiral and False if it is not.  to be returns whether the molecule is chiral. Return True if the molecule is chiral and False if it is not.

You may want to test the molecule with either hydrogen or not

Suggestion:
In the file MolChiral.py, you can make something as this: (I did not add doc yet.)

def _GetEnantiomer(m, forceHs: bool = False, silent: bool = False):
   """ ** Your doc here ** """
   m1 = Chem.AddHs(m) if forceHs else rdchem.Mol(m)
   AllChem.EmbedMolecule(m1) # Make sure molecule is in 3D
   m_b = Chem.MolToMolBlock(m1)

   # Reflect the molecule across the origin
   m_b = m_b.replace("-", "+").replace("    ", "   -").replace("+", " ")
   m2 = Chem.MolFromMolBlock(m_b)

   # If an enantiomer does not exist, return None
   if forceHs and Chem.MolToSmiles(m1) == Chem.MolToSmiles(Chem.AddHs(m2)):
         if not silent:
            warning(" **Your message here** "
         return None
   elif not forceHs and Chem.MolToSmiles(m1) == Chem.MolToSmiles(m2):
         if Chem.MolToSmiles(m1) == Chem.MolToSmiles(Chem.AddHs(m2)):
             if not silent:
                  warning(" **Your message here** ")
             return None
         else:
             return m2
         return None
   return m2

def IsMolChiral(m, forceHs: bool) -> bool:
   """ ** Your doc here ** """
   return _GetEnantiomer(m, forceHs=forceHs, silent=True) is not None

def GetEnantiomer(m, forceHs: bool, silent=False):
   """ ** Your doc here ** """
   return _GetEnantiomer(m, forceHs=forceHs, silent=silent)

Hi @Polydynamical,
Thanks for the contribution!
Before I start making suggestions about implementation or nomenclature, It would help if you could explain what problem you are trying to solve with these two new functions, i.e. what you believe your functions are doing.
And, to answer the question you asked: yes, in order for contributions which add new functionality (or which fix existing bugs in existing functionality) to be accepted, there need to be tests in place which verify that the changes actually do what is expected.

Note the two checks above did not pass since there was an error downloading the Avalon toolkit (unrelated to this PR)

This would be a great feature to get implemented so I'm happy to get any feedback! @greglandrum

Note the two checks above did not pass since there was an error downloading the Avalon toolkit (unrelated to this PR)

I am not the main contributor or the reviewer of the RDKit library. You may want to ask Greg @greglandrum for his help. But based on my observation, doing SMILES comparison is not an optimal way to tackle your problem.

Thanks for your response! I'll make sure to let @greglandrum know ;).
Apologies for the confusion with the SMILES word... there is no operation being done on the SMILES string but everything happens in the mol/molblock format.

Thanks for the suggestion. Before I go through the code in detail, I think this needs an explanation of how it is different from the stereoisomer enumeration and stereo center enumeration code which is already present in the RDKit

Thanks for the response! In chemistry, a stereoisomer refers to a whole class of different 3D arrangements of atoms. I.e. same atoms and bonds but different configurations. However, there are a bunch of types of stereoisomers: diastereomers, cis-trans and e-z isomerism, conformers, anomers, atropisomers, etc and enantiomers. Although the stereoisomer enumeration code you are referring to may generate the enantiomers these functions produce, it does not distinguish the type of stereochemistry. In other words, the functions in this PR specifically create one type of stereoisomer: the enantiomer. See above comment for explanation of why such enantiomers are important.
Let me know if you need further clarification/explanation.

@Polydynamical I would be surprised if most people reading this don't know very well what an enantiomer is.  It's basic chemistry, after all.  The issue we are trying to understand is what additional functionality your PR would bring to the toolkit beyond what is already there.  The RDKit already has a comprehensive set of functions for identifying enantiomers and I would be surprised if your algorithm, by relying on comparing SMILES strings, would capture anything that they miss.  This is mainly because SMILES strings have very limited abilities to show chirality other than tetrahedral chirality at carbons, which the RDKit has very well covered already.  SMILES strings can't capture conformational chirality of the sort exhibited by helicene, for example, or hindered rotations at ortho-substituted bi-phenyls, so your method won't identify those.
On a technical level, why are you doing the inversion of the coordinates by string manipulation?  I would imagine that it would be more reliable and efficient to just multiply the conformer coordinates by -1.

@DavidACosgrove Thank you for your perspective.

The RDKit already has a comprehensive set of functions for identifying enantiomers

Could you please point to these specific functions? I originally wrote this PR as a result of not finding any set of functions for dealing with chirality... but I may be mistaken.

SMILES strings can't capture conformational chirality of the sort exhibited by helicene

This is an interesting insight and an oversight on my part. The intention of the SMILES comparison was to check if the generated molecule is equivalent to the original molecule.  Would it make sense to do such a comparison by normalizing the mol variables and doing a comparison from there?


Fix model time calculations, move some of the integration tests to Cypress, add more examples

The first commit fixes model time calculations. I've just noticed it randomly while working on something else. The second one moves the subduction Jest test to Cypress. There are two main reasons for that:

it works faster in Chrome / Electron
@tejal-shah is familiar with Cypress

@tejal-shah, so you might be interested in this second commit. The easiest way to develop these tests is to:

load one of the samples from: https://tectonic-explorer.concord.org/branch/master/index.html?samples
then open the side menu and select "Log Field Data" interaction
open the web browser console
click click somewhere in the planet view to log a field data - you can check field ID, plate ID, elevation, and various properties that you might want to test against. It's pretty easy to explore that in the browser console.
I've added helpers that should be pretty straightforward to use in model-test-helpers.ts. They're used in example tests too. getField will return an object identical to one logged by "Log Field Data".

These tests will still be pretty fragile, but less than screenshots. I'd try to mostly use assertions like "greaterThan", "closeTo", and avoid using equality check. Also, I'd try to limit the number of points/fields we check, so it's easier to update the test when necessary. I think we can add a few more and let's see how it works in practice.

I think your assumptions are generally true. Or at least mine are the same. 😉 Cypress also seems to have a longer warmup/start time. However, these tests are untypical as they run hundreds of computationally intensive model steps. I think that Chrome is just faster than Node.js and here it starts to matter. Plus, Tejal might write some of them, so Cypress should be easier in this case. I also prefer Jest syntax, but I bet our QA team is used to Cypress and its default syntax.

In the meantime, would you be able to tell how close the closeTo() needs to be to pass?

There's a second argument to this function that can be used to specify delta. I don't think there's one answer to that. It's up to you, range of the value you're checking, and the particular test. When I was testing elevation that ranges from 0 to 1.5 (more or less), I was using delta = 0.1. I guess I could use a bigger one too, or even stick to greaterThan / lessThan.


A ton of Bugs after OpenAI API update today

System Info
all last versions as of 6/11/2023
Who can help?
No response
Information

[ ] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
Run anything with OpeanAI ChatCompletions and Embeddings
Expected behavior
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/langchain/embeddings/openai.py", line 284, in validate_environment
values["client"] = openai.Embedding
^^^^^^^^^^^^^^^^
AttributeError: module 'openai' has no attribute 'Embedding'. Did you mean: 'embeddings'?
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/langchain/load/serializable.py", line 97, in init
super().init(**kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pydantic/v1/main.py", line 341, in init
raise validation_error
pydantic.v1.error_wrappers.ValidationError: 1 validation error for ChatOpenAI
root
openai has no ChatCompletion attribute, this is likely due to an old version of the openai package. Try upgrading it with pip install --upgrade openai. (type=value_error)

@dosu-bot
even if i upgrade the openai to openai==1.1.0 version (latest). the issue is not resolved.

Hi, the same happened to me since I did not have fixed versions in requirements file. What worked was to install
openai                 0.28.1
langchain              0.0.330
Good luck and good night after this wonderful evening with errors...

I checked in https://github.com/langchain-ai/langchain/issues/12967 that using openai==v0.28.1 https://github.com/openai/openai-python/releases/tag/v0.28.1 mitigates this issue for now.
openai-python might have changed their API at the recent v1 bump.

Hi, the same happened to me since I did not have fixed versions in requirements file. What worked was to install openai 0.28.1 langchain 0.0.330 Good luck and good night after this wonderful evening with errors...

Thanks @vanduyta and @dosuken123. it worked for me too

Hi, the same happened to me since I did not have fixed versions in requirements file. What worked was to install openai 0.28.1 langchain 0.0.330 Good luck and good night after this wonderful evening with errors...

Its work, thanks man

This could be due to the new 'client' model of the OpenAI API in v1.1.0+
On the regular API where you would previously write:
openai.ChatCompletion.create
the syntax is now:
openai.chat.completions.create
check also:
https://github.com/openai/openai-python/discussions/631
However, with Langchain we have no such access, and are getting this kind of error:

My issue was: ValueError: Expected EmbeddingFunction.call to have the following signature: odict_keys(['self', 'input']), got odict_keys(['self', 'args', 'kwargs'])
force installing langchain 0.335 and openai 1.3.0  works here. i have not tried all releases.  for info i can disclose openai 0.28 is from september the 26th 2023 and openai 1.3.0 is from november 15th 2023.


Fullcalendar-version 2.4.0

Not changing the formatting. #49

@gr8bit
I looked into the MomentJS version and it seems that it only requires 2.8.4, but the latest is 2.10.X.
Do you only keep it at its dependency?

Thanks @davidwessman, all merged. I update the dependencies to only the originally required version of momentjs, which is 2.9.0 for fullcalendar 2.4.0.
I also noticed I have to update jquery dependency and fullcalendar seems to depend on jquery-ui as well which I didn't add as a dependency at all. I guess there will be a <IP_ADDRESS> soon :)

Released <IP_ADDRESS> (important fix, <IP_ADDRESS> included old fullcalendar.js) and <IP_ADDRESS> (added new dependency on jquery-ui - let me know if you have problems)


Automate a basic reorg test for lightwalletd using darksidewalletd

I caught #204 using darksidewalletd manually, but it's the kind of thing that should be automated and run in CI. Close this ticket by automating the steps in #204.

I think this can be closed, it was fixed as part of: https://github.com/zcash/lightwalletd/pull/363/files#diff-3c3c4b8cc27e8d0bfb5304aed0335a263a06d7ccbfb224fdcd7ac8ff851f34af


added French recognizer

Added the French recognizer to NumberRecognizer.cs

@JasonSowers,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Welcome page doesn't load if internet isn't available

Steps to repro:

Connect to a wifi network that doesn't provide a reliable internet connection (like the Connector 😉 )
Open VS Code

Welcome view fails to load due to a web request. I expect the Welcome page to load even without internet.

I just encountered this:

I believe this is a regression

Yeah, 1.78.2 stable allows to open the welcome page without internet

Doesn't repro in OSS.
Same issue occurs with the Extension marketplace when searching without internet.

Calls to the galleryService is failing when there is no internet.
https://github.com/microsoft/vscode/blob/4137aa15f55c5ec3777daf6684908f64b439f6aa/src/vs/workbench/contrib/welcomeGettingStarted/browser/featuredExtensionService.ts#L111-L112


locus_species type definition

There's a new (ish?) field in the Rearrangement spec called locus_species that didn't have a type property, which caused the docs build to fail on RTD.
I added type:string in the spec on master, just to get the docs to build (see 0c02017).
Is this correct?

From @schristley:

@javh actually no, the field is an ontology object, $ref: '#/Ontology', so it is an object. Because $ref is specified, there should not be a type. So the doc script needs to be updated to handle that. I guess this is the first ontology field that's been added to Rearrangement.

Okay, @schristley. I'll fix it. What should the type value be in the TSV then?

Oh... And did we test that not having a type property for schema field doesn't break the R and python reference APIs?

The travis checks passes so I assumed everything was okay, but yeah there might be an issue somewhere. I already did a bunch of changes for the repertoire metadata, but there could be a rearrangement specific pathway...

Just skimming over the code, I kind of expect the python API to work: schema.Schema.type returns None if type is not found) okay. But, the R API looks like it'll choke: load_schema expects "description" and "type" to exist.

It's a pull request #260, and it looks like we can revert it. Maybe we should do that until we work out handling ontology in rearrangements in more detail?

Can we just put in a dummy type for now instead? Will that break anything? Maybe "object"?
Looks like we'll still have to tweak the R package to deal with unrecognized types, but it should probably do that anyway.

Can we just put in a dummy type for now instead? Will that break anything?

Maybe, I haven't tested in the ADC API yet. It uses swagger middleware and will usually complain if something doesn't match the OpenAPI spec.

Can we just put in a dummy type for now instead? Will that break anything? Maybe "object"?

If we use a dummy type for an ontology term, in particular in a TSV file, I would recommend using string. In particular because you can have a JSON object as a string in a TSV (e.g. {"locus_species" : {"id":10,"value":"Homo Sapiens"}} - with appropriately escaped quotes of course).

@javh @bussec Sorry I missed this in my review, I was assuming these fields were in repertoire metadata...
Actually this is more problematic. We haven't really talked about how to handle ontology-based fields for Rearrangements. The ontology definition that we use for the repertoire metadata does not conform to using the AIRR TSV format.
I think we really need to revert this PR until we discuss and decide. Hacking the python and R libraries shouldn't be done until we decide how to do this. I don't think we want objects in the Rearrangement schema, we have stricter requirements because of the TSV format.

I'm cool with encoding it as a JSON string for now, as per @bcorrie's comment, until we can hammer out the details.  That's the same basic idea as we're discussing with the lineage trees (encoding a tree structure as a Newick string).

That is unless you want to do a release before we can discuss a proper implementation... then, yeah, a revert seems like the easiest route.

Yeah, a release should be imminent, we want that before the ADC API paper goes to reviewers. We just need to clear out the last few ADC API issues.

encoding it as a JSON string

Not really a fan. That requires packing/unpacking the JSON when you want to read/write values. You won't be able to do simple queries or searches on the fields. I think we can come up with something better.

Sounds good, was a first pass suggestion - was what jumped to mind... @schristley can you tell that I am on an airplane and have nothing better to do that catch up on email, JIRA, and GitHub issues 8-)

I've reverted locus_species from the rearrangement schema until we come up with a formal policy to use ontologies for rearrangement fields.

Sorry for creating such a hazzle, I'm ok with with prioritizing API stability. @schristley what could be a potential solutions for this?

This isn't a general solution for any object but would be specifically for ontology-based fields in the rearrangement schema. As our ontology object is an id and a value, I would propose that we split out that object into two fields. So for locus_species, there would be fields locus_species_id and locus_species_value, essentially we use a naming convention.
The challenge is that we still need something in the schema that describes the ontology (it's url and etc.). I suppose we could attach that info to both locus_species_id and locus_species_value, or we could keep locus_species with that info
        locus_species:
             $ref: '#/Ontology'
             description: blah blah
             example:
                 id: 9096
                 value: Homo sapiens
             x-airr:
                 miairr: false
                 required: false
                 nullable: true
                 format: ontology
                 ontology:
                     draft: false
                     name: NCBITAXON
                     url: https://www.ncbi.nlm.nih.gov/taxonomy
                     top_node:
                         id: 7776
                         value: Gnathostomata
        locus_species_id:
             type: string
        locus_species_value:
             type: string

alternatively
        locus_species_id:
             type: string
             description: blah blah
             example:
                 id: 9096
             x-airr:
                 miairr: false
                 required: false
                 nullable: true
                 format: ontology
                 ontology:
                     draft: false
                     name: NCBITAXON
                     url: https://www.ncbi.nlm.nih.gov/taxonomy
                     top_node:
                         id: 7776
                         value: Gnathostomata
        locus_species_value:
             type: string
             description: blah blah
             example:
                 value: Homo sapiens
             x-airr:
                 miairr: false
                 required: false
                 nullable: true
                 format: ontology
                 ontology:
                     draft: false
                     name: NCBITAXON
                     url: https://www.ncbi.nlm.nih.gov/taxonomy
                     top_node:
                         id: 7776
                         value: Gnathostomata

At a first glance I would prefer the first option, as it is less redundant. However, I still have a problems to understand how this would be incorporated the TSV and the API at the same time:
In the first option, would locus_species be included in the TSV or is this just an information to the software that these derived _value and _id fields need to come from the ontology? For the second option, how would this work for the API, which probably would support species as an object?
Would it be an option to allow only a single ontology for *species for a given dataset, so that it can be defined outside of the rearrangement object, while the object itself only refers to species via the ID?

However, I still have a problems to understand how this would be incorporated the TSV and the API at the same time.

The API should return an object when format is json and should return the two fields when the format is tsv. Likewise, the python library would handle the transformation transparently, that is, when reading a tsv it will transform it into an ontology object (under the locus_species key), and vice-versa when writing a tsv.
I guess that implies that option 1 is better as the locus_species is available in the schema, and not inferred from the two fields. Regardless, rearrangement code would need to know how to handle read/write of these fields.

The OntoVoc team will have a look at IDs during the next sprint and will give feedback what they think should be encoded.

As our ontology object is an id and a value, I would propose that we split out that object into two fields.

After giving this some thought, I'm not really a fan of this either. It requires programs to "construct" the field name, which breaks the KISS principle. I'm now more inclined to go with packing JSON into the field, given a few caveats.

The reference libraries should pack/unpack the field when writing/reading the rearrangement file.
The JSON rearrangement format should have it is normal JSON, not the packed string.
The ADC API allows queries on the id and label fields as expected (assuming we require support for query), and the JSON response has it in normal JSON while the TSV response has it as a packed string.

@schristley @bussec please advise on whether this is something that still needs to be pursued...

IMO this can be closed, as it is mainly about the representation of an ontology-basd annotation (which we have agreed on in the meantime). Follow up on this in #614


Unable to click workflow cells without a result

Grey cells can't be clicked.

It might be necessary to fetch the workflow details iteself to flesh out the names, etc. (https://docs.github.com/en/rest/actions/workflows?apiVersion=2022-11-28#get-a-workflow)


Training on 1-channel images

Is it possible to train on 1 channel images in .tif format?

Yes, it's possible. There shouldn't be any problems.


ENH: Named tuple fields as column names

Currently, passing a list of namedtuples (or SQLAlchemy results, which is our specific case) to DataFrame.from_records doesn't resolve the field names.
I think it would make sense to, at least if the names are all the same. Happy to do a PR if people agree.

In [17]: from collections import namedtuple

In [18]: Record = namedtuple('Record',('date','value'))

In [19]: records = [Record(d, v) for (d, v) in zip(pd.date_range('2000',freq='D', periods=20), range(20))]

In [20]: records
Out[20]:
[Record(date=Timestamp('2000-01-01 00:00:00', offset='D'), value=0),
 Record(date=Timestamp('2000-01-02 00:00:00', offset='D'), value=1),
...
 Record(date=Timestamp('2000-01-19 00:00:00', offset='D'), value=18),
 Record(date=Timestamp('2000-01-20 00:00:00', offset='D'), value=19)]

In [21]: pd.DataFrame.from_records(records)
Out[21]:
            0   1
0  2000-01-01   0
1  2000-01-02   1
...
18 2000-01-19  18
19 2000-01-20  19

Desired behavior:
Out[21]:
            date   value
0  2000-01-01   0
1  2000-01-02   1
...
18 2000-01-19  18
19 2000-01-20  19

You could do this, but you would have to then deal with potentially multiple names here (for a single column), and should raise in that case. This is unambiguous with a recarray, but you are passing a list of records-likes here. FYI this is the same for DataFrame(records). Further you would have to be careful about perf here.

any reason you are not simply using pd.read_sql which already does this?

@jreback - we're using SQLAlchemy as an ORM, so we have a SQLAlchemy Query object, which encapsulates joins & filtering.
My understanding is that those methods take a SELECT string - are we missing something, and they'll work with the ORM? We're using this fairly prevalently so I'm keen to know if we're doing something inefficient.
Thanks

I hear you re performance, if you have to check every item.
I had thought that if the first item a tuple with ._fields, it would be a reasonable default to set the appropriate axis index to those fields. The alternative is integers, so there's not a lot of competition, and the user is free to supply columns / index as ever.
Without that convenience, it does seem like a lot of lifting for pandas vs the benefit.

this is prob not that crazy to add
we obviously already support lists of ndarrays and such
so it's just another path

side issue: https://github.com/pydata/pandas/issues/4916
love to remove from_records entirely (and just have it figured out in the constructor)

@maximilianr regarding the sqlalchemy Query object. At the moment this will indeed not work with read_sql_query, but would that be useful to add this functionality?
I think you can try it out by providing the selectable attribute (http://docs.sqlalchemy.org/en/rel_1_0/orm/query.html#sqlalchemy.orm.query.Query.selectable), something like: pd.read_sql_query(Query().selectable, engine)

@jorisvandenbossche Yes, that works, thanks!
I asked a Q to SQLAlchemy, to see if those guys had any guidance. I could imagine a few options - leave it as-is,  allow read_sql to take a Query object as a very simple wrapper, or something more coupled with SQLAlchemy if there are optimizations
https://bitbucket.org/zzzeek/sqlalchemy/issues/3542/design-for-pandas-access-to-query


[SPARK-32481][SQL][TESTS][FOLLOW-UP] Skip the test if trash directory cannot be created

What changes were proposed in this pull request?
This PR skips the test if trash directory cannot be created. It is possible that the trash directory cannot be created, for example, by permission. And the test fails below:
- SPARK-32481 Move data to trash on truncate table if enabled *** FAILED *** (154 milliseconds)
  fs.exists(trashPath) was false (DDLSuite.scala:3184)
  org.scalatest.exceptions.TestFailedException:
  at org.scalatest.Assertions.newAssertionFailedException(Assertions.scala:530)
  at org.scalatest.Assertions.newAssertionFailedException$(Assertions.scala:529)
  at org.scalatest.FunSuite.newAssertionFailedException(FunSuite.scala:1560)
  at org.scalatest.Assertions$AssertionsHelper.macroAssert(Assertions.scala:503)

Why are the changes needed?
To make the tests pass independently.
Does this PR introduce any user-facing change?
No, test-only.
How was this patch tested?
Manually tested.

Test build #128710 has started for PR 29759 at commit aa545ad.

cc @Udbhav30 and @dongjoon-hyun

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/33334/
Test PASSed.

Yes seems good to add this condition

Test build #128710 has finished for PR 29759 at commit aa545ad.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/128710/
Test PASSed.

Let me just merge this since the last change only fixed the messages.
Thanks @dongjoon-hyun and @viirya for reviewing this.

Merged to master.


Propose a simple solution for the deprecated ALEGetStatusLine()

Hello,
I saw that the ALEGetStatusLine() function is now deprecated and that we're encouraged to write our own statusline function now. It would be nice if somewhere in the doc or in the plugin we could be told how to simply emulate the function in our own runtimepaths.
For now, I'm pasting/adapting these 2 functions in my autoload directory :
function! s:StatusForListFormat() abort
    let [l:error_format, l:warning_format, l:no_errors] = g:ale_statusline_format
    let l:counts = ale#statusline#Count(bufnr(''))

    " Build strings based on user formatting preferences.
    let l:errors = l:counts[0] ? printf(l:error_format, l:counts[0]) : ''
    let l:warnings = l:counts[1] ? printf(l:warning_format, l:counts[1]) : ''

    " Different formats based on the combination of errors and warnings.
    if empty(l:errors) && empty(l:warnings)
        let l:res = l:no_errors
    elseif !empty(l:errors) && !empty(l:warnings)
        let l:res = printf('%s %s', l:errors, l:warnings)
    else
        let l:res = empty(l:errors) ? l:warnings : l:errors
    endif

    return l:res
endfunction

" Returns a formatted string that can be integrated in the statusline.
function! gagbo#statusline#ALEStatus() abort
    if !exists('g:ale_statusline_format')
        return 'OK'
    endif

    if type(g:ale_statusline_format) == type([])
        return s:StatusForListFormat()
    endif

    return ''
endfunction

Is there room in the doc to add something like this and help with ALEGetStatusLine() being deprecated ?
Also, there's no tag in the documentation for the g:ale_statusline_format setting so we can customize the format like there is for g:ale_echo_msg_format. It would help the transition too I think, but maybe this option is deprecated too ?

There's already an example in the FAQ. https://github.com/w0rp/ale#5v-how-can-i-show-errors-or-warnings-in-my-statusline
Those options aren't documented because you shouldn't use them or the deprecated status functions.


haxedevelop doesn't show bookmark panel under view menu

Got nightly donwloads from https://flashdevelop.org/downloads/builds/
Strange that I can't see the bookmark panel option in the view menu, the keys to set, navigate and delete bookmarks are still there.
Maybe there's a way to bring it back, or is this the new way and it won't return ?
Got version <IP_ADDRESS>6, thought it would have it back, but not there either.

i'll check today


Archived workflows : no logs without artifact repo ?

Summary
This issue is a followup to #5966 that has been closed to say that argo ui does not fail to display logs when there is no artifacts
however, the documentation https://argoproj.github.io/argo-workflows/workflow-archive/ only says that you need to enable database to have archives, not that you also have to configure an artifact repository (and let's say that archives without logs are a bit useless)
Questions

is the artifact repo really needed for logs archives ? if yes, amend the documentation (I can submit a PR for this)

is it possible to only use the db (either as a full blown artifact repository or just to store logs) ?

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

The workflow archive is only for archiving workflows, not logs. It's a different thing, you need an artifact repository for your logs.

@alexec
PR for the documentation : https://github.com/argoproj/argo-workflows/pull/6005
what about using the database to store the logs  of the pods ?
I was thinking about something like tjis in the configmap :
archive: true
logs: true

my understanding is that artefacts are required to save specific data (like a specific file in a container) not to save all the outputs of all the pods... (even if the output of a pod CAN be an artifact in some cases)
can you elaborate a bit on this question plz ?

For logs, you can save them as an artifact. Most enterprises simply dump all logs into Splunk or similar.

note that I am aware that I can use "pipe-tee" into a file + declare an ouput artifact (obviously, like a "normal" artifact)
however, I do not like the idea to change all my templates to do that just for the "sake" of archives, so I am looking to an "automatic" approach
if you are interested into the pipe-tee approach, have a look at https://github.com/argoproj/argo-workflows/blob/4e450e250168e6b4d51a126b784e90b11a0162bc/test/e2e/expectedfailures/output-artifact-not-optional.yaml

I think you may have found a bug. Can you please attach the version you're using?

I am using docker.io/argoproj/workflow-controller:latest from this morning in my TZ :)
how can I see version ? I tried to use logs/describe of argo-server and workflow-controller pods, but I cannot see a version there ...

The correct way to have automatic logs is to use the configmap (either controller CM or a new artifact-repositories CM), see https://github.com/argoproj/argo-workflows/issues/5983#issuecomment-849010919
@alexec unless you suspect another problem, you can close this issue (and thank you for the support 👍 )


pkg/operator/configobservation/etcd/OWNERS: Drop wking

I was added here in 03b2b018d2 (#156), but I'm not sure what this package does, let alone how it should be maintained.
CC @abhinavdahiya in case he wants out too ;).

/lgtm
/cc @hexfusion @alaypatel07
I think you should add yourself to the OWNERS here.


feat(module:image): now supports horizontal and vertical flip

PR Checklist
Please check if your PR fulfills the following requirements:

[✔] The commit message follows our guidelines: https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/CONTRIBUTING.md#commit
[✔] Tests for the changes have been added (for bug fixes / features)
[✔] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[✔] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Application (the showcase website) / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?
The image component in our current version does not support horizontal and vertical flipping of the image, unlike the antd image component.
What is the new behavior?
The feature of flipping the image horizontally or vertically has been implemented.
Does this PR introduce a breaking change?
[ ] Yes
[✔] No

Other information

@HyperLife1119 I would be grateful if you could review my pull request.

Can you resolve the conflict? I will merge it.

Can you resolve the conflict? I will merge it.

Yeah sure,
Thanks @HyperLife1119.
I have 2 more branches that have conflicts and have PR: reviewed-approved tag that haven't been merged; should I notify you after I resolve those two branches too?

absolutely okay! @ParsaArvanehPA

@HyperLife1119
https://github.com/NG-ZORRO/ng-zorro-antd/pull/8180
https://github.com/NG-ZORRO/ng-zorro-antd/pull/8283
These are the two branches with conflicts I mentioned earlier, thanks in advance.

Thank you for checking this pr @HyperLife1119
https://github.com/NG-ZORRO/ng-zorro-antd/pull/8180
https://github.com/NG-ZORRO/ng-zorro-antd/pull/8283
These are the two branches with conflicts I mentioned earlier, thanks in advance.


Not Available to sign in REDIVIS

Hello! Thank you for sharing such a great dataset and model!
As mentioned in the README, I would like to view the assets in REDIVIS, but it seems that I can't even sign in to the site.
How can I resolve this issue?

Hmm that is odd @gaeungaeun sorry for the confusion -- Could you try again / post the link you're using? For some reason it's working on my end, so maybe it resolved itself?

@Miking98
I think I've solved it!
I was getting an error when using my organization's email, but when I used my Google account, it worked!
Thank you so much for checking it out for me!


(maint) Corrected spelling of underscores

The validation messages includes a spelling error with the
word 'underscorse' instead of the correct spelling of
'underscores'. This PR make the change to correct
the spelling mistake.

@AdmiringWorm your changes have been merged, thanks for your contribution 👍


Add vectored support to Buf and BufMut

cc @alexcrichton

A few thoughts:

I wonder if these methods should be the "required to implement" methods? They're certainly wordier than the bytes method but do we envision all that many impls of these traits?

Maybe a subslice could be returned instead of a usize? Something like:
fn foo<'a, 'b>(&'a self, slice: &'b mut [&'a IoVec]) -> &'b mut [&'a IoVec];

That's a lot of lifetimes but makes the caller's life a little easier I think.

I wonder if we should support offsets of some form? I'm thinking that you don't really have any way of knowing how large of a slice to pass in, but maybe that's not so bad. Do you think this'll end up being a problem?

I wonder if these methods should be the "required to implement" methods? They're certainly wordier than the bytes method but do we envision all that many impls of these traits?

I don't think it matters a ton. 0.4 is released. The way it is means that you can "quickly" impl Buf / BufMut w/o depending on IoVec and IoVec is kept out of the bytes documentation (no re-export). There won't be a ton of impls so it doesn't matter too much.

Maybe a subslice could be returned instead of a usize?

I don't have a strong opinion either way.

I wonder if we should support offsets of some form? I'm thinking that you don't really have any way of knowing how large of a slice to pass in, but maybe that's not so bad. Do you think this'll end up being a problem?

I'm not hugely following... my interpretation is that there is no way to know how many distinct chunks are remaining in the Buf. I don't think that the Buf itself could always know w/o extra work. I'm not hugely concerned about this as you can always supply a large number of stack allocated IoVec refs.

A quick note re: slice return value: Here is an implementation of chaining bufs (similar to iterator chaining):
struct Chain<T, U> {
    a: T,
    b: U,
}

fn bytes_vec<'a>(&'a self, dst: &mut [&'a IoVec]) -> usize {
    if self.a.remaining() {
        let mut n = self.a.bytes_vec(dst);

        if n < dst.len() {
            n += self.b.bytes_vec(&mut dst[n..]);
        }

        n
    } else {
        self.b.bytes_vec(dst)
    }
}

It still can be implemented w/ the slice ret val, but I kind of like this way :)
Either way...

Discussed on IRC, I'm 👍 with this as-is. I'll open follow-up issues for 0.5


Dmiller/custom ci demo

@jazzdan - this is still pretty draft-y but the same script works for a GHA and for buildkite with most of the metadata auto-generated from existing env variables.
https://github.com/replayio/replayable/runs/7398611170?check_suite_focus=true#step:6:257
vs
https://buildkite.com/replay/replayable-ci-demo/builds/35#01821347-c338-4aa3-a0f1-9d7f41573acc/26-319

Overall LGTM for a draft. :)


[metadata] Unable to update adminState and operatingState at the same time

🐞 Bug Report
Affected Services

 The issue is located in: metadata (@iain-anderson found this issue)
Is this a regression?

 No
Description and Minimal Reproduction
Start EdgeX core services and device-virtual service, then do:
curl -v -X PUT -d '{"adminState":"UNLOCKED","operatingState":"DISABLED"}' 0:48081/api/v1/device/name/Random-Boolean-Device
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to 0 (<IP_ADDRESS>) port 48081 (#0)
> PUT /api/v1/device/name/Random-Boolean-Device HTTP/1.1
> Host: 0:48081
> User-Agent: curl/7.64.1
> Accept: */*
> Content-Length: 52
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 52 out of 52 bytes
< HTTP/1.1 200 OK
< Date: Thu, 24 Sep 2020 08:38:50 GMT
< Content-Length: 0
<
* Connection #0 to host 0 left intact
* Closing connection 0

The update request returns a 200 OK, and the device service gets the callback to indicate that the device is updated. However when I do curl 0:48081/api/v1/device/name/Random-Boolean-Device again, the operatingState still shows as ENABLED. (And indeed the device service continues to have it enabled).
**EdgeX Version:**nightly-build
Anything else relevant?
According to https://github.com/edgexfoundry/edgex-go/blob/master/internal/core/metadata/rest_device.go#L419-L493,  PUT /api/v1/device/name/{name} and /api/v1/device/id/{id} only update the first device state specified in the request body.

Works in v2, although the API is a little different:
curl -X PATCH -d '[{"apiVersion":"v2", "Device":{ "name":"Device1", "adminState":"UNLOCKED", "operatingstate":"UP"}}]' 0:48081/api/v2/device

@weichou1229 could you please make a quick test to see whether we have fixed in Hanoi? (1.3.1 core-metadata)

No, we haven't.
The API updates OperatingState if AdminState not supplied.
https://github.com/edgexfoundry/edgex-go/blob/master/internal/core/metadata/rest_device.go#L399

@iain-anderson could you workaround this issue by sending two update requests and close this issue, since it is fixed in v2?

Hi @cloudxxx8 it's not an issue for me, just observed it when manually updating something. Feel free to close (I don't have permissions in this repository)


DSpace 8.0 - dspace.dir option does not update during deploy

Describe the bug
DSpace 8.0, Debian 12
dspace.dir and logging.config options are not updated within the [dspace]/webapps/server/WEB-INF/classes/application.properties file during the compile and deploy process.
Even if I set the correct path of dspace.dir to our custom DSpace folder in [dspace-src]/local.cfg the file application.properties will contain dspace.dir=dspace which then breaks the server to start.
To Reproduce

Create a custom [cust-ds-fld] folder for your DSpace server.
Change/set the option dspace.dir to the [cust-ds-fld] in the [dspace-src]/local.cfg file.
Compile and deploy your server.
Start the server - embedded or installed Tomcat instance do the same.
The server will not start due to the following error in catalina.out:

Logging system failed to initialize using configuration from '/dspace/config/log4j2.xml'
java.io.FileNotFoundException: /dspace/config/log4j2.xml (No such file or directory)

Expected behavior
The dspace.dir option should be updated/synchronized by the one whithin the [dspace-src]/local.cfg
Related work
n/a

@parphis : I'm having difficulty reproducing this bug.  Here's what I've tried from the dspace-8_x branch (which is identical to 8.0 at this time):

Checkout dspace-8_x
Create a local.cfg file under [src]/dspace/config.  Add a custom value to dspace.dir, for example:dspace.dir = /some/custom/dspace/folder/

(Re)Build everything via mvn -U clean package
After build completes, check the [src]/dspace/target/dspace-installer/webapps/server/WEB-INF/classes/application.properties file.  Verify it has that custom setting (it does).

Could you verify that you are modifying the value in your local.cfg before you build the backend?  As far as I can tell, this should all be working properly still.  Though, it is always possible that I'm overlooking something.

@tdonohue
Thanks for your check. I did/do the same as you. Just to be sure here are the points in details.

git clone git@github.com:DSpace/DSpace.git First: git checkout dspace-8_x , second: git checkout dspace-8.0
Create the local.cfg file in the [src] folder and add this option line as the very first: dspace.dir=/home/dspace/repozitorium
rm -R ~/.m2 just to be sure and mvn -U clean package
less dspace/target/dspace-installer/webapps/server/WEB-INF/classes/application.properties -> contains dspace.dir=/dspace and logging.config = /dspace/config/log4j2.xml

Interestingly, when I ran git checkout dspace-7.6.1 with the same steps above the result was dspace.dir=${dspace.dir} and logging.config = ${dspace.dir}/config/log4j2.xml in the application.properties file.
I do not understand. What do I wrong? In which step these options are replaced by the compliler? I searched for the pom.xml but did not find any related.

@parphis : Are you sure that you created the local.cfg in the proper directory?  It should be created under [src]/dspace/config/ (alongside the dspace.cfg file and all other configs) and NOT in the root [src] folder.
I suspect the issue may be that Maven is not finding your local.cfg because it's in an unexpected location.  If Maven cannot find the local.cfg, then it will always use the defaults in [src]/dspace/config/dspace.cfg.

@tdonohue Thanks, you are right, that was my mistake with the wrong local.cfg path. Apologies for this.
What has remained interesting for me is why compiling the version 7.6.1 resulted in dspace.dir=${dspace.dir} option? Is this a pom.xml like thing or what?

@parphis : I honestly don't know why the filtering behavior differs between 7.6.1 and 8.0 when the local.cfg cannot be found.   My suspicion is it may be related to the POM refactoring that occurred to create the new Runnable JAR in 8.0 (as this required some changes to the Maven POMs / build process).
In any case, it sounds like this is working properly.  It's just defaulting to using the settings in dspace.cfg when the local.cfg cannot be found.  Closing this ticket as answered.


custom data

I  want to test the PaiNN model with my  own custom data. Is the dataset format similar to the ASE db like in schnetpack library.? Could you provide a relevent config.yaml file for this. I have enegy, force and coordinate information. And another issue, I have found, during HPC SLURM run. It needs a interactive wandb mode, which is quite fine during collab notebook run, but for slurm it seems issue. Is there a way off this feature in yaml file?  Thank you.

Hi there @sandipgiri576 - thanks for wanting to use graph-pes, and for raising these questions 😄
Let me try to answer your questions:
Training dataset format
The easiest way (for now) to provide graph-pes-train with a dataset of structures is to do the following:
data:
    train:
        +file_dataset:
            path: path/to/train.xyz
            cutoff: 3.7
    valid:
        +file_dataset:
            path: path/to/valid.xyz
            cutoff: 3.7

where train.xyz and valid.xyz are text files containing your ASE atoms objects (see here for more details). So for now, you would need to write a script that converts an ASE .db file into an .xyz one.
I am in the process of implementing a way to use ASE .db files directly in graph-pes, and will let you know when that is ready (hopefully later today!)
Weights and Biases with SLURM
Thank you for raising this point! I have tried to address it in the docs here - please let me know if this isn't clear 😄
TLDR; you can turn wandb off by using
wandb: null

in your config, or you can avoid the interactive step by logging into W&B before submitting your HPC job.

great. I see this wandb part. Although there are some changes in schnetpack painn hyperparameter and your graph-pes painn hyperparameter, I am going to check how it performs.


brew cask install generates a 404 on Cloudflare with Homebrew User-Agent ?

General troubleshooting steps

[X] I have retried my command with --force and the issue is still present.
[X] I have checked the instructions for reporting bugs.

[X] None of the templates was appropriate for my issue, or I’m not sure.

[X] I ran brew update-reset && brew update and retried my command.
[X] I ran brew doctor, fixed as many issues as possible and retried my command.
[X] I understand that if I ignore these instructions, my issue may be closed without review.

Description of the issue
Greetings,
I observed  that the "brew cask install outguess" created an error 404 but https://www.rbcafe.com/download/outguess.zip exists and is not 404.
So I tested with curl only and user-agent :
 curl -i -L -H "User-Agent: Homebrew/1.6.3-11-g9c3043c (Macintosh; Intel Mac OS X 10.13.4) curl/7.54.0"  "https://www.rbcafe.com/download/outguess.zip"

error 404

Then with another user-agent :
 curl -i -L -H "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:59.0) Gecko/20100101 Firefox/59.0"  "https://www.rbcafe.com/download/outguess.zip"

200 > download

My software "Outguess" is hosted on an OVH server and is protected by Cloudflare.
Best regards
Rbcafe

Command that failed
brew cask install outguess

Output of command with --force --verbose --debug
/usr/bin/curl -q --show-error --user-agent Homebrew/1.6.3-11-g9c3043c (Macintosh; Intel Mac OS X 10.13.4) curl/7.54.0 --fail --location --remote-time --continue-at - --output /Users/Rbcafe/Library/Caches/Homebrew/Cask/outguess--latest.zip.incomplete https://www.rbcafe.com/download/outguess.zip
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404
Error: Download failed on Cask 'outguess' with message: Download failed: https://www.rbcafe.com/download/outguess.zip
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/download.rb:42:in érescue in fetch'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/download.rb:40:in éfetch'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/download.rb:15:in éperform'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/installer.rb:126:in édownload'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/installer.rb:51:in éfetch'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/installer.rb:75:in éinstall'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:20:in éblock in run'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:14:in éeach'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:14:in érun'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/abstract_command.rb:35:in érun'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:98:in érun_command'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:168:in érun'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:132:in érun'
/usr/local/Homebrew/Library/Homebrew/cmd/cask.rb:8:in écask'
/usr/local/Homebrew/Library/Homebrew/brew.rb:101:in é<main>'
Error: Kernel.exit
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:173:in éexit'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:173:in érescue in run'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:156:in érun'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:132:in érun'
/usr/local/Homebrew/Library/Homebrew/cmd/cask.rb:8:in écask'
/usr/local/Homebrew/Library/Homebrew/brew.rb:101:in é<main>'

Output of brew cask doctor
==> Homebrew-Cask Version
Homebrew-Cask 1.6.3-11-g9c3043c
caskroom/homebrew-cask (git revision a91ca; last commit 2018-05-08)
==> macOS
10.13.4
==> SIP
Enabled
==> Java
10.0.1, 10
==> Homebrew-Cask Install Location
<NONE>
==> Homebrew-Cask Staging Location
/usr/local/Caskroom
==> Homebrew-Cask Cached Downloads
~/Library/Caches/Homebrew/Cask
==> Homebrew-Cask Taps:
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask (3962 casks)
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-drivers (146 casks)
==> Contents of $LOAD_PATH
/usr/local/Homebrew/Library/Homebrew/cask/lib
/usr/local/Homebrew/Library/Homebrew
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/site_ruby/2.3.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/site_ruby/2.3.0/x86_64-darwin9.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/site_ruby/2.3.0/universal-darwin9.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/site_ruby
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/vendor_ruby/2.3.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/vendor_ruby/2.3.0/x86_64-darwin9.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/vendor_ruby/2.3.0/universal-darwin9.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/vendor_ruby
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/2.3.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/2.3.0/x86_64-darwin9.0
/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/lib/ruby/2.3.0/universal-darwin9.0
==> Environment Variables
LC_ALL="en_US.UTF-8"
PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/Homebrew/Library/Homebrew/shims/scm"
SHELL="/bin/bash"

Output of brew tap
buo/cask-upgrade
caskroom/cask
caskroom/drivers
homebrew/boneyard
homebrew/core
homebrew/games
homebrew/php
homebrew/python
homebrew/services

Try editing the Cask by adding user_agent: :fake to the url stanza and see if that works.

@reitermarkus 👍


Direct embed doesn't work for sites that already have jQuery

When using the direct embed method on sites that already use jQuery, the jQuery bundled into documentcloud-pages clobbers the existing instance (including plugins) and breaks stuff.
The same issue probably applies to Underscore and Backbone too, though I'm not familiar enough with those to comment in depth.
Ideally jQuery shouldn't be bundled into the final build because it's a fair assumption that sites either have jQuery or can add it easily enough if they need to.

@AshKyd I can't replicate this. Can you provide an example?
I was able to replicate by removing noConflict() from our setup assignment, but that's why we use it. As-is, it didn't clobber parent page jQuery or its extensions.
(Side note: I'd love to remove jQuery from this bundle to reduce embed package size. That's a post-launch enhancement.)

Hm, I can't reproduce it in a test case, but I had the issue loading it into a complex page in my dev environment. I'll have more of a play and see if I can reproduce this.

Mmkay, I'll close this for now. Feel free to re-open if you create a reliable test case!


Allow to override syncer's package URL

Updated after @yolossn 's comments.

Updated.

few more nits, apart from that LGTM.


Steam controller layout wrong and input/remapping not working

The layout of my steam controller is wrong. Steam is open and B is jump, the joystick does nothing, and the other 3 face buttonsdo not work. I cannot rebind these in the menu.
To Reproduce
Steps to reproduce the behavior:

Open Steam
Open Minecraft with steam controller on
Set mode to steam controller and enable controller input
Attempt to play

Expected behavior
The joystick should allow me to move and A should be jump, not B. The other face buttons should be working.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

Fedora Linux KDE
Minecraft 1.19
Fabric 0.14.8
Mods Fabric API v0.57.0, Midnight Controls 1.4.1, MidnightLib 0.5.2
Whichever is in modrinth

Additional context
I am playing through polymc, this occurs through a native install and through flatpak. Triggers and the touchpads still work as intended. I am playing using the official wireless dongle.

Could you try if this also happens with Steam completely closed?

Also, you could try to create a custom mapping using gamepad-tool

Could you try if this also happens with Steam completely closed?

Without steam none of the controls work at all. When rebinding through that, it thinks lt and rt and constantly being pressed

You can use the 'Previous' button to correct any mistakes while creating a custom mapping

You can use the 'Previous' button to correct any mistakes while creating a custom mapping

sure but when it asks for buttons like the r3 it requires having my finger on the touchpad which makes it send that instead. It's funky


Restubbing a workflow now sets the labels

Labels will persist after restubbing a workflow.

[x] Check that you pass the basic style checks and unit tests by running mvn clean install

Seems to be an issue with version eye, come back later.

Changes Unknown when pulling 5f7083b82ce59b8eef7a19134b6c09e24512d63b on feature/restub_labels into ** on develop**.


Docker image publishing work

Testing locally first

Merging to test out the scheduled fresh creates.

TODO: Need to evaluate whether to continue to use a matrix strategy to parallelize all of the various build/test tasks.
It's possible that the overhead of importing and starting a docker instance is not worth it.


tsp, support multiple api headers for key credentials

Teams post from Text Translation service:
https://teams.microsoft.com/l/message/19:906c1efbbec54dc8949ac736633e6bdf@thread.skype/1699485608814?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&parentMessageId=1699485608814&teamName=Azure SDK&channelName=TypeSpec Discussion 🐮&createdTime=1699485608814
typespec definition as below:
@useAuth([ApiKeyAuth<ApiKeyLocation.header, "Ocp-Apim-Subscription-Key">, ApiKeyAuth<ApiKeyLocation.header, "Ocp-Apim-Subscription-Region">])

SDK (high level thought):

create a class cto store multiple key credentials, e.g. called TextTranslationApiKeyCredential, and it has two properties: ocpApimSubscriptionKey and ocpApimSubscriptionRegion, The value of each property is the key.
Builder: have a override setter method credential(TextTranslationApiKeyCredential textTranslationApiKeyCredential).

Ocp-Apim-Subscription-Region actually is not a valid case. This one is not a real api-key, it is just usual region (eastus etc.) that better to be a client property (not a api-key).


[TW#15825] WPA2 EAP-GTC

Hi,
i'm working on a project for my apprenticeship but can't connect my ESP32 to our WiFi.
A colleague told me we're using WPA2 Enterprise with inner GTC (Generic Token Card) so I don't need any certificate.. Just username and password.
is it possible to connect the esp32 to WPA2 with GTC ? if its possible, how?
thank you very much in advance!
flyb

@Flyb29, From your requirement, it seems that you don't need certificate verify, maybe you can try to mark esp_wifi_sta_set_wpa2_ent_set_ca_cert() and esp_wifi_sta_wpa2_ent_set_cert_key(), and have a try again. If it not working. maybe you can offer the sniffer log and then we will try to analysis

Closing due to lack of response, please feel free to reopen if this is still an issue and you can supply more details.


Kotlin recipe dsl #1443

Codecov Report

Merging #1449 (c402b32) into master (b3ccb54) will decrease coverage by 0.02%.
The diff coverage is n/a.

:exclamation: Current head c402b32 differs from pull request most recent head e48b49e. Consider uploading reports for the commit e48b49e to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##           master    #1449      +/-   ##
==========================================
- Coverage   82.57%   82.55%   -0.02%
==========================================
  Files         129      130       +1
  Lines        4114     4138      +24
  Branches      138      132       -6
==========================================
+ Hits         3397     3416      +19
- Misses        717      722       +5

Impacted Files
Coverage Δ

...e/akka/actor/process_index/ProcessIndexProto.scala
98.18% <0.00%> (-1.37%)
:arrow_down:

...actor/process_instance/ProcessInstanceLogger.scala
91.66% <0.00%> (-1.32%)
:arrow_down:

.../bakery/interaction/RemoteInteractionService.scala
78.18% <0.00%> (-0.99%)
:arrow_down:

...om/ing/bakery/components/InteractionRegistry.scala
53.33% <0.00%> (ø)

.../ing/baker/runtime/model/InteractionInstance.scala
90.78% <0.00%> (ø)

...ime/model/recipeinstance/TransitionExecution.scala
90.38% <0.00%> (ø)

...akka/actor/recipe_manager/RecipeManagerActor.scala
100.00% <0.00%> (ø)

...or/process_index/SensoryEventResponseHandler.scala
85.05% <0.00%> (ø)

...r/runtime/akka/actor/logging/LogAndSendEvent.scala
93.33% <0.00%> (ø)

...ng/baker/runtime/akka/internal/RecipeRuntime.scala
94.52% <0.00%> (+0.07%)
:arrow_up:

... and 5 more

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


Google Analysis js code in Volto app

We want to use Google Analysis in a custom Volto app. How can we set it?

hi @terapyon,
we just implemented Google Analysis into one of our projects. This is how to do it:
First create a useGoogleAnalytics file in your project, in which you create a useGoogleAnalytics hook using the following code:
useGoogleAnalytics.jsx
import { useEffect } from 'react';
import { useLocation } from 'react-router-dom';
import ReactGA from 'react-ga';

if (__CLIENT__) {
  ReactGA.initialize('UA-112268545-1', {
    debug: true,
    gaOptions: {
      anonymizeIp: true,
    },
  });
}

const useGoogleAnalytics = () => {
  let location = useLocation();

  useEffect(() => {
    ReactGA.pageview(location.pathname);
  }, [location]);
};

export default useGoogleAnalytics;

Use this hook in a GoogleAnalytics function. We created a separate file for that, but you can for sure also directly declare that function in the place you will be using it.
´´´
import useGoogleAnalytics from './useGoogleAnalytics';
const GoogleAnalytics = () => {
useGoogleAnalytics();
return null;
};
export default GoogleAnalytics;
Than import that function to your App.jsx ` import GoogleAnalytics from '@package/GoogleAnalytics';`
and render it somewhere in there: `<GoogleAnalytics /> `
Google Analytics should be working now.
If necessary you can also include some kind of Cookie banner component to give people the ability to disable tracking by setting the following cookie:
´´´
 onDisableGA() {
    cookie.save('ga-disable', true, {
      expires: new Date((2 ** 31 - 1) * 1000),
      path: '/',
    });
    this.onHideMessage();
  }
´´´

I hope that helps you. If you have any questions on this feel free to ping either me or @sneridagh.

I put this in an addon: https://github.com/collective/volto-google-analytics/
(work in progress)
Any help/contribution is appreciated

Several Volto add-ons accomplish this now.
https://github.com/collective/awesome-volto