[Bug]: Not support podman

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Describe the bug and reproduction steps
When version check will error with podman.
Seem like only support docker, and version check always only check docker version,
have any chance to support podman?
podman run -d -p 16845:3000 \
        --privileged \
        --network slirp4netns:allow_host_loopback=true \
        -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.14-nikolaik \
        -e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE \
        -e LOG_ALL_EVENTS=true \
        -v $WORKSPACE_BASE:/opt/workspace_base:z \
        -v /run/user/1000/podman/podman.sock:/var/run/docker.sock:Z \
        --name openhands \
        docker.all-hands.dev/all-hands-ai/openhands:0.14

OpenHands Installation
Docker command in README
OpenHands Version
0.14
Operating System
Linux
Logs, Errors, Screenshots, and Additional Context
Starting OpenHands...
Running OpenHands as root
INFO:     Started server process [5]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:3000 (Press CTRL+C to quit)
INFO:     <IP_ADDRESS>:52030 - "GET /app HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52034 - "GET /locales/en/translation.json HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52048 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52054 - "GET /config.json HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52070 - "GET /api/options/models HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52076 - "GET /api/options/agents HTTP/1.1" 200 OK
INFO:     <IP_ADDRESS>:52080 - "GET /api/options/security-analyzers HTTP/1.1" 200 OK
INFO:     ('<IP_ADDRESS>', 52088) - "WebSocket /ws" [accepted]
09:28:50 - openhands:ERROR: auth.py:27 - Invalid token
INFO:     connection open
INFO:     connection closed
INFO:     ('<IP_ADDRESS>', 39926) - "WebSocket /ws" [accepted]
09:28:52 - openhands:INFO: listen.py:357 - New session: b1ed8308-a8bc-45f3-8513-3ce10f86786d
INFO:     connection open
09:28:52 - openhands:INFO: codeact_agent.py:87 - Function calling not enabled for model ollama/llama3.1. Mocking function calling via prompting.
09:28:53 - openhands:ERROR: agent_session.py:94 - Error starting session: <class 'RuntimeError'>
Traceback (most recent call last):
  File "/app/openhands/server/session/agent_session.py", line 92, in _start_thread
    asyncio.run(self._start(*args), debug=True)
  File "/usr/local/lib/python3.12/asyncio/runners.py", line 194, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/app/openhands/server/session/agent_session.py", line 108, in _start
    await self._create_runtime(
  File "/app/openhands/server/session/agent_session.py", line 186, in _create_runtime
    self.runtime = runtime_cls(
                   ^^^^^^^^^^^^
  File "/app/openhands/runtime/impl/eventstream/eventstream_runtime.py", line 186, in __init__
    self.runtime_builder = DockerRuntimeBuilder(self.docker_client)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/openhands/runtime/builder/docker.py", line 21, in __init__
    raise RuntimeError('Docker server version must be >= 18.09 to use BuildKit')
RuntimeError: Docker server version must be >= 18.09 to use BuildKit

podman version: 4.6.2

I'm going to change this to an enhancement because it's asking support for podman which is new functionality.

Was about to ask the same thing, podman is by design daemonless and rootless and although there is a rootless version of Docker as well, there is no reason not to support both.

Related to this issue which became stale https://github.com/All-Hands-AI/OpenHands/issues/2651
Using the same command as before where docker is a podman alias
docker run -it \
    --pull=always \
    --privileged \
    -e SANDBOX_RUNTIME_CONTAINER_IMAGE=ghcr.io/all-hands-ai/runtime:main-nikolaik \
    -e SANDBOX_USER_ID=$(id -u) \
    -e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE \
    -v $WORKSPACE_BASE:/opt/workspace_base:z \
    -v /run/user/502/podman/podman.sock:/var/run/docker.sock:Z \
    -p 3008:3000 \
    --name openhands-app-$(date +%Y%m%d%H%M%S) \
    ghcr.io/all-hands-ai/openhands:main

I get this result after adding a model API key and sending some instructions to the model.
INFO:     <IP_ADDRESS>:60984 - "GET /assets/terminal-_JfXwz37.js HTTP/1.1" 200 OK
INFO:     ('<IP_ADDRESS>', 32782) - "WebSocket /socket.io/?EIO=4&transport=websocket" [accepted]
17:02:58 - openhands:INFO: listen_socket.py:22 - sio:connect: Oc1IJEsCersb-253AAAB
INFO:     <IP_ADDRESS>:60986 - "GET /config.json HTTP/1.1" 200 OK
17:02:58 - openhands:INFO: listen_socket.py:64 - New session: Oc1IJEsCersb-253AAAB
17:02:58 - openhands:INFO: manager.py:220 - start_new_local_session:Oc1IJEsCersb-253AAAB
17:02:58 - openhands:INFO: codeact_agent.py:88 - Function calling not enabled for model openai/o1-mini. Mocking function calling via prompting.
17:02:58 - openhands:INFO: shutdown_listener.py:37 - _register_signal_handlers
17:02:58 - openhands:INFO: shutdown_listener.py:41 - _register_signal_handlers:main_thread
INFO:     <IP_ADDRESS>:60984 - "GET /assets/terminal-CFbL2ovg.css HTTP/1.1" 200 OK
17:02:58 - openhands:ERROR: agent_session.py:99 - Error starting session: <class 'RuntimeError'>
Traceback (most recent call last):
  File "/app/openhands/server/session/agent_session.py", line 97, in _start_thread
    asyncio.run(self._start(*args), debug=True)
  File "/usr/local/lib/python3.12/asyncio/runners.py", line 194, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/app/openhands/server/session/agent_session.py", line 115, in _start
    await self._create_runtime(
  File "/app/openhands/server/session/agent_session.py", line 193, in _create_runtime
    self.runtime = runtime_cls(
                   ^^^^^^^^^^^^
  File "/app/openhands/runtime/impl/eventstream/eventstream_runtime.py", line 186, in __init__
    self.runtime_builder = DockerRuntimeBuilder(self.docker_client)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/openhands/runtime/builder/docker.py", line 22, in __init__
    raise RuntimeError('Docker server version must be >= 18.09 to use BuildKit')
RuntimeError: Docker server version must be >= 18.09 to use BuildKit


Do not add loadbalancer to unpopulated sandboxes

When adding a loadbalancer to a sandbox, the sandbox may have a valid
namespace but it might not have populated all the dependent network
resources yet. In that case do not populate that endpoint's loadbalancer
into that sandbox yet. The loadbalancer will be populated into the
sandbox when it is done populating all the dependent network resources.
Signed-off-by: Jana Radhakrishnan<EMAIL_ADDRESS>

LGTM

@mrjana can you please rebase ?

LGTM


Deprecation warnings on Ember 2.7.0

Some deprecation warnings are thrown in regards to services when using the addon with Ember 2.7.0.

@sevab Was also just looking at this.
I think it might be fixed by this: https://github.com/plyfe/ember-social/pull/43

@ianpetzer thanks! Upgraded to ba826017b6a62a53d5a5cdb5145e00941d95de91, and the first one is now fixed, although still getting isServiceFactory deprecation.

https://github.com/plyfe/ember-social/commit/76fc2fa0858791b7e3a62b2a161b5ef965e0572a fixes everything.


Add putScalar overloads with varargs indexing

INDArray defines the following putScalar methods:

putScalar(int[], double)
putScalar(int[], float)
putScalar(int[], int)

It would be be more convenient to have the following varargs overloads, so that the user doesn't have to manually create an int[] for indexing:

putScalar(double, int...)
putScalar(float, int...)
putScalar(int, int...)

The order of the parameters would be inconsistent with arrays and the = operator, as well as typical put() methods. BTW, how many dimensions do we need in general? If it's only a small number, it's probably more efficient to define a bunch of overloaded methods, since no temporary arrays get created. Plus, for those cases explicitly defined, we can keep the traditional order of the parameters, e.g.:
putScalar(int i, double x)
putScalar(int i, int j, double x)
putScalar(int i, int j, int k, double x)
...
putScalar(int[] idx, double x)

And while we're at it, each dimension can never be larger than 2^31-1?

varargs has to be the last parameter if we are using that, hence the reason for that order. And internally I'm sure it would result in an intermediate int[] array by the time an array index is calculated. We don't need that many dimensions, I've only seen up to 6 being used in practice. But putScalar(int,int,int,int,int,int,double) is kinda ugly.
Having dimensions larger than Integer.MAX_VALUE is not currently possible due to integer indexing. Previously this was due to java limitations as you know.

https://github.com/deeplearning4j/nd4j/pull/871


Sync

Thank you for the clean and simple implementation of EffNetV2!
Are you planning to sync your implementation with the official repository (https://github.com/google/automl/tree/master/efficientnetv2)?

Hi, glad this help.
But sorry I think I will not be able to sync recently.
Although I have started looking into official codes, I noticed that their code seems to be different from what is claimed in the paper, see below, so I am very confused about it.
Since my primary goal of this repo was to practice while reading the paper, I don't want to change it blindly to follow the official code, I will investigate and study further before making any change.
considering such differences, I would suggest you directly use the code from the official repo instead if you need it. Because most unofficial codes like mine follow the config in the paper, which results in different architecture and # params.

from the original paper:

from official implementation:

note that in stage 6, the paper uses 272 channels(filters), but the official configuration uses 256 channels(filters)

besides this significant difference, there are also minor differences like no drop connect in paper vs drop connect in code etc.

Hi, just an update, I asked in their official repo, it seems like they changed their minds after submitting the paper because they believe the new architecture in code is more hardware friendly. They will also update the paper soon. According to their member:

please use the code as the source of truth

Before then, I will try to sync with their code, but since it no longer matches exactly with paper, it will be relatively difficult for me. I would still suggest you using the official code since it also uses TF2, sorry for the inconvenience

Hi, just an update, I asked in their official repo, it seems like they changed their minds after submitting the paper because they believe the new architecture in code is more hardware friendly. They will also update the paper soon. According to their member:

please use the code as the source of truth

Before then, I will try to sync with their code, but since it no longer matches exactly with paper, it will be relatively difficult for me. I would still suggest you using the official code since it also uses TF2, sorry for inconvinience


Consider support for the server block from capacitor.config

Is your feature request related to a problem? Please describe.
I have seen that support for "Livereload for Ionic React app" (#50), however, I wonder if it'd be possible to support the server block from capacitor.config in the same way that it is used for android and ios.
Describe the solution you'd like
Access would be required to all of capacitor.config (currently only the electron bit is in CapacitorFileConfig), and then something like:
  private async loadMainWindow(thisRef: any) {
    if (electronIsDev && config.server) {
      await thisRef.MainWindow.loadURL(config.server.url);
    } else {
      await thisRef.loadWebApp(thisRef.MainWindow);
    }
  }

Describe alternatives you've considered
The existing solution (#50) works for reloading when the backend changes, but this would mean you don't have to wait for a complete build.
Additional context
N/A

Sharing a version with a hard-coded server url.
electron/src/setup.ts
  // Helper function to load in the app.
  private async loadMainWindow(thisRef: any) {
    if (electronIsDev) {
      await thisRef.MainWindow.loadURL('http://localhost:3000');
    } else {
      await thisRef.loadWebApp(thisRef.MainWindow);
    }
  }

Allow localhost in dev mode:
// Set a CSP up for our application based on the custom scheme
export function setupContentSecurityPolicy(customScheme: string): void {
  session.defaultSession.webRequest.onHeadersReceived((details, callback) => {
    callback({
      responseHeaders: {
        ...details.responseHeaders,
        'Content-Security-Policy': [
          electronIsDev
            ? `default-src ${customScheme}://* 'unsafe-inline' devtools://* 'unsafe-eval' data: localhost:* ws://localhost:*`
            : `default-src ${customScheme}://* 'unsafe-inline' data:`,
        ],
      },
    });
  });
}

electron/live-runner.js
Watch both the React app src and Electron src directories:
function setupReloadWatcher() {
  reloadWatcher.watcher = chokidar
    .watch('../**/src/**/*', {
      ignored: /[/\\]\./,
      persistent: true,
    })

You could extend @jamieatbark's solution  to not need a double hard-coded server url by adding this:
electron/src/setup.ts
import * as config from "../capacitor.config.json";

  // Helper function to load in the app.
  private async loadMainWindow(thisRef: any) {
    if (electronIsDev && config.server.url) {
      await thisRef.MainWindow.loadURL(config.server.url);
    } else {
      await thisRef.loadWebApp(thisRef.MainWindow);
    }
  }

and adding this to electron/tsconfig.json
"compilerOptions":
    "resolveJsonModule": true,

I believe the capacitorFileConfig argument passed to the ElectronCapacitorApp constructor does contain the whole config in version 4.1.0


Portuguese translation

Give me couple more days and I will look at the PR (having a busy time at work).

Take your time jannolii.


build.modulePreload=false dynamic import  css will lose

Describe the bug
build.modulePreload=false
This config should config preload css only，not delete module dependence
Reproduction
https://stackblitz.com/edit/vitejs-vite-u8njgy?file=main.js,style.js,vite.config.js&terminal=dev
Steps to reproduce

npm run dev

click "click me" button

the background-color will be red

npm run preview

click "click me" button

the background-color will not be red

System Info
System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 16.14.2 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 7.17.0 - /usr/local/bin/npm
  npmPackages:
    vite: ^3.2.1 => 3.2.2

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Same problem

I've also encountered this. It also happens if CSS is imported synchronously from a dynamic JS import.

Same problem

why i use build.modulePreload=false ?   If modulePreload=true, js modulePreload request will missing http header referer in Google Chrome. But firefox not! My company server settings is valid referer. js resource will response http 401 error.
You can try this code in html
<link as="script" rel="modulepreload" href="xxx.js">  referer is ok!
But you use script create this like document.head.insertAdjacentHTML('beforeend','<link as="script" rel="modulepreload" href="xxx.js">')  referer is missing!
This is Google Chrome BUG ??

vite 动态引入 css 和 modulepreload 用的是同一个方法，估计这也是为啥关闭 modulePreload 之后样式丢失的原因（我猜测的，没有仔细看 modulePreload 为 false 那块的逻辑）。
如果只是想把 js 的 preload 关掉的话，可以参考：（简单验证了下成功了，是否会引入其他问题目前未知）

Is there any progress on this bug?

There is a PR now to fix this one at #13973
meta: @daniele-orlando please avoid sending "Any updates?" messages to issues in the future 🙏🏼
If you see an issue that hasn't been worked on, there are no updates. You can help it move forward by working on a PR or helping debug where is the problem.
When there are updates, contributors send messages to the issues or PRs about their progress.

Understood. Sorry for the silly question. 😓


fix: os example

fix opensearch example and lerna build

Can you add a readme to explain how to deploy this? Especially the SAML prerequisite and the XML file to configure...


[pdal]fix missing vendor headers

When the PDAL was built, the vendor's header file was not installed, so I added the installed code.
And I rename the patch name and add the serial number.
See #3957.

I don't think that the modification of pdal triggered the VTK build failure.

I don't think that the modification of pdal triggered the VTK build failure.

Agreed, vtk can be flakey.  I will take care of it.


Is there a way to pass a structured buffer to a custom kernel, like arrow cuda buffer or flatbuffers buffer

This isn't actually an issue, just a question and maybe a feature request or at least documentation request, as I didn't find other ways to ask a question, like chat or group.
I'm looking for a way / example to pass a structured byte buffer to a custom kernel.
I didn't find any documentation or examples of how to use low level cuda api, for example
cupy.cuda.MemoryPointer with a custom kernel, ie pass it as an argument, create it from the host and/or device buffer?
I'm looking for an integration with an Arrow and/or Flatbuffers or alike offset based flat structures.

Thanks for the feedback, cupy.cuda.MemoryPointer can be passed as an argument to raw kernels but not documented very well. We now have a gitter channel so feel free to join and ask questions when needed. https://gitter.im/cupy/community


Add Docker Parameter Support

https://jira.mesosphere.com/browse/DCOS_OSS-3687
Support for Docker Parameters
Checklist

[ ] Did you add a JIRA issue in a commit message or as part of the branch name?
[ ] Did you add new unit tests?
[ ] Did you add new integration tests?
[ ] If this is a regression, did you write a test to catch this in the future?

Closes DCOS_OSS-3687

@nLight
JIRA has the target correct
{
  "description": "Example Application",
  "id": "docker-param",
  "run": {
    "cmd": "sleep inf",
    "cpus": 0.2,
    "mem": 32,
    "docker": {
      "image": "ubuntu",
      "parameters": [
        {
          "key": "cap-drop",
          "value": "ALL"
        },
        {
          "key": "cap-add",
          "value": "SYSLOG"
        }
      ]
    }
  }
}```


Are you planning to integrate RabbitMQ?

If no, can we integrate it and add it?

Hey, sorry for the late reply...I've been on vacation.  RabbitMQ support is not currently something that I'm looking into implementing, but please feel free to integrate it and create a PR (onto the development branch).   Cheers!

Hi Craig,
I am a Fer workmate and we have just started to work in this feature, but we have some doubts about integration tests:

All test that check contract events in kafka is failing when we execute in local machine.
In order to prepare the test context we have started a ganache (ethereum node test).
New block events is working fine.
However never contract events is sent to kafka broadcast. For example "doTestBroadcastsNotOrderedEvent" is always failing
It is requiered some specific configuration in ethereum node?

If you think more useful we can speak by email. Thank you in advance

Hi @mgomezcuesta,
Integrations tests have to been run with a local parity node in dev mode (huge apologies, this should be documented...I'll get on that!).
I hope that helps, but feel free to get in touch via email on<EMAIL_ADDRESS>


[MovieInput]fix MovieInput decode issue

Using "CVOpenGLESTextureCacheCreateTextureFromImage" function to
generating "luminanceTexture" and "chrominanceTexture". This could
avoid some byte-aligning issue
#182

would this help with supporting Video Recording with audio when using MovieInput.?
ie. Audio from the movie file source.

This fixes distortion issues with videos where the width is not a multiple of 16 e.g. 1080x1920.
Thank you very much!!
For example:

The MovieInput for Mac is nearly identical to the one for iOS. I would recommend you take a look at the changes that were made in this commit and implement them in the MovieInput file for Mac to see if that fixes it.

Thank you for response
I see there is no fix for Mac OS version, but I port it it by myself (like in iOS implementation)
Can somebody help in fixing of this problem in GPUImage version 1?
I tried to port this commit, but it did not end well(((
This bug is very important for me, because there is no way to process screen recordings of different sizes

@kirillbagrinovsky @BradLarson I wanted to come back and shed some light on why this fixed the distortion issue with videos where the width is not a multiple of 16.
The problem was that the pixel buffer line stride was not the same as the pixel buffer width. The line stride is the total length in bytes of a row in the pixel buffer including padding. Whereas the pixel buffer width is the number of actual pixels without any padding.
Most pixels buffers we were dealing with did not have any padding since their pixel widths were a multiple of 16 and easily fit into memory. This is why the issue only appeared infrequently e.g. with a video size of 1080x1920.
When we had a video with the dimensions 1080x1920 and called glTexImage2D to move the pixels from the pixel buffer into the texture we were under the impression that the size of the pixel buffer was the value returned by CVPixelBufferGetWidth: 1080. But if we called CVPixelBufferGetBytesPerRow(pixelBuffer)/4 it would return 1088, this would imply there was 8 pixels of padding. I believe that when glTexImage2D would iterate through the pixels in the pixel buffer it was including this padding as pixels. More frustratingly, the developer documentation for CVPixelBufferGetWidth does not mention that it doesn't include padding: "The width of the buffer, in pixels."
The issue was resolved by this commit because glTexImage2D was removed and instead texture caches were used that altogether alleviated the need to manually transfer the pixel data.

@joshbernfeld - Thanks for the detailed commentary. This is an issue that recurred in several places, and I recall seeing the same thing you did. Unfortunately, I lost track of things when I didn't have the time to work on this in the last couple of years, and the new job has complicated my contributions to these projects.
I'm getting some of that straightened out now, and Janie is taking over the maintenance of many of these projects, so I'll fill her in on this.

@BradLarson I totally understand - no worries at all. Thank you!!


Visualize job plane information

Not sure what I meant by this but there's a plane gizmo indicator thingy now.

Closed by 8e059c7


Rewrads page UI updates in KEEP token dashboard

The rewards page is probably ready. We need to confirm and check if everything is ok.

@pdyraga, what do we do with the ETH value in $?

Updates to this page addressing the concern for withdrawal by row (for the case where a beneficiary has multiple operators per one signing group), as well as including a potential for withdraw all at the top that has a gas cost estimate:

Changing the labels of the rewards to more accurately reflect rewards status vs signing group status:


[Layer] add "add layer" @open sesame 08/30 11:02

added "add layer"
added a "model unit test" for add layer. Since 'model-level unit test'
havn't been run for a long time, I diabled some test cases that causing
issues when running model unit test.

Many people gave great feedback, so I've improved the structure accordingly.

An upper class called "OperationLayer" was added to reduce redundant code.

Based on the number of input tensors, the behavior of "OperationLayer" has been classified into two types: unary and binary operations.

Various additional code cleanups have also taken place.

there is an issue where committing compressed files containing golden data for unit test prevents pushing changes to the remote server. (I've confirmed that all unit tests pass locally using that golden data.)

Self evaluation:

Build test:   [X]Passed [ ]Failed [ ]Skipped
Run test:     [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Seungbaek Hong<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #2710. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/.

:octocat: cibot: @baek2sm, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://ci.nnstreamer.ai/nntrainer/ci/repo-workers/pr-checker/2710-202410072102570.53899788856506-4eb6d12630d2c098e809c2afeeb989f24a7e72aa/.

:octocat: cibot: @baek2sm, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://ci.nnstreamer.ai/nntrainer/ci/repo-workers/pr-checker/2710-202410081320430.68198895454407-cc20fb9b4796d1cc9670a75a05e3790a15921ba6/.

:octocat: cibot: @baek2sm, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://ci.nnstreamer.ai/nntrainer/ci/repo-workers/pr-checker/2710-202410081705590.20722198486328-6d958fffa24022aa7a16283587c4f3ecfacf3392/.

:octocat: cibot: @baek2sm, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://ci.nnstreamer.ai/nntrainer/ci/repo-workers/pr-checker/2710-202410291050240.86144089698792-8c108e65df8b71f4f0aae6405045fb3fe672a6a1/.


Minimal Expo 52 app crashes when using form sheet modals

Describe the Bug
In a minimal expo 52 app with new arch disabled, having a set-up track player causes a crash when attempting to open a form sheet modal, but only after first closing the app once.
Steps To Reproduce
I have provided a minimal reproducing case that should demonstrate the issue. I've also recorded a short video showing the issue:
rntp-crash.webm
Steps:

open the app
see that the form sheet modal opens
close the app (not just background)
open the app again
try and open the modal and see that it crashes instead

This only happens when track player has been set up.
Code To Reproduce
Minimal expo repro app here: https://github.com/doughsay/expo-test-app
Replicable on Example App?
Can you replicate this bug in the React Native Track Player Example App?
N/A / example app doesn't use expo
Environment Info:
System:
  OS: Linux 6.9 Pop!_OS 22.04 LTS
  CPU: (16) x64 AMD Ryzen 7 7800X3D 8-Core Processor
  Memory: 12.14 GB / 30.50 GB
  Shell:
    version: 3.3.1
    path: /usr/bin/fish
Binaries:
  Node:
    version: 22.11.0
    path: ~/.asdf/installs/nodejs/22.11.0/bin/node
  Yarn:
    version: 1.22.19
    path: ~/.yarn/bin/yarn
  npm:
    version: 10.9.0
    path: ~/.asdf/plugins/nodejs/shims/npm
  Watchman:
    version: 4.9.0
    path: /usr/bin/watchman
SDKs:
  Android SDK:
    API Levels:
      - "30"
      - "31"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 29.0.2
      - 30.0.2
      - 30.0.3
      - 31.0.0
      - 33.0.0
      - 34.0.0
      - 35.0.0
      - 35.0.0
    System Images:
      - android-30 | Google Play Intel x86 Atom
      - android-33 | Google Play Intel x86_64 Atom
      - android-34 | Google Play Intel x86_64 Atom
      - android-35 | Google Play Intel x86_64 Atom
    Android NDK: Not Found
IDEs:
  Android Studio: AI-242.23339.11.2421.12550806
Languages:
  Java:
    version: 22.0.2
    path: /home/chris/.asdf/shims/javac
  Ruby: Not Found
npmPackages:
  "@react-native-community/cli":
    installed: 15.1.2
    wanted: latest
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.1
    wanted: 0.76.1
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found

Paste the exact react-native-track-player version you are using<EMAIL_ADDRESS>Real device? Or simulator?: both
What OS are you running?: linux
How I can Help
What can you do to help resolve this?
If this is a bug in react-native-screens or expo, I can help by opening issues with those repos as well; but since it only happens with RNTP setup, I figured I'd ask here first for some guidance.
Have you investigated the underlying JS or Swift/Android code causing this bug?
No, I don't really know where to start.
Can you create a Pull Request with a fix?
I don't know what the problem is yet.

Guessing that this is related to the timers bug which will be fixed when this pr ships: https://github.com/facebook/react-native/pull/47496

im rather inclined to believe this is an expo issue. try reproducing without rntp.

im rather inclined to believe this is an expo issue. try reproducing without rntp.

I tried and wasn't able to, the only thing to start causing it was adding rntp.  I was thinking it might have something to do with the headless js task that rntp creates? So I was thinking of trying to repro today with a non-rntp headless task, if that's even possible on expo.

Guessing that this is related to the timers bug which will be fixed when this pr ships: https://github.com/facebook/react-native/pull/47496

I thought this only affected the new architecture, which I have turned off.

I tried using expo-background-fetch to repro, no dice; works as expected.  But I guess that's not really the same thing...?

opened an issue here, maybe someone there can help me: https://github.com/software-mansion/react-native-screens/issues/2507

Updated the repro repo to react-native 0.76.2, it didn't help

I also just attempted to switch to the new architecture (and apply the pending RNTP patches for it), but it also didn't help.  I get the exact same crash in the exact same way.
Here are the new-arch updates I applied: https://github.com/doughsay/expo-test-app/compare/main...new-arch

i happen to use expo 52, react-native-screens via react navigation. RNTP is stable under either the new or old arch currently. though i dont use the expo modal, I use paper's modal/portal and its been fine.
i doubt this is the issue since its screen related, but i dont see an android folder with the provided repo. i dont think ppl typically use the expo managed/plugin route with this lib, bc nobody wrote one. id recommend u installing expo following this, onto the example app https://github.com/doublesymmetry/react-native-track-player/pull/2395, upgrading to 0.76.2, then try the same thing in prod.

Thanks, I'll see about doing that tomorrow. Which version of react-native-screens are you on? I was wondering if it's something related to the freshly released 4.0.0. but even still, if you're not using their models I guess you still might not see any problems...

This was confirmed to be a react-native-screens issue, and they have a fix in progress that I've confirmed fixes the crash.  So we can close this issue now, and you can follow https://github.com/software-mansion/react-native-screens/issues/2507 for when the actual fix lands.


Minimal nodejs version?

Hi,
it seems that relative-deps doesn't work with nodejs 8 only 10 anc above.
With nodejs 8 I get such errors:
> yarn
yarn install v1.22.0
[1/4] 🔍  Resolving packages...
success Already up-to-date.
$ relative-deps
...node_modules/relative-deps/index.js:259
      } catch {
              ^

SyntaxError: Unexpected token {
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:617:28)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)
    at Module.require (module.js:597:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (.../node_modules/relative-deps/cli.js:3:22)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

I coudn't really figure out what could be the actual problem causing this exception.
Do you plan to support nodejs 8?

Considering the fact that node@8 is deprecated, I vote for not supporting it.
Generally speaking, nobody should be using deprecated and vulnerable software.

@elektronik2k5 I agree with you, but I think the minimum supported node version should then be mentioned in the README.

In principle 8 is not supported, but pragmatically replacing it with
"catch(_e)" might be enough to make node 8 work, if it does, feel free to
PR.
Op zo 9 feb. 2020 17:56 schreef beep<EMAIL_ADDRESS>
@elektronik2k5 https://github.com/elektronik2k5 I agree with you, but I
think the minimum supported node version should then be mentioned in the
README.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mweststrate/relative-deps/issues/23?email_source=notifications&email_token=AAN4NBEHXVVXJ5ZIR3YM4O3RCA7T3A5CNFSM4KSCGHEKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELGTKRY#issuecomment-583873863,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAN4NBFTXQ5WTASNEVE3VF3RCA7T3ANCNFSM4KSCGHEA
.

Solved in 1.0.2


ACL, Metadata, etc not registering in uploaded object.

var s3fsImplementation = new s3fs('bucketname', {
	accessKeyId: AWS_ACCESS_KEY_ID,
	secretAccessKey: AWS_SECRET_ACCESS_KEY,
	ACL: 'public-read',
	ContentType: 'image/png'
});

^ with that implementation, somehow the object successfully uploads to S3, but neither the specified ACL nor the Content-Type are registered in said uploaded object. I'm pretty sure this isn't a policy error either, as the policy I've attached to the relevant user is as follows:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmtxxxxxxxxxxxxxx",
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:CreateBucket",
        "s3:DeleteBucket",
        "s3:DeleteBucketPolicy",
        "s3:DeleteObject",
        "s3:GetBucketAcl",
        "s3:GetBucketPolicy",
        "s3:GetLifecycleConfiguration",
        "s3:GetObject",
        "s3:GetObjectAcl",
        "s3:ListBucket",
        "s3:ListBucketMultipartUploads",
        "s3:ListMultipartUploadParts",
        "s3:PutBucketAcl",
        "s3:PutBucketPolicy",
        "s3:PutLifecycleConfiguration",
        "s3:PutObject",
        "s3:PutObjectAcl"
      ],
      "Resource": [
        "arn:aws:s3:::[bucket_name_redacted]/*"
      ]
    },
    {
      "Sid": "Stmtxxnxxxxxxxxxxxxx",
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:was:s3:::[bucket_name_redacted]"
      ]
    }
  ]
}

Just wanted to know whether I was perhaps doing something wrong, since I couldn't find anything specifically wrong based on the documentation available.

Hi there!
I'm a little confused as to what you are attempting to do here, as the code you have provided is only the code for setting up the initial connection to S3. It doesn't do any uploading or anything like that. Could you provide more complete code example of what you are doing?
For a generic example if I wanted to write a file to S3 with the ACL of public-read and a content type of image/png I would do the following:
const fsImpl = new S3fs('my-cool-bucket');
fsImpl.writeFile('some/image.png', myImageStream, {
    ACL: 'public-read',
    ContentType: 'image/png'
});

Hey there,
I didn't pay enough attention to the docs where it said that [options] were a third parameter in writeFile, so I assumed I could pass default values (which I now see isn't the case). Your example works perfect, sorry for the confusion

Not a problem, let me know if you run into more issues!


⚠ Samsung has degraded performance

In 4c0e112, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2294 ms

Resolved: Samsung performance has improved in 4518dce.


use timeout on event stream reader to reconnect to healthy backend

I think I found a quite good solution. Took it from the link you were mentioning in the other PR. There this approach was recommended for streaming clients. It will now reset a request cancellation timer on every event read from the stream. If it does not get a new event within the timeout the timer will cancel the request which will log a warning and the for-loop will then trigger a new request. I set the timeout to 15s since marathon seems to send a dummy/keep-alive request every 10s by default. This way it does cancel to early.

Thanks @schneidexe, we might just have to make a few changes once Go 1.7 is out, seems the new way todo it is using the new context from 1.7. I will just try to run some tests before I make a new release. 😃


sklearn model server reports 404 model doesn't exist on curl request

/kind bug
What steps did you take and what happened:
Following docs/samples/v1beta1/sklearn/v1/README.md
from sklearn import svm
from sklearn import datasets
from joblib import dump
clf = svm.SVC(gamma='scale')
iris = datasets.load_iris()
X, y = iris.data, iris.target
clf.fit(X, y)
dump(clf, 'svm.joblib')

# we should indicate the directory containing the model file (model.joblib) by --model_dir
python -m sklearnserver --model_dir ./  --model_name svm

sklearnserver seems to working with the following outputs:
[I 210606 15:43:30 storage:45] Copying contents of ./ to local
[I 210606 15:43:30 kfserver:96] Listening on port 8080
[I 210606 15:43:30 kfserver:98] Will fork 1 workers
[W 210606 15:43:34 web:2246] 404 POST /v1/models/svm:predict (<IP_ADDRESS>) 1.08ms
Then if I try:
from sklearn import datasets
import requests
iris = datasets.load_iris()
X, y = iris.data, iris.target
formData = {
    'instances': X[0:1].tolist()
}
res = requests.post('http://localhost:8080/v1/models/svm:predict', json=formData)
print(res)
print(res.text)

It reports:
<Response [404]>
404: Model with name svm does not exist.404: Model with name svm does not exist.
What did you expect to happen:
Returns predicted results.
Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]
Environment:

Istio Version:
Knative Version:
KFServing Version:
Kubeflow version: n/a
Kfdef:[k8s_istio/istio_dex/gcp_basic_auth/gcp_iap/aws/aws_cognito/ibm]
Minikube version: v1.20.0
Kubernetes version: (use kubectl version): v1.20.2
OS (e.g. from /etc/os-release): ubuntu 20.04

Ok I figured it out...

The joblib file needs to be named as "model.joblib". You cannot give it a different name. sklearnserver only supports running with a single model currently.
Make sure joblib and cloudpickle are both up to date to the latest version. There were some compatibility issues with older versions of cloudpickle and Python 3.8. Test offline and make sure you can load the model with joblib before running the server.

@peidaqi @yuzisun
It looks like a problem with the Storage class. When the storage-initializer downloads model it provides /mnt/models as --model_dir . Then this path is provided to Storage.download() method as uri.
So, there we have the out_dir is None and the uri is /mnt/models as args.
If the out_dir is None then it changes to some tmp_dir
if out_dir is None:
    if is_local:
        # noop if out_dir is not set and the path is local
        return Storage._download_local(uri)
    out_dir = tempfile.mkdtemp()
elif not os.path.exists(out_dir):
    os.mkdir(out_dir)

After that the Storage returns the out_dir without copying any model files.
elif uri.startswith(MODEL_MOUNT_DIRS):
    # Don't need to download models if this InferenceService is running in the multi-model
    # serving mode. The model agent will download models.
    return out_dir

Finally SKLernModel class looks for the model files inside the emty tmp dir.
I have made my own SKLearn image where the Sotrage returns the uri instead the out_dir. And it works
elif uri.startswith(MODEL_MOUNT_DIRS):
    # Don't need to download models if this InferenceService is running in the multi-model
    # serving mode. The model agent will download models.
    return uri

Also a possible solution is to copy the model files to the tmp dir


Change the Rule link

We should change the rule link so the people don't have to PM the Bot first to get to the Rules (even it's pinned in the chat ;P )

@noplanman you mean a Inline Keyboard that displays then the Rules inside the Chat ?
If yes, i think its not a so bad idea it would cancel out the " PM the Bot first" Problem aswell, but i would put a " Delete this Message" Button or similar beneath the Rules Message.

No, I mean an linline button like group butler.
Also, I was wondering if we wanted to add any extra info as the start parameter instead of just rules. Not sure what for yet :sweat_smile:

To be honest, there is no PERFECT solution here...

Ok, I understand that.
So we go for this link for now then?


Remove fixed paths?

Since we now have the directorydropped callback up and running it might make sense to remove the fixed path thing and adjust the warning message displayed when LoGiVi is run for the first time.

Instead of showing a message box we could simply display a message saying "Drop any folder structure onto the application".

This has been implemented in 0159


480_job

Hi,I'm using the 60_job.csv trace for implementation,you mentioned that you used the 480_job trace in NSDI paper,but I can't find it in your github.Can you provide the trace file?Thank you!

Also looking for the 480 job trace. Could you provide it? @juncgu


Update customer master data on the customer

When we have received a request for update customer master data, we need to update data.
Acceptance criteria

[ ] Customer master data is updated

Testable outcome

[ ] We can validate that the customer master data is updated on the customer (As we currently cannot view in GUI, we will view in DB)

Tasks

[x] Add request/reply endpoint for customer update request - PED 2 (CBS)
[x] Add handler for update customer master data - PED 1 (DPH)
[ ] Add customer update handling - PED ? (DPH)
[ ] Implement Request/Reply client for EDI - PED 1 (KFT)
[ ] Handle incoming request through move in transaction - PED 1 (KFT)
[ ] Add event listener for customer updated event and update transaction - PED 1 (DPH)

The tasks with a checkmark have been completed. Due to a change in the overall plan, the remaining story has been paused.


[HUDI-7465] Split tests in CI further to reduce total CI elapsed time

Change Logs
This PR splits tests in CI further to reduce total CI elapsed time:

GitHub Java CI: splits the spark tests into two jobs, one for Java tests only and the other for Scala tests only (test-spark -> test-spark-java-tests and test-spark-scala-tests, test-spark-java17 -> test-spark-java17-java-tests and test-spark-java17-scala-tests).  This roughly cuts the total time of test-spark from ~2h to ~70min after parallelizing.
Azure CI: splits the job 3, UT spark-datasource, which takes ~3h, into two jobs, one for Java tests only (Java UT spark-datasource) and the other for Scala tests only (Scala UT spark-datasource), so after parallelizing, Azure CI takes ~2h to finish.

Another improvement added in this PR is to build only the necessary modules in Job 2-5 in Azure CI (we keep the full build in Job 1 to make sure all modules are buildable).
After this PR:

Github Java CI wait time: ~70min

Azure CI: ~2h

Before this PR:

Github Java CI wait time: ~2h

Azure CI: ~3h

Impact
Reduces the wait time of all CI to pass from ~3h to ~2h, allowing faster turnaround time and retries, improving developer productivity.
Risk level
none
Documentation Update
N/A
Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

Looks like flakiness in Azure CI.  Will retry.


fix(Findings): createTime and updateTime in noteOptions

PR summary

PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the Angular Commit Message Guidelines.
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

Current vs new behavior

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

:tada: This PR is included in version 1.3.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Convert DateTimeParser to DateTimeUtils

I continue my research with JProfiler (https://github.com/OfficeDev/ews-java-api/pull/232):
Class DateTimeParser creates DateTimeFormats & DateTimeFormatters (when it is instantiated). It is very expensive (see DateTimeFormat#forPattern & DateTimeFormatter#withZoneUTC). Class DateTimeParser is used in very critical places like EwsServiceXmlReader, so it is important to be as fast as possible.
Classes DateTimeFormat and DateTimeFormatters are thread-safe, so I converted DateTimeParser to utility class.

Hi @vbauer, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, AZPRBOT;

I don't really like this approach. When I created the DateTimeParser (which is a more descriptive name, I think) with thread-safety in mind, so an instance can be reused. On many places, it is being reused, but there are two places where it isn't (DateTimePropertyDefinition and UserConfigurationDictionary). I rather think those are to be fixed.

The Utility pattern is a software pattern that is used for utility classes that do not require instantiation and only have static methods. The stateless class is designated as static so that no instance can be created. Good candidates for utility classes are convenience methods that can be grouped together functionally.

This class does not have any mutable states except some immutable thread-safe fields and it should be immutable thread-safe util-class by design. I do not see any reason, why not to do it.
Also the current approach is a performance-killer (see test from #232): creation of  DateTimeFormat and DateTimeFormatters takes 23 seconds in the same test. It takes too much time under load testing.
DateTimePropertyDefinition and UserConfigurationDictionary are not the only classes where this class was used. Another problematic place in code is EwsServiceXmlReader.

The fact that a utility pattern exists, does not make it a good pattern....

I'm completely agree, but the current code uses "workarounds" and still looks like util-class (DateTimePropertyDefinition:92):
new DateTimeParser().convertDateTimeStringToDate(value)

I don't know what would speak against this refactoring when it is faster. I also see no problem with the utility pattern here. If you think the old name is more descriptive maybe we can leave it but make that one a utility class.

The Utility pattern is a bit of an anti-pattern. In this case, there's no need for it. There are two usages of the DateTimeParser class which need to be fixed in order to achieve higher performance.

I do not understand what benefits do you want to get using current solution?
Some thoughts about your possible optimization:
Lets imagine that you make DateTimeParser field for each class (DateTimePropertyDefinition, UserConfigurationDictionary, EwsServiceXmlReader), but it does not help, because DateTimeParser will be instantiated each time when this classes will be instantiated (and it will be very often).
I guess, that after this optimization, you will make DateTimeFormats & DateTimeFormatters fields as static fields (to prevent unnecessary instantiation) and we come back to util-class.
Ofc, you can use Object Pool pattern or something else to make the goal, but it is over-design. It will be easier to use KISS principle.

@evpaassen when saying the DateTimeParser class which need to be fixed in order to achieve higher performance you mean there should be stored a local object of the formatter class instead of being created with every call?

hi, I dont see a reason why the provided change would make use of the described antipattern. Since the aspect why this has been marked as a possible candidate is because there might be a refactoring of code which normally belongs to the surroundings of an instantiated object. In this situation this could be true if we  would have integrated the parsing process to a given Date-class which would handle its parsing (which also would be a good choice in my opinion). But with the change provided there has only been a refactoring of the parser itself in which I dont see a problem.

@serious6 Completely agree.

@vbauer thanks for the contribution


onSubmit should close suggestions list

I want to readress the closeSuggestions programmatically issue. I'd like to use the AutoSuggest control like a search input. I may select a value from the list of suggestions but I don't have to. When I press enter, with the cursor in the input, the list should close.
I already have wrapped the component in a form:
onSubmit(evt) {
       const { callbackFromParent } = this.props;
       callbackFromParent(this.state.value);
}

<form onSubmit={this.onSubmit}>
                <Autosuggest ...

This works so far, except that if the list is open and has some values, it does not close, when I just press enter in the input (aka submit the form) and do not select a value from the list.
I'd like to have the list being closed when submit is called. Can I somehow fire the closeSuggestions action from outside? Or is there another way to programmatically close the list?
Regards Oliver

I raised a PR for this exact issue today: https://github.com/moroshko/react-autosuggest/pull/171

Yeah, thank you! Would be cool if we can have that.
Cheers Oliver

@oliverbienert I just merged #171 to master, and hope to release a new version soon. Closing as duplicate of #158.


Test coverage

Partial progress on #63. I've removed or covered everything that was missing test coverage but the transpile functions, which might need a test-driven rewrite. That will be on a separate branch. I think I was trying to make them do too much at once and made them too complicated.
I've done a little refactoring and improved some error messages as well.

Codecov Report

Merging #118 (b6fe598) into master (9aace10) will increase coverage by 8.39%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #118      +/-   ##
==========================================
+ Coverage   89.32%   97.71%   +8.39%
==========================================
  Files           5        5
  Lines         665      657       -8
  Branches      103      100       -3
==========================================
+ Hits          594      642      +48
+ Misses         53       11      -42
+ Partials       18        4      -14

Impacted Files
Coverage Δ

src/hissp/munger.py
100.00% <ø> (+1.96%)
:arrow_up:

src/hissp/__main__.py
100.00% <100.00%> (+6.81%)
:arrow_up:

src/hissp/compiler.py
100.00% <100.00%> (+9.75%)
:arrow_up:

src/hissp/reader.py
95.14% <100.00%> (+6.70%)
:arrow_up:

src/hissp/repl.py
96.22% <100.00%> (+19.63%)
:arrow_up:

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 9aace10...b6fe598. Read the comment docs.

Looks like there are still a couple of lines in repl.py that aren't covered in the Codecov Report. These are covered when testing on Windows. I should refactor that to a suppress anyway. Not sure if that will show up as partial branch coverage.

That worked. 100% coverage except for the transpile functions.


Vite Reverse Proxy Randomly Hangs for Larger Data When Running With Bun Runtime

Describe the bug
The issue occurs when using Vite with Bun. The Vite dev server running on port 3000 is configured to reverse proxy requests to /api to port 5500. The dummy server running on port 5500 sends a JSON response with some randomly generated bytes (100KB).
When run with NodeJS (bunx vite) everything works as expected. However, when running with Bun (bunx --bun vite) the HTTP request occasionally hangs. It appears this is an issue with the http-proxy library which Vite depends on. On the http-proxy branch I have added an example documenting this. However, it appears http-proxy is not maintained (no updates for 3 years).
Reproduction
https://github.com/joshunrau/bun-vite-bug.
System Info
System:
    OS: macOS 13.5.2
    CPU: (8) arm64 Apple M1
    Memory: 92.91 MB / 8.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.5.1 - ~/.nvm/versions/node/v20.5.1/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v20.5.1/bin/yarn
    npm: 9.8.0 - ~/.nvm/versions/node/v20.5.1/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Browsers:
    Chrome: 116.0.5845.187
    Safari: 16.6

Used Package Manager
bun
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Other Issues
https://github.com/oven-sh/bun/issues/5737
https://github.com/http-party/node-http-proxy/issues/1649

If this only happens with Bun, please report there first (https://github.com/oven-sh/bun/issues/5737), before cross-posting the issues.


Build Error from Clone

Receiving the following error in the browser:

Cannot GET /

The npm run build is showing this error.
ERROR in ./~/css-loader!./~/postcss-loader!./~/sass-loader?sourceMap!./src/style.scss
Module build failed:
@import "~bootstrap/scss/bootstrap-flex";
^
      File to import not found or unreadable: ~bootstrap/scss/bootstrap-flex
Parent style sheet: stdin
      in /home/chris/projects/vue/src/style.scss (line 4, column 1)
 @ ./src/style.scss 4:14-168

Hi! Bumped the Bootstrap version to alpha-6 and fixed this bug among few enhancements. Thanks for pointing this out!

same error, changing to alpha-6 cannot fix it

I think the bootstrap team removed that file and make flexbox on by default

ahh ... never mind I just saw the latest version change


Use prettier

The changes are very minimal, only in state.js prettier created a super long line, but we could also optimize this by hand and instead initialize every property individual.
Thoughts?

[x] add to pre-commit hook + travis
[x] adjust eslint

We'll probably want a eslint-config-babel that contains no styling rules (or also extend https://github.com/prettier/eslint-config-prettier)?

This is super exciting! Do not hesitate to open up issues on the prettier repo if you see anything that isn't printed in a way that you would have written code. I want to know about it :)

Can we just target 7.0 for this? We can cherry pick other prs if necessary

We moved the previous 7.0 branch to be master now, and master is now 6.x

I just rerun prettier 1.2.2 on the source and all the mentioned things are fixed now. :)

Okay rebased and change everything to work. Ready for review.

Just going to be annoying for @andy-ms ts pr

@hzoo after this lands he can just run prettier on his pr, presumably!

That's the idea! I guess you would run beforehand and then rebase 7.0 and it would be ok?

Moving to https://github.com/babel/babylon/pull/600


reduce the use of manifest name

motivation: manifest name is for display purposes only
changes:

rename Manifest::name to Manifest::displayName to more clearly articulate the purpose
remove name attribute from Package and ResolvedPackage to make it harder to use it by mistake
update other call sites where its possible to use identity of name
adjust tests

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test


fixed block position

simple fix to profile block position

@elnzv Was this small hotfix for layout because upcoming cool settings page?
Works for me. Merging and closing.


Add nushell related stuffs to README.md

Add nushell related stuffs to README.md
Update some links to Chinese doc from commit c8c5fe1
I have used just and nushell together for more than half a year, I'd say they are good companion and worked perfect for me

Nice, looks good!


Possible Name Change?

So the direction of this project was originally solely to integrate with Underscore.js, but pretty quickly we moved away from having that as a hard dependency. Love to get some feedback on this @tbranyen @rwaldron

What were you thinking about calling it? The current name is totally accurate, right?

Maybe shortening it to "undeferred" or something along those lines.
The name is accurate in the sense that it works as an underscore mixin, but I think it potentially has the implication that underscore is a hard dependency.

I love it.


Possible to configure table name

Closes #10

You'll need to rebase and resolve the conflict so that your PR can be merged. :)

Sorry deleted branch by mistake, this is closed and another pull request #14 is opened without readme changes :)


Problems with Docker Compose not being able to find the backend

Describe the bug
When using Docker Compose to run services, there is often an issue where the frontend starts before the backend, leading to the frontend not being able to find the backend and thus preventing components from loading.
Browser and Version

Browser [e.g. chrome, safari] : edge
Version [e.g. 22] : 120

To Reproduce
Steps to reproduce the behavior:

docker-compose up (Occasionally occurring)

Screenshots

Additional context
Add any other context about the problem here.

@RielKIM it's working now?

Yes, it's working.
2024년 3월 22일 (금) 오전 12:27, anovazzi1 @.***>님이 작성:

@RielKIM https://github.com/RielKIM it's working now?
—
Reply to this email directly, view it on GitHub
https://github.com/logspace-ai/langflow/issues/1327#issuecomment-2012638208,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZ44TFQCA6KOPBSYSI6G3LYZL37NAVCNFSM6AAAAABBXLKWK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMJSGYZTQMRQHA
.
You are receiving this because you were mentioned.Message ID:
@.***>


[Bug]: Direnv integration ignores init_hook changes

Current Behavior (bug)
When using direnv integration. Adding export FOO=bar to init_hook won't be included in direnv load.
Expected Behavior (fix)
direnv loading should include init_hook changes as well.
Additional context
generated .envrc file uses use nix .devbox/gen/shell.nix to compute the environment. But it should use print-dev-env feature of nix and make sure init_hook commands run as well (?)

Released in 0.4.7 for .envrc and local project init_hooks


Methods on Windows.Foundation.GuidHelper are missing C++/WinRT language option.

Look at Windows.Foundation.GuidHelper.CreateNewGuid. There is no option for C++/WinRT. Why is this?

I've turned this into a work item for the content engineers. https://ceapex.visualstudio.com/Engineering/_workitems/edit/344653. I'll go ahead and close this issue, since we'll use that work item for tracking. Please feel free to make any necessary edits to that work item.
-Steve


perlPackages.CPAN: apply patch to fix changed YAML module default

ZHF: #80379
https://hydra.nixos.org/build/112819370
https://hydra.nixos.org/build/112832567
A default has changed in YAML, breaking the latest release of CPAN. This commit
applies a patch from https://github.com/andk/cpanpm/pull/133
fixing the problem.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

@GrahamcOfBorg perl528Packages.CPAN perl530Packages.CPAN

@GrahamcOfBorg build perl528Packages.CPAN perl530Packages.CPAN


hygiene :rebind loop variable and wrap the actual test logic inside in suite.Run()

Description

rebind loop variable in tests
wrap the actual test logic inside in suite.Run()

closes: #4419

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md).
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards and Go style guide.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/).
[ ] Added relevant godoc comments.
[ ] Provide a commit message to be used for the changelog entry in the PR description for review.
[ ] Re-reviewed Files changed in the Github PR explorer.
[ ] Review Codecov Report in the comment section below once CI passes.

Codecov Report

Merging #4658 (367067c) into main (8baeb7f) will increase coverage by 0.04%.
Report is 5 commits behind head on main.
The diff coverage is n/a.

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

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #4658      +/-   ##
==========================================
+ Coverage   79.73%   79.77%   +0.04%
==========================================
  Files         187      189       +2
  Lines       13195    13231      +36
==========================================
+ Hits        10521    10555      +34
- Misses       2246     2248       +2
  Partials      428      428

see 2 files with indirect coverage changes

@trinitys7 if you can rebase with main, then we will merge the PR. Thank you!


Action shell not handled

Hey,
using the latest version of this plugin and a doubt installation configuration containing only the partially modified example from this README:
- if:
    cond: 'true'
    met:
    - shell:
      - echo Found Python 3.

then running ./install gives me
$ ./install -v
Action shell not handled

==> Some tasks were not executed successfully

What could be wrong here? I tried other actions than shell but I get the same output.

Using pdb I found that we end up here
https://github.com/anishathalye/dotbot/blob/328bcb32590e5057b09bd27a40bc2fb21385fbf3/dotbot/dispatcher.py#L68-L70
as self._plugins is an empty array in this case :O

Just as a PoC, this minimal diff in this plugin enables the Dotbot built-in plugins:
  --- a/if.py
  +++ b/if.py
  @@ -2,6 +2,8 @@ import subprocess

   import dotbot
   from dotbot.dispatcher import Dispatcher
  +from dotbot.plugins import Clean, Create, Link, Shell
  +

   class If(dotbot.Plugin):
  @@ -38,10 +40,12 @@ class If(dotbot.Plugin):

       def _run_internal(self, data):
  +        plugins = [Clean, Create, Link, Shell]
           dispatcher = Dispatcher(
               self._context.base_directory(),
               only=self._context.options().only,
               skip=self._context.options().skip,
               options=self._context.options(),
  +            plugins=plugins
           )
           return dispatcher.dispatch(data)

Of course this is not a full solution, as it does not load any plugins from -p or --plugin-dir specified on the command line. The same logic that happens at
https://github.com/anishathalye/dotbot/blob/328bcb32590e5057b09bd27a40bc2fb21385fbf3/dotbot/cli.py#L121-L133
should happen here too.
Maybe that logic could be extracted to a helper in the Dotbot project, or maybe there's a way for this plugin to access the original dispatcher and re-use or fectch the plugin list from there?

Cross-posted to anishathalye/dotbot#339
@erikw Thanks for pinging me on this, and sorry for the late reply!
I made the changes in the mentioned commit so that it was possible to test dotbot in a single pytest run. Previously, the unit tests were implemented as bash scripts running in a virtual environment managed by vagrant. This design had the benefit of separating dotbot tests from the user's actual filesystem, but precluded any possibility of testing dotbot on platforms other than Linux.
I modified the plugin loading code as a part of a significant effort to move dotbot's test suite to pytest. This new plugin-loading design had the benefit that plugins wouldn't remain permanently loaded between dotbot runs, which allowed the test suite to better exercise dotbot's failure/fallback codepaths when a directive wasn't implemented by a plugin. However, it appears to have broken some functionality that plugins were relying on. 😞
I'll take some time to refamiliarize myself with the plugin loading and the code paths these plugins were relying on. My hope is that there's a simple way to add the lost functionality back in and still maintain isolation of plugin loading between tests (or, possibly, force plugins to unload during test teardown perhaps).

anishathalye/dotbot#343 should resolve this, and should make this dispatch pattern easier for plugins in the future by exposing a Dispatcher instance with the correct configuration so plugins can easily re-dispatch to other plugins.

@kurtmckee many thanks! I can confirm that with https://github.com/anishathalye/dotbot/pull/343 this plugin dotbot-if is working with the sample config in the issue description here! 🚀

Hello @erikw and everyone,
I have opened a pull request on a temporary fix borrowed from ifplatform at PR #2. The approach in ifplatform is fairly robust by using utility functions in dotbot itself to load the module instances. It certainly isn't the most efficient method, as obtaining the already loaded list from dotbot would likely be preferable, but it works until upstream PRs are merged.
Cheers!


lastest numpy versions incompatibility

I get a numpy import issue when trying to run the command "pheval run"
I rolled my version of numpy back to version 1.25.0 and the issue goes away.  Numpy versioning should probably be reflected in the pyproject.toml file too?

Thanks for spotting this. The dependencies need updating to avoid this - no need to roll back numpy.


Problems with regexp literals in JS

In Javascript, regexp literals followed by any operator or comment, are not highlighted properly. Try these:
let a = /regex/ // comment
let b = condition ? /regex/ : /another one/

Yet another bug I just found:
if (a) /regex/
When a regexp literal is preceded by a closing parenthesis, the script parses it as a division operator.
I'm currently writing a syntax highlighter, too, and these regexp literals are just pain in the neck. It seems you'll have to do a complete analysis of source code (like browsers do) to handle all possible cases.

Thanks for reporting!
I fixed the first two examples in #2158, but the if one will be impossible to get correctly because Prism would have to detect that the parentheses belong to an if statement which isn't possible for us. Unfortunately, we can't allow the ) unconditionally because of expressions like let a = 5*(1+1)/3/m;.
We could try to parse the expression but this will be hard because recursive expressions are CF but we can try to approximate with a little effort and check as to whether the token before the expression is a statement keyword like if, for, etc and not something like await. The resulting pattern will then look something like this:
// the lookbehind is to ensure that we don't have a function name (e.g. foo_if() )
/(?<![$\w ...other chars])(?:if|for|while|...)\s*\((?:<comments>|<strings>|<other>|\(<recursive part>\))*\)\s*<regex>/

So it's approximately possible (we can only match a finite number of nested parentheses) it will also cause the regex pattern to be a long slower than it has to be just for one rare edge case.

I'll close the issue because as explained the first two issues will be resolved soon and the last one isn't worth it for just syntax highlighting.


Focus distance information?

Do you know if it's possible to get the current focal distance, aperture, etc info from the camera?  Given we can step the focus and zoom by sending commands, one would presume this information may be available.  It does appear to be available in the Sony Wi-Fi protocol.

@jadware
Bluetooth Remote protocol does not expose it.
There is an undocumented protocol which Sony has never shipped a product for that is theorized to act as a bridge towards the same parameters as the wifi protocol but yeah it's... undocumented and noone knows :D


fix: upgrade to version 3.0.434

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign cagiti
You can assign the PR to them by writing /assign @cagiti in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
f20e9db96504402d86cd9f2fb70039f7880b41ea
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
f20e9db96504402d86cd9f2fb70039f7880b41ea
link
/test vault

gsm
f20e9db96504402d86cd9f2fb70039f7880b41ea
link
/test gsm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


[WIP] Add some design docs

This is far from complete but I decided to put it out there for people to start to comment on to see if its headed in an ok direction.  If the base direction is ok then we can merge it and submit subsequent PRs to expand on the missing pieces.
Signed-off-by: Doug Davis<EMAIL_ADDRESS>

:+1:

@duglin CI is failing on this:
build/../docs/design.md: Can't find anchor '#current-design'

Otherwise, LGTM

fixed broken link @arschles thanks!

@duglin what is the status of this PR?


cmd/compile: reproducible builds from different host machines

Using go1.13rc1
After #16860 was closed, I was hoping that I could build byte-for-byte identical builds regardless of what machine was used to build the binaries. At the present moment, building binaries are nearly identical regardless of the machine used, except for the following bytes:
$ diff <(hexdump -Cv linux1/protoc-gen-go.v1.19.0-devel.linux.amd64) <(hexdump -Cv linux2/protoc-gen-go.v1.19.0-devel.linux.amd64)
251,254c251,254
< 00000fa0  53 00 00 00 04 00 00 00  47 6f 00 00 76 72 6e 46  |S.......Go..vrnF|
< 00000fb0  43 55 48 32 42 74 57 4e  53 4c 6a 62 54 78 47 35  |CUH2BtWNSLjbTxG5|
< 00000fc0  2f 54 49 30 2d 6d 6e 55  4f 45 49 52 5f 41 48 6c  |/TI0-mnUOEIR_AHl|
< 00000fd0  36 57 39 66 65 2f 6b 62  30 43 44 67 66 72 38 64  |6W9fe/kb0CDgfr8d|
---
> 00000fa0  53 00 00 00 04 00 00 00  47 6f 00 00 61 69 6a 4b  |S.......Go..aijK|
> 00000fb0  48 6b 71 33 2d 41 36 37  64 6a 63 77 50 4b 48 79  |Hkq3-A67djcwPKHy|
> 00000fc0  2f 65 66 2d 78 37 5f 34  72 4c 4d 5f 73 68 36 73  |/ef-x7_4rLM_sh6s|
> 00000fd0  79 56 75 47 31 2f 6b 62  30 43 44 67 66 72 38 64  |yVuG1/kb0CDgfr8d|

This seems to be some type of build ID encoded into the binary.
Steps to reproduce:
$ git clone https://go.googlesource.com/protobuf
$ cd protobuf
$ git checkout 08ff73004835d46c133844f593fe74596d3e8194
$ go test -mod=vendor -timeout=60m -count=1 integration_test.go -buildRelease
$ md5sum bin/protoc-gen-go.v1.19.0-devel.linux.amd64

Unfortunately, that command will take a while to run since it needs to build the C++ protoc binary as a dependency.
This need not block go1.13 release.

Here's a shorter repro without needing to build protoc:
$ go get golang.org/dl/go1.13rc1
$ go1.13rc1 download
$ git clone https://go.googlesource.com/protobuf
$ cd protobuf
$ git checkout 08ff73004835d46c133844f593fe74596d3e8194
$ GOOS=linux GOARCH=amd64 go1.13rc1 build -trimpath -ldflags "-s -w" -o protoc-gen-go ./cmd/protoc-gen-go

Running that above on different machines produces different binaries, even if both machines are the same host OS.

It seems that the current working directory has some affect on the build ID embedded in the binary:
/tmp/protobuf $ GOOS=linux GOARCH=amd64 go1.13rc1 build -trimpath -ldflags "-s -w" -o protoc-gen-go ./cmd/protoc-gen-go && md5sum protoc-gen-go && rm protoc-gen-go
04b0ff070cc56ec8ed899cf986a97f50  protoc-gen-go
/tmp/protobuf $ GOOS=linux GOARCH=amd64 go1.13rc1 build -trimpath -ldflags "-s -w" -o protoc-gen-go ./cmd/protoc-gen-go && md5sum protoc-gen-go && rm protoc-gen-go
04b0ff070cc56ec8ed899cf986a97f50  protoc-gen-go
/tmp/protobuf $ cd .. && mv protobuf protobuf2 && cd protobuf2
/tmp/protobuf2 $ GOOS=linux GOARCH=amd64 go1.13rc1 build -trimpath -ldflags "-s -w" -o protoc-gen-go ./cmd/protoc-gen-go && md5sum protoc-gen-go && rm protoc-gen-go
47091a2082a8ef696c0b76c1ab983c62  protoc-gen-go
/tmp/protobuf2 $ GOOS=linux GOARCH=amd64 go1.13rc1 build -trimpath -ldflags "-s -w" -o protoc-gen-go ./cmd/protoc-gen-go && md5sum protoc-gen-go && rm protoc-gen-go
47091a2082a8ef696c0b76c1ab983c62  protoc-gen-go

CC @jayconrod

This difference is due to the .note.go.buildid section added by the linker.  It can be set to something static e.g. -ldflags=-buildid= (empty string) to gain reproducibility.
Thanks to @neutralinsomniac for working with me to find this.

This difference is due to the .note.go.buildid section added by the linker. It can be set to something static e.g. -ldflags=-buildid= (empty string) to gain reproducibility.
Thanks to @neutralinsomniac for working with me to find this.

I just hit the same issue -- is there somewhere this can be documented better, and/or maybe given a -reproducible flag that == "-trimpath -ldflags=-buildid="?

cc @rsc who fixed #16860

I'd like this to be considered for backport to Go 1.13 (@gopherbot, please do the honors).
There is no real workaround to get the functionality of -trimpath without this fix, which AFAICT was added specifically for reproducible builds.


save not persistence mapRelationshipEntity

Entitygraphmapper did not update the entity as I expected
Before save, I issued a statement to unbind entity relationship. Through JPA
But I found that the second query after save failed
Whether the cascade update of entity relationship can be selected instead of fixed lazy load
Environment

OGM Version 3.1.11:
Java Version 1.8:
Neo4J Version 3.4.0:
Bolt Driver Version used (if applicable):
Operating System and Version: windows 7
Link to your project:

More details can be provided if necessary

More details would be appreciated. I honestly have a hard time make any sense of your issue. Sorry.

I’m gonna close this now. Feel free to reopen this with an excerpt of your mapping code and how you use the session factory.


Please add a License.txt

Hi - it would be great if you could add a license file to this project and dependent projects.  While the selection is up to you, a permissive academic license is great (MIT, Apache, BSD).  If you prefer GPL copyleft licenses, a dual license is most flexible if you would like to engage in an approach for commercialization (with GPL + commercial license options you can be assured nobody can run off with anything without contributing back any source they distribute, and most real corporate lawyers would block GPLv2+ use in anything distributed for profit).  If you are the sole contributor you will always have control over licensing decisions (including changing your mind about the license).  I look forward to trying out the software and I am willing to contribute back what I can.  Personally I put most of my non-customer work under Apache, BSD-3 clause, or MIT/X.  I'd rather see more people using software than having to get lawyers to review if it is possible.

Most likely follow AudioKit’s trajectory. I think they were Apache, but seems now to be MIT. Will look into it.

On Mar 31, 2024, at 11:47 PM, David J. Kordsmeier @.***> wrote:
Hi - it would be great if you could add a license file to this project and dependent projects. While the selection is up to you, a permissive academic license is great (MIT, Apache, BSD). If you prefer GPL copyleft licenses, a dual license is most flexible if you would like to engage in an approach for commercialization (with GPL + commercial license options you can be assured nobody can run off with anything without contributing back any source they distribute, and most real corporate lawyers would block GPLv2+ use in anything distributed for profit). If you are the sole contributor you will always have control over licensing decisions (including changing your mind about the license). I look forward to trying out the software and I am willing to contribute back what I can. Personally I put most of my non-customer work under Apache, BSD-3 clause, or MIT/X. I'd rather see more people using software than having to get lawyers to review if it is possible.
—
Reply to this email directly, view it on GitHub https://github.com/musesum/DeepMuse/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACHBTZECGXFRPKBQI7M2ILY3D7I3AVCNFSM6AAAAABFRFA2AWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTONRVGMYTOMQ.
You are receiving this because you are subscribed to this thread.

MIT Non-AI

Interesting ... is it this? https://github.com/bmitc/mit-no-ai-license
I haven't seen this license before.  It isn't based on anything listed in the OSI database.
https://opensource.org/licenses?ls=mit

From https://github.com/non-ai-licenses/non-ai-licenses/blob/main/NON-AI-MIT

On May 6, 2024, at 5:11 PM, David J. Kordsmeier @.***> wrote:
Interesting ... is it this? https://github.com/bmitc/mit-no-ai-license
I haven't seen this license before. It isn't based on anything listed in the OSI database.
https://opensource.org/licenses?ls=mit
—
Reply to this email directly, view it on GitHub https://github.com/musesum/DeepMuse/issues/1#issuecomment-2097129202, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACHBT6WT3KQEZEODB3XPUDZBAL4FAVCNFSM6AAAAABFRFA2AWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJXGEZDSMRQGI.
You are receiving this because you commented.


Add redux

[ ] Add redux
[ ] Refactor code
[ ] tbd

@catalinmiron I would like to work on this.


feat(client): project cmd of swcli support output to json

Description
Modules

[ ] UI
[ ] Controller
[ ] Agent
[x] Client
[ ] Python-SDK
[ ] Others

Checklist

[x] run code format and lint check
[ ] add unit test
[ ] add necessary doc

#642


Meson Build System

MesonLsp cannot find root directory.
Should be directory of  meson.build file.
 Detected filetype:   meson

 0 client(s) attached to this buffer:

 Other clients that match the filetype: meson

 Config: mesonlsp
 	filetypes:         meson
 	root directory:    Not found.
 	cmd:               /home/kohlhaas/.local/share/nvim/mason/bin/mesonlsp --lsp
 	cmd is executable: true
 	autostart:         true
 	custom handlers:

I think this is more of an issue with nvim-lspconfig as the mason registry just installs and links the package.

I'm a bit confused. I thought mason would handle all the default configurations.
Here is the LSP server config for meson.

Yeah, mason really just installs the package and links them so nvim-lspconfig can use them.
I do think at this point you should ask over on nvim-lspconfig for help.


putMedia failed after long term upload

We have a video stream uploading to KVS without issues over the weekend but this afternoon,
the KVS upload seems down between 13:51 to 14:30 EDT.

From the log messages in reverse order, the SDK seemed to retry with repeated requests and errors as follows:
May 18 14:10:05 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:10:04 DEBUG   curlCompleteSync(): HTTP Error 0 : Response: (null)
May 18 14:10:05 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:10:04 DEBUG   curlCompleteSync(): curl perform failed for url https://s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com/putMedia with result Timeout
May 18 14:10:05 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:29 DEBUG   postWriteCallback(): Curl post body write function for stream with handle: wyze-farley and upload handle: 301 returned: {"EventType":
May 18 14:10:05 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:29 DEBUG   postReadCallback(): Pausing CURL read for upload handle: 301
May 18 14:10:05 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:29 DEBUG   postReadCallback(): Wrote 60491 bytes to Kinesis Video. Upload stream handle: 301
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:29 DEBUG   writeHeaderCallback(): RequestId: d2943843-5e5f-c0a1-85a8-e9db4f2a30cd
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:29 DEBUG   postReadCallback(): Wrote 65524 bytes to Kinesis Video. Upload stream handle: 301
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000080, Next state: 0x0000000000000100
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   notifyDataAvailable(): Failed to un-pause curl with error: 43
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   putStreamResultEvent(): Put stream result event.
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000040, Next state: 0x0000000000000080
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   defaultStreamReadyCallback(): Reported streamReady callback for stream handle<PHONE_NUMBER>3785
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   getStreamingTokenResultEvent(): Get streaming token result event.
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000020, Next state: 0x0000000000000010
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   getStreamingEndpointResultEvent(): Get streaming endpoint result event.
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   getStreamingEndpointCurlHandler(): GetStreamingEndpoint API response: {"DataEndpoint":"https://s-1e415f8b.kinesisvideo.us-east-1.amaz
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   writeHeaderCallback(): RequestId: 49325393-4e03-4e02-b70e-eeb238373a09
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000020
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   describeStreamResultEvent(): Describe stream result event.
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   describeStreamCurlHandler(): DescribeStream API response: {"StreamInfo":{"CreationTime":1.589182998353E9,"DataRetentionInHours":6,"De
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   writeHeaderCallback(): RequestId: b4cc5b24-43ec-4cf2-b437-a7e0cc15fe90
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000200, Next state: 0x0000000000000001
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   stepStateMachine(): State Machine - Current state: 0x0000000000000100, Next state: 0x0000000000000200
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   kinesisVideoStreamTerminated(): Stream terminated event.
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   putStreamCurlHandler(): Stream with streamHandle<PHONE_NUMBER>3785 has exited without triggering end-of-stream. Service call result: 599
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: 2020-05-18 18:09:28 DEBUG   putStreamCurlHandler(): Network thread for Kinesis Video stream: wyze-farley with upload handle: 300 exited. http status: 0
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     x-amzn-stream-name: wyze-farley
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     x-amzn-producer-start-timestamp:<PHONE_NUMBER>.768
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     x-amzn-fragment-timecode-type: ABSOLUTE
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     x-amzn-fragment-acknowledgment-required: 1
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     X-Amz-Date: 20200518T180852Z
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     user-a
gent: AWS-SDK-KVS/2.1.0 GCC/5.4.0 Linux/4.15.0-72-generic x86_64
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     transfer-encoding: chunked
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     host: s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     content-type: application/json
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     connection: keep-alive
May 18 14:09:29 ml17-pc02 kvs.sh[2377]:     Authorization: AWS4-HMAC-SHA256 Credential=AKIA2WG7PM2NWCVGKM5F/20200518/us-east-1/kinesisvideo/aws4_request, SignedHeaders=connection;host;transfer-encoding
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: Request Headers:
May 18 14:09:29 ml17-pc02 kvs.sh[2377]: Request URL: https://s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com/putMedia

I am not sure if it's the client side issue or something else on the AWS side since our ITS reports no network issue that time.
Any ideas?

This is really odd @farleylai
From the logs it seems that your PutMedia session has timed out and the state machine re-tries but somehow call to curl_easy_pause returns CURLE_BAD_FUNCTION_ARGUMENT.
Generally, this means that the function is called with a bad parameter but I really can't understand how we end up with Curl getting into a state when it returns this value,
Is it possible if you could perhaps include a slightly longer version of the logs to understand whether there were other issues leading to the timeout and consequent error in unpausing curl.
Also, it seems that your stream had a significant outage - close to 30 minutes or so. Wonder if this is network related?

Sure, the log of the last 8 hours is attached FYI.
kvs.log.zip
I believe your SDK log timestamps are in UTC and our messages are in EDT.
Whenever putKinesisVideoFrame(...) is about to call, a log message in the format of Sending frame[XXXXXXX] is print.
After a closer look, the HTTP Error actually happened once in a while and lasted for some time.
The first one occurred after Sending frame[940326] for 10 mins or so.
The second HTTP Error happened after Sending frame[1028269] for about half an hour.
Our program was deployed as a system service forwarding a video stream from a camera device to KVS.
If for some reason it receives an empty frame from the camera, the program reopens the stream and  connection to KVS that accidentally recovered the timeout issue in this case.
Otherwise, if the network was down, the connection to the camera through internet (not in LAN) would time out in seconds because our program configures ffmpeg to read with connection timeout set.
I also checked with our ITS staff who confirmed there was no network down time then.
So it feels like something else going around.
We really hope the issue can be clarified for long term streaming.

Here is what I see from the logs:

Really good streaming which stabilizes around 500Kbps. There is little variation in the "current" buffer and most of the time there is almost zero buffer so your stream keeps up very well.
The persisted ACKs come at a regular cadence and your workset is ~1.5 seconds with 1 second fragment duration it makes it less than 500ms behind which is very cool.
The first instance I see an issue happens is around Upload Handle 251.

2020-05-18 16:01:57 DEBUG   postReadCallback(): Pausing CURL read for upload handle: 251
2020-05-18 16:02:32 DEBUG   curlCompleteSync(): curl perform failed for url https://s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com/putMedia with result Timeout was reached: Operation too slow. Less than 30 bytes/sec transferred the last 30 seconds
2020-05-18 16:02:32 DEBUG   curlCompleteSync(): HTTP Error 0 : Response: (null)
Request URL: https://s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com/putMedia
Request Headers:
    Authorization: AWS4-HMAC-SHA256 Credential=AKIA2WG7PM2NWCVGKM5F/20200518/us-east-1/kinesisvideo/aws4_request, SignedHeaders=connection;host;transfer-encoding;user-agent;x-amz-date;x-amzn-fragment-acknowledgment-required;x-amzn-fragment-timecode-type;x-amzn-producer-start-timestamp;x-amzn-stream-name, Signature=495457958cda5b5c29e67c4d933b7039b9435bf52b919308daa5ec5a3db9062d
    connection: keep-alive
    content-type: application/json
    host: s-1e415f8b.kinesisvideo.us-east-1.amazonaws.com
    transfer-encoding: chunked
    user-agent: AWS-SDK-KVS/2.1.0 GCC/5.4.0 Linux/4.15.0-72-generic x86_64
    X-Amz-Date: 20200518T154634Z
    x-amzn-fragment-acknowledgment-required: 1
    x-amzn-fragment-timecode-type: ABSOLUTE
    x-amzn-producer-start-timestamp:<PHONE_NUMBER>.437
    x-amzn-stream-name: wyze-farley

This means that either, your network slowed-down/stopped to trigger the curl timeout or, you are actually not producing any bits into the stream which causes the curl to timeout.
In this case, as the SDK re-tries the control plane APIs just fine, it does seem that your application simply stops producing frames which causes the cycling from timeout -> control plane states -> put media -> timeout.
The curl error 43 which is CURLE_BAD_FUNCTION_ARGUMENT is an internal curl error that's generated when the SDK tries to pause the curl while it's actually about to fail with the Operation Too Slow error which is the timeout.
This lasts for some time and seems that this is the time your application detects the disconnection or something
[05/18/2020 12:11:26] WARNING: Restarting streaming due to EOS/EOF
From this moment on, it starts streaming just fine on the new handles.
========================
Conclusion.
Your application at some point starts acting as what we call an "unenlightened intermittent" producer. In this scenario, the application streams for a while and then stops producing frames into the SDK causing the backend to timeout (default 30 seconds - which is what we configure the CURL client as - 30 bytes in 30 second slow timeout). The latest PIC has logic to handle part of this - if the current buffer is empty then it won't prime (or drive) the state machine back to another PutMedia and leave the state machine in the Ready state waiting for the next time a frame is produced. You seem to be using older version of the CPP assets?
Recommendation:
Recommend understanding your media pipelines behavior. If, for some reason, you have the media pipeline stopped, you can do one of the following (assuming latest codebase).

Issue StopSync, FreeStream. Wait until your pipeline needs to stream again, re-create the stream. In fact, the stream can be created earlier and waiting in the Ready state for the first frame. This way, you will have durability guarantees when doing StopSync as it will flush the buffer and await for the last persist ACK before returning.
Enlightened intermittent producer scenario: In this case, when your media pipeline stops producing frames, just issue a specialized EoFR frame which will cause flushing of the remainder of the buffer and the backend closing the fragment and issuing the persisted ACK

Frame eofr = EOFR_FRAME_INITIALIZER;
kinesis_video_stream->putFrame(eofr);

Thanks for the comprehensive analysis and recommendations.
Given the network was not down then, I think you are suggesting for some reason, the incoming device stream was sometimes being slow such that our program may not upload timely or sufficiently, and your SDK starts to log timeout events. Since putKinesisVideoFrame(...) is non-blocking, it should be straightforward to verify what is going on with reading the device stream then.
BTW, the SDK version we built is 2.1.0.
Is it already old?

We just released v3.0.0 that has the improvements including bug fixes and support for the intermittent producer scenario which is the likely case you are hitting.
I am not sure I understood your question about reading the device stream?
Yes, in essence, in the REAL_TIME mode the put frame is a 'prompt' operation - it doesn't block and can/might cause frame to be dropped at the tail if there is no room in the content view (temporal view of the buffer).
In your case, it's kind of odd that you are seeing timeouts but the networking timeouts can happen not only when there is networking outage but also when no frames are being produced and the buffer gets depleted. The new handling of the intermittent producer will just ensure that after the initial timeout, we don't issue another PutMedia call if the buffer is already empty.
A really simple step (if durability is not primary concern for now) is to simply upgrade to v3.0.0 and run your scenario and stop producing frames for over 30 seconds - in this case, the SDK (if the buffer is empty) shouldn't issue another PutMedia. It will just stop at the Ready state. As soon as you issue a frame, it will move to PutStream state and issue PutMedia call.
NOTE: When resuming after the "pause" the frame has to be a key-frame or, otherwise, it will be "skipped" until a new key frame. This is important as the new session has to start with a new cluster.

Good to hear that. We will migrate to v3.0.0 soon.
Besides, let me elaborate our conclusion a bit. Our program serves as a forwarder/aggregator that receives the device stream over RTSP to upload to KVS. Given the timeout behavior of your SDK, the remaining mystery to verify is whether reading the device stream suddenly becomes very slow. We have set the read timeout of ffmpeg to read the device stream and made sure the read timeout exception would be thrown in seconds by cutting off the power of the device. From the logs, there is no such read timeout in the upload blackout or new frame sending messages. Then our guess is that there are still a small number of bytes readable from the device such that no read timeout is triggered but it is still too slow for ffmpeg to deliver a complete frame to upload to KVS. We will see if it is the root cause and appreciate your SDK deals with this situation gracefully.

Sounds good. @farleylai could you please resolve the issue when you have a chance? Please open a new issue specific to any issues you might see after the upgrade.

Sure thing!


Address leading/trailing whitespace in data

Most fields should not have leading or trailing whitespace.  The python code should account for this when extracting data from the XML elements.

Closure of issue #35, satisfies handling whitespace for GenericKeyword objects, and for Titles.
https://github.com/cjcodeproj/medialibrary/issues/35


Two contact links

We have to "Contact" links at the footer:

The first one goes to this lame page: https://www.stage.boost.cppalliance.org/help/. The second one goes here, and is more about bug reporting with the libs, not the website itself.
My proposal is:

Keep the first "Contact" but provide a nicer page for this, including en email address, where to file issues with the website itself, link to library-related bug reporting, etc.
Rename the second "Contact" as "Bug report"

It would be helpful to get some guidance on the contact page and where those links should point to.

Can we just copy what is on the old site?

I'm fine with that, at least ot get something up there.

I need help finding the help on the old site.. I's not anyplace obvious...

I've changes the extra "contact"  in another ticket

There was no earlier contact page, so it was decided to connect to the mailing list as a contact means for the time being.
Additionally, the footer links for twitter and github were changed to icons, including using the new "X" logo.

Going to close this, as the main items have been completed, and create a new low priority issue for the contact issue.